@mmerterden/multi-agent-pipeline 20.0.0 → 20.2.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.
Files changed (90) hide show
  1. package/CHANGELOG.md +55 -0
  2. package/README.md +5 -5
  3. package/README.tr.md +5 -5
  4. package/SECURITY.md +3 -3
  5. package/docs/adr/0011-dormant-ci.md +10 -1
  6. package/docs/architecture.md +2 -2
  7. package/docs/ecosystem.md +5 -5
  8. package/docs/facts.json +8 -7
  9. package/install/_codex-agents.mjs +1 -1
  10. package/manifest.json +92 -64
  11. package/package.json +1 -1
  12. package/pipeline/agents/code-reviewer.md +2 -2
  13. package/pipeline/agents/dev-critic.md +5 -5
  14. package/pipeline/agents/security-auditor.md +80 -72
  15. package/pipeline/commands/figma-to-swiftui.md +1 -1
  16. package/pipeline/commands/multi-agent/SKILL.md +1 -1
  17. package/pipeline/commands/multi-agent/channels/SKILL.md +1 -1
  18. package/pipeline/commands/multi-agent/diff-explain/SKILL.md +1 -1
  19. package/pipeline/commands/multi-agent/help/SKILL.md +2 -0
  20. package/pipeline/commands/multi-agent/scan/SKILL.md +2 -2
  21. package/pipeline/commands/multi-agent/security-review/SKILL.md +52 -0
  22. package/pipeline/commands/multi-agent/sync/SKILL.md +3 -3
  23. package/pipeline/multi-agent-refs/component-dispatch.md +5 -5
  24. package/pipeline/multi-agent-refs/cross-cli-contract.md +6 -6
  25. package/pipeline/multi-agent-refs/features/security-audit.md +55 -0
  26. package/pipeline/multi-agent-refs/phases/modes.md +1 -1
  27. package/pipeline/multi-agent-refs/phases/phase-3-review.md +9 -15
  28. package/pipeline/multi-agent-refs/phases/phase-5-report.md +1 -1
  29. package/pipeline/multi-agent-refs/threat-model.md +39 -0
  30. package/pipeline/schemas/agent-state.schema.json +23 -0
  31. package/pipeline/schemas/phases.json +1 -2
  32. package/pipeline/schemas/prefs.schema.json +0 -4
  33. package/pipeline/schemas/reviewer-output.schema.json +99 -2
  34. package/pipeline/schemas/security-finding.schema.json +144 -0
  35. package/pipeline/scripts/_stack-routing.mjs +1 -0
  36. package/pipeline/scripts/gc-abandoned.sh +16 -9
  37. package/pipeline/scripts/render-work-summary.sh +7 -4
  38. package/pipeline/skills/.skill-manifest.json +47 -23
  39. package/pipeline/skills/.skills-index.json +75 -9
  40. package/pipeline/skills/shared/README.md +13 -7
  41. package/pipeline/skills/shared/core/multi-agent/SKILL.md +3 -4
  42. package/pipeline/skills/shared/core/multi-agent-scan/SKILL.md +2 -2
  43. package/pipeline/skills/shared/core/multi-agent-security-review/SKILL.md +29 -0
  44. package/pipeline/skills/shared/core/multi-agent-sync/SKILL.md +3 -3
  45. package/pipeline/skills/shared/external/android-architecture/SKILL.md +71 -0
  46. package/pipeline/skills/shared/external/android-architecture/references/patterns.md +142 -0
  47. package/pipeline/skills/shared/external/android-build-quality-gates/SKILL.md +314 -0
  48. package/pipeline/skills/shared/external/android-build-quality-gates/references/patterns.md +432 -0
  49. package/pipeline/skills/shared/external/android-datastore/SKILL.md +236 -0
  50. package/pipeline/skills/shared/external/android-datastore/references/patterns.md +297 -0
  51. package/pipeline/skills/shared/external/android-design-tokens-codegen/SKILL.md +249 -0
  52. package/pipeline/skills/shared/external/android-design-tokens-codegen/references/patterns.md +270 -0
  53. package/pipeline/skills/shared/external/android-jetpack-compose-expert/SKILL.md +62 -0
  54. package/pipeline/skills/shared/external/android-mvi-viewmodel/SKILL.md +255 -0
  55. package/pipeline/skills/shared/external/android-mvi-viewmodel/references/patterns.md +257 -0
  56. package/pipeline/skills/shared/external/android-performance/SKILL.md +86 -602
  57. package/pipeline/skills/shared/external/android-performance/references/patterns.md +659 -0
  58. package/pipeline/skills/shared/external/android-security/SKILL.md +117 -430
  59. package/pipeline/skills/shared/external/android-security/references/patterns.md +690 -0
  60. package/pipeline/skills/shared/external/{android_ui_verification → android-ui-verification}/SKILL.md +1 -1
  61. package/pipeline/skills/shared/external/api-security-best-practices/SKILL.md +35 -733
  62. package/pipeline/skills/shared/external/api-security-best-practices/references/auth.md +299 -0
  63. package/pipeline/skills/shared/external/api-security-best-practices/references/input-validation.md +255 -0
  64. package/pipeline/skills/shared/external/api-security-best-practices/references/rate-limiting.md +167 -0
  65. package/pipeline/skills/shared/external/app-intents/SKILL.md +39 -174
  66. package/pipeline/skills/shared/external/app-intents/references/appintents-advanced.md +178 -0
  67. package/pipeline/skills/shared/external/compose-components/SKILL.md +48 -0
  68. package/pipeline/skills/shared/external/compose-components/references/patterns.md +200 -0
  69. package/pipeline/skills/shared/external/compose-navigation/SKILL.md +66 -3
  70. package/pipeline/skills/shared/external/compose-navigation/references/patterns.md +191 -0
  71. package/pipeline/skills/shared/external/compose-testing/SKILL.md +107 -397
  72. package/pipeline/skills/shared/external/compose-testing/references/patterns.md +631 -0
  73. package/pipeline/skills/shared/external/gradle-kotlin-dsl/SKILL.md +121 -449
  74. package/pipeline/skills/shared/external/gradle-kotlin-dsl/references/patterns.md +715 -0
  75. package/pipeline/skills/shared/external/kotlin-coroutines-expert/SKILL.md +143 -0
  76. package/pipeline/skills/shared/external/mapkit-location/SKILL.md +27 -102
  77. package/pipeline/skills/shared/external/mapkit-location/references/mapkit-patterns.md +42 -0
  78. package/pipeline/skills/shared/external/retrofit-networking/SKILL.md +94 -383
  79. package/pipeline/skills/shared/external/retrofit-networking/references/patterns.md +640 -0
  80. package/pipeline/skills/shared/external/room-database/SKILL.md +101 -440
  81. package/pipeline/skills/shared/external/room-database/references/patterns.md +614 -0
  82. package/pipeline/skills/shared/external/security-review/SKILL.md +64 -0
  83. package/pipeline/skills/shared/external/security-review/references/owasp-mobile-top10-2024.md +53 -0
  84. package/pipeline/skills/shared/external/security-review/references/owasp-web-api-top10-2021.md +56 -0
  85. package/pipeline/skills/shared/external/storekit/SKILL.md +69 -343
  86. package/pipeline/skills/shared/external/storekit/references/core-patterns.md +371 -0
  87. package/pipeline/skills/shared/external/widgetkit/SKILL.md +25 -101
  88. package/pipeline/skills/shared/external/widgetkit/references/widgetkit-advanced.md +107 -0
  89. package/pipeline/skills/skills-index.md +8 -2
  90. package/pipeline/commands/security-review.md +0 -6
