agentic-swe 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (191) hide show
  1. package/.claude/agents/developer.md +133 -0
  2. package/.claude/agents/git-ops.md +94 -0
  3. package/.claude/agents/panel/adversarial.md +35 -0
  4. package/.claude/agents/panel/architect.md +36 -0
  5. package/.claude/agents/panel/security.md +36 -0
  6. package/.claude/agents/pr-manager.md +76 -0
  7. package/.claude/agents/subagents/01-core-development/api-designer.md +237 -0
  8. package/.claude/agents/subagents/01-core-development/backend-developer.md +222 -0
  9. package/.claude/agents/subagents/01-core-development/electron-pro.md +251 -0
  10. package/.claude/agents/subagents/01-core-development/frontend-developer.md +159 -0
  11. package/.claude/agents/subagents/01-core-development/fullstack-developer.md +246 -0
  12. package/.claude/agents/subagents/01-core-development/graphql-architect.md +238 -0
  13. package/.claude/agents/subagents/01-core-development/microservices-architect.md +239 -0
  14. package/.claude/agents/subagents/01-core-development/mobile-developer.md +283 -0
  15. package/.claude/agents/subagents/01-core-development/ui-designer.md +200 -0
  16. package/.claude/agents/subagents/01-core-development/websocket-engineer.md +150 -0
  17. package/.claude/agents/subagents/02-language-specialists/angular-architect.md +287 -0
  18. package/.claude/agents/subagents/02-language-specialists/cpp-pro.md +277 -0
  19. package/.claude/agents/subagents/02-language-specialists/csharp-developer.md +287 -0
  20. package/.claude/agents/subagents/02-language-specialists/django-developer.md +287 -0
  21. package/.claude/agents/subagents/02-language-specialists/dotnet-core-expert.md +287 -0
  22. package/.claude/agents/subagents/02-language-specialists/dotnet-framework-4.8-expert.md +306 -0
  23. package/.claude/agents/subagents/02-language-specialists/elixir-expert.md +311 -0
  24. package/.claude/agents/subagents/02-language-specialists/expo-react-native-expert.md +268 -0
  25. package/.claude/agents/subagents/02-language-specialists/fastapi-developer.md +287 -0
  26. package/.claude/agents/subagents/02-language-specialists/flutter-expert.md +287 -0
  27. package/.claude/agents/subagents/02-language-specialists/golang-pro.md +277 -0
  28. package/.claude/agents/subagents/02-language-specialists/java-architect.md +287 -0
  29. package/.claude/agents/subagents/02-language-specialists/javascript-pro.md +277 -0
  30. package/.claude/agents/subagents/02-language-specialists/kotlin-specialist.md +287 -0
  31. package/.claude/agents/subagents/02-language-specialists/laravel-specialist.md +287 -0
  32. package/.claude/agents/subagents/02-language-specialists/nextjs-developer.md +298 -0
  33. package/.claude/agents/subagents/02-language-specialists/php-pro.md +287 -0
  34. package/.claude/agents/subagents/02-language-specialists/powershell-5.1-expert.md +59 -0
  35. package/.claude/agents/subagents/02-language-specialists/powershell-7-expert.md +57 -0
  36. package/.claude/agents/subagents/02-language-specialists/python-pro.md +277 -0
  37. package/.claude/agents/subagents/02-language-specialists/rails-expert.md +358 -0
  38. package/.claude/agents/subagents/02-language-specialists/react-specialist.md +298 -0
  39. package/.claude/agents/subagents/02-language-specialists/rust-engineer.md +287 -0
  40. package/.claude/agents/subagents/02-language-specialists/spring-boot-engineer.md +287 -0
  41. package/.claude/agents/subagents/02-language-specialists/sql-pro.md +287 -0
  42. package/.claude/agents/subagents/02-language-specialists/swift-expert.md +287 -0
  43. package/.claude/agents/subagents/02-language-specialists/symfony-specialist.md +354 -0
  44. package/.claude/agents/subagents/02-language-specialists/typescript-pro.md +277 -0
  45. package/.claude/agents/subagents/02-language-specialists/vue-expert.md +298 -0
  46. package/.claude/agents/subagents/03-infrastructure/azure-infra-engineer.md +53 -0
  47. package/.claude/agents/subagents/03-infrastructure/cloud-architect.md +277 -0
  48. package/.claude/agents/subagents/03-infrastructure/database-administrator.md +287 -0
  49. package/.claude/agents/subagents/03-infrastructure/deployment-engineer.md +287 -0
  50. package/.claude/agents/subagents/03-infrastructure/devops-engineer.md +287 -0
  51. package/.claude/agents/subagents/03-infrastructure/devops-incident-responder.md +287 -0
  52. package/.claude/agents/subagents/03-infrastructure/docker-expert.md +278 -0
  53. package/.claude/agents/subagents/03-infrastructure/incident-responder.md +287 -0
  54. package/.claude/agents/subagents/03-infrastructure/kubernetes-specialist.md +287 -0
  55. package/.claude/agents/subagents/03-infrastructure/network-engineer.md +287 -0
  56. package/.claude/agents/subagents/03-infrastructure/platform-engineer.md +287 -0
  57. package/.claude/agents/subagents/03-infrastructure/security-engineer.md +277 -0
  58. package/.claude/agents/subagents/03-infrastructure/sre-engineer.md +287 -0
  59. package/.claude/agents/subagents/03-infrastructure/terraform-engineer.md +287 -0
  60. package/.claude/agents/subagents/03-infrastructure/terragrunt-expert.md +307 -0
  61. package/.claude/agents/subagents/03-infrastructure/windows-infra-admin.md +52 -0
  62. package/.claude/agents/subagents/04-quality-security/accessibility-tester.md +277 -0
  63. package/.claude/agents/subagents/04-quality-security/ad-security-reviewer.md +56 -0
  64. package/.claude/agents/subagents/04-quality-security/architect-reviewer.md +287 -0
  65. package/.claude/agents/subagents/04-quality-security/chaos-engineer.md +277 -0
  66. package/.claude/agents/subagents/04-quality-security/code-reviewer.md +287 -0
  67. package/.claude/agents/subagents/04-quality-security/compliance-auditor.md +277 -0
  68. package/.claude/agents/subagents/04-quality-security/debugger.md +287 -0
  69. package/.claude/agents/subagents/04-quality-security/error-detective.md +287 -0
  70. package/.claude/agents/subagents/04-quality-security/penetration-tester.md +287 -0
  71. package/.claude/agents/subagents/04-quality-security/performance-engineer.md +287 -0
  72. package/.claude/agents/subagents/04-quality-security/powershell-security-hardening.md +54 -0
  73. package/.claude/agents/subagents/04-quality-security/qa-expert.md +287 -0
  74. package/.claude/agents/subagents/04-quality-security/security-auditor.md +287 -0
  75. package/.claude/agents/subagents/04-quality-security/test-automator.md +287 -0
  76. package/.claude/agents/subagents/05-data-ai/ai-engineer.md +287 -0
  77. package/.claude/agents/subagents/05-data-ai/data-analyst.md +277 -0
  78. package/.claude/agents/subagents/05-data-ai/data-engineer.md +287 -0
  79. package/.claude/agents/subagents/05-data-ai/data-scientist.md +287 -0
  80. package/.claude/agents/subagents/05-data-ai/database-optimizer.md +287 -0
  81. package/.claude/agents/subagents/05-data-ai/llm-architect.md +287 -0
  82. package/.claude/agents/subagents/05-data-ai/machine-learning-engineer.md +277 -0
  83. package/.claude/agents/subagents/05-data-ai/ml-engineer.md +287 -0
  84. package/.claude/agents/subagents/05-data-ai/mlops-engineer.md +287 -0
  85. package/.claude/agents/subagents/05-data-ai/nlp-engineer.md +287 -0
  86. package/.claude/agents/subagents/05-data-ai/postgres-pro.md +287 -0
  87. package/.claude/agents/subagents/05-data-ai/prompt-engineer.md +287 -0
  88. package/.claude/agents/subagents/05-data-ai/reinforcement-learning-engineer.md +277 -0
  89. package/.claude/agents/subagents/06-developer-experience/build-engineer.md +286 -0
  90. package/.claude/agents/subagents/06-developer-experience/cli-developer.md +286 -0
  91. package/.claude/agents/subagents/06-developer-experience/dependency-manager.md +286 -0
  92. package/.claude/agents/subagents/06-developer-experience/documentation-engineer.md +276 -0
  93. package/.claude/agents/subagents/06-developer-experience/dx-optimizer.md +286 -0
  94. package/.claude/agents/subagents/06-developer-experience/git-workflow-manager.md +286 -0
  95. package/.claude/agents/subagents/06-developer-experience/legacy-modernizer.md +286 -0
  96. package/.claude/agents/subagents/06-developer-experience/mcp-developer.md +275 -0
  97. package/.claude/agents/subagents/06-developer-experience/powershell-module-architect.md +58 -0
  98. package/.claude/agents/subagents/06-developer-experience/powershell-ui-architect.md +135 -0
  99. package/.claude/agents/subagents/06-developer-experience/refactoring-specialist.md +286 -0
  100. package/.claude/agents/subagents/06-developer-experience/slack-expert.md +232 -0
  101. package/.claude/agents/subagents/06-developer-experience/tooling-engineer.md +286 -0
  102. package/.claude/agents/subagents/07-specialized-domains/api-documenter.md +277 -0
  103. package/.claude/agents/subagents/07-specialized-domains/blockchain-developer.md +287 -0
  104. package/.claude/agents/subagents/07-specialized-domains/embedded-systems.md +287 -0
  105. package/.claude/agents/subagents/07-specialized-domains/fintech-engineer.md +287 -0
  106. package/.claude/agents/subagents/07-specialized-domains/game-developer.md +287 -0
  107. package/.claude/agents/subagents/07-specialized-domains/iot-engineer.md +287 -0
  108. package/.claude/agents/subagents/07-specialized-domains/m365-admin.md +48 -0
  109. package/.claude/agents/subagents/07-specialized-domains/mobile-app-developer.md +287 -0
  110. package/.claude/agents/subagents/07-specialized-domains/payment-integration.md +287 -0
  111. package/.claude/agents/subagents/07-specialized-domains/quant-analyst.md +287 -0
  112. package/.claude/agents/subagents/07-specialized-domains/risk-manager.md +287 -0
  113. package/.claude/agents/subagents/07-specialized-domains/seo-specialist.md +184 -0
  114. package/.claude/agents/subagents/08-business-product/business-analyst.md +287 -0
  115. package/.claude/agents/subagents/08-business-product/content-marketer.md +287 -0
  116. package/.claude/agents/subagents/08-business-product/customer-success-manager.md +287 -0
  117. package/.claude/agents/subagents/08-business-product/legal-advisor.md +287 -0
  118. package/.claude/agents/subagents/08-business-product/product-manager.md +287 -0
  119. package/.claude/agents/subagents/08-business-product/project-manager.md +287 -0
  120. package/.claude/agents/subagents/08-business-product/sales-engineer.md +287 -0
  121. package/.claude/agents/subagents/08-business-product/scrum-master.md +287 -0
  122. package/.claude/agents/subagents/08-business-product/technical-writer.md +287 -0
  123. package/.claude/agents/subagents/08-business-product/ux-researcher.md +287 -0
  124. package/.claude/agents/subagents/08-business-product/wordpress-master.md +316 -0
  125. package/.claude/agents/subagents/09-meta-orchestration/agent-installer.md +97 -0
  126. package/.claude/agents/subagents/09-meta-orchestration/agent-organizer.md +287 -0
  127. package/.claude/agents/subagents/09-meta-orchestration/context-manager.md +287 -0
  128. package/.claude/agents/subagents/09-meta-orchestration/error-coordinator.md +287 -0
  129. package/.claude/agents/subagents/09-meta-orchestration/it-ops-orchestrator.md +60 -0
  130. package/.claude/agents/subagents/09-meta-orchestration/knowledge-synthesizer.md +287 -0
  131. package/.claude/agents/subagents/09-meta-orchestration/multi-agent-coordinator.md +287 -0
  132. package/.claude/agents/subagents/09-meta-orchestration/performance-monitor.md +287 -0
  133. package/.claude/agents/subagents/09-meta-orchestration/task-distributor.md +287 -0
  134. package/.claude/agents/subagents/09-meta-orchestration/workflow-orchestrator.md +287 -0
  135. package/.claude/agents/subagents/10-research-analysis/competitive-analyst.md +287 -0
  136. package/.claude/agents/subagents/10-research-analysis/data-researcher.md +287 -0
  137. package/.claude/agents/subagents/10-research-analysis/market-researcher.md +287 -0
  138. package/.claude/agents/subagents/10-research-analysis/research-analyst.md +287 -0
  139. package/.claude/agents/subagents/10-research-analysis/scientific-literature-researcher.md +151 -0
  140. package/.claude/agents/subagents/10-research-analysis/search-specialist.md +287 -0
  141. package/.claude/agents/subagents/10-research-analysis/trend-analyst.md +287 -0
  142. package/.claude/commands/check.md +58 -0
  143. package/.claude/commands/ci-status.md +68 -0
  144. package/.claude/commands/conflict-resolver.md +76 -0
  145. package/.claude/commands/diff-review.md +123 -0
  146. package/.claude/commands/evaluate-work.md +25 -0
  147. package/.claude/commands/install.md +60 -0
  148. package/.claude/commands/lint.md +86 -0
  149. package/.claude/commands/plan-only.md +28 -0
  150. package/.claude/commands/repo-scan.md +96 -0
  151. package/.claude/commands/security-scan.md +98 -0
  152. package/.claude/commands/subagent.md +109 -0
  153. package/.claude/commands/test-runner.md +85 -0
  154. package/.claude/commands/work.md +76 -0
  155. package/.claude/phases/code-review.md +92 -0
  156. package/.claude/phases/completion.md +57 -0
  157. package/.claude/phases/design-review.md +66 -0
  158. package/.claude/phases/design.md +59 -0
  159. package/.claude/phases/escalate-code.md +34 -0
  160. package/.claude/phases/escalate-validation.md +33 -0
  161. package/.claude/phases/failed.md +35 -0
  162. package/.claude/phases/fast-implementation.md +59 -0
  163. package/.claude/phases/fast-path-check.md +46 -0
  164. package/.claude/phases/feasibility.md +80 -0
  165. package/.claude/phases/implementation.md +43 -0
  166. package/.claude/phases/permissions.md +42 -0
  167. package/.claude/phases/pr-created.md +50 -0
  168. package/.claude/phases/self-review.md +53 -0
  169. package/.claude/phases/subagent-selection.md +298 -0
  170. package/.claude/phases/test.md +68 -0
  171. package/.claude/phases/validation.md +58 -0
  172. package/.claude/phases/verification.md +45 -0
  173. package/.claude/references/frontend-aesthetics.md +91 -0
  174. package/.claude/references/github.md +73 -0
  175. package/.claude/templates/artifact-format.md +33 -0
  176. package/.claude/templates/audit.log +30 -0
  177. package/.claude/templates/evidence-standard.md +19 -0
  178. package/.claude/templates/phase-checklist.md +62 -0
  179. package/.claude/templates/progress.md +15 -0
  180. package/.claude/templates/state.json +108 -0
  181. package/.claude/tools/subagent-catalog/README.md +58 -0
  182. package/.claude/tools/subagent-catalog/config.sh +88 -0
  183. package/.claude/tools/subagent-catalog/fetch.md +54 -0
  184. package/.claude/tools/subagent-catalog/invalidate.md +47 -0
  185. package/.claude/tools/subagent-catalog/list.md +48 -0
  186. package/.claude/tools/subagent-catalog/search.md +41 -0
  187. package/CLAUDE.md +342 -0
  188. package/LICENSE +21 -0
  189. package/README.md +204 -0
  190. package/bin/agentic-swe.js +241 -0
  191. package/package.json +43 -0
