Claude-skill-registry hybrid-agent-detector
Detects hybrid agent anti-pattern where agents perform execution work directly instead of delegating to skills
git clone https://github.com/majiayu000/claude-skill-registry
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/hybrid-agent-detector" ~/.claude/skills/majiayu000-claude-skill-registry-hybrid-agent-detector && rm -rf "$T"
skills/data/hybrid-agent-detector/SKILL.mdHybrid Agent Detector Skill
<CONTEXT> You detect the **Hybrid Agent anti-pattern** - agents that perform execution work directly instead of delegating to skills.Correct Pattern: Agents orchestrate (invoke skills), Skills execute (run scripts) Anti-Pattern: Agents do both orchestration AND execution
Problem: Agents doing work directly consumes context unnecessarily and violates separation of concerns.
Impact:
- Bloated agent prompts (orchestration + execution logic)
- Cannot test execution logic independently
- Harder to reuse execution logic across agents
- Context inefficiency (execution logic loaded every invocation)
You analyze agents to identify execution patterns that should be in skills. </CONTEXT>
<CRITICAL_RULES>
- ALWAYS detect agents with execution logic (file operations, data processing, API calls)
- ALWAYS distinguish between orchestration (correct) and execution (anti-pattern)
- ALWAYS return structured JSON with severity levels
- NEVER flag legitimate orchestration as anti-pattern
- NEVER modify project files (read-only analysis) </CRITICAL_RULES>
detect-hybrid-agents
Detect agents performing execution work directly.
Input:
: Path to Claude Code project rootproject_path
Process:
- Execute:
scripts/detect-hybrid-agents.sh "{project_path}" - Scan agents for execution patterns
- Return detection results
Output:
{ "status": "success", "hybrid_agents_detected": true, "total_hybrid_agents": 3, "agents": [ { "agent_name": "data-processor", "file": ".claude/agents/data-processor.md", "hybrid_score": 0.75, "execution_patterns": [ { "pattern_type": "file_operations", "instances": 5, "evidence": ["Read tool", "Write tool", "Edit tool"], "severity": "high" }, { "pattern_type": "data_processing", "instances": 3, "evidence": ["Direct JSON parsing", "Data transformation"], "severity": "medium" } ], "orchestration_present": true, "recommendation": "Extract execution to skills" } ] }
analyze-tool-usage
Analyze tool usage patterns in agents to identify execution vs orchestration.
Input:
: Path to Claude Code project rootproject_path
: Detected hybrid agents from detect-hybrid-agents operationhybrid_agents
Process:
- Execute:
scripts/analyze-tool-usage.sh "{project_path}" "{hybrid_agents_json}" - Categorize tool usage as orchestration vs execution
- Calculate hybrid score
Output:
{ "status": "success", "tool_analysis": [ { "agent_name": "data-processor", "tools_used": ["Read", "Write", "Edit", "Skill", "Bash"], "orchestration_tools": ["Skill"], "execution_tools": ["Read", "Write", "Edit", "Bash"], "hybrid_score": 0.80, "tool_usage_breakdown": { "orchestration_percentage": 0.20, "execution_percentage": 0.80 }, "verdict": "Hybrid - primarily execution" } ], "patterns": { "pure_orchestrators": 2, "hybrid_agents": 3, "pure_executors": 0 } }
calculate-separation-benefits
Calculate benefits of separating execution into skills.
Input:
: Path to Claude Code project rootproject_path
: Detected hybrid agentshybrid_agents
Process:
- Execute:
scripts/calculate-separation-benefits.sh "{project_path}" "{hybrid_agents_json}" - Estimate context reduction from separation
- Calculate reusability gains
Output:
</OPERATIONS> <DOCUMENTATION> Upon completion of analysis, output:{ "status": "success", "separation_benefits": [ { "agent_name": "data-processor", "current_agent_size": 52000, "execution_logic_size": 28000, "projected_agent_size": 24000, "new_skills_created": 3, "skills_total_size": 15000, "context_reduction": 13000, "reduction_percentage": 0.25, "reusability_score": 0.70, "benefits": [ "25% context reduction in agent", "3 reusable skills created", "Execution testable independently" ] } ], "total_context_savings": 35000, "total_new_skills": 8 }
</DOCUMENTATION>✅ COMPLETED: Hybrid Agent Detector Project: {project_path} ─────────────────────────────────────── Hybrid Agents: {count} Avg Hybrid Score: {score} Context Savings: {tokens} tokens ({percentage}% reduction) New Skills Extractable: {count} ─────────────────────────────────────── Results returned to: project-auditor agent
<ERROR_HANDLING>
No hybrid agents detected:
{ "status": "success", "hybrid_agents_detected": false, "message": "All agents properly delegate to skills" }
Script execution failed:
{ "status": "error", "error": "script_failed", "script": "{script_name}", "message": "{error_output}" }
</ERROR_HANDLING>
Integration
Invoked By:
- project-auditor agent (Phase 5: Execute - detailed analysis)
Depends On:
- Agent files in
.claude/agents/ - Tool usage patterns (Read, Write, Edit, Bash vs Skill)
Outputs To:
- Anti-patterns list (hybrid agent detection)
- Recommendations (skill extraction suggestions)
- Context optimization calculator
Design Notes
Execution Patterns Detected:
-
File Operations: Read, Write, Edit tools used directly
Evidence: Read tool usage in agent prompt Should be: Invoke skill that uses Read -
Data Processing: Direct manipulation in agent
Evidence: JSON parsing, transformation logic Should be: Skill with processing script -
API Calls: Direct HTTP requests in agent
Evidence: Bash curl commands Should be: API client skill -
System Operations: Direct bash commands
Evidence: grep, awk, sed in agent workflow Should be: Skills with dedicated scripts
Orchestration Patterns (Correct):
- Skill tool usage (delegating)
- AskUserQuestion (user interaction)
- Workflow phase management
- Decision trees (which skill to invoke)
- State management
- Error handling and retry logic
Hybrid Score Calculation:
hybrid_score = execution_tools / total_tools 0.0 - 0.2: Pure Orchestrator (Good) 0.2 - 0.5: Mostly Orchestrator (Acceptable) 0.5 - 0.8: Hybrid (Needs Improvement) 0.8 - 1.0: Pure Executor (Anti-Pattern)
Severity Levels:
- High: Agent uses Read/Write/Edit/Bash extensively
- Medium: Agent has some data processing logic
- Low: Agent occasionally uses execution tools for valid reasons
Valid Execution in Agents:
- State file management (Read/Write own state.json)
- Configuration loading (Read config once at start)
- Emergency error logging
Migration Strategy:
- Identify all execution logic in agent
- Group related operations
- Create skill for each operation group
- Extract logic to skill with scripts
- Update agent to invoke skills
- Test skills independently
- Verify agent orchestration works