@agents-inc/cli 0.47.0 → 0.50.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 (261) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/README.md +113 -118
  3. package/config/skill-categories.yaml +344 -0
  4. package/config/skill-rules.yaml +740 -0
  5. package/config/stacks.yaml +0 -1
  6. package/dist/{chunk-CJFWO46A.js → chunk-26MXZUHU.js} +2 -2
  7. package/dist/{chunk-KQ27IDYL.js → chunk-2BWCR762.js} +2 -3
  8. package/dist/chunk-2BWCR762.js.map +1 -0
  9. package/dist/chunk-3VOL4WEG.js +31 -0
  10. package/dist/chunk-3VOL4WEG.js.map +1 -0
  11. package/dist/chunk-4QWDB2MD.js +571 -0
  12. package/dist/chunk-4QWDB2MD.js.map +1 -0
  13. package/dist/{chunk-LJ5E4GXC.js → chunk-4R52TQ3K.js} +2 -2
  14. package/dist/{chunk-SPSGZWTZ.js → chunk-5FCHJLM7.js} +34 -16
  15. package/dist/chunk-5FCHJLM7.js.map +1 -0
  16. package/dist/chunk-5FPIKTSA.js +40 -0
  17. package/dist/chunk-5FPIKTSA.js.map +1 -0
  18. package/dist/{chunk-HLTJK3XB.js → chunk-5L724R4C.js} +5 -6
  19. package/dist/{chunk-HLTJK3XB.js.map → chunk-5L724R4C.js.map} +1 -1
  20. package/dist/{chunk-JTTTXGHX.js → chunk-7LV4V6A4.js} +4 -4
  21. package/dist/{chunk-FTD5Z6QD.js → chunk-AWP5A6IM.js} +15 -7
  22. package/dist/chunk-AWP5A6IM.js.map +1 -0
  23. package/dist/chunk-C3Q43WLC.js +118 -0
  24. package/dist/chunk-C3Q43WLC.js.map +1 -0
  25. package/dist/{chunk-B4QYXVPZ.js → chunk-CMNKHDOX.js} +2 -2
  26. package/dist/{chunk-TBB3THSL.js → chunk-D72AFYQR.js} +8 -13
  27. package/dist/chunk-D72AFYQR.js.map +1 -0
  28. package/dist/{chunk-QR2TM4OY.js → chunk-DCE423KO.js} +46 -30
  29. package/dist/chunk-DCE423KO.js.map +1 -0
  30. package/dist/chunk-GBOW6FUW.js +74 -0
  31. package/dist/chunk-GBOW6FUW.js.map +1 -0
  32. package/dist/{chunk-GFDGYQ6M.js → chunk-HMSHB5EQ.js} +569 -269
  33. package/dist/chunk-HMSHB5EQ.js.map +1 -0
  34. package/dist/{chunk-NRCKIHND.js → chunk-HYEUETIC.js} +2 -2
  35. package/dist/{chunk-OEJDFGAF.js → chunk-I6IOGZSZ.js} +61 -52
  36. package/dist/chunk-I6IOGZSZ.js.map +1 -0
  37. package/dist/{chunk-3APMMQUA.js → chunk-JFF7P4LC.js} +30 -93
  38. package/dist/chunk-JFF7P4LC.js.map +1 -0
  39. package/dist/{chunk-N5OCAAXY.js → chunk-JWYRXE6C.js} +2 -2
  40. package/dist/{chunk-TWDVLTU6.js → chunk-KAO3LKB5.js} +3 -3
  41. package/dist/{chunk-XTRPYUWK.js → chunk-KQOU4POU.js} +26 -28
  42. package/dist/chunk-KQOU4POU.js.map +1 -0
  43. package/dist/{chunk-YTRFL3MR.js → chunk-M3GQ2R3E.js} +29 -28
  44. package/dist/chunk-M3GQ2R3E.js.map +1 -0
  45. package/dist/{chunk-LNA6M2IE.js → chunk-PGY5XROM.js} +2 -2
  46. package/dist/chunk-PGY5XROM.js.map +1 -0
  47. package/dist/{chunk-VAQJLHUW.js → chunk-QB5HHTAA.js} +8 -19
  48. package/dist/chunk-QB5HHTAA.js.map +1 -0
  49. package/dist/{chunk-VSZ5GDET.js → chunk-QYLCINGC.js} +2 -2
  50. package/dist/{chunk-IRJADQM7.js → chunk-RA2IPRO2.js} +2 -2
  51. package/dist/{chunk-DC333ZDC.js → chunk-RDWGYKDY.js} +4 -4
  52. package/dist/{chunk-FXQYEXLS.js → chunk-RFKDGJAJ.js} +26 -57
  53. package/dist/chunk-RFKDGJAJ.js.map +1 -0
  54. package/dist/{chunk-HPJP3HFD.js → chunk-SPFHPHYL.js} +7 -7
  55. package/dist/{chunk-EZ46ZTAQ.js → chunk-U2W5SENM.js} +3 -3
  56. package/dist/{chunk-MVEYK55V.js → chunk-U7X4V4HE.js} +2 -2
  57. package/dist/{chunk-INKJBMPJ.js → chunk-UAD3SC27.js} +4 -12
  58. package/dist/chunk-UAD3SC27.js.map +1 -0
  59. package/dist/{chunk-C4QI54PN.js → chunk-WBHPCBVN.js} +57 -34
  60. package/dist/chunk-WBHPCBVN.js.map +1 -0
  61. package/dist/chunk-WFFV254H.js +314 -0
  62. package/dist/chunk-WFFV254H.js.map +1 -0
  63. package/dist/{chunk-ZWAL2ZY7.js → chunk-WJHFV6RI.js} +3 -2
  64. package/dist/chunk-WJHFV6RI.js.map +1 -0
  65. package/dist/{chunk-2RQYJFKA.js → chunk-WLZHCM7O.js} +2 -2
  66. package/dist/{chunk-DVW6ASTO.js → chunk-XDSVV5GZ.js} +4 -4
  67. package/dist/{chunk-JZHIF3K7.js → chunk-YDYRAXSY.js} +57 -27
  68. package/dist/chunk-YDYRAXSY.js.map +1 -0
  69. package/dist/commands/build/marketplace.js +4 -4
  70. package/dist/commands/build/plugins.js +5 -5
  71. package/dist/commands/build/stack.js +5 -5
  72. package/dist/commands/compile.js +11 -9
  73. package/dist/commands/compile.js.map +1 -1
  74. package/dist/commands/config/get.js +4 -4
  75. package/dist/commands/config/index.js +5 -5
  76. package/dist/commands/config/path.js +4 -4
  77. package/dist/commands/config/set-project.js +4 -4
  78. package/dist/commands/config/show.js +5 -5
  79. package/dist/commands/config/unset-project.js +4 -4
  80. package/dist/commands/diff.js +4 -4
  81. package/dist/commands/doctor.js +4 -4
  82. package/dist/commands/edit.js +58 -52
  83. package/dist/commands/edit.js.map +1 -1
  84. package/dist/commands/eject.js +4 -4
  85. package/dist/commands/import/skill.js +7 -8
  86. package/dist/commands/import/skill.js.map +1 -1
  87. package/dist/commands/info.js +5 -5
  88. package/dist/commands/init.js +40 -435
  89. package/dist/commands/init.js.map +1 -1
  90. package/dist/commands/list.js +4 -4
  91. package/dist/commands/new/agent.js +11 -10
  92. package/dist/commands/new/agent.js.map +1 -1
  93. package/dist/commands/new/marketplace.js +24 -5
  94. package/dist/commands/new/marketplace.js.map +1 -1
  95. package/dist/commands/new/skill.js +15 -209
  96. package/dist/commands/new/skill.js.map +1 -1
  97. package/dist/commands/outdated.js +11 -7
  98. package/dist/commands/outdated.js.map +1 -1
  99. package/dist/commands/search.js +7 -8
  100. package/dist/commands/search.js.map +1 -1
  101. package/dist/commands/uninstall.js +6 -6
  102. package/dist/commands/update.js +6 -6
  103. package/dist/commands/validate.js +62 -250
  104. package/dist/commands/validate.js.map +1 -1
  105. package/dist/components/skill-search/skill-search.js +3 -3
  106. package/dist/components/wizard/category-grid.js +3 -2
  107. package/dist/components/wizard/category-grid.test.js +112 -58
  108. package/dist/components/wizard/category-grid.test.js.map +1 -1
  109. package/dist/components/wizard/checkbox-grid.js +5 -3
  110. package/dist/components/wizard/checkbox-grid.test.js +5 -4
  111. package/dist/components/wizard/checkbox-grid.test.js.map +1 -1
  112. package/dist/components/wizard/domain-selection.js +11 -9
  113. package/dist/components/wizard/help-modal.js +2 -2
  114. package/dist/components/wizard/menu-item.js +1 -1
  115. package/dist/components/wizard/search-modal.js +2 -2
  116. package/dist/components/wizard/search-modal.test.js +2 -2
  117. package/dist/components/wizard/section-progress.js +2 -2
  118. package/dist/components/wizard/section-progress.test.js +2 -2
  119. package/dist/components/wizard/selection-card.js +2 -2
  120. package/dist/components/wizard/source-grid.js +4 -3
  121. package/dist/components/wizard/source-grid.test.js +4 -3
  122. package/dist/components/wizard/source-grid.test.js.map +1 -1
  123. package/dist/components/wizard/stack-selection.js +8 -8
  124. package/dist/components/wizard/step-agents.js +10 -8
  125. package/dist/components/wizard/step-agents.test.js +18 -17
  126. package/dist/components/wizard/step-agents.test.js.map +1 -1
  127. package/dist/components/wizard/step-build.js +9 -8
  128. package/dist/components/wizard/step-build.test.js +17 -35
  129. package/dist/components/wizard/step-build.test.js.map +1 -1
  130. package/dist/components/wizard/step-confirm.js +4 -4
  131. package/dist/components/wizard/step-confirm.test.js +8 -8
  132. package/dist/components/wizard/step-refine.js +2 -2
  133. package/dist/components/wizard/step-refine.test.js +2 -2
  134. package/dist/components/wizard/step-settings.js +7 -5
  135. package/dist/components/wizard/step-settings.test.js +10 -8
  136. package/dist/components/wizard/step-settings.test.js.map +1 -1
  137. package/dist/components/wizard/step-sources.js +11 -10
  138. package/dist/components/wizard/step-sources.test.js +12 -11
  139. package/dist/components/wizard/step-sources.test.js.map +1 -1
  140. package/dist/components/wizard/step-stack.js +15 -12
  141. package/dist/components/wizard/step-stack.test.js +16 -13
  142. package/dist/components/wizard/step-stack.test.js.map +1 -1
  143. package/dist/components/wizard/view-title.js +2 -2
  144. package/dist/components/wizard/wizard-layout.js +8 -8
  145. package/dist/components/wizard/wizard-tabs.js +2 -2
  146. package/dist/components/wizard/wizard-tabs.test.js +2 -2
  147. package/dist/components/wizard/wizard.js +27 -25
  148. package/dist/config/skill-categories.yaml +344 -0
  149. package/dist/config/skill-rules.yaml +740 -0
  150. package/dist/config/stacks.yaml +0 -1
  151. package/dist/hooks/init.js +55 -3
  152. package/dist/hooks/init.js.map +1 -1
  153. package/dist/{source-manager-Q34LTUVM.js → source-manager-BVB2SG73.js} +4 -4
  154. package/dist/src/agents/meta/agent-summoner/critical-reminders.md +1 -1
  155. package/dist/src/agents/meta/agent-summoner/critical-requirements.md +1 -1
  156. package/dist/src/agents/meta/agent-summoner/examples.md +2 -2
  157. package/dist/src/agents/meta/agent-summoner/output-format.md +1 -1
  158. package/dist/src/agents/meta/agent-summoner/workflow.md +5 -7
  159. package/{src/agents/meta/documentor/agent.yaml → dist/src/agents/meta/documentor/metadata.yaml} +1 -0
  160. package/dist/stores/wizard-store.js +5 -5
  161. package/dist/stores/wizard-store.test.js +79 -27
  162. package/dist/stores/wizard-store.test.js.map +1 -1
  163. package/package.json +5 -1
  164. package/src/agents/meta/agent-summoner/critical-reminders.md +1 -1
  165. package/src/agents/meta/agent-summoner/critical-requirements.md +1 -1
  166. package/src/agents/meta/agent-summoner/examples.md +2 -2
  167. package/src/agents/meta/agent-summoner/output-format.md +1 -1
  168. package/src/agents/meta/agent-summoner/workflow.md +5 -7
  169. package/{dist/src/agents/meta/documentor/agent.yaml → src/agents/meta/documentor/metadata.yaml} +1 -0
  170. package/src/schemas/agent.schema.json +1 -1
  171. package/src/schemas/metadata.schema.json +2 -5
  172. package/src/schemas/project-config.schema.json +0 -3
  173. package/src/schemas/project-source-config.schema.json +4 -1
  174. package/config/skills-matrix.yaml +0 -918
  175. package/dist/chunk-3APMMQUA.js.map +0 -1
  176. package/dist/chunk-C4QI54PN.js.map +0 -1
  177. package/dist/chunk-FMQ3A7W4.js +0 -29
  178. package/dist/chunk-FMQ3A7W4.js.map +0 -1
  179. package/dist/chunk-FTD5Z6QD.js.map +0 -1
  180. package/dist/chunk-FXQYEXLS.js.map +0 -1
  181. package/dist/chunk-GFDGYQ6M.js.map +0 -1
  182. package/dist/chunk-INKJBMPJ.js.map +0 -1
  183. package/dist/chunk-JZHIF3K7.js.map +0 -1
  184. package/dist/chunk-KQ27IDYL.js.map +0 -1
  185. package/dist/chunk-LNA6M2IE.js.map +0 -1
  186. package/dist/chunk-M4P5YJ45.js +0 -99
  187. package/dist/chunk-M4P5YJ45.js.map +0 -1
  188. package/dist/chunk-OEJDFGAF.js.map +0 -1
  189. package/dist/chunk-QR2TM4OY.js.map +0 -1
  190. package/dist/chunk-SPSGZWTZ.js.map +0 -1
  191. package/dist/chunk-TBB3THSL.js.map +0 -1
  192. package/dist/chunk-VAQJLHUW.js.map +0 -1
  193. package/dist/chunk-XTRPYUWK.js.map +0 -1
  194. package/dist/chunk-YTRFL3MR.js.map +0 -1
  195. package/dist/chunk-ZWAL2ZY7.js.map +0 -1
  196. package/dist/config/skills-matrix.yaml +0 -918
  197. package/dist/src/agents/migration/cli-migrator/agent.yaml +0 -12
  198. package/dist/src/agents/migration/cli-migrator/anti-patterns.md +0 -158
  199. package/dist/src/agents/migration/cli-migrator/conversion-mappings.md +0 -63
  200. package/dist/src/agents/migration/cli-migrator/critical-reminders.md +0 -17
  201. package/dist/src/agents/migration/cli-migrator/critical-requirements.md +0 -13
  202. package/dist/src/agents/migration/cli-migrator/intro.md +0 -15
  203. package/dist/src/agents/migration/cli-migrator/output-format.md +0 -164
  204. package/dist/src/agents/migration/cli-migrator/workflow.md +0 -230
  205. package/src/agents/migration/cli-migrator/agent.yaml +0 -12
  206. package/src/agents/migration/cli-migrator/anti-patterns.md +0 -158
  207. package/src/agents/migration/cli-migrator/conversion-mappings.md +0 -63
  208. package/src/agents/migration/cli-migrator/critical-reminders.md +0 -17
  209. package/src/agents/migration/cli-migrator/critical-requirements.md +0 -13
  210. package/src/agents/migration/cli-migrator/intro.md +0 -15
  211. package/src/agents/migration/cli-migrator/output-format.md +0 -164
  212. package/src/agents/migration/cli-migrator/workflow.md +0 -230
  213. package/src/schemas/skills-matrix.schema.json +0 -179
  214. /package/dist/{chunk-CJFWO46A.js.map → chunk-26MXZUHU.js.map} +0 -0
  215. /package/dist/{chunk-LJ5E4GXC.js.map → chunk-4R52TQ3K.js.map} +0 -0
  216. /package/dist/{chunk-JTTTXGHX.js.map → chunk-7LV4V6A4.js.map} +0 -0
  217. /package/dist/{chunk-B4QYXVPZ.js.map → chunk-CMNKHDOX.js.map} +0 -0
  218. /package/dist/{chunk-NRCKIHND.js.map → chunk-HYEUETIC.js.map} +0 -0
  219. /package/dist/{chunk-N5OCAAXY.js.map → chunk-JWYRXE6C.js.map} +0 -0
  220. /package/dist/{chunk-TWDVLTU6.js.map → chunk-KAO3LKB5.js.map} +0 -0
  221. /package/dist/{chunk-VSZ5GDET.js.map → chunk-QYLCINGC.js.map} +0 -0
  222. /package/dist/{chunk-IRJADQM7.js.map → chunk-RA2IPRO2.js.map} +0 -0
  223. /package/dist/{chunk-DC333ZDC.js.map → chunk-RDWGYKDY.js.map} +0 -0
  224. /package/dist/{chunk-HPJP3HFD.js.map → chunk-SPFHPHYL.js.map} +0 -0
  225. /package/dist/{chunk-EZ46ZTAQ.js.map → chunk-U2W5SENM.js.map} +0 -0
  226. /package/dist/{chunk-MVEYK55V.js.map → chunk-U7X4V4HE.js.map} +0 -0
  227. /package/dist/{chunk-2RQYJFKA.js.map → chunk-WLZHCM7O.js.map} +0 -0
  228. /package/dist/{chunk-DVW6ASTO.js.map → chunk-XDSVV5GZ.js.map} +0 -0
  229. /package/dist/{source-manager-Q34LTUVM.js.map → source-manager-BVB2SG73.js.map} +0 -0
  230. /package/dist/src/agents/developer/api-developer/{agent.yaml → metadata.yaml} +0 -0
  231. /package/dist/src/agents/developer/cli-developer/{agent.yaml → metadata.yaml} +0 -0
  232. /package/dist/src/agents/developer/web-architecture/{agent.yaml → metadata.yaml} +0 -0
  233. /package/dist/src/agents/developer/web-developer/{agent.yaml → metadata.yaml} +0 -0
  234. /package/dist/src/agents/meta/agent-summoner/{agent.yaml → metadata.yaml} +0 -0
  235. /package/dist/src/agents/meta/skill-summoner/{agent.yaml → metadata.yaml} +0 -0
  236. /package/dist/src/agents/pattern/pattern-scout/{agent.yaml → metadata.yaml} +0 -0
  237. /package/dist/src/agents/pattern/web-pattern-critique/{agent.yaml → metadata.yaml} +0 -0
  238. /package/dist/src/agents/planning/web-pm/{agent.yaml → metadata.yaml} +0 -0
  239. /package/dist/src/agents/researcher/api-researcher/{agent.yaml → metadata.yaml} +0 -0
  240. /package/dist/src/agents/researcher/web-researcher/{agent.yaml → metadata.yaml} +0 -0
  241. /package/dist/src/agents/reviewer/api-reviewer/{agent.yaml → metadata.yaml} +0 -0
  242. /package/dist/src/agents/reviewer/cli-reviewer/{agent.yaml → metadata.yaml} +0 -0
  243. /package/dist/src/agents/reviewer/web-reviewer/{agent.yaml → metadata.yaml} +0 -0
  244. /package/dist/src/agents/tester/cli-tester/{agent.yaml → metadata.yaml} +0 -0
  245. /package/dist/src/agents/tester/web-tester/{agent.yaml → metadata.yaml} +0 -0
  246. /package/src/agents/developer/api-developer/{agent.yaml → metadata.yaml} +0 -0
  247. /package/src/agents/developer/cli-developer/{agent.yaml → metadata.yaml} +0 -0
  248. /package/src/agents/developer/web-architecture/{agent.yaml → metadata.yaml} +0 -0
  249. /package/src/agents/developer/web-developer/{agent.yaml → metadata.yaml} +0 -0
  250. /package/src/agents/meta/agent-summoner/{agent.yaml → metadata.yaml} +0 -0
  251. /package/src/agents/meta/skill-summoner/{agent.yaml → metadata.yaml} +0 -0
  252. /package/src/agents/pattern/pattern-scout/{agent.yaml → metadata.yaml} +0 -0
  253. /package/src/agents/pattern/web-pattern-critique/{agent.yaml → metadata.yaml} +0 -0
  254. /package/src/agents/planning/web-pm/{agent.yaml → metadata.yaml} +0 -0
  255. /package/src/agents/researcher/api-researcher/{agent.yaml → metadata.yaml} +0 -0
  256. /package/src/agents/researcher/web-researcher/{agent.yaml → metadata.yaml} +0 -0
  257. /package/src/agents/reviewer/api-reviewer/{agent.yaml → metadata.yaml} +0 -0
  258. /package/src/agents/reviewer/cli-reviewer/{agent.yaml → metadata.yaml} +0 -0
  259. /package/src/agents/reviewer/web-reviewer/{agent.yaml → metadata.yaml} +0 -0
  260. /package/src/agents/tester/cli-tester/{agent.yaml → metadata.yaml} +0 -0
  261. /package/src/agents/tester/web-tester/{agent.yaml → metadata.yaml} +0 -0