package/CHANGELOG.md CHANGED
@@ -14,6 +14,61 @@ Internal file-layout changes that don't affect the slash-command surface are sti
14
14
 
15
15
  ---
16
16
 
17
+ ## [20.2.0] - 2026-09-21
18
+
19
+ ### Added
20
+
21
+ - **Four new Android knowledge skills**, drawn generically from a mature Compose
22
+ app: `android-mvi-viewmodel` (a reusable `BaseViewModel<State, Intent, Event>`
23
+ seam), `android-datastore` (typed and encrypted Jetpack DataStore, the
24
+ SharedPreferences replacement), `android-design-tokens-codegen` (single-source
25
+ JSON to typed-Kotlin codegen with a `--check` CI freshness gate) and
26
+ `android-build-quality-gates` (module and quality rules as build-failing Gradle
27
+ tasks). They ship in `ai-android-toolkit`.
28
+
29
+ ### Changed
30
+
31
+ - **Ten Android skills deepened** with current best-practice techniques across
32
+ coroutines, Compose, Retrofit, Room, security, testing, Gradle, design tokens,
33
+ architecture and navigation. Cross-cutting topics are owned by one skill and
34
+ cross-linked from the others rather than duplicated.
35
+ - **Eleven knowledge skills brought under the 500-line rule** by moving long code
36
+ examples into per-skill `references/` files (progressive disclosure); their
37
+ line-grace entries are removed. `android_ui_verification` renamed to
38
+ `android-ui-verification` for kebab-case parity.
39
+ - **Description-surface ceiling raised 88000 -> 90000** for the four new skills;
40
+ their descriptions were trimmed toward the average first and the average held
41
+ at 320 against its 420 ceiling.
42
+
43
+ ## [20.1.0] - 2026-09-21
44
+
45
+ ### Added
46
+
47
+ - **`/multi-agent:security-review` and a wired security audit.** A defensive,
48
+ static security review: build a run-scoped threat model (attacker, trust
49
+ boundaries, attack surface, severity calibration), find vulnerabilities joined
50
+ to OWASP (Web/API Top 10 2021 and Mobile Top 10 2024) and a CWE, score them
51
+ with CVSS 3.1, and emit reviewer-shaped findings carrying evidence,
52
+ counterevidence, confidence and a before/after fix. No live target, no
53
+ payloads. `security-finding.schema.json` makes a finding a reviewer-output
54
+ finding plus a required `security` envelope, so the security-auditor's output
55
+ now merges at Phase 3 Step 3.0 and a blocking finding blocks Phase 4 - the
56
+ audit runs at Step 2.7 on the `security_path` signal, and the command is the
57
+ standalone entry point. An always-on `ai-common-toolkit:security-review` skill
58
+ carries the method.
59
+
60
+ ### Fixed
61
+
62
+ - **Six-phase leftovers and stale shipped claims.** Renumbered the eight-phase
63
+ literals that misfired under six phases (a Report-phase run reaped by
64
+ gc-abandoned, an eight-name work-summary strip, stale personas and dispatch
65
+ docs), derived the reaped-phase and work-summary labels from the contract, and
66
+ removed dead config (`componentDevWorkflow`, `shortRunFromPhase`). Corrected
67
+ claims the code does not back: a phantom phase count, a scan skill pointing at
68
+ a workflow and a flag that do not exist, a SECURITY.md table five majors
69
+ behind (now derived and gated), and CONTRIBUTING.md / ADR-0011 describing CI as
70
+ dormant while its workflows run on every push.
71
+
17
72
  ## [20.0.0] - 2026-09-21