@@ -0,0 +1,30 @@
1
+ # Audit Log
2
+
3
+ Use append-only records for operations that change durable state or external side effects.
4
+
5
+ Format:
6
+
7
+ ```text
8
+ <timestamp> actor=<agent> action=<verb> target=<file-or-resource> result=<ok|blocked|failed> note="<short explanation>"
9
+ ```
10
+
11
+ Example:
12
+
13
+ ```text
14
+ <timestamp> actor=claude action=create target=.claude/.work/<id>/state.json result=ok note="initialized from template"
15
+ ```
16
+
17
+ ## Actor Naming Convention
18
+
19
+ Use these standardized actor names in all audit log entries:
20
+
21
+ `orchestrator` | `developer` | `git-ops` | `pr-manager` | `panel-architect` | `panel-security` | `panel-adversarial` | `user`
22
+
23
+ ## Delegation Examples
24
+
25
+ ```text
26
+ <timestamp> actor=orchestrator action=delegate target=agents/developer.md result=ok note="implementation slice 1: auth middleware"
27
+ <timestamp> actor=developer action=complete target=agents/developer.md result=ok note="3 files changed, 2 tests added"
28
+ <timestamp> actor=orchestrator action=integrate target=agents/developer.md result=ok note="findings merged into implementation.md"
29
+ <timestamp> actor=orchestrator action=escalate target=escalate-code result=ok note="code review loop exhausted after 5 iterations"
30
+ ```
@@ -0,0 +1,19 @@
1
+ # Evidence Standard
2
+
3
+ Cite this template in phase and agent output to ensure consistent evidence quality.
4
+
5
+ ## Four-Point Framework
6
+
7
+ Every substantive finding or recommendation must address:
8
+
9
+ 1. **Observed** — what was directly seen in the repository, command output, or documentation
10
+ 2. **Inferred** — what conclusion follows from the observations
11
+ 3. **Evidence** — what specific facts support the inference
12
+ 4. **Uncertain** — what remains unknown or unverified
13
+
14
+ ## Separation Rules
15
+
16
+ - separate facts from inferences from speculative concerns
17
+ - label low-evidence concerns as speculative rather than presenting them as certainty
18
+ - when uncertainty is high and behavior would materially change, stop instead of guessing
19
+ - delegated findings should be integrated with evidence attribution, not copied blindly
@@ -0,0 +1,62 @@
1
+ # Phase Checklist
2
+
3
+ Use this checklist before every state transition.
4
+
5
+ ## Structural Gate
6
+
7
+ - required files for the destination state exist
8
+ - required files are non-empty
9
+ - `state.json` `current_state` matches the intended transition
10
+ - `history` includes the most recent reasoned transition
11
+ - artifact filenames in `state.json.artifacts` match actual files when applicable
12
+ - `updated_at` reflects the latest change
13
+ - `progress.md` has an entry for the current phase work
14
+ - `audit.log` contains durable or external actions
15
+ - loop counters are updated when the phase is budgeted or retry-driven
16
+
17
+ ## Evidence Gate
18
+
19
+ - each artifact distinguishes observation from inference
20
+ - important claims are supported by repository evidence, command output, or primary documentation
21
+ - open uncertainties are named explicitly
22
+ - delegated findings are integrated, not copied blindly
23
+
24
+ ## Quality Gate
25
+
26
+ - self-review rubric scores recorded before code-review (full path) or within fast-implementation (fast path)
27
+ - reflection-log read before rework when prior rejection exists
28
+ - test adequacy assessment completed before implementation begins (full path)
29
+ - changed behavior has at least one decisive verification path
30
+ - tests pass before or during `validation`, or the lack of runnable tests is precisely documented
31
+ - reviewable output exists before `pr-created`
32
+ - risky git or GitHub actions use official workflow semantics instead of assumptions
33
+ - design feedback is resolved before moving from `design-review` to `verification`
34
+ - code review rejection results in explicit `review-feedback.md`
35
+ - blocked validation records why escalation is necessary
36
+
37
+ ## Reliability Gate
38
+
39
+ - likely rollback or repair path is understood for high-risk changes
40
+ - destructive or privileged actions have explicit approval when required
41
+ - external blockers are recorded rather than worked around unsafely
42
+ - resumability is preserved if the work pauses now
43
+
44
+ ## Convergence Gate
45
+
46
+ - if reflection-log has 2+ entries with the same failure category, escalate rather than retry
47
+ - if fast-path self-review scores a dimension as 1 that the developer cannot resolve, escalate rather than consuming the next iteration
48
+ - if design review is failing on fundamentally different criteria each iteration (thrashing), escalate after iteration 2
49
+
50
+ ## Context Condensation Gate
51
+
52
+ - if this is the 3rd+ transition, progress.md contains a current Context Summary
53
+ - subsequent phase reads prioritize context summary over full early-phase artifacts
54
+
55
+ ## Stop Conditions
56
+
57
+ - `ambiguity-wait`
58
+ - `approval-wait`
59
+ - `escalate-code`
60
+ - `escalate-validation`
61
+ - `completed`
62
+ - `failed`
@@ -0,0 +1,15 @@
1
+ # Progress Log
2
+
3
+ Use one line per meaningful change in execution state.
4
+
5
+ Format:
6
+
7
+ ```md
8
+ - <timestamp> [state=<state>] <action taken> | evidence: <short evidence> | next: <next step>
9
+ ```
10
+
11
+ Example:
12
+
13
+ ```md
14
+ - <timestamp> [state=initialized] work item created | evidence: state.json written from template | next: feasibility
15
+ ```
@@ -0,0 +1,108 @@
1
+ {
2
+ "schema_version": 2,
3
+ "work_id": "<work-id>",
4
+ "task": "<user task>",
5
+ "current_state": "initialized",
6
+ "created_at": "<ISO-8601 timestamp>",
7
+ "updated_at": "<ISO-8601 timestamp>",
8
+ "timeout_at": "<ISO-8601 timestamp>",
9
+ "owner": "claude",
10
+ "mode": "full",
11
+ "resume": {
12
+ "detected": false,
13
+ "last_session_id": null,
14
+ "detected_at": null,
15
+ "branch_validated": false,
16
+ "rebase_performed": false
17
+ },
18
+ "budget": {
19
+ "iteration_budget": 10,
20
+ "budget_remaining": 10,
21
+ "cost_budget_usd": 3.0,
22
+ "cost_used": 0.0
23
+ },
24
+ "counters": {
25
+ "fast_iter": 0,
26
+ "design_iter": 0,
27
+ "code_iter": 0,
28
+ "panel_runs": 0,
29
+ "merge_iter": 0,
30
+ "approval_iter": 0,
31
+ "self_review_iter": 0,
32
+ "test_adequacy_iter": 0,
33
+ "subagent_spawns": 0
34
+ },
35
+ "ambiguity": {
36
+ "detected": false,
37
+ "notes": [],
38
+ "resolved": false
39
+ },
40
+ "approvals": {
41
+ "pr_approved": false,
42
+ "changes_requested": false
43
+ },
44
+ "metrics": {
45
+ "tests_passed": false
46
+ },
47
+ "risk": {
48
+ "level": "unknown",
49
+ "score": null,
50
+ "top_items": []
51
+ },
52
+ "artifacts": {
53
+ "feasibility": null,
54
+ "ambiguity-report": null,
55
+ "fast-path-check": null,
56
+ "design": null,
57
+ "design-review": null,
58
+ "design-feedback": null,
59
+ "design-panel-review": null,
60
+ "verification-results": null,
61
+ "test-stubs": null,
62
+ "test-results": null,
63
+ "implementation": null,
64
+ "self-review": null,
65
+ "reflection-log": null,
66
+ "review-feedback": null,
67
+ "review-pass": null,
68
+ "permissions-changes": null,
69
+ "validation-results": null,
70
+ "cicd": null,
71
+ "pr-link": null,
72
+ "approval-feedback": null
73
+ },
74
+ "validation": {
75
+ "structural_passed": false,
76
+ "quality_passed": false,
77
+ "last_checked_at": null,
78
+ "notes": []
79
+ },
80
+ "git": {
81
+ "base_branch": null,
82
+ "working_branch": null,
83
+ "remote": "origin",
84
+ "pr_url": null,
85
+ "merge_sha": null,
86
+ "merge_strategy": null
87
+ },
88
+ "pipeline": {
89
+ "complexity_score": null,
90
+ "fast_path_eligible": false,
91
+ "fast_path_decision": null,
92
+ "design_review_status": null,
93
+ "review_status": null,
94
+ "verification_status": null,
95
+ "permissions_status": null,
96
+ "validation_status": null,
97
+ "self_review_status": null,
98
+ "pr_status": null,
99
+ "subagent_auto_select": true,
100
+ "subagent_mode": null,
101
+ "subagent_selections": []
102
+ },
103
+ "convergence": {
104
+ "last_failure_category": null,
105
+ "consecutive_same_category": 0
106
+ },
107
+ "history": []
108
+ }
@@ -0,0 +1,58 @@
1
+ # subagent-catalog
2
+
3
+ A Claude Code skill for browsing and fetching subagents from the [awesome-claude-code-subagents](https://github.com/VoltAgent/awesome-claude-code-subagents) catalog.
4
+
5
+ ## Installation
6
+
7
+ Copy the `subagent-catalog/` folder to `~/.claude/commands/`:
8
+
9
+ ```bash
10
+ cp -r tools/subagent-catalog ~/.claude/commands/
11
+ ```
12
+
13
+ ## Usage
14
+
15
+ | Command | Description |
16
+ |---------|-------------|
17
+ | `/subagent-catalog:search <query>` | Find agents by name, description, or category |
18
+ | `/subagent-catalog:fetch <name>` | Get full agent definition |
19
+ | `/subagent-catalog:list` | Browse all categories |
20
+ | `/subagent-catalog:invalidate` | Clear cache (add `--fetch` to refresh immediately) |
21
+
22
+ ## Examples
23
+
24
+ **Find security-related agents:**
25
+ ```
26
+ /subagent-catalog:search security
27
+ ```
28
+
29
+ **Get the code-reviewer definition:**
30
+ ```
31
+ /subagent-catalog:fetch code-reviewer
32
+ ```
33
+
34
+ **Browse all available agents:**
35
+ ```
36
+ /subagent-catalog:list
37
+ ```
38
+
39
+ ## Features
40
+
41
+ - **Smart caching**: 12-hour TTL with graceful fallback on network failure
42
+ - **Atomic updates**: Uses tmp file + mv pattern to prevent partial writes
43
+ - **Cross-platform**: Works on macOS and Linux
44
+ - **Best practices**: Follows Anthropic skill authoring guidelines
45
+
46
+ ## Cache
47
+
48
+ - **Location**: `~/.claude/cache/subagent-catalog.md`
49
+ - **TTL**: 12 hours (configurable in `config.sh`)
50
+ - **Behavior**: Auto-refreshes when stale, falls back to old cache on network failure
51
+
52
+ ## Troubleshooting
53
+
54
+ | Issue | Fix |
55
+ |-------|-----|
56
+ | Stale results | `/subagent-catalog:invalidate --fetch` |
57
+ | Network error | Check connection, retry |
58
+ | Agent not found | `/subagent-catalog:search <partial-name>` first |
@@ -0,0 +1,88 @@
1
+ #!/usr/bin/env bash
2
+ # subagent-catalog configuration
3
+ # Works with local agents/subagents/ directory
4
+
5
+ set -euo pipefail
6
+
7
+ # --- CONFIG ---
8
+ # Resolve the pipeline root (source repo = repo root, target repo = .claude/)
9
+ _resolve_subagent_dir() {
10
+ local script_dir
11
+ script_dir="$(cd "$(dirname "${BASH_SOURCE[0]:-${(%):-%x}}")" && pwd 2>/dev/null || pwd)"
12
+
13
+ # Walk up to find the pipeline root
14
+ local candidate="$script_dir"
15
+ while [ "$candidate" != "/" ]; do
16
+ if [ -d "$candidate/agents/subagents" ]; then
17
+ echo "$candidate/agents/subagents"
18
+ return 0
19
+ fi
20
+ candidate="$(dirname "$candidate")"
21
+ done
22
+
23
+ # Fallback: check .claude/ in git root
24
+ local git_root
25
+ git_root="$(git rev-parse --show-toplevel 2>/dev/null || echo "")"
26
+ if [ -n "$git_root" ] && [ -d "$git_root/.claude/agents/subagents" ]; then
27
+ echo "$git_root/.claude/agents/subagents"
28
+ return 0
29
+ fi
30
+
31
+ echo ""
32
+ return 1
33
+ }
34
+
35
+ readonly SUBAGENT_DIR="$(_resolve_subagent_dir)"
36
+ export SUBAGENT_DIR
37
+
38
+ # --- HELPERS ---
39
+
40
+ subagent_catalog_log_info() { echo "$1"; }
41
+ subagent_catalog_log_error() { echo "ERROR: $1" >&2; }
42
+
43
+ # List all categories (directory names under subagents/)
44
+ subagent_catalog_list_categories() {
45
+ if [ -z "$SUBAGENT_DIR" ] || [ ! -d "$SUBAGENT_DIR" ]; then
46
+ subagent_catalog_log_error "subagent directory not found"
47
+ return 1
48
+ fi
49
+ ls -1d "$SUBAGENT_DIR"/*/ 2>/dev/null | xargs -I{} basename {} | sort
50
+ }
51
+
52
+ # List all agent files in a category
53
+ subagent_catalog_list_agents_in() {
54
+ local category="$1"
55
+ if [ -d "$SUBAGENT_DIR/$category" ]; then
56
+ ls -1 "$SUBAGENT_DIR/$category"/*.md 2>/dev/null | xargs -I{} basename {} .md | sort
57
+ fi
58
+ }
59
+
60
+ # Find agent file by name (returns full path)
61
+ subagent_catalog_find() {
62
+ local name="$1"
63
+ local result
64
+ result=$(find "$SUBAGENT_DIR" -name "${name}.md" -type f 2>/dev/null | head -1)
65
+ if [ -n "$result" ]; then
66
+ echo "$result"
67
+ return 0
68
+ fi
69
+ # Try partial match
70
+ result=$(find "$SUBAGENT_DIR" -name "*${name}*.md" -type f 2>/dev/null)
71
+ echo "$result"
72
+ }
73
+
74
+ # Search agents by keyword in name or frontmatter description
75
+ subagent_catalog_search() {
76
+ local query="$1"
77
+ find "$SUBAGENT_DIR" -name "*.md" -type f 2>/dev/null | while read -r f; do
78
+ if grep -qil "$query" "$f" 2>/dev/null; then
79
+ local category
80
+ category=$(basename "$(dirname "$f")")
81
+ local agent
82
+ agent=$(basename "$f" .md)
83
+ local desc
84
+ desc=$(grep -m1 '^description:' "$f" 2>/dev/null | sed 's/^description: *"*//;s/"*$//' || echo "")
85
+ echo "$category/$agent|$desc"
86
+ fi
87
+ done
88
+ }
@@ -0,0 +1,54 @@
1
+ ---
2
+ name: fetch
3
+ description: "Read and display the full definition of a specific subagent from the local catalog."
4
+ ---
5
+
6
+ # Subagent Catalog - Fetch
7
+
8
+ Get the full definition of a specific agent from local storage.
9
+
10
+ ## Input: $ARGUMENTS
11
+
12
+ Accepts: agent name (e.g., `code-reviewer`, `python-pro`)
13
+
14
+ ## Instructions
15
+
16
+ ### Step 1: Find agent file
17
+
18
+ ```bash
19
+ source tools/subagent-catalog/config.sh
20
+ subagent_catalog_find "{{NAME}}"
21
+ ```
22
+
23
+ ### Step 2: Read and display
24
+
25
+ Read the agent file and display its contents with parsed frontmatter:
26
+
27
+ ```
28
+ ## code-reviewer
29
+
30
+ **Category**: 04-quality-security
31
+ **Model**: opus
32
+ **Tools**: Read, Write, Edit, Bash, Glob, Grep
33
+
34
+ [full definition follows]
35
+ ```
36
+
37
+ ### Step 3: Show invocation options
38
+
39
+ After displaying the definition, show how to use it:
40
+
41
+ ```
42
+ **How to invoke:**
43
+ - As orchestrator subagent: Agent(prompt="agents/subagents/04-quality-security/code-reviewer.md")
44
+ - With model override: Agent(prompt="...", model="opus")
45
+ - In background: Agent(prompt="...", run_in_background=true)
46
+ - In isolation: Agent(prompt="...", isolation="worktree")
47
+ ```
48
+
49
+ ### Error handling
50
+
51
+ | error | suggestion |
52
+ |-------|------------|
53
+ | not found | run `/subagent-catalog:search <partial>` |
54
+ | multiple matches | list them, ask user to specify |
@@ -0,0 +1,47 @@
1
+ ---
2
+ name: invalidate
3
+ description: "Invalidate the subagent-catalog cache. Use when results seem stale or user explicitly asks to refresh or clear cache."
4
+ ---
5
+
6
+ # Subagent Catalog - Invalidate
7
+
8
+ Force-refresh the cached catalog by deleting the local cache file. The next `search` or `fetch` call will pull fresh data from the repository.
9
+
10
+ ## Input: $ARGUMENTS
11
+
12
+ No arguments required. Optional: pass `--fetch` to immediately refresh after invalidation.
13
+
14
+ ## Instructions
15
+
16
+ ### Step 1: Source config
17
+
18
+ ```bash
19
+ source ~/.claude/commands/subagent-catalog/config.sh
20
+ ```
21
+
22
+ ### Step 2: Invalidate (and optionally refresh)
23
+
24
+ **Invalidate only** (default):
25
+
26
+ ```bash
27
+ subagent_catalog_invalidate_cache
28
+ ```
29
+
30
+ **Invalidate and refresh** (if `$ARGUMENTS` contains `--fetch` or user explicitly asks to refresh):
31
+
32
+ ```bash
33
+ subagent_catalog_invalidate_cache
34
+ subagent_catalog_refresh_cache
35
+ ```
36
+
37
+ ### Step 3: Confirm
38
+
39
+ Report the result:
40
+ - If invalidated only: "cache invalidated. next search/fetch will pull fresh data."
41
+ - If refreshed: "cache invalidated and refreshed with latest catalog."
42
+
43
+ ### When to use
44
+
45
+ - After the upstream repo has been updated with new subagents
46
+ - If you suspect the cache is corrupted
47
+ - To troubleshoot stale results
@@ -0,0 +1,48 @@
1
+ ---
2
+ name: list
3
+ description: "List all categories and agents in the local subagent catalog. Use when user wants to browse available subagents."
4
+ ---
5
+
6
+ # Subagent Catalog - List
7
+
8
+ Browse all available categories and agents from the local subagent catalog.
9
+
10
+ ## Input: $ARGUMENTS
11
+
12
+ No arguments required.
13
+
14
+ ## Instructions
15
+
16
+ ### Step 1: List categories and agents
17
+
18
+ ```bash
19
+ source tools/subagent-catalog/config.sh
20
+
21
+ for category in $(subagent_catalog_list_categories); do
22
+ echo "### $category"
23
+ subagent_catalog_list_agents_in "$category" | tr '\n' ', ' | sed 's/,$/\n/'
24
+ echo ""
25
+ done
26
+ ```
27
+
28
+ ### Step 2: Format output
29
+
30
+ Display as a scannable list:
31
+
32
+ ```
33
+ ## Subagent Catalog (Local)
34
+
35
+ ### 01-core-development
36
+ api-designer, backend-developer, frontend-developer, fullstack-developer, ...
37
+
38
+ ### 02-language-specialists
39
+ typescript-pro, python-pro, rust-engineer, golang-pro, ...
40
+
41
+ [...continue for all 10 categories...]
42
+ ```
43
+
44
+ ### Tips
45
+
46
+ - use `/subagent-catalog:search <query>` to filter by keyword
47
+ - use `/subagent-catalog:fetch <name>` to get full definition
48
+ - agents are stored locally in `agents/subagents/`
@@ -0,0 +1,41 @@
1
+ ---
2
+ name: search
3
+ description: "Search the local subagent catalog by name, description, or capability keyword."
4
+ ---
5
+
6
+ # Subagent Catalog - Search
7
+
8
+ Find agents by name, description, or category.
9
+
10
+ ## Input: $ARGUMENTS
11
+
12
+ ## Instructions
13
+
14
+ ### Step 1: Search local agents
15
+
16
+ ```bash
17
+ source tools/subagent-catalog/config.sh
18
+ subagent_catalog_search "{{QUERY}}"
19
+ ```
20
+
21
+ ### Step 2: Format results
22
+
23
+ Display matches as a table:
24
+
25
+ ```
26
+ ## Results for "kubernetes"
27
+
28
+ | Agent | Category | Description |
29
+ |-------|----------|-------------|
30
+ | kubernetes-specialist | 03-infrastructure | Container orchestration master |
31
+ | devops-engineer | 03-infrastructure | CI/CD and automation expert |
32
+
33
+ > use `/subagent-catalog:fetch <name>` to get full definition
34
+ > invoke with: Agent(prompt=agents/subagents/<category>/<name>.md)
35
+ ```
36
+
37
+ ### Step 3: Handle edge cases
38
+
39
+ - **no results**: suggest related terms or `/subagent-catalog:list`
40
+ - **too many results**: ask user to narrow the query
41
+ - **category match**: show all agents in that category