@josstei/maestro 1.6.4-rc.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.
- package/.agents/plugins/marketplace.json +20 -0
- package/CHANGELOG.md +485 -0
- package/EXAMPLES.md +255 -0
- package/GEMINI.md +231 -0
- package/LICENSE +201 -0
- package/QWEN.md +241 -0
- package/README.md +220 -0
- package/agents/accessibility_specialist.md +20 -0
- package/agents/analytics_engineer.md +22 -0
- package/agents/api_designer.md +19 -0
- package/agents/architect.md +19 -0
- package/agents/cloud_architect.md +19 -0
- package/agents/cobol_engineer.md +22 -0
- package/agents/code_reviewer.md +17 -0
- package/agents/coder.md +22 -0
- package/agents/compliance_reviewer.md +19 -0
- package/agents/content_strategist.md +19 -0
- package/agents/copywriter.md +19 -0
- package/agents/data_engineer.md +22 -0
- package/agents/database_administrator.md +21 -0
- package/agents/db2_dba.md +21 -0
- package/agents/debugger.md +19 -0
- package/agents/design_system_engineer.md +22 -0
- package/agents/devops_engineer.md +23 -0
- package/agents/hlasm_assembler_specialist.md +22 -0
- package/agents/i18n_specialist.md +21 -0
- package/agents/ibm_i_specialist.md +22 -0
- package/agents/integration_engineer.md +23 -0
- package/agents/ml_engineer.md +23 -0
- package/agents/mlops_engineer.md +23 -0
- package/agents/mobile_engineer.md +23 -0
- package/agents/observability_engineer.md +23 -0
- package/agents/performance_engineer.md +21 -0
- package/agents/platform_engineer.md +24 -0
- package/agents/product_manager.md +20 -0
- package/agents/prompt_engineer.md +22 -0
- package/agents/refactor.md +22 -0
- package/agents/release_manager.md +22 -0
- package/agents/security_engineer.md +21 -0
- package/agents/seo_specialist.md +21 -0
- package/agents/site_reliability_engineer.md +21 -0
- package/agents/solutions_architect.md +19 -0
- package/agents/technical_writer.md +21 -0
- package/agents/tester.md +23 -0
- package/agents/ux_designer.md +20 -0
- package/agents/zos_sysprog.md +21 -0
- package/bin/maestro-mcp-server.js +10 -0
- package/claude/.claude-plugin/plugin.json +21 -0
- package/claude/.mcp.json +11 -0
- package/claude/README.md +191 -0
- package/claude/agents/accessibility-specialist.md +36 -0
- package/claude/agents/analytics-engineer.md +38 -0
- package/claude/agents/api-designer.md +33 -0
- package/claude/agents/architect.md +33 -0
- package/claude/agents/cloud-architect.md +33 -0
- package/claude/agents/cobol-engineer.md +38 -0
- package/claude/agents/code-reviewer.md +31 -0
- package/claude/agents/coder.md +38 -0
- package/claude/agents/compliance-reviewer.md +33 -0
- package/claude/agents/content-strategist.md +33 -0
- package/claude/agents/copywriter.md +33 -0
- package/claude/agents/data-engineer.md +37 -0
- package/claude/agents/database-administrator.md +37 -0
- package/claude/agents/db2-dba.md +37 -0
- package/claude/agents/debugger.md +32 -0
- package/claude/agents/design-system-engineer.md +38 -0
- package/claude/agents/devops-engineer.md +39 -0
- package/claude/agents/hlasm-assembler-specialist.md +38 -0
- package/claude/agents/i18n-specialist.md +37 -0
- package/claude/agents/ibm-i-specialist.md +38 -0
- package/claude/agents/integration-engineer.md +39 -0
- package/claude/agents/ml-engineer.md +39 -0
- package/claude/agents/mlops-engineer.md +39 -0
- package/claude/agents/mobile-engineer.md +39 -0
- package/claude/agents/observability-engineer.md +39 -0
- package/claude/agents/performance-engineer.md +34 -0
- package/claude/agents/platform-engineer.md +40 -0
- package/claude/agents/product-manager.md +34 -0
- package/claude/agents/prompt-engineer.md +38 -0
- package/claude/agents/refactor.md +38 -0
- package/claude/agents/release-manager.md +38 -0
- package/claude/agents/security-engineer.md +37 -0
- package/claude/agents/seo-specialist.md +37 -0
- package/claude/agents/site-reliability-engineer.md +37 -0
- package/claude/agents/solutions-architect.md +33 -0
- package/claude/agents/technical-writer.md +37 -0
- package/claude/agents/tester.md +39 -0
- package/claude/agents/ux-designer.md +34 -0
- package/claude/agents/zos-sysprog.md +37 -0
- package/claude/hooks/claude-hooks.json +48 -0
- package/claude/mcp/maestro-server.js +9 -0
- package/claude/mcp-config.example.json +9 -0
- package/claude/scripts/adapters/claude-adapter.js +7 -0
- package/claude/scripts/hook-runner.js +8 -0
- package/claude/scripts/policy-enforcer.js +294 -0
- package/claude/skills/a11y-audit/SKILL.md +26 -0
- package/claude/skills/archive/SKILL.md +24 -0
- package/claude/skills/code-review/SKILL.md +7 -0
- package/claude/skills/compliance-check/SKILL.md +26 -0
- package/claude/skills/debug-workflow/SKILL.md +27 -0
- package/claude/skills/delegation/SKILL.md +7 -0
- package/claude/skills/design-dialogue/SKILL.md +7 -0
- package/claude/skills/execute/SKILL.md +38 -0
- package/claude/skills/execution/SKILL.md +7 -0
- package/claude/skills/implementation-planning/SKILL.md +7 -0
- package/claude/skills/orchestrate/SKILL.md +38 -0
- package/claude/skills/perf-check/SKILL.md +26 -0
- package/claude/skills/resume-session/SKILL.md +38 -0
- package/claude/skills/review-code/SKILL.md +27 -0
- package/claude/skills/security-audit/SKILL.md +28 -0
- package/claude/skills/seo-audit/SKILL.md +26 -0
- package/claude/skills/session-management/SKILL.md +7 -0
- package/claude/skills/status/SKILL.md +22 -0
- package/claude/skills/validation/SKILL.md +7 -0
- package/claude/src/agents/accessibility-specialist.md +163 -0
- package/claude/src/agents/analytics-engineer.md +182 -0
- package/claude/src/agents/api-designer.md +124 -0
- package/claude/src/agents/architect.md +120 -0
- package/claude/src/agents/cloud-architect.md +134 -0
- package/claude/src/agents/cobol-engineer.md +127 -0
- package/claude/src/agents/code-reviewer.md +123 -0
- package/claude/src/agents/coder.md +132 -0
- package/claude/src/agents/compliance-reviewer.md +219 -0
- package/claude/src/agents/content-strategist.md +111 -0
- package/claude/src/agents/copywriter.md +113 -0
- package/claude/src/agents/data-engineer.md +130 -0
- package/claude/src/agents/database-administrator.md +126 -0
- package/claude/src/agents/db2-dba.md +124 -0
- package/claude/src/agents/debugger.md +133 -0
- package/claude/src/agents/design-system-engineer.md +258 -0
- package/claude/src/agents/devops-engineer.md +138 -0
- package/claude/src/agents/hlasm-assembler-specialist.md +134 -0
- package/claude/src/agents/i18n-specialist.md +241 -0
- package/claude/src/agents/ibm-i-specialist.md +132 -0
- package/claude/src/agents/integration-engineer.md +133 -0
- package/claude/src/agents/ml-engineer.md +115 -0
- package/claude/src/agents/mlops-engineer.md +116 -0
- package/claude/src/agents/mobile-engineer.md +115 -0
- package/claude/src/agents/observability-engineer.md +133 -0
- package/claude/src/agents/performance-engineer.md +139 -0
- package/claude/src/agents/platform-engineer.md +129 -0
- package/claude/src/agents/product-manager.md +170 -0
- package/claude/src/agents/prompt-engineer.md +129 -0
- package/claude/src/agents/refactor.md +138 -0
- package/claude/src/agents/release-manager.md +132 -0
- package/claude/src/agents/security-engineer.md +143 -0
- package/claude/src/agents/seo-specialist.md +129 -0
- package/claude/src/agents/site-reliability-engineer.md +131 -0
- package/claude/src/agents/solutions-architect.md +137 -0
- package/claude/src/agents/technical-writer.md +129 -0
- package/claude/src/agents/tester.md +135 -0
- package/claude/src/agents/ux-designer.md +168 -0
- package/claude/src/agents/zos-sysprog.md +134 -0
- package/claude/src/config/setting-resolver.js +32 -0
- package/claude/src/core/agent-registry.js +67 -0
- package/claude/src/core/canonical-source.js +39 -0
- package/claude/src/core/env-file-parser.js +82 -0
- package/claude/src/core/feature-blocks.js +34 -0
- package/claude/src/core/logger.js +12 -0
- package/claude/src/core/markdown-state.js +36 -0
- package/claude/src/core/policy-rules.js +32 -0
- package/claude/src/core/project-root-resolver.js +184 -0
- package/claude/src/core/stdin-reader.js +77 -0
- package/claude/src/core/version.js +50 -0
- package/claude/src/entry-points/core-command-registry.js +37 -0
- package/claude/src/entry-points/preamble-builders.js +54 -0
- package/claude/src/entry-points/registry.js +199 -0
- package/claude/src/entry-points/templates/claude-core-command.md.tmpl +38 -0
- package/claude/src/entry-points/templates/claude-skill.md.tmpl +18 -0
- package/claude/src/entry-points/templates/codex-core-command.md.tmpl +16 -0
- package/claude/src/entry-points/templates/codex-skill.md.tmpl +11 -0
- package/claude/src/entry-points/templates/gemini-command.toml.tmpl +17 -0
- package/claude/src/entry-points/templates/gemini-core-command.toml.tmpl +30 -0
- package/claude/src/generated/agent-registry.json +630 -0
- package/claude/src/generated/hook-registry.json +18 -0
- package/claude/src/generated/resource-registry.json +16 -0
- package/claude/src/hooks/logic/after-agent-logic.js +54 -0
- package/claude/src/hooks/logic/before-agent-logic.js +57 -0
- package/claude/src/hooks/logic/hook-state.js +127 -0
- package/claude/src/hooks/logic/session-end-logic.js +17 -0
- package/claude/src/hooks/logic/session-start-logic.js +25 -0
- package/claude/src/lib/discovery/index.js +172 -0
- package/claude/src/lib/errors/index.js +104 -0
- package/claude/src/lib/framework-detection.js +50 -0
- package/claude/src/lib/frontmatter/index.js +262 -0
- package/claude/src/lib/io/index.js +96 -0
- package/claude/src/lib/naming/index.js +94 -0
- package/claude/src/lib/validation/index.js +124 -0
- package/claude/src/lib/yaml-emit.js +38 -0
- package/claude/src/mcp/content/provider.js +68 -0
- package/claude/src/mcp/content/runtime-content.js +188 -0
- package/claude/src/mcp/contracts/cache-path-rejector.js +39 -0
- package/claude/src/mcp/contracts/downstream-context.js +106 -0
- package/claude/src/mcp/contracts/plan-schema.js +148 -0
- package/claude/src/mcp/contracts/workspace-marker.js +61 -0
- package/claude/src/mcp/core/create-server.js +76 -0
- package/claude/src/mcp/core/line-reader.js +35 -0
- package/claude/src/mcp/core/project-root-cache.js +120 -0
- package/claude/src/mcp/core/protocol-dispatcher.js +274 -0
- package/claude/src/mcp/core/recovery-hints.js +43 -0
- package/claude/src/mcp/core/tool-outcome.js +77 -0
- package/claude/src/mcp/core/tool-registry.js +82 -0
- package/claude/src/mcp/handlers/assess-task-complexity.js +108 -0
- package/claude/src/mcp/handlers/blocker-parser.js +34 -0
- package/claude/src/mcp/handlers/design-gate.js +393 -0
- package/claude/src/mcp/handlers/get-agent.js +54 -0
- package/claude/src/mcp/handlers/get-runtime-context.js +49 -0
- package/claude/src/mcp/handlers/get-skill-content.js +51 -0
- package/claude/src/mcp/handlers/initialize-workspace.js +45 -0
- package/claude/src/mcp/handlers/reconciliation.js +224 -0
- package/claude/src/mcp/handlers/resolve-settings.js +39 -0
- package/claude/src/mcp/handlers/session-state-core.js +108 -0
- package/claude/src/mcp/handlers/session-state-tools.js +562 -0
- package/claude/src/mcp/handlers/validate-plan.js +76 -0
- package/claude/src/mcp/maestro-server.js +122 -0
- package/claude/src/mcp/runtime/runtime-config-map.js +70 -0
- package/claude/src/mcp/tool-packs/content/index.js +80 -0
- package/claude/src/mcp/tool-packs/contracts.js +30 -0
- package/claude/src/mcp/tool-packs/index.js +15 -0
- package/claude/src/mcp/tool-packs/session/index.js +243 -0
- package/claude/src/mcp/tool-packs/workspace/index.js +98 -0
- package/claude/src/mcp/utils/extension-root.js +31 -0
- package/claude/src/mcp/validation/agent-checker.js +81 -0
- package/claude/src/mcp/validation/dag-checker.js +214 -0
- package/claude/src/mcp/validation/file-overlap-checker.js +63 -0
- package/claude/src/mcp/validation/schema-checker.js +108 -0
- package/claude/src/platforms/claude/runtime-config.js +60 -0
- package/claude/src/platforms/shared/adapters/claude-adapter.js +36 -0
- package/claude/src/platforms/shared/adapters/conventions.js +29 -0
- package/claude/src/platforms/shared/adapters/exit-codes.js +6 -0
- package/claude/src/platforms/shared/adapters/factory.js +40 -0
- package/claude/src/platforms/shared/agent-names.js +10 -0
- package/claude/src/platforms/shared/hook-runner.js +52 -0
- package/claude/src/references/architecture.md +139 -0
- package/claude/src/references/orchestration-steps.md +193 -0
- package/claude/src/skills/shared/code-review/SKILL.md +145 -0
- package/claude/src/skills/shared/delegation/SKILL.md +370 -0
- package/claude/src/skills/shared/delegation/protocols/agent-base-protocol.md +145 -0
- package/claude/src/skills/shared/delegation/protocols/filesystem-safety-protocol.md +31 -0
- package/claude/src/skills/shared/design-dialogue/SKILL.md +284 -0
- package/claude/src/skills/shared/execution/SKILL.md +258 -0
- package/claude/src/skills/shared/implementation-planning/SKILL.md +303 -0
- package/claude/src/skills/shared/session-management/SKILL.md +314 -0
- package/claude/src/skills/shared/validation/SKILL.md +204 -0
- package/claude/src/state/session-state.js +113 -0
- package/claude/src/templates/design-document.md +95 -0
- package/claude/src/templates/implementation-plan.md +86 -0
- package/claude/src/templates/session-state.md +68 -0
- package/claude/src/version.json +3 -0
- package/commands/maestro/a11y-audit.toml +22 -0
- package/commands/maestro/archive.toml +23 -0
- package/commands/maestro/compliance-check.toml +22 -0
- package/commands/maestro/debug.toml +23 -0
- package/commands/maestro/execute.toml +30 -0
- package/commands/maestro/orchestrate.toml +30 -0
- package/commands/maestro/perf-check.toml +22 -0
- package/commands/maestro/resume.toml +38 -0
- package/commands/maestro/review.toml +23 -0
- package/commands/maestro/security-audit.toml +24 -0
- package/commands/maestro/seo-audit.toml +22 -0
- package/commands/maestro/status.toml +21 -0
- package/docs/architecture.md +310 -0
- package/docs/cicd.md +647 -0
- package/docs/flow.md +255 -0
- package/docs/maestro-cheatsheet.md +199 -0
- package/docs/overview.md +141 -0
- package/docs/runtime-claude.md +190 -0
- package/docs/runtime-codex.md +197 -0
- package/docs/runtime-gemini.md +170 -0
- package/docs/runtime-qwen.md +147 -0
- package/docs/usage.md +312 -0
- package/gemini-extension.json +55 -0
- package/hooks/adapters/gemini-adapter.js +2 -0
- package/hooks/adapters/qwen-adapter.js +2 -0
- package/hooks/hook-runner.js +3 -0
- package/hooks/hooks.json +56 -0
- package/mcp/maestro-server.js +4 -0
- package/package.json +93 -0
- package/plugins/maestro/.app.json +3 -0
- package/plugins/maestro/.codex-plugin/plugin.json +41 -0
- package/plugins/maestro/.mcp.json +16 -0
- package/plugins/maestro/README.md +57 -0
- package/plugins/maestro/references/runtime-guide.md +125 -0
- package/plugins/maestro/skills/a11y-audit/SKILL.md +16 -0
- package/plugins/maestro/skills/archive/SKILL.md +16 -0
- package/plugins/maestro/skills/code-review/SKILL.md +6 -0
- package/plugins/maestro/skills/compliance-check/SKILL.md +16 -0
- package/plugins/maestro/skills/debug-workflow/SKILL.md +16 -0
- package/plugins/maestro/skills/delegation/SKILL.md +6 -0
- package/plugins/maestro/skills/design-dialogue/SKILL.md +6 -0
- package/plugins/maestro/skills/execute/SKILL.md +16 -0
- package/plugins/maestro/skills/execution/SKILL.md +6 -0
- package/plugins/maestro/skills/implementation-planning/SKILL.md +6 -0
- package/plugins/maestro/skills/orchestrate/SKILL.md +16 -0
- package/plugins/maestro/skills/perf-check/SKILL.md +16 -0
- package/plugins/maestro/skills/resume-session/SKILL.md +16 -0
- package/plugins/maestro/skills/review-code/SKILL.md +16 -0
- package/plugins/maestro/skills/security-audit/SKILL.md +16 -0
- package/plugins/maestro/skills/seo-audit/SKILL.md +16 -0
- package/plugins/maestro/skills/session-management/SKILL.md +6 -0
- package/plugins/maestro/skills/status/SKILL.md +14 -0
- package/plugins/maestro/skills/validation/SKILL.md +6 -0
- package/plugins/maestro/src/agents/accessibility-specialist.md +163 -0
- package/plugins/maestro/src/agents/analytics-engineer.md +182 -0
- package/plugins/maestro/src/agents/api-designer.md +124 -0
- package/plugins/maestro/src/agents/architect.md +120 -0
- package/plugins/maestro/src/agents/cloud-architect.md +134 -0
- package/plugins/maestro/src/agents/cobol-engineer.md +127 -0
- package/plugins/maestro/src/agents/code-reviewer.md +123 -0
- package/plugins/maestro/src/agents/coder.md +132 -0
- package/plugins/maestro/src/agents/compliance-reviewer.md +219 -0
- package/plugins/maestro/src/agents/content-strategist.md +111 -0
- package/plugins/maestro/src/agents/copywriter.md +113 -0
- package/plugins/maestro/src/agents/data-engineer.md +130 -0
- package/plugins/maestro/src/agents/database-administrator.md +126 -0
- package/plugins/maestro/src/agents/db2-dba.md +124 -0
- package/plugins/maestro/src/agents/debugger.md +133 -0
- package/plugins/maestro/src/agents/design-system-engineer.md +258 -0
- package/plugins/maestro/src/agents/devops-engineer.md +138 -0
- package/plugins/maestro/src/agents/hlasm-assembler-specialist.md +134 -0
- package/plugins/maestro/src/agents/i18n-specialist.md +241 -0
- package/plugins/maestro/src/agents/ibm-i-specialist.md +132 -0
- package/plugins/maestro/src/agents/integration-engineer.md +133 -0
- package/plugins/maestro/src/agents/ml-engineer.md +115 -0
- package/plugins/maestro/src/agents/mlops-engineer.md +116 -0
- package/plugins/maestro/src/agents/mobile-engineer.md +115 -0
- package/plugins/maestro/src/agents/observability-engineer.md +133 -0
- package/plugins/maestro/src/agents/performance-engineer.md +139 -0
- package/plugins/maestro/src/agents/platform-engineer.md +129 -0
- package/plugins/maestro/src/agents/product-manager.md +170 -0
- package/plugins/maestro/src/agents/prompt-engineer.md +129 -0
- package/plugins/maestro/src/agents/refactor.md +138 -0
- package/plugins/maestro/src/agents/release-manager.md +132 -0
- package/plugins/maestro/src/agents/security-engineer.md +143 -0
- package/plugins/maestro/src/agents/seo-specialist.md +129 -0
- package/plugins/maestro/src/agents/site-reliability-engineer.md +131 -0
- package/plugins/maestro/src/agents/solutions-architect.md +137 -0
- package/plugins/maestro/src/agents/technical-writer.md +129 -0
- package/plugins/maestro/src/agents/tester.md +135 -0
- package/plugins/maestro/src/agents/ux-designer.md +168 -0
- package/plugins/maestro/src/agents/zos-sysprog.md +134 -0
- package/plugins/maestro/src/config/setting-resolver.js +32 -0
- package/plugins/maestro/src/core/agent-registry.js +67 -0
- package/plugins/maestro/src/core/canonical-source.js +39 -0
- package/plugins/maestro/src/core/env-file-parser.js +82 -0
- package/plugins/maestro/src/core/feature-blocks.js +34 -0
- package/plugins/maestro/src/core/logger.js +12 -0
- package/plugins/maestro/src/core/markdown-state.js +36 -0
- package/plugins/maestro/src/core/policy-rules.js +32 -0
- package/plugins/maestro/src/core/project-root-resolver.js +184 -0
- package/plugins/maestro/src/core/stdin-reader.js +77 -0
- package/plugins/maestro/src/core/version.js +50 -0
- package/plugins/maestro/src/entry-points/core-command-registry.js +37 -0
- package/plugins/maestro/src/entry-points/preamble-builders.js +54 -0
- package/plugins/maestro/src/entry-points/registry.js +199 -0
- package/plugins/maestro/src/entry-points/templates/claude-core-command.md.tmpl +38 -0
- package/plugins/maestro/src/entry-points/templates/claude-skill.md.tmpl +18 -0
- package/plugins/maestro/src/entry-points/templates/codex-core-command.md.tmpl +16 -0
- package/plugins/maestro/src/entry-points/templates/codex-skill.md.tmpl +11 -0
- package/plugins/maestro/src/entry-points/templates/gemini-command.toml.tmpl +17 -0
- package/plugins/maestro/src/entry-points/templates/gemini-core-command.toml.tmpl +30 -0
- package/plugins/maestro/src/generated/agent-registry.json +630 -0
- package/plugins/maestro/src/generated/hook-registry.json +18 -0
- package/plugins/maestro/src/generated/resource-registry.json +16 -0
- package/plugins/maestro/src/hooks/logic/after-agent-logic.js +54 -0
- package/plugins/maestro/src/hooks/logic/before-agent-logic.js +57 -0
- package/plugins/maestro/src/hooks/logic/hook-state.js +127 -0
- package/plugins/maestro/src/hooks/logic/session-end-logic.js +17 -0
- package/plugins/maestro/src/hooks/logic/session-start-logic.js +25 -0
- package/plugins/maestro/src/lib/discovery/index.js +172 -0
- package/plugins/maestro/src/lib/errors/index.js +104 -0
- package/plugins/maestro/src/lib/framework-detection.js +50 -0
- package/plugins/maestro/src/lib/frontmatter/index.js +262 -0
- package/plugins/maestro/src/lib/io/index.js +96 -0
- package/plugins/maestro/src/lib/naming/index.js +94 -0
- package/plugins/maestro/src/lib/validation/index.js +124 -0
- package/plugins/maestro/src/lib/yaml-emit.js +38 -0
- package/plugins/maestro/src/mcp/content/provider.js +68 -0
- package/plugins/maestro/src/mcp/content/runtime-content.js +188 -0
- package/plugins/maestro/src/mcp/contracts/cache-path-rejector.js +39 -0
- package/plugins/maestro/src/mcp/contracts/downstream-context.js +106 -0
- package/plugins/maestro/src/mcp/contracts/plan-schema.js +148 -0
- package/plugins/maestro/src/mcp/contracts/workspace-marker.js +61 -0
- package/plugins/maestro/src/mcp/core/create-server.js +76 -0
- package/plugins/maestro/src/mcp/core/line-reader.js +35 -0
- package/plugins/maestro/src/mcp/core/project-root-cache.js +120 -0
- package/plugins/maestro/src/mcp/core/protocol-dispatcher.js +274 -0
- package/plugins/maestro/src/mcp/core/recovery-hints.js +43 -0
- package/plugins/maestro/src/mcp/core/tool-outcome.js +77 -0
- package/plugins/maestro/src/mcp/core/tool-registry.js +82 -0
- package/plugins/maestro/src/mcp/handlers/assess-task-complexity.js +108 -0
- package/plugins/maestro/src/mcp/handlers/blocker-parser.js +34 -0
- package/plugins/maestro/src/mcp/handlers/design-gate.js +393 -0
- package/plugins/maestro/src/mcp/handlers/get-agent.js +54 -0
- package/plugins/maestro/src/mcp/handlers/get-runtime-context.js +49 -0
- package/plugins/maestro/src/mcp/handlers/get-skill-content.js +51 -0
- package/plugins/maestro/src/mcp/handlers/initialize-workspace.js +45 -0
- package/plugins/maestro/src/mcp/handlers/reconciliation.js +224 -0
- package/plugins/maestro/src/mcp/handlers/resolve-settings.js +39 -0
- package/plugins/maestro/src/mcp/handlers/session-state-core.js +108 -0
- package/plugins/maestro/src/mcp/handlers/session-state-tools.js +562 -0
- package/plugins/maestro/src/mcp/handlers/validate-plan.js +76 -0
- package/plugins/maestro/src/mcp/maestro-server.js +122 -0
- package/plugins/maestro/src/mcp/runtime/runtime-config-map.js +70 -0
- package/plugins/maestro/src/mcp/tool-packs/content/index.js +80 -0
- package/plugins/maestro/src/mcp/tool-packs/contracts.js +30 -0
- package/plugins/maestro/src/mcp/tool-packs/index.js +15 -0
- package/plugins/maestro/src/mcp/tool-packs/session/index.js +243 -0
- package/plugins/maestro/src/mcp/tool-packs/workspace/index.js +98 -0
- package/plugins/maestro/src/mcp/utils/extension-root.js +31 -0
- package/plugins/maestro/src/mcp/validation/agent-checker.js +81 -0
- package/plugins/maestro/src/mcp/validation/dag-checker.js +214 -0
- package/plugins/maestro/src/mcp/validation/file-overlap-checker.js +63 -0
- package/plugins/maestro/src/mcp/validation/schema-checker.js +108 -0
- package/plugins/maestro/src/platforms/codex/runtime-config.js +58 -0
- package/plugins/maestro/src/platforms/shared/adapters/conventions.js +29 -0
- package/plugins/maestro/src/platforms/shared/adapters/exit-codes.js +6 -0
- package/plugins/maestro/src/platforms/shared/adapters/factory.js +40 -0
- package/plugins/maestro/src/platforms/shared/agent-names.js +10 -0
- package/plugins/maestro/src/platforms/shared/hook-runner.js +52 -0
- package/plugins/maestro/src/references/architecture.md +139 -0
- package/plugins/maestro/src/references/orchestration-steps.md +193 -0
- package/plugins/maestro/src/skills/shared/code-review/SKILL.md +145 -0
- package/plugins/maestro/src/skills/shared/delegation/SKILL.md +370 -0
- package/plugins/maestro/src/skills/shared/delegation/protocols/agent-base-protocol.md +145 -0
- package/plugins/maestro/src/skills/shared/delegation/protocols/filesystem-safety-protocol.md +31 -0
- package/plugins/maestro/src/skills/shared/design-dialogue/SKILL.md +284 -0
- package/plugins/maestro/src/skills/shared/execution/SKILL.md +258 -0
- package/plugins/maestro/src/skills/shared/implementation-planning/SKILL.md +303 -0
- package/plugins/maestro/src/skills/shared/session-management/SKILL.md +314 -0
- package/plugins/maestro/src/skills/shared/validation/SKILL.md +204 -0
- package/plugins/maestro/src/state/session-state.js +113 -0
- package/plugins/maestro/src/templates/design-document.md +95 -0
- package/plugins/maestro/src/templates/implementation-plan.md +86 -0
- package/plugins/maestro/src/templates/session-state.md +68 -0
- package/plugins/maestro/src/version.json +3 -0
- package/policies/maestro.toml +44 -0
- package/qwen/agents/accessibility_specialist.md +18 -0
- package/qwen/agents/analytics_engineer.md +20 -0
- package/qwen/agents/api_designer.md +17 -0
- package/qwen/agents/architect.md +17 -0
- package/qwen/agents/cloud_architect.md +17 -0
- package/qwen/agents/cobol_engineer.md +20 -0
- package/qwen/agents/code_reviewer.md +15 -0
- package/qwen/agents/coder.md +20 -0
- package/qwen/agents/compliance_reviewer.md +17 -0
- package/qwen/agents/content_strategist.md +17 -0
- package/qwen/agents/copywriter.md +17 -0
- package/qwen/agents/data_engineer.md +20 -0
- package/qwen/agents/database_administrator.md +19 -0
- package/qwen/agents/db2_dba.md +19 -0
- package/qwen/agents/debugger.md +17 -0
- package/qwen/agents/design_system_engineer.md +20 -0
- package/qwen/agents/devops_engineer.md +21 -0
- package/qwen/agents/hlasm_assembler_specialist.md +20 -0
- package/qwen/agents/i18n_specialist.md +19 -0
- package/qwen/agents/ibm_i_specialist.md +20 -0
- package/qwen/agents/integration_engineer.md +21 -0
- package/qwen/agents/ml_engineer.md +21 -0
- package/qwen/agents/mlops_engineer.md +21 -0
- package/qwen/agents/mobile_engineer.md +21 -0
- package/qwen/agents/observability_engineer.md +21 -0
- package/qwen/agents/performance_engineer.md +19 -0
- package/qwen/agents/platform_engineer.md +22 -0
- package/qwen/agents/product_manager.md +18 -0
- package/qwen/agents/prompt_engineer.md +20 -0
- package/qwen/agents/refactor.md +20 -0
- package/qwen/agents/release_manager.md +20 -0
- package/qwen/agents/security_engineer.md +19 -0
- package/qwen/agents/seo_specialist.md +19 -0
- package/qwen/agents/site_reliability_engineer.md +19 -0
- package/qwen/agents/solutions_architect.md +17 -0
- package/qwen/agents/technical_writer.md +19 -0
- package/qwen/agents/tester.md +21 -0
- package/qwen/agents/ux_designer.md +18 -0
- package/qwen/agents/zos_sysprog.md +19 -0
- package/qwen/hooks.json +56 -0
- package/qwen-extension.json +55 -0
- package/scripts/check-layer-boundaries.js +74 -0
- package/scripts/generate.js +155 -0
- package/scripts/install-codex-plugin.js +167 -0
- package/scripts/install-git-hooks.js +43 -0
- package/scripts/npm-publish-idempotent.js +150 -0
- package/scripts/package-release-artifacts.js +156 -0
- package/scripts/release-artifact-manifest.js +378 -0
- package/scripts/release-version-metadata.js +129 -0
- package/scripts/update-versions.js +33 -0
- package/scripts/verify-npm-pack.js +85 -0
- package/scripts/verify-release-artifacts.js +95 -0
- package/src/agents/accessibility-specialist.md +163 -0
- package/src/agents/analytics-engineer.md +182 -0
- package/src/agents/api-designer.md +124 -0
- package/src/agents/architect.md +120 -0
- package/src/agents/cloud-architect.md +134 -0
- package/src/agents/cobol-engineer.md +127 -0
- package/src/agents/code-reviewer.md +123 -0
- package/src/agents/coder.md +132 -0
- package/src/agents/compliance-reviewer.md +219 -0
- package/src/agents/content-strategist.md +111 -0
- package/src/agents/copywriter.md +113 -0
- package/src/agents/data-engineer.md +130 -0
- package/src/agents/database-administrator.md +126 -0
- package/src/agents/db2-dba.md +124 -0
- package/src/agents/debugger.md +133 -0
- package/src/agents/design-system-engineer.md +258 -0
- package/src/agents/devops-engineer.md +138 -0
- package/src/agents/hlasm-assembler-specialist.md +134 -0
- package/src/agents/i18n-specialist.md +241 -0
- package/src/agents/ibm-i-specialist.md +132 -0
- package/src/agents/integration-engineer.md +133 -0
- package/src/agents/ml-engineer.md +115 -0
- package/src/agents/mlops-engineer.md +116 -0
- package/src/agents/mobile-engineer.md +115 -0
- package/src/agents/observability-engineer.md +133 -0
- package/src/agents/performance-engineer.md +139 -0
- package/src/agents/platform-engineer.md +129 -0
- package/src/agents/product-manager.md +170 -0
- package/src/agents/prompt-engineer.md +129 -0
- package/src/agents/refactor.md +138 -0
- package/src/agents/release-manager.md +132 -0
- package/src/agents/security-engineer.md +143 -0
- package/src/agents/seo-specialist.md +129 -0
- package/src/agents/site-reliability-engineer.md +131 -0
- package/src/agents/solutions-architect.md +137 -0
- package/src/agents/technical-writer.md +129 -0
- package/src/agents/tester.md +135 -0
- package/src/agents/ux-designer.md +168 -0
- package/src/agents/zos-sysprog.md +134 -0
- package/src/config/setting-resolver.js +32 -0
- package/src/core/agent-registry.js +67 -0
- package/src/core/canonical-source.js +39 -0
- package/src/core/env-file-parser.js +82 -0
- package/src/core/feature-blocks.js +34 -0
- package/src/core/logger.js +12 -0
- package/src/core/markdown-state.js +36 -0
- package/src/core/policy-rules.js +32 -0
- package/src/core/project-root-resolver.js +184 -0
- package/src/core/stdin-reader.js +77 -0
- package/src/core/version.js +50 -0
- package/src/entry-points/core-command-registry.js +37 -0
- package/src/entry-points/preamble-builders.js +54 -0
- package/src/entry-points/registry.js +199 -0
- package/src/entry-points/templates/claude-core-command.md.tmpl +38 -0
- package/src/entry-points/templates/claude-skill.md.tmpl +18 -0
- package/src/entry-points/templates/codex-core-command.md.tmpl +16 -0
- package/src/entry-points/templates/codex-skill.md.tmpl +11 -0
- package/src/entry-points/templates/gemini-command.toml.tmpl +17 -0
- package/src/entry-points/templates/gemini-core-command.toml.tmpl +30 -0
- package/src/generated/agent-registry.json +630 -0
- package/src/generated/hook-registry.json +18 -0
- package/src/generated/resource-registry.json +16 -0
- package/src/generator/entry-point-expander.js +182 -0
- package/src/generator/file-writer.js +167 -0
- package/src/generator/generation-session.js +62 -0
- package/src/generator/manifest-curator.js +31 -0
- package/src/generator/manifest-expander.js +256 -0
- package/src/generator/payload-builder.js +217 -0
- package/src/generator/registry-scanner.js +130 -0
- package/src/generator/stale-pruner.js +101 -0
- package/src/hooks/logic/after-agent-logic.js +54 -0
- package/src/hooks/logic/before-agent-logic.js +57 -0
- package/src/hooks/logic/hook-state.js +127 -0
- package/src/hooks/logic/session-end-logic.js +17 -0
- package/src/hooks/logic/session-start-logic.js +25 -0
- package/src/lib/discovery/index.js +172 -0
- package/src/lib/errors/index.js +104 -0
- package/src/lib/framework-detection.js +50 -0
- package/src/lib/frontmatter/index.js +262 -0
- package/src/lib/io/index.js +96 -0
- package/src/lib/naming/index.js +94 -0
- package/src/lib/validation/index.js +124 -0
- package/src/lib/yaml-emit.js +38 -0
- package/src/manifest.js +11 -0
- package/src/mcp/content/provider.js +68 -0
- package/src/mcp/content/runtime-content.js +188 -0
- package/src/mcp/contracts/cache-path-rejector.js +39 -0
- package/src/mcp/contracts/downstream-context.js +106 -0
- package/src/mcp/contracts/plan-schema.js +148 -0
- package/src/mcp/contracts/workspace-marker.js +61 -0
- package/src/mcp/core/create-server.js +76 -0
- package/src/mcp/core/line-reader.js +35 -0
- package/src/mcp/core/project-root-cache.js +120 -0
- package/src/mcp/core/protocol-dispatcher.js +274 -0
- package/src/mcp/core/recovery-hints.js +43 -0
- package/src/mcp/core/tool-outcome.js +77 -0
- package/src/mcp/core/tool-registry.js +82 -0
- package/src/mcp/handlers/assess-task-complexity.js +108 -0
- package/src/mcp/handlers/blocker-parser.js +34 -0
- package/src/mcp/handlers/design-gate.js +393 -0
- package/src/mcp/handlers/get-agent.js +54 -0
- package/src/mcp/handlers/get-runtime-context.js +49 -0
- package/src/mcp/handlers/get-skill-content.js +51 -0
- package/src/mcp/handlers/initialize-workspace.js +45 -0
- package/src/mcp/handlers/reconciliation.js +224 -0
- package/src/mcp/handlers/resolve-settings.js +39 -0
- package/src/mcp/handlers/session-state-core.js +108 -0
- package/src/mcp/handlers/session-state-tools.js +562 -0
- package/src/mcp/handlers/validate-plan.js +76 -0
- package/src/mcp/maestro-server.js +122 -0
- package/src/mcp/runtime/runtime-config-map.js +70 -0
- package/src/mcp/tool-packs/content/index.js +80 -0
- package/src/mcp/tool-packs/contracts.js +30 -0
- package/src/mcp/tool-packs/index.js +15 -0
- package/src/mcp/tool-packs/session/index.js +243 -0
- package/src/mcp/tool-packs/workspace/index.js +98 -0
- package/src/mcp/utils/extension-root.js +31 -0
- package/src/mcp/validation/agent-checker.js +81 -0
- package/src/mcp/validation/dag-checker.js +214 -0
- package/src/mcp/validation/file-overlap-checker.js +63 -0
- package/src/mcp/validation/schema-checker.js +108 -0
- package/src/platforms/claude/metadata.js +96 -0
- package/src/platforms/claude/runtime-config.js +60 -0
- package/src/platforms/codex/metadata.js +107 -0
- package/src/platforms/codex/runtime-config.js +58 -0
- package/src/platforms/gemini/metadata.js +27 -0
- package/src/platforms/gemini/runtime-config.js +62 -0
- package/src/platforms/metadata-shared.js +131 -0
- package/src/platforms/metadata.js +29 -0
- package/src/platforms/qwen/metadata.js +27 -0
- package/src/platforms/qwen/runtime-config.js +62 -0
- package/src/platforms/shared/adapters/claude-adapter.js +36 -0
- package/src/platforms/shared/adapters/conventions.js +29 -0
- package/src/platforms/shared/adapters/exit-codes.js +6 -0
- package/src/platforms/shared/adapters/factory.js +40 -0
- package/src/platforms/shared/adapters/gemini-adapter.js +34 -0
- package/src/platforms/shared/adapters/qwen-adapter.js +93 -0
- package/src/platforms/shared/agent-names.js +10 -0
- package/src/platforms/shared/hook-runner.js +52 -0
- package/src/references/architecture.md +139 -0
- package/src/references/orchestration-steps.md +193 -0
- package/src/scripts/ensure-workspace.js +14 -0
- package/src/scripts/read-active-session.js +26 -0
- package/src/scripts/read-setting.js +18 -0
- package/src/scripts/read-state.js +17 -0
- package/src/scripts/write-state.js +22 -0
- package/src/skills/shared/code-review/SKILL.md +145 -0
- package/src/skills/shared/delegation/SKILL.md +370 -0
- package/src/skills/shared/delegation/protocols/agent-base-protocol.md +145 -0
- package/src/skills/shared/delegation/protocols/filesystem-safety-protocol.md +31 -0
- package/src/skills/shared/design-dialogue/SKILL.md +284 -0
- package/src/skills/shared/execution/SKILL.md +258 -0
- package/src/skills/shared/implementation-planning/SKILL.md +303 -0
- package/src/skills/shared/session-management/SKILL.md +314 -0
- package/src/skills/shared/validation/SKILL.md +204 -0
- package/src/state/session-state.js +113 -0
- package/src/templates/design-document.md +95 -0
- package/src/templates/implementation-plan.md +86 -0
- package/src/templates/session-state.md +68 -0
- package/src/transforms/agent-stub.js +29 -0
- package/src/transforms/extract-examples.js +63 -0
- package/src/transforms/index.js +35 -0
- package/src/transforms/parse-frontmatter.js +23 -0
- package/src/transforms/rebuild-frontmatter.js +147 -0
- package/src/transforms/skill-discovery-stub.js +27 -0
- package/src/transforms/skill-metadata.js +14 -0
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
# Claude Runtime
|
|
2
|
+
|
|
3
|
+
The Claude Code plugin lives in the `claude/` subdirectory.
|
|
4
|
+
|
|
5
|
+
## Configuration
|
|
6
|
+
|
|
7
|
+
**Manifest**: `claude/.claude-plugin/plugin.json`
|
|
8
|
+
**Version**: generated from `package.json`
|
|
9
|
+
**Hooks**: `claude/hooks/claude-hooks.json`
|
|
10
|
+
**MCP Config**: `claude/.mcp.json`
|
|
11
|
+
|
|
12
|
+
### MCP Server
|
|
13
|
+
|
|
14
|
+
```json
|
|
15
|
+
{
|
|
16
|
+
"mcpServers": {
|
|
17
|
+
"maestro": {
|
|
18
|
+
"command": "node",
|
|
19
|
+
"args": ["${CLAUDE_PLUGIN_ROOT}/mcp/maestro-server.js"],
|
|
20
|
+
"cwd": "${CLAUDE_PLUGIN_ROOT}"
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
The public server at `claude/mcp/maestro-server.js` is a thin adapter. It sets `MAESTRO_RUNTIME=claude`, prefers canonical repo `src/mcp/maestro-server.js` when the plugin is loaded from a checkout, and falls back to bundled `claude/src/mcp/maestro-server.js` for detached marketplace or copied installs. Claude declares `primary: filesystem` and `fallback: none`.
|
|
27
|
+
|
|
28
|
+
## Agent Naming
|
|
29
|
+
|
|
30
|
+
Claude uses **kebab-case** for agent names: `code-reviewer`, `api-designer`, `accessibility-specialist`.
|
|
31
|
+
|
|
32
|
+
Agent files are generated at `claude/agents/*.md` with kebab-case filenames.
|
|
33
|
+
|
|
34
|
+
## Delegation
|
|
35
|
+
|
|
36
|
+
Claude Code Agent subagent syntax:
|
|
37
|
+
|
|
38
|
+
```
|
|
39
|
+
Agent(subagent_type: "maestro:coder", prompt: "...")
|
|
40
|
+
Agent(subagent_type: "maestro:architect", prompt: "...")
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Skills
|
|
44
|
+
|
|
45
|
+
19 Markdown skills in `claude/skills/`:
|
|
46
|
+
|
|
47
|
+
**Core (3)** — generated public entry points from the core command registry:
|
|
48
|
+
- `orchestrate/SKILL.md`
|
|
49
|
+
- `execute/SKILL.md`
|
|
50
|
+
- `resume-session/SKILL.md`
|
|
51
|
+
|
|
52
|
+
**Entry-point (9)** — from registry (`review`, `debug`, `resume` are remapped to `review-code`, `debug-workflow`, `resume-session` because they collide with Claude Code built-in commands; see `src/generator/entry-point-expander.js` `HOST_RESERVED_NAMES`):
|
|
53
|
+
- `review-code/SKILL.md`, `debug-workflow/SKILL.md`, `archive/SKILL.md`, `status/SKILL.md`
|
|
54
|
+
- `security-audit/SKILL.md`, `perf-check/SKILL.md`, `seo-audit/SKILL.md`
|
|
55
|
+
- `a11y-audit/SKILL.md`, `compliance-check/SKILL.md`
|
|
56
|
+
|
|
57
|
+
**Infrastructure (7)** — discovery stubs for shared skills:
|
|
58
|
+
- `code-review/SKILL.md`, `delegation/SKILL.md`, `design-dialogue/SKILL.md`
|
|
59
|
+
- `execution/SKILL.md`, `implementation-planning/SKILL.md`
|
|
60
|
+
- `session-management/SKILL.md`, `validation/SKILL.md`
|
|
61
|
+
|
|
62
|
+
Infrastructure skills have `user-invocable: false` — they surface in Claude's skill picker but delegate to MCP for content.
|
|
63
|
+
|
|
64
|
+
## Hooks
|
|
65
|
+
|
|
66
|
+
4 hook entries across 3 event types (2 with matchers):
|
|
67
|
+
|
|
68
|
+
| Event | Matcher | Script | Timeout |
|
|
69
|
+
|-------|---------|--------|---------|
|
|
70
|
+
| `SessionStart` | — | `scripts/hook-runner.js claude session-start` | 10s |
|
|
71
|
+
| `PreToolUse` | `Agent` | `scripts/hook-runner.js claude before-agent` | 10s |
|
|
72
|
+
| `PreToolUse` | `Bash` | scripts/policy-enforcer.js | 5s |
|
|
73
|
+
| `SessionEnd` | — | `scripts/hook-runner.js claude session-end` | 10s |
|
|
74
|
+
|
|
75
|
+
### Key Differences from Gemini
|
|
76
|
+
|
|
77
|
+
- Uses `PreToolUse` with matchers instead of `BeforeAgent`/`AfterAgent`
|
|
78
|
+
- **No AfterAgent hook** — Claude does not validate handoff report format via hooks
|
|
79
|
+
- Same effective timeouts (10s) but Claude config uses seconds, Gemini uses milliseconds (10000ms)
|
|
80
|
+
- Policy enforcement via hook script, not TOML
|
|
81
|
+
|
|
82
|
+
### Hook Adapter
|
|
83
|
+
|
|
84
|
+
`claude/scripts/adapters/claude-adapter.js` normalizes Claude Code stdin:
|
|
85
|
+
|
|
86
|
+
| Claude Field | Internal Field |
|
|
87
|
+
|-------------|----------------|
|
|
88
|
+
| `session_id` | `sessionId` |
|
|
89
|
+
| `cwd` | `cwd` |
|
|
90
|
+
| `hook_event_name` | `event` |
|
|
91
|
+
| `tool_input.subagent_type` | `agentName` |
|
|
92
|
+
| `tool_input.prompt` | `agentInput` |
|
|
93
|
+
| `tool_result` | `agentResult` |
|
|
94
|
+
| (hardcoded false) | `stopHookActive` |
|
|
95
|
+
|
|
96
|
+
Output format: `{ continue: boolean, decision: "approve"|"block", systemMessage?: string, reason?: string }`
|
|
97
|
+
|
|
98
|
+
## Policy Enforcement
|
|
99
|
+
|
|
100
|
+
`claude/scripts/policy-enforcer.js` — JavaScript-based, triggered on Bash tool use:
|
|
101
|
+
|
|
102
|
+
**Deny rules** (blocks command):
|
|
103
|
+
- `rm -rf`, `rm -fr`, `sudo rm -rf`, `sudo rm -fr`
|
|
104
|
+
- `git reset --hard`, `git checkout --`
|
|
105
|
+
- `git clean -fd`, `git clean -df`, `git clean -xfd`, `git clean -xdf`
|
|
106
|
+
- Heredocs (`<<`)
|
|
107
|
+
|
|
108
|
+
**Ask rules** (requires user confirmation):
|
|
109
|
+
- `tee` commands
|
|
110
|
+
- Output redirection (`>`, `>>`)
|
|
111
|
+
|
|
112
|
+
Parses compound commands (`;`, `&&`, `||`, `|`) and recursively checks subshells (`$(...)`, backticks).
|
|
113
|
+
|
|
114
|
+
## Tool Mapping
|
|
115
|
+
|
|
116
|
+
| Canonical | Claude |
|
|
117
|
+
|-----------|--------|
|
|
118
|
+
| `read_file` / `read_many_files` | `Read` |
|
|
119
|
+
| `write_file` | `Write` |
|
|
120
|
+
| `replace` | `Edit` |
|
|
121
|
+
| `list_directory` / `glob` | `Glob` |
|
|
122
|
+
| `grep_search` | `Grep` |
|
|
123
|
+
| `google_web_search` | `WebSearch` |
|
|
124
|
+
| `web_fetch` | `WebFetch` |
|
|
125
|
+
| `run_shell_command` | `Bash` |
|
|
126
|
+
| `ask_user` | `AskUserQuestion` |
|
|
127
|
+
| `write_todos` | `TaskCreate`, `TaskUpdate`, `TaskList` |
|
|
128
|
+
| `activate_skill` | `Skill` |
|
|
129
|
+
| `enter_plan_mode` | `EnterPlanMode` |
|
|
130
|
+
| `exit_plan_mode` | `ExitPlanMode` |
|
|
131
|
+
| `codebase_investigator` | `Agent (Explore)` / `Grep` / `Glob` |
|
|
132
|
+
|
|
133
|
+
## Feature Flags
|
|
134
|
+
|
|
135
|
+
The canonical feature set (same 4 flags across all runtimes, values per runtime):
|
|
136
|
+
|
|
137
|
+
```
|
|
138
|
+
exampleBlocks: true (examples embedded in description)
|
|
139
|
+
claudeStateContract: true (Claude-specific session-state contract)
|
|
140
|
+
scriptBasedStateContract: false
|
|
141
|
+
codexStateContract: false
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
See `src/platforms/claude/runtime-config.js` for the authoritative values.
|
|
145
|
+
|
|
146
|
+
## Agent Frontmatter
|
|
147
|
+
|
|
148
|
+
Claude agent stubs include example blocks in the description and use camelCase for turns:
|
|
149
|
+
|
|
150
|
+
```yaml
|
|
151
|
+
---
|
|
152
|
+
name: coder
|
|
153
|
+
description: |
|
|
154
|
+
Implementation specialist...
|
|
155
|
+
|
|
156
|
+
<example>
|
|
157
|
+
Context: User needs a new feature implemented.
|
|
158
|
+
user: "Implement the login flow"
|
|
159
|
+
assistant: "I'll follow existing patterns..."
|
|
160
|
+
</example>
|
|
161
|
+
model: inherit
|
|
162
|
+
color: green
|
|
163
|
+
maxTurns: 25
|
|
164
|
+
tools:
|
|
165
|
+
- Read
|
|
166
|
+
- Write
|
|
167
|
+
- Edit
|
|
168
|
+
- Bash
|
|
169
|
+
- Glob
|
|
170
|
+
- Grep
|
|
171
|
+
---
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
Fields: `model` (always "inherit"), `color`, `maxTurns` (camelCase). No temperature or timeout.
|
|
175
|
+
|
|
176
|
+
## Generated Files
|
|
177
|
+
|
|
178
|
+
```
|
|
179
|
+
claude/
|
|
180
|
+
├── agents/ 39 agent stubs (kebab-case)
|
|
181
|
+
├── skills/ 19 skill directories
|
|
182
|
+
├── hooks/ 1 hook config (claude-hooks.json)
|
|
183
|
+
├── scripts/ thin hook wrapper, adapter wrapper, policy enforcer
|
|
184
|
+
├── mcp/ thin MCP entrypoint
|
|
185
|
+
├── src/ generated detached runtime payload for isolated installs
|
|
186
|
+
├── .claude-plugin/ 1 plugin manifest
|
|
187
|
+
├── .mcp.json
|
|
188
|
+
├── mcp-config.example.json
|
|
189
|
+
└── README.md
|
|
190
|
+
```
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
# Codex Runtime
|
|
2
|
+
|
|
3
|
+
The Codex plugin lives in `plugins/maestro/`.
|
|
4
|
+
|
|
5
|
+
## Configuration
|
|
6
|
+
|
|
7
|
+
**Manifest**: `plugins/maestro/.codex-plugin/plugin.json`
|
|
8
|
+
**Version**: generated from `package.json`
|
|
9
|
+
**MCP Config**: `plugins/maestro/.mcp.json`
|
|
10
|
+
**App Config**: `plugins/maestro/.app.json`
|
|
11
|
+
**Runtime Guide**: `plugins/maestro/references/runtime-guide.md`
|
|
12
|
+
|
|
13
|
+
### MCP Server
|
|
14
|
+
|
|
15
|
+
```json
|
|
16
|
+
{
|
|
17
|
+
"command": "npx",
|
|
18
|
+
"args": ["-y", "-p", "@josstei/maestro@<package version>", "maestro-mcp-server"],
|
|
19
|
+
"env": { "MAESTRO_RUNTIME": "codex" }
|
|
20
|
+
}
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Codex plugin manifests lack a plugin-root substitution variable (unlike Claude's `${CLAUDE_PLUGIN_ROOT}` or Gemini's `${extensionPath}`), so relative paths in `args` would resolve against the user's workspace rather than the plugin directory. Maestro invokes the server via `npx` using the versioned npm package for the current release. The `maestro-mcp-server` bin lives in `bin/maestro-mcp-server.js` and is declared in `package.json`; it sets `MAESTRO_RUNTIME=codex` and delegates to `src/mcp/maestro-server.js`.
|
|
24
|
+
|
|
25
|
+
For workspace resolution, Codex follows the shared runtime contract:
|
|
26
|
+
- use `MAESTRO_WORKSPACE_PATH` when the host exports it explicitly
|
|
27
|
+
- otherwise fall back to the MCP client `roots/list` response
|
|
28
|
+
- only then fall back to inherited env and `cwd` heuristics
|
|
29
|
+
|
|
30
|
+
That keeps Maestro state rooted under the actual workspace `docs/maestro` path regardless of where `npx` materializes the package cache.
|
|
31
|
+
|
|
32
|
+
### Plugin Manifest
|
|
33
|
+
|
|
34
|
+
```json
|
|
35
|
+
{
|
|
36
|
+
"name": "maestro",
|
|
37
|
+
"version": "<package version>",
|
|
38
|
+
"description": "Generated Codex runtime for Maestro's multi-agent design, planning, execution, and review workflows.",
|
|
39
|
+
"author": { "name": "josstei", "email": "hello@josstei.dev", "url": "https://github.com/josstei" },
|
|
40
|
+
"homepage": "https://github.com/josstei/maestro-orchestrate",
|
|
41
|
+
"repository": "https://github.com/josstei/maestro-orchestrate",
|
|
42
|
+
"license": "Apache-2.0",
|
|
43
|
+
"keywords": ["orchestration", "multi-agent", "planning", "execution", "coding"],
|
|
44
|
+
"skills": "./skills/",
|
|
45
|
+
"mcpServers": "./.mcp.json",
|
|
46
|
+
"apps": "./.app.json",
|
|
47
|
+
"interface": {
|
|
48
|
+
"displayName": "Maestro",
|
|
49
|
+
"shortDescription": "Multi-agent coding orchestration for Codex",
|
|
50
|
+
"longDescription": "Generated Codex runtime for Maestro. ...",
|
|
51
|
+
"developerName": "josstei",
|
|
52
|
+
"category": "Coding",
|
|
53
|
+
"capabilities": ["Interactive", "Write"],
|
|
54
|
+
"websiteURL": "https://github.com/josstei/maestro-orchestrate",
|
|
55
|
+
"defaultPrompt": ["Use Maestro to orchestrate a feature...", "..."],
|
|
56
|
+
"brandColor": "#2563EB"
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
## Agent Naming
|
|
62
|
+
|
|
63
|
+
Codex uses **kebab-case** agent identifiers in runtime context and MCP-served methodology content, matching Claude: `code-reviewer`, `api-designer`.
|
|
64
|
+
|
|
65
|
+
## Delegation
|
|
66
|
+
|
|
67
|
+
Codex-native `spawn_agent(...)`:
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
spawn_agent(...)
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
The runtime guide recommends mapping Maestro agents to Codex delegation modes:
|
|
74
|
+
- Evidence gathering or repo mapping → `explorer`
|
|
75
|
+
- Bounded implementation → `worker`
|
|
76
|
+
- No clear benefit from delegation → stay local
|
|
77
|
+
|
|
78
|
+
## Skills
|
|
79
|
+
|
|
80
|
+
19 Markdown skills in `plugins/maestro/skills/`:
|
|
81
|
+
|
|
82
|
+
Codex keeps built-in `/review`, `/debug`, and `/resume` commands, so Maestro exposes `$maestro:review-code`, `$maestro:debug-workflow`, and `$maestro:resume-session` instead of those bare names.
|
|
83
|
+
|
|
84
|
+
**Core (3)** — unprefixed in the plugin, invoked as `$maestro:<name>`:
|
|
85
|
+
- `orchestrate/SKILL.md`
|
|
86
|
+
- `execute/SKILL.md`
|
|
87
|
+
- `resume-session/SKILL.md`
|
|
88
|
+
|
|
89
|
+
**Entry-point (9)** — unprefixed in the plugin, invoked as `$maestro:<name>`:
|
|
90
|
+
- `review-code/SKILL.md`, `debug-workflow/SKILL.md`, `archive/SKILL.md`
|
|
91
|
+
- `status/SKILL.md`, `security-audit/SKILL.md`
|
|
92
|
+
- `perf-check/SKILL.md`, `seo-audit/SKILL.md`
|
|
93
|
+
- `a11y-audit/SKILL.md`, `compliance-check/SKILL.md`
|
|
94
|
+
|
|
95
|
+
**Infrastructure (7)** — NOT prefixed:
|
|
96
|
+
- `code-review/SKILL.md`, `delegation/SKILL.md`, `design-dialogue/SKILL.md`
|
|
97
|
+
- `execution/SKILL.md`, `implementation-planning/SKILL.md`
|
|
98
|
+
- `session-management/SKILL.md`, `validation/SKILL.md`
|
|
99
|
+
|
|
100
|
+
## Hooks
|
|
101
|
+
|
|
102
|
+
**Codex has no hooks.** No hook registration exists in the plugin manifest. Delegation tracking and policy enforcement are handled through inline methodology constraints.
|
|
103
|
+
|
|
104
|
+
## Policies
|
|
105
|
+
|
|
106
|
+
**No policy enforcement.** Codex relies on inline constraints within skill and agent methodologies rather than runtime-level policy rules.
|
|
107
|
+
|
|
108
|
+
## MCP Behavior
|
|
109
|
+
|
|
110
|
+
The runtime guide states:
|
|
111
|
+
|
|
112
|
+
> If Maestro MCP tools are available, prefer them for stateful operations. If the MCP server is unavailable in the current Codex environment, fall back to direct file operations under `docs/maestro` as described by the shared skills.
|
|
113
|
+
|
|
114
|
+
This MCP-first with direct filesystem fallback approach exists because spawned Codex agents may not have access to the parent plugin's MCP server. When MCP is available, shared methodology and agent bodies are resolved from generated local `plugins/maestro/src/`, which is produced from canonical root `src/`; there is no hand-maintained packaged registry copy and no plugin-level `agents/` directory.
|
|
115
|
+
|
|
116
|
+
## Tool Mapping
|
|
117
|
+
|
|
118
|
+
Codex tools use descriptive names rather than direct API mappings:
|
|
119
|
+
|
|
120
|
+
| Canonical | Codex |
|
|
121
|
+
|-----------|-------|
|
|
122
|
+
| `read_file` / `read_many_files` | direct file reads |
|
|
123
|
+
| `write_file` / `replace` | `apply_patch` |
|
|
124
|
+
| `list_directory` / `glob` | `exec_command` (rg --files, ls, find) |
|
|
125
|
+
| `grep_search` | `exec_command` (rg) |
|
|
126
|
+
| `google_web_search` | web search |
|
|
127
|
+
| `web_fetch` | web fetch |
|
|
128
|
+
| `run_shell_command` | `exec_command` |
|
|
129
|
+
| `ask_user` | `request_user_input` |
|
|
130
|
+
| `write_todos` | `update_plan` |
|
|
131
|
+
| `activate_skill` | open the referenced skill and follow it |
|
|
132
|
+
| `enter_plan_mode` | `update_plan` |
|
|
133
|
+
| `exit_plan_mode` | `request_user_input` approval |
|
|
134
|
+
| `codebase_investigator` | local inspection or `spawn_agent` |
|
|
135
|
+
|
|
136
|
+
## Feature Flags
|
|
137
|
+
|
|
138
|
+
The canonical feature set (same 4 flags across all runtimes, values per runtime):
|
|
139
|
+
|
|
140
|
+
```
|
|
141
|
+
exampleBlocks: false
|
|
142
|
+
claudeStateContract: false
|
|
143
|
+
scriptBasedStateContract: false
|
|
144
|
+
codexStateContract: true
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
See `src/platforms/codex/runtime-config.js` for the authoritative values.
|
|
148
|
+
|
|
149
|
+
## Path Resolution
|
|
150
|
+
|
|
151
|
+
Codex uses relative paths (`relativeExtensionPath: true`):
|
|
152
|
+
|
|
153
|
+
- `env.extensionPath`: `.` (plugin root)
|
|
154
|
+
- `env.workspacePath`: `MAESTRO_WORKSPACE_PATH` when available
|
|
155
|
+
- Path references in generated content are computed relative to the output file's location
|
|
156
|
+
|
|
157
|
+
This differs from Gemini (passthrough variables) and Claude (environment variable references).
|
|
158
|
+
|
|
159
|
+
When `MAESTRO_WORKSPACE_PATH` is not set, the MCP server uses the first valid local `file://` root from the client `roots/list` response before falling back to legacy env and `cwd` detection.
|
|
160
|
+
|
|
161
|
+
## Canonical Filesystem Content
|
|
162
|
+
|
|
163
|
+
Codex follows the same source-of-truth model as the other runtimes:
|
|
164
|
+
|
|
165
|
+
- shared skills, protocols, templates, references, and agent bodies are authored in canonical root `src/`
|
|
166
|
+
- generated `plugins/maestro/src/` is the detached runtime payload for published Codex bundles
|
|
167
|
+
- generated `plugins/maestro/skills/` files are public entrypoints or discovery stubs only
|
|
168
|
+
- Codex does not consume plugin agent files; `get_agent` serves the canonical methodology bodies
|
|
169
|
+
- no tracked `plugins/maestro/lib/` mirror or bundled content registry is part of the runtime
|
|
170
|
+
|
|
171
|
+
## Generated Files
|
|
172
|
+
|
|
173
|
+
```
|
|
174
|
+
plugins/maestro/
|
|
175
|
+
├── skills/ 19 skill directories
|
|
176
|
+
├── src/ generated detached runtime payload
|
|
177
|
+
├── references/ 1 runtime guide
|
|
178
|
+
├── .codex-plugin/ 1 plugin manifest
|
|
179
|
+
├── .mcp.json npx-based spawn (no local wrapper)
|
|
180
|
+
├── .app.json
|
|
181
|
+
└── README.md
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
The runtime server is invoked via `npx` rather than a local wrapper file, so the plugin ships no local `mcp/` directory under `plugins/maestro/`. The bin entrypoint lives in the repo root `bin/maestro-mcp-server.js`; `node scripts/generate.js` derives `plugins/maestro/.mcp.json` from `package.json` so the plugin manifest and MCP package spec stay on the same version.
|
|
185
|
+
|
|
186
|
+
## Differences from Gemini and Claude
|
|
187
|
+
|
|
188
|
+
| Aspect | Gemini | Claude | Codex |
|
|
189
|
+
|--------|--------|--------|-------|
|
|
190
|
+
| Agent names | snake_case | kebab-case | kebab-case |
|
|
191
|
+
| Delegation | Direct function call | Agent subagent | spawn_agent |
|
|
192
|
+
| Hooks | 4 events, no matchers | SessionStart, SessionEnd, PreToolUse + matchers | None |
|
|
193
|
+
| Policies | TOML rules | JS hook enforcer | None |
|
|
194
|
+
| Skill surface | N/A (commands) | 19 skills | plugin namespace `$maestro:*` |
|
|
195
|
+
| Path style | Variable passthrough | Env var refs | `npx` bin |
|
|
196
|
+
| Extra files | TOML policy rules | policy-enforcer | runtime guide |
|
|
197
|
+
| Runtime payload | thin entrypoint only | thin entrypoint + detached `src/` payload | npx bin + detached `src/` payload |
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
# Gemini Runtime
|
|
2
|
+
|
|
3
|
+
The Gemini CLI extension lives at the repository root. It is the primary runtime target.
|
|
4
|
+
|
|
5
|
+
## Configuration
|
|
6
|
+
|
|
7
|
+
**Manifest**: `gemini-extension.json`
|
|
8
|
+
**Version**: generated from `package.json`
|
|
9
|
+
**Context File**: `GEMINI.md`
|
|
10
|
+
|
|
11
|
+
### MCP Server
|
|
12
|
+
|
|
13
|
+
```json
|
|
14
|
+
{
|
|
15
|
+
"command": "node",
|
|
16
|
+
"args": ["${extensionPath}/mcp/maestro-server.js"],
|
|
17
|
+
"cwd": "${extensionPath}",
|
|
18
|
+
"env": { "MAESTRO_WORKSPACE_PATH": "${workspacePath}" }
|
|
19
|
+
}
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
The public server at `mcp/maestro-server.js` is a thin adapter. It sets `MAESTRO_RUNTIME=gemini`, requires canonical `src/mcp/maestro-server.js` directly, and runs the Gemini runtime against shared source in `src/`. Gemini declares `primary: filesystem` and `fallback: none`.
|
|
23
|
+
|
|
24
|
+
## Agent Naming
|
|
25
|
+
|
|
26
|
+
Gemini uses **snake_case** for agent names: `code_reviewer`, `api_designer`, `accessibility_specialist`.
|
|
27
|
+
|
|
28
|
+
Agent files are generated at `agents/*.md` with snake_case filenames.
|
|
29
|
+
|
|
30
|
+
## Delegation
|
|
31
|
+
|
|
32
|
+
Direct function call syntax:
|
|
33
|
+
|
|
34
|
+
```
|
|
35
|
+
coder(query: "Implement the user service...")
|
|
36
|
+
architect(query: "Design the auth system...")
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Commands
|
|
40
|
+
|
|
41
|
+
12 TOML commands in `commands/maestro/`:
|
|
42
|
+
|
|
43
|
+
| Command | Source |
|
|
44
|
+
|---------|--------|
|
|
45
|
+
| `orchestrate.toml` | Core command registry |
|
|
46
|
+
| `execute.toml` | Core command registry |
|
|
47
|
+
| `resume.toml` | Core command registry |
|
|
48
|
+
| `review.toml` | Entry-point registry |
|
|
49
|
+
| `debug.toml` | Entry-point registry |
|
|
50
|
+
| `archive.toml` | Entry-point registry |
|
|
51
|
+
| `status.toml` | Entry-point registry |
|
|
52
|
+
| `security-audit.toml` | Entry-point registry |
|
|
53
|
+
| `perf-check.toml` | Entry-point registry |
|
|
54
|
+
| `seo-audit.toml` | Entry-point registry |
|
|
55
|
+
| `a11y-audit.toml` | Entry-point registry |
|
|
56
|
+
| `compliance-check.toml` | Entry-point registry |
|
|
57
|
+
|
|
58
|
+
## Hooks
|
|
59
|
+
|
|
60
|
+
4 hook events, no matchers, 10-second timeout:
|
|
61
|
+
|
|
62
|
+
| Event | Script | Purpose |
|
|
63
|
+
|-------|--------|---------|
|
|
64
|
+
| `SessionStart` | `hooks/hook-runner.js gemini session-start` | Initialize hook state, prune stale sessions |
|
|
65
|
+
| `BeforeAgent` | `hooks/hook-runner.js gemini before-agent` | Detect agent, inject session context |
|
|
66
|
+
| `AfterAgent` | `hooks/hook-runner.js gemini after-agent` | Validate Task Report + Downstream Context |
|
|
67
|
+
| `SessionEnd` | `hooks/hook-runner.js gemini session-end` | Clean up hook state |
|
|
68
|
+
|
|
69
|
+
### AfterAgent Validation
|
|
70
|
+
|
|
71
|
+
Gemini has a post-delegation validation hook that Claude lacks:
|
|
72
|
+
|
|
73
|
+
- Checks for `## Task Report` (or `# Task Report`) and `## Downstream Context` headings
|
|
74
|
+
- First failure: blocks and requests retry
|
|
75
|
+
- Second failure (stopHookActive=true): allows through with warning
|
|
76
|
+
|
|
77
|
+
### Hook Adapter
|
|
78
|
+
|
|
79
|
+
`hooks/adapters/gemini-adapter.js` normalizes Gemini CLI JSON input:
|
|
80
|
+
|
|
81
|
+
| Gemini Field | Internal Field |
|
|
82
|
+
|-------------|----------------|
|
|
83
|
+
| `session_id` | `sessionId` |
|
|
84
|
+
| `cwd` | `cwd` |
|
|
85
|
+
| `hook_event_name` | `event` |
|
|
86
|
+
| (hardcoded null) | `agentName` |
|
|
87
|
+
| `prompt` | `agentInput` |
|
|
88
|
+
| `prompt_response` | `agentResult` |
|
|
89
|
+
| `stop_hook_active` | `stopHookActive` |
|
|
90
|
+
|
|
91
|
+
Output format: `{ continue: boolean, systemMessage?: string }`
|
|
92
|
+
|
|
93
|
+
## Policies
|
|
94
|
+
|
|
95
|
+
`policies/maestro.toml` — TOML-based shell guardrails evaluated by Gemini's native policy engine:
|
|
96
|
+
|
|
97
|
+
**Deny (priority 950)**:
|
|
98
|
+
- `rm -rf`, `rm -fr`, `sudo rm -rf`, `sudo rm -fr`
|
|
99
|
+
- `git reset --hard`, `git checkout --`
|
|
100
|
+
- `git clean -fd`, `git clean -df`, `git clean -xfd`, `git clean -xdf`
|
|
101
|
+
- Heredocs (`<<`)
|
|
102
|
+
|
|
103
|
+
**Ask User (priority 850)**:
|
|
104
|
+
- `tee` commands
|
|
105
|
+
- Output redirection (`>`, `>>`)
|
|
106
|
+
|
|
107
|
+
## Tool Mapping
|
|
108
|
+
|
|
109
|
+
Gemini tools use canonical names (identity mapping):
|
|
110
|
+
|
|
111
|
+
| Canonical | Gemini |
|
|
112
|
+
|-----------|--------|
|
|
113
|
+
| `read_file` | `read_file` |
|
|
114
|
+
| `read_many_files` | `read_file (called per-file)` |
|
|
115
|
+
| `list_directory` | `list_directory` |
|
|
116
|
+
| `glob` | `glob` |
|
|
117
|
+
| `grep_search` | `grep_search` |
|
|
118
|
+
| `google_web_search` | `google_web_search` |
|
|
119
|
+
| `web_fetch` | `web_fetch` |
|
|
120
|
+
| `write_file` | `write_file` |
|
|
121
|
+
| `replace` | `replace` |
|
|
122
|
+
| `run_shell_command` | `run_shell_command` |
|
|
123
|
+
| `ask_user` | `ask_user` |
|
|
124
|
+
| `write_todos` | `not available — track progress in model context` |
|
|
125
|
+
| `activate_skill` | `activate_skill` |
|
|
126
|
+
| `enter_plan_mode` | `enter_plan_mode` |
|
|
127
|
+
| `exit_plan_mode` | `exit_plan_mode` |
|
|
128
|
+
| `codebase_investigator` | `codebase_investigator` |
|
|
129
|
+
|
|
130
|
+
## Feature Flags
|
|
131
|
+
|
|
132
|
+
The canonical feature set (same 4 flags across all runtimes, values per runtime):
|
|
133
|
+
|
|
134
|
+
```
|
|
135
|
+
exampleBlocks: false
|
|
136
|
+
claudeStateContract: false
|
|
137
|
+
scriptBasedStateContract: true
|
|
138
|
+
codexStateContract: false
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
See `src/platforms/gemini/runtime-config.js` for the authoritative values.
|
|
142
|
+
|
|
143
|
+
## Agent Frontmatter
|
|
144
|
+
|
|
145
|
+
Gemini agent stubs include:
|
|
146
|
+
|
|
147
|
+
```yaml
|
|
148
|
+
---
|
|
149
|
+
name: coder
|
|
150
|
+
kind: local
|
|
151
|
+
description: "..."
|
|
152
|
+
tools: [read_file, write_file, ...]
|
|
153
|
+
temperature: 0.2
|
|
154
|
+
max_turns: 25
|
|
155
|
+
timeout_mins: 10
|
|
156
|
+
---
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
Fields: `kind` (always "local"), `temperature`, `max_turns`, `timeout_mins`.
|
|
160
|
+
|
|
161
|
+
## Generated Files
|
|
162
|
+
|
|
163
|
+
```
|
|
164
|
+
agents/ 39 agent stubs (snake_case)
|
|
165
|
+
commands/maestro/ 12 TOML commands
|
|
166
|
+
hooks/ thin hook runner, adapter wrapper, hooks.json
|
|
167
|
+
mcp/ thin MCP entrypoint
|
|
168
|
+
policies/ 1 TOML policy file
|
|
169
|
+
README.md, GEMINI.md, gemini-extension.json, .geminiignore
|
|
170
|
+
```
|