18
73
 
19
74
  ### Removed
package/README.md CHANGED
@@ -175,7 +175,7 @@ The discipline behind all of this - bounded loops, evidence gates, token-budgete
175
175
 
176
176
  ## Commands
177
177
 
178
- `/multi-agent` plus 57 sub-commands. `/multi-agent:help` renders the same catalog in your terminal, in your `outputLanguage`.
178
+ `/multi-agent` plus 58 sub-commands. `/multi-agent:help` renders the same catalog in your terminal, in your `outputLanguage`.
179
179
 
180
180
  ### Pipeline entries
181
181
 
@@ -369,17 +369,17 @@ This enables the matching plugin (+ the shared `ai-common` plugin) in the repo's
369
369
 
370
370
  ## Tool support
371
371
 
372
- The pipeline runs natively on **Claude Code**, **Copilot CLI** and **Codex CLI** - all three install from the same `pipeline/` source and get the same 57 commands.
372
+ The pipeline runs natively on **Claude Code**, **Copilot CLI** and **Codex CLI** - all three install from the same `pipeline/` source and get the same 58 commands.
373
373
 
374
374
  | Tool | Flag | What it installs |
375
375
  | ----------- | -------------------- | ------------------------------------------------------------------------------------------------------ |
376
376
  | Claude Code | `--claude` (default) | slash commands + skills + agents + three `PreToolUse` hooks (secret scan, agent-guard, read-size gate) |
