Skip to content

feat: classify and assign tools/skills to orchestrator vs subagents#513

Merged
avoidwork merged 11 commits into
mainfrom
feat/classify-assign-tools-skills-orchestrator-subagents
Jul 3, 2026
Merged

feat: classify and assign tools/skills to orchestrator vs subagents#513
avoidwork merged 11 commits into
mainfrom
feat/classify-assign-tools-skills-orchestrator-subagents

Conversation

@avoidwork

@avoidwork avoidwork commented Jul 3, 2026

Copy link
Copy Markdown
Owner

Summary

Classifies tools and skills by agent type (orchestrator-only, subagent-only, shared) and assigns them appropriately in src/agent/deepAgents.js.

Motivation

The orchestrator currently receives all tools and skills indiscriminately. Both the orchestrator and subagents get identical tool/skill sets from buildToolConfig(), which is inefficient and architecturally unsound. The orchestrator should only receive tools and skills it needs for coordination — delegation, routing, synthesis. Subagents should receive the tools and skills they need for execution.

Changes

  • src/agent/deepAgents.js: Refactor tool assignment to support per-agent classification. The orchestrator and subagents will receive different tool sets based on their roles.
  • src/tools/index.js: Update buildToolConfig() to accept a classification filter parameter, enabling selective tool assignment.
  • openspec/specs/agent-tool-assignment/spec.md: Spec for agent-specific tool assignment logic.
  • openspec/specs/tool-classification/spec.md: Spec for the tool classification schema.

Related

- Add OpenSpec change for classifying tools and skills by agent type
- Define classification schema (orchestrator, subagent, shared)
- Design agent-specific tool assignment in deepAgents.js
- Create specs for tool-classification and agent-tool-assignment capabilities
- Generate implementation tasks for the full pipeline
@avoidwork avoidwork self-assigned this Jul 3, 2026
- Add TOOL_CLASSIFICATIONS map in src/tools/index.js with all 16 tools classified
- Modify buildToolConfig() to accept optional classificationFilter parameter
- Update deepAgents.js to assign agent-specific tool sets via two buildToolConfig() calls
- Add SKILL_CLASSIFICATIONS map and filterSkillPaths() helper in deepAgents.js
- Filter skill paths so orchestrator receives only orchestrator/shared skills
- Update docs/OVERVIEW.md with tool classification architecture documentation
- All 1082 tests pass, lint clean
@avoidwork avoidwork changed the title feat: propose tool/skill classification for orchestrator vs subagents feat: classify and assign tools/skills to orchestrator vs subagents Jul 3, 2026
@avoidwork

Copy link
Copy Markdown
Owner Author

Audit Results: Classify and Assign Tools/Skills to Orchestrator vs Subagents

Audit 1 (Specs Against Goals) — PASS

Coverage Audit

  • Goal 1 (Define Classification Schema) → specs/tool-classification/spec.md requirements 1, 2, 6
  • Goal 2 (Update deepAgents.js) → specs/tool-classification/spec.md requirements 3, 4; specs/agent-tool-assignment/spec.md requirements 1, 2, 3, 4
  • Goal 3 (Remove unnecessary tools from orchestrator) → specs/agent-tool-assignment/spec.md requirement 1
  • Goal 4 (Ensure subagents receive appropriate tools) → specs/agent-tool-assignment/spec.md requirement 2

Fidelity Audit

  • Specs faithfully represent the original intent of each goal
  • No scope creep or deviation from the issue requirements

Completeness Audit

  • All requirements, edge cases, and acceptance criteria are captured
  • Backward compatibility is explicitly addressed
  • Skills classification is covered
  • Documentation requirements are included

Consistency Audit

  • Task group 1 (Add Tool Classification Map) → maps to spec requirements 1, 2, 6
  • Task group 2 (Modify buildToolConfig) → maps to spec requirements 2
  • Task group 3 (Update deepAgents.js) → maps to spec requirements 3, 4
  • Task group 4 (Filter Skill Paths) → maps to spec requirements 5
  • Task group 5 (Update Documentation) → maps to spec requirement 6
  • Task group 6 (Verify and Test) → maps to acceptance criteria

Verdict

No errors found. Proceeding to Step 6.

@avoidwork avoidwork merged commit ce39da0 into main Jul 3, 2026
2 checks passed
@avoidwork avoidwork deleted the feat/classify-assign-tools-skills-orchestrator-subagents branch July 3, 2026 13:38
@avoidwork avoidwork mentioned this pull request Jul 3, 2026
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.

feat: classify and assign tools/skills to orchestrator vs subagents in deepAgents.js

1 participant