metaharness 0.1.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 (383) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +73 -0
  3. package/dist/analyze-repo.d.ts +74 -0
  4. package/dist/analyze-repo.d.ts.map +1 -0
  5. package/dist/analyze-repo.js +329 -0
  6. package/dist/analyze-repo.js.map +1 -0
  7. package/dist/audit-cmd.d.ts +6 -0
  8. package/dist/audit-cmd.d.ts.map +1 -0
  9. package/dist/audit-cmd.js +139 -0
  10. package/dist/audit-cmd.js.map +1 -0
  11. package/dist/bin.d.ts +3 -0
  12. package/dist/bin.d.ts.map +1 -0
  13. package/dist/bin.js +8 -0
  14. package/dist/bin.js.map +1 -0
  15. package/dist/compare-cmd.d.ts +56 -0
  16. package/dist/compare-cmd.d.ts.map +1 -0
  17. package/dist/compare-cmd.js +173 -0
  18. package/dist/compare-cmd.js.map +1 -0
  19. package/dist/completions-cmd.d.ts +6 -0
  20. package/dist/completions-cmd.d.ts.map +1 -0
  21. package/dist/completions-cmd.js +171 -0
  22. package/dist/completions-cmd.js.map +1 -0
  23. package/dist/diag.d.ts +76 -0
  24. package/dist/diag.d.ts.map +1 -0
  25. package/dist/diag.js +349 -0
  26. package/dist/diag.js.map +1 -0
  27. package/dist/eject.d.ts +33 -0
  28. package/dist/eject.d.ts.map +1 -0
  29. package/dist/eject.js +147 -0
  30. package/dist/eject.js.map +1 -0
  31. package/dist/export-config.d.ts +25 -0
  32. package/dist/export-config.d.ts.map +1 -0
  33. package/dist/export-config.js +134 -0
  34. package/dist/export-config.js.map +1 -0
  35. package/dist/external-template.d.ts +19 -0
  36. package/dist/external-template.d.ts.map +1 -0
  37. package/dist/external-template.js +37 -0
  38. package/dist/external-template.js.map +1 -0
  39. package/dist/federate.d.ts +37 -0
  40. package/dist/federate.d.ts.map +1 -0
  41. package/dist/federate.js +167 -0
  42. package/dist/federate.js.map +1 -0
  43. package/dist/genome-scorers.d.ts +33 -0
  44. package/dist/genome-scorers.d.ts.map +1 -0
  45. package/dist/genome-scorers.js +115 -0
  46. package/dist/genome-scorers.js.map +1 -0
  47. package/dist/genome.d.ts +28 -0
  48. package/dist/genome.d.ts.map +1 -0
  49. package/dist/genome.js +219 -0
  50. package/dist/genome.js.map +1 -0
  51. package/dist/harness-bin.d.ts +3 -0
  52. package/dist/harness-bin.d.ts.map +1 -0
  53. package/dist/harness-bin.js +17 -0
  54. package/dist/harness-bin.js.map +1 -0
  55. package/dist/index.d.ts +79 -0
  56. package/dist/index.d.ts.map +1 -0
  57. package/dist/index.js +409 -0
  58. package/dist/index.js.map +1 -0
  59. package/dist/manifest.d.ts +55 -0
  60. package/dist/manifest.d.ts.map +1 -0
  61. package/dist/manifest.js +62 -0
  62. package/dist/manifest.js.map +1 -0
  63. package/dist/mcp-cmd.d.ts +19 -0
  64. package/dist/mcp-cmd.d.ts.map +1 -0
  65. package/dist/mcp-cmd.js +179 -0
  66. package/dist/mcp-cmd.js.map +1 -0
  67. package/dist/mcp-scan.d.ts +25 -0
  68. package/dist/mcp-scan.d.ts.map +1 -0
  69. package/dist/mcp-scan.js +132 -0
  70. package/dist/mcp-scan.js.map +1 -0
  71. package/dist/oia-manifest.d.ts +97 -0
  72. package/dist/oia-manifest.d.ts.map +1 -0
  73. package/dist/oia-manifest.js +241 -0
  74. package/dist/oia-manifest.js.map +1 -0
  75. package/dist/publish-cmd.d.ts +9 -0
  76. package/dist/publish-cmd.d.ts.map +1 -0
  77. package/dist/publish-cmd.js +56 -0
  78. package/dist/publish-cmd.js.map +1 -0
  79. package/dist/publish.d.ts +55 -0
  80. package/dist/publish.d.ts.map +1 -0
  81. package/dist/publish.js +104 -0
  82. package/dist/publish.js.map +1 -0
  83. package/dist/registry.d.ts +60 -0
  84. package/dist/registry.d.ts.map +1 -0
  85. package/dist/registry.js +67 -0
  86. package/dist/registry.js.map +1 -0
  87. package/dist/rename.d.ts +26 -0
  88. package/dist/rename.d.ts.map +1 -0
  89. package/dist/rename.js +86 -0
  90. package/dist/rename.js.map +1 -0
  91. package/dist/renderer.d.ts +39 -0
  92. package/dist/renderer.d.ts.map +1 -0
  93. package/dist/renderer.js +75 -0
  94. package/dist/renderer.js.map +1 -0
  95. package/dist/sbom-cmd.d.ts +6 -0
  96. package/dist/sbom-cmd.d.ts.map +1 -0
  97. package/dist/sbom-cmd.js +125 -0
  98. package/dist/sbom-cmd.js.map +1 -0
  99. package/dist/score.d.ts +32 -0
  100. package/dist/score.d.ts.map +1 -0
  101. package/dist/score.js +381 -0
  102. package/dist/score.js.map +1 -0
  103. package/dist/secrets.d.ts +27 -0
  104. package/dist/secrets.d.ts.map +1 -0
  105. package/dist/secrets.js +228 -0
  106. package/dist/secrets.js.map +1 -0
  107. package/dist/subcommands.d.ts +32 -0
  108. package/dist/subcommands.d.ts.map +1 -0
  109. package/dist/subcommands.js +335 -0
  110. package/dist/subcommands.js.map +1 -0
  111. package/dist/tarball.d.ts +14 -0
  112. package/dist/tarball.d.ts.map +1 -0
  113. package/dist/tarball.js +121 -0
  114. package/dist/tarball.js.map +1 -0
  115. package/dist/threat-model.d.ts +32 -0
  116. package/dist/threat-model.d.ts.map +1 -0
  117. package/dist/threat-model.js +236 -0
  118. package/dist/threat-model.js.map +1 -0
  119. package/dist/upgrade-cmd.d.ts +9 -0
  120. package/dist/upgrade-cmd.d.ts.map +1 -0
  121. package/dist/upgrade-cmd.js +90 -0
  122. package/dist/upgrade-cmd.js.map +1 -0
  123. package/dist/upgrade.d.ts +37 -0
  124. package/dist/upgrade.d.ts.map +1 -0
  125. package/dist/upgrade.js +124 -0
  126. package/dist/upgrade.js.map +1 -0
  127. package/dist/validate.d.ts +7 -0
  128. package/dist/validate.d.ts.map +1 -0
  129. package/dist/validate.js +240 -0
  130. package/dist/validate.js.map +1 -0
  131. package/dist/walker.d.ts +24 -0
  132. package/dist/walker.d.ts.map +1 -0
  133. package/dist/walker.js +76 -0
  134. package/dist/walker.js.map +1 -0
  135. package/dist/witness-client.d.ts +40 -0
  136. package/dist/witness-client.d.ts.map +1 -0
  137. package/dist/witness-client.js +99 -0
  138. package/dist/witness-client.js.map +1 -0
  139. package/dist/wizard.d.ts +37 -0
  140. package/dist/wizard.d.ts.map +1 -0
  141. package/dist/wizard.js +137 -0
  142. package/dist/wizard.js.map +1 -0
  143. package/dist/writer.d.ts +13 -0
  144. package/dist/writer.d.ts.map +1 -0
  145. package/dist/writer.js +43 -0
  146. package/dist/writer.js.map +1 -0
  147. package/package.json +114 -0
  148. package/templates/catalog.def.mjs +542 -0
  149. package/templates/catalog.json +1274 -0
  150. package/templates/minimal/.claude/settings.json.tmpl +18 -0
  151. package/templates/minimal/CLAUDE.md.tmpl +23 -0
  152. package/templates/minimal/README.md.tmpl +20 -0
  153. package/templates/minimal/manifest.json +16 -0
  154. package/templates/minimal/package.json.tmpl +30 -0
  155. package/templates/minimal/src/init.ts.tmpl +21 -0
  156. package/templates/vertical_advertising/.claude/commands/doctor.md.tmpl +12 -0
  157. package/templates/vertical_advertising/.claude/settings.json.tmpl +33 -0
  158. package/templates/vertical_advertising/.claude/skills/media-plan/SKILL.md.tmpl +13 -0
  159. package/templates/vertical_advertising/CLAUDE.md.tmpl +30 -0
  160. package/templates/vertical_advertising/README.md.tmpl +29 -0
  161. package/templates/vertical_advertising/manifest.json +81 -0
  162. package/templates/vertical_advertising/package.json.tmpl +30 -0
  163. package/templates/vertical_advertising/src/agents/copywriter.ts.tmpl +7 -0
  164. package/templates/vertical_advertising/src/agents/media-planner.ts.tmpl +7 -0
  165. package/templates/vertical_advertising/src/agents/performance-analyst.ts.tmpl +7 -0
  166. package/templates/vertical_advertising/src/init.ts.tmpl +21 -0
  167. package/templates/vertical_agentics/.claude/commands/doctor.md.tmpl +12 -0
  168. package/templates/vertical_agentics/.claude/settings.json.tmpl +33 -0
  169. package/templates/vertical_agentics/.claude/skills/memory-inspect/SKILL.md.tmpl +14 -0
  170. package/templates/vertical_agentics/.claude/skills/run-swarm/SKILL.md.tmpl +14 -0
  171. package/templates/vertical_agentics/CLAUDE.md.tmpl +32 -0
  172. package/templates/vertical_agentics/README.md.tmpl +30 -0
  173. package/templates/vertical_agentics/manifest.json +91 -0
  174. package/templates/vertical_agentics/package.json.tmpl +30 -0
  175. package/templates/vertical_agentics/src/agents/critic.ts.tmpl +7 -0
  176. package/templates/vertical_agentics/src/agents/orchestrator.ts.tmpl +7 -0
  177. package/templates/vertical_agentics/src/agents/planner.ts.tmpl +7 -0
  178. package/templates/vertical_agentics/src/agents/worker.ts.tmpl +7 -0
  179. package/templates/vertical_agentics/src/init.ts.tmpl +21 -0
  180. package/templates/vertical_ai/.claude/commands/doctor.md.tmpl +12 -0
  181. package/templates/vertical_ai/.claude/settings.json.tmpl +35 -0
  182. package/templates/vertical_ai/.claude/skills/eval-report/SKILL.md.tmpl +13 -0
  183. package/templates/vertical_ai/CLAUDE.md.tmpl +31 -0
  184. package/templates/vertical_ai/README.md.tmpl +30 -0
  185. package/templates/vertical_ai/manifest.json +86 -0
  186. package/templates/vertical_ai/package.json.tmpl +30 -0
  187. package/templates/vertical_ai/src/agents/data-curator.ts.tmpl +7 -0
  188. package/templates/vertical_ai/src/agents/deployer.ts.tmpl +7 -0
  189. package/templates/vertical_ai/src/agents/evaluator.ts.tmpl +7 -0
  190. package/templates/vertical_ai/src/agents/trainer.ts.tmpl +7 -0
  191. package/templates/vertical_ai/src/init.ts.tmpl +21 -0
  192. package/templates/vertical_business/.claude/commands/doctor.md.tmpl +12 -0
  193. package/templates/vertical_business/.claude/settings.json.tmpl +33 -0
  194. package/templates/vertical_business/.claude/skills/quarterly-plan/SKILL.md.tmpl +13 -0
  195. package/templates/vertical_business/CLAUDE.md.tmpl +30 -0
  196. package/templates/vertical_business/README.md.tmpl +29 -0
  197. package/templates/vertical_business/manifest.json +81 -0
  198. package/templates/vertical_business/package.json.tmpl +30 -0
  199. package/templates/vertical_business/src/agents/analyst.ts.tmpl +7 -0
  200. package/templates/vertical_business/src/agents/ops-coordinator.ts.tmpl +7 -0
  201. package/templates/vertical_business/src/agents/strategist.ts.tmpl +7 -0
  202. package/templates/vertical_business/src/init.ts.tmpl +21 -0
  203. package/templates/vertical_coding/.claude/commands/doctor.md.tmpl +12 -0
  204. package/templates/vertical_coding/.claude/commands/review-diff.md.tmpl +10 -0
  205. package/templates/vertical_coding/.claude/settings.json.tmpl +40 -0
  206. package/templates/vertical_coding/.claude/skills/plan-change/SKILL.md.tmpl +15 -0
  207. package/templates/vertical_coding/CLAUDE.md.tmpl +32 -0
  208. package/templates/vertical_coding/README.md.tmpl +30 -0
  209. package/templates/vertical_coding/manifest.json +91 -0
  210. package/templates/vertical_coding/package.json.tmpl +30 -0
  211. package/templates/vertical_coding/src/agents/architect.ts.tmpl +7 -0
  212. package/templates/vertical_coding/src/agents/implementer.ts.tmpl +7 -0
  213. package/templates/vertical_coding/src/agents/reviewer.ts.tmpl +7 -0
  214. package/templates/vertical_coding/src/agents/test-writer.ts.tmpl +7 -0
  215. package/templates/vertical_coding/src/init.ts.tmpl +21 -0
  216. package/templates/vertical_crm/.claude/commands/doctor.md.tmpl +12 -0
  217. package/templates/vertical_crm/.claude/settings.json.tmpl +33 -0
  218. package/templates/vertical_crm/.claude/skills/memory-inspect/SKILL.md.tmpl +14 -0
  219. package/templates/vertical_crm/CLAUDE.md.tmpl +30 -0
  220. package/templates/vertical_crm/README.md.tmpl +29 -0
  221. package/templates/vertical_crm/manifest.json +81 -0
  222. package/templates/vertical_crm/package.json.tmpl +30 -0
  223. package/templates/vertical_crm/src/agents/account-manager.ts.tmpl +7 -0
  224. package/templates/vertical_crm/src/agents/churn-watcher.ts.tmpl +7 -0
  225. package/templates/vertical_crm/src/agents/lead-qualifier.ts.tmpl +7 -0
  226. package/templates/vertical_crm/src/init.ts.tmpl +21 -0
  227. package/templates/vertical_devops/.claude/settings.json.tmpl +36 -0
  228. package/templates/vertical_devops/CLAUDE.md.tmpl +34 -0
  229. package/templates/vertical_devops/README.md.tmpl +27 -0
  230. package/templates/vertical_devops/manifest.json +22 -0
  231. package/templates/vertical_devops/package.json.tmpl +26 -0
  232. package/templates/vertical_devops/runbooks/README.md.tmpl +32 -0
  233. package/templates/vertical_devops/src/agents/escalator.ts.tmpl +19 -0
  234. package/templates/vertical_devops/src/agents/postmortem.ts.tmpl +23 -0
  235. package/templates/vertical_devops/src/agents/responder.ts.tmpl +14 -0
  236. package/templates/vertical_devops/src/agents/runbook-runner.ts.tmpl +17 -0
  237. package/templates/vertical_devops/src/init.ts.tmpl +23 -0
  238. package/templates/vertical_education/.claude/commands/doctor.md.tmpl +12 -0
  239. package/templates/vertical_education/.claude/commands/mastery-report.md.tmpl +12 -0
  240. package/templates/vertical_education/.claude/settings.json.tmpl +45 -0
  241. package/templates/vertical_education/.claude/skills/memory-inspect/SKILL.md.tmpl +14 -0
  242. package/templates/vertical_education/.claude/skills/teach-next/SKILL.md.tmpl +16 -0
  243. package/templates/vertical_education/CLAUDE.md.tmpl +33 -0
  244. package/templates/vertical_education/README.md.tmpl +30 -0
  245. package/templates/vertical_education/manifest.json +96 -0
  246. package/templates/vertical_education/package.json.tmpl +30 -0
  247. package/templates/vertical_education/src/agents/explainer.ts.tmpl +7 -0
  248. package/templates/vertical_education/src/agents/grader.ts.tmpl +7 -0
  249. package/templates/vertical_education/src/agents/quiz-master.ts.tmpl +7 -0
  250. package/templates/vertical_education/src/agents/tutor.ts.tmpl +7 -0
  251. package/templates/vertical_education/src/init.ts.tmpl +21 -0
  252. package/templates/vertical_exotic/.claude/commands/doctor.md.tmpl +12 -0
  253. package/templates/vertical_exotic/.claude/settings.json.tmpl +44 -0
  254. package/templates/vertical_exotic/.claude/skills/evolve/SKILL.md.tmpl +14 -0
  255. package/templates/vertical_exotic/.claude/skills/memory-inspect/SKILL.md.tmpl +14 -0
  256. package/templates/vertical_exotic/CLAUDE.md.tmpl +31 -0
  257. package/templates/vertical_exotic/README.md.tmpl +29 -0
  258. package/templates/vertical_exotic/manifest.json +86 -0
  259. package/templates/vertical_exotic/package.json.tmpl +30 -0
  260. package/templates/vertical_exotic/src/agents/experimenter.ts.tmpl +7 -0
  261. package/templates/vertical_exotic/src/agents/federator.ts.tmpl +7 -0
  262. package/templates/vertical_exotic/src/agents/hypothesizer.ts.tmpl +7 -0
  263. package/templates/vertical_exotic/src/init.ts.tmpl +21 -0
  264. package/templates/vertical_gaming/.claude/commands/design-doc-diff.md.tmpl +13 -0
  265. package/templates/vertical_gaming/.claude/commands/doctor.md.tmpl +12 -0
  266. package/templates/vertical_gaming/.claude/settings.json.tmpl +45 -0
  267. package/templates/vertical_gaming/.claude/skills/memory-inspect/SKILL.md.tmpl +14 -0
  268. package/templates/vertical_gaming/.claude/skills/playtest-recap/SKILL.md.tmpl +16 -0
  269. package/templates/vertical_gaming/CLAUDE.md.tmpl +33 -0
  270. package/templates/vertical_gaming/README.md.tmpl +30 -0
  271. package/templates/vertical_gaming/manifest.json +96 -0
  272. package/templates/vertical_gaming/package.json.tmpl +30 -0
  273. package/templates/vertical_gaming/src/agents/balance-critic.ts.tmpl +7 -0
  274. package/templates/vertical_gaming/src/agents/economy-modeler.ts.tmpl +7 -0
  275. package/templates/vertical_gaming/src/agents/narrative-keeper.ts.tmpl +7 -0
  276. package/templates/vertical_gaming/src/agents/playtest-reader.ts.tmpl +7 -0
  277. package/templates/vertical_gaming/src/init.ts.tmpl +21 -0
  278. package/templates/vertical_health/.claude/commands/doctor.md.tmpl +12 -0
  279. package/templates/vertical_health/.claude/settings.json.tmpl +33 -0
  280. package/templates/vertical_health/.claude/skills/wellness-intake/SKILL.md.tmpl +15 -0
  281. package/templates/vertical_health/CLAUDE.md.tmpl +30 -0
  282. package/templates/vertical_health/README.md.tmpl +29 -0
  283. package/templates/vertical_health/manifest.json +81 -0
  284. package/templates/vertical_health/package.json.tmpl +30 -0
  285. package/templates/vertical_health/src/agents/care-coordinator.ts.tmpl +7 -0
  286. package/templates/vertical_health/src/agents/intake.ts.tmpl +7 -0
  287. package/templates/vertical_health/src/agents/triage.ts.tmpl +7 -0
  288. package/templates/vertical_health/src/init.ts.tmpl +21 -0
  289. package/templates/vertical_legal/.claude/settings.json.tmpl +10 -0
  290. package/templates/vertical_legal/CLAUDE.md.tmpl +24 -0
  291. package/templates/vertical_legal/README.md.tmpl +21 -0
  292. package/templates/vertical_legal/manifest.json +20 -0
  293. package/templates/vertical_legal/package.json.tmpl +13 -0
  294. package/templates/vertical_legal/src/agents/citation-checker.ts.tmpl +7 -0
  295. package/templates/vertical_legal/src/agents/redline.ts.tmpl +7 -0
  296. package/templates/vertical_legal/src/agents/risk-rater.ts.tmpl +8 -0
  297. package/templates/vertical_legal/src/init.ts.tmpl +13 -0
  298. package/templates/vertical_marketing/.claude/commands/doctor.md.tmpl +12 -0
  299. package/templates/vertical_marketing/.claude/settings.json.tmpl +33 -0
  300. package/templates/vertical_marketing/.claude/skills/campaign-brief/SKILL.md.tmpl +13 -0
  301. package/templates/vertical_marketing/CLAUDE.md.tmpl +30 -0
  302. package/templates/vertical_marketing/README.md.tmpl +29 -0
  303. package/templates/vertical_marketing/manifest.json +81 -0
  304. package/templates/vertical_marketing/package.json.tmpl +30 -0
  305. package/templates/vertical_marketing/src/agents/content-creator.ts.tmpl +7 -0
  306. package/templates/vertical_marketing/src/agents/seo-analyst.ts.tmpl +7 -0
  307. package/templates/vertical_marketing/src/agents/strategist.ts.tmpl +7 -0
  308. package/templates/vertical_marketing/src/init.ts.tmpl +21 -0
  309. package/templates/vertical_repo-maintainer/.claude/commands/doctor.md.tmpl +12 -0
  310. package/templates/vertical_repo-maintainer/.claude/commands/release-check.md.tmpl +13 -0
  311. package/templates/vertical_repo-maintainer/.claude/commands/repo-triage.md.tmpl +16 -0
  312. package/templates/vertical_repo-maintainer/.claude/settings.json.tmpl +44 -0
  313. package/templates/vertical_repo-maintainer/.claude/skills/memory-inspect/SKILL.md.tmpl +14 -0
  314. package/templates/vertical_repo-maintainer/.claude/skills/plan-change/SKILL.md.tmpl +15 -0
  315. package/templates/vertical_repo-maintainer/CLAUDE.md.tmpl +34 -0
  316. package/templates/vertical_repo-maintainer/README.md.tmpl +30 -0
  317. package/templates/vertical_repo-maintainer/manifest.json +101 -0
  318. package/templates/vertical_repo-maintainer/package.json.tmpl +30 -0
  319. package/templates/vertical_repo-maintainer/src/agents/benchmarker.ts.tmpl +7 -0
  320. package/templates/vertical_repo-maintainer/src/agents/maintainer.ts.tmpl +7 -0
  321. package/templates/vertical_repo-maintainer/src/agents/release.ts.tmpl +7 -0
  322. package/templates/vertical_repo-maintainer/src/agents/security.ts.tmpl +7 -0
  323. package/templates/vertical_repo-maintainer/src/init.ts.tmpl +21 -0
  324. package/templates/vertical_research/.claude/settings.json.tmpl +9 -0
  325. package/templates/vertical_research/CLAUDE.md.tmpl +33 -0
  326. package/templates/vertical_research/README.md.tmpl +17 -0
  327. package/templates/vertical_research/manifest.json +23 -0
  328. package/templates/vertical_research/package.json.tmpl +13 -0
  329. package/templates/vertical_research/src/agents/citer.ts.tmpl +8 -0
  330. package/templates/vertical_research/src/agents/fact-checker.ts.tmpl +8 -0
  331. package/templates/vertical_research/src/agents/scout.ts.tmpl +7 -0
  332. package/templates/vertical_research/src/agents/source-grader.ts.tmpl +10 -0
  333. package/templates/vertical_research/src/agents/synthesizer.ts.tmpl +8 -0
  334. package/templates/vertical_research/src/agents/web-searcher.ts.tmpl +6 -0
  335. package/templates/vertical_research/src/init.ts.tmpl +13 -0
  336. package/templates/vertical_ruview/.claude/commands/doctor.md.tmpl +12 -0
  337. package/templates/vertical_ruview/.claude/settings.json.tmpl +33 -0
  338. package/templates/vertical_ruview/.claude/skills/index-and-ask/SKILL.md.tmpl +15 -0
  339. package/templates/vertical_ruview/.claude/skills/memory-inspect/SKILL.md.tmpl +14 -0
  340. package/templates/vertical_ruview/CLAUDE.md.tmpl +31 -0
  341. package/templates/vertical_ruview/README.md.tmpl +29 -0
  342. package/templates/vertical_ruview/manifest.json +86 -0
  343. package/templates/vertical_ruview/package.json.tmpl +30 -0
  344. package/templates/vertical_ruview/src/agents/indexer.ts.tmpl +7 -0
  345. package/templates/vertical_ruview/src/agents/retriever.ts.tmpl +7 -0
  346. package/templates/vertical_ruview/src/agents/reviewer.ts.tmpl +7 -0
  347. package/templates/vertical_ruview/src/init.ts.tmpl +21 -0
  348. package/templates/vertical_sales/.claude/commands/doctor.md.tmpl +12 -0
  349. package/templates/vertical_sales/.claude/commands/pipeline-report.md.tmpl +13 -0
  350. package/templates/vertical_sales/.claude/settings.json.tmpl +45 -0
  351. package/templates/vertical_sales/.claude/skills/memory-inspect/SKILL.md.tmpl +14 -0
  352. package/templates/vertical_sales/.claude/skills/qualify-lead/SKILL.md.tmpl +15 -0
  353. package/templates/vertical_sales/CLAUDE.md.tmpl +33 -0
  354. package/templates/vertical_sales/README.md.tmpl +30 -0
  355. package/templates/vertical_sales/manifest.json +96 -0
  356. package/templates/vertical_sales/package.json.tmpl +30 -0
  357. package/templates/vertical_sales/src/agents/closer.ts.tmpl +7 -0
  358. package/templates/vertical_sales/src/agents/demo-coach.ts.tmpl +7 -0
  359. package/templates/vertical_sales/src/agents/prospector.ts.tmpl +7 -0
  360. package/templates/vertical_sales/src/agents/qualifier.ts.tmpl +7 -0
  361. package/templates/vertical_sales/src/init.ts.tmpl +21 -0
  362. package/templates/vertical_support/.claude/settings.json.tmpl +25 -0
  363. package/templates/vertical_support/CLAUDE.md.tmpl +34 -0
  364. package/templates/vertical_support/README.md.tmpl +16 -0
  365. package/templates/vertical_support/kb/README.md.tmpl +23 -0
  366. package/templates/vertical_support/manifest.json +22 -0
  367. package/templates/vertical_support/package.json.tmpl +24 -0
  368. package/templates/vertical_support/src/agents/escalator.ts.tmpl +6 -0
  369. package/templates/vertical_support/src/agents/kb-searcher.ts.tmpl +6 -0
  370. package/templates/vertical_support/src/agents/responder.ts.tmpl +7 -0
  371. package/templates/vertical_support/src/agents/triager.ts.tmpl +6 -0
  372. package/templates/vertical_support/src/init.ts.tmpl +16 -0
  373. package/templates/vertical_trading/.claude/settings.json.tmpl +20 -0
  374. package/templates/vertical_trading/CLAUDE.md.tmpl +24 -0
  375. package/templates/vertical_trading/README.md.tmpl +17 -0
  376. package/templates/vertical_trading/manifest.json +22 -0
  377. package/templates/vertical_trading/package.json.tmpl +13 -0
  378. package/templates/vertical_trading/src/agents/executor.ts.tmpl +8 -0
  379. package/templates/vertical_trading/src/agents/market-watcher.ts.tmpl +7 -0
  380. package/templates/vertical_trading/src/agents/postmortem.ts.tmpl +8 -0
  381. package/templates/vertical_trading/src/agents/risk-checker.ts.tmpl +11 -0
  382. package/templates/vertical_trading/src/agents/signal-gen.ts.tmpl +8 -0
  383. package/templates/vertical_trading/src/init.ts.tmpl +20 -0
