Problem
Skills are only validated at runtime. No way to:
- Validate skill before registration
- Check for undefined tool references
- Detect unreachable steps
- Verify input/output compatibility between steps
Proposal
Add skill analyzer:
type AnalysisResult struct {
Valid bool
Errors []AnalysisError
Warnings []AnalysisWarning
}
type AnalysisError struct {
StepID string
Code string
Message string
}
type Analyzer struct {
discovery *discovery.Discovery // For tool resolution
}
func (a *Analyzer) Analyze(skill Skill) AnalysisResult
Checks:
- Tool existence validation
- Input/output schema compatibility
- Step dependency validation
- Unreachable step detection
- Guard condition validity
- Circular dependency detection
Benefit
- Fail fast on invalid skills
- Better error messages
- IDE integration potential
Problem
Skills are only validated at runtime. No way to:
Proposal
Add skill analyzer:
Checks:
Benefit