Unified Tooling for Recipes, Subrecipes, Claude Skills, and Claude Subagents #6202
tlongwell-block
started this conversation in
Ideas
Replies: 1 comment
-
|
Wanted to tag @block/goose-maintainers in case you didn't see this and had anything to add! |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
This proposal introduces unified tools that replace
subagentandloadSkillwith a cleaner mental model:loaddelegateKey insight: The tool determines the execution mode, not the file format.
Any source (goose recipe, Claude Skill, Claude Subagent) can be used with either tool. A skill can be loaded for reference OR delegated as a specialized subagent. A recipe can be delegated to run OR loaded to learn its approach.
The Problem
Current tools have confusing names and limited interoperability:
subagentonly accepts subrecipes or ad-hoc instructionsloadSkillonly accepts skills by nameThe Solution
Any source (recipe, skill, Claude Subagent) can be used with either tool:
loaded (add patterns to my knowledge) ORdelegated (use these patterns to review my code)delegated (run this workflow) ORloaded (teach me this workflow's approach)delegated (let this persona handle it) ORloaded (adopt this persona's expertise)Proposed API
delegateToolloadToolExamples
Discovery
Calling
load()with no arguments scans the filesystem and returns all available sources:The
loadtool description also shows the top 10 available sources for quick reference.Source Resolution
Users reference sources by name only (not filename):
{"source": "security-review"} // Not "security-review.yaml"Resolution priority:
sub_recipesarray).goose/recipes/).goose/skills/*/SKILL.md).goose/agents/,.claude/agents/)~/.config/goose/)Claude Subagent Compatibility
This proposal adds support for Claude Subagent files (
.mdwith frontmatter):Claude's
toolsare mapped to goose extensions, andmodelshorthand (sonnet, opus, haiku) is translated to full model names.Implementation
Rename
subagent->delegateRename
loadSkill->loadAdd support for parsing Claude Subagent files and Claude Skill files into internal recipe representations.
Beta Was this translation helpful? Give feedback.
All reactions