377
- | Copilot CLI | `--copilot` | instructions + 57 sub-command skills + scripts |
378
- | Codex CLI | `--codex` | one router skill + 57 specs as refs + 9 agent TOML + `AGENTS.md` block + `codex mcp add` |
377
+ | Copilot CLI | `--copilot` | instructions + 58 sub-command skills + scripts |
378
+ | Codex CLI | `--codex` | one router skill + 58 specs as refs + 9 agent TOML + `AGENTS.md` block + `codex mcp add` |
379
379
 
380
380
  Filter skills by stack with `--platform=ios\|android\|all`.
381
381
 
382
- **Why Codex gets one skill and not 57.** Codex assembles every discovered skill's name
382
+ **Why Codex gets one skill and not 58.** Codex assembles every discovered skill's name
383
383
  and description into a single prompt block and drops entries when it overflows, with no
384
384
  error. Measured on 0.145: installing one plugin that declares 142 skills surfaced only
385
385
  75 of them and evicted an unrelated user skill. So on Codex the pipeline ships a single
package/README.tr.md CHANGED
@@ -155,7 +155,7 @@ Koşunun kendisinde ayarlanabilen tek şey autopilot; geri kalan her şey kendi
155
155
 
156
156
  ## Komutlar
157
157
 
158
- `/multi-agent` ve 57 alt komut. `/multi-agent:help` aynı katalogu terminalde, `outputLanguage` ayarına göre gösterir.
158
+ `/multi-agent` ve 58 alt komut. `/multi-agent:help` aynı katalogu terminalde, `outputLanguage` ayarına göre gösterir.
159
159
 
160
160
  ### Pipeline girişleri
161
161
 
@@ -350,17 +350,17 @@ Bu, ilgili plugin'i (+ ortak `ai-common` plugin'ini) repo'nun `.claude/settings.
350
350
 
351
351
  ## Araç desteği
352
352
 
353
- Pipeline **Claude Code**, **Copilot CLI** ve **Codex CLI** üzerinde native çalışır - üçü de aynı `pipeline/` kaynağından kurulur ve aynı 57 komutu alır.
353
+ Pipeline **Claude Code**, **Copilot CLI** ve **Codex CLI** üzerinde native çalışır - üçü de aynı `pipeline/` kaynağından kurulur ve aynı 58 komutu alır.
354
354
 
355
355
  | Araç | Bayrak | Ne kurar |
356
356
  | ----------- | ----------------------- | ---------------------------------------------------------------------------------------------------------------- |
357
357
  | Claude Code | `--claude` (varsayılan) | slash komutları + skill'ler + agent'lar + üç `PreToolUse` hook'u (secret scan, agent-guard, okuma-boyutu geçidi) |
