Commit Graph

8 Commits

  • feat(coding-agent): support disable-model-invocation frontmatter for skills
    When set to true, the skill is hidden from the system prompt, preventing
    agentic invocation. Users can still invoke explicitly via /skill:name.
    
    Also fixes pre-existing test bug where source expectation was wrong.
    
    Fixes #927
  • refactor(coding-agent): unify SkillWarning and ResourceDiagnostic
    - Create shared diagnostics.ts with ResourceCollision and ResourceDiagnostic types
    - Update loadSkills() to return diagnostics instead of warnings
    - Remove SkillWarning type and skillWarningsToDiagnostics() conversion
    - Update skills.test.ts to use diagnostics
  • feat(coding-agent): ResourceLoader, package management, and /reload command (#645)
    - Add ResourceLoader interface and DefaultResourceLoader implementation
    - Add PackageManager for npm/git extension sources with install/remove/update
    - Add session.reload() and session.bindExtensions() APIs
    - Add /reload command in interactive mode
    - Add CLI flags: --skill, --theme, --prompt-template, --no-themes, --no-prompt-templates
    - Add pi install/remove/update commands for extension management
    - Refactor settings.json to use arrays for skills, prompts, themes
    - Remove legacy SkillsSettings source flags and filters
    - Update SDK examples and documentation for ResourceLoader pattern
    - Add theme registration and loadThemeFromPath for dynamic themes
    - Add getShellEnv to include bin dir in PATH for bash commands
  • Centralize frontmatter parsing + parse frontmatter with yaml library (#728)
    * Add frontmatter utility and tidy coding agent prompts
    
    * Add frontmatter parsing utilities and tests
    
    * Parse frontmatter with YAML parser
    
    * Simplify frontmatter parsing utilities
    
    * strip body in 1 place
    
    * Improve frontmatter parsing error handling
    
    * Normalize multiline skill and select-list descriptions
  • feat(coding-agent): add --skills CLI flag for filtering skills
    Adds glob pattern support for skill filtering:
    - --skills <patterns> CLI flag (comma-separated glob patterns)
    - includeSkills setting in settings.json
    - ignoredSkills now supports glob patterns
    - ignoredSkills takes precedence over includeSkills and --skills
    
    Closes #268
  • Skills standard compliance
    Implement Agent Skills standard (https://agentskills.io/specification):
    - Validate name (must match parent dir, lowercase, max 64 chars)
    - Validate description (required, max 1024 chars)
    - Warn on unknown frontmatter fields
    - Warn on name collisions (keep first)
    - Change prompt format to XML structure
    - Remove {baseDir} placeholder (use relative paths)
    - Add tests and update documentation
    
    fixes #231