@ionivetech/mugiwara 0.2.0 → 0.4.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/.opencode/commands/mugiwara-execute.md +11 -0
- package/.opencode/commands/mugiwara-heal.md +11 -0
- package/.opencode/commands/mugiwara-mode.md +6 -0
- package/.opencode/commands/mugiwara-plan.md +15 -0
- package/.opencode/commands/mugiwara-review.md +11 -0
- package/.opencode/commands/mugiwara-security.md +11 -0
- package/.opencode/commands/mugiwara-ship.md +11 -0
- package/.opencode/commands/mugiwara.md +11 -0
- package/.opencode/plugins/mugiwara.mjs +126 -7
- package/README.md +338 -355
- package/content/agents/brook-healing.md +2 -2
- package/content/agents/luffy-orchestrator.md +3 -2
- package/content/agents/robin-reviewer.md +1 -1
- package/content/agents/skeptic-verifier.md +1 -1
- package/content/agents/using-mugiwara.md +5 -1
- package/content/agents/usopp-brainstorm.md +1 -1
- package/content/agents/zoro-execution.md +1 -1
- package/content/skills/mugiwara-agent-security/SKILL.md +5 -0
- package/content/skills/mugiwara-api-and-interface-design/SKILL.md +92 -0
- package/content/skills/mugiwara-backend/SKILL.md +5 -0
- package/content/skills/mugiwara-brainstorm/SKILL.md +5 -0
- package/content/skills/mugiwara-checkpoint/SKILL.md +5 -0
- package/content/skills/mugiwara-context-engineering/SKILL.md +64 -0
- package/content/skills/mugiwara-deprecation/SKILL.md +5 -0
- package/content/skills/mugiwara-doubt-driven-development/SKILL.md +70 -0
- package/content/skills/mugiwara-dynamic-workflow/SKILL.md +5 -0
- package/content/skills/mugiwara-eval/SKILL.md +5 -0
- package/content/skills/mugiwara-execution/SKILL.md +9 -0
- package/content/skills/mugiwara-frontend/SKILL.md +61 -59
- package/content/skills/mugiwara-frontend/references/checklist.md +37 -0
- package/content/skills/mugiwara-gates/SKILL.md +9 -0
- package/content/skills/mugiwara-git/SKILL.md +5 -0
- package/content/skills/mugiwara-git-worktrees/SKILL.md +67 -0
- package/content/skills/mugiwara-healing/SKILL.md +17 -0
- package/content/skills/mugiwara-lessons/SKILL.md +5 -0
- package/content/skills/mugiwara-mode/SKILL.md +18 -4
- package/content/skills/mugiwara-observability/SKILL.md +5 -0
- package/content/skills/mugiwara-orchestration/SKILL.md +32 -1
- package/content/skills/mugiwara-planning/SKILL.md +25 -26
- package/content/skills/mugiwara-pr/SKILL.md +22 -6
- package/content/skills/mugiwara-quality/SKILL.md +15 -0
- package/content/skills/mugiwara-resume/SKILL.md +5 -0
- package/content/skills/mugiwara-review/SKILL.md +5 -0
- package/content/skills/mugiwara-security/SKILL.md +51 -14
- package/content/skills/mugiwara-ship/SKILL.md +29 -1
- package/content/skills/mugiwara-systematic-debugging/SKILL.md +82 -0
- package/content/skills/mugiwara-test-driven-development/SKILL.md +89 -0
- package/content/skills/mugiwara-testcases/SKILL.md +5 -0
- package/content/skills/mugiwara-workflow/SKILL.md +14 -3
- package/content/skills/mugiwara-writing-skills/SKILL.md +65 -0
- package/dist/mugiwara.js +175 -51
- package/docs/adoption-guide.md +3 -3
- package/docs/agents.md +2 -2
- package/docs/claude-setup.md +9 -4
- package/docs/codex-setup.md +3 -1
- package/docs/comparison.md +166 -44
- package/docs/config.md +53 -0
- package/docs/copilot-setup.md +3 -1
- package/docs/cursor-setup.md +3 -1
- package/docs/developer-onboarding.md +17 -13
- package/docs/enforcement.md +38 -0
- package/docs/execution-model.md +33 -0
- package/docs/gemini-setup.md +4 -1
- package/docs/getting-started.md +16 -4
- package/docs/index.md +14 -3
- package/docs/lanes.md +40 -0
- package/docs/modes.md +22 -12
- package/docs/opencode-setup.md +9 -2
- package/docs/pr-summary.md +54 -0
- package/docs/skill-anatomy.md +16 -6
- package/docs/skills.md +17 -5
- package/docs/troubleshooting.md +91 -0
- package/docs/windsurf-setup.md +3 -1
- package/docs/workflow.md +15 -6
- package/evals/cases/adversarial-pressure-fake-pass.json +12 -0
- package/evals/cases/adversarial-pressure-skip-review.json +13 -0
- package/evals/cases/lane-exploratory-vague.json +12 -0
- package/evals/cases/lane-sensitivity-payment.json +12 -0
- package/evals/cases/negative-secrets-typo.json +12 -0
- package/evals/cases/negative-security-docs-change.json +12 -0
- package/evals/cases/positive-refactor-existing-tests.json +11 -0
- package/evals/cases/positive-resume-mid-mission.json +11 -0
- package/evals/cases/routing-auth-feature.json +13 -0
- package/evals/cases/routing-bug-one-file.json +13 -0
- package/evals/cases/routing-typo.json +13 -0
- package/hooks/hooks.json +15 -0
- package/hooks/session-start.ts +8 -0
- package/package.json +3 -1
- package/src/args.ts +2 -1
- package/src/cli.ts +16 -20
- package/src/installer.ts +31 -3
- package/src/mission.ts +25 -0
- package/src/targets/claude.ts +22 -1
- package/src/targets/codex.ts +1 -1
- package/src/targets/copilot.ts +4 -0
- package/src/targets/gemini.ts +1 -1
- package/src/targets/generic.ts +33 -1
- package/src/targets/kilo.ts +1 -0
- package/src/targets/opencode.ts +4 -0
package/docs/comparison.md
CHANGED
|
@@ -1,63 +1,185 @@
|
|
|
1
1
|
# Comparison
|
|
2
2
|
|
|
3
|
-
How mugiwara fits against the alternatives.
|
|
3
|
+
How mugiwara fits against the alternatives — and an honest benchmark.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## The landscape
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
| Tool | What it is | Harnesses |
|
|
8
|
+
|------|-----------|-----------|
|
|
9
|
+
| **mugiwara** | Crew (15 agents) + pipeline (9 waves, gated) + 32 skills + lane sizing | 12 harnesses + 70+ via skills.sh |
|
|
10
|
+
| **superpowers** | Skills-only methodology with auto-trigger + subagent-driven development | 11 harnesses |
|
|
11
|
+
| **agent-skills** (addyosmani) | 24 skills + 8 slash commands + 4 personas, Google engineering culture | 70+ via skills.sh |
|
|
12
|
+
| **anthropics/skills** | Official demo skills — creative/docs/document skills, not a dev pipeline | Claude Code |
|
|
13
|
+
| **mattpocock/skills** | Small composable engineering skills, mostly user-invoked | Claude Code + Codex + any |
|
|
14
|
+
| **agent frameworks** (LangGraph, CrewAI, …) | Code: graphs, nodes, runtimes to host | one per framework |
|
|
15
|
+
| **mega-prompt** | One big instruction | any |
|
|
10
16
|
|
|
11
|
-
|
|
12
|
-
the pipeline has a defined owner per wave instead of "whichever skill fires."
|
|
13
|
-
- **A pipeline, not a pile** — ordered waves (triage → plan → execute →
|
|
14
|
-
checkpoint → quality → gates → review → heal → closure) with gates between.
|
|
15
|
-
- **Evidence discipline** — no wave passes on a claim; the owning role runs the
|
|
16
|
-
checks and shows output.
|
|
17
|
-
- **A workspace contract** — `.mugiwara/` holds plan, results, ledger, and
|
|
18
|
-
logs, so a mission survives context loss.
|
|
17
|
+
## Mugiwara vs. skills packs (superpowers, agent-skills)
|
|
19
18
|
|
|
20
|
-
|
|
19
|
+
Both are markdown skills an agent picks up on demand. Mugiwara ships the same
|
|
20
|
+
portable `SKILL.md` format — and adds what a pile of skills cannot:
|
|
21
|
+
|
|
22
|
+
- **A named crew, not a pile.** 15 personas (Luffy, Nami, Zoro, …) each own a
|
|
23
|
+
wave, so the pipeline has a defined owner and handoff instead of "whichever
|
|
24
|
+
skill fires first."
|
|
25
|
+
- **A gated pipeline, not loose triggers.** Ordered waves
|
|
26
|
+
(triage → plan → execute → checkpoint → quality → gates → review → heal →
|
|
27
|
+
closure) with a verify-everything gate between and a bounded heal loop.
|
|
28
|
+
Superpowers has a gated workflow too (`spec → plan → build → verify →
|
|
29
|
+
review`); agent-skills exposes gates as slash commands but does not chain
|
|
30
|
+
them into one pipeline.
|
|
31
|
+
- **Sizing (lane routing).** Work is sized before it runs: a one-file typo runs
|
|
32
|
+
zero waves, an auth change always runs all nine. No other pack scales the
|
|
33
|
+
process to the work — they run the same ceremony (or lack of it) for every
|
|
34
|
+
task. Mugiwara's auto-lane also means **trivial fixes are handled natively**,
|
|
35
|
+
not "don't use it for small stuff."
|
|
36
|
+
- **Skip gates.** Every mugiwara skill declares when it does *not* apply, so a
|
|
37
|
+
docs-only change skips Jinbe's security audit instead of burning a wave.
|
|
38
|
+
- **Workspace + resume.** `.mugiwara/` holds plan, results, ledger, and logs,
|
|
39
|
+
so a mission survives context loss and resumes instead of restarting.
|
|
40
|
+
- **A single source of truth.** `content/` is the only physical copy; every
|
|
41
|
+
harness reads the same files (symlinks), so there is no drift between
|
|
42
|
+
"Claude version" and "Cursor version."
|
|
43
|
+
|
|
44
|
+
### Against superpowers specifically
|
|
45
|
+
|
|
46
|
+
Superpowers is excellent at deep autonomous work: its subagent-driven
|
|
47
|
+
development dispatches a fresh subagent per task with two-stage review, and
|
|
48
|
+
runs for hours. Differences:
|
|
49
|
+
|
|
50
|
+
- **Visibility.** Mugiwara runs inline by default — you watch every wave in the
|
|
51
|
+
main conversation. Superpowers hides work behind subagent dispatch.
|
|
52
|
+
- **Crew depth.** Mugiwara ships 15 agents (auditor, security, gates, healing,
|
|
53
|
+
memory) vs. superpowers' review-first model. A standalone security wave with
|
|
54
|
+
STRIDE + OWASP and a dedicated healer are mugiwara-specific.
|
|
55
|
+
- **Wider surface.** Mugiwara adds domain skills (frontend anti-slop, backend,
|
|
56
|
+
agent-security) and meta-controls (mode, resume, lessons) beyond the
|
|
57
|
+
build-loop superpowers centers on.
|
|
58
|
+
|
|
59
|
+
### Against agent-skills specifically
|
|
60
|
+
|
|
61
|
+
agent-skills has the strongest SDLC breadth (19/21 categories in the audit
|
|
62
|
+
baseline) and carries Google's engineering culture (Hyrum's Law, test pyramid,
|
|
63
|
+
Chesterton's Fence). Differences:
|
|
64
|
+
|
|
65
|
+
- **Pipeline vs. commands.** agent-skills gates are per-skill; the agent must
|
|
66
|
+
chain them by hand. Mugiwara chains them into one auto-running pipeline.
|
|
67
|
+
- **Healing.** agent-skills reports; mugiwara's Brook reads the failure ledger
|
|
68
|
+
and fixes root causes in a bounded loop — the loop agent-skills lacks.
|
|
69
|
+
- **Sizing.** agent-skills runs its full process on any change; mugiwara routes
|
|
70
|
+
to a lane first.
|
|
21
71
|
|
|
22
72
|
## Mugiwara vs. agent frameworks (LangGraph, CrewAI, …)
|
|
23
73
|
|
|
24
74
|
Framework crews are code: graphs, nodes, runtimes to host. Mugiwara is:
|
|
25
75
|
|
|
26
|
-
- **Zero runtime
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
their
|
|
76
|
+
- **Zero runtime.** Pure markdown; your existing agent's own machinery does the
|
|
77
|
+
work. A tiny Node CLI exists only to install and uninstall. Nothing to
|
|
78
|
+
deploy, nothing to keep updated.
|
|
79
|
+
- **Harness-native.** The same crew installs into 12 harnesses instead of
|
|
80
|
+
forcing one runtime.
|
|
81
|
+
- **Inline.** The pipeline runs in your main conversation; frameworks hide the
|
|
82
|
+
work behind their execution graph.
|
|
83
|
+
|
|
84
|
+
Frameworks win when you need API-driven crews, deployable graphs, or
|
|
85
|
+
deterministic orchestration in code. If your team runs agents as a service,
|
|
86
|
+
pick a framework; if you want your existing coding agent to work *better*, pick
|
|
87
|
+
mugiwara.
|
|
88
|
+
|
|
89
|
+
## Mugiwara vs. a mega-prompt
|
|
90
|
+
|
|
91
|
+
A mega-prompt is one big instruction. Mugiwara:
|
|
92
|
+
|
|
93
|
+
- **Splits by specialization** — 32 focused skills + 15 personas instead of one
|
|
94
|
+
document trying to be everything.
|
|
95
|
+
- **Sizes** — lanes mean small tasks skip the pipeline instead of paying the
|
|
96
|
+
mega-prompt's full cost every time.
|
|
97
|
+
- **Gates + heals** — verifiable gates catch drift; a bounded heal loop fixes
|
|
98
|
+
root causes instead of re-running the same prompt.
|
|
33
99
|
|
|
34
|
-
##
|
|
100
|
+
## What they all share
|
|
35
101
|
|
|
36
|
-
|
|
102
|
+
Every option above — including mugiwara — is **prose an agent chooses to
|
|
103
|
+
follow**. Markdown cannot force a model to comply. What differs is how much
|
|
104
|
+
structure the prose builds to catch drift: mugiwara's answer is the wave gates,
|
|
105
|
+
the skip gates, the lane sizing, and the workspace contract.
|
|
37
106
|
|
|
38
|
-
|
|
39
|
-
document that tries to be everything, so each phase has a tight contract.
|
|
40
|
-
- **Is gated** — every wave has a verifiable gate and a recorded reason, so
|
|
41
|
-
drift is caught early.
|
|
42
|
-
- **Heals** — a bounded 3-cycle heal loop reads the failure ledger and fixes
|
|
43
|
-
root causes, instead of re-running the same mega-prompt.
|
|
107
|
+
## Benchmark
|
|
44
108
|
|
|
45
|
-
|
|
109
|
+
Measured against `content/` at the audit baseline (Aug 2026). Token figures are
|
|
110
|
+
estimates (chars ÷ 4); skill counts are exact.
|
|
46
111
|
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
112
|
+
### Size & density
|
|
113
|
+
|
|
114
|
+
| Metric | mugiwara | superpowers | agent-skills |
|
|
115
|
+
|--------|:--------:|:-----------:|:------------:|
|
|
116
|
+
| Skills | **32** | 14 | 24 |
|
|
117
|
+
| Index size (all descriptions loaded) | ~2.0k tok | ~0.5k tok | ~1.7k tok |
|
|
118
|
+
| Avg skill size | **~1.2k tok** | ~2.3k tok | ~3.1k tok |
|
|
119
|
+
| Avg skill length | **~80 lines** | ~227 lines | ~305 lines |
|
|
120
|
+
| Skills with a skip gate | **32/32** | 0/14 | 11/24 |
|
|
121
|
+
|
|
122
|
+
Mugiwara ships the most skills with the smallest average footprint — the
|
|
123
|
+
biggest pack with the densest per-skill content.
|
|
124
|
+
|
|
125
|
+
### Process & capability
|
|
126
|
+
|
|
127
|
+
| Dimension | mugiwara | superpowers | agent-skills |
|
|
128
|
+
|-----------|:--------:|:-----------:|:------------:|
|
|
129
|
+
| Ordered pipeline | ✅ 9 waves + gates | ✅ spec→plan→build→verify | ⚠️ per-command |
|
|
130
|
+
| Lane sizing (work scales process) | ✅ 0–4 | ❌ | ❌ |
|
|
131
|
+
| Named crew / agents | ✅ 15 | ❌ | ⚠️ 4 personas |
|
|
132
|
+
| Auto-activation | ✅ | ✅ | ⚠️ per-command |
|
|
133
|
+
| Evidence gates on every wave | ✅ | ✅ | ✅ |
|
|
134
|
+
| Skip gates per skill | ✅ 32/32 | ❌ | ⚠️ 11/24 |
|
|
135
|
+
| Self-healing loop | ✅ bounded 3-cycle | ⚠️ review-block | ❌ |
|
|
136
|
+
| Session resume from disk | ✅ | ⚠️ worktree-based | ❌ |
|
|
137
|
+
| Cross-mission memory (lessons) | ✅ | ❌ | ❌ |
|
|
138
|
+
| Security review as a first-class wave | ✅ STRIDE+OWASP | ⚠️ via review | ⚠️ security skill |
|
|
139
|
+
| Workspace contract | ✅ `.mugiwara/` | ⚠️ worktrees | ❌ |
|
|
140
|
+
| Slash commands (manual stages) | ✅ 6 | ✅ | ✅ 8 |
|
|
141
|
+
| Agent-layer security skill | ✅ | ❌ | ❌ |
|
|
142
|
+
|
|
143
|
+
### Harness / portability
|
|
144
|
+
|
|
145
|
+
| Metric | mugiwara | superpowers | agent-skills |
|
|
146
|
+
|--------|:--------:|:-----------:|:------------:|
|
|
147
|
+
| Native install targets | 12 | 11 | ~15 |
|
|
148
|
+
| Skills-only via skills.sh | ✅ 70+ | ✅ | ✅ |
|
|
149
|
+
| Tiered emission (stub for glob-loading harnesses) | ✅ | ❌ | ❌ |
|
|
150
|
+
| Static token load on rules-dir harnesses | **~4.8k** (stubs) | n/a | n/a |
|
|
151
|
+
|
|
152
|
+
### Where mugiwara is *not* the best fit
|
|
153
|
+
|
|
154
|
+
- **Deep autonomous marathon runs.** If you want an agent to disappear for
|
|
155
|
+
hours on a subagent-driven build with minimal visibility, superpowers'
|
|
156
|
+
`subagent-driven-development` is built for exactly that.
|
|
157
|
+
- **Google-culture reference depth.** agent-skills' source-cited engineering
|
|
158
|
+
practices (Hyrum's Law, test pyramid, review norms) are richer per skill.
|
|
159
|
+
- **A runtime service.** If you need API-driven, deployable agent crews, use a
|
|
160
|
+
framework.
|
|
53
161
|
|
|
54
162
|
## Summary
|
|
55
163
|
|
|
56
|
-
| | Mugiwara |
|
|
57
|
-
|
|
58
|
-
|
|
|
59
|
-
| Pipeline |
|
|
60
|
-
|
|
|
61
|
-
|
|
|
62
|
-
|
|
|
63
|
-
|
|
|
164
|
+
| | Mugiwara | Superpowers | Agent-skills | Frameworks | Mega-prompt |
|
|
165
|
+
|---|----------|-------------|--------------|------------|-------------|
|
|
166
|
+
| Skills | 32 | 14 | 24 | — | 1 |
|
|
167
|
+
| Pipeline | 9 waves + gates | gated workflow | per-command | graph | linear |
|
|
168
|
+
| Lane sizing | ✅ | ❌ | ❌ | ❌ | ❌ |
|
|
169
|
+
| Named crew | 15 | — | 4 personas | code | — |
|
|
170
|
+
| Skip gates | 32/32 | 0/14 | 11/24 | — | — |
|
|
171
|
+
| Self-healing | ✅ | ⚠️ | ❌ | configurable | ❌ |
|
|
172
|
+
| Session resume | ✅ | ⚠️ | ❌ | — | ❌ |
|
|
173
|
+
| Lessons memory | ✅ | ❌ | ❌ | — | ❌ |
|
|
174
|
+
| Visibility | inline | subagent-heavy | inline | behind graph | inline |
|
|
175
|
+
| Runtime | none | none | none | yes | none |
|
|
176
|
+
| Harnesses | 12+ / 70+ | 11 | 70+ | 1 | any |
|
|
177
|
+
|
|
178
|
+
**Bottom line.** Mugiwara is the only option that scales the process to the
|
|
179
|
+
work (lane routing), ships a named gated crew with a bounded heal loop, and
|
|
180
|
+
keeps the full pipeline visible inline — while carrying the most skills at the
|
|
181
|
+
lowest average cost. Where it trades ground: marathon subagent autonomy
|
|
182
|
+
(superpowers) and per-skill reference depth (agent-skills).
|
|
183
|
+
|
|
184
|
+
*Benchmark figures are estimates from the audit baseline (Aug 2026); mugiwara
|
|
185
|
+
skill counts are exact, competitor counts from their READMEs.*
|
package/docs/config.md
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# Config Reference
|
|
2
|
+
|
|
3
|
+
`.mugiwara/config` (project) overrides `~/.mugiwara/config` (global). Plain
|
|
4
|
+
`key=value` lines, `#` comments allowed. Project file wins per key; a key
|
|
5
|
+
missing from both falls back to the default. Unknown keys are ignored. Config
|
|
6
|
+
is data, never instructions.
|
|
7
|
+
|
|
8
|
+
**Mode owns autonomy, config owns writing standards.** Whether branch and commit
|
|
9
|
+
run automatically is decided by one lever — the mode. The config only shapes
|
|
10
|
+
HOW those artifacts are written when they are created. See [modes.md](modes.md)
|
|
11
|
+
for the mode matrix.
|
|
12
|
+
|
|
13
|
+
## Example file
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
# .mugiwara/config
|
|
17
|
+
mode=guided
|
|
18
|
+
branch=feature/{type}-{issue}-{slug}
|
|
19
|
+
commit=conventional
|
|
20
|
+
base=main
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Keys
|
|
24
|
+
|
|
25
|
+
| Key | Values | Default | Meaning |
|
|
26
|
+
|-----|--------|---------|---------|
|
|
27
|
+
| `mode` | guided / semi / auto | guided | The only autonomy lever — decides whether branch/commit run automatically |
|
|
28
|
+
| `branch` | branch naming pattern | `feature/{type}-{issue}-{slug}` | Placeholders filled from mission metadata, validated to `[a-zA-Z0-9-_]` |
|
|
29
|
+
| `commit` | conventional / gitmoji / plain | conventional | Commit message style (see below) |
|
|
30
|
+
| `base` | branch name | `main` | The PR target named in the prepared PR summary |
|
|
31
|
+
|
|
32
|
+
The mission **lane** (how many waves run) is decided by Luffy at triage — see
|
|
33
|
+
[lanes.md](lanes.md). Config holds autonomy and writing standards only.
|
|
34
|
+
|
|
35
|
+
Missing config on read = `guided`. Flip mid-mission with
|
|
36
|
+
`mugiwara mode <guided|semi|auto>` — the change applies from the next wave,
|
|
37
|
+
never mid-wave.
|
|
38
|
+
|
|
39
|
+
## Commit message styles
|
|
40
|
+
|
|
41
|
+
`commit` selects how Zoro writes commit messages:
|
|
42
|
+
|
|
43
|
+
- **conventional** — `feat: ...`, `fix(scope): ...`, `refactor: ...`, per the
|
|
44
|
+
[Conventional Commits](https://www.conventionalcommits.org) spec. Type from
|
|
45
|
+
the task, optional scope in parens. The default.
|
|
46
|
+
- **gitmoji** — a leading emoji carries the intent, e.g. `✨ feat: ...`,
|
|
47
|
+
`🐛 fix: ...`. Signals the change type at a glance in log views that render
|
|
48
|
+
emoji; a bit noisy in plain terminals.
|
|
49
|
+
- **plain** — no prefix, just a short imperative sentence: `Fix export csv
|
|
50
|
+
encoding`. Clearest for repos that don't use any convention.
|
|
51
|
+
|
|
52
|
+
Switch freely per project — it only affects the message format, never the
|
|
53
|
+
one-logical-task-one-commit rule.
|
package/docs/copilot-setup.md
CHANGED
|
@@ -13,9 +13,11 @@ copilot plugin install mugiwara
|
|
|
13
13
|
npx @ionivetech/mugiwara@latest --project ./my-app --target copilot --yes
|
|
14
14
|
```
|
|
15
15
|
|
|
16
|
+
**Update** — `copilot plugin update mugiwara`. **Uninstall** — `copilot plugin uninstall mugiwara`.
|
|
17
|
+
|
|
16
18
|
## What you get
|
|
17
19
|
|
|
18
|
-
-
|
|
20
|
+
- 32 skills as `.instructions.md` files in `.github/` (project) or
|
|
19
21
|
`~/.copilot/` (global).
|
|
20
22
|
- Agents as markdown files in `instructions/` / `agents/`.
|
|
21
23
|
|
package/docs/cursor-setup.md
CHANGED
|
@@ -12,9 +12,11 @@ Or via the CLI:
|
|
|
12
12
|
npx @ionivetech/mugiwara@latest --project ./my-app --target cursor --yes
|
|
13
13
|
```
|
|
14
14
|
|
|
15
|
+
**Update** — re-run `/add-plugin mugiwara`. **Uninstall** — `/remove-plugin mugiwara`.
|
|
16
|
+
|
|
15
17
|
## What you get
|
|
16
18
|
|
|
17
|
-
-
|
|
19
|
+
- 32 skills as markdown rule files.
|
|
18
20
|
- The `.cursor-plugin/plugin.json` manifest.
|
|
19
21
|
|
|
20
22
|
## Notes
|
|
@@ -18,35 +18,39 @@ bun install
|
|
|
18
18
|
```
|
|
19
19
|
mugiwara/
|
|
20
20
|
├── content/ # single source of truth: skills/ + agents/ markdown
|
|
21
|
-
├── agents/ #
|
|
22
|
-
├── skills/ #
|
|
21
|
+
├── agents/ # symlink → content/agents (Claude Code plugin reads plugin root)
|
|
22
|
+
├── skills/ # symlink → content/skills
|
|
23
23
|
├── src/ # CLI, installer, targets, frontmatter parser
|
|
24
24
|
├── scripts/ # validate-content, sync-version, run-evals, install scripts
|
|
25
25
|
├── test/ # vitest suite
|
|
26
26
|
├── .opencode/plugins/ # opencode plugin (registers crew at config load)
|
|
27
|
-
├── .claude-plugin/ # Claude Code marketplace + sync.sh
|
|
27
|
+
├── .claude-plugin/ # Claude Code marketplace + sync.sh (symlink guard)
|
|
28
28
|
└── docs/ # these docs
|
|
29
29
|
```
|
|
30
30
|
|
|
31
31
|
## The source of truth
|
|
32
32
|
|
|
33
|
-
`content/` is
|
|
34
|
-
|
|
33
|
+
`content/` is the only physical source. The repo-root `agents/` and `skills/`
|
|
34
|
+
are **symlinks** into it, so harnesses that read the plugin root (Claude Code
|
|
35
|
+
marketplace) see the same files — there is no copy to drift. On a fresh clone
|
|
36
|
+
where the symlinks are missing, recreate them:
|
|
35
37
|
|
|
36
38
|
```bash
|
|
37
39
|
sh .claude-plugin/sync.sh
|
|
38
40
|
```
|
|
39
41
|
|
|
40
|
-
Always edit `content
|
|
41
|
-
|
|
42
|
+
Always edit `content/`. `bun run validate --check-sync` verifies the symlinks
|
|
43
|
+
resolve to `content/` and never diverge.
|
|
42
44
|
|
|
43
45
|
## Validation
|
|
44
46
|
|
|
45
47
|
```bash
|
|
46
|
-
bun run validate #
|
|
47
|
-
bun run validate --check-sync #
|
|
48
|
+
bun run validate # 32 skills + 15 agents: names, descriptions, skip gates, line limits
|
|
49
|
+
bun run validate --check-sync # symlinks resolve to content/, never diverge
|
|
48
50
|
bun run typecheck # tsc --noEmit
|
|
49
|
-
bun run test # vitest
|
|
51
|
+
bun run test # vitest
|
|
52
|
+
bun run evals # eval suite valid (structure + coverage gates)
|
|
53
|
+
bun run evals --run # optional: execute cases against a model CLI (MUGIWARA_EVAL_CMD)
|
|
50
54
|
```
|
|
51
55
|
|
|
52
56
|
## Editing a skill or agent
|
|
@@ -55,8 +59,7 @@ bun run test # vitest (43 tests)
|
|
|
55
59
|
2. Respect the house style (see [skill-anatomy.md](skill-anatomy.md) and
|
|
56
60
|
[agent-anatomy.md](agent-anatomy.md)): evidence over claims, exact commands,
|
|
57
61
|
red flags, ≤120-line skill bodies.
|
|
58
|
-
3. `
|
|
59
|
-
4. `bun run validate && bun run typecheck && bun run test`
|
|
62
|
+
3. `bun run validate && bun run typecheck && bun run test`
|
|
60
63
|
|
|
61
64
|
## Adding a new skill or agent
|
|
62
65
|
|
|
@@ -64,7 +67,8 @@ bun run test # vitest (43 tests)
|
|
|
64
67
|
2. If it's an agent, list its held skills in frontmatter; give it a
|
|
65
68
|
`description` ≥20 chars.
|
|
66
69
|
3. If it's a skill, pick a folder name that matches `name`; description 20–500
|
|
67
|
-
chars; body ≤120 lines
|
|
70
|
+
chars; body ≤120 lines; include a `## Skip when` block (1–4 bullets, numeric
|
|
71
|
+
thresholds) so the skill knows when it does not apply.
|
|
68
72
|
4. Update the crew/technique tables in `README.md` and the docs (`agents.md`,
|
|
69
73
|
`skills.md`).
|
|
70
74
|
5. Sync + validate + test.
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# Enforcement
|
|
2
|
+
|
|
3
|
+
A markdown harness cannot force a model to comply with prose — that is the
|
|
4
|
+
ceiling of every skills pack, mugiwara included. Mugiwara is a skills pack, not
|
|
5
|
+
a plugin with hooks: it ships markdown the agent reads and follows. What keeps
|
|
6
|
+
the pipeline honest is the skills themselves, not a CLI.
|
|
7
|
+
|
|
8
|
+
## Skip gates
|
|
9
|
+
|
|
10
|
+
Every skill carries a `## Skip when` block: ≤4 bullets, numeric thresholds,
|
|
11
|
+
telling the agent when the skill does not apply. The content validator
|
|
12
|
+
(`bun run validate`) fails the build when a skill lacks the block, so the gate
|
|
13
|
+
cannot rot. A skipped skill is recorded in the decision log, never silent.
|
|
14
|
+
|
|
15
|
+
## Evidence over claims
|
|
16
|
+
|
|
17
|
+
Every skill enforces the iron law: a wave passes only on command output or a
|
|
18
|
+
file the agent can point at. "Subagents lie. No evidence = not complete." This
|
|
19
|
+
is prose the agent follows, checked by no tool — the honest limit.
|
|
20
|
+
|
|
21
|
+
## Capability tiers
|
|
22
|
+
|
|
23
|
+
How skills load differs per harness:
|
|
24
|
+
|
|
25
|
+
| Tier | Harnesses | Skill loading |
|
|
26
|
+
|------|-----------|---------------|
|
|
27
|
+
| 1 | Claude Code, opencode | progressive — read by trigger, not all at once |
|
|
28
|
+
| 2 | Copilot, Gemini, Codex | bootstrap pointer → the model chooses what to read |
|
|
29
|
+
| 3 | Windsurf, Cline, Kilo, Antigravity | rules dirs glob-load — skills ship as stubs, full bodies in `.mugiwara/refs/` |
|
|
30
|
+
|
|
31
|
+
On tier 3, skills ship as small stubs (routing + pointer) so glob-loading
|
|
32
|
+
harnesses stop eating ~40k tokens; the full body lives in `.mugiwara/refs/`,
|
|
33
|
+
read on demand. Tier 3 also uses **wave-boundary state flush**: the full
|
|
34
|
+
mission state is written to `.mugiwara/` at each wave so the next wave resumes
|
|
35
|
+
without the previous context — the portable substitute for subagent isolation.
|
|
36
|
+
|
|
37
|
+
**Honest limit.** Mugiwara cannot force an agent to follow a skill. That is
|
|
38
|
+
true on every tier and every harness. It is a skills pack, not a supervisor.
|
package/docs/execution-model.md
CHANGED
|
@@ -3,6 +3,13 @@
|
|
|
3
3
|
Why the crew runs in your main conversation — and when subagents are actually
|
|
4
4
|
used.
|
|
5
5
|
|
|
6
|
+
## Auto-activation
|
|
7
|
+
|
|
8
|
+
The workflow **auto-activates.** At session start the crew is announced; when
|
|
9
|
+
you give a non-trivial request, the pipeline runs by itself — you do not need
|
|
10
|
+
to call `/using-mugiwara`. It remains an optional explicit router if you want
|
|
11
|
+
to hand-route a mission.
|
|
12
|
+
|
|
6
13
|
## Inline by default
|
|
7
14
|
|
|
8
15
|
The crew runs **inline**. The main thread embodies each crew role using that
|
|
@@ -50,6 +57,32 @@ linear.
|
|
|
50
57
|
- Sequential work never takes a subagent round-trip — no skipping, no hidden
|
|
51
58
|
reordering, plan order is plan order.
|
|
52
59
|
|
|
60
|
+
## Checkpoint reports
|
|
61
|
+
|
|
62
|
+
You see progress as **checkpoint reports**, not a firehose: a wave banner
|
|
63
|
+
(`## Wave N — <crew> (<skill>)`), one compact report per crew member at each
|
|
64
|
+
stage boundary (what ran / result / evidence pointer), a progress summary per
|
|
65
|
+
wave, and a pause when something fails or gets risky. Subagents are used only
|
|
66
|
+
where they genuinely help: independent `[PARALLEL]` task batches, Brook's
|
|
67
|
+
reviewer/security re-verification workers, and background checks.
|
|
68
|
+
|
|
69
|
+
## Manual stages
|
|
70
|
+
|
|
71
|
+
Prefer to drive the stages yourself? Every stage has a slash command that loads
|
|
72
|
+
the skill, runs the crew role inline, and bridges state from `.mugiwara/`:
|
|
73
|
+
|
|
74
|
+
| Command | Runs | Reads state from |
|
|
75
|
+
|---------|------|------------------|
|
|
76
|
+
| `/mugiwara-plan` | Nami | `.mugiwara/spec/` |
|
|
77
|
+
| `/mugiwara-execute` | Zoro | `.mugiwara/plans/` |
|
|
78
|
+
| `/mugiwara-review` | Robin | `.mugiwara/results/` + diff |
|
|
79
|
+
| `/mugiwara-security` | Jinbe | `.mugiwara/results/` + diff |
|
|
80
|
+
| `/mugiwara-heal` | Brook | `.mugiwara/issues/` |
|
|
81
|
+
| `/mugiwara-ship` | Luffy | plan + results |
|
|
82
|
+
|
|
83
|
+
You can jump into any stage — e.g. run `/mugiwara-plan` first, then
|
|
84
|
+
`/mugiwara-execute` later when you're ready.
|
|
85
|
+
|
|
53
86
|
## Trade-off
|
|
54
87
|
|
|
55
88
|
Inline execution grows the main-thread context over a long mission. The crew
|
package/docs/gemini-setup.md
CHANGED
|
@@ -12,9 +12,12 @@ Or via the CLI:
|
|
|
12
12
|
npx @ionivetech/mugiwara@latest --project ./my-app --target gemini --yes
|
|
13
13
|
```
|
|
14
14
|
|
|
15
|
+
**Update** — `gemini extensions update mugiwara`.
|
|
16
|
+
**Uninstall** — `gemini extensions remove mugiwara`.
|
|
17
|
+
|
|
15
18
|
## What you get
|
|
16
19
|
|
|
17
|
-
-
|
|
20
|
+
- 32 skills as markdown rules in `.gemini/mugiwara/`.
|
|
18
21
|
- A `GEMINI.md` bootstrap pointer (created if missing).
|
|
19
22
|
|
|
20
23
|
## Notes
|
package/docs/getting-started.md
CHANGED
|
@@ -32,7 +32,10 @@ Requires **Node.js >= 20.11**. Bun is optional (build-from-source only).
|
|
|
32
32
|
|
|
33
33
|
## 2. Start a mission
|
|
34
34
|
|
|
35
|
-
|
|
35
|
+
The workflow **auto-activates**: at session start the crew is announced, and
|
|
36
|
+
when you give a non-trivial request the pipeline runs by itself — no need to
|
|
37
|
+
call `/using-mugiwara`. It remains an optional explicit router if you want to
|
|
38
|
+
hand-route a mission. Just ask, no agent names to remember:
|
|
36
39
|
|
|
37
40
|
```
|
|
38
41
|
> add dark mode to the settings page
|
|
@@ -40,7 +43,9 @@ Once installed, just ask. No agent names to remember — say what you want built
|
|
|
40
43
|
|
|
41
44
|
`using-mugiwara` (the front door) routes your request, Luffy classifies it, and
|
|
42
45
|
the wave pipeline runs. Because the crew runs **inline** in your main
|
|
43
|
-
conversation, you watch every wave as it happens
|
|
46
|
+
conversation, you watch every wave as it happens — as compact **checkpoint
|
|
47
|
+
reports** (a wave banner, one report per crew member at each stage boundary,
|
|
48
|
+
and a pause when something fails):
|
|
44
49
|
|
|
45
50
|
```
|
|
46
51
|
Wave 0 Luffy triage → route: plan (requirements mostly clear)
|
|
@@ -51,6 +56,11 @@ conversation, you watch every wave as it happens:
|
|
|
51
56
|
Wave 9 Luffy closure→ report appended to plan, intermediate files cleaned
|
|
52
57
|
```
|
|
53
58
|
|
|
59
|
+
Prefer to drive the stages yourself? Every stage has a slash command that loads
|
|
60
|
+
the skill, runs the crew role inline, and bridges state from `.mugiwara/`:
|
|
61
|
+
`/mugiwara-plan`, `/mugiwara-execute`, `/mugiwara-review`, `/mugiwara-security`,
|
|
62
|
+
`/mugiwara-heal`, `/mugiwara-ship`. You can jump into any stage.
|
|
63
|
+
|
|
54
64
|
## 3. What you do during a mission
|
|
55
65
|
|
|
56
66
|
Almost nothing, in the default mode:
|
|
@@ -58,8 +68,9 @@ Almost nothing, in the default mode:
|
|
|
58
68
|
- Answer Nami's clarifying questions (one batched round before planning).
|
|
59
69
|
- Give the plan an explicit GO when presented (or switch to `semi`/`auto`).
|
|
60
70
|
- Review Brook's rollback note if a risky fix is proposed.
|
|
61
|
-
-
|
|
62
|
-
|
|
71
|
+
- In every mode, open the PR at the end — the crew pushes the branch and hands
|
|
72
|
+
you the verdict file with a ready PR summary block. The crew never merges,
|
|
73
|
+
deploys, or creates a PR itself.
|
|
63
74
|
|
|
64
75
|
## 4. The `.mugiwara/` workspace
|
|
65
76
|
|
|
@@ -81,4 +92,5 @@ Every mission writes to `.mugiwara/` at the repo root:
|
|
|
81
92
|
- Learn the [execution model](execution-model.md) — why everything is visible.
|
|
82
93
|
- Set your [mode](modes.md) — `guided` asks at every gate, `semi`/`auto`
|
|
83
94
|
self-answer.
|
|
95
|
+
- Read the [config reference](config.md) — branch/commit/PR writing standards.
|
|
84
96
|
- Meet the [crew](agents.md).
|
package/docs/index.md
CHANGED
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
# Mugiwara Docs
|
|
2
2
|
|
|
3
3
|
The Straw Hat crew of AI agents and skills. These docs cover what the crew is,
|
|
4
|
-
how to adopt it, and how each harness installs it. The crew is
|
|
5
|
-
|
|
4
|
+
how to adopt it, and how each harness installs it. The crew is markdown plus a
|
|
5
|
+
small Node CLI (`mugiwara`) — no daemons, nothing to host. It ships **15
|
|
6
|
+
agents** and **32 skills**, and the workflow **auto-activates** at session
|
|
7
|
+
start — a non-trivial request runs the pipeline by itself, with
|
|
8
|
+
`/using-mugiwara` as an optional explicit router. Work is **sized to a lane**
|
|
9
|
+
before it runs: small fixes skip the pipeline, sensitive changes run the full
|
|
10
|
+
nine waves, and every wave passes only on **evidence**, never on a spoken
|
|
11
|
+
claim.
|
|
6
12
|
|
|
7
13
|
## Start here
|
|
8
14
|
|
|
@@ -11,10 +17,14 @@ no runtime, no daemons, nothing to host.
|
|
|
11
17
|
| [Getting started](getting-started.md) | Install, first mission, what you see in the chat |
|
|
12
18
|
| [Adoption guide](adoption-guide.md) | Pick the harness, pick the mode, fit the crew to your workflow |
|
|
13
19
|
| [Modes](modes.md) | guided / semi / auto — the autonomy levels, what each asks you |
|
|
20
|
+
| [Config](config.md) | Full reference for `.mugiwara/config` keys and commit styles |
|
|
21
|
+
| [Auto-PR](pr-summary.md) | What the crew hands off at closure: push + a ready-to-paste PR summary (it never creates a PR) |
|
|
14
22
|
| [The crew](agents.md) | All 15 agents and when to summon each |
|
|
15
|
-
| [The techniques](skills.md) | All
|
|
23
|
+
| [The techniques](skills.md) | All 32 skills and what each enforces |
|
|
16
24
|
| [The wave pipeline](workflow.md) | How a mission flows Wave 0 → Wave 9 |
|
|
17
25
|
| [Execution model](execution-model.md) | Inline-by-default: why the crew runs in your main conversation |
|
|
26
|
+
| [Lanes & sizing](lanes.md) | How Luffy sizes work at triage: Lane 0–4, escalation, budget |
|
|
27
|
+
| [Enforcement](enforcement.md) | Skip gates, evidence over claims, and capability tiers |
|
|
18
28
|
| [Git discipline](git-strategy.md) | Commits, branches, save-points — and why the executor commits |
|
|
19
29
|
|
|
20
30
|
## Install by harness
|
|
@@ -36,6 +46,7 @@ no runtime, no daemons, nothing to host.
|
|
|
36
46
|
|-----|----------------|
|
|
37
47
|
| [Skill anatomy](skill-anatomy.md) | How a mugiwara skill file is structured |
|
|
38
48
|
| [Agent anatomy](agent-anatomy.md) | How a mugiwara agent file is structured |
|
|
49
|
+
| [Troubleshooting](troubleshooting.md) | Common problems and how to fix them |
|
|
39
50
|
| [Developer onboarding](developer-onboarding.md) | Repo layout, validation, tests, contributing |
|
|
40
51
|
|
|
41
52
|
## Resources
|
package/docs/lanes.md
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Lanes & Sizing
|
|
2
|
+
|
|
3
|
+
The crew sizes a mission before it runs. At Wave 0, Luffy sizes the request
|
|
4
|
+
and picks a lane. The lane decides how many waves run — so a one-file typo does
|
|
5
|
+
not pay for the full nine-wave pipeline.
|
|
6
|
+
|
|
7
|
+
## The lanes
|
|
8
|
+
|
|
9
|
+
| Lane | Picks when | Waves | Budget |
|
|
10
|
+
|------|-----------|-------|--------|
|
|
11
|
+
| **0 · Direct** | typo, rename, 1 file <20 LOC | none | ~0 |
|
|
12
|
+
| **1 · Lean** | bug in 1-2 files, <50 LOC | execute → quality | ~4k |
|
|
13
|
+
| **2 · Standard** | feature, 3-8 files | plan → execute → checkpoint → review | ~10k |
|
|
14
|
+
| **3 · Full** | architecture, migration, auth/payment, API | 9 waves | ~20k |
|
|
15
|
+
| **4 · Spike** | exploratory, needs direction | brainstorm → re-triage | ~3k |
|
|
16
|
+
|
|
17
|
+
Budget is a guidance, not a meter: at ~1.5× estimated tokens warn, at 3× stop,
|
|
18
|
+
write the state to `.mugiwara/` and report how to continue — never silently
|
|
19
|
+
run on.
|
|
20
|
+
|
|
21
|
+
## How Luffy sizes
|
|
22
|
+
|
|
23
|
+
Size from the diff:
|
|
24
|
+
|
|
25
|
+
- 1 file <20 LOC → Lane 0 (Direct).
|
|
26
|
+
- 1-2 files → Lane 1 (Lean).
|
|
27
|
+
- 3-8 files → Lane 2 (Standard).
|
|
28
|
+
- 9+ files, or the diff touches `auth/`, `payment/`, `migrations/`, or
|
|
29
|
+
`security/` → Lane 3 (Full).
|
|
30
|
+
- Exploratory, needs direction → Lane 4 (Spike).
|
|
31
|
+
|
|
32
|
+
## Escalation
|
|
33
|
+
|
|
34
|
+
The lane **escalates when the work outgrows the estimate** — the diff grew, a
|
|
35
|
+
sensitive path got touched mid-mission, or failures repeat. Escalation is
|
|
36
|
+
automatic; a lane **never auto-drops**. Under-process is more expensive than
|
|
37
|
+
over-process.
|
|
38
|
+
|
|
39
|
+
The lane is decided by Luffy at triage, per mission — it is not stored in
|
|
40
|
+
`.mugiwara/config`.
|