358
- | Copilot CLI | `--copilot` | talimatlar + 57 alt-komut skill'i + script'ler |
359
- | Codex CLI | `--codex` | bir router skill + ref olarak 57 spec + 9 agent TOML + `AGENTS.md` bloğu + `codex mcp add` |
358
+ | Copilot CLI | `--copilot` | talimatlar + 58 alt-komut skill'i + script'ler |
359
+ | Codex CLI | `--codex` | bir router skill + ref olarak 58 spec + 9 agent TOML + `AGENTS.md` bloğu + `codex mcp add` |
360
360
 
361
361
  Skill'leri stack'e göre filtrele: `--platform=ios\|android\|all`.
362
362
 
363
- **Codex neden 57 değil de tek bir skill alıyor.** Codex, keşfettiği her skill'in adını
363
+ **Codex neden 58 değil de tek bir skill alıyor.** Codex, keşfettiği her skill'in adını
364
364
  ve açıklamasını tek bir prompt bloğuna toplar ve blok taştığında girdileri hatasızca
365
365
  düşürür. 0.145 üzerinde ölçüldü: 142 skill deklare eden bir plugin kurulduğunda sadece
366
366
  75'i yüzeye çıktı ve alakasız bir kullanıcı skill'i tahliye edildi. Bu yüzden Codex'te
package/SECURITY.md CHANGED
@@ -6,9 +6,9 @@ We provide security fixes for the latest minor of the current major. Older versi
6
6
 
7
7
  | Version | Supported |
8
8
  | ------- | ---------------------- |
9
- | 15.x | ✅ active |
10
- | 14.x | ⚠️ security fixes only |
11
- | ≤ 13.x | ❌ end-of-life |
9
+ | 20.x | ✅ active |
10
+ | 19.x | ⚠️ security fixes only |
11
+ | ≤ 18.x | ❌ end-of-life |
12
12
 
13
13
  ## Reporting a Vulnerability
14
14
 
@@ -1,6 +1,15 @@
1
1
  # 11. CI stays in the repository but dormant; the pre-push gate is primary
2
2
 
3
- **Status:** Accepted · 2026-08-31 · amended 2026-09-13 · amended 2026-09-17
3
+ **Status:** Accepted · 2026-08-31 · amended 2026-09-13 · amended 2026-09-17 · superseded 2026-09-21 (GitHub-hosted CI reawakened)
4
+
5
+ > **Amendment, 2026-09-21 (supersedes the conclusion below).** `test.yml` and
6
+ > `ci-lite.yml` now run on every push and pull request to `main`
7
+ > (`workflow_dispatch` also triggers them by hand); their `on:` blocks are the
8
+ > source of truth for what runs. The dormancy decision recorded in this ADR no
9
+ > longer holds for the GitHub-hosted workflows. The pre-push gate stays the
10
+ > primary check and CI is the backstop, so the reasoning below still explains
11
+ > why local verification leads; only "no workflow runs" has changed. The
12
+ > self-hosted-runner discussion in the 2026-09-17 amendment is unaffected.
4
13
 
5
14
  > **Amendment, 2026-09-13 (ADR-0012, macOS only).** Linux and Windows support
6
15
  > was removed. `package.json` now declares `os: ["darwin"]`, which npm enforces
@@ -113,7 +113,7 @@ graph TB
113
113
  end
114
114
 
115
115
  subgraph "Pipeline Specs"
116
- CMD[commands/<br/>57 command files]
116
+ CMD[commands/<br/>58 command files]
117
117
  AGT[agents/<br/>8 agent personas]
118
118
  RUL[rules/<br/>12 domain rules]
119
119
  PHS[multi-agent-refs/phases/<br/>phase specs + contracts]
@@ -169,7 +169,7 @@ revisions of this diagram - Codex CLI and the two independently-shipped repos
169
169
  graph TD
170
170
  CC["Claude Code<br/>(source of truth)"]
171
171
  COP["Copilot CLI<br/>(instructions + 56 skills)"]
