Implement skill resolution and recent skill tracking in tools#51
Merged
Conversation
- 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.
Owner
Author
|
related to #46 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
resolve_requested_commandsmethod toSkillCatalogfor resolving requested skill names, handling duplicates, and returning errors for unknown skills.InvokeSkillToolandSpawnSubagentToolto utilizeRecentSkillHintsfor tracking recently used skills and passing them to child sessions.spawn_subagentfunctionality to accept a list of skills, allowing child sessions to load relevant skills automatically or inherit the most recent one.Summary by cubic
Adds skill resolution and recent-skill tracking so agents and sub-agents load the right guidance automatically.
spawn_subagentnow accepts explicit skills or inherits the most recent; unknown skills are validated early with helpful errors.New Features
SkillCatalog::resolve_requested_commandsto trim, dedupe, and error on unknown skills (includes available commands in the message).RecentSkillHintsto track the last N loaded skills.invoke_skillrecords successfully loaded skills intoRecentSkillHints.spawn_subagentaccepts an optionalskillsarray; 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 useinvoke_skill.Migration
InvokeSkillTool::new(..)andSpawnSubagentTool::new(..)now require a sharedRecentSkillHints.SpawnRequestdirectly, populate the newskills: Vec<String>(use[]if none).Written for commit bd6a22b. Summary will update on new commits.