@mmerterden/multi-agent-pipeline 20.23.1 → 20.24.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 +30 -1
- package/README.md +7 -6
- package/README.tr.md +6 -5
- package/docs/architecture.md +3 -3
- package/docs/ecosystem.md +5 -5
- package/docs/facts.json +3 -3
- package/install/catalog-history.json +1 -1
- package/install/templates/claude-hooks.json +14 -1
- package/manifest.json +77 -56
- package/package.json +1 -1
- package/pipeline/commands/multi-agent/analysis-jira/SKILL.md +11 -2
- package/pipeline/commands/multi-agent/postmortem/SKILL.md +78 -0
- package/pipeline/commands/multi-agent/setup/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/sync/SKILL.md +3 -3
- package/pipeline/lib/analysis-jira-write.sh +105 -22
- package/pipeline/lib/decisions.mjs +130 -0
- package/pipeline/lib/plan-todos.sh +156 -33
- package/pipeline/lib/task-graph.mjs +446 -0
- package/pipeline/lib/tdd-evidence.mjs +579 -0
- package/pipeline/multi-agent-refs/analysis-template-corporate.md +2 -0
- package/pipeline/multi-agent-refs/analysis-template.md +4 -2
- package/pipeline/multi-agent-refs/cross-cli-contract.md +4 -4
- package/pipeline/multi-agent-refs/features/analysis-jira.md +51 -3
- package/pipeline/multi-agent-refs/features/autopilot-decisions.md +34 -0
- package/pipeline/multi-agent-refs/features/model-fallback.md +4 -2
- package/pipeline/multi-agent-refs/features/mutation-probe.md +58 -0
- package/pipeline/multi-agent-refs/features/plan-checks.md +67 -0
- package/pipeline/multi-agent-refs/features/plan-todos.md +40 -1
- package/pipeline/multi-agent-refs/features/rework-escalation.md +49 -0
- package/pipeline/multi-agent-refs/features/scope-check.md +1 -0
- package/pipeline/multi-agent-refs/generate-issue.md +1 -1
- package/pipeline/multi-agent-refs/help/en.md +1 -0
- package/pipeline/multi-agent-refs/help/tr.md +1 -0
- package/pipeline/multi-agent-refs/phases/phase-1-plan.md +2 -3
- package/pipeline/multi-agent-refs/phases/phase-2-dev.md +5 -7
- package/pipeline/multi-agent-refs/phases/phase-3-review.md +13 -11
- package/pipeline/multi-agent-refs/phases/phase-5-report.md +3 -3
- package/pipeline/multi-agent-refs/picker-contract.md +3 -2
- package/pipeline/multi-agent-refs/response-shape.md +65 -0
- package/pipeline/rules/response-shape.md +18 -0
- package/pipeline/schemas/agent-state.schema.json +31 -1
- package/pipeline/schemas/plan-todos.schema.json +101 -0
- package/pipeline/schemas/planning-output.schema.json +46 -0
- package/pipeline/schemas/prefs.schema.json +117 -1
- package/pipeline/scripts/_jsonl.mjs +151 -0
- package/pipeline/scripts/_plan-overlap.mjs +231 -0
- package/pipeline/scripts/_redact.mjs +124 -10
- package/pipeline/scripts/analysis-story-body.mjs +26 -10
- package/pipeline/scripts/analysis-story-tree.mjs +210 -9
- package/pipeline/scripts/autopilot-publish.mjs +12 -1
- package/pipeline/scripts/cost-analyze.mjs +6 -24
- package/pipeline/scripts/decisions-log.mjs +118 -0
- package/pipeline/scripts/edit-syntax-gate.mjs +240 -0
- package/pipeline/scripts/edit-syntax-gate.sh +29 -0
- package/pipeline/scripts/find-polluter.mjs +281 -0
- package/pipeline/scripts/gate-ledger.mjs +46 -13
- package/pipeline/scripts/mutation-probe.mjs +484 -0
- package/pipeline/scripts/plan-complexity.mjs +259 -0
- package/pipeline/scripts/review-decision-gate.mjs +33 -1
- package/pipeline/scripts/rework-escalation.mjs +264 -0
- package/pipeline/scripts/test-strength.mjs +5 -3
- package/pipeline/scripts/transcript-index.mjs +950 -0
- package/pipeline/scripts/validate-planning.mjs +48 -6
- package/pipeline/skills/.skill-manifest.json +11 -7
- package/pipeline/skills/.skills-index.json +12 -1
- package/pipeline/skills/shared/README.md +4 -3
- package/pipeline/skills/shared/core/multi-agent-analysis-jira/SKILL.md +11 -2
- package/pipeline/skills/shared/core/multi-agent-postmortem/SKILL.md +66 -0
- package/pipeline/skills/shared/core/multi-agent-setup/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-sync/SKILL.md +3 -3
- package/pipeline/skills/shared/external/app-store-optimization/SKILL.md +15 -0
- package/pipeline/skills/shared/external/app-store-optimization/evals/evals.json +13 -0
- package/pipeline/skills/shared/external/debugging-strategies/SKILL.md +8 -0
- package/pipeline/skills/skills-index.md +2 -1
package/CHANGELOG.md
CHANGED
|
@@ -16,11 +16,40 @@ Internal file-layout changes that don't affect the slash-command surface are sti
|
|
|
16
16
|
|
|
17
17
|
## [Unreleased]
|
|
18
18
|
|
|
19
|
+
## [20.24.0] - 2026-10-14
|
|
20
|
+
|
|
21
|
+
### Added
|
|
22
|
+
|
|
23
|
+
- **Plan checks before approval.** `validate-planning.mjs` pairs every two tasks that touch the same file or name the same symbol in the optional `creates` / `removes` / `produces` / `consumes` lists and returns one anchored row per pair: two creators of one file fail the plan; removing what another task uses, a consumer not ordered after its producer and an unordered shared edit are warnings shown at the approval gate. `plan-complexity.mjs` scores each task 1-10 from the repository (files listed, code-graph fan-in of their declarations, modules spanned, dependents outside them, test surface); a task above `planComplexity.splitAbove` (default 7) is split before approval with its requirement ids carried onto the parts. Contract: `multi-agent-refs/features/plan-checks.md`.
|
|
24
|
+
- **Drift holds what was built on it.** `plan-todos.sh drift` compares the files a step changed with its planned `files[]`, `creates[]` and their test files (paths normalised) and takes its not-done count; every pending step that depends on it, directly or transitively, gets `needsReplan`, `next` reports it as waiting, `start` and `complete` refuse it, and `confirm-replan` releases it once its plan has been re-read. Applies where Phase 2 iterates plan todos (`planTodos.enabled`).
|
|
25
|
+
- **TDD evidence per todo.** `plan-todos.sh tdd-red` / `tdd-green` read the runner's own results (JUnit XML, an `.xcresult` bundle or its exported summary, xcodebuild / `swift test` logs) through `lib/tdd-evidence.mjs` and record `plan.todos[].tdd`; `complete` checks it per `tddEvidence.mode` (`off`, `warn` by default, `enforce`). Docs and chore todos, component tasks, test policy `none` and `complete --no-tests <reason>` are exempt with the reason recorded, and Phase 3 gives the reviewers one note per todo completed `unverified` or exempted by `--no-tests`. It applies where Phase 2 iterates plan todos (`planTodos.enabled`).
|
|
26
|
+
- **Rework escalation.** On the last rework round the cap allows, or when `review-delta` reports findings still present after a fix, `rework-escalation.mjs` dispatches a fresh dev agent one rung up the model-fallback ladder with the triage round and the prior attempt's diff as files. It never escalates against the cost budget, on a run that fell back, onto fable while that rung is off, or past `reworkEscalation.maxTier` (default `opus`), and every refusal is recorded with its reason.
|
|
27
|
+
- **Decisions made on your behalf.** Autopilot and unattended runs record every choice a person would otherwise have made in `state.decisions[]` as `{what, why, costIfWrong, at, phase}`: parks, blockers lowered to important, rework escalations, pickers resolved without asking, split consensus, date-gate fallbacks. The Phase 5 report and the autopilot PR body list them in one redacted section, and the PR body still passes the outbound gate.
|
|
28
|
+
- **Mutation probe on changed lines** (opt-in, `mutationProbe.enabled`). `mutation-probe.mjs` makes up to `mutationProbe.maxMutants` (5) simple mutants on the lines the diff added or changed, runs the test command in a disposable detached worktree, and reports each surviving mutant as an `important` finding that the tests are weak. The user's checkout is never written. Phase 3 Step 1.763; recipe in `features/mutation-probe.md`.
|
|
29
|
+
- **Syntax check after an edit** (opt-in, Claude Code). Set `editSyntaxGate.enabled` and merge the hooks block again through `/multi-agent:setup` (Step 8), which now carries the `PostToolUse` registration. The hook parses the edited file within 2 s (`swiftc -parse`, `node --check`, `py_compile` into a temp dir, JSON, `bash -n`) and tells the model about a syntax error; it never blocks, and stays silent when the parser is missing or slow.
|
|
30
|
+
- **`find-polluter.mjs`** bisects a test list from a clean state to the test that leaves a stray file (`--absent`) or breaks another test only when run before it (`--target`), and stops with exit 2 when state survives a trial and no `--reset` was given; `debugging-strategies` points at it.
|
|
31
|
+
- **`/multi-agent:postmortem [#id|transcript.jsonl] [--audit]`**: a read-only post-mortem of a run from its session transcripts. `transcript-index.mjs` indexes turns, loops of identical tool calls, stalls, compactions, subagents, errors and denials, token use and invocations, each cited as `file:line`, and redacts every excerpt (credentials, emails, hosts, paths, home directories) with a count. The report goes to the run's log directory; nothing is sent. Claude Code transcripts only.
|
|
32
|
+
- **Story dependencies in `/multi-agent:analysis-jira`.** A requirement row's `Depends on: <ids>` clause links the stories in Jira (`issueTree.dependencyLinkType`, default `Blocks`, prerequisite to dependent); a dependency cycle or a prerequisite no story covers makes the plan `incomplete`. Documents without the clause plan exactly as before.
|
|
33
|
+
- **Reply shape.** `rules/response-shape.md` (with its detail in `multi-agent-refs/response-shape.md`) shapes conversational replies: the answer or next action first, numbered single-action steps, at most five items shown without ever dropping a finding, errors as cause then fix, and a last line that says what happens next.
|
|
34
|
+
- **Maintainer evals** (not shipped; their live calls never run in `npm test`, which tests them against a fake CLI): `eval-skill-compliance-live.mjs` pressure-tests discipline rules against a no-rule baseline with deterministic graders, and `eval-ab-judge.mjs` judges prompt and style variants blind, with hash-stable labels, a judge-only rubric region and a blocker-first verdict. Both are dry-run by default and need `--live`, `MULTI_AGENT_LIVE_EVAL=1` and an explicit budget; documented in `pipeline/eval/README.md`.
|
|
35
|
+
- The App Store optimization skill orders the brief for a marketing frame around a real capture: device and size, the capture as the asset, verbatim captions per locale, brand tokens, explicit exclusions.
|
|
36
|
+
|
|
37
|
+
### Changed
|
|
38
|
+
|
|
39
|
+
- `plan-todos.sh next` (with `planTodos.enabled`) answers from a task graph: the ready todo that unblocks the most pending work comes first, then the longest chain behind it, then plan order, and a todo a failed or missing dependency or a cycle blocks is named on stderr instead of leaving `next` silently empty.
|
|
40
|
+
|
|
41
|
+
## [20.23.2] - 2026-10-13
|
|
42
|
+
|
|
43
|
+
### Added
|
|
44
|
+
|
|
45
|
+
- `issueTree.storyPanels` sets the colours of a Story's wiki panels (`story`, `criteria`, `other`, each `#rrggbb`) or turns them off with `false`; `/multi-agent:create-jira` and `/multi-agent:analysis-jira` both read it. Unset keeps `#d4d39e`, `#d4a19e` and `#9eb6d4`, and a value that is not a colour keeps its default.
|
|
46
|
+
- `/multi-agent:analysis-jira` asks once, in an attended run with no `issueTree.subtaskRoles`, which sub-tasks every story gets, offering the site's own sub-task types (`analysis-jira-write.sh --subtask-types`), and saves the answer (`analysis-story-tree.mjs --save-subtasks`); "no sub-tasks" is remembered as `issueTree.subtaskRolesDeclined`.
|
|
47
|
+
|
|
19
48
|
## [20.23.1] - 2026-10-13
|
|
20
49
|
|
|
21
50
|
### Fixed
|
|
22
51
|
|
|
23
|
-
- `/multi-agent:analysis-jira` finds a site's sub-task types on Jira Data Center 9, which answers only the per-project `createmeta/{project}/issuetypes`; sub-tasks were created under the generic `Sub-task` name there. `issueTree.subtaskIssueType` may now map each role to the site's type (`{"develop": "
|
|
52
|
+
- `/multi-agent:analysis-jira` finds a site's sub-task types on Jira Data Center 9, which answers only the per-project `createmeta/{project}/issuetypes`; sub-tasks were created under the generic `Sub-task` name there. `issueTree.subtaskIssueType` may now map each role to the site's type (`{"develop": "Build Sub-task", "test": "QA Sub-task"}`, `"*"` for any other role), a site with several sub-task types and no setting is named in the run's output, and the preview shows the type each role gets.
|
|
24
53
|
- The code graph reads Swift imports behind an attribute (`@testable import`, `@_exported import`, `@preconcurrency import`, `@_spi(...) import`).
|
|
25
54
|
- Python type parameters (`class Box[T](Base):`) keep their bases, and a TypeScript base built by a call (`extends mixin(Base)`) adds no edge to the function.
|
|
26
55
|
- A diff hunk that only inserts or only deletes lines is given to the declaration spanning both lines around it, at any context size; at `-U0` it was given to the line before it.
|
package/README.md
CHANGED
|
@@ -17,7 +17,7 @@ Runs natively on Claude Code, Copilot CLI and Codex CLI. macOS only. Zero runtim
|
|
|
17
17
|
### Prerequisites
|
|
18
18
|
|
|
19
19
|
- **Node.js >= 20.11** - required; the pipeline's own tooling runs on it.
|
|
20
|
-
- **`jq`** - required for nine paths, optional for the rest.
|
|
20
|
+
- **`jq`** - required for nine paths, optional for the rest. 93 shell files call it. The nine that publish or decide - the autopilot queue, Jira comments, PR reviews, issue updates, the plan file, both Figma fetchers, log search and Jira auth - refuse with exit 3 rather than run, because a missing `jq` renders as empty DATA and the work carries on with it. Everywhere else it still degrades. The install prints a note when it is missing.
|
|
21
21
|
- **`gh`** - for GitHub issue and PR work. Its built-in `--jq` is independent of the `jq` binary.
|
|
22
22
|
|
|
23
23
|
## Quick Start
|
|
@@ -158,7 +158,7 @@ The discipline behind all of this - bounded loops, evidence gates, token-budgete
|
|
|
158
158
|
|
|
159
159
|
## Commands
|
|
160
160
|
|
|
161
|
-
`/multi-agent` plus
|
|
161
|
+
`/multi-agent` plus 65 sub-commands. `/multi-agent:help` renders the same catalog in your terminal, in your `outputLanguage`.
|
|
162
162
|
|
|
163
163
|
### Pipeline entries
|
|
164
164
|
|
|
@@ -192,6 +192,7 @@ The discipline behind all of this - bounded loops, evidence gates, token-budgete
|
|
|
192
192
|
| `/multi-agent:review-analysis` | Review a written analysis document; findings cite the Locked rule they break |
|
|
193
193
|
| `/multi-agent:diff-explain` | Map a Phase 3 triage finding back to the diff lines that caused it |
|
|
194
194
|
| `/multi-agent:estimate` | Effort range from similar closed work: P25-P75 per role, with the tickets behind it |
|
|
195
|
+
| `/multi-agent:postmortem` | Post-mortem of a run from its transcripts: loops, stalls, root-cause hypotheses on file:line |
|
|
195
196
|
| `/multi-agent:scenario-audit` | Check test scenarios against the code; each PRESENT on a resolving file:line |
|
|
196
197
|
| `/multi-agent:refactor` | Best-practice extraction + bug hunt + derived-skill drift + toolkit MCP research → one plan |
|
|
197
198
|
| `/multi-agent:scan` | Skill security scan of local skill directories against a tiered pattern catalog |
|
|
@@ -406,17 +407,17 @@ This enables the matching plugin (+ the shared `ai-common` plugin) in the repo's
|
|
|
406
407
|
|
|
407
408
|
## Tool support
|
|
408
409
|
|
|
409
|
-
The pipeline runs natively on **Claude Code**, **Copilot CLI** and **Codex CLI** - all three install from the same `pipeline/` source and get the same
|
|
410
|
+
The pipeline runs natively on **Claude Code**, **Copilot CLI** and **Codex CLI** - all three install from the same `pipeline/` source and get the same 65 commands.
|
|
410
411
|
|
|
411
412
|
| Tool | Flag | What it installs |
|
|
412
413
|
| ----------- | -------------------- | ------------------------------------------------------------------------------------------------------ |
|
|
413
414
|
| Claude Code | `--claude` (default) | slash commands + skills + agents + three `PreToolUse` hooks (secret scan, agent-guard, read-size gate) |
|
|
414
|
-
| Copilot CLI | `--copilot` | instructions +
|
|
415
|
-
| Codex CLI | `--codex` | one router skill +
|
|
415
|
+
| Copilot CLI | `--copilot` | instructions + 65 sub-command skills + scripts |
|
|
416
|
+
| Codex CLI | `--codex` | one router skill + 65 specs as refs + 10 agent TOML + `AGENTS.md` block + `codex mcp add` |
|
|
416
417
|
|
|
417
418
|
Filter skills by stack with `--platform=ios\|android\|all`.
|
|
418
419
|
|
|
419
|
-
**Why Codex gets one skill and not
|
|
420
|
+
**Why Codex gets one skill and not 65.** Codex assembles every discovered skill's name
|
|
420
421
|
and description into a single prompt block and drops entries when it overflows, with no
|
|
421
422
|
error. Measured on 0.145: installing one plugin that declares 142 skills surfaced only
|
|
422
423
|
75 of them and evicted an unrelated user skill. So on Codex the pipeline ships a single
|
package/README.tr.md
CHANGED
|
@@ -157,7 +157,7 @@ Koşunun kendisinde ayarlanabilen tek şey autopilot; geri kalan her şey kendi
|
|
|
157
157
|
|
|
158
158
|
## Komutlar
|
|
159
159
|
|
|
160
|
-
`/multi-agent` ve
|
|
160
|
+
`/multi-agent` ve 65 alt komut. `/multi-agent:help` aynı katalogu terminalde, `outputLanguage` ayarına göre gösterir.
|
|
161
161
|
|
|
162
162
|
### Pipeline girişleri
|
|
163
163
|
|
|
@@ -191,6 +191,7 @@ Koşunun kendisinde ayarlanabilen tek şey autopilot; geri kalan her şey kendi
|
|
|
191
191
|
| `/multi-agent:review-analysis` | Yazılmış analiz dokümanını review eder; bulgular ihlal edilen Locked kuralını gösterir |
|
|
192
192
|
| `/multi-agent:diff-explain` | Faz 4 triyaj bulgusunu onu doğuran diff satırlarına eşler |
|
|
193
193
|
| `/multi-agent:estimate` | Benzer kapanmış işlerden efor aralığı: rol başına P25-P75, dayandığı ticket'larla |
|
|
194
|
+
| `/multi-agent:postmortem` | Koşunun transkriptlerinden post-mortem: döngüler, takılmalar, dosya:satır dayanaklı kök-neden hipotezleri |
|
|
194
195
|
| `/multi-agent:scenario-audit` | Test senaryolarını koda karşı denetler; her VAR çözülen bir dosya:satıra dayanır |
|
|
195
196
|
| `/multi-agent:refactor` | Best-practice çıkarımı + bug avı + türetilmiş skill drift'i + toolkit MCP araştırması → tek plan |
|
|
196
197
|
| `/multi-agent:scan` | Yerel skill dizinlerini kademeli desen kataloğuna göre güvenlik taraması |
|
|
@@ -405,17 +406,17 @@ Bu, ilgili plugin'i (+ ortak `ai-common` plugin'ini) repo'nun `.claude/settings.
|
|
|
405
406
|
|
|
406
407
|
## Araç desteği
|
|
407
408
|
|
|
408
|
-
Pipeline **Claude Code**, **Copilot CLI** ve **Codex CLI** üzerinde native çalışır - üçü de aynı `pipeline/` kaynağından kurulur ve aynı
|
|
409
|
+
Pipeline **Claude Code**, **Copilot CLI** ve **Codex CLI** üzerinde native çalışır - üçü de aynı `pipeline/` kaynağından kurulur ve aynı 65 komutu alır.
|
|
409
410
|
|
|
410
411
|
| Araç | Bayrak | Ne kurar |
|
|
411
412
|
| ----------- | ----------------------- | ---------------------------------------------------------------------------------------------------------------- |
|
|
412
413
|
| Claude Code | `--claude` (varsayılan) | slash komutları + skill'ler + agent'lar + üç `PreToolUse` hook'u (secret scan, agent-guard, okuma-boyutu geçidi) |
|
|
413
|
-
| Copilot CLI | `--copilot` | talimatlar +
|
|
414
|
-
| Codex CLI | `--codex` | bir router skill + ref olarak
|
|
414
|
+
| Copilot CLI | `--copilot` | talimatlar + 65 alt-komut skill'i + script'ler |
|
|
415
|
+
| Codex CLI | `--codex` | bir router skill + ref olarak 65 spec + 10 agent TOML + `AGENTS.md` bloğu + `codex mcp add` |
|
|
415
416
|
|
|
416
417
|
Skill'leri stack'e göre filtrele: `--platform=ios\|android\|all`.
|
|
417
418
|
|
|
418
|
-
**Codex neden
|
|
419
|
+
**Codex neden 65 değil de tek bir skill alıyor.** Codex, keşfettiği her skill'in adını
|
|
419
420
|
ve açıklamasını tek bir prompt bloğuna toplar ve blok taştığında girdileri hatasızca
|
|
420
421
|
düşürür. 0.145 üzerinde ölçüldü: 142 skill deklare eden bir plugin kurulduğunda sadece
|
|
421
422
|
75'i yüzeye çıktı ve alakasız bir kullanıcı skill'i tahliye edildi. Bu yüzden Codex'te
|
package/docs/architecture.md
CHANGED
|
@@ -113,7 +113,7 @@ graph TB
|
|
|
113
113
|
end
|
|
114
114
|
|
|
115
115
|
subgraph "Pipeline Specs"
|
|
116
|
-
CMD[commands/<br/>
|
|
116
|
+
CMD[commands/<br/>65 command files]
|
|
117
117
|
AGT[agents/<br/>10 agent personas]
|
|
118
118
|
RUL[rules/<br/>13 domain rules]
|
|
119
119
|
PHS[multi-agent-refs/phases/<br/>phase specs + contracts]
|
|
@@ -204,8 +204,8 @@ repo and the website, plus the two independently shipped repos
|
|
|
204
204
|
```mermaid
|
|
205
205
|
graph TD
|
|
206
206
|
CC["Claude Code<br/>(source of truth)"]
|
|
207
|
-
COP["Copilot CLI<br/>(instructions +
|
|
208
|
-
COD["Codex CLI<br/>(1 router skill +
|
|
207
|
+
COP["Copilot CLI<br/>(instructions + 65 sub-command skills)"]
|
|
208
|
+
COD["Codex CLI<br/>(1 router skill + 65 refs)"]
|
|
209
209
|
REPO["Pipeline Repo<br/>(npm package)"]
|
|
210
210
|
WEB["Website"]
|
|
211
211
|
PLUGREPO["multi-agent-plugins<br/>(6 plugins, own repo)"]
|
package/docs/ecosystem.md
CHANGED
|
@@ -5,7 +5,7 @@ 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 6-phase flow, the
|
|
8
|
+
| **`multi-agent-pipeline`** (this repo) | Orchestration: the 6-phase flow, the 65 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, 6 independently-versioned plugins |
|
|
10
10
|
| **`multi-agent-toolkit-mcp`** | The pipeline's hands on devices and browsers: 197 MCP tools across 21 categories (simulator/emulator control, end-to-end locators and assertions, memory, crash diagnostics, accessibility audit, store compliance, web automation and scraping, Figma-vs-mock design audit, code intelligence, wallet passes, an agent-DSL batch runner, a full-text context index with text-to-image rendering, provider-backed research, verified hand-off of simple text tasks to free models, video key frames, offline security scoring, read-only access to related repositories at their latest branch, travel document fixtures, a voice channel, App Store Connect and Play Console APIs, virtual iPhones) | npm package, registered as a standard stdio MCP server on every host |
|
|
11
11
|
|
|
@@ -18,7 +18,7 @@ Either can be swapped or removed without touching the other two's source.
|
|
|
18
18
|
graph LR
|
|
19
19
|
subgraph PIPE ["multi-agent-pipeline (orchestrator)"]
|
|
20
20
|
direction TB
|
|
21
|
-
PHASES["6 phases ·
|
|
21
|
+
PHASES["6 phases · 65 commands"]
|
|
22
22
|
GATES["deterministic gates + review triage"]
|
|
23
23
|
end
|
|
24
24
|
|
|
@@ -68,8 +68,8 @@ only those:
|
|
|
68
68
|
graph TD
|
|
69
69
|
CC["Claude Code<br/>~/.claude/commands/multi-agent/<br/>(source of truth)"]
|
|
70
70
|
|
|
71
|
-
CC -->|"Step 2: copy + reformat<br/>
|
|
72
|
-
CC -->|"Step 2b: transform<br/>(install.js --codex)"| COD["Codex CLI<br/>1 router skill +
|
|
71
|
+
CC -->|"Step 2: copy + reformat<br/>65 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 + 65 refs<br/>+ 10 agent TOML"]
|
|
73
73
|
CC -->|"Step 3: genericize<br/>(strip personal data)"| REPO["multi-agent-pipeline repo<br/>pipeline/"]
|
|
74
74
|
CC -->|"Step 4: version + feature sync"| WEB["Website<br/>projects.ts / i18n.tsx"]
|
|
75
75
|
|
|
@@ -161,7 +161,7 @@ measurements behind this table):
|
|
|
161
161
|
|
|
162
162
|
| | Claude Code | Copilot CLI | Codex CLI |
|
|
163
163
|
|---|---|---|---|
|
|
164
|
-
| **Pipeline commands** |
|
|
164
|
+
| **Pipeline commands** | 65 slash-command skills, native | 65 sub-command skills, `multi-agent-{cmd}` naming, copied in | 1 router skill (`multi-agent`) + 65 command specs as reference files - Codex silently truncates its skills block past a few dozen entries, so sub-commands are not peer skills here |
|
|
165
165
|
| **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`) |
|
|
166
166
|
| **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 |
|
|
167
167
|
| **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`) |
|
package/docs/facts.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
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
3
|
"generatedAt": "2026-10-13",
|
|
4
|
-
"version": "20.
|
|
4
|
+
"version": "20.24.0",
|
|
5
5
|
"phaseSchema": 2,
|
|
6
6
|
"phases": [
|
|
7
7
|
{
|
|
@@ -35,9 +35,9 @@
|
|
|
35
35
|
"autopilot": [0, 1, 2, 3, 4, 5],
|
|
36
36
|
"analysis": [0, 1, 3, 4, 5]
|
|
37
37
|
},
|
|
38
|
-
"commandCount":
|
|
38
|
+
"commandCount": 65,
|
|
39
39
|
"skillCount": 161,
|
|
40
|
-
"skillCountAll":
|
|
40
|
+
"skillCountAll": 229,
|
|
41
41
|
"agentCount": 10,
|
|
42
42
|
"hosts": ["Claude Code", "Codex CLI", "Copilot CLI"],
|
|
43
43
|
"toolCount": 197,
|