@josstei/maestro 1.6.4-nightly.20260430

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 (655) hide show
  1. package/.agents/plugins/marketplace.json +20 -0
  2. package/CHANGELOG.md +486 -0
  3. package/EXAMPLES.md +255 -0
  4. package/GEMINI.md +251 -0
  5. package/LICENSE +201 -0
  6. package/QWEN.md +274 -0
  7. package/README.md +220 -0
  8. package/agents/accessibility_specialist.md +20 -0
  9. package/agents/analytics_engineer.md +22 -0
  10. package/agents/api_designer.md +19 -0
  11. package/agents/architect.md +19 -0
  12. package/agents/cloud_architect.md +19 -0
  13. package/agents/cobol_engineer.md +22 -0
  14. package/agents/code_reviewer.md +17 -0
  15. package/agents/coder.md +22 -0
  16. package/agents/compliance_reviewer.md +19 -0
  17. package/agents/content_strategist.md +19 -0
  18. package/agents/copywriter.md +19 -0
  19. package/agents/data_engineer.md +22 -0
  20. package/agents/database_administrator.md +21 -0
  21. package/agents/db2_dba.md +21 -0
  22. package/agents/debugger.md +19 -0
  23. package/agents/design_system_engineer.md +22 -0
  24. package/agents/devops_engineer.md +23 -0
  25. package/agents/hlasm_assembler_specialist.md +22 -0
  26. package/agents/i18n_specialist.md +21 -0
  27. package/agents/ibm_i_specialist.md +22 -0
  28. package/agents/integration_engineer.md +23 -0
  29. package/agents/ml_engineer.md +23 -0
  30. package/agents/mlops_engineer.md +23 -0
  31. package/agents/mobile_engineer.md +23 -0
  32. package/agents/observability_engineer.md +23 -0
  33. package/agents/performance_engineer.md +21 -0
  34. package/agents/platform_engineer.md +24 -0
  35. package/agents/product_manager.md +20 -0
  36. package/agents/prompt_engineer.md +22 -0
  37. package/agents/refactor.md +22 -0
  38. package/agents/release_manager.md +22 -0
  39. package/agents/security_engineer.md +21 -0
  40. package/agents/seo_specialist.md +21 -0
  41. package/agents/site_reliability_engineer.md +21 -0
  42. package/agents/solutions_architect.md +19 -0
  43. package/agents/technical_writer.md +21 -0
  44. package/agents/tester.md +23 -0
  45. package/agents/ux_designer.md +20 -0
  46. package/agents/zos_sysprog.md +21 -0
  47. package/bin/maestro-mcp-server.js +10 -0
  48. package/claude/.claude-plugin/plugin.json +21 -0
  49. package/claude/.mcp.json +11 -0
  50. package/claude/README.md +191 -0
  51. package/claude/agents/accessibility-specialist.md +36 -0
  52. package/claude/agents/analytics-engineer.md +38 -0
  53. package/claude/agents/api-designer.md +33 -0
  54. package/claude/agents/architect.md +33 -0
  55. package/claude/agents/cloud-architect.md +33 -0
  56. package/claude/agents/cobol-engineer.md +38 -0
  57. package/claude/agents/code-reviewer.md +31 -0
  58. package/claude/agents/coder.md +38 -0
  59. package/claude/agents/compliance-reviewer.md +33 -0
  60. package/claude/agents/content-strategist.md +33 -0
  61. package/claude/agents/copywriter.md +33 -0
  62. package/claude/agents/data-engineer.md +37 -0
  63. package/claude/agents/database-administrator.md +37 -0
  64. package/claude/agents/db2-dba.md +37 -0
  65. package/claude/agents/debugger.md +32 -0
  66. package/claude/agents/design-system-engineer.md +38 -0
  67. package/claude/agents/devops-engineer.md +39 -0
  68. package/claude/agents/hlasm-assembler-specialist.md +38 -0
  69. package/claude/agents/i18n-specialist.md +37 -0
  70. package/claude/agents/ibm-i-specialist.md +38 -0
  71. package/claude/agents/integration-engineer.md +39 -0
  72. package/claude/agents/ml-engineer.md +39 -0
  73. package/claude/agents/mlops-engineer.md +39 -0
  74. package/claude/agents/mobile-engineer.md +39 -0
  75. package/claude/agents/observability-engineer.md +39 -0
  76. package/claude/agents/performance-engineer.md +34 -0
  77. package/claude/agents/platform-engineer.md +40 -0
  78. package/claude/agents/product-manager.md +34 -0
  79. package/claude/agents/prompt-engineer.md +38 -0
  80. package/claude/agents/refactor.md +38 -0
  81. package/claude/agents/release-manager.md +38 -0
  82. package/claude/agents/security-engineer.md +37 -0
  83. package/claude/agents/seo-specialist.md +37 -0
  84. package/claude/agents/site-reliability-engineer.md +37 -0
  85. package/claude/agents/solutions-architect.md +33 -0
  86. package/claude/agents/technical-writer.md +37 -0
  87. package/claude/agents/tester.md +39 -0
  88. package/claude/agents/ux-designer.md +34 -0
  89. package/claude/agents/zos-sysprog.md +37 -0
  90. package/claude/hooks/claude-hooks.json +48 -0
  91. package/claude/mcp/maestro-server.js +9 -0
  92. package/claude/mcp-config.example.json +9 -0
  93. package/claude/scripts/adapters/claude-adapter.js +7 -0
  94. package/claude/scripts/hook-runner.js +8 -0
  95. package/claude/scripts/policy-enforcer.js +294 -0
  96. package/claude/skills/a11y-audit/SKILL.md +26 -0
  97. package/claude/skills/archive/SKILL.md +24 -0
  98. package/claude/skills/code-review/SKILL.md +7 -0
  99. package/claude/skills/compliance-check/SKILL.md +26 -0
  100. package/claude/skills/debug-workflow/SKILL.md +27 -0
  101. package/claude/skills/delegation/SKILL.md +7 -0
  102. package/claude/skills/design-dialogue/SKILL.md +7 -0
  103. package/claude/skills/execute/SKILL.md +38 -0
  104. package/claude/skills/execution/SKILL.md +7 -0
  105. package/claude/skills/implementation-planning/SKILL.md +7 -0
  106. package/claude/skills/orchestrate/SKILL.md +38 -0
  107. package/claude/skills/perf-check/SKILL.md +26 -0
  108. package/claude/skills/resume-session/SKILL.md +38 -0
  109. package/claude/skills/review-code/SKILL.md +27 -0
  110. package/claude/skills/security-audit/SKILL.md +28 -0
  111. package/claude/skills/seo-audit/SKILL.md +26 -0
  112. package/claude/skills/session-management/SKILL.md +7 -0
  113. package/claude/skills/status/SKILL.md +22 -0
  114. package/claude/skills/validation/SKILL.md +7 -0
  115. package/claude/src/agents/accessibility-specialist.md +163 -0
  116. package/claude/src/agents/analytics-engineer.md +182 -0
  117. package/claude/src/agents/api-designer.md +124 -0
  118. package/claude/src/agents/architect.md +120 -0
  119. package/claude/src/agents/cloud-architect.md +134 -0
  120. package/claude/src/agents/cobol-engineer.md +127 -0
  121. package/claude/src/agents/code-reviewer.md +123 -0
  122. package/claude/src/agents/coder.md +132 -0
  123. package/claude/src/agents/compliance-reviewer.md +219 -0
  124. package/claude/src/agents/content-strategist.md +111 -0
  125. package/claude/src/agents/copywriter.md +113 -0
  126. package/claude/src/agents/data-engineer.md +130 -0
  127. package/claude/src/agents/database-administrator.md +126 -0
  128. package/claude/src/agents/db2-dba.md +124 -0
  129. package/claude/src/agents/debugger.md +133 -0
  130. package/claude/src/agents/design-system-engineer.md +258 -0
  131. package/claude/src/agents/devops-engineer.md +138 -0
  132. package/claude/src/agents/hlasm-assembler-specialist.md +134 -0
  133. package/claude/src/agents/i18n-specialist.md +241 -0
  134. package/claude/src/agents/ibm-i-specialist.md +132 -0
  135. package/claude/src/agents/integration-engineer.md +133 -0
  136. package/claude/src/agents/ml-engineer.md +115 -0
  137. package/claude/src/agents/mlops-engineer.md +116 -0
  138. package/claude/src/agents/mobile-engineer.md +115 -0
  139. package/claude/src/agents/observability-engineer.md +133 -0
  140. package/claude/src/agents/performance-engineer.md +139 -0
  141. package/claude/src/agents/platform-engineer.md +129 -0
  142. package/claude/src/agents/product-manager.md +170 -0
  143. package/claude/src/agents/prompt-engineer.md +129 -0
  144. package/claude/src/agents/refactor.md +138 -0
  145. package/claude/src/agents/release-manager.md +132 -0
  146. package/claude/src/agents/security-engineer.md +143 -0
  147. package/claude/src/agents/seo-specialist.md +129 -0
  148. package/claude/src/agents/site-reliability-engineer.md +131 -0
  149. package/claude/src/agents/solutions-architect.md +137 -0
  150. package/claude/src/agents/technical-writer.md +129 -0
  151. package/claude/src/agents/tester.md +135 -0
  152. package/claude/src/agents/ux-designer.md +168 -0
  153. package/claude/src/agents/zos-sysprog.md +134 -0
  154. package/claude/src/config/setting-resolver.js +32 -0
  155. package/claude/src/core/agent-registry.js +67 -0
  156. package/claude/src/core/canonical-source.js +39 -0
  157. package/claude/src/core/env-file-parser.js +82 -0
  158. package/claude/src/core/feature-blocks.js +34 -0
  159. package/claude/src/core/logger.js +12 -0
  160. package/claude/src/core/markdown-state.js +36 -0
  161. package/claude/src/core/policy-rules.js +32 -0
  162. package/claude/src/core/project-root-resolver.js +184 -0
  163. package/claude/src/core/stdin-reader.js +77 -0
  164. package/claude/src/core/version.js +50 -0
  165. package/claude/src/entry-points/core-command-registry.js +37 -0
  166. package/claude/src/entry-points/preamble-builders.js +54 -0
  167. package/claude/src/entry-points/registry.js +199 -0
  168. package/claude/src/entry-points/templates/claude-core-command.md.tmpl +38 -0
  169. package/claude/src/entry-points/templates/claude-skill.md.tmpl +18 -0
  170. package/claude/src/entry-points/templates/codex-core-command.md.tmpl +16 -0
  171. package/claude/src/entry-points/templates/codex-skill.md.tmpl +11 -0
  172. package/claude/src/entry-points/templates/gemini-command.toml.tmpl +17 -0
  173. package/claude/src/entry-points/templates/gemini-core-command.toml.tmpl +30 -0
  174. package/claude/src/generated/agent-registry.json +630 -0
  175. package/claude/src/generated/hook-registry.json +18 -0
  176. package/claude/src/generated/resource-registry.json +16 -0
  177. package/claude/src/hooks/logic/after-agent-logic.js +54 -0
  178. package/claude/src/hooks/logic/before-agent-logic.js +57 -0
  179. package/claude/src/hooks/logic/hook-state.js +127 -0
  180. package/claude/src/hooks/logic/session-end-logic.js +17 -0
  181. package/claude/src/hooks/logic/session-start-logic.js +25 -0
  182. package/claude/src/lib/discovery/index.js +172 -0
  183. package/claude/src/lib/errors/index.js +104 -0
  184. package/claude/src/lib/framework-detection.js +50 -0
  185. package/claude/src/lib/frontmatter/index.js +262 -0
  186. package/claude/src/lib/io/index.js +96 -0
  187. package/claude/src/lib/naming/index.js +94 -0
  188. package/claude/src/lib/validation/index.js +124 -0
  189. package/claude/src/lib/yaml-emit.js +38 -0
  190. package/claude/src/mcp/content/provider.js +68 -0
  191. package/claude/src/mcp/content/runtime-content.js +188 -0
  192. package/claude/src/mcp/contracts/cache-path-rejector.js +39 -0
  193. package/claude/src/mcp/contracts/downstream-context.js +106 -0
  194. package/claude/src/mcp/contracts/plan-schema.js +148 -0
  195. package/claude/src/mcp/contracts/workspace-marker.js +61 -0
  196. package/claude/src/mcp/core/create-server.js +76 -0
  197. package/claude/src/mcp/core/line-reader.js +35 -0
  198. package/claude/src/mcp/core/project-root-cache.js +120 -0
  199. package/claude/src/mcp/core/protocol-dispatcher.js +274 -0
  200. package/claude/src/mcp/core/recovery-hints.js +43 -0
  201. package/claude/src/mcp/core/tool-outcome.js +77 -0
  202. package/claude/src/mcp/core/tool-registry.js +82 -0
  203. package/claude/src/mcp/handlers/assess-task-complexity.js +108 -0
  204. package/claude/src/mcp/handlers/blocker-parser.js +34 -0
  205. package/claude/src/mcp/handlers/design-gate.js +393 -0
  206. package/claude/src/mcp/handlers/get-agent.js +54 -0
  207. package/claude/src/mcp/handlers/get-runtime-context.js +49 -0
  208. package/claude/src/mcp/handlers/get-skill-content.js +51 -0
  209. package/claude/src/mcp/handlers/initialize-workspace.js +45 -0
  210. package/claude/src/mcp/handlers/reconciliation.js +224 -0
  211. package/claude/src/mcp/handlers/resolve-settings.js +39 -0
  212. package/claude/src/mcp/handlers/session-state-core.js +108 -0
  213. package/claude/src/mcp/handlers/session-state-tools.js +562 -0
  214. package/claude/src/mcp/handlers/validate-plan.js +76 -0
  215. package/claude/src/mcp/maestro-server.js +122 -0
  216. package/claude/src/mcp/runtime/runtime-config-map.js +70 -0
  217. package/claude/src/mcp/tool-packs/content/index.js +80 -0
  218. package/claude/src/mcp/tool-packs/contracts.js +30 -0
  219. package/claude/src/mcp/tool-packs/index.js +15 -0
  220. package/claude/src/mcp/tool-packs/session/index.js +243 -0
  221. package/claude/src/mcp/tool-packs/workspace/index.js +98 -0
  222. package/claude/src/mcp/utils/extension-root.js +31 -0
  223. package/claude/src/mcp/validation/agent-checker.js +81 -0
  224. package/claude/src/mcp/validation/dag-checker.js +214 -0
  225. package/claude/src/mcp/validation/file-overlap-checker.js +63 -0
  226. package/claude/src/mcp/validation/schema-checker.js +108 -0
  227. package/claude/src/platforms/claude/runtime-config.js +60 -0
  228. package/claude/src/platforms/shared/adapters/claude-adapter.js +36 -0
  229. package/claude/src/platforms/shared/adapters/conventions.js +29 -0
  230. package/claude/src/platforms/shared/adapters/exit-codes.js +6 -0
  231. package/claude/src/platforms/shared/adapters/factory.js +40 -0
  232. package/claude/src/platforms/shared/agent-names.js +15 -0
  233. package/claude/src/platforms/shared/hook-runner.js +52 -0
  234. package/claude/src/references/architecture.md +139 -0
  235. package/claude/src/references/orchestration-steps.md +193 -0
  236. package/claude/src/skills/shared/code-review/SKILL.md +145 -0
  237. package/claude/src/skills/shared/delegation/SKILL.md +387 -0
  238. package/claude/src/skills/shared/delegation/protocols/agent-base-protocol.md +145 -0
  239. package/claude/src/skills/shared/delegation/protocols/filesystem-safety-protocol.md +31 -0
  240. package/claude/src/skills/shared/design-dialogue/SKILL.md +284 -0
  241. package/claude/src/skills/shared/execution/SKILL.md +258 -0
  242. package/claude/src/skills/shared/implementation-planning/SKILL.md +307 -0
  243. package/claude/src/skills/shared/session-management/SKILL.md +314 -0
  244. package/claude/src/skills/shared/validation/SKILL.md +204 -0
  245. package/claude/src/state/session-state.js +113 -0
  246. package/claude/src/templates/design-document.md +95 -0
  247. package/claude/src/templates/implementation-plan.md +86 -0
  248. package/claude/src/templates/session-state.md +68 -0
  249. package/claude/src/version.json +3 -0
  250. package/commands/maestro/a11y-audit.toml +22 -0
  251. package/commands/maestro/archive.toml +23 -0
  252. package/commands/maestro/compliance-check.toml +22 -0
  253. package/commands/maestro/debug.toml +23 -0
  254. package/commands/maestro/execute.toml +30 -0
  255. package/commands/maestro/orchestrate.toml +30 -0
  256. package/commands/maestro/perf-check.toml +22 -0
  257. package/commands/maestro/resume.toml +38 -0
  258. package/commands/maestro/review.toml +23 -0
  259. package/commands/maestro/security-audit.toml +24 -0
  260. package/commands/maestro/seo-audit.toml +22 -0
  261. package/commands/maestro/status.toml +21 -0
  262. package/docs/architecture.md +323 -0
  263. package/docs/cicd.md +658 -0
  264. package/docs/flow.md +266 -0
  265. package/docs/maestro-cheatsheet.md +207 -0
  266. package/docs/overview.md +141 -0
  267. package/docs/runtime-claude.md +190 -0
  268. package/docs/runtime-codex.md +197 -0
  269. package/docs/runtime-gemini.md +173 -0
  270. package/docs/runtime-qwen.md +150 -0
  271. package/docs/usage.md +315 -0
  272. package/gemini-extension.json +56 -0
  273. package/hooks/adapters/gemini-adapter.js +2 -0
  274. package/hooks/adapters/qwen-adapter.js +2 -0
  275. package/hooks/hook-runner.js +3 -0
  276. package/hooks/hooks.json +56 -0
  277. package/mcp/maestro-server.js +4 -0
  278. package/package.json +93 -0
  279. package/plugins/maestro/.app.json +3 -0
  280. package/plugins/maestro/.codex-plugin/plugin.json +41 -0
  281. package/plugins/maestro/.mcp.json +16 -0
  282. package/plugins/maestro/README.md +57 -0
  283. package/plugins/maestro/references/runtime-guide.md +125 -0
  284. package/plugins/maestro/skills/a11y-audit/SKILL.md +16 -0
  285. package/plugins/maestro/skills/archive/SKILL.md +16 -0
  286. package/plugins/maestro/skills/code-review/SKILL.md +6 -0
  287. package/plugins/maestro/skills/compliance-check/SKILL.md +16 -0
  288. package/plugins/maestro/skills/debug-workflow/SKILL.md +16 -0
  289. package/plugins/maestro/skills/delegation/SKILL.md +6 -0
  290. package/plugins/maestro/skills/design-dialogue/SKILL.md +6 -0
  291. package/plugins/maestro/skills/execute/SKILL.md +16 -0
  292. package/plugins/maestro/skills/execution/SKILL.md +6 -0
  293. package/plugins/maestro/skills/implementation-planning/SKILL.md +6 -0
  294. package/plugins/maestro/skills/orchestrate/SKILL.md +16 -0
  295. package/plugins/maestro/skills/perf-check/SKILL.md +16 -0
  296. package/plugins/maestro/skills/resume-session/SKILL.md +16 -0
  297. package/plugins/maestro/skills/review-code/SKILL.md +16 -0
  298. package/plugins/maestro/skills/security-audit/SKILL.md +16 -0
  299. package/plugins/maestro/skills/seo-audit/SKILL.md +16 -0
  300. package/plugins/maestro/skills/session-management/SKILL.md +6 -0
  301. package/plugins/maestro/skills/status/SKILL.md +14 -0
  302. package/plugins/maestro/skills/validation/SKILL.md +6 -0
  303. package/plugins/maestro/src/agents/accessibility-specialist.md +163 -0
  304. package/plugins/maestro/src/agents/analytics-engineer.md +182 -0
  305. package/plugins/maestro/src/agents/api-designer.md +124 -0
  306. package/plugins/maestro/src/agents/architect.md +120 -0
  307. package/plugins/maestro/src/agents/cloud-architect.md +134 -0
  308. package/plugins/maestro/src/agents/cobol-engineer.md +127 -0
  309. package/plugins/maestro/src/agents/code-reviewer.md +123 -0
  310. package/plugins/maestro/src/agents/coder.md +132 -0
  311. package/plugins/maestro/src/agents/compliance-reviewer.md +219 -0
  312. package/plugins/maestro/src/agents/content-strategist.md +111 -0
  313. package/plugins/maestro/src/agents/copywriter.md +113 -0
  314. package/plugins/maestro/src/agents/data-engineer.md +130 -0
  315. package/plugins/maestro/src/agents/database-administrator.md +126 -0
  316. package/plugins/maestro/src/agents/db2-dba.md +124 -0
  317. package/plugins/maestro/src/agents/debugger.md +133 -0
  318. package/plugins/maestro/src/agents/design-system-engineer.md +258 -0
  319. package/plugins/maestro/src/agents/devops-engineer.md +138 -0
  320. package/plugins/maestro/src/agents/hlasm-assembler-specialist.md +134 -0
  321. package/plugins/maestro/src/agents/i18n-specialist.md +241 -0
  322. package/plugins/maestro/src/agents/ibm-i-specialist.md +132 -0
  323. package/plugins/maestro/src/agents/integration-engineer.md +133 -0
  324. package/plugins/maestro/src/agents/ml-engineer.md +115 -0
  325. package/plugins/maestro/src/agents/mlops-engineer.md +116 -0
  326. package/plugins/maestro/src/agents/mobile-engineer.md +115 -0
  327. package/plugins/maestro/src/agents/observability-engineer.md +133 -0
  328. package/plugins/maestro/src/agents/performance-engineer.md +139 -0
  329. package/plugins/maestro/src/agents/platform-engineer.md +129 -0
  330. package/plugins/maestro/src/agents/product-manager.md +170 -0
  331. package/plugins/maestro/src/agents/prompt-engineer.md +129 -0
  332. package/plugins/maestro/src/agents/refactor.md +138 -0
  333. package/plugins/maestro/src/agents/release-manager.md +132 -0
  334. package/plugins/maestro/src/agents/security-engineer.md +143 -0
  335. package/plugins/maestro/src/agents/seo-specialist.md +129 -0
  336. package/plugins/maestro/src/agents/site-reliability-engineer.md +131 -0
  337. package/plugins/maestro/src/agents/solutions-architect.md +137 -0
  338. package/plugins/maestro/src/agents/technical-writer.md +129 -0
  339. package/plugins/maestro/src/agents/tester.md +135 -0
  340. package/plugins/maestro/src/agents/ux-designer.md +168 -0
  341. package/plugins/maestro/src/agents/zos-sysprog.md +134 -0
  342. package/plugins/maestro/src/config/setting-resolver.js +32 -0
  343. package/plugins/maestro/src/core/agent-registry.js +67 -0
  344. package/plugins/maestro/src/core/canonical-source.js +39 -0
  345. package/plugins/maestro/src/core/env-file-parser.js +82 -0
  346. package/plugins/maestro/src/core/feature-blocks.js +34 -0
  347. package/plugins/maestro/src/core/logger.js +12 -0
  348. package/plugins/maestro/src/core/markdown-state.js +36 -0
  349. package/plugins/maestro/src/core/policy-rules.js +32 -0
  350. package/plugins/maestro/src/core/project-root-resolver.js +184 -0
  351. package/plugins/maestro/src/core/stdin-reader.js +77 -0
  352. package/plugins/maestro/src/core/version.js +50 -0
  353. package/plugins/maestro/src/entry-points/core-command-registry.js +37 -0
  354. package/plugins/maestro/src/entry-points/preamble-builders.js +54 -0
  355. package/plugins/maestro/src/entry-points/registry.js +199 -0
  356. package/plugins/maestro/src/entry-points/templates/claude-core-command.md.tmpl +38 -0
  357. package/plugins/maestro/src/entry-points/templates/claude-skill.md.tmpl +18 -0
  358. package/plugins/maestro/src/entry-points/templates/codex-core-command.md.tmpl +16 -0
  359. package/plugins/maestro/src/entry-points/templates/codex-skill.md.tmpl +11 -0
  360. package/plugins/maestro/src/entry-points/templates/gemini-command.toml.tmpl +17 -0
  361. package/plugins/maestro/src/entry-points/templates/gemini-core-command.toml.tmpl +30 -0
  362. package/plugins/maestro/src/generated/agent-registry.json +630 -0
  363. package/plugins/maestro/src/generated/hook-registry.json +18 -0
  364. package/plugins/maestro/src/generated/resource-registry.json +16 -0
  365. package/plugins/maestro/src/hooks/logic/after-agent-logic.js +54 -0
  366. package/plugins/maestro/src/hooks/logic/before-agent-logic.js +57 -0
  367. package/plugins/maestro/src/hooks/logic/hook-state.js +127 -0
  368. package/plugins/maestro/src/hooks/logic/session-end-logic.js +17 -0
  369. package/plugins/maestro/src/hooks/logic/session-start-logic.js +25 -0
  370. package/plugins/maestro/src/lib/discovery/index.js +172 -0
  371. package/plugins/maestro/src/lib/errors/index.js +104 -0
  372. package/plugins/maestro/src/lib/framework-detection.js +50 -0
  373. package/plugins/maestro/src/lib/frontmatter/index.js +262 -0
  374. package/plugins/maestro/src/lib/io/index.js +96 -0
  375. package/plugins/maestro/src/lib/naming/index.js +94 -0
  376. package/plugins/maestro/src/lib/validation/index.js +124 -0
  377. package/plugins/maestro/src/lib/yaml-emit.js +38 -0
  378. package/plugins/maestro/src/mcp/content/provider.js +68 -0
  379. package/plugins/maestro/src/mcp/content/runtime-content.js +188 -0
  380. package/plugins/maestro/src/mcp/contracts/cache-path-rejector.js +39 -0
  381. package/plugins/maestro/src/mcp/contracts/downstream-context.js +106 -0
  382. package/plugins/maestro/src/mcp/contracts/plan-schema.js +148 -0
  383. package/plugins/maestro/src/mcp/contracts/workspace-marker.js +61 -0
  384. package/plugins/maestro/src/mcp/core/create-server.js +76 -0
  385. package/plugins/maestro/src/mcp/core/line-reader.js +35 -0
  386. package/plugins/maestro/src/mcp/core/project-root-cache.js +120 -0
  387. package/plugins/maestro/src/mcp/core/protocol-dispatcher.js +274 -0
  388. package/plugins/maestro/src/mcp/core/recovery-hints.js +43 -0
  389. package/plugins/maestro/src/mcp/core/tool-outcome.js +77 -0
  390. package/plugins/maestro/src/mcp/core/tool-registry.js +82 -0
  391. package/plugins/maestro/src/mcp/handlers/assess-task-complexity.js +108 -0
  392. package/plugins/maestro/src/mcp/handlers/blocker-parser.js +34 -0
  393. package/plugins/maestro/src/mcp/handlers/design-gate.js +393 -0
  394. package/plugins/maestro/src/mcp/handlers/get-agent.js +54 -0
  395. package/plugins/maestro/src/mcp/handlers/get-runtime-context.js +49 -0
  396. package/plugins/maestro/src/mcp/handlers/get-skill-content.js +51 -0
  397. package/plugins/maestro/src/mcp/handlers/initialize-workspace.js +45 -0
  398. package/plugins/maestro/src/mcp/handlers/reconciliation.js +224 -0
  399. package/plugins/maestro/src/mcp/handlers/resolve-settings.js +39 -0
  400. package/plugins/maestro/src/mcp/handlers/session-state-core.js +108 -0
  401. package/plugins/maestro/src/mcp/handlers/session-state-tools.js +562 -0
  402. package/plugins/maestro/src/mcp/handlers/validate-plan.js +76 -0
  403. package/plugins/maestro/src/mcp/maestro-server.js +122 -0
  404. package/plugins/maestro/src/mcp/runtime/runtime-config-map.js +70 -0
  405. package/plugins/maestro/src/mcp/tool-packs/content/index.js +80 -0
  406. package/plugins/maestro/src/mcp/tool-packs/contracts.js +30 -0
  407. package/plugins/maestro/src/mcp/tool-packs/index.js +15 -0
  408. package/plugins/maestro/src/mcp/tool-packs/session/index.js +243 -0
  409. package/plugins/maestro/src/mcp/tool-packs/workspace/index.js +98 -0
  410. package/plugins/maestro/src/mcp/utils/extension-root.js +31 -0
  411. package/plugins/maestro/src/mcp/validation/agent-checker.js +81 -0
  412. package/plugins/maestro/src/mcp/validation/dag-checker.js +214 -0
  413. package/plugins/maestro/src/mcp/validation/file-overlap-checker.js +63 -0
  414. package/plugins/maestro/src/mcp/validation/schema-checker.js +108 -0
  415. package/plugins/maestro/src/platforms/codex/runtime-config.js +58 -0
  416. package/plugins/maestro/src/platforms/shared/adapters/conventions.js +29 -0
  417. package/plugins/maestro/src/platforms/shared/adapters/exit-codes.js +6 -0
  418. package/plugins/maestro/src/platforms/shared/adapters/factory.js +40 -0
  419. package/plugins/maestro/src/platforms/shared/agent-names.js +15 -0
  420. package/plugins/maestro/src/platforms/shared/hook-runner.js +52 -0
  421. package/plugins/maestro/src/references/architecture.md +139 -0
  422. package/plugins/maestro/src/references/orchestration-steps.md +193 -0
  423. package/plugins/maestro/src/skills/shared/code-review/SKILL.md +145 -0
  424. package/plugins/maestro/src/skills/shared/delegation/SKILL.md +387 -0
  425. package/plugins/maestro/src/skills/shared/delegation/protocols/agent-base-protocol.md +145 -0
  426. package/plugins/maestro/src/skills/shared/delegation/protocols/filesystem-safety-protocol.md +31 -0
  427. package/plugins/maestro/src/skills/shared/design-dialogue/SKILL.md +284 -0
  428. package/plugins/maestro/src/skills/shared/execution/SKILL.md +258 -0
  429. package/plugins/maestro/src/skills/shared/implementation-planning/SKILL.md +307 -0
  430. package/plugins/maestro/src/skills/shared/session-management/SKILL.md +314 -0
  431. package/plugins/maestro/src/skills/shared/validation/SKILL.md +204 -0
  432. package/plugins/maestro/src/state/session-state.js +113 -0
  433. package/plugins/maestro/src/templates/design-document.md +95 -0
  434. package/plugins/maestro/src/templates/implementation-plan.md +86 -0
  435. package/plugins/maestro/src/templates/session-state.md +68 -0
  436. package/plugins/maestro/src/version.json +3 -0
  437. package/policies/maestro.toml +44 -0
  438. package/qwen/agents/accessibility_specialist.md +18 -0
  439. package/qwen/agents/analytics_engineer.md +20 -0
  440. package/qwen/agents/api_designer.md +17 -0
  441. package/qwen/agents/architect.md +17 -0
  442. package/qwen/agents/cloud_architect.md +17 -0
  443. package/qwen/agents/cobol_engineer.md +20 -0
  444. package/qwen/agents/code_reviewer.md +15 -0
  445. package/qwen/agents/coder.md +20 -0
  446. package/qwen/agents/compliance_reviewer.md +17 -0
  447. package/qwen/agents/content_strategist.md +17 -0
  448. package/qwen/agents/copywriter.md +17 -0
  449. package/qwen/agents/data_engineer.md +20 -0
  450. package/qwen/agents/database_administrator.md +19 -0
  451. package/qwen/agents/db2_dba.md +19 -0
  452. package/qwen/agents/debugger.md +17 -0
  453. package/qwen/agents/design_system_engineer.md +20 -0
  454. package/qwen/agents/devops_engineer.md +21 -0
  455. package/qwen/agents/hlasm_assembler_specialist.md +20 -0
  456. package/qwen/agents/i18n_specialist.md +19 -0
  457. package/qwen/agents/ibm_i_specialist.md +20 -0
  458. package/qwen/agents/integration_engineer.md +21 -0
  459. package/qwen/agents/ml_engineer.md +21 -0
  460. package/qwen/agents/mlops_engineer.md +21 -0
  461. package/qwen/agents/mobile_engineer.md +21 -0
  462. package/qwen/agents/observability_engineer.md +21 -0
  463. package/qwen/agents/performance_engineer.md +19 -0
  464. package/qwen/agents/platform_engineer.md +22 -0
  465. package/qwen/agents/product_manager.md +18 -0
  466. package/qwen/agents/prompt_engineer.md +20 -0
  467. package/qwen/agents/refactor.md +20 -0
  468. package/qwen/agents/release_manager.md +20 -0
  469. package/qwen/agents/security_engineer.md +19 -0
  470. package/qwen/agents/seo_specialist.md +19 -0
  471. package/qwen/agents/site_reliability_engineer.md +19 -0
  472. package/qwen/agents/solutions_architect.md +17 -0
  473. package/qwen/agents/technical_writer.md +19 -0
  474. package/qwen/agents/tester.md +21 -0
  475. package/qwen/agents/ux_designer.md +18 -0
  476. package/qwen/agents/zos_sysprog.md +19 -0
  477. package/qwen/hooks.json +56 -0
  478. package/qwen-extension.json +56 -0
  479. package/scripts/check-layer-boundaries.js +74 -0
  480. package/scripts/generate.js +155 -0
  481. package/scripts/install-codex-plugin.js +167 -0
  482. package/scripts/install-git-hooks.js +43 -0
  483. package/scripts/npm-publish-idempotent.js +338 -0
  484. package/scripts/package-release-artifacts.js +156 -0
  485. package/scripts/release-artifact-manifest.js +378 -0
  486. package/scripts/release-version-metadata.js +129 -0
  487. package/scripts/update-versions.js +33 -0
  488. package/scripts/verify-npm-pack.js +85 -0
  489. package/scripts/verify-release-artifacts.js +95 -0
  490. package/src/agents/accessibility-specialist.md +163 -0
  491. package/src/agents/analytics-engineer.md +182 -0
  492. package/src/agents/api-designer.md +124 -0
  493. package/src/agents/architect.md +120 -0
  494. package/src/agents/cloud-architect.md +134 -0
  495. package/src/agents/cobol-engineer.md +127 -0
  496. package/src/agents/code-reviewer.md +123 -0
  497. package/src/agents/coder.md +132 -0
  498. package/src/agents/compliance-reviewer.md +219 -0
  499. package/src/agents/content-strategist.md +111 -0
  500. package/src/agents/copywriter.md +113 -0
  501. package/src/agents/data-engineer.md +130 -0
  502. package/src/agents/database-administrator.md +126 -0
  503. package/src/agents/db2-dba.md +124 -0
  504. package/src/agents/debugger.md +133 -0
  505. package/src/agents/design-system-engineer.md +258 -0
  506. package/src/agents/devops-engineer.md +138 -0
  507. package/src/agents/hlasm-assembler-specialist.md +134 -0
  508. package/src/agents/i18n-specialist.md +241 -0
  509. package/src/agents/ibm-i-specialist.md +132 -0
  510. package/src/agents/integration-engineer.md +133 -0
  511. package/src/agents/ml-engineer.md +115 -0
  512. package/src/agents/mlops-engineer.md +116 -0
  513. package/src/agents/mobile-engineer.md +115 -0
  514. package/src/agents/observability-engineer.md +133 -0
  515. package/src/agents/performance-engineer.md +139 -0
  516. package/src/agents/platform-engineer.md +129 -0
  517. package/src/agents/product-manager.md +170 -0
  518. package/src/agents/prompt-engineer.md +129 -0
  519. package/src/agents/refactor.md +138 -0
  520. package/src/agents/release-manager.md +132 -0
  521. package/src/agents/security-engineer.md +143 -0
  522. package/src/agents/seo-specialist.md +129 -0
  523. package/src/agents/site-reliability-engineer.md +131 -0
  524. package/src/agents/solutions-architect.md +137 -0
  525. package/src/agents/technical-writer.md +129 -0
  526. package/src/agents/tester.md +135 -0
  527. package/src/agents/ux-designer.md +168 -0
  528. package/src/agents/zos-sysprog.md +134 -0
  529. package/src/config/setting-resolver.js +32 -0
  530. package/src/core/agent-registry.js +67 -0
  531. package/src/core/canonical-source.js +39 -0
  532. package/src/core/env-file-parser.js +82 -0
  533. package/src/core/feature-blocks.js +34 -0
  534. package/src/core/logger.js +12 -0
  535. package/src/core/markdown-state.js +36 -0
  536. package/src/core/policy-rules.js +32 -0
  537. package/src/core/project-root-resolver.js +184 -0
  538. package/src/core/stdin-reader.js +77 -0
  539. package/src/core/version.js +50 -0
  540. package/src/entry-points/core-command-registry.js +37 -0
  541. package/src/entry-points/preamble-builders.js +54 -0
  542. package/src/entry-points/registry.js +199 -0
  543. package/src/entry-points/templates/claude-core-command.md.tmpl +38 -0
  544. package/src/entry-points/templates/claude-skill.md.tmpl +18 -0
  545. package/src/entry-points/templates/codex-core-command.md.tmpl +16 -0
  546. package/src/entry-points/templates/codex-skill.md.tmpl +11 -0
  547. package/src/entry-points/templates/gemini-command.toml.tmpl +17 -0
  548. package/src/entry-points/templates/gemini-core-command.toml.tmpl +30 -0
  549. package/src/generated/agent-registry.json +630 -0
  550. package/src/generated/hook-registry.json +18 -0
  551. package/src/generated/resource-registry.json +16 -0
  552. package/src/generator/entry-point-expander.js +182 -0
  553. package/src/generator/file-writer.js +167 -0
  554. package/src/generator/generation-session.js +62 -0
  555. package/src/generator/manifest-curator.js +31 -0
  556. package/src/generator/manifest-expander.js +256 -0
  557. package/src/generator/payload-builder.js +217 -0
  558. package/src/generator/registry-scanner.js +130 -0
  559. package/src/generator/stale-pruner.js +101 -0
  560. package/src/hooks/logic/after-agent-logic.js +54 -0
  561. package/src/hooks/logic/before-agent-logic.js +57 -0
  562. package/src/hooks/logic/hook-state.js +127 -0
  563. package/src/hooks/logic/session-end-logic.js +17 -0
  564. package/src/hooks/logic/session-start-logic.js +25 -0
  565. package/src/lib/discovery/index.js +172 -0
  566. package/src/lib/errors/index.js +104 -0
  567. package/src/lib/framework-detection.js +50 -0
  568. package/src/lib/frontmatter/index.js +262 -0
  569. package/src/lib/io/index.js +96 -0
  570. package/src/lib/naming/index.js +94 -0
  571. package/src/lib/validation/index.js +124 -0
  572. package/src/lib/yaml-emit.js +38 -0
  573. package/src/manifest.js +11 -0
  574. package/src/mcp/content/provider.js +68 -0
  575. package/src/mcp/content/runtime-content.js +188 -0
  576. package/src/mcp/contracts/cache-path-rejector.js +39 -0
  577. package/src/mcp/contracts/downstream-context.js +106 -0
  578. package/src/mcp/contracts/plan-schema.js +148 -0
  579. package/src/mcp/contracts/workspace-marker.js +61 -0
  580. package/src/mcp/core/create-server.js +76 -0
  581. package/src/mcp/core/line-reader.js +35 -0
  582. package/src/mcp/core/project-root-cache.js +120 -0
  583. package/src/mcp/core/protocol-dispatcher.js +274 -0
  584. package/src/mcp/core/recovery-hints.js +43 -0
  585. package/src/mcp/core/tool-outcome.js +77 -0
  586. package/src/mcp/core/tool-registry.js +82 -0
  587. package/src/mcp/handlers/assess-task-complexity.js +108 -0
  588. package/src/mcp/handlers/blocker-parser.js +34 -0
  589. package/src/mcp/handlers/design-gate.js +393 -0
  590. package/src/mcp/handlers/get-agent.js +54 -0
  591. package/src/mcp/handlers/get-runtime-context.js +49 -0
  592. package/src/mcp/handlers/get-skill-content.js +51 -0
  593. package/src/mcp/handlers/initialize-workspace.js +45 -0
  594. package/src/mcp/handlers/reconciliation.js +224 -0
  595. package/src/mcp/handlers/resolve-settings.js +39 -0
  596. package/src/mcp/handlers/session-state-core.js +108 -0
  597. package/src/mcp/handlers/session-state-tools.js +562 -0
  598. package/src/mcp/handlers/validate-plan.js +76 -0
  599. package/src/mcp/maestro-server.js +122 -0
  600. package/src/mcp/runtime/runtime-config-map.js +70 -0
  601. package/src/mcp/tool-packs/content/index.js +80 -0
  602. package/src/mcp/tool-packs/contracts.js +30 -0
  603. package/src/mcp/tool-packs/index.js +15 -0
  604. package/src/mcp/tool-packs/session/index.js +243 -0
  605. package/src/mcp/tool-packs/workspace/index.js +98 -0
  606. package/src/mcp/utils/extension-root.js +31 -0
  607. package/src/mcp/validation/agent-checker.js +81 -0
  608. package/src/mcp/validation/dag-checker.js +214 -0
  609. package/src/mcp/validation/file-overlap-checker.js +63 -0
  610. package/src/mcp/validation/schema-checker.js +108 -0
  611. package/src/platforms/claude/metadata.js +96 -0
  612. package/src/platforms/claude/runtime-config.js +60 -0
  613. package/src/platforms/codex/metadata.js +107 -0
  614. package/src/platforms/codex/runtime-config.js +58 -0
  615. package/src/platforms/gemini/metadata.js +27 -0
  616. package/src/platforms/gemini/runtime-config.js +62 -0
  617. package/src/platforms/metadata-shared.js +133 -0
  618. package/src/platforms/metadata.js +29 -0
  619. package/src/platforms/qwen/metadata.js +27 -0
  620. package/src/platforms/qwen/runtime-config.js +62 -0
  621. package/src/platforms/shared/adapters/claude-adapter.js +36 -0
  622. package/src/platforms/shared/adapters/conventions.js +29 -0
  623. package/src/platforms/shared/adapters/exit-codes.js +6 -0
  624. package/src/platforms/shared/adapters/factory.js +40 -0
  625. package/src/platforms/shared/adapters/gemini-adapter.js +34 -0
  626. package/src/platforms/shared/adapters/qwen-adapter.js +93 -0
  627. package/src/platforms/shared/agent-names.js +15 -0
  628. package/src/platforms/shared/hook-runner.js +52 -0
  629. package/src/references/architecture.md +139 -0
  630. package/src/references/orchestration-steps.md +193 -0
  631. package/src/scripts/ensure-workspace.js +14 -0
  632. package/src/scripts/read-active-session.js +26 -0
  633. package/src/scripts/read-setting.js +18 -0
  634. package/src/scripts/read-state.js +17 -0
  635. package/src/scripts/write-state.js +22 -0
  636. package/src/skills/shared/code-review/SKILL.md +145 -0
  637. package/src/skills/shared/delegation/SKILL.md +387 -0
  638. package/src/skills/shared/delegation/protocols/agent-base-protocol.md +145 -0
  639. package/src/skills/shared/delegation/protocols/filesystem-safety-protocol.md +31 -0
  640. package/src/skills/shared/design-dialogue/SKILL.md +284 -0
  641. package/src/skills/shared/execution/SKILL.md +258 -0
  642. package/src/skills/shared/implementation-planning/SKILL.md +307 -0
  643. package/src/skills/shared/session-management/SKILL.md +314 -0
  644. package/src/skills/shared/validation/SKILL.md +204 -0
  645. package/src/state/session-state.js +113 -0
  646. package/src/templates/design-document.md +95 -0
  647. package/src/templates/implementation-plan.md +86 -0
  648. package/src/templates/session-state.md +68 -0
  649. package/src/transforms/agent-stub.js +29 -0
  650. package/src/transforms/extract-examples.js +63 -0
  651. package/src/transforms/index.js +35 -0
  652. package/src/transforms/parse-frontmatter.js +23 -0
  653. package/src/transforms/rebuild-frontmatter.js +147 -0
  654. package/src/transforms/skill-discovery-stub.js +27 -0
  655. package/src/transforms/skill-metadata.js +14 -0