@@ -0,0 +1,18 @@
1
+ {
2
+ "permissions": {
3
+ "allow": [
4
+ "Bash(npx {{name}}*)",
5
+ "mcp__{{name}}__*"
6
+ ],
7
+ "deny": [
8
+ "Read(./.env)",
9
+ "Read(./.env.*)"
10
+ ]
11
+ },
12
+ "mcpServers": {
13
+ "{{name}}": {
14
+ "command": "npx",
15
+ "args": ["-y", "{{name}}@latest", "mcp", "start"]
16
+ }
17
+ }
18
+ }
@@ -0,0 +1,23 @@
1
+ # {{name}}
2
+
3
+ {{description}}
4
+
5
+ ## Behavioral rules
6
+
7
+ - Use the harness's MCP tools (`mcp__{{name}}__*`) for orchestration
8
+ - Memory and routing are handled by the kernel — you don't need to learn them
9
+ - Defer destructive operations to the user
10
+
11
+ ## Commands
12
+
13
+ After `{{name}} init`, the following are available:
14
+
15
+ | Command | What it does |
16
+ |---|---|
17
+ | `{{name}} doctor` | Health check the install |
18
+ | `{{name}} memory search <query>` | Semantic search across stored patterns |
19
+ | `{{name}} route <task>` | Get the routing tier recommendation |
20
+
21
+ ## Architecture
22
+
23
+ This harness uses [@ruflo/kernel](https://www.npmjs.com/package/@ruflo/kernel) for its primitives. The kernel is a Rust-compiled WASM module with a NAPI-RS native fallback — same code runs identically on every platform.
@@ -0,0 +1,20 @@
1
+ # {{name}}
2
+
3
+ {{description}}
4
+
5
+ > Generated with [`create-agent-harness`](https://github.com/ruvnet/agent-harness-generator). WASM kernel, multi-host support, witness-signed releases.
6
+
7
+ ## Install
8
+
9
+ ```bash
10
+ npm install -g {{name}}
11
+ {{name}} init
12
+ ```
13
+
14
+ ## Hosts supported
15
+
16
+ This harness ships with the **{{host}}** adapter.
17
+
18
+ ## License
19
+
20
+ MIT
@@ -0,0 +1,16 @@
1
+ {
2
+ "id": "minimal",
3
+ "description": "Minimal harness with kernel + one host adapter + an init entry point",
4
+ "files": [
5
+ { "src": "package.json.tmpl", "dst": "package.json", "render": true },
6
+ { "src": "CLAUDE.md.tmpl", "dst": "CLAUDE.md", "render": true },
7
+ { "src": "README.md.tmpl", "dst": "README.md", "render": true },
8
+ { "src": ".claude/settings.json.tmpl", "dst": ".claude/settings.json", "render": true },
9
+ { "src": "src/init.ts.tmpl", "dst": "src/init.ts", "render": true }
10
+ ],
11
+ "vars": [
12
+ { "name": "name", "prompt": "Harness name (kebab-case)", "validate": "^[a-z0-9-]+$" },
13
+ { "name": "description", "prompt": "One-line description", "default": "My AI agent harness" },
14
+ { "name": "host", "prompt": "Host adapter", "default": "claude-code", "choices": ["claude-code", "codex", "pi-dev", "hermes"] }
15
+ ]
16
+ }
@@ -0,0 +1,30 @@
1
+ {
2
+ "name": "{{name}}",
3
+ "version": "0.1.0",
4
+ "description": "{{description}}",
5
+ "type": "module",
6
+ "bin": {
7
+ "{{name}}": "./bin/{{name}}.js"
8
+ },
9
+ "files": ["bin/**", "dist/**", "templates/**", ".claude/**", "CLAUDE.md", "README.md", "LICENSE"],
10
+ "scripts": {
11
+ "build": "tsc",
12
+ "test": "vitest run --passWithNoTests",
13
+ "init": "node ./dist/init.js"
14
+ },
15
+ "dependencies": {
16
+ "@ruflo/kernel": "^0.1.0",
17
+ "@ruflo/host-{{host}}": "^0.1.0"
18
+ },
19
+ "devDependencies": {
20
+ "@types/node": "^20.0.0",
21
+ "typescript": "^5.4.0",
22
+ "vitest": "^2.0.0"
23
+ },
24
+ "engines": {
25
+ "node": ">=20.0.0"
26
+ },
27
+ "publishConfig": {
28
+ "access": "public"
29
+ }
30
+ }
@@ -0,0 +1,21 @@
1
+ // SPDX-License-Identifier: MIT
2
+ // Generated by create-agent-harness — your harness's `{{name}} init` entry.
3
+
4
+ import { loadKernel } from '@ruflo/kernel';
5
+ import adapter from '@ruflo/host-{{host}}';
6
+
7
+ const HARNESS_NAME = '{{name}}';
8
+
9
+ async function main(): Promise<number> {
10
+ const kernel = await loadKernel();
11
+ const info = kernel.kernelInfo();
12
+ console.log(`${HARNESS_NAME} — kernel ${info.version} (${kernel.backend})`);
13
+ console.log(`Host adapter: ${adapter.name}`);
14
+ console.log(`Run \`${HARNESS_NAME} doctor\` to verify the install.`);
15
+ return 0;
16
+ }
17
+
18
+ main().then(c => process.exit(c)).catch(err => {
19
+ console.error(err);
20
+ process.exit(1);
21
+ });
@@ -0,0 +1,12 @@
1
+ ---
2
+ description: "Health-check the harness: kernel load, MCP wiring, memory backend, host adapter."
3
+ ---
4
+
5
+ Run a full health check and print a PASS/FAIL table.
6
+
7
+ 1. Kernel loads and `kernelInfo().version` matches package.json.
8
+ 2. The MCP server starts and lists its tools.
9
+ 3. The memory backend is reachable.
10
+ 4. The configured host adapter is present.
11
+
12
+ Exit non-zero if any check fails.
@@ -0,0 +1,33 @@
1
+ {
2
+ "permissions": {
3
+ "allow": [
4
+ "Bash(npx {{name}}*)",
5
+ "mcp__{{name}}__*",
6
+ "mcp__ad_metrics__*"
7
+ ],
8
+ "deny": [
9
+ "Read(./.env)",
10
+ "Read(./.env.*)"
11
+ ]
12
+ },
13
+ "mcpServers": {
14
+ "{{name}}": {
15
+ "command": "npx",
16
+ "args": [
17
+ "-y",
18
+ "{{name}}@latest",
19
+ "mcp",
20
+ "start"
21
+ ]
22
+ },
23
+ "ad_metrics": {
24
+ "command": "npx",
25
+ "args": [
26
+ "-y",
27
+ "{{name}}@latest",
28
+ "mcp",
29
+ "ads"
30
+ ]
31
+ }
32
+ }
33
+ }
@@ -0,0 +1,13 @@
1
+ ---
2
+ name: media-plan
3
+ description: "Build a cross-channel media plan with budget split, creative, and KPIs."
4
+ ---
5
+
6
+ # media-plan
7
+
8
+ Build a media plan.
9
+
10
+ 1. Media-planner splits the budget across online + traditional channels with justification.
11
+ 2. Copywriter drafts a flagship execution per channel.
12
+ 3. Performance-analyst sets the KPI and the reallocation rule.
13
+ 4. Output the plan: channel, budget, creative, KPI, test reserve.
@@ -0,0 +1,30 @@
1
+ # {{name}}
2
+
3
+ {{description}}
4
+
5
+ > Advertising harness · domain: `advertising/media`. Generated with [create-agent-harness](https://github.com/ruvnet/agent-harness-generator).
6
+
7
+ ## Behavioral rules
8
+
9
+ - Use the harness's MCP tools (`mcp__{{name}}__*`) for orchestration
10
+ - Memory and routing are handled by the kernel — you don't need to learn them
11
+ - Defer destructive operations to the user
12
+
13
+ ## Agents
14
+
15
+ | Agent | Tier | Role |
16
+ |---|---|---|
17
+ | `media-planner` | opus | Allocates budget across channels. |
18
+ | `copywriter` | sonnet | Writes copy to the channel and format. |
19
+ | `performance-analyst` | sonnet | Reads results and reallocates spend. |
20
+ ## Skills
21
+
22
+ - `/media-plan` — Build a cross-channel media plan with budget split, creative, and KPIs.
23
+
24
+ ## Commands
25
+
26
+ - `doctor` — Health-check the harness: kernel load, MCP wiring, memory backend, host adapter.
27
+
28
+ ## Architecture
29
+
30
+ This harness uses [@ruflo/kernel](https://www.npmjs.com/package/@ruflo/kernel) — a Rust-compiled WASM module with a NAPI-RS native fallback — so the same code runs identically on every platform.
@@ -0,0 +1,29 @@
1
+ # {{name}}
2
+
3
+ {{description}}
4
+
5
+ > **Advertising** — Media-plan → copy → performance, spanning digital (PPC/social) and traditional (print/OOH/radio).
6
+ >
7
+ > Generated with [`create-agent-harness`](https://github.com/ruvnet/agent-harness-generator). WASM kernel, multi-host support, witness-signed releases.
8
+
9
+ ## Install
10
+
11
+ ```bash
12
+ npm install -g {{name}}
13
+ {{name}} init
14
+ {{name}} doctor
15
+ ```
16
+
17
+ ## Agents
18
+
19
+ | Agent | Role |
20
+ |---|---|
21
+ | `media-planner` | Allocates budget across channels. |
22
+ | `copywriter` | Writes copy to the channel and format. |
23
+ | `performance-analyst` | Reads results and reallocates spend. |
24
+
25
+ This harness ships with the **{{host}}** adapter.
26
+
27
+ ## License
28
+
29
+ MIT
@@ -0,0 +1,81 @@
1
+ {
2
+ "id": "vertical:advertising",
3
+ "description": "An ad shop — media-planner, copywriter, and performance-analyst across online and traditional.",
4
+ "domain": "advertising/media",
5
+ "category": "Growth",
6
+ "files": [
7
+ {
8
+ "src": "package.json.tmpl",
9
+ "dst": "package.json",
10
+ "render": true
11
+ },
12
+ {
13
+ "src": "CLAUDE.md.tmpl",
14
+ "dst": "CLAUDE.md",
15
+ "render": true
16
+ },
17
+ {
18
+ "src": "README.md.tmpl",
19
+ "dst": "README.md",
20
+ "render": true
21
+ },
22
+ {
23
+ "src": ".claude/settings.json.tmpl",
24
+ "dst": ".claude/settings.json",
25
+ "render": true
26
+ },
27
+ {
28
+ "src": "src/init.ts.tmpl",
29
+ "dst": "src/init.ts",
30
+ "render": true
31
+ },
32
+ {
33
+ "src": "src/agents/media-planner.ts.tmpl",
34
+ "dst": "src/agents/media-planner.ts",
35
+ "render": true
36
+ },
37
+ {
38
+ "src": "src/agents/copywriter.ts.tmpl",
39
+ "dst": "src/agents/copywriter.ts",
40
+ "render": true
41
+ },
42
+ {
43
+ "src": "src/agents/performance-analyst.ts.tmpl",
44
+ "dst": "src/agents/performance-analyst.ts",
45
+ "render": true
46
+ },
47
+ {
48
+ "src": ".claude/skills/media-plan/SKILL.md.tmpl",
49
+ "dst": ".claude/skills/media-plan/SKILL.md",
50
+ "render": true
51
+ },
52
+ {
53
+ "src": ".claude/commands/doctor.md.tmpl",
54
+ "dst": ".claude/commands/doctor.md",
55
+ "render": true
56
+ }
57
+ ],
58
+ "vars": [
59
+ {
60
+ "name": "name",
61
+ "prompt": "Harness name (kebab-case)",
62
+ "validate": "^[a-z0-9-]+$"
63
+ },
64
+ {
65
+ "name": "description",
66
+ "prompt": "One-line description",
67
+ "default": "Plan media, write copy, and optimise ad spend"
68
+ },
69
+ {
70
+ "name": "host",
71
+ "prompt": "Host adapter",
72
+ "default": "claude-code",
73
+ "choices": [
74
+ "claude-code",
75
+ "codex",
76
+ "pi-dev",
77
+ "hermes"
78
+ ]
79
+ }
80
+ ]
81
+ }
@@ -0,0 +1,30 @@
1
+ {
2
+ "name": "{{name}}",
3
+ "version": "0.1.0",
4
+ "description": "{{description}}",
5
+ "type": "module",
6
+ "bin": {
7
+ "{{name}}": "./bin/{{name}}.js"
8
+ },
9
+ "files": ["bin/**", "dist/**", ".claude/**", "CLAUDE.md", "README.md", "LICENSE"],
10
+ "scripts": {
11
+ "build": "tsc",
12
+ "test": "vitest run --passWithNoTests",
13
+ "init": "node ./dist/init.js"
14
+ },
15
+ "dependencies": {
16
+ "@ruflo/kernel": "^0.1.0",
17
+ "@ruflo/host-{{host}}": "^0.1.0"
18
+ },
19
+ "devDependencies": {
20
+ "@types/node": "^20.0.0",
21
+ "typescript": "^5.4.0",
22
+ "vitest": "^2.0.0"
23
+ },
24
+ "engines": {
25
+ "node": ">=20.0.0"
26
+ },
27
+ "publishConfig": {
28
+ "access": "public"
29
+ }
30
+ }
@@ -0,0 +1,7 @@
1
+ // SPDX-License-Identifier: MIT
2
+ // Copywriter agent — Writes copy to the channel and format.
3
+
4
+ export const SYSTEM_PROMPT = `You write ad copy fit to the medium: a 30-character headline for search, a 6-word billboard, a 15-second radio read, a scroll-stopping social hook. One idea per execution, a clear call to action, and brand-safe. The constraint of the format is the brief — respect it. You operate inside the {{name}} harness; defer destructive actions to the user.`;
5
+
6
+ export const NAME = 'copywriter';
7
+ export const TIER = 'sonnet' as const;
@@ -0,0 +1,7 @@
1
+ // SPDX-License-Identifier: MIT
2
+ // Media Planner agent — Allocates budget across channels.
3
+
4
+ export const SYSTEM_PROMPT = `You plan media across online (search, social, display, video) and traditional (print, out-of-home, radio, TV). Allocate the budget by where the target audience's attention actually is and what each channel costs per useful reach. Justify every line of the split; reserve a test budget for the channel you are least sure about. You operate inside the {{name}} harness; defer destructive actions to the user.`;
5
+
6
+ export const NAME = 'media-planner';
7
+ export const TIER = 'opus' as const;
@@ -0,0 +1,7 @@
1
+ // SPDX-License-Identifier: MIT
2
+ // Performance Analyst agent — Reads results and reallocates spend.
3
+
4
+ export const SYSTEM_PROMPT = `You read campaign performance from the ad-metrics MCP and reallocate: cut what is not converting, scale what is, and attribute carefully across online and offline touchpoints. Report CPA, ROAS, and reach. Recommend the next budget move with the number that justifies it. You operate inside the {{name}} harness; defer destructive actions to the user.`;
5
+
6
+ export const NAME = 'performance-analyst';
7
+ export const TIER = 'sonnet' as const;
@@ -0,0 +1,21 @@
1
+ // SPDX-License-Identifier: MIT
2
+ // Generated by create-agent-harness — your harness's `{{name}} init` entry.
3
+
4
+ import { loadKernel } from '@ruflo/kernel';
5
+ import adapter from '@ruflo/host-{{host}}';
6
+
7
+ const HARNESS_NAME = '{{name}}';
8
+
9
+ async function main(): Promise<number> {
10
+ const kernel = await loadKernel();
11
+ const info = kernel.kernelInfo();
12
+ console.log(`${HARNESS_NAME} — kernel ${info.version} (${kernel.backend})`);
13
+ console.log(`Host adapter: ${adapter.name}`);
14
+ console.log(`Run \`${HARNESS_NAME} doctor\` to verify the install.`);
15
+ return 0;
16
+ }
17
+
18
+ main().then(c => process.exit(c)).catch(err => {
19
+ console.error(err);
20
+ process.exit(1);
21
+ });
@@ -0,0 +1,12 @@
1
+ ---
2
+ description: "Health-check the harness: kernel load, MCP wiring, memory backend, host adapter."
3
+ ---
4
+
5
+ Run a full health check and print a PASS/FAIL table.
6
+
7
+ 1. Kernel loads and `kernelInfo().version` matches package.json.
8
+ 2. The MCP server starts and lists its tools.
9
+ 3. The memory backend is reachable.
10
+ 4. The configured host adapter is present.
11
+
12
+ Exit non-zero if any check fails.
@@ -0,0 +1,33 @@
1
+ {
2
+ "permissions": {
3
+ "allow": [
4
+ "Bash(npx {{name}}*)",
5
+ "mcp__{{name}}__*",
6
+ "mcp__swarm_bus__*"
7
+ ],
8
+ "deny": [
9
+ "Read(./.env)",
10
+ "Read(./.env.*)"
11
+ ]
12
+ },
13
+ "mcpServers": {
14
+ "{{name}}": {
15
+ "command": "npx",
16
+ "args": [
17
+ "-y",
18
+ "{{name}}@latest",
19
+ "mcp",
20
+ "start"
21
+ ]
22
+ },
23
+ "swarm_bus": {
24
+ "command": "npx",
25
+ "args": [
26
+ "-y",
27
+ "{{name}}@latest",
28
+ "mcp",
29
+ "swarm"
30
+ ]
31
+ }
32
+ }
33
+ }
@@ -0,0 +1,14 @@
1
+ ---
2
+ name: memory-inspect
3
+ description: Search and inspect the harness memory namespace (HNSW + emergent-time decay).
4
+ ---
5
+
6
+ # memory-inspect
7
+
8
+ Inspect what the harness has learned.
9
+
10
+ - `search <query>` — semantic nearest-neighbour over the namespace
11
+ - `list` — recent patterns with decay weight
12
+ - `forget <id>` — evict a pattern
13
+
14
+ Use this before planning so the harness reuses prior trajectories instead of starting cold.
@@ -0,0 +1,14 @@
1
+ ---
2
+ name: run-swarm
3
+ description: Decompose a goal and run the orchestrator→planner→worker→critic loop to completion.
4
+ ---
5
+
6
+ # run-swarm
7
+
8
+ Run a swarm against a goal.
9
+
10
+ 1. Planner builds the dependency-aware plan.
11
+ 2. Orchestrator dispatches tasks to workers over the bus.
12
+ 3. Workers execute and write results to shared memory.
13
+ 4. Critic gates each output; orchestrator replans on failure.
14
+ 5. Stop when the goal state is satisfied; report the trajectory.
@@ -0,0 +1,32 @@
1
+ # {{name}}
2
+
3
+ {{description}}
4
+
5
+ > Agentics harness · domain: `agentics/orchestration`. Generated with [create-agent-harness](https://github.com/ruvnet/agent-harness-generator).
6
+
7
+ ## Behavioral rules
8
+
9
+ - Use the harness's MCP tools (`mcp__{{name}}__*`) for orchestration
10
+ - Memory and routing are handled by the kernel — you don't need to learn them
11
+ - Defer destructive operations to the user
12
+
13
+ ## Agents
14
+
15
+ | Agent | Tier | Role |
16
+ |---|---|---|
17
+ | `orchestrator` | opus | Routes work and owns the goal state. |
18
+ | `planner` | opus | Builds the dependency-aware plan. |
19
+ | `worker` | sonnet | Executes one task and reports. |
20
+ | `critic` | opus | Reviews outputs before they land. |
21
+ ## Skills
22
+
23
+ - `/memory-inspect` — Search and inspect the harness memory namespace (HNSW + emergent-time decay).
24
+ - `/run-swarm` — Decompose a goal and run the orchestrator→planner→worker→critic loop to completion.
25
+
26
+ ## Commands
27
+
28
+ - `doctor` — Health-check the harness: kernel load, MCP wiring, memory backend, host adapter.
29
+
30
+ ## Architecture
31
+
32
+ This harness uses [@ruflo/kernel](https://www.npmjs.com/package/@ruflo/kernel) — a Rust-compiled WASM module with a NAPI-RS native fallback — so the same code runs identically on every platform.
@@ -0,0 +1,30 @@
1
+ # {{name}}
2
+
3
+ {{description}}
4
+
5
+ > **Agentics** — Orchestrator → planner → workers → critic, with a swarm-bus MCP and shared memory.
6
+ >
7
+ > Generated with [`create-agent-harness`](https://github.com/ruvnet/agent-harness-generator). WASM kernel, multi-host support, witness-signed releases.
8
+
9
+ ## Install
10
+
11
+ ```bash
12
+ npm install -g {{name}}
13
+ {{name}} init
14
+ {{name}} doctor
15
+ ```
16
+
17
+ ## Agents
18
+
19
+ | Agent | Role |
20
+ |---|---|
21
+ | `orchestrator` | Routes work and owns the goal state. |
22
+ | `planner` | Builds the dependency-aware plan. |
23
+ | `worker` | Executes one task and reports. |
24
+ | `critic` | Reviews outputs before they land. |
25
+
26
+ This harness ships with the **{{host}}** adapter.
27
+
28
+ ## License
29
+
30
+ MIT
@@ -0,0 +1,91 @@
1
+ {
2
+ "id": "vertical:agentics",
3
+ "description": "A self-coordinating swarm — orchestrator, planner, worker, and critic over shared memory.",
4
+ "domain": "agentics/orchestration",
5
+ "category": "Frontier",
6
+ "files": [
7
+ {
8
+ "src": "package.json.tmpl",
9
+ "dst": "package.json",
10
+ "render": true
11
+ },
12
+ {
13
+ "src": "CLAUDE.md.tmpl",
14
+ "dst": "CLAUDE.md",
15
+ "render": true
16
+ },
17
+ {
18
+ "src": "README.md.tmpl",
19
+ "dst": "README.md",
20
+ "render": true
21
+ },
22
+ {
23
+ "src": ".claude/settings.json.tmpl",
24
+ "dst": ".claude/settings.json",
25
+ "render": true
26
+ },
27
+ {
28
+ "src": "src/init.ts.tmpl",
29
+ "dst": "src/init.ts",
30
+ "render": true
31
+ },
32
+ {
33
+ "src": "src/agents/orchestrator.ts.tmpl",
34
+ "dst": "src/agents/orchestrator.ts",
35
+ "render": true
36
+ },
37
+ {
38
+ "src": "src/agents/planner.ts.tmpl",
39
+ "dst": "src/agents/planner.ts",
40
+ "render": true
41
+ },
42
+ {
43
+ "src": "src/agents/worker.ts.tmpl",
44
+ "dst": "src/agents/worker.ts",
45
+ "render": true
46
+ },
47
+ {
48
+ "src": "src/agents/critic.ts.tmpl",
49
+ "dst": "src/agents/critic.ts",
50
+ "render": true
51
+ },
52
+ {
53
+ "src": ".claude/skills/memory-inspect/SKILL.md.tmpl",
54
+ "dst": ".claude/skills/memory-inspect/SKILL.md",
55
+ "render": true
56
+ },
57
+ {
58
+ "src": ".claude/skills/run-swarm/SKILL.md.tmpl",
59
+ "dst": ".claude/skills/run-swarm/SKILL.md",
60
+ "render": true
61
+ },
62
+ {
63
+ "src": ".claude/commands/doctor.md.tmpl",
64
+ "dst": ".claude/commands/doctor.md",
65
+ "render": true
66
+ }
67
+ ],
68
+ "vars": [
69
+ {
70
+ "name": "name",
71
+ "prompt": "Harness name (kebab-case)",
72
+ "validate": "^[a-z0-9-]+$"
73
+ },
74
+ {
75
+ "name": "description",
76
+ "prompt": "One-line description",
77
+ "default": "Orchestrate a multi-agent swarm over shared memory"
78
+ },
79
+ {
80
+ "name": "host",
81
+ "prompt": "Host adapter",
82
+ "default": "claude-code",
83
+ "choices": [
84
+ "claude-code",
85
+ "codex",
86
+ "pi-dev",
87
+ "hermes"
88
+ ]
89
+ }
90
+ ]
91
+ }