metaharness 0.3.2 → 0.4.1

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 (348) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +126 -99
  3. package/dist/completions-cmd.js +94 -94
  4. package/dist/index.js +74 -74
  5. package/dist/meta-proxy.d.ts +21 -1
  6. package/dist/meta-proxy.d.ts.map +1 -1
  7. package/dist/meta-proxy.js +139 -5
  8. package/dist/meta-proxy.js.map +1 -1
  9. package/dist/with-wasm.js +43 -43
  10. package/genomes/README.md +23 -23
  11. package/genomes/genome-promoted-cand6-edit-by-midpoint.json +26 -26
  12. package/package.json +126 -126
  13. package/templates/catalog.def.mjs +542 -542
  14. package/templates/catalog.json +1274 -1274
  15. package/templates/minimal/.claude/settings.json.tmpl +18 -18
  16. package/templates/minimal/.claude-plugin/plugin.json.tmpl +13 -13
  17. package/templates/minimal/CLAUDE.md.tmpl +26 -26
  18. package/templates/minimal/README.md.tmpl +20 -20
  19. package/templates/minimal/__tests__/smoke.test.ts.tmpl +37 -37
  20. package/templates/minimal/bin/cli.js.tmpl +100 -100
  21. package/templates/minimal/manifest.json +20 -20
  22. package/templates/minimal/package.json.tmpl +31 -31
  23. package/templates/minimal/src/init.ts.tmpl +21 -21
  24. package/templates/minimal/tsconfig.json.tmpl +19 -19
  25. package/templates/minimal/vitest.config.ts.tmpl +23 -23
  26. package/templates/vertical_advertising/.claude/commands/doctor.md.tmpl +12 -12
  27. package/templates/vertical_advertising/.claude/settings.json.tmpl +33 -33
  28. package/templates/vertical_advertising/.claude/skills/media-plan/SKILL.md.tmpl +13 -13
  29. package/templates/vertical_advertising/.claude-plugin/plugin.json.tmpl +23 -23
  30. package/templates/vertical_advertising/CLAUDE.md.tmpl +30 -30
  31. package/templates/vertical_advertising/README.md.tmpl +29 -29
  32. package/templates/vertical_advertising/__tests__/smoke.test.ts.tmpl +37 -37
  33. package/templates/vertical_advertising/bin/cli.js.tmpl +100 -100
  34. package/templates/vertical_advertising/manifest.json +101 -101
  35. package/templates/vertical_advertising/package.json.tmpl +30 -30
  36. package/templates/vertical_advertising/src/agents/copywriter.ts.tmpl +7 -7
  37. package/templates/vertical_advertising/src/agents/media-planner.ts.tmpl +7 -7
  38. package/templates/vertical_advertising/src/agents/performance-analyst.ts.tmpl +7 -7
  39. package/templates/vertical_advertising/src/init.ts.tmpl +21 -21
  40. package/templates/vertical_advertising/tsconfig.json.tmpl +19 -19
  41. package/templates/vertical_advertising/vitest.config.ts.tmpl +23 -23
  42. package/templates/vertical_agentics/.claude/commands/doctor.md.tmpl +12 -12
  43. package/templates/vertical_agentics/.claude/settings.json.tmpl +33 -33
  44. package/templates/vertical_agentics/.claude/skills/memory-inspect/SKILL.md.tmpl +14 -14
  45. package/templates/vertical_agentics/.claude/skills/run-swarm/SKILL.md.tmpl +14 -14
  46. package/templates/vertical_agentics/.claude-plugin/plugin.json.tmpl +23 -23
  47. package/templates/vertical_agentics/CLAUDE.md.tmpl +32 -32
  48. package/templates/vertical_agentics/README.md.tmpl +30 -30
  49. package/templates/vertical_agentics/__tests__/smoke.test.ts.tmpl +37 -37
  50. package/templates/vertical_agentics/bin/cli.js.tmpl +100 -100
  51. package/templates/vertical_agentics/manifest.json +111 -111
  52. package/templates/vertical_agentics/package.json.tmpl +30 -30
  53. package/templates/vertical_agentics/src/agents/critic.ts.tmpl +7 -7
  54. package/templates/vertical_agentics/src/agents/orchestrator.ts.tmpl +7 -7
  55. package/templates/vertical_agentics/src/agents/planner.ts.tmpl +7 -7
  56. package/templates/vertical_agentics/src/agents/worker.ts.tmpl +7 -7
  57. package/templates/vertical_agentics/src/init.ts.tmpl +21 -21
  58. package/templates/vertical_agentics/tsconfig.json.tmpl +19 -19
  59. package/templates/vertical_agentics/vitest.config.ts.tmpl +23 -23
  60. package/templates/vertical_ai/.claude/commands/doctor.md.tmpl +12 -12
  61. package/templates/vertical_ai/.claude/settings.json.tmpl +35 -35
  62. package/templates/vertical_ai/.claude/skills/eval-report/SKILL.md.tmpl +13 -13
  63. package/templates/vertical_ai/.claude-plugin/plugin.json.tmpl +23 -23
  64. package/templates/vertical_ai/CLAUDE.md.tmpl +31 -31
  65. package/templates/vertical_ai/README.md.tmpl +30 -30
  66. package/templates/vertical_ai/__tests__/smoke.test.ts.tmpl +37 -37
  67. package/templates/vertical_ai/bin/cli.js.tmpl +100 -100
  68. package/templates/vertical_ai/manifest.json +106 -106
  69. package/templates/vertical_ai/package.json.tmpl +30 -30
  70. package/templates/vertical_ai/src/agents/data-curator.ts.tmpl +7 -7
  71. package/templates/vertical_ai/src/agents/deployer.ts.tmpl +7 -7
  72. package/templates/vertical_ai/src/agents/evaluator.ts.tmpl +7 -7
  73. package/templates/vertical_ai/src/agents/trainer.ts.tmpl +7 -7
  74. package/templates/vertical_ai/src/init.ts.tmpl +21 -21
  75. package/templates/vertical_ai/tsconfig.json.tmpl +19 -19
  76. package/templates/vertical_ai/vitest.config.ts.tmpl +23 -23
  77. package/templates/vertical_business/.claude/commands/doctor.md.tmpl +12 -12
  78. package/templates/vertical_business/.claude/settings.json.tmpl +33 -33
  79. package/templates/vertical_business/.claude/skills/quarterly-plan/SKILL.md.tmpl +13 -13
  80. package/templates/vertical_business/.claude-plugin/plugin.json.tmpl +23 -23
  81. package/templates/vertical_business/CLAUDE.md.tmpl +30 -30
  82. package/templates/vertical_business/README.md.tmpl +29 -29
  83. package/templates/vertical_business/__tests__/smoke.test.ts.tmpl +37 -37
  84. package/templates/vertical_business/bin/cli.js.tmpl +100 -100
  85. package/templates/vertical_business/manifest.json +101 -101
  86. package/templates/vertical_business/package.json.tmpl +30 -30
  87. package/templates/vertical_business/src/agents/analyst.ts.tmpl +7 -7
  88. package/templates/vertical_business/src/agents/ops-coordinator.ts.tmpl +7 -7
  89. package/templates/vertical_business/src/agents/strategist.ts.tmpl +7 -7
  90. package/templates/vertical_business/src/init.ts.tmpl +21 -21
  91. package/templates/vertical_business/tsconfig.json.tmpl +19 -19
  92. package/templates/vertical_business/vitest.config.ts.tmpl +23 -23
  93. package/templates/vertical_coding/.claude/commands/doctor.md.tmpl +12 -12
  94. package/templates/vertical_coding/.claude/commands/review-diff.md.tmpl +10 -10
  95. package/templates/vertical_coding/.claude/settings.json.tmpl +40 -40
  96. package/templates/vertical_coding/.claude/skills/plan-change/SKILL.md.tmpl +15 -15
  97. package/templates/vertical_coding/.claude-plugin/plugin.json.tmpl +23 -23
  98. package/templates/vertical_coding/CLAUDE.md.tmpl +32 -32
  99. package/templates/vertical_coding/README.md.tmpl +30 -30
  100. package/templates/vertical_coding/__tests__/smoke.test.ts.tmpl +37 -37
  101. package/templates/vertical_coding/bin/cli.js.tmpl +100 -100
  102. package/templates/vertical_coding/manifest.json +111 -111
  103. package/templates/vertical_coding/package.json.tmpl +30 -30
  104. package/templates/vertical_coding/src/agents/architect.ts.tmpl +7 -7
  105. package/templates/vertical_coding/src/agents/implementer.ts.tmpl +7 -7
  106. package/templates/vertical_coding/src/agents/reviewer.ts.tmpl +7 -7
  107. package/templates/vertical_coding/src/agents/test-writer.ts.tmpl +7 -7
  108. package/templates/vertical_coding/src/init.ts.tmpl +21 -21
  109. package/templates/vertical_coding/tsconfig.json.tmpl +19 -19
  110. package/templates/vertical_coding/vitest.config.ts.tmpl +23 -23
  111. package/templates/vertical_crm/.claude/commands/doctor.md.tmpl +12 -12
  112. package/templates/vertical_crm/.claude/settings.json.tmpl +33 -33
  113. package/templates/vertical_crm/.claude/skills/memory-inspect/SKILL.md.tmpl +14 -14
  114. package/templates/vertical_crm/.claude-plugin/plugin.json.tmpl +23 -23
  115. package/templates/vertical_crm/CLAUDE.md.tmpl +30 -30
  116. package/templates/vertical_crm/README.md.tmpl +29 -29
  117. package/templates/vertical_crm/__tests__/smoke.test.ts.tmpl +37 -37
  118. package/templates/vertical_crm/bin/cli.js.tmpl +100 -100
  119. package/templates/vertical_crm/manifest.json +101 -101
  120. package/templates/vertical_crm/package.json.tmpl +30 -30
  121. package/templates/vertical_crm/src/agents/account-manager.ts.tmpl +7 -7
  122. package/templates/vertical_crm/src/agents/churn-watcher.ts.tmpl +7 -7
  123. package/templates/vertical_crm/src/agents/lead-qualifier.ts.tmpl +7 -7
  124. package/templates/vertical_crm/src/init.ts.tmpl +21 -21
  125. package/templates/vertical_crm/tsconfig.json.tmpl +19 -19
  126. package/templates/vertical_crm/vitest.config.ts.tmpl +23 -23
  127. package/templates/vertical_devops/.claude/settings.json.tmpl +36 -36
  128. package/templates/vertical_devops/.claude-plugin/plugin.json.tmpl +23 -23
  129. package/templates/vertical_devops/CLAUDE.md.tmpl +34 -34
  130. package/templates/vertical_devops/README.md.tmpl +27 -27
  131. package/templates/vertical_devops/__tests__/smoke.test.ts.tmpl +37 -37
  132. package/templates/vertical_devops/bin/cli.js.tmpl +100 -100
  133. package/templates/vertical_devops/manifest.json +100 -100
  134. package/templates/vertical_devops/package.json.tmpl +27 -27
  135. package/templates/vertical_devops/runbooks/README.md.tmpl +32 -32
  136. package/templates/vertical_devops/src/agents/escalator.ts.tmpl +19 -19
  137. package/templates/vertical_devops/src/agents/postmortem.ts.tmpl +23 -23
  138. package/templates/vertical_devops/src/agents/responder.ts.tmpl +14 -14
  139. package/templates/vertical_devops/src/agents/runbook-runner.ts.tmpl +17 -17
  140. package/templates/vertical_devops/src/init.ts.tmpl +23 -23
  141. package/templates/vertical_devops/tsconfig.json.tmpl +19 -19
  142. package/templates/vertical_devops/vitest.config.ts.tmpl +23 -23
  143. package/templates/vertical_education/.claude/commands/doctor.md.tmpl +12 -12
  144. package/templates/vertical_education/.claude/commands/mastery-report.md.tmpl +12 -12
  145. package/templates/vertical_education/.claude/settings.json.tmpl +45 -45
  146. package/templates/vertical_education/.claude/skills/memory-inspect/SKILL.md.tmpl +14 -14
  147. package/templates/vertical_education/.claude/skills/teach-next/SKILL.md.tmpl +16 -16
  148. package/templates/vertical_education/.claude-plugin/plugin.json.tmpl +23 -23
  149. package/templates/vertical_education/CLAUDE.md.tmpl +33 -33
  150. package/templates/vertical_education/README.md.tmpl +30 -30
  151. package/templates/vertical_education/__tests__/smoke.test.ts.tmpl +37 -37
  152. package/templates/vertical_education/bin/cli.js.tmpl +100 -100
  153. package/templates/vertical_education/manifest.json +116 -116
  154. package/templates/vertical_education/package.json.tmpl +30 -30
  155. package/templates/vertical_education/src/agents/explainer.ts.tmpl +7 -7
  156. package/templates/vertical_education/src/agents/grader.ts.tmpl +7 -7
  157. package/templates/vertical_education/src/agents/quiz-master.ts.tmpl +7 -7
  158. package/templates/vertical_education/src/agents/tutor.ts.tmpl +7 -7
  159. package/templates/vertical_education/src/init.ts.tmpl +21 -21
  160. package/templates/vertical_education/tsconfig.json.tmpl +19 -19
  161. package/templates/vertical_education/vitest.config.ts.tmpl +23 -23
  162. package/templates/vertical_exotic/.claude/commands/doctor.md.tmpl +12 -12
  163. package/templates/vertical_exotic/.claude/settings.json.tmpl +44 -44
  164. package/templates/vertical_exotic/.claude/skills/evolve/SKILL.md.tmpl +14 -14
  165. package/templates/vertical_exotic/.claude/skills/memory-inspect/SKILL.md.tmpl +14 -14
  166. package/templates/vertical_exotic/.claude-plugin/plugin.json.tmpl +23 -23
  167. package/templates/vertical_exotic/CLAUDE.md.tmpl +31 -31
  168. package/templates/vertical_exotic/README.md.tmpl +29 -29
  169. package/templates/vertical_exotic/__tests__/smoke.test.ts.tmpl +37 -37
  170. package/templates/vertical_exotic/bin/cli.js.tmpl +100 -100
  171. package/templates/vertical_exotic/manifest.json +106 -106
  172. package/templates/vertical_exotic/package.json.tmpl +30 -30
  173. package/templates/vertical_exotic/src/agents/experimenter.ts.tmpl +7 -7
  174. package/templates/vertical_exotic/src/agents/federator.ts.tmpl +7 -7
  175. package/templates/vertical_exotic/src/agents/hypothesizer.ts.tmpl +7 -7
  176. package/templates/vertical_exotic/src/init.ts.tmpl +21 -21
  177. package/templates/vertical_exotic/tsconfig.json.tmpl +19 -19
  178. package/templates/vertical_exotic/vitest.config.ts.tmpl +23 -23
  179. package/templates/vertical_gaming/.claude/commands/design-doc-diff.md.tmpl +13 -13
  180. package/templates/vertical_gaming/.claude/commands/doctor.md.tmpl +12 -12
  181. package/templates/vertical_gaming/.claude/settings.json.tmpl +45 -45
  182. package/templates/vertical_gaming/.claude/skills/memory-inspect/SKILL.md.tmpl +14 -14
  183. package/templates/vertical_gaming/.claude/skills/playtest-recap/SKILL.md.tmpl +16 -16
  184. package/templates/vertical_gaming/.claude-plugin/plugin.json.tmpl +23 -23
  185. package/templates/vertical_gaming/CLAUDE.md.tmpl +33 -33
  186. package/templates/vertical_gaming/README.md.tmpl +30 -30
  187. package/templates/vertical_gaming/__tests__/smoke.test.ts.tmpl +37 -37
  188. package/templates/vertical_gaming/bin/cli.js.tmpl +100 -100
  189. package/templates/vertical_gaming/manifest.json +116 -116
  190. package/templates/vertical_gaming/package.json.tmpl +30 -30
  191. package/templates/vertical_gaming/src/agents/balance-critic.ts.tmpl +7 -7
  192. package/templates/vertical_gaming/src/agents/economy-modeler.ts.tmpl +7 -7
  193. package/templates/vertical_gaming/src/agents/narrative-keeper.ts.tmpl +7 -7
  194. package/templates/vertical_gaming/src/agents/playtest-reader.ts.tmpl +7 -7
  195. package/templates/vertical_gaming/src/init.ts.tmpl +21 -21
  196. package/templates/vertical_gaming/tsconfig.json.tmpl +19 -19
  197. package/templates/vertical_gaming/vitest.config.ts.tmpl +23 -23
  198. package/templates/vertical_health/.claude/commands/doctor.md.tmpl +12 -12
  199. package/templates/vertical_health/.claude/settings.json.tmpl +33 -33
  200. package/templates/vertical_health/.claude/skills/wellness-intake/SKILL.md.tmpl +15 -15
  201. package/templates/vertical_health/.claude-plugin/plugin.json.tmpl +23 -23
  202. package/templates/vertical_health/CLAUDE.md.tmpl +30 -30
  203. package/templates/vertical_health/README.md.tmpl +29 -29
  204. package/templates/vertical_health/__tests__/smoke.test.ts.tmpl +37 -37
  205. package/templates/vertical_health/bin/cli.js.tmpl +100 -100
  206. package/templates/vertical_health/manifest.json +101 -101
  207. package/templates/vertical_health/package.json.tmpl +30 -30
  208. package/templates/vertical_health/src/agents/care-coordinator.ts.tmpl +7 -7
  209. package/templates/vertical_health/src/agents/intake.ts.tmpl +7 -7
  210. package/templates/vertical_health/src/agents/triage.ts.tmpl +7 -7
  211. package/templates/vertical_health/src/init.ts.tmpl +21 -21
  212. package/templates/vertical_health/tsconfig.json.tmpl +19 -19
  213. package/templates/vertical_health/vitest.config.ts.tmpl +23 -23
  214. package/templates/vertical_legal/.claude/settings.json.tmpl +10 -10
  215. package/templates/vertical_legal/.claude-plugin/plugin.json.tmpl +23 -23
  216. package/templates/vertical_legal/CLAUDE.md.tmpl +24 -24
  217. package/templates/vertical_legal/README.md.tmpl +21 -21
  218. package/templates/vertical_legal/__tests__/smoke.test.ts.tmpl +37 -37
  219. package/templates/vertical_legal/bin/cli.js.tmpl +100 -100
  220. package/templates/vertical_legal/manifest.json +90 -90
  221. package/templates/vertical_legal/package.json.tmpl +14 -14
  222. package/templates/vertical_legal/src/agents/citation-checker.ts.tmpl +7 -7
  223. package/templates/vertical_legal/src/agents/redline.ts.tmpl +7 -7
  224. package/templates/vertical_legal/src/agents/risk-rater.ts.tmpl +8 -8
  225. package/templates/vertical_legal/src/init.ts.tmpl +13 -13
  226. package/templates/vertical_legal/tsconfig.json.tmpl +19 -19
  227. package/templates/vertical_legal/vitest.config.ts.tmpl +23 -23
  228. package/templates/vertical_marketing/.claude/commands/doctor.md.tmpl +12 -12
  229. package/templates/vertical_marketing/.claude/settings.json.tmpl +33 -33
  230. package/templates/vertical_marketing/.claude/skills/campaign-brief/SKILL.md.tmpl +13 -13
  231. package/templates/vertical_marketing/.claude-plugin/plugin.json.tmpl +23 -23
  232. package/templates/vertical_marketing/CLAUDE.md.tmpl +30 -30
  233. package/templates/vertical_marketing/README.md.tmpl +29 -29
  234. package/templates/vertical_marketing/__tests__/smoke.test.ts.tmpl +37 -37
  235. package/templates/vertical_marketing/bin/cli.js.tmpl +100 -100
  236. package/templates/vertical_marketing/manifest.json +101 -101
  237. package/templates/vertical_marketing/package.json.tmpl +30 -30
  238. package/templates/vertical_marketing/src/agents/content-creator.ts.tmpl +7 -7
  239. package/templates/vertical_marketing/src/agents/seo-analyst.ts.tmpl +7 -7
  240. package/templates/vertical_marketing/src/agents/strategist.ts.tmpl +7 -7
  241. package/templates/vertical_marketing/src/init.ts.tmpl +21 -21
  242. package/templates/vertical_marketing/tsconfig.json.tmpl +19 -19
  243. package/templates/vertical_marketing/vitest.config.ts.tmpl +23 -23
  244. package/templates/vertical_repo-maintainer/.claude/commands/doctor.md.tmpl +12 -12
  245. package/templates/vertical_repo-maintainer/.claude/commands/release-check.md.tmpl +13 -13
  246. package/templates/vertical_repo-maintainer/.claude/commands/repo-triage.md.tmpl +16 -16
  247. package/templates/vertical_repo-maintainer/.claude/settings.json.tmpl +44 -44
  248. package/templates/vertical_repo-maintainer/.claude/skills/memory-inspect/SKILL.md.tmpl +14 -14
  249. package/templates/vertical_repo-maintainer/.claude/skills/plan-change/SKILL.md.tmpl +15 -15
  250. package/templates/vertical_repo-maintainer/.claude-plugin/plugin.json.tmpl +23 -23
  251. package/templates/vertical_repo-maintainer/CLAUDE.md.tmpl +34 -34
  252. package/templates/vertical_repo-maintainer/README.md.tmpl +30 -30
  253. package/templates/vertical_repo-maintainer/__tests__/smoke.test.ts.tmpl +37 -37
  254. package/templates/vertical_repo-maintainer/bin/cli.js.tmpl +100 -100
  255. package/templates/vertical_repo-maintainer/manifest.json +121 -121
  256. package/templates/vertical_repo-maintainer/package.json.tmpl +30 -30
  257. package/templates/vertical_repo-maintainer/src/agents/benchmarker.ts.tmpl +7 -7
  258. package/templates/vertical_repo-maintainer/src/agents/maintainer.ts.tmpl +7 -7
  259. package/templates/vertical_repo-maintainer/src/agents/release.ts.tmpl +7 -7
  260. package/templates/vertical_repo-maintainer/src/agents/security.ts.tmpl +7 -7
  261. package/templates/vertical_repo-maintainer/src/init.ts.tmpl +21 -21
  262. package/templates/vertical_repo-maintainer/tsconfig.json.tmpl +19 -19
  263. package/templates/vertical_repo-maintainer/vitest.config.ts.tmpl +23 -23
  264. package/templates/vertical_research/.claude/settings.json.tmpl +9 -9
  265. package/templates/vertical_research/.claude-plugin/plugin.json.tmpl +23 -23
  266. package/templates/vertical_research/CLAUDE.md.tmpl +33 -33
  267. package/templates/vertical_research/README.md.tmpl +17 -17
  268. package/templates/vertical_research/__tests__/smoke.test.ts.tmpl +37 -37
  269. package/templates/vertical_research/bin/cli.js.tmpl +100 -100
  270. package/templates/vertical_research/manifest.json +105 -105
  271. package/templates/vertical_research/package.json.tmpl +14 -14
  272. package/templates/vertical_research/src/agents/citer.ts.tmpl +8 -8
  273. package/templates/vertical_research/src/agents/fact-checker.ts.tmpl +8 -8
  274. package/templates/vertical_research/src/agents/scout.ts.tmpl +7 -7
  275. package/templates/vertical_research/src/agents/source-grader.ts.tmpl +10 -10
  276. package/templates/vertical_research/src/agents/synthesizer.ts.tmpl +8 -8
  277. package/templates/vertical_research/src/agents/web-searcher.ts.tmpl +6 -6
  278. package/templates/vertical_research/src/init.ts.tmpl +13 -13
  279. package/templates/vertical_research/tsconfig.json.tmpl +19 -19
  280. package/templates/vertical_research/vitest.config.ts.tmpl +23 -23
  281. package/templates/vertical_ruview/.claude/commands/doctor.md.tmpl +12 -12
  282. package/templates/vertical_ruview/.claude/settings.json.tmpl +33 -33
  283. package/templates/vertical_ruview/.claude/skills/index-and-ask/SKILL.md.tmpl +15 -15
  284. package/templates/vertical_ruview/.claude/skills/memory-inspect/SKILL.md.tmpl +14 -14
  285. package/templates/vertical_ruview/.claude-plugin/plugin.json.tmpl +23 -23
  286. package/templates/vertical_ruview/CLAUDE.md.tmpl +31 -31
  287. package/templates/vertical_ruview/README.md.tmpl +29 -29
  288. package/templates/vertical_ruview/__tests__/smoke.test.ts.tmpl +37 -37
  289. package/templates/vertical_ruview/bin/cli.js.tmpl +100 -100
  290. package/templates/vertical_ruview/manifest.json +106 -106
  291. package/templates/vertical_ruview/package.json.tmpl +30 -30
  292. package/templates/vertical_ruview/src/agents/indexer.ts.tmpl +7 -7
  293. package/templates/vertical_ruview/src/agents/retriever.ts.tmpl +7 -7
  294. package/templates/vertical_ruview/src/agents/reviewer.ts.tmpl +7 -7
  295. package/templates/vertical_ruview/src/init.ts.tmpl +21 -21
  296. package/templates/vertical_ruview/tsconfig.json.tmpl +19 -19
  297. package/templates/vertical_ruview/vitest.config.ts.tmpl +23 -23
  298. package/templates/vertical_sales/.claude/commands/doctor.md.tmpl +12 -12
  299. package/templates/vertical_sales/.claude/commands/pipeline-report.md.tmpl +13 -13
  300. package/templates/vertical_sales/.claude/settings.json.tmpl +45 -45
  301. package/templates/vertical_sales/.claude/skills/memory-inspect/SKILL.md.tmpl +14 -14
  302. package/templates/vertical_sales/.claude/skills/qualify-lead/SKILL.md.tmpl +15 -15
  303. package/templates/vertical_sales/.claude-plugin/plugin.json.tmpl +23 -23
  304. package/templates/vertical_sales/CLAUDE.md.tmpl +33 -33
  305. package/templates/vertical_sales/README.md.tmpl +30 -30
  306. package/templates/vertical_sales/__tests__/smoke.test.ts.tmpl +37 -37
  307. package/templates/vertical_sales/bin/cli.js.tmpl +100 -100
  308. package/templates/vertical_sales/manifest.json +116 -116
  309. package/templates/vertical_sales/package.json.tmpl +30 -30
  310. package/templates/vertical_sales/src/agents/closer.ts.tmpl +7 -7
  311. package/templates/vertical_sales/src/agents/demo-coach.ts.tmpl +7 -7
  312. package/templates/vertical_sales/src/agents/prospector.ts.tmpl +7 -7
  313. package/templates/vertical_sales/src/agents/qualifier.ts.tmpl +7 -7
  314. package/templates/vertical_sales/src/init.ts.tmpl +21 -21
  315. package/templates/vertical_sales/tsconfig.json.tmpl +19 -19
  316. package/templates/vertical_sales/vitest.config.ts.tmpl +23 -23
  317. package/templates/vertical_support/.claude/settings.json.tmpl +25 -25
  318. package/templates/vertical_support/.claude-plugin/plugin.json.tmpl +23 -23
  319. package/templates/vertical_support/CLAUDE.md.tmpl +34 -34
  320. package/templates/vertical_support/README.md.tmpl +16 -16
  321. package/templates/vertical_support/__tests__/smoke.test.ts.tmpl +37 -37
  322. package/templates/vertical_support/bin/cli.js.tmpl +100 -100
  323. package/templates/vertical_support/kb/README.md.tmpl +23 -23
  324. package/templates/vertical_support/manifest.json +100 -100
  325. package/templates/vertical_support/package.json.tmpl +25 -25
  326. package/templates/vertical_support/src/agents/escalator.ts.tmpl +6 -6
  327. package/templates/vertical_support/src/agents/kb-searcher.ts.tmpl +6 -6
  328. package/templates/vertical_support/src/agents/responder.ts.tmpl +7 -7
  329. package/templates/vertical_support/src/agents/triager.ts.tmpl +6 -6
  330. package/templates/vertical_support/src/init.ts.tmpl +16 -16
  331. package/templates/vertical_support/tsconfig.json.tmpl +19 -19
  332. package/templates/vertical_support/vitest.config.ts.tmpl +23 -23
  333. package/templates/vertical_trading/.claude/settings.json.tmpl +20 -20
  334. package/templates/vertical_trading/.claude-plugin/plugin.json.tmpl +23 -23
  335. package/templates/vertical_trading/CLAUDE.md.tmpl +24 -24
  336. package/templates/vertical_trading/README.md.tmpl +17 -17
  337. package/templates/vertical_trading/__tests__/smoke.test.ts.tmpl +37 -37
  338. package/templates/vertical_trading/bin/cli.js.tmpl +100 -100
  339. package/templates/vertical_trading/manifest.json +100 -100
  340. package/templates/vertical_trading/package.json.tmpl +14 -14
  341. package/templates/vertical_trading/src/agents/executor.ts.tmpl +8 -8
  342. package/templates/vertical_trading/src/agents/market-watcher.ts.tmpl +7 -7
  343. package/templates/vertical_trading/src/agents/postmortem.ts.tmpl +8 -8
  344. package/templates/vertical_trading/src/agents/risk-checker.ts.tmpl +11 -11
  345. package/templates/vertical_trading/src/agents/signal-gen.ts.tmpl +8 -8
  346. package/templates/vertical_trading/src/init.ts.tmpl +20 -20
  347. package/templates/vertical_trading/tsconfig.json.tmpl +19 -19
  348. package/templates/vertical_trading/vitest.config.ts.tmpl +23 -23
@@ -1,121 +1,121 @@
1
- {
2
- "id": "vertical:repo-maintainer",
3
- "description": "A maintenance pod for an existing repo — maintainer, benchmarker, release, security agents. The \"this repo ships with its own agent\" demo.",
4
- "domain": "engineering/repo-maintenance",
5
- "category": "Engineering",
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": ".claude-plugin/plugin.json.tmpl",
29
- "dst": ".claude-plugin/plugin.json",
30
- "render": true
31
- },
32
- {
33
- "src": "src/init.ts.tmpl",
34
- "dst": "src/init.ts",
35
- "render": true
36
- },
37
- {
38
- "src": "src/agents/maintainer.ts.tmpl",
39
- "dst": "src/agents/maintainer.ts",
40
- "render": true
41
- },
42
- {
43
- "src": "src/agents/benchmarker.ts.tmpl",
44
- "dst": "src/agents/benchmarker.ts",
45
- "render": true
46
- },
47
- {
48
- "src": "src/agents/release.ts.tmpl",
49
- "dst": "src/agents/release.ts",
50
- "render": true
51
- },
52
- {
53
- "src": "src/agents/security.ts.tmpl",
54
- "dst": "src/agents/security.ts",
55
- "render": true
56
- },
57
- {
58
- "src": ".claude/skills/memory-inspect/SKILL.md.tmpl",
59
- "dst": ".claude/skills/memory-inspect/SKILL.md",
60
- "render": true
61
- },
62
- {
63
- "src": ".claude/skills/plan-change/SKILL.md.tmpl",
64
- "dst": ".claude/skills/plan-change/SKILL.md",
65
- "render": true
66
- },
67
- {
68
- "src": ".claude/commands/doctor.md.tmpl",
69
- "dst": ".claude/commands/doctor.md",
70
- "render": true
71
- },
72
- {
73
- "src": ".claude/commands/repo-triage.md.tmpl",
74
- "dst": ".claude/commands/repo-triage.md",
75
- "render": true
76
- },
77
- {
78
- "src": ".claude/commands/release-check.md.tmpl",
79
- "dst": ".claude/commands/release-check.md",
80
- "render": true
81
- },
82
- {
83
- "src": "tsconfig.json.tmpl",
84
- "dst": "tsconfig.json",
85
- "render": true
86
- },
87
- {
88
- "src": "bin/cli.js.tmpl",
89
- "dst": "bin/cli.js",
90
- "render": true
91
- },
92
- {
93
- "src": "__tests__/smoke.test.ts.tmpl",
94
- "dst": "__tests__/smoke.test.ts",
95
- "render": true
96
- }
97
- ],
98
- "vars": [
99
- {
100
- "name": "name",
101
- "prompt": "Harness name (kebab-case)",
102
- "validate": "^[a-z0-9-]+$"
103
- },
104
- {
105
- "name": "description",
106
- "prompt": "One-line description",
107
- "default": "Maintain an existing repo: triage what changed, benchmark, release-check, security-flag"
108
- },
109
- {
110
- "name": "host",
111
- "prompt": "Host adapter",
112
- "default": "claude-code",
113
- "choices": [
114
- "claude-code",
115
- "codex",
116
- "pi-dev",
117
- "hermes"
118
- ]
119
- }
120
- ]
121
- }
1
+ {
2
+ "id": "vertical:repo-maintainer",
3
+ "description": "A maintenance pod for an existing repo — maintainer, benchmarker, release, security agents. The \"this repo ships with its own agent\" demo.",
4
+ "domain": "engineering/repo-maintenance",
5
+ "category": "Engineering",
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": ".claude-plugin/plugin.json.tmpl",
29
+ "dst": ".claude-plugin/plugin.json",
30
+ "render": true
31
+ },
32
+ {
33
+ "src": "src/init.ts.tmpl",
34
+ "dst": "src/init.ts",
35
+ "render": true
36
+ },
37
+ {
38
+ "src": "src/agents/maintainer.ts.tmpl",
39
+ "dst": "src/agents/maintainer.ts",
40
+ "render": true
41
+ },
42
+ {
43
+ "src": "src/agents/benchmarker.ts.tmpl",
44
+ "dst": "src/agents/benchmarker.ts",
45
+ "render": true
46
+ },
47
+ {
48
+ "src": "src/agents/release.ts.tmpl",
49
+ "dst": "src/agents/release.ts",
50
+ "render": true
51
+ },
52
+ {
53
+ "src": "src/agents/security.ts.tmpl",
54
+ "dst": "src/agents/security.ts",
55
+ "render": true
56
+ },
57
+ {
58
+ "src": ".claude/skills/memory-inspect/SKILL.md.tmpl",
59
+ "dst": ".claude/skills/memory-inspect/SKILL.md",
60
+ "render": true
61
+ },
62
+ {
63
+ "src": ".claude/skills/plan-change/SKILL.md.tmpl",
64
+ "dst": ".claude/skills/plan-change/SKILL.md",
65
+ "render": true
66
+ },
67
+ {
68
+ "src": ".claude/commands/doctor.md.tmpl",
69
+ "dst": ".claude/commands/doctor.md",
70
+ "render": true
71
+ },
72
+ {
73
+ "src": ".claude/commands/repo-triage.md.tmpl",
74
+ "dst": ".claude/commands/repo-triage.md",
75
+ "render": true
76
+ },
77
+ {
78
+ "src": ".claude/commands/release-check.md.tmpl",
79
+ "dst": ".claude/commands/release-check.md",
80
+ "render": true
81
+ },
82
+ {
83
+ "src": "tsconfig.json.tmpl",
84
+ "dst": "tsconfig.json",
85
+ "render": true
86
+ },
87
+ {
88
+ "src": "bin/cli.js.tmpl",
89
+ "dst": "bin/cli.js",
90
+ "render": true
91
+ },
92
+ {
93
+ "src": "__tests__/smoke.test.ts.tmpl",
94
+ "dst": "__tests__/smoke.test.ts",
95
+ "render": true
96
+ }
97
+ ],
98
+ "vars": [
99
+ {
100
+ "name": "name",
101
+ "prompt": "Harness name (kebab-case)",
102
+ "validate": "^[a-z0-9-]+$"
103
+ },
104
+ {
105
+ "name": "description",
106
+ "prompt": "One-line description",
107
+ "default": "Maintain an existing repo: triage what changed, benchmark, release-check, security-flag"
108
+ },
109
+ {
110
+ "name": "host",
111
+ "prompt": "Host adapter",
112
+ "default": "claude-code",
113
+ "choices": [
114
+ "claude-code",
115
+ "codex",
116
+ "pi-dev",
117
+ "hermes"
118
+ ]
119
+ }
120
+ ]
121
+ }
@@ -1,30 +1,30 @@
1
- {
2
- "name": "{{name}}",
3
- "version": "0.1.0",
4
- "description": "{{description}}",
5
- "type": "module",
6
- "bin": {
7
- "{{name}}": "bin/cli.js"
8
- },
9
- "files": ["bin/**", "dist/**", "src/**", "tsconfig.json", ".claude/**", "CLAUDE.md", "README.md", "LICENSE"],
10
- "scripts": {
11
- "build": "tsc",
12
- "test": "vitest run",
13
- "init": "node ./bin/cli.js init", "doctor": "node ./bin/cli.js doctor"
14
- },
15
- "dependencies": {
16
- "@metaharness/kernel": "^0.1.0",
17
- "@metaharness/host-{{host}}": "^0.1.0"
18
- },
19
- "devDependencies": {
20
- "@types/node": "^20.0.0",
21
- "typescript": "^5.4.0",
22
- "vitest": "^3.0.0"
23
- },
24
- "engines": {
25
- "node": ">=20.0.0"
26
- },
27
- "publishConfig": {
28
- "access": "public"
29
- }
30
- }
1
+ {
2
+ "name": "{{name}}",
3
+ "version": "0.1.0",
4
+ "description": "{{description}}",
5
+ "type": "module",
6
+ "bin": {
7
+ "{{name}}": "bin/cli.js"
8
+ },
9
+ "files": ["bin/**", "dist/**", "src/**", "tsconfig.json", ".claude/**", "CLAUDE.md", "README.md", "LICENSE"],
10
+ "scripts": {
11
+ "build": "tsc",
12
+ "test": "vitest run",
13
+ "init": "node ./bin/cli.js init", "doctor": "node ./bin/cli.js doctor"
14
+ },
15
+ "dependencies": {
16
+ "@metaharness/kernel": "^0.1.0",
17
+ "@metaharness/host-{{host}}": "^0.1.0"
18
+ },
19
+ "devDependencies": {
20
+ "@types/node": "^20.0.0",
21
+ "typescript": "^5.4.0",
22
+ "vitest": "^3.0.0"
23
+ },
24
+ "engines": {
25
+ "node": ">=20.0.0"
26
+ },
27
+ "publishConfig": {
28
+ "access": "public"
29
+ }
30
+ }
@@ -1,7 +1,7 @@
1
- // SPDX-License-Identifier: MIT
2
- // Benchmarker agent — Runs the perf gates and reports regressions.
3
-
4
- export const SYSTEM_PROMPT = `You run the project's declared benchmark suite (cargo bench, npm run bench, or whatever the manifest names) and compare against the baseline. Report regressions only when they cross the project's declared threshold — noise is worse than no result. Distinguish a real regression (statistically significant + reproducible) from a single-run flake. Write the result to memory so the maintainer can quote it. You operate inside the {{name}} harness; defer destructive actions to the user.`;
5
-
6
- export const NAME = 'benchmarker';
7
- export const TIER = 'sonnet' as const;
1
+ // SPDX-License-Identifier: MIT
2
+ // Benchmarker agent — Runs the perf gates and reports regressions.
3
+
4
+ export const SYSTEM_PROMPT = `You run the project's declared benchmark suite (cargo bench, npm run bench, or whatever the manifest names) and compare against the baseline. Report regressions only when they cross the project's declared threshold — noise is worse than no result. Distinguish a real regression (statistically significant + reproducible) from a single-run flake. Write the result to memory so the maintainer can quote it. You operate inside the {{name}} harness; defer destructive actions to the user.`;
5
+
6
+ export const NAME = 'benchmarker';
7
+ export const TIER = 'sonnet' as const;
@@ -1,7 +1,7 @@
1
- // SPDX-License-Identifier: MIT
2
- // Maintainer agent — Triages the repo state — what changed, what is risky, what to review first.
3
-
4
- export const SYSTEM_PROMPT = `You are the repo maintainer. When asked "what changed?" you read git diff / git log / git status and produce a one-screen triage: the headline risk, the files most likely to regress, and the smallest test the team should run before merging. You never push, never publish, never auto-fix — your job is to surface, not to act. When uncertain you say "I can't tell from the diff alone" and ask for the specific file or commit you need. You operate inside the {{name}} harness; defer destructive actions to the user.`;
5
-
6
- export const NAME = 'maintainer';
7
- export const TIER = 'opus' as const;
1
+ // SPDX-License-Identifier: MIT
2
+ // Maintainer agent — Triages the repo state — what changed, what is risky, what to review first.
3
+
4
+ export const SYSTEM_PROMPT = `You are the repo maintainer. When asked "what changed?" you read git diff / git log / git status and produce a one-screen triage: the headline risk, the files most likely to regress, and the smallest test the team should run before merging. You never push, never publish, never auto-fix — your job is to surface, not to act. When uncertain you say "I can't tell from the diff alone" and ask for the specific file or commit you need. You operate inside the {{name}} harness; defer destructive actions to the user.`;
5
+
6
+ export const NAME = 'maintainer';
7
+ export const TIER = 'opus' as const;
@@ -1,7 +1,7 @@
1
- // SPDX-License-Identifier: MIT
2
- // Release agent — Drafts the GitHub release body + runs the readiness gates.
3
-
4
- export const SYSTEM_PROMPT = `You draft a release. Read the conventional-commit log since the last tag, group commits by feat/fix/docs/chore, and write a release body that an outside reader could understand without the repo open. Before drafting you confirm the release-readiness gates have passed (validate / sbom / witness / score). If any gate is red you refuse to draft and name the specific blocker. The release is a public commitment; you treat it like one. You operate inside the {{name}} harness; defer destructive actions to the user.`;
5
-
6
- export const NAME = 'release';
7
- export const TIER = 'opus' as const;
1
+ // SPDX-License-Identifier: MIT
2
+ // Release agent — Drafts the GitHub release body + runs the readiness gates.
3
+
4
+ export const SYSTEM_PROMPT = `You draft a release. Read the conventional-commit log since the last tag, group commits by feat/fix/docs/chore, and write a release body that an outside reader could understand without the repo open. Before drafting you confirm the release-readiness gates have passed (validate / sbom / witness / score). If any gate is red you refuse to draft and name the specific blocker. The release is a public commitment; you treat it like one. You operate inside the {{name}} harness; defer destructive actions to the user.`;
5
+
6
+ export const NAME = 'release';
7
+ export const TIER = 'opus' as const;
@@ -1,7 +1,7 @@
1
- // SPDX-License-Identifier: MIT
2
- // Security agent — Flags risky MCP grants, leaked secrets, dangerous diffs.
3
-
4
- export const SYSTEM_PROMPT = `You scan the harness for the security regressions that matter: MCP grants that widened (Bash(rm:*), shell on, network on, file-write on), .env or token strings that escaped the redaction set, dependency updates that pulled in CVEs, and policy files that drifted from default-deny. Report each finding with a file:line, a severity (HIGH / MEDIUM), and the smallest fix. Never approve a change that widens a permission without a written reason in the PR description. You operate inside the {{name}} harness; defer destructive actions to the user.`;
5
-
6
- export const NAME = 'security';
7
- export const TIER = 'opus' as const;
1
+ // SPDX-License-Identifier: MIT
2
+ // Security agent — Flags risky MCP grants, leaked secrets, dangerous diffs.
3
+
4
+ export const SYSTEM_PROMPT = `You scan the harness for the security regressions that matter: MCP grants that widened (Bash(rm:*), shell on, network on, file-write on), .env or token strings that escaped the redaction set, dependency updates that pulled in CVEs, and policy files that drifted from default-deny. Report each finding with a file:line, a severity (HIGH / MEDIUM), and the smallest fix. Never approve a change that widens a permission without a written reason in the PR description. You operate inside the {{name}} harness; defer destructive actions to the user.`;
5
+
6
+ export const NAME = 'security';
7
+ export const TIER = 'opus' as const;
@@ -1,21 +1,21 @@
1
- // SPDX-License-Identifier: MIT
2
- // Generated by create-agent-harness — your harness's `{{name}} init` entry.
3
-
4
- import { loadKernel } from '@metaharness/kernel';
5
- import adapter from '@metaharness/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
- });
1
+ // SPDX-License-Identifier: MIT
2
+ // Generated by create-agent-harness — your harness's `{{name}} init` entry.
3
+
4
+ import { loadKernel } from '@metaharness/kernel';
5
+ import adapter from '@metaharness/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
+ });
@@ -1,19 +1,19 @@
1
- {
2
- "compilerOptions": {
3
- "target": "ES2022",
4
- "module": "NodeNext",
5
- "moduleResolution": "NodeNext",
6
- "lib": ["ES2022"],
7
- "outDir": "./dist",
8
- "rootDir": "./src",
9
- "declaration": true,
10
- "declarationMap": true,
11
- "sourceMap": true,
12
- "strict": true,
13
- "esModuleInterop": true,
14
- "skipLibCheck": true,
15
- "forceConsistentCasingInFileNames": true
16
- },
17
- "include": ["src/**/*.ts"],
18
- "exclude": ["node_modules", "dist", "__tests__"]
19
- }
1
+ {
2
+ "compilerOptions": {
3
+ "target": "ES2022",
4
+ "module": "NodeNext",
5
+ "moduleResolution": "NodeNext",
6
+ "lib": ["ES2022"],
7
+ "outDir": "./dist",
8
+ "rootDir": "./src",
9
+ "declaration": true,
10
+ "declarationMap": true,
11
+ "sourceMap": true,
12
+ "strict": true,
13
+ "esModuleInterop": true,
14
+ "skipLibCheck": true,
15
+ "forceConsistentCasingInFileNames": true
16
+ },
17
+ "include": ["src/**/*.ts"],
18
+ "exclude": ["node_modules", "dist", "__tests__"]
19
+ }
@@ -1,23 +1,23 @@
1
- // SPDX-License-Identifier: MIT
2
- // Generated by metaharness. Strips the `#!/usr/bin/env node` shebang from
3
- // importable entrypoints (e.g. bin/cli.js) before Vite parses them — Vite/esbuild
4
- // (used internally by Vitest) does NOT strip shebangs, so importing a shebanged
5
- // module throws `SyntaxError: Invalid or unexpected token`. See issue #44.
6
- // Has no effect on direct CLI execution or `npm run doctor` (those bypass Vite).
7
- import { defineConfig } from 'vitest/config';
8
-
9
- export default defineConfig({
10
- plugins: [
11
- {
12
- name: 'strip-shebang',
13
- enforce: 'pre',
14
- transform(code: string) {
15
- if (code.startsWith('#!')) {
16
- // Replace with a blank line so source line numbers stay aligned.
17
- return { code: code.replace(/^#![^\n]*/, ''), map: null };
18
- }
19
- return null;
20
- },
21
- },
22
- ],
23
- });
1
+ // SPDX-License-Identifier: MIT
2
+ // Generated by metaharness. Strips the `#!/usr/bin/env node` shebang from
3
+ // importable entrypoints (e.g. bin/cli.js) before Vite parses them — Vite/esbuild
4
+ // (used internally by Vitest) does NOT strip shebangs, so importing a shebanged
5
+ // module throws `SyntaxError: Invalid or unexpected token`. See issue #44.
6
+ // Has no effect on direct CLI execution or `npm run doctor` (those bypass Vite).
7
+ import { defineConfig } from 'vitest/config';
8
+
9
+ export default defineConfig({
10
+ plugins: [
11
+ {
12
+ name: 'strip-shebang',
13
+ enforce: 'pre',
14
+ transform(code: string) {
15
+ if (code.startsWith('#!')) {
16
+ // Replace with a blank line so source line numbers stay aligned.
17
+ return { code: code.replace(/^#![^\n]*/, ''), map: null };
18
+ }
19
+ return null;
20
+ },
21
+ },
22
+ ],
23
+ });
@@ -1,9 +1,9 @@
1
- {
2
- "permissions": {
3
- "allow": ["Bash(npx {{name}}*)", "mcp__{{name}}__*", "WebFetch"],
4
- "deny": ["Bash(rm *)", "Read(./.env)", "Read(./.env.*)"]
5
- },
6
- "mcpServers": {
7
- "{{name}}": { "command": "npx", "args": ["-y", "{{name}}@latest", "mcp", "start"] }
8
- }
9
- }
1
+ {
2
+ "permissions": {
3
+ "allow": ["Bash(npx {{name}}*)", "mcp__{{name}}__*", "WebFetch"],
4
+ "deny": ["Bash(rm *)", "Read(./.env)", "Read(./.env.*)"]
5
+ },
6
+ "mcpServers": {
7
+ "{{name}}": { "command": "npx", "args": ["-y", "{{name}}@latest", "mcp", "start"] }
8
+ }
9
+ }
@@ -1,23 +1,23 @@
1
- {
2
- "name": "{{name}}",
3
- "version": "0.1.0",
4
- "description": "{{description}}",
5
- "author": {
6
- "displayName": "Generated by metaharness",
7
- "url": "https://www.npmjs.com/package/metaharness"
8
- },
9
- "license": "MIT",
10
- "categories": [
11
- "agent-harness",
12
- "metaharness-scaffold",
13
- "vertical",
14
- "research/multi-source-dossier"
15
- ],
16
- "tags": [
17
- "metaharness",
18
- "agent-harness",
19
- "vertical:research",
20
- "research/multi-source-dossier"
21
- ],
22
- "homepage": "https://github.com/ruvnet/agent-harness-generator"
23
- }
1
+ {
2
+ "name": "{{name}}",
3
+ "version": "0.1.0",
4
+ "description": "{{description}}",
5
+ "author": {
6
+ "displayName": "Generated by metaharness",
7
+ "url": "https://www.npmjs.com/package/metaharness"
8
+ },
9
+ "license": "MIT",
10
+ "categories": [
11
+ "agent-harness",
12
+ "metaharness-scaffold",
13
+ "vertical",
14
+ "research/multi-source-dossier"
15
+ ],
16
+ "tags": [
17
+ "metaharness",
18
+ "agent-harness",
19
+ "vertical:research",
20
+ "research/multi-source-dossier"
21
+ ],
22
+ "homepage": "https://github.com/ruvnet/agent-harness-generator"
23
+ }
@@ -1,33 +1,33 @@
1
- # {{name}}
2
-
3
- {{description}}
4
-
5
- ## Pipeline
6
-
7
- ```
8
- scout -> web-searcher -> source-grader -> synthesizer -> fact-checker -> citer
9
- ```
10
-
11
- Each agent only sees the OUTPUT of the previous one, not the raw inputs. This forces information to flow through grading + verification gates.
12
-
13
- ## Agents
14
-
15
- | Agent | Role | Tier |
16
- |---|---|---|
17
- | `scout` | Decompose the research question into subqueries | Sonnet |
18
- | `web-searcher` | Run subqueries via WebSearch MCP, collect raw hits | Haiku |
19
- | `source-grader` | Grade each source A/B/C/D by authority + freshness + relevance | Sonnet |
20
- | `synthesizer` | Synthesise findings from grade A/B sources only | Sonnet |
21
- | `fact-checker` | Adversarially verify each claim in the synthesis | Sonnet |
22
- | `citer` | Final pass: every claim must cite a graded source | Sonnet |
23
-
24
- ## Evidence grading rubric
25
-
26
- - **A**: Primary source (paper, official doc), <2 years old, on-topic
27
- - **B**: Reputable secondary source (major outlet, expert blog), <5 years
28
- - **C**: Tertiary source (Wikipedia, summary article) — informational only
29
- - **D**: Discarded (forum, unsourced claim, broken link)
30
-
31
- ## Output
32
-
33
- A dossier markdown: TL;DR + body (every claim cited) + bibliography with grades.
1
+ # {{name}}
2
+
3
+ {{description}}
4
+
5
+ ## Pipeline
6
+
7
+ ```
8
+ scout -> web-searcher -> source-grader -> synthesizer -> fact-checker -> citer
9
+ ```
10
+
11
+ Each agent only sees the OUTPUT of the previous one, not the raw inputs. This forces information to flow through grading + verification gates.
12
+
13
+ ## Agents
14
+
15
+ | Agent | Role | Tier |
16
+ |---|---|---|
17
+ | `scout` | Decompose the research question into subqueries | Sonnet |
18
+ | `web-searcher` | Run subqueries via WebSearch MCP, collect raw hits | Haiku |
19
+ | `source-grader` | Grade each source A/B/C/D by authority + freshness + relevance | Sonnet |
20
+ | `synthesizer` | Synthesise findings from grade A/B sources only | Sonnet |
21
+ | `fact-checker` | Adversarially verify each claim in the synthesis | Sonnet |
22
+ | `citer` | Final pass: every claim must cite a graded source | Sonnet |
23
+
24
+ ## Evidence grading rubric
25
+
26
+ - **A**: Primary source (paper, official doc), <2 years old, on-topic
27
+ - **B**: Reputable secondary source (major outlet, expert blog), <5 years
28
+ - **C**: Tertiary source (Wikipedia, summary article) — informational only
29
+ - **D**: Discarded (forum, unsourced claim, broken link)
30
+
31
+ ## Output
32
+
33
+ A dossier markdown: TL;DR + body (every claim cited) + bibliography with grades.