@@ -0,0 +1,95 @@
1
+ ---
2
+ title: "<topic>"
3
+ created: "<ISO 8601 timestamp>"
4
+ status: "draft"
5
+ authors: ["TechLead", "User"]
6
+ type: "design"
7
+ design_depth: "standard" # one of: quick, standard, deep
8
+ task_complexity: "medium" # one of: simple, medium, complex
9
+ ---
10
+
11
+ # <Topic> Design Document
12
+
13
+ ## Problem Statement
14
+
15
+ [Clear description of the problem being solved, including context and motivation]
16
+
17
+ ## Requirements
18
+
19
+ ### Functional Requirements
20
+
21
+ 1. **REQ-1**: [Requirement with measurable acceptance criteria]
22
+
23
+ ### Non-Functional Requirements
24
+
25
+ 1. **REQ-N**: [Performance, security, scalability, reliability requirements]
26
+
27
+ ### Constraints
28
+
29
+ - [Technical, organizational, or business constraints]
30
+
31
+ ## Approach
32
+
33
+ ### Selected Approach
34
+
35
+ **[Approach Name]**
36
+
37
+ [Description of the selected approach and why it was chosen]
38
+
39
+ ### Alternatives Considered
40
+
41
+ #### [Alternative 1 Name]
42
+
43
+ - **Description**: [Brief overview]
44
+ - **Pros**: [Key advantages]
45
+ - **Cons**: [Key disadvantages]
46
+ - **Rejected Because**: [Specific reason this was not selected]
47
+
48
+ ### Decision Matrix
49
+
50
+ *(Standard and Deep modes only — omit in Quick mode)*
51
+
52
+ | Criterion | Weight | [Approach A] | [Approach B] |
53
+ |-----------|--------|--------------|--------------|
54
+ | [Criterion from requirements] | [%] | [1-5]: [justification] | [1-5]: [justification] |
55
+ | **Weighted Total** | | [score] | [score] |
56
+
57
+ ## Architecture
58
+
59
+ <!-- Standard+Deep: Include rationale annotations on key decisions.
60
+ Format: [decision] — *[rationale referencing constraints or user-stated preferences]*
61
+ Deep only: Include per-decision alternatives considered.
62
+ Format: [decision] *(considered: [alt A] — rejected because [reason]; [alt B] — rejected because [reason])*
63
+ Deep only: Tag decisions with Traces To: REQ-N -->
64
+
65
+ ### Component Diagram
66
+
67
+ ```
68
+ [ASCII or text-based component diagram showing key components and their relationships]
69
+ ```
70
+
71
+ ### Data Flow
72
+
73
+ [Description of how data flows through the system, including inputs, transformations, and outputs]
74
+
75
+ ### Key Interfaces
76
+
77
+ ```
78
+ [Interface definitions with type signatures for the primary contracts between components]
79
+ ```
80
+
81
+ ## Agent Team
82
+
83
+ | Phase | Agent(s) | Parallel | Deliverables |
84
+ |-------|----------|----------|--------------|
85
+ | 1 | [agent] | No | [deliverable] |
86
+
87
+ ## Risk Assessment
88
+
89
+ | Risk | Severity | Likelihood | Mitigation |
90
+ |------|----------|------------|------------|
91
+ | [risk] | HIGH/MEDIUM/LOW | HIGH/MEDIUM/LOW | [mitigation strategy] |
92
+
93
+ ## Success Criteria
94
+
95
+ 1. [Measurable criterion that indicates successful completion]
@@ -0,0 +1,86 @@
1
+ ---
2
+ title: "<topic> Implementation Plan"
3
+ design_ref: "<path to design document>"
4
+ created: "<ISO 8601 timestamp>"
5
+ status: "draft"
6
+ total_phases: <integer>
7
+ estimated_files: <integer>
8
+ task_complexity: "medium" # one of: simple, medium, complex
9
+ ---
10
+
11
+ # <Topic> Implementation Plan
12
+
13
+ ## Plan Overview
14
+
15
+ - **Total phases**: [N]
16
+ - **Agents involved**: [list of agent names]
17
+ - **Estimated effort**: [summary of scope and complexity]
18
+
19
+ ## Dependency Graph
20
+
21
+ ```
22
+ [ASCII diagram showing phase dependencies and parallel opportunities]
23
+ ```
24
+
25
+ ## Execution Strategy
26
+
27
+ | Stage | Phases | Execution | Agent Count | Notes |
28
+ |-------|--------|-----------|-------------|-------|
29
+ | 1 | Phase 1 | Sequential | 1 | Foundation |
30
+
31
+ ## Phase 1: <Phase Name>
32
+
33
+ ### Objective
34
+ [Clear, measurable statement of what this phase delivers]
35
+
36
+ ### Agent: <agent-name>
37
+ ### Parallel: <Yes/No>
38
+
39
+ ### Files to Create
40
+
41
+ - `path/to/file` — [Purpose, key interfaces/classes to define]
42
+
43
+ ### Files to Modify
44
+
45
+ - `path/to/existing/file` — [What changes and why]
46
+
47
+ ### Implementation Details
48
+
49
+ [Interface definitions, base class contracts, dependency injection patterns, error handling strategy]
50
+
51
+ ### Validation
52
+
53
+ - [Commands to run and expected outcomes]
54
+
55
+ ### Dependencies
56
+
57
+ - Blocked by: [Phase IDs or "None"]
58
+ - Blocks: [Phase IDs or "None"]
59
+
60
+ ---
61
+
62
+ ## File Inventory
63
+
64
+ | # | File | Phase | Purpose |
65
+ |---|------|-------|---------|
66
+ | 1 | `path/to/file` | 1 | [Purpose] |
67
+
68
+ ## Risk Classification
69
+
70
+ | Phase | Risk | Rationale |
71
+ |-------|------|-----------|
72
+ | 1 | LOW/MEDIUM/HIGH | [Why this risk level — complexity, number of dependents, reversibility] |
73
+
74
+ ## Execution Profile
75
+
76
+ ```
77
+ Execution Profile:
78
+ - Total phases: [N]
79
+ - Parallelizable phases: [M] (in [B] batches)
80
+ - Sequential-only phases: [S]
81
+ - Estimated parallel wall time: [time estimate based on batch execution]
82
+ - Estimated sequential wall time: [time estimate based on serial execution]
83
+
84
+ Note: Native subagents currently run without user approval gates.
85
+ All tool calls are auto-approved without user confirmation.
86
+ ```
@@ -0,0 +1,68 @@
1
+ ---
2
+ session_id: "<YYYY-MM-DD-topic-slug>"
3
+ task: "<user's original task description>"
4
+ created: "<ISO 8601 timestamp>"
5
+ updated: "<ISO 8601 timestamp>"
6
+ status: "in_progress"
7
+ workflow_mode: "standard"
8
+ design_document: "<state_dir>/plans/<YYYY-MM-DD-topic-slug>-design.md"
9
+ implementation_plan: "<state_dir>/plans/<YYYY-MM-DD-topic-slug>-impl-plan.md"
10
+ current_phase: 1
11
+ total_phases: <integer>
12
+ execution_mode: null
13
+ execution_backend: null
14
+ current_batch: null
15
+ task_complexity: null
16
+
17
+ token_usage:
18
+ total_input: 0
19
+ total_output: 0
20
+ total_cached: 0
21
+ by_agent: {}
22
+
23
+ phases:
24
+ - id: 1
25
+ name: "<phase name>"
26
+ status: "pending"
27
+ agents: []
28
+ parallel: false
29
+ started: null
30
+ completed: null
31
+ blocked_by: []
32
+ files_created: []
33
+ files_modified: []
34
+ files_deleted: []
35
+ downstream_context:
36
+ key_interfaces_introduced: []
37
+ patterns_established: []
38
+ integration_points: []
39
+ assumptions: []
40
+ warnings: []
41
+ errors: []
42
+ retry_count: 0
43
+ ---
44
+
45
+ # <Topic> Orchestration Log
46
+
47
+ ## Phase 1: <Phase Name>
48
+
49
+ ### Status
50
+ Pending
51
+
52
+ ### Agent Output
53
+ [Agent output will be recorded here as execution proceeds]
54
+
55
+ ### Files Changed
56
+ - Created: [none yet]
57
+ - Modified: [none yet]
58
+ - Deleted: [none yet]
59
+
60
+ ### Downstream Context
61
+ - Key Interfaces Introduced: [none yet]
62
+ - Patterns Established: [none yet]
63
+ - Integration Points: [none yet]
64
+ - Assumptions: [none yet]
65
+ - Warnings: [none yet]
66
+
67
+ ### Validation Result
68
+ [Pending]
@@ -0,0 +1,29 @@
1
+ const { extractValue, splitAtBoundary } = require('../lib/frontmatter');
2
+ const { toKebabCase } = require('../lib/naming');
3
+
4
+ function canonicalAgentName(name, runtime) {
5
+ if (!name) return name;
6
+ if (runtime.agentNaming === 'snake_case') {
7
+ return toKebabCase(name);
8
+ }
9
+ return name;
10
+ }
11
+
12
+ function replaceBodyWithStub(content, stubBody) {
13
+ const { raw } = splitAtBoundary(content);
14
+ if (raw) {
15
+ return '---\n' + raw + '\n---\n\n' + stubBody;
16
+ }
17
+ return stubBody;
18
+ }
19
+
20
+ function agentStub(content, runtime) {
21
+ const name = canonicalAgentName(extractValue(content, 'name') || '', runtime);
22
+ const stubBody =
23
+ `Agent methodology loaded via MCP tool \`get_agent\`. ` +
24
+ `Call \`get_agent(agents: ["${name}"])\` to read the full methodology at delegation time.\n`;
25
+
26
+ return replaceBodyWithStub(content, stubBody);
27
+ }
28
+
29
+ module.exports = agentStub;
@@ -0,0 +1,63 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * Transform: extract-examples
5
+ *
6
+ * For Claude runtime, extracts <example>...</example> blocks from the body
7
+ * and stores them in the shared pipeline state. Other runtimes pass through
8
+ * unchanged.
9
+ *
10
+ * @param {string} content - Full agent file (pass-through)
11
+ * @param {object} runtime - Runtime config
12
+ * @param {object} options - Pipeline options with shared state
13
+ * @returns {string} Content passed through unchanged
14
+ */
15
+ function extractExamplesTransform(content, runtime, options) {
16
+ if (runtime.name !== 'claude') return content;
17
+
18
+ const { examples, remaining } = extractExamples(options.state.body);
19
+ options.state.body = remaining;
20
+ options.state.examples = examples;
21
+ return content;
22
+ }
23
+
24
+ /**
25
+ * Extract <example>...</example> blocks from body text.
26
+ * @param {string} body - Body text to extract examples from
27
+ * @returns {{ examples: string[], remaining: string }}
28
+ */
29
+ function extractExamples(body) {
30
+ const examples = [];
31
+ const lines = body.split('\n');
32
+ const remainingLines = [];
33
+ let inExample = false;
34
+ let currentExample = [];
35
+
36
+ for (const line of lines) {
37
+ if (line.trim() === '<example>') {
38
+ inExample = true;
39
+ currentExample = ['<example>'];
40
+ } else if (line.trim() === '</example>') {
41
+ inExample = false;
42
+ currentExample.push('</example>');
43
+ examples.push(currentExample.join('\n'));
44
+ currentExample = [];
45
+ } else if (inExample) {
46
+ currentExample.push(line);
47
+ } else {
48
+ remainingLines.push(line);
49
+ }
50
+ }
51
+
52
+ if (inExample) {
53
+ throw new Error('Unclosed <example> tag in agent body');
54
+ }
55
+
56
+ let remaining = remainingLines.join('\n');
57
+ remaining = remaining.replace(/\n{3,}/g, '\n\n');
58
+ remaining = remaining.replace(/^\n{2,}/, '\n');
59
+
60
+ return { examples, remaining };
61
+ }
62
+
63
+ module.exports = extractExamplesTransform;
@@ -0,0 +1,35 @@
1
+ 'use strict';
2
+
3
+ const path = require('node:path');
4
+ const { discover } = require('../lib/discovery');
5
+
6
+ const TRANSFORMS_DIR = path.resolve(__dirname);
7
+
8
+ const entries = discover({
9
+ dir: TRANSFORMS_DIR,
10
+ pattern: '*.js',
11
+ identity: (filepath) => path.basename(filepath, '.js'),
12
+ validate: (entry) => entry.id !== 'index',
13
+ });
14
+
15
+ const transforms = Object.create(null);
16
+ for (const entry of entries) {
17
+ transforms[entry.id] = require(path.join(TRANSFORMS_DIR, `${entry.id}.js`));
18
+ }
19
+
20
+ /**
21
+ * Resolve a transform name to its function.
22
+ * Supports parameterized transforms like 'strip-feature:flagName'.
23
+ * @param {string} name
24
+ * @returns {{ fn: Function, param: string|null }}
25
+ */
26
+ function resolve(name) {
27
+ const [baseName, param] = name.split(':');
28
+ const fn = transforms[baseName];
29
+ if (!fn) {
30
+ throw new Error(`Unknown transform: "${baseName}"`);
31
+ }
32
+ return { fn, param: param || null };
33
+ }
34
+
35
+ module.exports = { resolve, transforms };
@@ -0,0 +1,23 @@
1
+ 'use strict';
2
+
3
+ const { parse } = require('../lib/frontmatter');
4
+
5
+ /**
6
+ * Transform: parse-frontmatter
7
+ *
8
+ * Parses YAML frontmatter from agent content and stores the parsed
9
+ * frontmatter object and body string into the shared pipeline state.
10
+ *
11
+ * @param {string} content - Full agent file with --- delimited frontmatter
12
+ * @param {object} _runtime - Runtime config (unused)
13
+ * @param {object} options - Pipeline options with shared state
14
+ * @returns {string} Content passed through unchanged
15
+ */
16
+ function parseFrontmatterTransform(content, _runtime, options) {
17
+ const { frontmatter, body } = parse(content);
18
+ options.state.frontmatter = frontmatter;
19
+ options.state.body = body;
20
+ return content;
21
+ }
22
+
23
+ module.exports = parseFrontmatterTransform;
@@ -0,0 +1,147 @@
1
+ 'use strict';
2
+
3
+ const { toSnakeCase } = require('../lib/naming');
4
+ const { escapeYaml } = require('../lib/frontmatter');
5
+ const { emitBlockList } = require('../lib/yaml-emit');
6
+
7
+ /**
8
+ * Per-field emitters. Each returns the YAML line(s) to append, or an
9
+ * empty array to skip the field entirely.
10
+ *
11
+ * Context shape:
12
+ * - `name` - canonical agent name (snake_case or kebab-case)
13
+ * - `frontmatter` - parsed input frontmatter
14
+ * - `description` - final description (may have examples appended for claude)
15
+ * - `tools` - flattened tool list (after per-runtime mapping)
16
+ * - `runtime` - full runtime config
17
+ * - `fm` - runtime.agentFrontmatter config (shape hints)
18
+ */
19
+ const FIELDS = {
20
+ name: (ctx) =>
21
+ ctx.name != null && ctx.name !== '' ? [`name: ${ctx.name}`] : [],
22
+
23
+ kind: (ctx) => (ctx.fm.kind ? [`kind: ${ctx.fm.kind}`] : []),
24
+
25
+ description: (ctx) => {
26
+ if (ctx.runtime.name === 'claude' && ctx.description.includes('\n')) {
27
+ return [
28
+ 'description: |',
29
+ ...ctx.description.split('\n').map((line) => ` ${line}`),
30
+ ];
31
+ }
32
+ return [`description: "${escapeYaml(ctx.frontmatter.description || '')}"`];
33
+ },
34
+
35
+ model: (ctx) => (ctx.fm.model ? [`model: ${ctx.fm.model}`] : []),
36
+
37
+ color: (ctx) =>
38
+ ctx.frontmatter.color ? [`color: ${ctx.frontmatter.color}`] : [],
39
+
40
+ tools: (ctx) => emitBlockList('tools', ctx.tools),
41
+
42
+ temperature: (ctx) =>
43
+ ctx.fm.hasTemperature && ctx.frontmatter.temperature != null
44
+ ? [`temperature: ${ctx.frontmatter.temperature}`]
45
+ : [],
46
+
47
+ turns: (ctx) =>
48
+ ctx.fm.turnsField && ctx.frontmatter.max_turns != null
49
+ ? [`${ctx.fm.turnsField}: ${ctx.frontmatter.max_turns}`]
50
+ : [],
51
+
52
+ timeout: (ctx) =>
53
+ ctx.fm.hasTimeout && ctx.frontmatter.timeout_mins != null
54
+ ? [`timeout_mins: ${ctx.frontmatter.timeout_mins}`]
55
+ : [],
56
+ };
57
+
58
+ const DEFAULT_FIELD_ORDER = [
59
+ 'name',
60
+ 'kind',
61
+ 'description',
62
+ 'model',
63
+ 'turns',
64
+ 'tools',
65
+ ];
66
+
67
+ const RUNTIME_FIELD_ORDER = {
68
+ claude: ['name', 'kind', 'description', 'model', 'color', 'turns', 'tools'],
69
+ gemini: [
70
+ 'name',
71
+ 'kind',
72
+ 'description',
73
+ 'model',
74
+ 'tools',
75
+ 'temperature',
76
+ 'turns',
77
+ 'timeout',
78
+ ],
79
+ };
80
+
81
+ function resolveTools(frontmatter, runtime) {
82
+ const overrideKey = `tools.${runtime.name}`;
83
+ if (frontmatter[overrideKey]) {
84
+ return frontmatter[overrideKey];
85
+ }
86
+
87
+ return (frontmatter.tools || [])
88
+ .map((tool) => {
89
+ const mapped = runtime.tools && runtime.tools[tool];
90
+ if (Array.isArray(mapped)) return mapped;
91
+ return mapped || tool;
92
+ })
93
+ .flat();
94
+ }
95
+
96
+ function buildDescription(baseDescription, examples, runtime) {
97
+ if (runtime.name === 'claude' && examples.length > 0) {
98
+ return baseDescription + '\n\n' + examples.join('\n');
99
+ }
100
+ return baseDescription;
101
+ }
102
+
103
+ /**
104
+ * Transform: rebuild-frontmatter
105
+ *
106
+ * Reads parsed frontmatter, body, and optional examples from the shared
107
+ * pipeline state and produces the final output content with runtime-specific
108
+ * frontmatter formatting.
109
+ *
110
+ * @param {string} _content - Original content (unused; state drives output)
111
+ * @param {object} runtime - Runtime config (name, agentNaming, agentFrontmatter, tools)
112
+ * @param {object} options - Pipeline options with shared state
113
+ * @returns {string} Final content with rebuilt frontmatter
114
+ */
115
+ function rebuildFrontmatterTransform(_content, runtime, options) {
116
+ const frontmatter = options.state.frontmatter || {};
117
+ const body = options.state.body != null ? options.state.body : '';
118
+ const examples = options.state.examples || [];
119
+ const fm = runtime.agentFrontmatter || {};
120
+
121
+ const name =
122
+ runtime.agentNaming === 'snake_case'
123
+ ? toSnakeCase(frontmatter.name)
124
+ : frontmatter.name;
125
+
126
+ const ctx = {
127
+ name,
128
+ frontmatter,
129
+ description: buildDescription(frontmatter.description || '', examples, runtime),
130
+ tools: resolveTools(frontmatter, runtime),
131
+ runtime,
132
+ fm,
133
+ };
134
+
135
+ const fieldOrder = RUNTIME_FIELD_ORDER[runtime.name] || DEFAULT_FIELD_ORDER;
136
+ const lines = ['---'];
137
+ for (const fieldName of fieldOrder) {
138
+ const emit = FIELDS[fieldName];
139
+ if (!emit) continue;
140
+ lines.push(...emit(ctx));
141
+ }
142
+ lines.push('---');
143
+
144
+ return lines.join('\n') + '\n' + body;
145
+ }
146
+
147
+ module.exports = rebuildFrontmatterTransform;
@@ -0,0 +1,27 @@
1
+ const { parse } = require('../lib/frontmatter');
2
+
3
+ function skillDiscoveryStub(content, runtime) {
4
+ const { frontmatter } = parse(content);
5
+ const name = frontmatter.name;
6
+ const description = frontmatter.description;
7
+ const lines = ['---'];
8
+
9
+ if (name) {
10
+ lines.push(`name: ${name}`);
11
+ }
12
+ if (description) {
13
+ lines.push(`description: ${description}`);
14
+ }
15
+ if (runtime.name === 'claude') {
16
+ lines.push('user-invocable: false');
17
+ }
18
+
19
+ lines.push('---');
20
+ lines.push('');
21
+ lines.push(`Methodology loaded via MCP. Call \`get_skill_content(resources: ["${name}"])\`.`);
22
+ lines.push('');
23
+
24
+ return lines.join('\n');
25
+ }
26
+
27
+ module.exports = skillDiscoveryStub;
@@ -0,0 +1,14 @@
1
+ 'use strict';
2
+
3
+ const { splitAtBoundary } = require('../lib/frontmatter');
4
+
5
+ function skillMetadata(content, runtime) {
6
+ if (runtime.name !== 'claude') return content;
7
+
8
+ const { raw, body } = splitAtBoundary(content);
9
+ if (!raw) return content;
10
+
11
+ return '---\n' + raw + '\nuser-invocable: false\n---' + (body ? '\n' + body : '');
12
+ }
13
+
14
+ module.exports = skillMetadata;