172
- COD["Codex CLI<br/>(1 router skill + 57 refs)"]
172
+ COD["Codex CLI<br/>(1 router skill + 58 refs)"]
173
173
  REPO["Pipeline Repo<br/>(npm package)"]
174
174
  WEB["Website"]
175
175
  PLUGREPO["multi-agent-plugins<br/>(5 stack 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 57 slash commands, quality gates, review/triage, cross-CLI parity | npm package (`@mmerterden/multi-agent-pipeline`), installs itself onto Claude Code / Copilot CLI / Codex CLI |
8
+ | **`multi-agent-pipeline`** (this repo) | Orchestration: the 6-phase flow, the 58 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
10
  | **`multi-agent-toolkit-mcp`** | The pipeline's hands on devices and browsers: 115 MCP tools across 13 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, a full-text context index, provider-backed research, video key frames) | 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 · 57 commands"]
21
+ PHASES["6 phases · 58 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/>57 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 + 57 refs<br/>+ 8 agent TOML"]
71
+ CC -->|"Step 2: copy + reformat<br/>58 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 + 58 refs<br/>+ 8 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
 
@@ -157,7 +157,7 @@ measurements behind this table):
157
157
 
158
158
  | | Claude Code | Copilot CLI | Codex CLI |
159
159
  |---|---|---|---|
160
- | **Pipeline commands** | 57 slash-command skills, native | 57 sub-command skills, `multi-agent-{cmd}` naming, copied in | 1 router skill (`multi-agent`) + 57 command specs as reference files - Codex silently truncates its skills block past a few dozen entries, so sub-commands are not peer skills here |
160
+ | **Pipeline commands** | 58 slash-command skills, native | 58 sub-command skills, `multi-agent-{cmd}` naming, copied in | 1 router skill (`multi-agent`) + 58 command specs as reference files - Codex silently truncates its skills block past a few dozen entries, so sub-commands are not peer skills here |
161
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`) |
162
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 |
163
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`) |
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-09-21",
4
- "version": "20.0.0",
4
+ "version": "20.2.0",
5
5
  "phaseSchema": 2,
6
6
  "phases": [
7
7
  {
@@ -35,12 +35,12 @@
35
35
  "autopilot": [0, 1, 2, 3, 4, 5],
36
36
  "analysis": [0, 1, 3, 4, 5]
37
37
  },
38
- "commandCount": 57,
39
- "skillCount": 153,
40
- "skillCountAll": 213,
38
+ "commandCount": 58,
39
+ "skillCount": 158,
40
+ "skillCountAll": 219,
41
41
  "agentCount": 9,
42
42
  "hosts": ["Claude Code", "Codex CLI", "Copilot CLI"],
43
- "toolCount": 115,
43
+ "toolCount": 117,
44
44
  "toolCategories": {
45
45
  "ios": 40,
46
46
  "android": 31,
@@ -51,8 +51,9 @@
51
51
  "context": 3,
52
52
  "agent": 2,
53
53
  "research": 2,
54
+ "security": 2,
54
55
  "media": 1
55
56
  },
56
- "pluginSkillCount": 239,
57
- "toolkitVersion": "3.13.1"
57
+ "pluginSkillCount": 244,
58
+ "toolkitVersion": "3.14.0"
58
59
  }
@@ -27,7 +27,7 @@ import { ensureDir, ensureRealDir, isDryRun, writeFile } from "./_common.mjs";
27
27
  * Claude Code.
28
28
  *
29
29
  * This table resolves a persona's DEFAULT tier, which is not the same thing as
30
- * a per-slot override. Phase 4 dispatches Reviewer 3 with an explicit
30
+ * a per-slot override. Phase 3 dispatches Reviewer 3 with an explicit
31
31
  * `gpt-5.6` @ `medium` (see `phases/phase-3-review.md`, `claude-md-template.md`
32
32
  * and `reviewer-output.schema.json`, which all state that value) even though
33
33
  * the persona's own tier is `sonnet` and resolves here to `gpt-5.4`. That is