Skip to content

Implement skill resolution and recent skill tracking in tools#51

Merged
madebyaris merged 1 commit into
devfrom
skill-loading-system
Apr 14, 2026
Merged

Implement skill resolution and recent skill tracking in tools#51
madebyaris merged 1 commit into
devfrom
skill-loading-system

Conversation

@madebyaris

@madebyaris madebyaris commented Apr 14, 2026

Copy link
Copy Markdown
Owner
  • Added resolve_requested_commands method to SkillCatalog for resolving requested skill names, handling duplicates, and returning errors for unknown skills.
  • Enhanced InvokeSkillTool and SpawnSubagentTool to utilize RecentSkillHints for tracking recently used skills and passing them to child sessions.
  • Updated spawn_subagent functionality to accept a list of skills, allowing child sessions to load relevant skills automatically or inherit the most recent one.
  • Added tests to ensure correct behavior for skill resolution and recent skill tracking.
  • Updated documentation to reflect new features and usage of skills in subagent tasks.

Summary by cubic

Adds skill resolution and recent-skill tracking so agents and sub-agents load the right guidance automatically. spawn_subagent now accepts explicit skills or inherits the most recent; unknown skills are validated early with helpful errors.

  • New Features

    • Added SkillCatalog::resolve_requested_commands to trim, dedupe, and error on unknown skills (includes available commands in the message).
    • Introduced RecentSkillHints to track the last N loaded skills.
    • invoke_skill records successfully loaded skills into RecentSkillHints.
    • spawn_subagent accepts an optional skills array; if omitted, it inherits the most recent skill. Runtime validates skills and passes them to the child; the child’s context includes “Recommended Skills” with guidance to use invoke_skill.
  • Migration

    • Constructors changed: InvokeSkillTool::new(..) and SpawnSubagentTool::new(..) now require a shared RecentSkillHints.
    • If you send SpawnRequest directly, populate the new skills: Vec<String> (use [] if none).

Written for commit bd6a22b. Summary will update on new commits.

- Added `resolve_requested_commands` method to `SkillCatalog` for resolving requested skill names, handling duplicates, and returning errors for unknown skills.
- Enhanced `InvokeSkillTool` and `SpawnSubagentTool` to utilize `RecentSkillHints` for tracking recently used skills and passing them to child sessions.
- Updated `spawn_subagent` functionality to accept a list of skills, allowing child sessions to load relevant skills automatically or inherit the most recent one.
- Added tests to ensure correct behavior for skill resolution and recent skill tracking.
- Updated documentation to reflect new features and usage of skills in subagent tasks.
@madebyaris

Copy link
Copy Markdown
Owner Author

related to #46

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 8 files

@madebyaris madebyaris merged commit 662b6b0 into dev Apr 14, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant