maestro-flow 0.5.42 → 0.5.43
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/skills/domain-add/SKILL.md +3 -0
- package/.agents/skills/learn-decompose/SKILL.md +7 -4
- package/.agents/skills/learn-follow/SKILL.md +4 -2
- package/.agents/skills/learn-investigate/SKILL.md +8 -6
- package/.agents/skills/learn-second-opinion/SKILL.md +6 -3
- package/.agents/skills/maestro/SKILL.md +1 -1
- package/.agents/skills/maestro-amend/SKILL.md +1 -1
- package/.agents/skills/maestro-analyze/SKILL.md +1 -1
- package/.agents/skills/maestro-blueprint/SKILL.md +1 -1
- package/.agents/skills/maestro-brainstorm/SKILL.md +4 -1
- package/.agents/skills/maestro-collab/SKILL.md +6 -2
- package/.agents/skills/maestro-companion/SKILL.md +4 -1
- package/.agents/skills/maestro-composer/SKILL.md +4 -2
- package/.agents/skills/maestro-execute/SKILL.md +26 -8
- package/.agents/skills/maestro-fork/SKILL.md +4 -3
- package/.agents/skills/maestro-grill/SKILL.md +1 -1
- package/.agents/skills/maestro-guard/SKILL.md +2 -2
- package/.agents/skills/maestro-impeccable/SKILL.md +2 -1
- package/.agents/skills/maestro-init/SKILL.md +1 -1
- package/.agents/skills/maestro-merge/SKILL.md +12 -1
- package/.agents/skills/maestro-milestone-audit/SKILL.md +1 -0
- package/.agents/skills/maestro-milestone-complete/SKILL.md +8 -3
- package/.agents/skills/maestro-milestone-release/SKILL.md +8 -4
- package/.agents/skills/maestro-overlay/SKILL.md +9 -0
- package/.agents/skills/maestro-plan/SKILL.md +1 -0
- package/.agents/skills/maestro-player/SKILL.md +2 -2
- package/.agents/skills/maestro-quick/SKILL.md +5 -3
- package/.agents/skills/maestro-ralph/SKILL.md +8 -8
- package/.agents/skills/maestro-ralph-cli/SKILL.md +665 -0
- package/.agents/skills/maestro-ralph-cli-execute/SKILL.md +239 -0
- package/.agents/skills/maestro-ralph-execute/SKILL.md +127 -11
- package/.agents/skills/maestro-roadmap/SKILL.md +1 -1
- package/.agents/skills/maestro-swarm-workflow/SKILL.md +16 -14
- package/.agents/skills/maestro-tools-register/SKILL.md +16 -1
- package/.agents/skills/maestro-ui-codify/SKILL.md +11 -1
- package/.agents/skills/maestro-universal-workflow/SKILL.md +28 -5
- package/.agents/skills/maestro-update/SKILL.md +10 -7
- package/.agents/skills/manage-codebase-rebuild/SKILL.md +5 -1
- package/.agents/skills/manage-drift-realign/SKILL.md +6 -2
- package/.agents/skills/manage-harvest/SKILL.md +4 -1
- package/.agents/skills/manage-issue-discover/SKILL.md +1 -0
- package/.agents/skills/manage-kg-extractors/SKILL.md +5 -1
- package/.agents/skills/manage-knowhow-capture/SKILL.md +1 -0
- package/.agents/skills/manage-knowledge-audit/SKILL.md +3 -0
- package/.agents/skills/manage-wiki/SKILL.md +1 -0
- package/.agents/skills/odyssey-debug/SKILL.md +2 -1
- package/.agents/skills/odyssey-improve/SKILL.md +2 -2
- package/.agents/skills/odyssey-planex/SKILL.md +8 -7
- package/.agents/skills/odyssey-review-test-fix/SKILL.md +4 -1
- package/.agents/skills/odyssey-ui/SKILL.md +4 -4
- package/.agents/skills/quality-auto-test/SKILL.md +11 -1
- package/.agents/skills/quality-debug/SKILL.md +16 -2
- package/.agents/skills/quality-retrospective/SKILL.md +9 -1
- package/.agents/skills/quality-review/SKILL.md +8 -0
- package/.agents/skills/quality-sync/SKILL.md +2 -2
- package/.agents/skills/quality-test/SKILL.md +9 -1
- package/.agents/skills/security-audit/SKILL.md +14 -4
- package/.agents/skills/spec-add/SKILL.md +5 -2
- package/.agents/skills/spec-load/SKILL.md +1 -1
- package/.agents/skills/spec-remove/SKILL.md +1 -1
- package/.agents/skills/spec-setup/SKILL.md +3 -0
- package/.agy/skills/domain-add/SKILL.md +3 -0
- package/.agy/skills/learn-decompose/SKILL.md +7 -4
- package/.agy/skills/learn-follow/SKILL.md +4 -2
- package/.agy/skills/learn-investigate/SKILL.md +8 -6
- package/.agy/skills/learn-second-opinion/SKILL.md +6 -3
- package/.agy/skills/maestro/SKILL.md +1 -1
- package/.agy/skills/maestro-amend/SKILL.md +1 -1
- package/.agy/skills/maestro-analyze/SKILL.md +1 -1
- package/.agy/skills/maestro-blueprint/SKILL.md +1 -1
- package/.agy/skills/maestro-brainstorm/SKILL.md +4 -1
- package/.agy/skills/maestro-collab/SKILL.md +6 -2
- package/.agy/skills/maestro-companion/SKILL.md +4 -1
- package/.agy/skills/maestro-composer/SKILL.md +4 -2
- package/.agy/skills/maestro-execute/SKILL.md +26 -8
- package/.agy/skills/maestro-fork/SKILL.md +4 -3
- package/.agy/skills/maestro-grill/SKILL.md +1 -1
- package/.agy/skills/maestro-guard/SKILL.md +2 -2
- package/.agy/skills/maestro-impeccable/SKILL.md +2 -1
- package/.agy/skills/maestro-init/SKILL.md +1 -1
- package/.agy/skills/maestro-merge/SKILL.md +12 -1
- package/.agy/skills/maestro-milestone-audit/SKILL.md +1 -0
- package/.agy/skills/maestro-milestone-complete/SKILL.md +8 -3
- package/.agy/skills/maestro-milestone-release/SKILL.md +8 -4
- package/.agy/skills/maestro-overlay/SKILL.md +9 -0
- package/.agy/skills/maestro-plan/SKILL.md +1 -0
- package/.agy/skills/maestro-player/SKILL.md +2 -2
- package/.agy/skills/maestro-quick/SKILL.md +5 -3
- package/.agy/skills/maestro-ralph/SKILL.md +8 -8
- package/.agy/skills/maestro-ralph-cli/SKILL.md +661 -0
- package/.agy/skills/maestro-ralph-cli-execute/SKILL.md +235 -0
- package/.agy/skills/maestro-ralph-execute/SKILL.md +127 -11
- package/.agy/skills/maestro-roadmap/SKILL.md +1 -1
- package/.agy/skills/maestro-swarm-workflow/SKILL.md +16 -14
- package/.agy/skills/maestro-tools-register/SKILL.md +16 -1
- package/.agy/skills/maestro-ui-codify/SKILL.md +11 -1
- package/.agy/skills/maestro-universal-workflow/SKILL.md +28 -5
- package/.agy/skills/maestro-update/SKILL.md +10 -7
- package/.agy/skills/manage-codebase-rebuild/SKILL.md +5 -1
- package/.agy/skills/manage-drift-realign/SKILL.md +6 -2
- package/.agy/skills/manage-harvest/SKILL.md +4 -1
- package/.agy/skills/manage-issue-discover/SKILL.md +1 -0
- package/.agy/skills/manage-kg-extractors/SKILL.md +5 -1
- package/.agy/skills/manage-knowhow-capture/SKILL.md +1 -0
- package/.agy/skills/manage-knowledge-audit/SKILL.md +3 -0
- package/.agy/skills/manage-wiki/SKILL.md +1 -0
- package/.agy/skills/odyssey-debug/SKILL.md +2 -1
- package/.agy/skills/odyssey-improve/SKILL.md +2 -2
- package/.agy/skills/odyssey-planex/SKILL.md +8 -7
- package/.agy/skills/odyssey-review-test-fix/SKILL.md +4 -1
- package/.agy/skills/odyssey-ui/SKILL.md +4 -4
- package/.agy/skills/quality-auto-test/SKILL.md +11 -1
- package/.agy/skills/quality-debug/SKILL.md +16 -2
- package/.agy/skills/quality-retrospective/SKILL.md +9 -1
- package/.agy/skills/quality-review/SKILL.md +8 -0
- package/.agy/skills/quality-sync/SKILL.md +2 -2
- package/.agy/skills/quality-test/SKILL.md +9 -1
- package/.agy/skills/security-audit/SKILL.md +14 -4
- package/.agy/skills/spec-add/SKILL.md +5 -2
- package/.agy/skills/spec-load/SKILL.md +1 -1
- package/.agy/skills/spec-remove/SKILL.md +1 -1
- package/.agy/skills/spec-setup/SKILL.md +3 -0
- package/.claude/commands/domain-add.md +3 -0
- package/.claude/commands/learn-decompose.md +7 -4
- package/.claude/commands/learn-follow.md +4 -2
- package/.claude/commands/learn-investigate.md +8 -6
- package/.claude/commands/learn-second-opinion.md +6 -3
- package/.claude/commands/maestro-amend.md +1 -1
- package/.claude/commands/maestro-analyze.md +1 -1
- package/.claude/commands/maestro-blueprint.md +1 -1
- package/.claude/commands/maestro-brainstorm.md +4 -1
- package/.claude/commands/maestro-collab.md +6 -2
- package/.claude/commands/maestro-companion.md +4 -1
- package/.claude/commands/maestro-composer.md +4 -2
- package/.claude/commands/maestro-execute.md +26 -8
- package/.claude/commands/maestro-fork.md +4 -3
- package/.claude/commands/maestro-grill.md +1 -1
- package/.claude/commands/maestro-guard.md +2 -2
- package/.claude/commands/maestro-impeccable.md +2 -1
- package/.claude/commands/maestro-init.md +1 -1
- package/.claude/commands/maestro-merge.md +12 -1
- package/.claude/commands/maestro-milestone-audit.md +1 -0
- package/.claude/commands/maestro-milestone-complete.md +8 -3
- package/.claude/commands/maestro-milestone-release.md +8 -4
- package/.claude/commands/maestro-overlay.md +9 -0
- package/.claude/commands/maestro-plan.md +1 -0
- package/.claude/commands/maestro-player.md +2 -2
- package/.claude/commands/maestro-quick.md +5 -3
- package/.claude/commands/maestro-ralph-cli-execute.md +237 -0
- package/.claude/commands/maestro-ralph-cli.md +663 -0
- package/.claude/commands/maestro-ralph-execute.md +127 -11
- package/.claude/commands/maestro-ralph.md +8 -8
- package/.claude/commands/maestro-roadmap.md +1 -1
- package/.claude/commands/maestro-swarm-workflow.md +16 -14
- package/.claude/commands/maestro-tools-register.md +16 -1
- package/.claude/commands/maestro-ui-codify.md +11 -1
- package/.claude/commands/maestro-universal-workflow.md +28 -5
- package/.claude/commands/maestro-update.md +10 -7
- package/.claude/commands/maestro.md +1 -1
- package/.claude/commands/manage-codebase-rebuild.md +5 -1
- package/.claude/commands/manage-drift-realign.md +6 -2
- package/.claude/commands/manage-harvest.md +4 -1
- package/.claude/commands/manage-issue-discover.md +1 -0
- package/.claude/commands/manage-kg-extractors.md +5 -1
- package/.claude/commands/manage-knowhow-capture.md +1 -0
- package/.claude/commands/manage-knowledge-audit.md +3 -0
- package/.claude/commands/manage-wiki.md +1 -0
- package/.claude/commands/odyssey-debug.md +2 -1
- package/.claude/commands/odyssey-improve.md +2 -2
- package/.claude/commands/odyssey-planex.md +8 -7
- package/.claude/commands/odyssey-review-test-fix.md +4 -1
- package/.claude/commands/odyssey-ui.md +4 -4
- package/.claude/commands/quality-auto-test.md +11 -1
- package/.claude/commands/quality-debug.md +16 -2
- package/.claude/commands/quality-retrospective.md +9 -1
- package/.claude/commands/quality-review.md +8 -0
- package/.claude/commands/quality-sync.md +2 -2
- package/.claude/commands/quality-test.md +9 -1
- package/.claude/commands/security-audit.md +14 -4
- package/.claude/commands/spec-add.md +5 -2
- package/.claude/commands/spec-load.md +1 -1
- package/.claude/commands/spec-remove.md +1 -1
- package/.claude/commands/spec-setup.md +3 -0
- package/.codex/skills/codify-to-knowhow/SKILL.md +27 -15
- package/.codex/skills/domain-add/SKILL.md +5 -3
- package/.codex/skills/learn-decompose/SKILL.md +22 -4
- package/.codex/skills/learn-follow/SKILL.md +12 -6
- package/.codex/skills/learn-investigate/SKILL.md +11 -6
- package/.codex/skills/learn-retro/SKILL.md +12 -6
- package/.codex/skills/learn-second-opinion/SKILL.md +11 -3
- package/.codex/skills/maestro/SKILL.md +19 -13
- package/.codex/skills/maestro-amend/SKILL.md +10 -2
- package/.codex/skills/maestro-analyze/SKILL.md +7 -1
- package/.codex/skills/maestro-blueprint/SKILL.md +1 -1
- package/.codex/skills/maestro-brainstorm/SKILL.md +11 -8
- package/.codex/skills/maestro-collab/SKILL.md +5 -5
- package/.codex/skills/maestro-companion/SKILL.md +4 -1
- package/.codex/skills/maestro-composer/SKILL.md +6 -3
- package/.codex/skills/maestro-execute/SKILL.md +11 -8
- package/.codex/skills/maestro-fork/SKILL.md +4 -3
- package/.codex/skills/maestro-grill/SKILL.md +1 -1
- package/.codex/skills/maestro-guard/SKILL.md +1 -1
- package/.codex/skills/maestro-impeccable/SKILL.md +5 -5
- package/.codex/skills/maestro-init/SKILL.md +3 -2
- package/.codex/skills/maestro-milestone-audit/SKILL.md +21 -9
- package/.codex/skills/maestro-milestone-complete/SKILL.md +3 -3
- package/.codex/skills/maestro-milestone-release/SKILL.md +18 -1
- package/.codex/skills/maestro-next/SKILL.md +11 -10
- package/.codex/skills/maestro-overlay/SKILL.md +16 -6
- package/.codex/skills/maestro-player/SKILL.md +11 -5
- package/.codex/skills/maestro-quick/SKILL.md +2 -2
- package/.codex/skills/maestro-ralph/SKILL.md +44 -31
- package/.codex/skills/maestro-ralph-cli/SKILL.md +394 -0
- package/.codex/skills/maestro-ralph-cli-execute/SKILL.md +146 -0
- package/.codex/skills/maestro-ralph-execute/SKILL.md +105 -24
- package/.codex/skills/maestro-roadmap/SKILL.md +8 -2
- package/.codex/skills/maestro-tools-execute/SKILL.md +8 -4
- package/.codex/skills/maestro-tools-register/SKILL.md +10 -6
- package/.codex/skills/maestro-ui-codify/SKILL.md +14 -9
- package/.codex/skills/manage-codebase-rebuild/SKILL.md +36 -14
- package/.codex/skills/manage-codebase-refresh/SKILL.md +1 -1
- package/.codex/skills/manage-drift-realign/SKILL.md +15 -12
- package/.codex/skills/manage-harvest/SKILL.md +1 -1
- package/.codex/skills/manage-issue/SKILL.md +8 -4
- package/.codex/skills/manage-issue-discover/SKILL.md +15 -14
- package/.codex/skills/manage-knowhow/SKILL.md +3 -2
- package/.codex/skills/manage-knowhow-capture/SKILL.md +4 -3
- package/.codex/skills/manage-learn/SKILL.md +2 -2
- package/.codex/skills/odyssey-debug/SKILL.md +12 -7
- package/.codex/skills/odyssey-improve/SKILL.md +11 -6
- package/.codex/skills/odyssey-planex/SKILL.md +14 -8
- package/.codex/skills/odyssey-review-test-fix/SKILL.md +12 -7
- package/.codex/skills/odyssey-ui/SKILL.md +10 -5
- package/.codex/skills/quality-auto-test/SKILL.md +13 -5
- package/.codex/skills/quality-debug/SKILL.md +18 -11
- package/.codex/skills/quality-refactor/SKILL.md +4 -4
- package/.codex/skills/quality-retrospective/SKILL.md +5 -6
- package/.codex/skills/quality-review/SKILL.md +18 -11
- package/.codex/skills/quality-sync/SKILL.md +2 -2
- package/.codex/skills/quality-test/SKILL.md +7 -5
- package/.codex/skills/security-audit/SKILL.md +7 -5
- package/.codex/skills/spec-add/SKILL.md +9 -7
- package/.codex/skills/spec-load/SKILL.md +3 -2
- package/.codex/skills/spec-map/SKILL.md +10 -1
- package/.codex/skills/spec-remove/SKILL.md +3 -2
- package/.codex/skills/team-coordinate/SKILL.md +10 -4
- package/.codex/skills/team-lifecycle-v4/SKILL.md +33 -26
- package/.codex/skills/team-quality-assurance/SKILL.md +43 -0
- package/.codex/skills/team-review/SKILL.md +50 -6
- package/.codex/skills/team-tech-debt/SKILL.md +53 -7
- package/.codex/skills/team-testing/SKILL.md +50 -2
- package/.codex/skills/wiki-connect/SKILL.md +3 -1
- package/.codex/skills/wiki-digest/SKILL.md +6 -4
- package/dashboard/dist-server/dashboard/src/server/wiki/embedding.d.ts +16 -0
- package/dashboard/dist-server/dashboard/src/server/wiki/embedding.js +419 -44
- package/dashboard/dist-server/dashboard/src/server/wiki/embedding.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js +43 -5
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js.map +1 -1
- package/dashboard/dist-server/src/graph/kg/db/types.d.ts +3 -0
- package/dashboard/dist-server/src/graph/kg/embedding/code-embedding.d.ts +46 -0
- package/dashboard/dist-server/src/graph/kg/embedding/code-embedding.js +329 -0
- package/dashboard/dist-server/src/graph/kg/embedding/code-embedding.js.map +1 -0
- package/dashboard/dist-server/src/graph/kg/embedding/index.d.ts +2 -0
- package/dashboard/dist-server/src/graph/kg/embedding/index.js +3 -0
- package/dashboard/dist-server/src/graph/kg/embedding/index.js.map +1 -0
- package/dashboard/dist-server/src/graph/kg/engine.d.ts +19 -1
- package/dashboard/dist-server/src/graph/kg/engine.js +71 -1
- package/dashboard/dist-server/src/graph/kg/engine.js.map +1 -1
- package/dashboard/dist-server/src/graph/kg/query/scoring.d.ts +5 -0
- package/dashboard/dist-server/src/graph/kg/query/scoring.js +85 -1
- package/dashboard/dist-server/src/graph/kg/query/scoring.js.map +1 -1
- package/dashboard/dist-server/src/graph/kg/query/search.d.ts +7 -0
- package/dashboard/dist-server/src/graph/kg/query/search.js +117 -1
- package/dashboard/dist-server/src/graph/kg/query/search.js.map +1 -1
- package/dashboard/dist-server/src/graph/kg/surface/mcp-tools.js +49 -0
- package/dashboard/dist-server/src/graph/kg/surface/mcp-tools.js.map +1 -1
- package/dashboard/dist-server/src/hooks/kg-sync-hook.js +3 -0
- package/dashboard/dist-server/src/hooks/kg-sync-hook.js.map +1 -1
- package/dist/src/core/plugin-bridge.d.ts.map +1 -1
- package/dist/src/core/plugin-bridge.js +17 -0
- package/dist/src/core/plugin-bridge.js.map +1 -1
- package/dist/src/graph/kg/db/types.d.ts +3 -0
- package/dist/src/graph/kg/db/types.d.ts.map +1 -1
- package/dist/src/graph/kg/embedding/code-embedding.d.ts +47 -0
- package/dist/src/graph/kg/embedding/code-embedding.d.ts.map +1 -0
- package/dist/src/graph/kg/embedding/code-embedding.js +329 -0
- package/dist/src/graph/kg/embedding/code-embedding.js.map +1 -0
- package/dist/src/graph/kg/embedding/index.d.ts +3 -0
- package/dist/src/graph/kg/embedding/index.d.ts.map +1 -0
- package/dist/src/graph/kg/embedding/index.js +3 -0
- package/dist/src/graph/kg/embedding/index.js.map +1 -0
- package/dist/src/graph/kg/engine.d.ts +19 -1
- package/dist/src/graph/kg/engine.d.ts.map +1 -1
- package/dist/src/graph/kg/engine.js +71 -1
- package/dist/src/graph/kg/engine.js.map +1 -1
- package/dist/src/graph/kg/query/scoring.d.ts +5 -0
- package/dist/src/graph/kg/query/scoring.d.ts.map +1 -1
- package/dist/src/graph/kg/query/scoring.js +85 -1
- package/dist/src/graph/kg/query/scoring.js.map +1 -1
- package/dist/src/graph/kg/query/search.d.ts +7 -0
- package/dist/src/graph/kg/query/search.d.ts.map +1 -1
- package/dist/src/graph/kg/query/search.js +117 -1
- package/dist/src/graph/kg/query/search.js.map +1 -1
- package/dist/src/graph/kg/surface/mcp-tools.d.ts.map +1 -1
- package/dist/src/graph/kg/surface/mcp-tools.js +49 -0
- package/dist/src/graph/kg/surface/mcp-tools.js.map +1 -1
- package/dist/src/hooks/kg-sync-hook.d.ts.map +1 -1
- package/dist/src/hooks/kg-sync-hook.js +3 -0
- package/dist/src/hooks/kg-sync-hook.js.map +1 -1
- package/dist/src/tools/code-semantic-search.d.ts +10 -0
- package/dist/src/tools/code-semantic-search.d.ts.map +1 -0
- package/dist/src/tools/code-semantic-search.js +81 -0
- package/dist/src/tools/code-semantic-search.js.map +1 -0
- package/dist/src/tools/index.d.ts.map +1 -1
- package/dist/src/tools/index.js +4 -0
- package/dist/src/tools/index.js.map +1 -1
- package/dist/src/tools/wiki-search.d.ts +13 -0
- package/dist/src/tools/wiki-search.d.ts.map +1 -0
- package/dist/src/tools/wiki-search.js +114 -0
- package/dist/src/tools/wiki-search.js.map +1 -0
- package/dist/src/utils/update-notices.js +12 -0
- package/dist/src/utils/update-notices.js.map +1 -1
- package/package.json +4 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: learn-investigate
|
|
3
3
|
description: Investigate questions with hypothesis testing and evidence logging
|
|
4
|
-
argument-hint: "<question> [--scope <path>] [--max-hypotheses N]"
|
|
4
|
+
argument-hint: "<question> [--scope <path>] [--max-hypotheses N] [-y]"
|
|
5
5
|
allowed-tools:
|
|
6
6
|
- Read
|
|
7
7
|
- Write
|
|
@@ -22,6 +22,7 @@ $ARGUMENTS — question text and optional flags.
|
|
|
22
22
|
**Flags**:
|
|
23
23
|
- `--scope <path>`: Restrict to files under this dir (default: entire project)
|
|
24
24
|
- `--max-hypotheses N`: Max hypotheses before escalation (default: 3)
|
|
25
|
+
- `-y`: Skip confirmation prompts for report/spec writes
|
|
25
26
|
|
|
26
27
|
**Storage write**:
|
|
27
28
|
- `.workflow/knowhow/KNW-investigate-{slug}/evidence.ndjson` — structured evidence (one JSON line per item)
|
|
@@ -57,11 +58,11 @@ S_PATTERN:
|
|
|
57
58
|
→ S_HYPOTHESIZE DO: match evidence against debug-notes.md + .workflow/specs/learnings.md patterns
|
|
58
59
|
|
|
59
60
|
S_HYPOTHESIZE:
|
|
60
|
-
→ S_CLI_EXPLORE WHEN: CLI tools enabled AND hypotheses non-trivial DO: A_FORM_HYPOTHESES
|
|
61
|
-
→ S_TEST WHEN: no CLI tools OR trivial hypotheses
|
|
61
|
+
→ S_CLI_EXPLORE WHEN: CLI tools enabled (at least one tool in cli-tools.json enabled) AND hypotheses non-trivial (require cross-file tracing or data-flow analysis) DO: A_FORM_HYPOTHESES
|
|
62
|
+
→ S_TEST WHEN: no CLI tools OR trivial hypotheses (answerable by local Grep/Read) DO: A_FORM_HYPOTHESES
|
|
62
63
|
|
|
63
64
|
S_CLI_EXPLORE:
|
|
64
|
-
→ S_TEST DO: A_CLI_SUPPLEMENT (maestro delegate --
|
|
65
|
+
→ S_TEST DO: A_CLI_SUPPLEMENT (maestro delegate --to <first-enabled-tool> --mode analysis, run_in_background, STOP)
|
|
65
66
|
|
|
66
67
|
S_TEST:
|
|
67
68
|
→ S_REPORT WHEN: hypothesis confirmed DO: A_TEST_HYPOTHESIS
|
|
@@ -73,7 +74,8 @@ S_ESCALATE:
|
|
|
73
74
|
→ S_REPORT WHEN: user selects "Escalate" or still stuck DO: mark INCONCLUSIVE
|
|
74
75
|
|
|
75
76
|
S_REPORT:
|
|
76
|
-
→ END
|
|
77
|
+
→ END GATE: unless -y, AskUserQuestion showing report.md path and spec-entries to append — proceed only on confirm
|
|
78
|
+
DO: A_SYNTHESIZE_REPORT
|
|
77
79
|
|
|
78
80
|
</transitions>
|
|
79
81
|
|
|
@@ -108,7 +110,7 @@ Rank by plausibility (evidence strength). Write to understanding.md:
|
|
|
108
110
|
maestro delegate "PURPOSE: Gather evidence for hypotheses
|
|
109
111
|
TASK: Trace call chains and data flows per hypothesis | Find corroborating/contradicting patterns
|
|
110
112
|
EXPECTED: JSON [{hypothesis_rank, evidence: [{file, line, supports: bool, explanation}]}]
|
|
111
|
-
" --
|
|
113
|
+
" --to <first-enabled-tool> --mode analysis
|
|
112
114
|
```
|
|
113
115
|
Run_in_background, STOP, wait. On callback: append to evidence.ndjson.
|
|
114
116
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: learn-second-opinion
|
|
3
3
|
description: Get alternative perspectives — review, challenge, or consult
|
|
4
|
-
argument-hint: "<target> [--mode review|challenge|consult]"
|
|
4
|
+
argument-hint: "<target> [--mode review|challenge|consult] [-y]"
|
|
5
5
|
allowed-tools:
|
|
6
6
|
- Read
|
|
7
7
|
- Write
|
|
@@ -27,7 +27,9 @@ $ARGUMENTS — target and optional mode flag.
|
|
|
27
27
|
| `HEAD` / `staged` | `git diff HEAD` / `git diff --staged` |
|
|
28
28
|
| Phase number | Resolve via state.json.artifacts[] → plan.json |
|
|
29
29
|
|
|
30
|
-
**Flags**:
|
|
30
|
+
**Flags**:
|
|
31
|
+
- `--mode review|challenge|consult` (default: review)
|
|
32
|
+
- `-y`: Skip confirmation prompts for knowhow/spec writes
|
|
31
33
|
|
|
32
34
|
**Pre-load** (optional): `Skill("spec-load")` for conventions + `maestro search "<target topic>"` for related entries.
|
|
33
35
|
|
|
@@ -62,7 +64,8 @@ S_SYNTHESIZE:
|
|
|
62
64
|
→ S_PERSIST DO: merge perspectives → agreements, disagreements, verdict, top 3 recommendations
|
|
63
65
|
|
|
64
66
|
S_PERSIST:
|
|
65
|
-
→ END
|
|
67
|
+
→ END GATE: unless -y, AskUserQuestion showing files to write and spec-entries to append — proceed only on confirm
|
|
68
|
+
DO: write KNW-opinion + append <spec-entry> blocks to .workflow/specs/learnings.md
|
|
66
69
|
|
|
67
70
|
</transitions>
|
|
68
71
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: maestro-amend
|
|
3
3
|
description: Generate overlays to fix workflow command deficiencies
|
|
4
|
-
argument-hint: "[description] [--from-verify <dir>] [--from-review <dir>] [--from-session <id>] [--from-issues ISS-xxx,...] [--scan] [--dry-run]"
|
|
4
|
+
argument-hint: "[description] [--from-verify <dir>] [--from-review <dir>] [--from-session <id>] [--from-issues ISS-xxx,...] [--scan] [--dry-run] [-y]"
|
|
5
5
|
allowed-tools:
|
|
6
6
|
- Read
|
|
7
7
|
- Write
|
|
@@ -45,7 +45,7 @@ $ARGUMENTS -- phase number for micro mode, topic text for macro/adhoc mode, no a
|
|
|
45
45
|
|------|--------|---------|
|
|
46
46
|
| `-y` / `--yes` | Auto mode — skip interactive scoping, use recommended defaults, auto-deepen | false |
|
|
47
47
|
| `-c` / `--continue` | Resume from existing session (auto-detect session folder + discussion.md) | false |
|
|
48
|
-
| `-q` / `--quick` | Quick mode — skip exploration + scoring, go straight to decision extraction (context.md only) | false |
|
|
48
|
+
| `-q` / `--quick` | Quick mode — skip exploration + scoring, go straight to decision extraction (context.md only). **Precedence**: when combined with `-c`, the resumed session preserves its original mode (full or quick); `-q` does NOT override a resumed full session to quick mode. | false |
|
|
49
49
|
| `--from <source>` | Load upstream context package (grill:ID, brainstorm:ID, blueprint:BLP-xxx, @file, or path) | — |
|
|
50
50
|
| `--gaps [ISS-ID]` | Issue root cause analysis mode. If ISS-ID provided, analyze single issue. If omitted, analyze all open/registered issues from issues.jsonl | — |
|
|
51
51
|
|
|
@@ -159,7 +159,7 @@ Status verdicts:
|
|
|
159
159
|
- [ ] Readiness gate: Pass (>=80%) or Review (>=60%) with documented caveats
|
|
160
160
|
- [ ] Artifact registered in state.json (type=blueprint)
|
|
161
161
|
- [ ] context-package.json generated for downstream consumption
|
|
162
|
-
- [ ] On gate Pass/Review: session sealed via finish-work (
|
|
162
|
+
- [ ] On gate Pass/Review: session sealed via finish-work (finish-work.md includes AskUserQuestion confirmation before state.json artifact registration and optional spec/knowhow extraction). On Fail: skip — session stays active, excluded from wiki search.
|
|
163
163
|
</success_criteria>
|
|
164
164
|
|
|
165
165
|
<on_complete>
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: maestro-brainstorm
|
|
3
3
|
description: Use when exploring ideas, evaluating approaches, or needing multi-perspective analysis before implementation
|
|
4
|
-
argument-hint: "[topic|role-name] [--yes] [--count N] [--session ID] [--update] [--skip-questions] [--include-questions] [--style-skill PKG]"
|
|
4
|
+
argument-hint: "[topic|role-name] [--yes] [--count N] [--session ID] [--update] [--skip-questions] [--include-questions] [--style-skill PKG] [--review-only] [--from <source>]"
|
|
5
5
|
allowed-tools:
|
|
6
6
|
- Read
|
|
7
7
|
- Write
|
|
8
|
+
- Edit
|
|
8
9
|
- Bash
|
|
9
10
|
- Glob
|
|
10
11
|
- Grep
|
|
@@ -51,6 +52,8 @@ $ARGUMENTS -- topic text for auto mode, or role name for single role mode.
|
|
|
51
52
|
| `--skip-questions` | Skip context gathering questions | false |
|
|
52
53
|
| `--include-questions` | Force context gathering even if analysis exists | false |
|
|
53
54
|
| `--style-skill PKG` | Style package for ui-designer role | — |
|
|
55
|
+
| `--review-only` | Run cross-role review on existing analyses without re-running role analysis | false |
|
|
56
|
+
| `--from <source>` | Load upstream context package (grill:ID, blueprint:ID, @file, or path) | — |
|
|
54
57
|
|
|
55
58
|
### Pre-load specs
|
|
56
59
|
1. **Architecture specs**: Run `maestro load --type spec --category arch` to load architecture constraints. Use as context for multi-role analysis — ensures roles respect documented decisions.
|
|
@@ -43,6 +43,7 @@ S_CONFIRM — 展示计划、用户确认(-y 跳过) PE
|
|
|
43
43
|
S_FANOUT — 构建 prompt、并行启动 delegate、STOP PERSIST: —
|
|
44
44
|
S_COLLECT — 回调到达、收集结果 PERSIST: per-tool outputs
|
|
45
45
|
S_CROSS_VERIFY — 分类发现(共识/冲突/独有) PERSIST: —
|
|
46
|
+
S_BOUNDARY_GRILL — 边界冲突检测与解决 PERSIST: —
|
|
46
47
|
S_SYNTHESIZE — 解决冲突、生成 3 个输出文件 PERSIST: outputs
|
|
47
48
|
S_REGISTER — 注册 CLB artifact PERSIST: state.json
|
|
48
49
|
S_REPORT — 显示摘要 + next-step routing PERSIST: —
|
|
@@ -84,7 +85,9 @@ S_SYNTHESIZE:
|
|
|
84
85
|
→ S_REGISTER DO: A_GENERATE_OUTPUTS
|
|
85
86
|
|
|
86
87
|
S_REGISTER:
|
|
87
|
-
→ S_REPORT DO: append CLB artifact to state.json (type: collab, scope: adhoc)
|
|
88
|
+
→ S_REPORT WHEN: user confirms or -y DO: append CLB artifact to state.json (type: collab, scope: adhoc)
|
|
89
|
+
→ S_REPORT WHEN: user declines DO: skip artifact registration, proceed to report
|
|
90
|
+
GUARD: AskUserQuestion "Register collab artifact to state.json?" (skipped if -y)
|
|
88
91
|
|
|
89
92
|
S_REPORT:
|
|
90
93
|
→ END DO: display summary (requirement, tools, consensus_level, per-tool status, artifact id, output dir)
|
|
@@ -96,8 +99,9 @@ S_REPORT:
|
|
|
96
99
|
### A_DISCOVER_TOOLS
|
|
97
100
|
|
|
98
101
|
```
|
|
99
|
-
Bash("maestro tools list --json 2
|
|
102
|
+
Bash("maestro tools list --json 2>$null || cat ~/.maestro/cli-tools.json")
|
|
100
103
|
```
|
|
104
|
+
**Note:** Shell commands MUST use the Bash tool (not PowerShell). Use POSIX syntax within Bash calls.
|
|
101
105
|
Filter: enabled == true. If --mode write: exclude type == "api-endpoint".
|
|
102
106
|
Auto-select (no --tools): first 3 eligible in config order.
|
|
103
107
|
|
|
@@ -413,7 +413,10 @@ Collect task outcome data:
|
|
|
413
413
|
|
|
414
414
|
```bash
|
|
415
415
|
# Detect files changed since companion doc creation
|
|
416
|
-
git
|
|
416
|
+
# Use git log --since for time-based filtering, then git diff for the range
|
|
417
|
+
git log --since="{companion_created_timestamp}" --format="%H" -1 # get oldest commit in range
|
|
418
|
+
git diff --name-only {oldest_commit}..HEAD # diff from that commit to HEAD
|
|
419
|
+
# Fallback if no commits since timestamp: git diff --name-only HEAD
|
|
417
420
|
```
|
|
418
421
|
|
|
419
422
|
Update frontmatter:
|
|
@@ -124,7 +124,7 @@ Read deferred `node-catalog.md` (fallback to built-in mapping):
|
|
|
124
124
|
| testing | `quality-test` |
|
|
125
125
|
| review | `quality-review` |
|
|
126
126
|
| brainstorm | `maestro-brainstorm` |
|
|
127
|
-
| analysis | `maestro delegate --
|
|
127
|
+
| analysis | `maestro delegate --to <tool> --mode analysis` |
|
|
128
128
|
| verify | `maestro-execute` |
|
|
129
129
|
| refactor | `quality-refactor` |
|
|
130
130
|
| debug | `quality-debug` |
|
|
@@ -154,7 +154,9 @@ Write `nodes.json`. Display resolved node list.
|
|
|
154
154
|
|
|
155
155
|
Read deferred `template-schema.md` (fallback to built-in structure).
|
|
156
156
|
Assemble template JSON: template_id, name, nodes, edges, checkpoints, context_schema, execution_mode.
|
|
157
|
-
|
|
157
|
+
**Confirmation gate**: AskUserQuestion showing template summary (ID, node count, variables) before writing.
|
|
158
|
+
- User confirms → write to `~/.maestro/templates/workflows/<slug>.json` and update index.json.
|
|
159
|
+
- User cancels → save draft, do not write template or index.
|
|
158
160
|
Display: path, ID, node count, variables, execute/edit commands. Clean up draft dir.
|
|
159
161
|
|
|
160
162
|
</actions>
|
|
@@ -86,8 +86,14 @@ Follow '~/.maestro/workflows/execute.md' completely.
|
|
|
86
86
|
- BLOCKED if missing: summary file absent or task status not updated — halt wave progression until evidence is recorded.
|
|
87
87
|
- Do NOT silently skip failed tasks — mark as blocked with reason.
|
|
88
88
|
|
|
89
|
+
**GATE 2.5: Wave Failure Handling**
|
|
90
|
+
- IF all tasks in a wave failed: halt wave progression, report E005 with per-task failure reasons. Do NOT proceed to next wave — downstream waves depend on current wave outputs.
|
|
91
|
+
- IF cascading failure (wave N fails → wave N+1 has unmet dependencies): mark all dependent tasks in subsequent waves as `blocked` with reason `"upstream_wave_failed"`. Skip blocked waves and proceed to completion with partial results.
|
|
92
|
+
- `-y` mode: auto-skip blocked waves without prompting, log warning W002.
|
|
93
|
+
- Non `-y` mode: `AskUserQuestion` with options [retry wave / skip and continue / abort execution].
|
|
94
|
+
|
|
89
95
|
**GATE 3: All Tasks → Completion**
|
|
90
|
-
- REQUIRED: All waves executed in dependency order.
|
|
96
|
+
- REQUIRED: All waves executed in dependency order (or explicitly skipped via Gate 2.5).
|
|
91
97
|
- REQUIRED: EXC artifact registered in state.json.
|
|
92
98
|
- BLOCKED if missing: waves incomplete or EXC artifact not registered — do not report execution complete.
|
|
93
99
|
|
|
@@ -100,27 +106,37 @@ Task summaries MUST include:
|
|
|
100
106
|
|
|
101
107
|
### Post-task Knowledge Inquiry
|
|
102
108
|
|
|
103
|
-
After each task completion, check triggers:
|
|
109
|
+
After each task completion, extract structured fields from the task summary, then check triggers:
|
|
110
|
+
|
|
111
|
+
**Structured extraction** (from `.summaries/TASK-{NNN}-summary.md`):
|
|
112
|
+
- `deviations[]` — explicit plan deviations (look for "deviated", "changed approach", "instead of", "unlike plan")
|
|
113
|
+
- `design_rationale[]` — explicit design decisions (look for "chose X because", "decided to", "trade-off")
|
|
114
|
+
- `retry_count` — from `.task/TASK-{NNN}.json` status history
|
|
104
115
|
|
|
105
116
|
| Condition | Ask | Route |
|
|
106
117
|
|-----------|-----|-------|
|
|
107
|
-
|
|
|
108
|
-
| retry_count >= 2 | "Document fix pattern?" | spec-add debug |
|
|
109
|
-
|
|
|
118
|
+
| `deviations[]` is non-empty | "Record as arch constraint?" | spec-add arch |
|
|
119
|
+
| `retry_count >= 2` | "Document fix pattern?" | spec-add debug |
|
|
120
|
+
| `design_rationale[]` is non-empty | "Record as knowhow?" | spec-add learning |
|
|
110
121
|
|
|
111
122
|
On confirm → `Skill("spec-add", "<category> <content> --description \"<summary>\"")`.
|
|
112
123
|
Include `--description` with a one-line summary for search result display.
|
|
113
124
|
|
|
114
125
|
### Issue Status Sync
|
|
115
126
|
|
|
116
|
-
On each task completion, if `task.issue_id` exists, sync status back to the issue in `.workflow/issues/issues.jsonl
|
|
127
|
+
On each task completion, if `task.issue_id` exists, sync status back to the issue in `.workflow/issues/issues.jsonl`.
|
|
128
|
+
|
|
129
|
+
**Confirmation gate**: Before writing to issues.jsonl, show the proposed status change and ask for confirmation — unless `-y` is active, in which case auto-approve.
|
|
117
130
|
|
|
118
131
|
```
|
|
119
132
|
For each completed/failed TASK with issue_id:
|
|
120
133
|
Read issue from issues.jsonl by issue_id
|
|
121
134
|
Collect all task_refs[] statuses for that issue:
|
|
122
|
-
all task_refs completed → issue.status = "resolved"
|
|
123
|
-
any task_ref failed → issue.status = "in_progress"
|
|
135
|
+
all task_refs completed → proposed issue.status = "resolved"
|
|
136
|
+
any task_ref failed → proposed issue.status = "in_progress"
|
|
137
|
+
IF NOT auto_mode (-y):
|
|
138
|
+
AskUserQuestion: "Update issue {issue_id} status to {proposed_status}?" [Yes / Skip]
|
|
139
|
+
IF Skip → continue to next task without writing
|
|
124
140
|
Append history entry: { action: "executed", at: <ISO>, by: "maestro-execute", summary: "TASK-{NNN} {status}" }
|
|
125
141
|
Write updated issue back to issues.jsonl
|
|
126
142
|
```
|
|
@@ -169,7 +185,9 @@ Status verdicts:
|
|
|
169
185
|
| E002 | error | Plan directory not found | Check --dir path |
|
|
170
186
|
| E003 | error | plan.json not found in directory | Verify plan.json exists, run maestro-plan first |
|
|
171
187
|
| E004 | error | No pending tasks, all tasks already completed | Check task statuses, reset if needed |
|
|
188
|
+
| E005 | error | All tasks in wave failed — wave progression halted | Review per-task failure reasons; retry wave or abort |
|
|
172
189
|
| W001 | warning | Executor completed with partial failures | Check task dependencies, retry failed wave |
|
|
190
|
+
| W002 | warning | Cascading wave failure — downstream waves auto-blocked | Review blocked tasks; re-run after fixing upstream failures |
|
|
173
191
|
</error_codes>
|
|
174
192
|
|
|
175
193
|
<success_criteria>
|
|
@@ -53,9 +53,10 @@ Fork and sync algorithm steps are defined in workflow `fork.md`.
|
|
|
53
53
|
- BLOCKED if missing: worktree creation failed or shared files not copied — do not proceed to artifact scoping.
|
|
54
54
|
|
|
55
55
|
**GATE 3: Artifact Copy → Completion**
|
|
56
|
-
- REQUIRED:
|
|
57
|
-
- REQUIRED:
|
|
58
|
-
- REQUIRED: `
|
|
56
|
+
- REQUIRED: AskUserQuestion confirmation before registry writes — show milestone scope, worktree path, and state entries to be written. User must confirm or abort.
|
|
57
|
+
- REQUIRED: `worktree-scope.json` written with milestone scope (after confirmation).
|
|
58
|
+
- REQUIRED: Scoped `state.json` written (only this milestone's artifacts) (after confirmation).
|
|
59
|
+
- REQUIRED: `worktrees.json` registry updated in main worktree (after confirmation).
|
|
59
60
|
- BLOCKED if missing: scope marker, scoped state, or registry update absent — worktree is unusable without these.
|
|
60
61
|
|
|
61
62
|
**Sync mode:**
|
|
@@ -151,7 +151,7 @@ Status verdicts:
|
|
|
151
151
|
- [ ] Risk register captures all unresolved tensions
|
|
152
152
|
- [ ] `context-package.json` generated with schema "context-package/1.0"
|
|
153
153
|
- [ ] Artifact registered in state.json (type=grill, id=GRL-xxx)
|
|
154
|
-
- [ ] Session sealed via finish-work
|
|
154
|
+
- [ ] Session sealed via finish-work (finish-work.md includes AskUserQuestion confirmation before state.json artifact registration and optional spec/knowhow extraction)
|
|
155
155
|
</success_criteria>
|
|
156
156
|
|
|
157
157
|
<on_complete>
|
|
@@ -64,14 +64,14 @@ Read `.workflow/config.json`. If file missing, initialize with empty guard secti
|
|
|
64
64
|
|
|
65
65
|
**`allow <path>`:**
|
|
66
66
|
- Normalize path to forward slashes, ensure trailing slash for directories
|
|
67
|
-
- If `guard.mode` is `deny`,
|
|
67
|
+
- If `guard.mode` is `deny`, AskUserQuestion: "Switching from deny to allow mode will clear existing paths ({N} paths). Continue?" — abort if user declines.
|
|
68
68
|
- Add path to `guard.paths` (deduplicate)
|
|
69
69
|
- Set `guard.enabled = true` if not already
|
|
70
70
|
- Write config
|
|
71
71
|
|
|
72
72
|
**`deny <path>`:**
|
|
73
73
|
- Normalize path to forward slashes, ensure trailing slash for directories
|
|
74
|
-
- If `guard.mode` is `allow`,
|
|
74
|
+
- If `guard.mode` is `allow`, AskUserQuestion: "Switching from allow to deny mode will clear existing paths ({N} paths). Continue?" — abort if user declines.
|
|
75
75
|
- Set `guard.mode = "deny"`
|
|
76
76
|
- Add path to `guard.paths` (deduplicate)
|
|
77
77
|
- Set `guard.enabled = true` if not already (symmetric with `allow`: adding a deny path auto-enables the guard)
|
|
@@ -202,7 +202,8 @@ Before reading any command workflow:
|
|
|
202
202
|
- `↺` marks refine loop with max iteration count
|
|
203
203
|
- Conditional steps show trigger condition
|
|
204
204
|
- Skipped conditional steps marked `(skipped)`
|
|
205
|
-
3. Create session
|
|
205
|
+
3. **Confirm chain session**: AskUserQuestion "Create chain session for '{chain_type}' targeting '{target}'?" — proceed only if user confirms. On decline, abort chain.
|
|
206
|
+
Create session: `.workflow/.maestro/ui-craft-{YYYYMMDD-HHmmss}/status.json`
|
|
206
207
|
```json
|
|
207
208
|
{ "chain_type": "...", "target": "...", "steps": [...], "current_step": 0,
|
|
208
209
|
"gate_history": [], "loop_count": 0, "status": "running" }
|
|
@@ -52,7 +52,18 @@ Follow '~/.maestro/workflows/merge.md' completely.
|
|
|
52
52
|
<completion>
|
|
53
53
|
### Knowledge inquiry
|
|
54
54
|
|
|
55
|
-
After successful merge,
|
|
55
|
+
After successful merge, use `AskUserQuestion` to confirm knowledge persistence:
|
|
56
|
+
|
|
57
|
+
```
|
|
58
|
+
question: "Merge 完成。是否记录里程碑经验教训?"
|
|
59
|
+
options:
|
|
60
|
+
- label: "记录经验"
|
|
61
|
+
description: "通过 spec-add 持久化此次里程碑的关键洞察"
|
|
62
|
+
- label: "跳过"
|
|
63
|
+
description: "不记录,直接完成"
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
User selects "记录经验" → prompt for title/insight, then persist via `Skill("spec-add", "learning \"<title>\" \"<insight>\" --keywords <kw1>,<kw2> --description \"<summary>\"")`. User selects "跳过" → proceed to next-step routing.
|
|
56
67
|
|
|
57
68
|
### Next-step routing
|
|
58
69
|
|
|
@@ -23,6 +23,7 @@ Produces audit-report.md with PASS/FAIL verdict.
|
|
|
23
23
|
|
|
24
24
|
<context>
|
|
25
25
|
Milestone: $ARGUMENTS (optional -- defaults to current_milestone from state.json).
|
|
26
|
+
If $ARGUMENTS is empty AND current_milestone is null → raise E001 with message "No milestone specified and no current_milestone set in state.json. Provide a milestone identifier as argument."
|
|
26
27
|
|
|
27
28
|
**Requires:** All phases in the milestone should have completed execute artifacts.
|
|
28
29
|
|
|
@@ -27,6 +27,7 @@ Requires audit PASS; produces milestone archive and learnings.
|
|
|
27
27
|
|
|
28
28
|
<context>
|
|
29
29
|
Milestone: $ARGUMENTS (optional -- defaults to current_milestone from state.json).
|
|
30
|
+
If $ARGUMENTS is empty AND current_milestone is null → raise E001 with message "No milestone specified and no current_milestone set in state.json. Provide a milestone identifier as argument."
|
|
30
31
|
|
|
31
32
|
**Requires:** `/maestro-milestone-audit` should have passed.
|
|
32
33
|
|
|
@@ -59,7 +60,8 @@ Archive flow steps (validation, directory archival, artifact history, knowhow ex
|
|
|
59
60
|
- BLOCKED if missing: knowhow extraction not attempted or project.md not updated — state advancement requires completed knowledge capture.
|
|
60
61
|
|
|
61
62
|
**GATE 4: State Advancement → Completion**
|
|
62
|
-
- REQUIRED: state.json
|
|
63
|
+
- REQUIRED: AskUserQuestion confirmation before state.json advancement — show current milestone, next milestone (or null for adhoc), and artifacts to clear. User must confirm or abort.
|
|
64
|
+
- REQUIRED: state.json updated — next milestone as current (standard) or current_milestone=null (adhoc) (after confirmation).
|
|
63
65
|
- REQUIRED: Roadmap snapshot saved (standard only).
|
|
64
66
|
- BLOCKED if missing: state.json not advanced — project remains stuck on completed milestone.
|
|
65
67
|
|
|
@@ -73,9 +75,12 @@ After knowhow extraction (step 4), scan `learnings.md` for promotion candidates:
|
|
|
73
75
|
2. **Convention drift detection**: Compare executed task summaries against `coding-conventions.md` and `architecture-constraints.md`:
|
|
74
76
|
→ Ask: "Were any established conventions bypassed during this milestone? Should conventions be updated?"
|
|
75
77
|
|
|
76
|
-
3. **Wiki island check**:
|
|
78
|
+
3. **Wiki island check**: AskUserQuestion "Run wiki-connect --fix to link newly extracted knowledge?" — execute `manage-wiki connect --fix` only if user confirms.
|
|
77
79
|
|
|
78
|
-
|
|
80
|
+
Each promotion candidate requires explicit user confirmation via AskUserQuestion before writing:
|
|
81
|
+
- **"Promote"** → invoke `Skill({ skill: "spec-add", args: "<category> <content>" })` with promoted content, preserving original date and source traceability.
|
|
82
|
+
- **"Skip"** → do not promote this candidate; proceed to next.
|
|
83
|
+
- **"Skip all"** → skip remaining candidates.
|
|
79
84
|
|
|
80
85
|
**Adhoc milestone (D-008):** When completing an adhoc milestone, skip roadmap snapshot and do not advance to next milestone. Set `current_milestone = null`, `status = "idle"`. Adhoc milestones are self-contained — no successor in roadmap chain.
|
|
81
86
|
</execution>
|
|
@@ -70,10 +70,13 @@ Follow '~/.maestro/workflows/milestone-release.md' completely.
|
|
|
70
70
|
|
|
71
71
|
**GATE 3: Changelog → Tag/Push**
|
|
72
72
|
- REQUIRED: CHANGELOG.md entry written with milestone summary + grouped changes.
|
|
73
|
-
- REQUIRED:
|
|
73
|
+
- REQUIRED: AskUserQuestion confirmation before creating release commit — show version, changelog diff, and files to be committed. User must confirm or abort.
|
|
74
|
+
- REQUIRED: Release commit created with conventional message (after confirmation).
|
|
74
75
|
|
|
75
|
-
**GATE 4: Tag → Completion**
|
|
76
|
-
- REQUIRED:
|
|
76
|
+
**GATE 4: Tag → Push → Completion**
|
|
77
|
+
- REQUIRED: AskUserQuestion confirmation before git tag creation — show tag name and annotation (unless --no-tag). User must confirm or abort.
|
|
78
|
+
- REQUIRED: Annotated git tag created (unless --no-tag) (after confirmation).
|
|
79
|
+
- REQUIRED: AskUserQuestion confirmation before git push — show remote and refs to push (unless --no-push). User must confirm or abort.
|
|
77
80
|
- REQUIRED: state.json updated with last_release_version + last_release_at.
|
|
78
81
|
|
|
79
82
|
For `--dry-run`: print computed version, changelog diff, and tag name without side effects.
|
|
@@ -132,5 +135,6 @@ Status verdicts:
|
|
|
132
135
|
- [ ] Release commit created with conventional message
|
|
133
136
|
- [ ] Annotated git tag created (unless `--no-tag`)
|
|
134
137
|
- [ ] Commit + tag pushed to remote (unless `--no-push` or push failed → W002)
|
|
135
|
-
- [ ]
|
|
138
|
+
- [ ] User confirmed before each destructive git operation (commit, tag, push) via AskUserQuestion
|
|
139
|
+
- [ ] state.json updated with last_release_version + last_release_at timestamp (after AskUserQuestion confirmation)
|
|
136
140
|
</success_criteria>
|
|
@@ -134,6 +134,15 @@ Handoff rules:
|
|
|
134
134
|
- Support runtime variable placeholders: `{phase}`, `{description}`, `{session_id}`
|
|
135
135
|
- Keep handoff block under 10 lines of markdown
|
|
136
136
|
|
|
137
|
+
### 3.5. Content approval
|
|
138
|
+
|
|
139
|
+
Display the full overlay JSON to the user. AskUserQuestion:
|
|
140
|
+
- **"Approve & install"** — proceed to installation
|
|
141
|
+
- **"Edit"** — user provides corrections, re-draft
|
|
142
|
+
- **"Cancel"** — discard overlay, do not write
|
|
143
|
+
|
|
144
|
+
Only write the overlay JSON file to `~/.maestro/overlays/<slug>.json` after user approval.
|
|
145
|
+
|
|
137
146
|
### 4. Install via `maestro overlay add`
|
|
138
147
|
|
|
139
148
|
Run:
|
|
@@ -38,6 +38,7 @@ Scope routing, base flags (`--collab`, `--spec`, `-y`, `--gaps`, `--dir`), outpu
|
|
|
38
38
|
- `analyze:ANL-xxx` → CONTEXT_DIR = artifact path, scope = "standalone"
|
|
39
39
|
- `blueprint:BLP-xxx` → CONTEXT_DIR = blueprint path, scope = "standalone"
|
|
40
40
|
- `@file` or `path/` → load context-package.json from path
|
|
41
|
+
- `--tdd` — Enable TDD mode: generate test-first task structure (Red-Green-Refactor). See workflow `plan.md` § TDD Mode for task generation rules.
|
|
41
42
|
- `--revise [instructions]` -- See workflow plan.md § Revise Mode
|
|
42
43
|
- `--check <plan-dir>` -- See workflow plan.md § Check Mode
|
|
43
44
|
|
|
@@ -35,7 +35,7 @@ $ARGUMENTS — template slug/path, or flags.
|
|
|
35
35
|
| skill | `Skill(skill, args)` | sync |
|
|
36
36
|
| command | `Skill(skill, args)` | sync |
|
|
37
37
|
| cli | `maestro delegate --to tool --mode mode` via `Bash(run_in_background: true)` | async, STOP + wait |
|
|
38
|
-
| agent | `Agent(subagent_type, prompt)` | configurable |
|
|
38
|
+
| agent | `Agent(subagent_type, prompt)` — valid subagent_type: `"task"` (default), `"research"`, `"code"`. Unknown type falls back to `"task"`. | configurable |
|
|
39
39
|
| checkpoint | State save + optional user pause | — |
|
|
40
40
|
|
|
41
41
|
**Runtime reference resolution** in args_template:
|
|
@@ -105,7 +105,7 @@ S_EXEC_LOOP:
|
|
|
105
105
|
→ END WHEN: checkpoint pause DO: set status=paused, display resume command
|
|
106
106
|
→ END WHEN: abort chosen DO: set status=aborted, save progress
|
|
107
107
|
GUARD: cli nodes → Bash(run_in_background: true) + STOP, wait for callback
|
|
108
|
-
GUARD: on failure → on_fail: skip (log, advance) | retry (once) | abort (AskUserQuestion: Retry/Skip/Abort)
|
|
108
|
+
GUARD: on failure → on_fail: skip (log, advance) | retry (once) | abort (AskUserQuestion: Retry/Skip/Abort). Default on_fail when not specified: `abort` (prompt user via AskUserQuestion).
|
|
109
109
|
GUARD: after step 3+ → display context hint "可随时 /maestro-player -c 恢复"
|
|
110
110
|
|
|
111
111
|
S_COMPLETE:
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: maestro-quick
|
|
3
3
|
description: Quick task execution, skip optional agents
|
|
4
|
-
argument-hint: "[description] [--full] [--discuss]"
|
|
4
|
+
argument-hint: "[description] [--full] [--discuss] [-y]"
|
|
5
5
|
allowed-tools:
|
|
6
6
|
- Read
|
|
7
7
|
- Write
|
|
@@ -15,6 +15,7 @@ allowed-tools:
|
|
|
15
15
|
<purpose>
|
|
16
16
|
Execute small, ad-hoc tasks with workflow guarantees (atomic commits, state tracking) via a shortened pipeline.
|
|
17
17
|
Flags --discuss and --full enable additional pipeline stages.
|
|
18
|
+
**Implicit write**: state.json scratch task entry is written automatically as part of workflow tracking (no confirmation gate).
|
|
18
19
|
</purpose>
|
|
19
20
|
|
|
20
21
|
<required_reading>
|
|
@@ -27,6 +28,7 @@ $ARGUMENTS
|
|
|
27
28
|
Parse for:
|
|
28
29
|
- `--full` flag -- Enables plan-checking (max 2 iterations) and post-execution verification
|
|
29
30
|
- `--discuss` flag -- Decision extraction before planning (gray areas, Locked/Free/Deferred classification)
|
|
31
|
+
- `-y` / `--yes` flag -- Auto mode: skip commit confirmation, auto-approve state writes
|
|
30
32
|
- Remaining text as task description
|
|
31
33
|
|
|
32
34
|
### Pre-load context
|
|
@@ -78,6 +80,6 @@ Task summaries MUST include concrete evidence of completion (files changed, test
|
|
|
78
80
|
- [ ] Scratch task directory created under .workflow/scratch/
|
|
79
81
|
- [ ] plan.json written with task definitions
|
|
80
82
|
- [ ] All tasks executed with summaries written
|
|
81
|
-
- [ ] state.json updated with scratch task entry
|
|
82
|
-
- [ ] Commit created with task changes
|
|
83
|
+
- [ ] state.json updated with scratch task entry (implicit — part of workflow tracking, no confirmation needed)
|
|
84
|
+
- [ ] Commit created with task changes: stage ONLY files modified by the task (from `.summaries/TASK-*-summary.md` "Files modified" list); confirm with `AskUserQuestion` showing staged files and proposed commit message — unless `-y` is active, in which case auto-commit
|
|
83
85
|
</success_criteria>
|