package/CHANGELOG.md CHANGED
@@ -9,6 +9,45 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
9
9
 
10
10
  ---
11
11
 
12
+ ## [0.50.0] - 2026-02-27
13
+
14
+ **Pre-1.0 cleanup — agent.yaml rename, expert mode removal, scroll hook extraction, DRY consolidation**
15
+
16
+ - Rename `agent.yaml` to `metadata.yaml` across all 17 agents
17
+ - Remove `cli-migrator` agent and expert mode toggle
18
+ - Extract `useSectionScroll` and `useRowScroll` hooks from 6 wizard components
19
+ - Unify scroll rendering, fix domain sort order stability (B-07)
20
+ - Dashboard view when `init` is run on existing project
21
+
22
+ See [changelogs/0.50.0.md](./changelogs/0.50.0.md) for full details.
23
+
24
+ ---
25
+
26
+ ## [0.49.0] - 2026-02-27
27
+
28
+ **Config file generation for new skill and new marketplace commands**
29
+
30
+ - `new marketplace` scaffolds `config/skill-categories.yaml` and `config/skill-rules.yaml`
31
+ - `new skill` creates or updates config files when running in marketplace context
32
+ - Matrix decomposition (D-50) all 8 phases complete
33
+
34
+ See [changelogs/0.49.0.md](./changelogs/0.49.0.md) for full details.
35
+
36
+ ---
37
+
38
+ ## [0.48.0] - 2026-02-27
39
+
40
+ **Matrix decomposition, displayName rename, E2E test infrastructure**
41
+
42
+ - Decompose `skills-matrix.yaml` into `skill-categories.yaml` + `skill-rules.yaml` with directory-based skill discovery
43
+ - Rename `cliName` to `displayName` in metadata schema, loaders, and validators
44
+ - Remove per-skill `categoryExclusive` — exclusivity now driven by category definitions
45
+ - Full PTY-based E2E test suite with 264 tests covering all commands and interactive flows
46
+
47
+ See [changelogs/0.48.0.md](./changelogs/0.48.0.md) for full details.
48
+
49
+ ---
50
+
12
51
  ## [0.47.0] - 2026-02-25
