@mmerterden/multi-agent-pipeline 18.0.0 → 19.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +183 -0
- package/README.md +34 -18
- package/README.tr.md +14 -16
- package/docs/adr/0002-instruction-driven-flag.md +1 -0
- package/docs/adr/0005-lazy-phase-docs.md +11 -1
- package/docs/adr/0008-installer-modularization-and-secret-leak-defense.md +1 -0
- package/docs/adr/0010-own-code-graph.md +1 -0
- package/docs/adr/0014-six-phase-consolidation.md +134 -0
- package/docs/adr/README.md +2 -1
- package/docs/architecture.md +37 -38
- package/docs/best-practices.md +1 -1
- package/docs/ecosystem.md +37 -26
- package/docs/engineering.md +1 -1
- package/docs/facts.json +45 -0
- package/docs/features.md +54 -53
- package/docs/performance.md +5 -5
- package/docs/recovery-guide.md +9 -9
- package/docs/token-budget-history.md +3 -1
- package/index.js +2 -2
- package/install/_codex-agents.mjs +1 -1
- package/install/templates/claude-hooks.json +1 -1
- package/install/templates/codex-instructions.md +1 -1
- package/install/templates/copilot-instructions.md +28 -28
- package/manifest.json +209 -193
- package/package.json +2 -2
- package/pipeline/agents/dev-critic.md +3 -3
- package/pipeline/commands/figma-to-swiftui.md +1 -1
- package/pipeline/commands/multi-agent/SKILL.md +8 -8
- package/pipeline/commands/multi-agent/analysis/SKILL.md +9 -9
- package/pipeline/commands/multi-agent/autopilot/SKILL.md +7 -7
- package/pipeline/commands/multi-agent/channels/SKILL.md +15 -15
- package/pipeline/commands/multi-agent/diff-explain/SKILL.md +6 -6
- package/pipeline/commands/multi-agent/garbage-collect/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/graph/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/help/SKILL.md +62 -62
- package/pipeline/commands/multi-agent/language/SKILL.md +2 -2
- package/pipeline/commands/multi-agent/local/SKILL.md +11 -11
- package/pipeline/commands/multi-agent/local-autopilot/SKILL.md +13 -13
- package/pipeline/commands/multi-agent/log/SKILL.md +2 -2
- package/pipeline/commands/multi-agent/manual-test/SKILL.md +9 -9
- package/pipeline/commands/multi-agent/model/SKILL.md +69 -0
- package/pipeline/commands/multi-agent/refactor/SKILL.md +3 -3
- package/pipeline/commands/multi-agent/resume/SKILL.md +4 -4
- package/pipeline/commands/multi-agent/resume-local/SKILL.md +19 -17
- package/pipeline/commands/multi-agent/review/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/route-off/SKILL.md +36 -0
- package/pipeline/commands/multi-agent/route-on/SKILL.md +74 -0
- package/pipeline/commands/multi-agent/route-status/SKILL.md +56 -0
- package/pipeline/commands/multi-agent/setup/SKILL.md +2 -2
- package/pipeline/commands/multi-agent/status/SKILL.md +5 -5
- package/pipeline/commands/multi-agent/steer/SKILL.md +2 -2
- package/pipeline/commands/multi-agent/sync/SKILL.md +12 -13
- package/pipeline/commands/multi-agent/test/SKILL.md +1 -1
- package/pipeline/lib/credential-inventory.sh +1 -1
- package/pipeline/lib/fetch-fortify.sh +1 -1
- package/pipeline/lib/model-rung.sh +142 -0
- package/pipeline/lib/phase-schema.mjs +88 -0
- package/pipeline/lib/plan-todos.sh +5 -5
- package/pipeline/lib/route-state.sh +161 -0
- package/pipeline/lib/run-paths.sh +2 -2
- package/pipeline/multi-agent-refs/_account-picker.md +1 -1
- package/pipeline/multi-agent-refs/_dev-context.md +1 -1
- package/pipeline/multi-agent-refs/_input-parser.md +1 -1
- package/pipeline/multi-agent-refs/analysis/evidence.md +0 -9
- package/pipeline/multi-agent-refs/analysis/intake.md +1 -1
- package/pipeline/multi-agent-refs/analysis/locked.md +21 -22
- package/pipeline/multi-agent-refs/analysis/render.md +1 -1
- package/pipeline/multi-agent-refs/analysis/synthesis.md +12 -6
- package/pipeline/multi-agent-refs/android-guide.md +1 -1
- package/pipeline/multi-agent-refs/audit-guide.md +13 -13
- package/pipeline/multi-agent-refs/channels/issue-comment.md +2 -2
- package/pipeline/multi-agent-refs/channels/jira.md +3 -3
- package/pipeline/multi-agent-refs/channels/pr.md +4 -4
- package/pipeline/multi-agent-refs/channels/wiki.md +1 -1
- package/pipeline/multi-agent-refs/component-dispatch.md +3 -3
- package/pipeline/multi-agent-refs/cross-cli-contract.md +31 -6
- package/pipeline/multi-agent-refs/features/autopilot-circuit-breaker.md +4 -4
- package/pipeline/multi-agent-refs/features/code-graph.md +5 -5
- package/pipeline/multi-agent-refs/features/design-conformance.md +1 -1
- package/pipeline/multi-agent-refs/features/dev-critic.md +3 -3
- package/pipeline/multi-agent-refs/features/doctor.md +2 -2
- package/pipeline/multi-agent-refs/features/external-context-injection.md +3 -3
- package/pipeline/multi-agent-refs/features/maturity-followup.md +3 -3
- package/pipeline/multi-agent-refs/features/model-fallback.md +5 -5
- package/pipeline/multi-agent-refs/features/plan-todos.md +1 -1
- package/pipeline/multi-agent-refs/features/repo-map.md +1 -1
- package/pipeline/multi-agent-refs/features/review-delta.md +3 -3
- package/pipeline/multi-agent-refs/features/review-multi-repo.md +1 -1
- package/pipeline/multi-agent-refs/features/scope-check.md +4 -4
- package/pipeline/multi-agent-refs/features/skill-conformance.md +2 -2
- package/pipeline/multi-agent-refs/features/stack-skill-routing.md +1 -1
- package/pipeline/multi-agent-refs/features/verify-by-test.md +4 -4
- package/pipeline/multi-agent-refs/features/visual-evidence.md +19 -19
- package/pipeline/multi-agent-refs/features/worktree-finalize.md +6 -6
- package/pipeline/multi-agent-refs/issue-jira-triad.md +10 -10
- package/pipeline/multi-agent-refs/knowledge.md +11 -11
- package/pipeline/multi-agent-refs/multi-repo-integration-build.md +13 -13
- package/pipeline/multi-agent-refs/payload-contracts.md +8 -8
- package/pipeline/multi-agent-refs/phases/log-format.md +10 -10
- package/pipeline/multi-agent-refs/phases/modes.md +30 -30
- package/pipeline/multi-agent-refs/phases/operations.md +8 -8
- package/pipeline/multi-agent-refs/phases/phase-0-init.md +24 -24
- package/pipeline/multi-agent-refs/phases/phase-1-plan.md +599 -0
- package/pipeline/multi-agent-refs/phases/{phase-3-dev.md → phase-2-dev.md} +129 -49
- package/pipeline/multi-agent-refs/phases/{phase-4-review.md → phase-3-review.md} +225 -107
- package/pipeline/multi-agent-refs/phases/{phase-6-commit.md → phase-4-commit.md} +23 -23
- package/pipeline/multi-agent-refs/phases/{phase-7-report.md → phase-5-report.md} +29 -29
- package/pipeline/multi-agent-refs/phases.md +44 -48
- package/pipeline/multi-agent-refs/picker-contract.md +1 -1
- package/pipeline/multi-agent-refs/progress-contract.md +6 -6
- package/pipeline/multi-agent-refs/readiness-review.md +1 -1
- package/pipeline/multi-agent-refs/rules.md +7 -7
- package/pipeline/multi-agent-refs/swiftui-guide.md +2 -2
- package/pipeline/multi-agent-refs/tracker-contract.md +31 -32
- package/pipeline/multi-agent-refs/wiki-capture.md +14 -14
- package/pipeline/preferences-template.json +9 -1
- package/pipeline/rules/outside-the-pipeline.md +1 -1
- package/pipeline/schemas/agent-state.schema.json +50 -50
- package/pipeline/schemas/analysis-output.schema.json +2 -2
- package/pipeline/schemas/autopilot-config.schema.json +1 -1
- package/pipeline/schemas/code-graph.schema.json +1 -1
- package/pipeline/schemas/criteria-manifest.schema.json +1 -1
- package/pipeline/schemas/dev-critic-output.schema.json +1 -1
- package/pipeline/schemas/diff-risk.schema.json +1 -1
- package/pipeline/schemas/migrations/prefs-2.4.0-to-2.5.0.mjs +2 -2
- package/pipeline/schemas/migrations/prefs-2.6.0-to-2.7.0.mjs +31 -0
- package/pipeline/schemas/migrations/state-2.1.0-to-2.2.0.mjs +129 -0
- package/pipeline/schemas/phases.json +105 -0
- package/pipeline/schemas/plan-todos.schema.json +5 -5
- package/pipeline/schemas/planning-output.schema.json +1 -1
- package/pipeline/schemas/prefs.schema.json +100 -56
- package/pipeline/schemas/reviewer-output.schema.json +3 -3
- package/pipeline/schemas/route-config.schema.json +74 -0
- package/pipeline/schemas/scope-check.schema.json +1 -1
- package/pipeline/schemas/test-gap.schema.json +1 -1
- package/pipeline/schemas/token-budget.json +12 -18
- package/pipeline/schemas/triage-output.schema.json +6 -6
- package/pipeline/scripts/README.md +3 -3
- package/pipeline/scripts/_code-graph.mjs +2 -2
- package/pipeline/scripts/_run-paths.mjs +2 -2
- package/pipeline/scripts/_smoke-root.sh +1 -1
- package/pipeline/scripts/aggregate-metrics.mjs +1 -1
- package/pipeline/scripts/capture-flush.sh +8 -8
- package/pipeline/scripts/capture-resume.sh +3 -3
- package/pipeline/scripts/classify-plan-safety.mjs +1 -1
- package/pipeline/scripts/diff-explain.mjs +1 -1
- package/pipeline/scripts/doctor.mjs +2 -2
- package/pipeline/scripts/gc-abandoned.sh +3 -3
- package/pipeline/scripts/gc-tmp.sh +1 -1
- package/pipeline/scripts/gc-worktrees.sh +1 -1
- package/pipeline/scripts/gen-facts.mjs +175 -0
- package/pipeline/scripts/gen-mode-dispatch.mjs +32 -37
- package/pipeline/scripts/gen-ref-toc.mjs +1 -1
- package/pipeline/scripts/graph-report.mjs +1 -1
- package/pipeline/scripts/jira-attach.sh +1 -1
- package/pipeline/scripts/learn-from-transcripts.mjs +1 -1
- package/pipeline/scripts/learning-curve.mjs +2 -2
- package/pipeline/scripts/log-metric.sh +17 -4
- package/pipeline/scripts/memory-save.sh +1 -1
- package/pipeline/scripts/migrate-prefs.mjs +22 -5
- package/pipeline/scripts/phase-banner.sh +20 -20
- package/pipeline/scripts/phase-tracker.sh +7 -7
- package/pipeline/scripts/plan-coverage-gate.mjs +2 -2
- package/pipeline/scripts/render-agent-log-cost.sh +1 -1
- package/pipeline/scripts/render-work-summary.sh +3 -3
- package/pipeline/scripts/review-file-filter.mjs +1 -1
- package/pipeline/scripts/run-aggregator.mjs +13 -6
- package/pipeline/scripts/run-metrics.mjs +1 -1
- package/pipeline/scripts/runs-index.mjs +11 -1
- package/pipeline/scripts/smoke-cross-cli-behavior.sh +6 -6
- package/pipeline/scripts/smoke-schema-validation.sh +26 -7
- package/pipeline/scripts/token-budget-report.mjs +13 -2
- package/pipeline/scripts/triage-memory.mjs +2 -2
- package/pipeline/scripts/validate-analysis-doc.mjs +73 -17
- package/pipeline/scripts/validate-planning.mjs +1 -1
- package/pipeline/scripts/validate-reviewer.mjs +1 -1
- package/pipeline/scripts/validate-state.mjs +45 -5
- package/pipeline/scripts/validate-triage.mjs +3 -3
- package/pipeline/scripts/worktree-finalize.sh +5 -5
- package/pipeline/skills/.skill-manifest.json +37 -21
- package/pipeline/skills/.skills-index.json +49 -5
- package/pipeline/skills/shared/README.md +10 -6
- package/pipeline/skills/shared/core/apple-archive-compliance/SKILL.md +2 -2
- package/pipeline/skills/shared/core/google-play-compliance/SKILL.md +2 -2
- package/pipeline/skills/shared/core/multi-agent/SKILL.md +69 -71
- package/pipeline/skills/shared/core/multi-agent-autopilot/SKILL.md +3 -3
- package/pipeline/skills/shared/core/multi-agent-channels/SKILL.md +14 -14
- package/pipeline/skills/shared/core/multi-agent-diff-explain/SKILL.md +5 -5
- package/pipeline/skills/shared/core/multi-agent-graph/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-help/SKILL.md +25 -23
- package/pipeline/skills/shared/core/multi-agent-language/SKILL.md +2 -2
- package/pipeline/skills/shared/core/multi-agent-local/SKILL.md +2 -2
- package/pipeline/skills/shared/core/multi-agent-local-autopilot/SKILL.md +8 -8
- package/pipeline/skills/shared/core/multi-agent-manual-test/SKILL.md +6 -6
- package/pipeline/skills/shared/core/multi-agent-model/SKILL.md +71 -0
- package/pipeline/skills/shared/core/multi-agent-refactor/SKILL.md +3 -3
- package/pipeline/skills/shared/core/multi-agent-resume/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-resume-local/SKILL.md +7 -7
- package/pipeline/skills/shared/core/multi-agent-route-off/SKILL.md +39 -0
- package/pipeline/skills/shared/core/multi-agent-route-on/SKILL.md +76 -0
- package/pipeline/skills/shared/core/multi-agent-route-status/SKILL.md +59 -0
- package/pipeline/skills/shared/core/multi-agent-setup/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-status/SKILL.md +5 -5
- package/pipeline/skills/shared/core/multi-agent-steer/SKILL.md +2 -2
- package/pipeline/skills/shared/core/multi-agent-sync/SKILL.md +6 -5
- package/pipeline/skills/skills-index.md +8 -4
- package/pipeline/multi-agent-refs/phases/phase-1-analysis.md +0 -263
- package/pipeline/multi-agent-refs/phases/phase-2-planning.md +0 -344
- package/pipeline/multi-agent-refs/phases/phase-5-test.md +0 -182
package/docs/architecture.md
CHANGED
|
@@ -1,53 +1,49 @@
|
|
|
1
1
|
# Architecture
|
|
2
2
|
|
|
3
|
-
##
|
|
3
|
+
## 6-Phase Pipeline Flow (0-5)
|
|
4
4
|
|
|
5
5
|
```mermaid
|
|
6
6
|
graph TD
|
|
7
7
|
INPUT["🎯 Input<br/>(Issue # / Jira URL / free text)"]
|
|
8
8
|
P0["Phase 0: Init<br/>Project detect, worktree, branch, identity"]
|
|
9
|
-
P1["Phase 1:
|
|
10
|
-
P2["Phase 2:
|
|
11
|
-
P3["Phase 3:
|
|
12
|
-
P4["Phase 4:
|
|
13
|
-
P5["Phase 5:
|
|
14
|
-
P6["Phase 6: Commit<br/>Git commit, PR creation"]
|
|
15
|
-
P7["Phase 7: Report<br/>Jira · Wiki+Figma · Confluence · Log · Knowledge"]
|
|
9
|
+
P1["Phase 1: Plan<br/>Codebase scan (parallel Explore agents),<br/>task breakdown, architecture review, Plan Approval Gate"]
|
|
10
|
+
P2["Phase 2: Dev<br/>TDD: RED → GREEN → REFACTOR<br/>Verify exit gate: build · lint · tests · secrets"]
|
|
11
|
+
P3["Phase 3: Review<br/>Parallel + Fable triage, then the optional user test<br/>(3 reviewers per host: Claude Code Fable + Opus + Sonnet · Copilot GPT-5.4 + Opus + Sonnet)"]
|
|
12
|
+
P4["Phase 4: Commit<br/>Git commit, PR creation"]
|
|
13
|
+
P5["Phase 5: Report<br/>Jira · Wiki+Figma · Confluence · Log · Knowledge"]
|
|
16
14
|
|
|
17
15
|
INPUT --> P0
|
|
18
16
|
P0 --> P1
|
|
19
17
|
P1 --> P2
|
|
20
|
-
P2
|
|
21
|
-
P3
|
|
22
|
-
|
|
23
|
-
P4
|
|
24
|
-
P5 --> P6
|
|
25
|
-
P6 --> P7
|
|
18
|
+
P2 -->|build + test logs| P3
|
|
19
|
+
P3 -->|approved| P4
|
|
20
|
+
P3 -->|fix needed| P2
|
|
21
|
+
P4 --> P5
|
|
26
22
|
|
|
27
23
|
style INPUT fill:#f9f,stroke:#333
|
|
28
|
-
style
|
|
29
|
-
style
|
|
30
|
-
style
|
|
24
|
+
style P2 fill:#ffd,stroke:#333
|
|
25
|
+
style P3 fill:#dff,stroke:#333
|
|
26
|
+
style P5 fill:#a855f7,stroke:#333,color:#fff
|
|
31
27
|
```
|
|
32
28
|
|
|
33
29
|
## Operating Modes
|
|
34
30
|
|
|
35
31
|
```mermaid
|
|
36
32
|
graph LR
|
|
37
|
-
subgraph Normal ["Normal (Full
|
|
38
|
-
N0[Init] --> N1[
|
|
33
|
+
subgraph Normal ["Normal (Full 6-phase)"]
|
|
34
|
+
N0[Init] --> N1[Plan] --> N2[Dev] --> N3[Review] --> N4[Commit] --> N5[Report]
|
|
39
35
|
end
|
|
40
36
|
|
|
41
37
|
subgraph Dev ["Short depth (picker, Opus)"]
|
|
42
|
-
D0[Init] -->
|
|
38
|
+
D0[Init] --> D2[Dev<br/>Opus] --> D3[Review] --> D4[Commit] --> D5[Report]
|
|
43
39
|
end
|
|
44
40
|
|
|
45
41
|
subgraph Autopilot ["Autopilot (skip confirmations)"]
|
|
46
|
-
A0[Init] --> A1[
|
|
42
|
+
A0[Init] --> A1[Plan] --> A2[Dev] --> A3[Review] --> A4[Commit] --> A5[Report]
|
|
47
43
|
end
|
|
48
44
|
```
|
|
49
45
|
|
|
50
|
-
## Review Architecture (Phase
|
|
46
|
+
## Review Architecture (Phase 3)
|
|
51
47
|
|
|
52
48
|
```mermaid
|
|
53
49
|
graph TD
|
|
@@ -61,24 +57,24 @@ graph TD
|
|
|
61
57
|
GPT --> TRIAGE
|
|
62
58
|
SON --> TRIAGE
|
|
63
59
|
|
|
64
|
-
TRIAGE -->|PASS|
|
|
65
|
-
TRIAGE -->|FIX_REQUIRED|
|
|
60
|
+
TRIAGE -->|PASS| P4["Phase 4: Commit"]
|
|
61
|
+
TRIAGE -->|FIX_REQUIRED| P2["Phase 2: Dev (retry ≤3x)"]
|
|
66
62
|
|
|
67
63
|
style TRIAGE fill:#ffd,stroke:#333
|
|
68
64
|
style P3 fill:#fdd,stroke:#333
|
|
69
65
|
style P5 fill:#dfd,stroke:#333
|
|
70
66
|
```
|
|
71
67
|
|
|
72
|
-
## Figma SubPhase Integration (Phase
|
|
68
|
+
## Figma SubPhase Integration (Phase 2)
|
|
73
69
|
|
|
74
|
-
When a task is classified `component`, Phase
|
|
70
|
+
When a task is classified `component`, Phase 2 dispatches to the marketplace component plugin (`ai-<platform>-toolkit`) via the Skill tool. Component skills are not bundled in this repo; the subphases below describe the flow the plugin skill runs internally:
|
|
75
71
|
|
|
76
72
|
```mermaid
|
|
77
73
|
graph TD
|
|
78
|
-
|
|
74
|
+
P2["Phase 2: Dev"]
|
|
79
75
|
|
|
80
|
-
|
|
81
|
-
|
|
76
|
+
P2 -->|figmaConfigPath set| FIGMA
|
|
77
|
+
P2 -->|default| TDD["Standard TDD<br/>RED → GREEN → REFACTOR"]
|
|
82
78
|
|
|
83
79
|
subgraph FIGMA ["Figma Pipeline (17 SubPhases)"]
|
|
84
80
|
direction TB
|
|
@@ -117,7 +113,7 @@ graph TB
|
|
|
117
113
|
end
|
|
118
114
|
|
|
119
115
|
subgraph "Pipeline Specs"
|
|
120
|
-
CMD[commands/<br/>
|
|
116
|
+
CMD[commands/<br/>60 command files]
|
|
121
117
|
AGT[agents/<br/>8 agent personas]
|
|
122
118
|
RUL[rules/<br/>12 domain rules]
|
|
123
119
|
PHS[multi-agent-refs/phases/<br/>phase specs + contracts]
|
|
@@ -147,15 +143,18 @@ User Input → Phase 0 (Init)
|
|
|
147
143
|
↓
|
|
148
144
|
agent-state.json (created)
|
|
149
145
|
↓
|
|
150
|
-
Phase 1
|
|
146
|
+
Phase 1 (Plan: analysis + breakdown + approval gate)
|
|
151
147
|
↓
|
|
152
|
-
Phase
|
|
153
|
-
↓
|
|
154
|
-
|
|
148
|
+
Phase 2 (Dev) ←──────── retry loop (max 3x)
|
|
149
|
+
↓ ↑
|
|
150
|
+
Verify exit gate │
|
|
151
|
+
build · lint · tests · secrets
|
|
152
|
+
↓ .build.log + .test.log │
|
|
153
|
+
Phase 3 (Review + user test) ┘ (if fix needed)
|
|
155
154
|
↓
|
|
156
|
-
Phase
|
|
155
|
+
Phase 4 (Commit → push → PR)
|
|
157
156
|
↓
|
|
158
|
-
Phase
|
|
157
|
+
Phase 5 REPORT (Jira → Wiki+Figma → Confluence → Log → Knowledge)
|
|
159
158
|
↓
|
|
160
159
|
agent-log.md + agent-state.json (final)
|
|
161
160
|
```
|
|
@@ -170,7 +169,7 @@ revisions of this diagram - Codex CLI and the two independently-shipped repos
|
|
|
170
169
|
graph TD
|
|
171
170
|
CC["Claude Code<br/>(source of truth)"]
|
|
172
171
|
COP["Copilot CLI<br/>(instructions + 56 skills)"]
|
|
173
|
-
COD["Codex CLI<br/>(1 router skill +
|
|
172
|
+
COD["Codex CLI<br/>(1 router skill + 60 refs)"]
|
|
174
173
|
REPO["Pipeline Repo<br/>(npm package)"]
|
|
175
174
|
WEB["Website"]
|
|
176
175
|
PLUGREPO["multi-agent-plugins<br/>(5 stack plugins, own repo)"]
|
|
@@ -190,5 +189,5 @@ graph TD
|
|
|
190
189
|
```
|
|
191
190
|
|
|
192
191
|
Full detail on how these three repos compose at install time and at run time -
|
|
193
|
-
including the Phase
|
|
192
|
+
including the Phase 2 → plugin dispatch contract and the Phase 3 → multi-agent-toolkit MCP
|
|
194
193
|
contract - lives in [`docs/ecosystem.md`](./ecosystem.md).
|
package/docs/best-practices.md
CHANGED
|
@@ -55,7 +55,7 @@ Applied in Phase 3:
|
|
|
55
55
|
| Phase 1 → 2 | Analysis complete, no unanswered questions | Planning |
|
|
56
56
|
| Phase 3 → 4 | Build passes, lint clean, tests green | Review |
|
|
57
57
|
| Phase 4 → 6 | All blocking findings resolved | Commit |
|
|
58
|
-
| Phase
|
|
58
|
+
| Phase 4 → 7 | Push successful, PR created | Report |
|
|
59
59
|
|
|
60
60
|
## 6. 3-Iteration Hard Kill (original)
|
|
61
61
|
|
package/docs/ecosystem.md
CHANGED
|
@@ -5,20 +5,20 @@ separately, wired together at install time and at run time:
|
|
|
5
5
|
|
|
6
6
|
| Repo | What it owns | Ships as |
|
|
7
7
|
|---|---|---|
|
|
8
|
-
| **`multi-agent-pipeline`** (this repo) | Orchestration: the
|
|
8
|
+
| **`multi-agent-pipeline`** (this repo) | Orchestration: the 6-phase flow, the 60 slash commands, quality gates, review/triage, cross-CLI parity | npm package (`@mmerterden/multi-agent-pipeline`), installs itself onto Claude Code / Copilot CLI / Codex CLI |
|
|
9
9
|
| **`multi-agent-plugins`** | Stack knowledge: per-platform component/lifecycle skills (iOS, Android, Frontend, Backend) + shared knowledge | Claude Code marketplace, 5 independently-versioned plugins |
|
|
10
|
-
| **`multi-agent-toolkit-mcp`** | The pipeline's hands on devices and browsers:
|
|
10
|
+
| **`multi-agent-toolkit-mcp`** | The pipeline's hands on devices and browsers: 99 MCP tools across 10 categories (simulator/emulator control, memory, crash diagnostics, accessibility audit, store compliance, web automation, Figma-vs-mock design audit, code intelligence, wallet passes, an agent-DSL batch runner) | npm package, registered as a standard stdio MCP server on every host |
|
|
11
11
|
|
|
12
12
|
None of the three depends on the others at the code level. They compose through two
|
|
13
|
-
narrow contracts: the **Skill tool** (pipeline → plugin, at Phase
|
|
14
|
-
protocol** (pipeline skills → multi-agent-toolkit, at Phase
|
|
13
|
+
narrow contracts: the **Skill tool** (pipeline → plugin, at Phase 2) and the **MCP
|
|
14
|
+
protocol** (pipeline skills → multi-agent-toolkit, at Phase 3 / design-check / store-ready).
|
|
15
15
|
Either can be swapped or removed without touching the other two's source.
|
|
16
16
|
|
|
17
17
|
```mermaid
|
|
18
18
|
graph LR
|
|
19
19
|
subgraph PIPE ["multi-agent-pipeline (orchestrator)"]
|
|
20
20
|
direction TB
|
|
21
|
-
PHASES["
|
|
21
|
+
PHASES["6 phases · 60 commands"]
|
|
22
22
|
GATES["deterministic gates + review triage"]
|
|
23
23
|
end
|
|
24
24
|
|
|
@@ -34,17 +34,21 @@ graph LR
|
|
|
34
34
|
|
|
35
35
|
subgraph DTK ["multi-agent-toolkit-mcp (device/browser hands)"]
|
|
36
36
|
direction TB
|
|
37
|
-
DEV["Device Control (
|
|
38
|
-
|
|
37
|
+
DEV["Device Control (59)"]
|
|
38
|
+
MEM["Memory (2)"]
|
|
39
|
+
CRASH["Crash Diagnostics (2)"]
|
|
40
|
+
A11Y["Accessibility Audit (3)"]
|
|
39
41
|
STORE["Store Compliance (5)"]
|
|
40
42
|
WEB["Web Automation (8)"]
|
|
41
43
|
DESIGN["Design Audit (6)"]
|
|
42
|
-
|
|
44
|
+
CODE["Code Intelligence (8)"]
|
|
45
|
+
PASS["Wallet Passes (4)"]
|
|
46
|
+
AGENTDSL["Agent DSL (2)"]
|
|
43
47
|
end
|
|
44
48
|
|
|
45
|
-
PHASES -->|"Phase
|
|
46
|
-
PHASES -->|"Phase
|
|
47
|
-
GATES -.->|"Phase
|
|
49
|
+
PHASES -->|"Phase 2: Skill tool<br/>taskType===component"| PLUG
|
|
50
|
+
PHASES -->|"Phase 3 / design-check /<br/>store-ready: MCP tool calls"| DTK
|
|
51
|
+
GATES -.->|"Phase 3 Security Auditor"| STORE
|
|
48
52
|
|
|
49
53
|
style PIPE fill:#ffd,stroke:#333
|
|
50
54
|
style PLUG fill:#dfd,stroke:#333
|
|
@@ -64,8 +68,8 @@ only those:
|
|
|
64
68
|
graph TD
|
|
65
69
|
CC["Claude Code<br/>~/.claude/commands/multi-agent/<br/>(source of truth)"]
|
|
66
70
|
|
|
67
|
-
CC -->|"Step 2: copy + reformat<br/>
|
|
68
|
-
CC -->|"Step 2b: transform<br/>(install.js --codex)"| COD["Codex CLI<br/>1 router skill +
|
|
71
|
+
CC -->|"Step 2: copy + reformat<br/>60 sub-command skills"| COP["Copilot CLI<br/>~/.copilot/skills/"]
|
|
72
|
+
CC -->|"Step 2b: transform<br/>(install.js --codex)"| COD["Codex CLI<br/>1 router skill + 60 refs<br/>+ 8 agent TOML"]
|
|
69
73
|
CC -->|"Step 3: genericize<br/>(strip personal data)"| REPO["multi-agent-pipeline repo<br/>pipeline/"]
|
|
70
74
|
CC -->|"Step 4: version + feature sync"| WEB["Website<br/>projects.ts / i18n.tsx"]
|
|
71
75
|
|
|
@@ -131,7 +135,7 @@ graph TD
|
|
|
131
135
|
|
|
132
136
|
A skill counted in more than one platform plugin (a cross-stack knowledge skill
|
|
133
137
|
plus, say, an iOS-specific one) is why the plugins' skill counts sum to more than
|
|
134
|
-
the
|
|
138
|
+
the 153-skill source: `ai-common` skills are vendored into every stack plugin's
|
|
135
139
|
`knowledge/`, not deduplicated across them. Versioning is per-plugin and
|
|
136
140
|
patch-only from this generator - a repo enabling only `ai-ios-toolkit`
|
|
137
141
|
never pulls an Android-only change.
|
|
@@ -153,7 +157,7 @@ measurements behind this table):
|
|
|
153
157
|
|
|
154
158
|
| | Claude Code | Copilot CLI | Codex CLI |
|
|
155
159
|
|---|---|---|---|
|
|
156
|
-
| **Pipeline commands** |
|
|
160
|
+
| **Pipeline commands** | 60 slash-command skills, native | 56 skills, `multi-agent-{cmd}` naming, copied in | 1 router skill (`multi-agent`) + 60 command specs as reference files - Codex silently truncates its skills block past a few dozen entries, so sub-commands are not peer skills here |
|
|
157
161
|
| **Stack plugins** | Marketplace plugin, loaded natively, resolved by `.claude/settings.json` enabled-list | Enabled plugin's authored skills copied flat into `~/.copilot/skills/`; `knowledge/` **not** re-copied (already delivered via `shared/external`) | Copied as reference files under `~/.codex/multi-agent-refs/skills/`, plugin-prefixed on name clash (e.g. `architecture` → `ai-ios-toolkit-architecture`) |
|
|
158
162
|
| **Component dispatch (Phase 3)** | Marketplace plugin's `create-component`/`create-screen` skill via the Skill tool | No plugin loader - the enabled stack plugin's authored skills (incl. `create-component`) are copied flat into `~/.copilot/skills/` at install time (the old frozen `figma-*` copies are pruned, they were never a fallback) | Not part of the enforced parity axis; classification + state-shape must match, skill *inventory* does not |
|
|
159
163
|
| **multi-agent-toolkit-mcp** | `claude mcp add multi-agent-toolkit -- npx -y @mmerterden/multi-agent-toolkit-mcp` | `copilot mcp add multi-agent-toolkit -- npx -y @mmerterden/multi-agent-toolkit-mcp` | `codex mcp add multi-agent-toolkit -- npx -y @mmerterden/multi-agent-toolkit-mcp` (skipped with a warning if `codex` isn't on `PATH`) |
|
|
@@ -171,32 +175,31 @@ other:
|
|
|
171
175
|
|
|
172
176
|
```mermaid
|
|
173
177
|
graph TD
|
|
174
|
-
START["Task running: Phase
|
|
178
|
+
START["Task running: Phase 2 (Dev)"]
|
|
175
179
|
START -->|"taskType !== component"| TDD["Standard TDD loop<br/>(pipeline's own code)"]
|
|
176
180
|
START -->|"taskType === component<br/>+ figmaUrl present"| VALIDATE["ai-ios-toolkit:figma-validate<br/>(registry, Code Connect, token compliance)"]
|
|
177
181
|
VALIDATE -->|pass| DISPATCH["Skill tool →<br/>create-component / create-screen<br/>/ evolve-component (dual-name fallback)"]
|
|
178
|
-
VALIDATE -->|fail| HALT1["halt Phase
|
|
179
|
-
DISPATCH --> REPORT1["plugin returns build/test status →<br/>dispatch layer writes state.phases['
|
|
182
|
+
VALIDATE -->|fail| HALT1["halt Phase 2, surface why"]
|
|
183
|
+
DISPATCH --> REPORT1["plugin returns build/test status →<br/>dispatch layer writes state.phases['2'].subphases[]"]
|
|
180
184
|
|
|
181
|
-
REPORT1 -->
|
|
182
|
-
P4 --> P5["Phase 5: Test"]
|
|
185
|
+
REPORT1 --> P3["Phase 3: Review + user test"]
|
|
183
186
|
|
|
184
|
-
|
|
187
|
+
P3 -->|"UI bug hunt / manual-test /<br/>design-check / store-ready"| MCP["MCP tool call over stdio<br/>e.g. ios_xcodebuild, design_visual_compare,<br/>ios_app_store_audit"]
|
|
185
188
|
MCP --> DTKPROC["multi-agent-toolkit-mcp process<br/>(npx @mmerterden/multi-agent-toolkit-mcp)"]
|
|
186
|
-
DTKPROC -->|"result: screenshot / xcresult ID /<br/>18-rule audit verdict"|
|
|
189
|
+
DTKPROC -->|"result: screenshot / xcresult ID /<br/>18-rule audit verdict"| P3
|
|
187
190
|
|
|
188
191
|
style DISPATCH fill:#dfd,stroke:#333
|
|
189
192
|
style MCP fill:#dff,stroke:#333
|
|
190
193
|
style HALT1 fill:#fdd,stroke:#333
|
|
191
194
|
```
|
|
192
195
|
|
|
193
|
-
**Phase
|
|
196
|
+
**Phase 2 → plugin** is a one-shot delegation: the plugin skill does its own
|
|
194
197
|
lifecycle (test → code → build → wiki) and reports back a coarse
|
|
195
198
|
`component-build` result; the pipeline does not re-implement any of that logic, and
|
|
196
199
|
a plugin failure counts against the pipeline's own retry cap (`retryCount === 3` →
|
|
197
200
|
hard stop, per `component-dispatch.md`).
|
|
198
201
|
|
|
199
|
-
**Phase
|
|
202
|
+
**Phase 3 (and design-check / store-ready) → multi-agent-toolkit** is a long-lived MCP
|
|
200
203
|
session, not a one-shot call: the same stdio server process answers many tool
|
|
201
204
|
calls across a phase (boot simulator once, then screenshot/tap/screenshot/tap...).
|
|
202
205
|
Several pipeline skills pin a **minimum toolkit version** for a specific tool -
|
|
@@ -206,7 +209,13 @@ e.g. `apple-archive-compliance` requires `ios_app_store_audit` from
|
|
|
206
209
|
that drops or renames a tool a pipeline skill depends on is a **major** bump, by
|
|
207
210
|
that step's own contract).
|
|
208
211
|
|
|
209
|
-
### multi-agent-toolkit-mcp's tools, by category
|
|
212
|
+
### multi-agent-toolkit-mcp's tools, by category
|
|
213
|
+
|
|
214
|
+
99 tools in 10 categories, counted from the server's own `tools/list` response at
|
|
215
|
+
toolkit 3.12.0 rather than from a README. The table stood at 87 across 8
|
|
216
|
+
categories for several releases because Code Intelligence and Wallet Passes
|
|
217
|
+
shipped without anyone adding their rows, and nothing here was checked against
|
|
218
|
+
the server - which is why the count now names its source.
|
|
210
219
|
|
|
211
220
|
| Category | Tools | Primary pipeline consumers |
|
|
212
221
|
|---|---|---|
|
|
@@ -214,10 +223,12 @@ that step's own contract).
|
|
|
214
223
|
| Memory | 2 (`ios_leaks`, `android_meminfo`) | none yet; available outside the pipeline |
|
|
215
224
|
| Crash Diagnostics | 2 (`ios_list_crashes`, `android_list_crashes`) | `/multi-agent:test` full scenario (end-of-run crash sweep), outside-the-pipeline sessions |
|
|
216
225
|
| Accessibility Audit | 3 (`ios_accessibility_audit`, `android_accessibility_audit`, `ios_accessibility_audit_deep`) | `/multi-agent:test` accessibility scenario, `test-accessibility` |
|
|
217
|
-
| Store Compliance | 5 | `store-ready`, `testflight-validation`, `apple-archive-compliance` skill, Phase
|
|
226
|
+
| Store Compliance | 5 | `store-ready`, `testflight-validation`, `apple-archive-compliance` skill, Phase 3 Security Auditor |
|
|
218
227
|
| Web Automation | 8 | frontend-stack UI testing (via `test`) |
|
|
219
228
|
| Design Audit | 6 | `design-check` (mock-mode vs Figma conformance) |
|
|
220
229
|
| Autonomous Agent DSL | 2 (`agent_run_steps`, `agent_query_output`) | any skill that needs a scripted multi-step device flow in one round trip |
|
|
230
|
+
| Code Intelligence | 8 (`code_definition`, `code_references`, `code_hover`, `code_diagnostics`, `code_document_symbols`, `code_workspace_symbols`, `code_index_status`, `code_server_reset`) | `/multi-agent:refactor`, Phase 3 reviewers needing a real symbol graph rather than grep |
|
|
231
|
+
| Wallet Passes | 4 (`pass_build`, `pass_validate`, `pass_inspect`, `pass_certificates`) | pass-kit work outside the pipeline; no pipeline phase consumes them |
|
|
221
232
|
|
|
222
233
|
---
|
|
223
234
|
|
package/docs/engineering.md
CHANGED
|
@@ -26,7 +26,7 @@ Every loop in the pipeline has a deterministic exit condition and a hard iterati
|
|
|
26
26
|
|
|
27
27
|
## Context management
|
|
28
28
|
|
|
29
|
-
- **Token-budgeted phase docs**: every phase document has a per-file and total token budget enforced by a smoke gate (`token-budget.json`). Growth is compressed first; budgets are recalibrated only when real contract text lands. This keeps the orchestrator's working context lean across
|
|
29
|
+
- **Token-budgeted phase docs**: every phase document has a per-file and total token budget enforced by a smoke gate (`token-budget.json`). Growth is compressed first; budgets are recalibrated only when real contract text lands. This keeps the orchestrator's working context lean across a 6-phase run.
|
|
30
30
|
- **Lazy loading**: only the active phase's document is in context; references load on demand.
|
|
31
31
|
- **Structured handoff blocks**: at every phase boundary the orchestrator appends a Done / Remaining / Decisions / Open findings / Next block to the run log - written from state it already holds, no extra model call. Resume and post-compaction re-entry read the latest handoff plus the state file, never the conversation history.
|
|
32
32
|
- **Proactive compaction**: past ~50% context usage the run compacts itself and re-grounds from durable artifacts instead of waiting for lossy auto-compaction.
|
package/docs/facts.json
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$comment": "Generated by pipeline/scripts/gen-facts.mjs. Do not hand-edit: the site reads this, and a number edited here instead of at its source is the drift this file removes.",
|
|
3
|
+
"generatedAt": "2026-09-17",
|
|
4
|
+
"version": "19.0.0",
|
|
5
|
+
"phaseSchema": 2,
|
|
6
|
+
"phases": [
|
|
7
|
+
{
|
|
8
|
+
"id": 0,
|
|
9
|
+
"name": "Init"
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
"id": 1,
|
|
13
|
+
"name": "Plan"
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
"id": 2,
|
|
17
|
+
"name": "Dev"
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"id": 3,
|
|
21
|
+
"name": "Review"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"id": 4,
|
|
25
|
+
"name": "Commit"
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"id": 5,
|
|
29
|
+
"name": "Report"
|
|
30
|
+
}
|
|
31
|
+
],
|
|
32
|
+
"phaseCount": 6,
|
|
33
|
+
"modes": {
|
|
34
|
+
"full": [0, 1, 2, 3, 4, 5],
|
|
35
|
+
"autopilot": [0, 1, 2, 3, 4, 5],
|
|
36
|
+
"local": [0, 1, 2, 3, 4, 5],
|
|
37
|
+
"local-autopilot": [0, 1, 2, 3, 4, 5],
|
|
38
|
+
"full-local": [0, 1, 2, 3, 4, 5],
|
|
39
|
+
"analysis": [0, 1, 3, 4, 5]
|
|
40
|
+
},
|
|
41
|
+
"commandCount": 60,
|
|
42
|
+
"skillCount": 153,
|
|
43
|
+
"toolCount": 99,
|
|
44
|
+
"toolkitVersion": "3.12.0"
|
|
45
|
+
}
|