@mmerterden/multi-agent-pipeline 14.2.2 → 15.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 +76 -6
- package/README.md +15 -8
- package/README.tr.md +15 -8
- package/docs/FIGMA_PIPELINE.md +3 -3
- package/docs/adr/0006-skills-core-external-split.md +1 -1
- package/docs/adr/0009-claude-stack-skills-plugin-only.md +31 -0
- package/docs/adr/README.md +1 -0
- package/docs/architecture.md +7 -7
- package/docs/ecosystem.md +28 -28
- package/docs/features.md +5 -5
- package/index.js +2 -0
- package/install/_codex-agents.mjs +11 -2
- package/install/_common.mjs +65 -1
- package/install/_dev-only-files.mjs +0 -1
- package/install/_platform-filter.mjs +73 -7
- package/install/_plugin-skills.mjs +19 -8
- package/install/claude.mjs +144 -59
- package/install/codex.mjs +28 -3
- package/install/copilot.mjs +36 -11
- package/install/index.mjs +6 -2
- package/install/templates/codex-instructions.md +1 -1
- package/install/templates/copilot-instructions.md +3 -3
- package/package.json +1 -2
- package/pipeline/commands/multi-agent/SKILL.md +2 -0
- package/pipeline/commands/multi-agent/analysis/SKILL.md +3 -3
- package/pipeline/commands/multi-agent/analysis-resolve/SKILL.md +2 -2
- package/pipeline/commands/multi-agent/build-optimize/SKILL.md +9 -9
- package/pipeline/commands/multi-agent/channels/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/complaint-analysis/SKILL.md +186 -0
- package/pipeline/commands/multi-agent/dev/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/dev-autopilot/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/dev-local/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/dev-local-autopilot/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/garbage-collect/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/help/SKILL.md +19 -4
- package/pipeline/commands/multi-agent/ios-coding-standard/SKILL.md +2 -2
- package/pipeline/commands/multi-agent/jira/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/prune-prompts/SKILL.md +81 -0
- package/pipeline/commands/multi-agent/resume/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/{ship → resume-local}/SKILL.md +8 -8
- package/pipeline/commands/multi-agent/setup/SKILL.md +5 -5
- package/pipeline/commands/multi-agent/stack/SKILL.md +55 -43
- package/pipeline/commands/multi-agent/store-ready/SKILL.md +3 -3
- package/pipeline/commands/multi-agent/sync/SKILL.md +18 -11
- package/pipeline/commands/multi-agent/testflight-validation/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/uninstall/SKILL.md +2 -0
- package/pipeline/commands/multi-agent/update/SKILL.md +1 -1
- package/pipeline/lib/issue-fetcher.sh +1 -1
- package/pipeline/lib/parse-complaints.sh +306 -0
- package/pipeline/multi-agent-refs/channels/wiki.md +3 -3
- package/pipeline/multi-agent-refs/complaint-analysis-template.md +99 -0
- package/pipeline/multi-agent-refs/component-dispatch.md +6 -6
- package/pipeline/multi-agent-refs/cross-cli-contract.md +16 -16
- package/pipeline/multi-agent-refs/features/external-context-injection.md +1 -1
- package/pipeline/multi-agent-refs/features/stack-skill-routing.md +5 -5
- package/pipeline/multi-agent-refs/generate-issue.md +1 -1
- package/pipeline/multi-agent-refs/phases/modes.md +1 -1
- package/pipeline/multi-agent-refs/phases/phase-0-init.md +1 -1
- package/pipeline/multi-agent-refs/phases/phase-1-analysis.md +7 -7
- package/pipeline/multi-agent-refs/phases/phase-2-planning.md +5 -5
- package/pipeline/multi-agent-refs/phases/phase-3-dev.md +3 -3
- package/pipeline/multi-agent-refs/phases/phase-4-review.md +12 -12
- package/pipeline/multi-agent-refs/phases/phase-5-test.md +1 -1
- package/pipeline/multi-agent-refs/tracker-contract.md +1 -1
- package/pipeline/multi-agent-refs/wiki-capture.md +2 -2
- package/pipeline/preferences-template.json +13 -5
- package/pipeline/rules/figma-pipeline.md +2 -2
- package/pipeline/schemas/agent-state.schema.json +1 -1
- package/pipeline/schemas/complaint-analysis-spec.schema.json +216 -0
- package/pipeline/schemas/migrations/prefs-2.5.0-to-2.6.0.mjs +46 -0
- package/pipeline/schemas/prefs.schema.json +276 -66
- package/pipeline/schemas/token-budget.json +2 -2
- package/pipeline/scripts/_stack-routing.mjs +79 -0
- package/pipeline/scripts/audit-log-rotate.sh +4 -1
- package/pipeline/scripts/build-skills-index.mjs +11 -0
- package/pipeline/scripts/build-stack-plugins.mjs +28 -60
- package/pipeline/scripts/check-derived-drift.mjs +52 -28
- package/pipeline/scripts/gc-worktrees.sh +4 -1
- package/pipeline/scripts/gen-skills-index.mjs +1 -1
- package/pipeline/scripts/match-skills.mjs +8 -2
- package/pipeline/scripts/migrate-prefs.mjs +28 -20
- package/pipeline/scripts/phase-tracker.sh +13 -5
- package/pipeline/scripts/phase0-exit-gate.mjs +3 -2
- package/pipeline/scripts/run-aggregator.mjs +7 -2
- package/pipeline/scripts/scan-agent-config.sh +1 -1
- package/pipeline/scripts/skill-conformance.mjs +165 -30
- package/pipeline/scripts/smoke-cross-cli-behavior.sh +1 -1
- package/pipeline/scripts/test-gap-rules/android.json +25 -0
- package/pipeline/scripts/test-gap-rules/ios.json +34 -0
- package/pipeline/scripts/test-gap-rules/node.json +29 -0
- package/pipeline/scripts/test-gap-rules/python.json +25 -0
- package/pipeline/scripts/uninstall.mjs +158 -11
- package/pipeline/scripts/validate-complaint-doc.mjs +229 -0
- package/pipeline/scripts/validate-reviewer.mjs +9 -3
- package/pipeline/skills/.skill-manifest.json +156 -108
- package/pipeline/skills/.skills-index.json +449 -12
- package/pipeline/skills/shared/README.md +14 -10
- package/pipeline/skills/shared/core/multi-agent-analysis-resolve/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-build-optimize/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-complaint-analysis/SKILL.md +49 -0
- package/pipeline/skills/shared/core/multi-agent-dev/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-dev-autopilot/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-dev-local/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-dev-local-autopilot/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-ios-coding-standard/SKILL.md +2 -2
- package/pipeline/skills/shared/core/multi-agent-prune-prompts/SKILL.md +83 -0
- package/pipeline/skills/shared/core/{multi-agent-ship → multi-agent-resume-local}/SKILL.md +6 -6
- package/pipeline/skills/shared/core/multi-agent-stack/SKILL.md +79 -22
- package/pipeline/skills/shared/core/multi-agent-store-ready/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-sync/SKILL.md +8 -8
- package/pipeline/skills/shared/core/multi-agent-testflight-validation/SKILL.md +1 -1
- package/pipeline/skills/shared/external/ios-coding-standard/modules/_TEMPLATE.yml +2 -2
- package/pipeline/skills/shared/external/ios-coding-standard/references/rules.yml +368 -33
- package/pipeline/skills/shared/external/ios-coding-standard/references/swiftlint.draft.yml +1 -2
- package/pipeline/skills/shared/external/ios-coding-standard/scripts/check_structure.py +765 -0
- package/pipeline/skills/shared/external/ios-module-structure/SKILL.md +75 -0
- package/pipeline/skills/shared/external/ios-module-structure/modules/_TEMPLATE.yml +131 -0
- package/pipeline/skills/shared/external/ios-module-structure/references/rules.yml +559 -0
- package/pipeline/skills/shared/external/ios-module-structure/scripts/check_structure.py +765 -0
- package/pipeline/skills/shared/external/localization-reuse-map/example-mapping.json +53 -10
- package/pipeline/skills/shared/external/localization-reuse-map/reference/sources-and-recipes.md +4 -3
- package/pipeline/skills/skills-index.md +7 -4
|
@@ -1,19 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"screen": "Sign Up - Account Details",
|
|
3
|
-
"platforms": [
|
|
4
|
-
"ios",
|
|
5
|
-
"android",
|
|
6
|
-
"web"
|
|
7
|
-
],
|
|
3
|
+
"platforms": ["ios", "android", "web"],
|
|
8
4
|
"figmaFileKey": "9XbExampleFigmaKey00",
|
|
9
|
-
"figmaNodes": [
|
|
10
|
-
"1024:4096",
|
|
11
|
-
"1024:4112"
|
|
12
|
-
],
|
|
5
|
+
"figmaNodes": ["1024:4096", "1024:4112"],
|
|
13
6
|
"screenshot": "screenshot.png",
|
|
14
7
|
"overlay": "sign-up-account-details.overlay.png",
|
|
15
8
|
"keyshots": "sign-up-account-details.keyshots.manifest.json",
|
|
16
|
-
"legacyKeyPrefix": "",
|
|
9
|
+
"legacyKeyPrefix": "Mobile-",
|
|
17
10
|
"rows": [
|
|
18
11
|
{
|
|
19
12
|
"element": "Screen title (top bar)",
|
|
@@ -139,6 +132,56 @@
|
|
|
139
132
|
},
|
|
140
133
|
"cmsNodeId": "1024:4150",
|
|
141
134
|
"cmsSource": "figma-rest"
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
"element": "Terms checkbox label",
|
|
138
|
+
"newKey": "SignUpAccountDetails.TermsLabel",
|
|
139
|
+
"new": {
|
|
140
|
+
"en": "I agree to the Terms",
|
|
141
|
+
"tr": "I agree to the Terms"
|
|
142
|
+
},
|
|
143
|
+
"legacyKeyIOS": "TermsAgree",
|
|
144
|
+
"legacyKeyAndroid": "TermsAgree",
|
|
145
|
+
"legacy": {
|
|
146
|
+
"en": "I agree to the Terms",
|
|
147
|
+
"tr": "Koşulları kabul ediyorum"
|
|
148
|
+
},
|
|
149
|
+
"verdict": "reuse",
|
|
150
|
+
"note": "New tr equals new en (untranslated in the redesign source) - flagging regardless of verdict; the legacy tr value is fine to reuse once the redesign copy is translated."
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
"element": "Referral code field label",
|
|
154
|
+
"newKey": "SignUpAccountDetails.ReferralLabel",
|
|
155
|
+
"new": {
|
|
156
|
+
"en": "Referral code (optional)",
|
|
157
|
+
"tr": "Referans kodu (opsiyonel)"
|
|
158
|
+
},
|
|
159
|
+
"legacyKeyIOS": "",
|
|
160
|
+
"legacyKeyAndroid": "",
|
|
161
|
+
"legacy": {},
|
|
162
|
+
"verdict": "new",
|
|
163
|
+
"note": "No legacy equivalent existed for this field. CMS tr ('varsa') diverges from the new tr ('opsiyonel') - content team's final copy, flagged not hidden.",
|
|
164
|
+
"cms": {
|
|
165
|
+
"tr": "Referans kodu (varsa)"
|
|
166
|
+
},
|
|
167
|
+
"cmsNodeId": "1024:4158",
|
|
168
|
+
"cmsSource": "figma-rest"
|
|
169
|
+
},
|
|
170
|
+
{
|
|
171
|
+
"element": "Required-field validation message (any field left empty)",
|
|
172
|
+
"newKey": "SignUpAccountDetails.Error.<field>Required",
|
|
173
|
+
"new": {
|
|
174
|
+
"en": "This field is required",
|
|
175
|
+
"tr": "Bu alan zorunludur"
|
|
176
|
+
},
|
|
177
|
+
"legacyKeyIOS": "Error.<field>Required",
|
|
178
|
+
"legacyKeyAndroid": "error_<field>_required",
|
|
179
|
+
"legacy": {
|
|
180
|
+
"en": "This field is required",
|
|
181
|
+
"tr": "Bu alan zorunludur"
|
|
182
|
+
},
|
|
183
|
+
"verdict": "review",
|
|
184
|
+
"note": "Dynamic - enumerate at runtime: the key itself is built as \"Error.\\(field)Required\".localized with `field` interpolated (FirstName/LastName/Email/Password), so no single static key exists to cross-reference; scan-screen-keys.py surfaces the pattern as a dynamic hit and every concrete field must be enumerated and mapped."
|
|
142
185
|
}
|
|
143
186
|
]
|
|
144
187
|
}
|
package/pipeline/skills/shared/external/localization-reuse-map/reference/sources-and-recipes.md
CHANGED
|
@@ -61,10 +61,10 @@ keys: map once where that component is mapped - flag, don't duplicate per scre
|
|
|
61
61
|
2. **iOS - follow the chain.** Fetch the VM raw; it builds sections/cells. Form-field labels are **not** in
|
|
62
62
|
the VM - they default inside the **cell presentation models** it instantiates. Follow them:
|
|
63
63
|
```bash
|
|
64
|
-
gh api ".../contents/<path
|
|
64
|
+
gh api ".../contents/<path>/<Screen>ViewModel.swift" -H "Accept: application/vnd.github.raw" > /tmp/vm.swift
|
|
65
65
|
grep -nE 'PresentationModel|\.localized' /tmp/vm.swift # find the cell classes it creates
|
|
66
66
|
# then fetch each cell class and grep its keys:
|
|
67
|
-
gh api ".../Forms/TextInputCell/PresentationModels
|
|
67
|
+
gh api ".../Forms/TextInputCell/PresentationModels/<Field>TextInputCellPresentationModel.swift" -H "Accept: application/vnd.github.raw" | grep -oE '"[^"]+"\.localized'
|
|
68
68
|
```
|
|
69
69
|
This is how `NewSurnameReq` / `PnrNumber` / `ReservationEticketPlaceHolder` surface - a VM-only grep
|
|
70
70
|
misses them. Keys are the string literal before `.localized`.
|
|
@@ -156,7 +156,8 @@ builders, VM error branches - not the VC→VM→cell chain) and to **dynamic/i
|
|
|
156
156
|
```bash
|
|
157
157
|
python3 scripts/scan-screen-keys.py --screen-path <impl-screen-dir> # [--category error|dynamic|static]
|
|
158
158
|
```
|
|
159
|
-
It greps `.swift`/`.kt`/`.xml` and classifies each hit `static | error |
|
|
159
|
+
It greps `.swift`/`.kt`/`.xml`/`.ts`/`.tsx`/`.js`/`.jsx`/`.vue` and classifies each hit `static | error |
|
|
160
|
+
dynamic` with file:line. **Fold the
|
|
160
161
|
`error` and `dynamic` hits into the mapping** (each still gets the normal new/legacy/CMS resolution); diff the
|
|
161
162
|
`static` hits against the registry union to catch keys wired in code but absent from the registry. Dynamic
|
|
162
163
|
keys that can't be statically resolved are mapped with a note (`verdict: review` / "dynamic - enumerate at
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> Auto-generated by `pipeline/scripts/build-skills-index.mjs` - do not hand-edit.
|
|
4
4
|
> Regenerate with `node pipeline/scripts/build-skills-index.mjs`.
|
|
5
5
|
|
|
6
|
-
**
|
|
6
|
+
**205 skills** across 2 groups.
|
|
7
7
|
|
|
8
8
|
| Group | Name | Platform | Description |
|
|
9
9
|
|-------|------|----------|-------------|
|
|
@@ -79,6 +79,7 @@
|
|
|
79
79
|
| external | `ios-debugger-agent` | - | Debug the current iOS project on a booted simulator with XcodeBuildMCP. Use when an iOS bug has to be reproduced and diagnosed on a booted s |
|
|
80
80
|
| external | `ios-developer` | - | Develop native iOS applications with Swift/SwiftUI. Masters iOS 18, SwiftUI, UIKit integration, Core Data, networking, and App Store optimiz |
|
|
81
81
|
| external | `ios-localization` | - | Implement, review, or improve localization and internationalization in iOS/macOS apps - String Catalogs (.xcstrings), generated localizabl |
|
|
82
|
+
| external | `ios-module-structure` | - | The ios-module-structure rule registry: stable-ID rules over where a declaration lives, what its file is called and what its folder must con |
|
|
82
83
|
| external | `ios-networking` | - | Build, review, or improve networking code in iOS/macOS apps using URLSession with async/await, structured concurrency, and modern Swift patt |
|
|
83
84
|
| external | `ios-security` | - | Secure iOS apps with Keychain Services, CryptoKit encryption, biometric authentication (Face ID, Touch ID), Secure Enclave key storage, LACo |
|
|
84
85
|
| external | `ios-simulator` | - | Manages iOS Simulator devices and tests app behaviour with xcrun simctl: device lifecycle, app install and launch, push notification and loc |
|
|
@@ -92,10 +93,11 @@
|
|
|
92
93
|
| external | `monorepo-architect` | - | Expert in monorepo architecture, build systems, and dependency management at scale. Masters Nx, Turborepo, Bazel, and Lerna for efficient mu |
|
|
93
94
|
| core | `multi-agent` | - | Task orchestrator: runs the full pipeline from a Jira ID or GitHub Issue URL - analysis → plan → TDD development → parallel review (Fable |
|
|
94
95
|
| core | `multi-agent-analysis` | - | Standalone feature-spec analysis (v3 template). Platform-agnostic concept layer with repo-driven convention extraction and per-platform Pass |
|
|
95
|
-
| core | `multi-agent-analysis-resolve` | - | Resolve the Section 20 Risks and Open Questions of an analysis v3 document one row at a time
|
|
96
|
+
| core | `multi-agent-analysis-resolve` | - | Resolve the Section 20 Risks and Open Questions of an analysis v3 document one row at a time: up to 3 source-labeled answer candidates per r |
|
|
96
97
|
| core | `multi-agent-autopilot` | - | Launch any task in autopilot mode: skips every confirmation, runs end-to-end autonomously. Use when a task should run end to end with no con |
|
|
97
98
|
| core | `multi-agent-build-optimize` | - | Wrapper that dispatches to xcode-build-orchestrator on iOS repos. Benchmarks the current Xcode build, runs compilation / project / SPM analy |
|
|
98
99
|
| core | `multi-agent-channels` | - | Multi-channel reporter - Jira/Confluence/Wiki/PR description. Multi-select channels + content, humanizer pass, reviewer-preserving Bitbuck |
|
|
100
|
+
| core | `multi-agent-complaint-analysis` | - | Customer-complaint triage. Ingests complaints (paste, csv/xlsx/txt/json file, Jira issue, Confluence URL), fetches Graylog evidence per trx/ |
|
|
99
101
|
| core | `multi-agent-create-jira` | - | Create a standards-compliant Jira issue (Task / Bug / Story): asks the type, mines project conventions, drafts from a standard template with |
|
|
100
102
|
| core | `multi-agent-design-check` | - | Mock-mode vs Figma design audit (iOS / Android, local-only). Pick repo + module, gate on mock support, enumerate every state driver into a c |
|
|
101
103
|
| core | `multi-agent-dev` | - | Fast development mode: Init → Dev (Opus) → Review → Test → Commit → Report. Analysis and planning are skipped, review is not. Use when the w |
|
|
@@ -116,9 +118,11 @@
|
|
|
116
118
|
| core | `multi-agent-log` | - | Show the agent-log.md for the given task. With no ID, shows the most recent task. Use when asked what a task did, or to read its log. |
|
|
117
119
|
| core | `multi-agent-manual-test` | - | Switch to the active task's branch and prepare it for manual testing in Xcode. Phase 5 standalone (the UI Bug Hunter lives at multi-agent-te |
|
|
118
120
|
| core | `multi-agent-prune-logs` | - | Delete per-task project logs under ~/.claude/logs/multi-agent (filter by age/project/task). Audit trail + metrics are preserved. Dry-run fir |
|
|
121
|
+
| core | `multi-agent-prune-prompts` | - | Zero-base prompt review: measure the always-on instruction footprint, classify every rule block, propose keep/trial-removal/delete; applies |
|
|
119
122
|
| core | `multi-agent-purge` | - | ⚠️ Wipes every worktree, branch, log, and state file. Irreversible; asks for double confirmation. Use when every worktree, branch, log and s |
|
|
120
123
|
| core | `multi-agent-refactor` | - | Analyse the project: extract adapted best-practices, hunt real bugs + improvement areas, check upstream drift of derived skills, research th |
|
|
121
124
|
| core | `multi-agent-resume` | - | Resume a stopped or failed task from the phase where it left off. Use when a task stopped or failed and should carry on from where it left o |
|
|
125
|
+
| core | `multi-agent-resume-local` | - | Continue already-done LOCAL work through the pipeline tail: Review → Build+Test → Commit/PR → Report (technical analysis + Jira test-scenari |
|
|
122
126
|
| core | `multi-agent-review` | - | Run parallel review on a branch diff or a Pull Request: 2 models on Claude Code (Fable + Sonnet), 3 models on Copilot CLI (GPT + Opus + Sonn |
|
|
123
127
|
| core | `multi-agent-review-issue` | - | Assess whether a GitHub issue is ready for multi-agent development: fetch it, grade scope / acceptance criteria / repro / design / API / sta |
|
|
124
128
|
| core | `multi-agent-review-jira` | - | Assess whether a Jira issue is ready for multi-agent development: fetch it, grade scope / acceptance criteria / repro / design / API / stack |
|
|
@@ -127,8 +131,7 @@
|
|
|
127
131
|
| core | `multi-agent-scan` | - | Skill security scan: walks local skill directories against a tiered pattern catalog. Use when local skill directories need checking for unsa |
|
|
128
132
|
| core | `multi-agent-search` | - | Log search across every agent-log.md with smart ranking and filters. Optional --semantic flag queries the per-repo triage corpus. Use when s |
|
|
129
133
|
| core | `multi-agent-setup` | - | First-run setup wizard: keychain token discovery, Git Identity onboarding, and pipeline preparation. Use when the pipeline is being set up f |
|
|
130
|
-
| core | `multi-agent-
|
|
131
|
-
| core | `multi-agent-stack` | - | Select the active stack for this repo by enabling the matching marketplace plugin(s) in .claude/settings.json (ios/android/mobile/backend/fr |
|
|
134
|
+
| core | `multi-agent-stack` | - | Select the active stack(s) for this repo by enabling the matching marketplace plugin(s) in .claude/settings.json. Multi-select: pass several |
|
|
132
135
|
| core | `multi-agent-status` | - | Show every multi-agent task's ID, phase, branch, and status. Use when asked what is running, or for an overview of every task. |
|
|
133
136
|
| core | `multi-agent-store-ready` | - | Pre-submission store readiness for a built package, iOS and Android, local-only. Three symmetric gates per platform: a static package audit, |
|
|
134
137
|
| core | `multi-agent-sync` | - | One-shot sync of the entire multi-agent ecosystem: Claude Code, Copilot CLI, pipeline repo, website, and the dev-toolkit MCP server. Use whe |
|