13
52
 
14
53
  **Custom domain support, source validation, wizard improvements, dead code cleanup**
package/README.md CHANGED
@@ -4,190 +4,185 @@
4
4
 
5
5
  # Agents Inc
6
6
 
7
- An agent composition framework that builds stacks and compiles specialized subagents for [Claude Code](https://docs.anthropic.com/en/docs/claude-code).
7
+ An agent composition framework that builds stacks and compiles specialized subagents for [Claude Code](https://docs.anthropic.com/en/docs/claude-code). Manage your subagents and skills with code via a unified CLI.
8
8
 
9
9
  [![npm version](https://img.shields.io/npm/v/@agents-inc/cli)](https://www.npmjs.com/package/@agents-inc/cli)
10
10
  [![TypeScript](https://img.shields.io/badge/TypeScript-strict-blue.svg)](https://www.typescriptlang.org/)
11
11
  [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](./LICENSE)
12
12
  [![Node: 18+](https://img.shields.io/badge/Node-18%2B-green.svg)](https://nodejs.org/)
13
13
 
14
- ```bash
15
- npx @agents-inc/cli init
16
- ```
17
-
18
- <!-- TODO: Add animated GIF of the full init wizard flow (stack selection → skill grid → agent config → done).
14
+ <!-- TODO: Add animated GIF of the full init wizard flow (stack selection -> skill grid -> agent config -> done).
19
15
  This is the hero image. It should show the complete happy path in ~15-20 seconds.
20
16
  <p align="center">
21
17
  <img src="./assets/init-wizard.gif" alt="Agents Inc init wizard" width="700">
22
18
  </p>
23
19
  -->
24
20
 
25
- ## What this does
21
+ ## Overview
26
22
 
27
- Claude Code doesn't know your stack. It doesn't know your patterns, your conventions, or the specific way you use your tools. So you end up repeating the same instructions or maintaining freeform markdown skills that fail silently when something's wrong.
23
+ Agents Inc comprises two parts:
28
24
 
29
- Agents Inc fixes this with structured skills: focused knowledge modules for specific technologies. Each skill covers patterns, conventions, anti-patterns, edge cases, and real code examples. Skills get compiled into specialized subagents (a web developer, a reviewer, a tester, a PM) that actually know what they're doing.
25
+ - **[Marketplace](https://github.com/agents-inc/skills):** 87+ atomic, best-practice skills spanning web, API, CLI, infra, and meta domains
26
+ - **CLI:** installs, ejects, creates, compiles, and updates skills and subagents
30
27
 
31
- The whole thing is opt-in and works alongside your existing Claude Code setup. It uses smart defaults, but there are progressive levels of customization: edit the config, swap skills, choose which to preload and which to load dynamically, eject templates, eject agent partials, or eject entire skills.
28
+ Skills are composed into 18+ domain-specific subagents through templates and modular agent partials, all validated against strict Zod schemas. Everything is ejectable so there's endless customisation with no lock-in.
32
29
 
33
- Under the hood, the CLI is written in strict TypeScript with Zod for runtime validation and JSON Schema generation. Skills and agents are validated against these schemas, so misconfigurations surface immediately. Agent compilation uses Liquid templates, so the output format is fully customizable without touching CLI internals.
30
+ ## How It Works
34
31
 
35
- ## Getting started
32
+ Each subagent is composed from modular partials (role, workflow, output format) plus a set of atomic skills. The CLI manages the full lifecycle:
33
+
34
+ - **Install:** pull skills from the public marketplace, your own, or a local directory either as plugins or directly as source files
35
+ - **Compose:** map skills to subagents, configure preloaded vs dynamic loading
36
+ - **Compile:** resolve skill mappings, Liquid templates, and agent partials into `.claude/agents/`
37
+ - **Eject:** take progressive ownership of any layer (partials, templates, skills, subagents)
38
+ - **Update:** pull upstream skill changes without losing local customizations
39
+
40
+ ## Getting Started
36
41
 
37
42
  ```bash
38
- # Run the wizard
39
43
  npx @agents-inc/cli init
40
-
41
- # Or install globally
42
- npm install -g @agents-inc/cli
43
44
  ```
44
45
 
45
46
  Requires Node 18+ and [Claude Code](https://docs.anthropic.com/en/docs/claude-code).
46
47
 
47
- The wizard walks you through the full setup:
48
-
49
- ### 1. Pick a stack or start from scratch
48
+ The wizard has three steps:
50
49
 
51
- <!-- TODO: Screenshot of the stack selection screen.
52
- Shows the list of available stacks (nextjs-fullstack, angular-stack, vue-stack, etc.)
53
- with descriptions and skill counts.
54
- <img src="./assets/screenshot-stacks.png" alt="Stack selection" width="700">
55
- -->
56
-
57
- Stacks bundle skills together with pre-configured agents. Instead of picking skills individually, grab a stack that matches your setup:
58
-
59
- - **nextjs-fullstack**: Next.js + React + Hono + Drizzle + PostHog + Zustand + React Query
60
- - **angular-stack**: Angular 19 + Signals + NgRx SignalStore + Hono + Drizzle
61
- - **vue-stack**: Vue 3 Composition API + Pinia + Hono + Drizzle
62
- - **nuxt-stack**: Nuxt + Vue 3 full-stack + Pinia + Hono + Drizzle
63
- - **remix-stack**: Remix + React + Hono + Drizzle
64
- - **solidjs-stack**: SolidJS + Hono + Drizzle
65
- - **react-native-stack**: React Native + Expo + Zustand + React Query
66
- - **meta-stack**: Agents for creating agents, skills, docs, and extracting patterns
67
-
68
- Or select "Start from scratch" to browse domains and pick skills one by one.
50
+ **1. Pick a stack or start from scratch** (or create your own in your custom marketplace):
69
51
 
70
- ### 2. Customize skills
52
+ | Stack | Technologies |
53
+ | ------------------ | ------------------------------------------------------------------ |
54
+ | `nextjs-fullstack` | Next.js + React + Hono + Drizzle + PostHog + Zustand + React Query |
55
+ | `angular-stack` | Angular 19 + Signals + NgRx SignalStore + Hono + Drizzle |
56
+ | `vue-stack` | Vue 3 Composition API + Pinia + Hono + Drizzle |
57
+ | `nuxt-stack` | Nuxt + Vue 3 full-stack + Pinia + Hono + Drizzle |
58
+ | `remix-stack` | Remix + React + Hono + Drizzle |
59
+ | `solidjs-stack` | SolidJS + Hono + Drizzle |
71
60
 
72
- <!-- TODO: Screenshot of the skill selection grid.
73
- Shows skills organized by category (web, api, mobile, etc.) with checkboxes,
74
- tagged by source when multiple sources are configured.
75
- <img src="./assets/screenshot-skills.png" alt="Skill selection" width="700">
76
- -->
61
+ **2. Customize skills.** Add or remove from the interactive grid.
77
62
 
78
- After picking a stack, you can add or remove individual skills. 87+ skills are available across these categories:
63
+ **3. Select subagents.** Choose which role-based subagents to include.
79
64
 
80
- **Web**<br>
81
- `React` `Vue` `Angular` `SolidJS` `Next.js` `Remix` `Nuxt` `SCSS Modules` `CVA` `Zustand` `Pinia` `NgRx SignalStore` `Jotai` `React Query` `SWR` `tRPC` `GraphQL` `React Hook Form` `Zod` `shadcn/ui` `Radix UI` `TanStack Table` `Vitest` `Playwright` `Cypress` `MSW` `Framer Motion` `Storybook` `Accessibility`
65
+ **4. Compile.** After init, use `agentsinc edit` to change selections and `agentsinc compile` to rebuild.
82
66
 
83
- **API**<br>
84
- `Hono` `Express` `Fastify` `Drizzle` `Prisma` `Better Auth` `PostHog` `Resend` `Axiom + Pino + Sentry` `GitHub Actions`
67
+ ## Skills
85
68
 
86
- **Mobile**<br>
87
- `React Native` `Expo`
69
+ 87+ skills organized by category:
88
70
 
89
- **CLI**<br>
90
- `Commander` `oclif + Ink`
71
+ **Web:** `React` `Vue` `Angular` `SolidJS` `Next.js` `Remix` `Nuxt` `SCSS Modules` `CVA` `Zustand` `Pinia` `NgRx SignalStore` `Jotai` `React Query` `SWR` `tRPC` `GraphQL` `React Hook Form` `Zod` `shadcn/ui` `Radix UI` `TanStack Table` `Vitest` `Playwright` `Cypress` `MSW` `Framer Motion` `Storybook` `Accessibility`
91
72
 
92
- **Infra**<br>
93
- `Turborepo` `Tooling` `Env config`
73
+ **API:** `Hono` `Express` `Fastify` `Drizzle` `Prisma` `Better Auth` `PostHog` `Resend` `Axiom + Pino + Sentry` `GitHub Actions`
94
74
 
95
- **Meta**<br>
96
- `Code reviewing` `Research methodology` `Investigation requirements` `Anti-over-engineering` `Context management`
75
+ **Mobile:** `React Native` `Expo`
97
76
 
98
- Skills live in the [Agents Inc marketplace](https://github.com/agents-inc/skills). Each one is a structured package with metadata, versioning, and compatibility declarations. Everything is validated against schemas, so if a skill name doesn't match or a config is malformed, you get an actual error instead of silent failure.
77
+ **CLI:** `Commander` `oclif + Ink`
99
78
 
100
- ### 3. Configure subagents
79
+ **Infra:** `Turborepo` `Tooling` `Env config`
101
80
 
102
- <!-- TODO: Screenshot of the subagent configuration screen.
103
- Shows which agents will be compiled (web-developer, web-reviewer, web-tester, etc.)
104
- and which skills are mapped to each one.
105
- <img src="./assets/screenshot-agents.png" alt="Subagent configuration" width="700">
106
- -->
81
+ **Meta:** `Code reviewing` `Research methodology` `Investigation requirements` `Anti-over-engineering` `Context management`
107
82
 
108
- Each stack includes agents like `web-developer`, `api-developer`, `web-reviewer`, `web-tester`, `web-researcher`, `pattern-scout`, and `documentor`: roles that use the right skills for the job.
83
+ ## Subagents
109
84
 
110
- ---
85
+ 17 roles across 7 categories:
111
86
 
112
- Both modes (stack or from scratch) compile agents and generate a config at `.claude-src/config.yaml`. Use `agentsinc edit` to change your setup at any time.
87
+ | Category | Subagents |
88
+ | ---------------- | ------------------------------------------------------------------ |
89
+ | Developers | `web-developer` `api-developer` `cli-developer` `web-architecture` |
90
+ | Reviewers | `web-reviewer` `api-reviewer` `cli-reviewer` |
91
+ | Testers | `web-tester` `cli-tester` |
92
+ | Researchers | `web-researcher` `api-researcher` |
93
+ | Planning | `web-pm` |
94
+ | Pattern Analysis | `pattern-scout` `web-pattern-critique` |
95
+ | Documentation | `documentor` |
96
+ | Meta | `skill-summoner` `agent-summoner` |
113
97
 
114
98
  ## Commands
115
99
 
116
- | Command | Description |
117
- | -------------- | ---------------------------------------------------------- |
118
- | `init` | Interactive setup: pick skills, configure agents |
119
- | `edit` | Modify your skill selection |
120
- | `compile` | Recompile agents after changes |
121
- | `update` | Pull latest skills from source |
122
- | `search` | Search skills across sources (interactive or static query) |
123
- | `eject` | Export skills or agent partials for customization |
124
- | `new skill` | Scaffold a custom skill |
125
- | `new agent` | Scaffold a custom agent |
126
- | `import skill` | Import a skill from an external GitHub repository |
127
- | `doctor` | Diagnose setup issues |
128
- | `uninstall` | Remove Agents Inc from your project |
100
+ ### Primary
129
101
 
130
- Every command supports `--dry-run` and `--source` flags. Run `agentsinc --help` for the full command list including `config`, `version`, `build`, `diff`, `outdated`, `validate`, `info`, and `list`.
102
+ | Command | Description |
103
+ | --------- | --------------------------------------------------------------------------- |
104
+ | `init` | Interactive setup wizard: pick a stack, customize skills, compile subagents |
105
+ | `edit` | Modify skill selection in the interactive wizard |
106
+ | `compile` | Recompile subagents after changes |
107
+ | `update` | Pull latest skills from source |
131
108
 
132
- ## Importing third-party skills
109
+ ### Customization
133
110
 
134
- Import skills from any GitHub repository into your local setup:
111
+ | Command | Description |
112
+ | -------------- | ----------------------------------------------------------------------------------------------------------------- |
113
+ | `eject <type>` | Export for customization (`agent-partials`, `templates`, `skills`, `all`) |
114
+ | `new skill` | Scaffold a custom skill ![Coming soon](https://img.shields.io/badge/coming%20soon-grey) |
115
+ | `new agent` | Scaffold a custom agent ![Coming soon](https://img.shields.io/badge/coming%20soon-grey) |
116
+ | `import skill` | Import a skill from an external GitHub repository ![Coming soon](https://img.shields.io/badge/coming%20soon-grey) |
117
+ | `search` | Search skills across sources ![Coming soon](https://img.shields.io/badge/coming%20soon-grey) |
135
118
 
136
- ```bash
137
- # List available skills from a repository
138
- agentsinc import skill github:your-org/skills --list
119
+ ### Diagnostics
139
120
 
140
- # Import a specific skill
141
- agentsinc import skill github:your-org/skills --skill react-best-practices
142
-
143
- # Import all skills from a repository
144
- agentsinc import skill github:your-org/skills --all
145
- ```
121
+ | Command | Description |
122
+ | ----------- | ------------------------------------------------------------------------------------------------------------ |
123
+ | `doctor` | Diagnose setup issues |
124
+ | `diff` | Show changes between local and source skills ![Coming soon](https://img.shields.io/badge/coming%20soon-grey) |
125
+ | `outdated` | Check for skill updates |
126
+ | `validate` | Validate config and skill structure |
127
+ | `info` | Show project configuration details |
128
+ | `uninstall` | Remove Agents Inc from your project |
146
129
 
147
- Imported skills are copied to `.claude/skills/` and tracked with metadata for future updates.
130
+ Run `agentsinc --help` for full usage.
148
131
 
149
132
  ## Customization
150
133
 
151
- Everything is configured through `.claude-src/config.yaml` with schema validation. There are progressive levels of customization depending on how deep you want to go:
134
+ Progressive layers from config to full extension:
152
135
 
153
- **Edit the config directly** to change skill-to-agent mappings:
136
+ | Layer | How |
137
+ | --------------- | ---------------------------------------------------------------------------------------------- |
138
+ | Edit config | `.claude-src/config.yaml`; skill-to-subagent mappings, preloaded/dynamic |
139
+ | Wizard | `agentsinc edit`; add/remove skills interactively |
140
+ | Eject partials | `agentsinc eject agent-partials`; customize agent partials such as intro, workflow, and output |
141
+ | Eject templates | `agentsinc eject templates`; modify Liquid templates |
142
+ | Eject skills | `agentsinc eject skills`; fork skills for local editing |
143
+ | Custom skills | `agentsinc new skill`; scaffold with proper metadata |
144
+ | Custom agents | `agentsinc new agent`; scaffold agent files |
145
+ | Custom sources | Point to a private repo or local directory as a skill source |
146
+ | Plugins | Package skills/subagents as Claude Code plugins for distribution |
154
147
 
155
- ```yaml
156
- web-developer:
157
- web-framework:
158
- id: web-framework-react
159
- preloaded: true
160
- web-styling: web-styling-tailwind-v3
161
- ```
148
+ Templates apply globally across all subagents; partials apply to specific roles. Put shared conventions in a template for consistency, and role-specific behaviour in partials.
162
149
 
163
- **Eject** for deeper control:
150
+ Import skills from any GitHub repository:
164
151
 
165
152
  ```bash
166
- # Eject agent partials (intro, workflow, critical requirements, etc.)
167
- npx @agents-inc/cli eject agent-partials
168
-
169
- # Eject the Liquid templates that control how agents are compiled
170
- npx @agents-inc/cli eject agent-partials --templates
171
-
172
- # Eject skills for local editing
173
- npx @agents-inc/cli eject skills
153
+ agentsinc import skill github:your-org/skills --list
154
+ agentsinc import skill github:your-org/skills --skill react-best-practices
155
+ agentsinc import skill github:your-org/skills --all
174
156
  ```
175
157
 
176
- **Create custom skills** when you need something that doesn't exist:
158
+ ## Tech Stack
177
159
 
178
- ```bash
179
- npx @agents-inc/cli new skill my-custom-skill
180
- ```
160
+ | Component | Technology |
161
+ | ------------ | ------------------------------------- |
162
+ | Commands | oclif |
163
+ | Terminal UI | Ink + React |
164
+ | Wizard state | Zustand |
165
+ | Validation | Zod (30+ schemas at parse boundaries) |
166
+ | Compilation | LiquidJS |
167
+ | Testing | Vitest |
181
168
 
182
- ## Architecture
183
-
184
- The CLI uses oclif for commands, Ink (React) for the terminal UI, and Zustand for wizard state. The codebase is organized into domain-driven library modules with barrel exports.
169
+ ```
170
+ src/cli/
171
+ commands/ # oclif command definitions
172
+ components/ # Ink/React terminal UI components
173
+ lib/ # Core logic (compiler, loader, resolver, schemas)
174
+ stores/ # Zustand state management
175
+ utils/ # Shared utilities
176
+ src/agents/ # Subagent definitions (18 roles)
177
+ config/ # Skills matrix, stacks, default mappings
178
+ ```
185
179
 
186
180
  See [docs/reference/architecture.md](./docs/reference/architecture.md) for the full reference.
187
181
 
188
182
  ## Links
189
183
 
190
- - [Agents Inc Skills](https://github.com/agents-inc/skills): the marketplace
184
+ - [Plugin Marketplace](https://github.com/agents-inc/skills): browse and discover skills
185
+ - [Architecture Reference](./docs/reference/architecture.md): full system documentation
191
186
 
192
187
  ## License
193
188