@qball-inc/the-bulwark 1.2.1 → 1.3.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/.claude-plugin/plugin.json +50 -42
- package/CHANGELOG.md +72 -30
- package/CONTRIBUTING.md +52 -0
- package/README.md +97 -373
- package/hooks/hooks.json +100 -88
- package/package.json +46 -46
- package/scripts/hooks/bulwark-permission-hook.sh +306 -0
- package/skills/anthropic-validator/SKILL.md +6 -0
- package/skills/anthropic-validator/references/skills-checklist.md +2 -1
- package/skills/anthropic-validator/references/skills-validation.md +2 -1
- package/skills/assertion-patterns/SKILL.md +3 -0
- package/skills/bug-magnet-data/SKILL.md +3 -0
- package/skills/bulwark-brainstorm/SKILL.md +8 -0
- package/skills/bulwark-research/SKILL.md +8 -0
- package/skills/bulwark-scaffold/SKILL.md +75 -2
- package/skills/bulwark-statusline/SKILL.md +3 -1
- package/skills/bulwark-verify/SKILL.md +9 -0
- package/skills/code-review/SKILL.md +72 -89
- package/skills/code-review/references/diagnostic-schema.md +119 -0
- package/skills/component-patterns/SKILL.md +3 -0
- package/skills/continuous-feedback/SKILL.md +9 -0
- package/skills/create-skill/SKILL.md +9 -0
- package/skills/create-subagent/SKILL.md +7 -0
- package/skills/fix-bug/SKILL.md +4 -0
- package/skills/governance-protocol/SKILL.md +1 -0
- package/skills/init/SKILL.md +6 -0
- package/skills/issue-debugging/SKILL.md +3 -0
- package/skills/mock-detection/SKILL.md +5 -0
- package/skills/pipeline-templates/SKILL.md +3 -0
- package/skills/plan-creation/SKILL.md +10 -0
- package/skills/plan-to-tasks/SKILL.md +8 -0
- package/skills/product-ideation/SKILL.md +6 -0
- package/skills/session-handoff/SKILL.md +4 -0
- package/skills/setup-lsp/SKILL.md +6 -0
- package/skills/spec-drift-check/SKILL.md +8 -5
- package/skills/subagent-output-templating/SKILL.md +2 -0
- package/skills/subagent-prompting/SKILL.md +2 -0
- package/skills/test-audit/SKILL.md +10 -0
- package/skills/test-classification/SKILL.md +5 -0
- package/skills/test-fixture-creation/SKILL.md +6 -0
package/README.md
CHANGED
|
@@ -12,453 +12,175 @@
|
|
|
12
12
|
|
|
13
13
|
<p align="center">
|
|
14
14
|
<a href="#quick-install">Install</a> ·
|
|
15
|
-
<a href="#
|
|
16
|
-
<a href="#
|
|
17
|
-
<a href="
|
|
18
|
-
<a href="
|
|
19
|
-
<a href="#planned-enhancements">Roadmap</a>
|
|
15
|
+
<a href="#common-workflows">Workflows</a> ·
|
|
16
|
+
<a href="#documentation">Docs</a> ·
|
|
17
|
+
<a href="docs/guides/how-it-works.md">How it works</a> ·
|
|
18
|
+
<a href="docs/roadmap.md">Roadmap</a>
|
|
20
19
|
</p>
|
|
21
20
|
|
|
22
21
|
<p align="center">
|
|
23
22
|
<a href="https://www.npmjs.com/package/@qball-inc/the-bulwark"><img src="https://img.shields.io/npm/v/@qball-inc/the-bulwark?label=npm" alt="npm version" /></a>
|
|
24
|
-
<a href="https://
|
|
25
|
-
<a href="
|
|
23
|
+
<a href="https://www.npmjs.com/package/@qball-inc/the-bulwark"><img src="https://img.shields.io/npm/dm/@qball-inc/the-bulwark?label=downloads" alt="npm downloads" /></a>
|
|
24
|
+
<a href="https://github.com/QBall-Inc/plugins-market"><img src="https://img.shields.io/badge/dynamic/json?url=https://raw.githubusercontent.com/QBall-Inc/plugins-market/main/.claude-plugin/marketplace.json&query=$.plugins[0].version&label=marketplace&color=blue" alt="marketplace version" /></a>
|
|
25
|
+
<a href="https://github.com/QBall-Inc/the-bulwark/releases/latest"><img src="https://img.shields.io/github/v/release/QBall-Inc/the-bulwark?label=release&cacheSeconds=3600" alt="Latest GitHub release" /></a>
|
|
26
|
+
<a href="https://github.com/QBall-Inc/the-bulwark/commits/main"><img src="https://img.shields.io/github/last-commit/QBall-Inc/the-bulwark" alt="Last commit" /></a>
|
|
26
27
|
<a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue" alt="MIT License" /></a>
|
|
28
|
+
<a href="https://github.com/QBall-Inc/the-bulwark"><img src="https://img.shields.io/github/stars/QBall-Inc/the-bulwark?cacheSeconds=3600" alt="GitHub stars" /></a>
|
|
27
29
|
</p>
|
|
28
30
|
|
|
29
31
|
---
|
|
30
32
|
|
|
31
|
-
|
|
33
|
+
## Latest stable release: v1.3.0
|
|
32
34
|
|
|
33
|
-
|
|
35
|
+
**v1.3.0** (2026-06-23) — *Fewer prompts, sharper reviews.* This release cuts permission-prompt friction and makes code review smarter about what it's reviewing. Every bundled skill and agent now pre-authorizes exactly the tools it needs, so routine operations stop interrupting you for approval. The `code-review` skill is now **language-aware** — it detects each changed file's language and runs only the checks that apply, backed by universal per-language recipes that skip gracefully when a tool isn't installed. And a new **opt-in permission hook** (off by default) can auto-approve tool calls scoped to Bulwark's own bundled files, for users who want an even quieter workflow.
|
|
34
36
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
The Bulwark is a [Claude Code plugin](https://docs.anthropic.com/en/docs/claude-code/plugins) that adds automated quality enforcement to your development workflow. It ships 30 skills, 15 custom agents, and a set of hooks that run programmatic checks on every code change you make.
|
|
38
|
-
|
|
39
|
-
The Bulwark is the culmination of close to 6 weeks and 100 sessions of intense planning & research, co-partnered by Claude and myself. The goal was straightforward: take everything I'd learned running Claude Code over 8 months and package it into a governance layer that actually enforces standards instead of suggesting them.
|
|
40
|
-
|
|
41
|
-
## Who is it for?
|
|
42
|
-
|
|
43
|
-
- Builders who want to stay in the driver's seat while giving Claude semi-autonomy over structured workflows
|
|
44
|
-
- Teams that need repeatable, auditable AI-assisted development
|
|
45
|
-
- Users on Claude Max & Enterprise plans (the multi-agent pipelines are token-intensive)
|
|
46
|
-
|
|
47
|
-
## Who is it not for?
|
|
48
|
-
|
|
49
|
-
- While it can be used by those who prefer to run `--dangerously-skip-permissions` on Claude Code, this plugin may work with slight modifications, I do not recommend it
|
|
50
|
-
- Users on Claude Free, Pro, or Pro Plus plans. The multi-agent orchestration burns through tokens fast, and rate limits on lower tiers will interrupt pipelines mid-execution.
|
|
51
|
-
|
|
52
|
-
## Why?
|
|
37
|
+
See the [v1.3.0 release notes](https://github.com/QBall-Inc/the-bulwark/releases/tag/v1.3.0) and the full [CHANGELOG](CHANGELOG.md).
|
|
53
38
|
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
Without guardrails, you get:
|
|
57
|
-
- Code that compiles but skips type checks, lint, or tests
|
|
58
|
-
- Reviews that miss security issues because a single pass can't cover everything
|
|
59
|
-
- Test suites full of mocks that verify function calls instead of real behavior
|
|
60
|
-
- Plans and estimates that vary wildly between sessions
|
|
61
|
-
|
|
62
|
-
The Bulwark fixes this by making enforcement automatic. Hooks run quality checks after every write. Skills orchestrate multi-agent pipelines where each agent has a single focus. Rules are injected at session start and enforced throughout. You don't have to remember to ask Claude to run tests or check types. It just happens.
|
|
39
|
+
## What is The Bulwark?
|
|
63
40
|
|
|
64
|
-
|
|
41
|
+
The Bulwark is a [Claude Code plugin](https://docs.anthropic.com/en/docs/claude-code/plugins) that adds automated quality enforcement to your development workflow. It ships **30 skills, 15 custom agents, and 8 hooks** that run programmatic checks on every code change you make.
|
|
65
42
|
|
|
66
|
-
|
|
43
|
+
Claude Code is remarkably capable on its own — but capability without consistency is a problem. Without guardrails you get code that skips type checks, reviews that miss issues a single pass can't cover, test suites full of mocks that verify calls instead of behavior, and estimates that vary wildly between sessions. The Bulwark makes enforcement **automatic**: hooks run quality checks after every write, skills orchestrate single-focus multi-agent pipelines, and rules are injected at session start and enforced throughout. You don't have to remember to ask Claude to run tests or check types — it just happens.
|
|
67
44
|
|
|
68
|
-
|
|
69
|
-
- **New `SD1` rule** + **`init --update` mode** for guided drift remediation when `CLAUDE.md` or `Rules.md` fall out of sync with canonical templates
|
|
70
|
-
- **3 new/redesigned hooks**: `check-template-drift` (SessionStart), `cleanup-review-registry` (SessionStart), file-type-aware `suggest-pipeline-stop` with post-fix grace period
|
|
71
|
-
- **`MultiEdit` now triggers quality enforcement** (previously only `Write` / `Edit`)
|
|
72
|
-
- Skill schema migration across 15+ assets for stricter validator compliance
|
|
45
|
+
**Who it's for:** builders who want to stay in the driver's seat while giving Claude semi-autonomy over structured workflows; teams that need repeatable, auditable AI-assisted development; users on Claude **Max or Enterprise** plans (the multi-agent pipelines are token-intensive — Pro Plus works for single-agent skills but hits rate limits on pipelines).
|
|
73
46
|
|
|
74
|
-
|
|
47
|
+
→ For the design (defense-in-depth, multi-agent pipelines), see **[How it works](docs/guides/how-it-works.md)** and **[architecture.md](docs/architecture.md)**.
|
|
75
48
|
|
|
76
49
|
## Quick install
|
|
77
50
|
|
|
78
51
|
Two ways to install. Pick whichever works for you.
|
|
79
52
|
|
|
80
|
-
### Option A: npm
|
|
81
|
-
|
|
82
53
|
```bash
|
|
54
|
+
# Option A — npm
|
|
83
55
|
claude /plugin install npm:@qball-inc/the-bulwark
|
|
84
|
-
```
|
|
85
|
-
|
|
86
|
-
### Option B: Marketplace
|
|
87
56
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
```bash
|
|
57
|
+
# Option B — marketplace (one-time add, then install)
|
|
91
58
|
claude /plugin marketplace add QBall-Inc/plugins-market
|
|
92
|
-
```
|
|
93
|
-
|
|
94
|
-
Then install:
|
|
95
|
-
|
|
96
|
-
```bash
|
|
97
59
|
claude /plugin install the-bulwark@qball-inc
|
|
98
60
|
```
|
|
99
61
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
After installing, restart your Claude Code session and run the init skill:
|
|
62
|
+
After installing, restart your session and run the guided setup:
|
|
103
63
|
|
|
104
64
|
```
|
|
105
65
|
/the-bulwark:init
|
|
106
66
|
```
|
|
107
67
|
|
|
108
|
-
This walks you through
|
|
109
|
-
|
|
110
|
-
> Having trouble installing? See [FAQ and troubleshooting](#faq-and-troubleshooting). If your issue isn't covered, please [open an issue](https://github.com/QBall-Inc/the-bulwark/issues).
|
|
111
|
-
|
|
112
|
-
## Prerequisites
|
|
113
|
-
|
|
114
|
-
| Requirement | Details |
|
|
115
|
-
|-------------|---------|
|
|
116
|
-
| Claude Code | Latest version recommended. Plugin support required. |
|
|
117
|
-
| Node.js | v18+ (for TypeScript tooling and `just` recipes) |
|
|
118
|
-
| [just](https://github.com/casey/just) | Command runner used for build/typecheck/lint recipes. `/the-bulwark:init` offers to install it for you. |
|
|
119
|
-
| Language Servers | TypeScript (`typescript-language-server`), Python (`pyright`), etc. The LSP setup within `/the-bulwark:init` will offer to install language servers for your project's languages. |
|
|
120
|
-
| Platform | Linux, macOS, WSL2. Native Windows is not tested. |
|
|
121
|
-
| Claude Plan | Max or Enterprise recommended. Pro Plus works for single-agent skills but will hit rate limits on multi-agent pipelines. |
|
|
68
|
+
This walks you through Rules.md injection, CLAUDE.md configuration, and optional tooling (LSP, Justfile scaffolding, statusline), auto-detecting brownfield projects.
|
|
122
69
|
|
|
123
|
-
|
|
70
|
+
Full walkthrough + prerequisites: **[Getting started](docs/guides/getting-started.md)**.
|
|
124
71
|
|
|
125
|
-
|
|
72
|
+
Trouble installing? See the **[FAQ](docs/faq.md)**.
|
|
126
73
|
|
|
127
|
-
|
|
74
|
+
## Adoption
|
|
128
75
|
|
|
129
|
-
The
|
|
76
|
+
The Bulwark is growing through word of mouth. These charts auto-update daily — GitHub clone traffic (top) and npm downloads (bottom), each shown daily and as a cumulative running total. Data is self-snapshotted to a [`traffic-stats`](https://github.com/QBall-Inc/the-bulwark/tree/traffic-stats) branch because GitHub purges clone traffic after 14 days.
|
|
130
77
|
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
G --> D
|
|
142
|
-
F -->|Yes| H[Change Accepted]
|
|
143
|
-
H --> I[Quality Governance Pipeline]
|
|
144
|
-
I --> I1[Code Review]
|
|
145
|
-
I1 --> I2[Test Audit]
|
|
146
|
-
I2 --> I3[Test Fixes]
|
|
147
|
-
I3 --> I4[Code Fixes]
|
|
148
|
-
I4 --> J{More Work?}
|
|
149
|
-
J -->|Yes| D
|
|
150
|
-
J -->|No| K[Session Handoff]
|
|
151
|
-
K --> L[Session Stop]
|
|
152
|
-
```
|
|
153
|
-
|
|
154
|
-
**Layer 1: Rules.** Injected into Claude's context at session start via the `SessionStart` hook. They define coding standards, testing requirements, and verification rules. Claude follows them because they're part of its active instructions, not because you asked nicely.
|
|
155
|
-
|
|
156
|
-
**Layer 2: Hooks.** Run after every `Write` or `Edit` operation. The `enforce-quality.sh` hook fires `typecheck`, `lint`, and `build` checks. If any fail, the change is flagged and Claude sees the errors. No silent failures.
|
|
78
|
+
<table>
|
|
79
|
+
<tr>
|
|
80
|
+
<td align="center"><img width="100%" alt="GitHub clones — last 14 days" src="https://raw.githubusercontent.com/QBall-Inc/the-bulwark/traffic-stats/clones.svg"></td>
|
|
81
|
+
<td align="center"><img width="100%" alt="GitHub clones — cumulative total" src="https://raw.githubusercontent.com/QBall-Inc/the-bulwark/traffic-stats/clones-cumulative.svg"></td>
|
|
82
|
+
</tr>
|
|
83
|
+
<tr>
|
|
84
|
+
<td align="center"><img width="100%" alt="npm downloads — daily" src="https://raw.githubusercontent.com/QBall-Inc/the-bulwark/traffic-stats/npm-downloads.svg"></td>
|
|
85
|
+
<td align="center"><img width="100%" alt="npm downloads — cumulative total" src="https://raw.githubusercontent.com/QBall-Inc/the-bulwark/traffic-stats/npm-downloads-cumulative.svg"></td>
|
|
86
|
+
</tr>
|
|
87
|
+
</table>
|
|
157
88
|
|
|
158
|
-
|
|
89
|
+
## Common workflows
|
|
159
90
|
|
|
160
|
-
|
|
91
|
+
Each workflow chains skills into a repeatable pipeline. The diagrams are the shape; the linked guides have the detail and full sample prompts.
|
|
161
92
|
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
**Research.** The `/the-bulwark:bulwark-research` skill spawns 5 parallel sub-agents, each researching a different viewpoint on your topic. After a short user interview, agents run concurrently and their findings merge into a single synthesis document. Useful for market research, competitor analysis, or deep dives on technical topics before you commit to a direction.
|
|
165
|
-
|
|
166
|
-
**Product Ideation.** The `/the-bulwark:product-ideation` skill spawns a full ideation team (6 agents) after a short user interview: market researcher, idea validator, competitive analyzer, segment analyzer, pattern documenter, and strategist. The pipeline produces a structured BUY/HOLD/SELL recommendation backed by evidence from each stage.
|
|
167
|
-
|
|
168
|
-
**Brainstorm & Plan Creation.** These two skills share a dual-mode orchestration pattern. You choose the mode based on how contested the topic is:
|
|
93
|
+
**Initialize** — set up governance in any project.
|
|
169
94
|
|
|
170
95
|
```mermaid
|
|
171
|
-
flowchart
|
|
172
|
-
A[
|
|
173
|
-
B -->|Sequential| C[Task Tool Pipeline]
|
|
174
|
-
C --> C1[Role 1] --> C2[Role 2] --> C3[Role 3] --> C4[Critic]
|
|
175
|
-
C4 --> E[Structured Output]
|
|
176
|
-
B -->|Agent Teams| D[Peer Debate]
|
|
177
|
-
D --> D1[All Roles + Critic Run Concurrently]
|
|
178
|
-
D1 --> D2[Real-time Collaboration & Challenge]
|
|
179
|
-
D2 --> E
|
|
96
|
+
flowchart LR
|
|
97
|
+
A["/the-bulwark:init"] --> B[Rules.md + CLAUDE.md] --> C[optional: LSP · Justfile · statusline]
|
|
180
98
|
```
|
|
181
99
|
|
|
182
|
-
**
|
|
183
|
-
|
|
184
|
-
**Agent Teams mode.** All roles run concurrently and debate in real-time. The Critic challenges assumptions as they form, not after they've hardened. Better convergence on contested topics, more token-intensive. Best for novel problems where you want genuine adversarial pressure on every claim.
|
|
185
|
-
|
|
186
|
-
## Conventions
|
|
187
|
-
|
|
188
|
-
The Bulwark enforces a specific set of conventions through `Rules.md`. When you run `/the-bulwark:init`, it installs these rules into your project at `.claude/rules/rules.md` where Claude Code automatically loads them every session. It also creates a `CLAUDE.md` with project-specific instructions (backing up any existing one first), and lets you choose scope — project-level (checked into the repo, shared with your team) or user-level (local to your machine, not committed).
|
|
189
|
-
|
|
190
|
-
The rules cover four areas:
|
|
191
|
-
|
|
192
|
-
**Coding Standards (CS1-CS4).** Single responsibility, no magic, fail fast, clean code. Every function does one thing. No hidden dependencies. Validate inputs at boundaries. Delete dead code instead of commenting it out.
|
|
193
|
-
|
|
194
|
-
**Testing Rules (T1-T4).** Never mock the system under test. Verify observable output, not function calls. Integration tests use real systems. Write tests with implementation, not after. These four rules alone eliminate the most common failure modes in AI-generated test suites.
|
|
195
|
-
|
|
196
|
-
**Verification Rules (V1-V4).** Never declare a fix complete without running it. Use `just` for all execution. Check logs for full output before attempting fixes. Verify compilation after every change.
|
|
197
|
-
|
|
198
|
-
**Issue Debugging (ID1-ID3).** Understand the root cause before fixing. Rank complexity. Run the right level of tests. Document the debugging journey.
|
|
199
|
-
|
|
200
|
-
Rules are not advisory. They're injected as binding instructions. Claude treats them as contract obligations, not suggestions.
|
|
201
|
-
|
|
202
|
-
## Hooks
|
|
203
|
-
|
|
204
|
-
The Bulwark installs eight hooks that run automatically. No manual invocation needed.
|
|
205
|
-
|
|
206
|
-
| Hook | Event | Trigger | Timeout | What It Does |
|
|
207
|
-
|------|-------|---------|---------|--------------|
|
|
208
|
-
| `enforce-quality.sh` | PostToolUse | Every `Write`, `Edit`, or `MultiEdit` on code files | 60s | Runs `just typecheck`, `just lint`, `just build`. Flags failures to Claude with full error output. Skips non-code files (`tmp/`, `logs/`, `.claude/`, `docs/`). |
|
|
209
|
-
| `suggest-pipeline-stop.sh` | Stop | End of every Claude turn | 30s | Suggests relevant review/audit pipelines based on session activity. File-type-aware routing, per-file registry, post-fix grace period to suppress redundant suggestions. |
|
|
210
|
-
| `inject-protocol.sh` | SessionStart | Every new session | 5s | Injects the governance protocol into Claude's context. Loads Rules.md, activates quality enforcement, displays the activation banner. |
|
|
211
|
-
| `cleanup-stale.sh` | SessionStart | Every new session | 30s | Deletes files older than 10 days from `logs/` and `tmp/`. Preserves `.gitkeep` files. Keeps your repo from accumulating stale pipeline output. |
|
|
212
|
-
| `cleanup-review-registry.sh` | SessionStart | Every new session | 5s | Wipes stale review-accumulator state so pipeline gating works correctly across sessions. |
|
|
213
|
-
| `check-template-drift.sh` | SessionStart | Every new session in a Bulwark-initialized project | 5s | Detects drift between project's `CLAUDE.md`/`Rules.md` and the canonical templates shipped with the current plugin version. Surfaces drifting sections for `/the-bulwark:init --update`. |
|
|
214
|
-
| `track-pipeline-start.sh` | SubagentStart | Any sub-agent spawned | 30s | Logs pipeline invocation metadata (agent name, timestamp, parent context) for observability. |
|
|
215
|
-
| `track-pipeline-stop.sh` | SubagentStop | Any sub-agent exits | 30s | Logs pipeline completion metadata (agent name, duration, exit status) for observability. |
|
|
216
|
-
|
|
217
|
-
All hooks use `${CLAUDE_PLUGIN_ROOT}` for path resolution, so they work regardless of where the plugin is installed.
|
|
218
|
-
|
|
219
|
-
## Skill registry
|
|
220
|
-
|
|
221
|
-
The Bulwark ships 30 skills. Each one is invoked with `/the-bulwark:{skill-name}` or triggered automatically by hooks and pipelines. Skills are grouped by what they do.
|
|
222
|
-
|
|
223
|
-
### Product & strategy
|
|
224
|
-
|
|
225
|
-
Skills for ideation, research, and planning. These don't write code. They run multi-agent pipelines that produce structured documents.
|
|
226
|
-
|
|
227
|
-
| Skill | What it does | Sub-agents |
|
|
228
|
-
|-------|-------------|------------|
|
|
229
|
-
| [product-ideation](docs/skills/product-ideation.md) | Evaluates product ideas through a 6-agent pipeline. Produces a BUY/HOLD/SELL recommendation with market analysis, competitive intelligence, and segment targeting. | [market-researcher](docs/agents/product-ideation-market-researcher.md), [idea-validator](docs/agents/product-ideation-idea-validator.md), [competitive-analyzer](docs/agents/product-ideation-competitive-analyzer.md), [segment-analyzer](docs/agents/product-ideation-segment-analyzer.md), [pattern-documenter](docs/agents/product-ideation-pattern-documenter.md), [strategist](docs/agents/product-ideation-strategist.md) |
|
|
230
|
-
| [bulwark-research](docs/skills/bulwark-research.md) | Spawns 5 parallel sub-agents to research different viewpoints on a topic. Merges findings into a synthesis document. | 5 parallel Sonnet agents (dynamically created) |
|
|
231
|
-
| [bulwark-brainstorm](docs/skills/bulwark-brainstorm.md) | Dual-mode brainstorming. `--scoped` runs 5 roles sequentially via Task tool. `--exploratory` runs 4 roles concurrently via Agent Teams with real-time peer debate. | Sequential: 5 role agents. Agent Teams: 4 concurrent agents + Critic. |
|
|
232
|
-
| [plan-creation](docs/skills/plan-creation.md) | Creates implementation plans with a 4-role scrum team. Produces phases, workpackages, tasks, and delivery schedules. Dual-mode (Task tool or Agent Teams). | [PO](docs/agents/plan-creation-po.md), [Architect](docs/agents/plan-creation-architect.md), [Eng Lead](docs/agents/plan-creation-eng-lead.md), [QA/Critic](docs/agents/plan-creation-qa-critic.md) |
|
|
233
|
-
| [plan-to-tasks](docs/skills/plan-to-tasks.md) | Transforms a `plan-creation` plan into CLEAR-compatible execution structure — `tasks.yaml` workpackage index plus per-WP YAML files. Supports parent/child plan linkage with bidirectional references. | None (single-context pipeline) |
|
|
234
|
-
|
|
235
|
-
### Code quality
|
|
236
|
-
|
|
237
|
-
Skills that review, test, and fix code. These are the enforcement layer that runs after you write code.
|
|
238
|
-
|
|
239
|
-
| Skill | What it does | Sub-agents |
|
|
240
|
-
|-------|-------------|------------|
|
|
241
|
-
| [code-review](docs/skills/code-review.md) | Three-phase code review: static tools, LLM judgment across 3-4 aspects (security, type safety, standards), and diagnostic log. | 3-4 Sonnet agents (aspect-specific) |
|
|
242
|
-
| [test-audit](docs/skills/test-audit.md) | Audits test suites for T1-T4 violations using AST analysis, mock detection, and multi-stage synthesis. Triggers automatic rewrites when quality gates fail. | Haiku (classification), Sonnet (mock detection, synthesis) |
|
|
243
|
-
| [fix-bug](docs/skills/fix-bug.md) | 5-stage fix validation pipeline: analyze, implement, write tests, audit tests, validate fix. | [issue-analyzer](docs/agents/bulwark-issue-analyzer.md), [implementer](docs/agents/bulwark-implementer.md), [fix-validator](docs/agents/bulwark-fix-validator.md) |
|
|
244
|
-
| [issue-debugging](docs/skills/issue-debugging.md) | Systematic debugging methodology with root cause analysis, impact mapping, tiered validation plans, and confidence assessment. | [issue-analyzer](docs/agents/bulwark-issue-analyzer.md), [fix-validator](docs/agents/bulwark-fix-validator.md) |
|
|
245
|
-
| [spec-drift-check](docs/skills/spec-drift-check.md) | Audits a WP brief, plan doc, or memory entry for drift against current code state. Extracts claims, verifies each, emits PROCEED/STOP verdict. Mandatory Stage 0 (per `SD1` rule) of any new or resumed WP implementation. | None (single-context pipeline) |
|
|
246
|
-
| [mock-detection](docs/skills/mock-detection.md) | Deep mock appropriateness analysis. Determines whether mocks in a test file are legitimate or T1-T4 violations. | Sonnet agent (analysis) |
|
|
247
|
-
| [test-classification](docs/skills/test-classification.md) | Classifies test files by type (unit, integration, E2E) and identifies which files need deeper mock analysis. | Haiku agents (batch classification) |
|
|
248
|
-
| [test-fixture-creation](docs/skills/test-fixture-creation.md) | Creates unbiased test fixtures using a Sonnet agent that can't read the implementation. Fixtures integrate with project infrastructure and hook automation. | Sonnet agent (fixture generation) |
|
|
249
|
-
| [bulwark-verify](docs/skills/bulwark-verify.md) | Generates runnable verification scripts for components by orchestrating assertion-patterns and component-patterns. | Sonnet agent (script generation) |
|
|
250
|
-
| [assertion-patterns](docs/skills/assertion-patterns.md) | Reference for transforming T1-T4 violating tests into real output verification. Loaded by other skills as context. | None (reference skill) |
|
|
251
|
-
| [component-patterns](docs/skills/component-patterns.md) | Per-component-type verification approaches. Loaded by bulwark-verify as context for generating verification scripts. | None (reference skill) |
|
|
252
|
-
| [bug-magnet-data](docs/skills/bug-magnet-data.md) | Curated edge case test data for boundary testing. Provides pre-organized data by type (dates, strings, numbers, Unicode, etc.) for test generation. | None (reference skill) |
|
|
253
|
-
|
|
254
|
-
### Project setup & tooling
|
|
255
|
-
|
|
256
|
-
Skills for initializing projects, configuring tooling, and managing sessions.
|
|
257
|
-
|
|
258
|
-
| Skill | What it does | Sub-agents |
|
|
259
|
-
|-------|-------------|------------|
|
|
260
|
-
| [init](docs/skills/init.md) | Guided project initialization. Installs Rules.md, creates CLAUDE.md, offers LSP setup, Justfile scaffolding, and statusline configuration. Auto-detects brownfield projects. | None (orchestrates other skills) |
|
|
261
|
-
| [bulwark-scaffold](docs/skills/bulwark-scaffold.md) | Generates Justfile with build/typecheck/lint recipes, creates logs directory, and optionally configures hooks. | None |
|
|
262
|
-
| [setup-lsp](docs/skills/setup-lsp.md) | Configures Language Server Protocol integration. Detects project languages, offers to install language servers, verifies post-restart initialization. | None |
|
|
263
|
-
| [bulwark-statusline](docs/skills/bulwark-statusline.md) | Configures the Claude Code status line to show token usage and cost in real-time. Supports preset switching and customization. | [statusline-setup](docs/agents/statusline-setup.md) |
|
|
264
|
-
| [session-handoff](docs/skills/session-handoff.md) | Creates session handoff documents for context transfer between sessions. Ensures proper YAML headers, LF line endings, and complete documentation of progress and decisions. | None |
|
|
265
|
-
| [governance-protocol](docs/skills/governance-protocol.md) | The governance protocol injected at session start via the SessionStart hook. Not invoked directly. | None |
|
|
266
|
-
|
|
267
|
-
### Meta skills
|
|
268
|
-
|
|
269
|
-
Skills for building more skills, orchestrating pipelines, and improving existing workflows.
|
|
270
|
-
|
|
271
|
-
| Skill | What it does | Sub-agents |
|
|
272
|
-
|-------|-------------|------------|
|
|
273
|
-
| [create-skill](docs/skills/create-skill.md) | Generates Claude Code skills from requirements. Runs an adaptive interview, classifies complexity, and produces SKILL.md with references and templates. | Sonnet agent (validation) |
|
|
274
|
-
| [create-subagent](docs/skills/create-subagent.md) | Generates single-purpose sub-agents for use via the Task tool. Produces agent definition with diagnostics and permissions setup. | Sonnet agent (validation) |
|
|
275
|
-
| [continuous-feedback](docs/skills/continuous-feedback.md) | Parses past session learnings and memory files to identify improvement targets. Proposes concrete skill/agent modifications with copy-paste ready patches. | Sonnet agents (analysis, proposal generation) |
|
|
276
|
-
| [anthropic-validator](docs/skills/anthropic-validator.md) | Validates Claude Code assets (skills, hooks, agents, plugins) against official Anthropic standards. Fetches latest docs dynamically. | [standards-reviewer](docs/agents/bulwark-standards-reviewer.md) |
|
|
277
|
-
| [pipeline-templates](docs/skills/pipeline-templates.md) | Pre-defined workflow templates for multi-agent orchestration. Provides code review, fix validation, test audit, new feature, and research pipelines. | None (reference skill) |
|
|
278
|
-
| [subagent-prompting](docs/skills/subagent-prompting.md) | Template for structured sub-agent invocation using 4-part prompting (GOAL/CONSTRAINTS/CONTEXT/OUTPUT) and F# pipeline notation. | None (reference skill) |
|
|
279
|
-
| [subagent-output-templating](docs/skills/subagent-output-templating.md) | Template for structured sub-agent output including YAML log format and task completion reports. | None (reference skill) |
|
|
280
|
-
|
|
281
|
-
## Agent registry
|
|
282
|
-
|
|
283
|
-
Agents are single-purpose sub-agents spawned by skills via the Task tool. You don't invoke them directly. Each agent has a defined model, reads input from a previous pipeline stage, and writes structured output to `logs/`.
|
|
284
|
-
|
|
285
|
-
### Fix validation agents
|
|
286
|
-
|
|
287
|
-
| Agent | Model | Purpose | Invoked by |
|
|
288
|
-
|-------|-------|---------|------------|
|
|
289
|
-
| [bulwark-issue-analyzer](docs/agents/bulwark-issue-analyzer.md) | Sonnet | Root cause analysis, impact mapping, debug report with tiered validation plan | [fix-bug](docs/skills/fix-bug.md), [issue-debugging](docs/skills/issue-debugging.md) |
|
|
290
|
-
| [bulwark-implementer](docs/agents/bulwark-implementer.md) | Opus | Implements fixes and features. Runs implementer-quality.sh after every write. | [fix-bug](docs/skills/fix-bug.md) |
|
|
291
|
-
| [bulwark-fix-validator](docs/agents/bulwark-fix-validator.md) | Sonnet | Executes tiered test plan from the issue analyzer's debug report. Assesses fix confidence. | [fix-bug](docs/skills/fix-bug.md), [issue-debugging](docs/skills/issue-debugging.md) |
|
|
292
|
-
| [bulwark-standards-reviewer](docs/agents/bulwark-standards-reviewer.md) | Sonnet | Validates Claude Code assets against official Anthropic standards. Produces severity-rated findings. | [anthropic-validator](docs/skills/anthropic-validator.md) |
|
|
293
|
-
|
|
294
|
-
### Plan creation agents
|
|
100
|
+
**Greenfield** — idea to executable plan. → [Feature development](docs/guides/feature-development.md)
|
|
295
101
|
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
| [plan-creation-architect](docs/agents/plan-creation-architect.md) | Opus | Technical Architect. Analyzes system design, component decomposition, integration points, and technical trade-offs. | [plan-creation](docs/skills/plan-creation.md) |
|
|
300
|
-
| [plan-creation-eng-lead](docs/agents/plan-creation-eng-lead.md) | Sonnet | Engineering & Delivery Lead. Produces WBS, effort estimates, dependency graphs, milestones, and risk registers. | [plan-creation](docs/skills/plan-creation.md) |
|
|
301
|
-
| [plan-creation-qa-critic](docs/agents/plan-creation-qa-critic.md) | Sonnet | QA / Critic. Adversarially challenges assumptions, stress-tests estimates, issues APPROVE/MODIFY/REJECT verdict. | [plan-creation](docs/skills/plan-creation.md) |
|
|
302
|
-
|
|
303
|
-
### Product ideation agents
|
|
304
|
-
|
|
305
|
-
| Agent | Model | Purpose | Invoked by |
|
|
306
|
-
|-------|-------|---------|------------|
|
|
307
|
-
| [product-ideation-market-researcher](docs/agents/product-ideation-market-researcher.md) | Sonnet | Researches market size, growth trends, key players, regulatory landscape. Produces TAM/SAM/SOM estimates. | [product-ideation](docs/skills/product-ideation.md) |
|
|
308
|
-
| [product-ideation-idea-validator](docs/agents/product-ideation-idea-validator.md) | Sonnet | Assesses feasibility, timing, uniqueness, problem-solution fit. Produces PASS/CONDITIONAL/FAIL verdict. | [product-ideation](docs/skills/product-ideation.md) |
|
|
309
|
-
| [product-ideation-competitive-analyzer](docs/agents/product-ideation-competitive-analyzer.md) | Sonnet | Profiles competitors, analyzes positioning and pricing, identifies market gaps using Porter's Five Forces. | [product-ideation](docs/skills/product-ideation.md) |
|
|
310
|
-
| [product-ideation-segment-analyzer](docs/agents/product-ideation-segment-analyzer.md) | Sonnet | Identifies target user segments, builds personas using Jobs-to-be-Done, estimates willingness to pay. | [product-ideation](docs/skills/product-ideation.md) |
|
|
311
|
-
| [product-ideation-pattern-documenter](docs/agents/product-ideation-pattern-documenter.md) | Sonnet | Documents success/failure patterns, competitor trajectories, and opportunity gaps from competitive data. | [product-ideation](docs/skills/product-ideation.md) |
|
|
312
|
-
| [product-ideation-strategist](docs/agents/product-ideation-strategist.md) | Sonnet | Final synthesis. Produces BUY/HOLD/SELL recommendation with confidence level and actionable next steps. | [product-ideation](docs/skills/product-ideation.md) |
|
|
313
|
-
|
|
314
|
-
### Utility agents
|
|
315
|
-
|
|
316
|
-
| Agent | Model | Purpose | Invoked by |
|
|
317
|
-
|-------|-------|---------|------------|
|
|
318
|
-
| [statusline-setup](docs/agents/statusline-setup.md) | Haiku | Handles settings.json updates and config file placement for statusline configuration. | [bulwark-statusline](docs/skills/bulwark-statusline.md) |
|
|
319
|
-
|
|
320
|
-
## FAQ and troubleshooting
|
|
321
|
-
|
|
322
|
-
### Plugin clone fails with "Permission denied (publickey)"
|
|
323
|
-
|
|
324
|
-
If you see this error when installing from the marketplace:
|
|
325
|
-
|
|
326
|
-
```
|
|
327
|
-
git@github.com: Permission denied (publickey).
|
|
328
|
-
fatal: Could not read from remote repository.
|
|
102
|
+
```mermaid
|
|
103
|
+
flowchart LR
|
|
104
|
+
A[product-ideation] --> B[bulwark-research] --> C[bulwark-brainstorm] --> D[plan-creation] --> E[plan-to-tasks] --> F[implement]
|
|
329
105
|
```
|
|
330
106
|
|
|
331
|
-
|
|
107
|
+
**Brownfield** — onboard onto an existing codebase. → [Feature development](docs/guides/feature-development.md)
|
|
332
108
|
|
|
333
|
-
```
|
|
334
|
-
|
|
109
|
+
```mermaid
|
|
110
|
+
flowchart LR
|
|
111
|
+
A["subagent-prompting (map the codebase)"] --> B["planned: codebase & documentation understanding"] --> C[bulwark-research] --> D[bulwark-brainstorm] --> E[plan-creation] --> F[plan-to-tasks] --> G[implement]
|
|
335
112
|
```
|
|
336
113
|
|
|
337
|
-
|
|
114
|
+
> The **codebase & documentation understanding** skill is [planned](docs/roadmap.md), not yet shipped — today, use `subagent-prompting` to map the code first.
|
|
338
115
|
|
|
339
|
-
|
|
116
|
+
**New feature** — add to an existing plan. → [Research & planning](docs/guides/research-and-planning.md)
|
|
340
117
|
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
claude /plugin list
|
|
118
|
+
```mermaid
|
|
119
|
+
flowchart LR
|
|
120
|
+
A[bulwark-research] --> B[bulwark-brainstorm] --> C["plan-creation (sub-plan linked to master)"] --> D[plan-to-tasks] --> E[implement]
|
|
345
121
|
```
|
|
346
122
|
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
### Quality gate keeps failing on non-code files
|
|
123
|
+
**Analyze · Fix · Verify** — the issue lifecycle. → [Fixing bugs](docs/guides/fixing-bugs.md)
|
|
350
124
|
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
This usually means you're hitting rate limits on your Claude plan. The product-ideation pipeline spawns 6 agents sequentially, and plan-creation can spawn 4. Each agent consumes tokens independently. Max and Enterprise plans handle this without issues. Pro Plus will work for single-agent skills but may hit limits on pipelines with 3+ agents.
|
|
356
|
-
|
|
357
|
-
### `just` command not found
|
|
358
|
-
|
|
359
|
-
The `/the-bulwark:init` skill offers to install `just` for you during setup. If you skipped that step, install it manually:
|
|
360
|
-
|
|
361
|
-
```bash
|
|
362
|
-
curl --proto '=https' --tlsv1.2 -sSf https://just.systems/install.sh | bash -s -- --to /usr/local/bin
|
|
125
|
+
```mermaid
|
|
126
|
+
flowchart LR
|
|
127
|
+
A["Analyze (issue-debugging)"] --> B["Fix (fix-bug)"] --> C["Verify (bulwark-fix-validator)"]
|
|
363
128
|
```
|
|
364
129
|
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
The Bulwark installs its rules at `.claude/rules/rules.md`. If you already have rules in `.claude/rules/`, they won't be overwritten. The Bulwark's rules and your project rules both load at session start and coexist. If there's a conflict, your project-specific CLAUDE.md instructions take precedence since they load after the rules.
|
|
370
|
-
|
|
371
|
-
### Can I use this with other Claude Code plugins?
|
|
372
|
-
|
|
373
|
-
Yes. The Bulwark doesn't interfere with other plugins. Its hooks use `${CLAUDE_PLUGIN_ROOT}` for path resolution, so there's no collision. The only potential issue is if another plugin also installs PostToolUse hooks on Write/Edit, in which case both hooks run (Claude Code runs all matching hooks, not just the first one).
|
|
374
|
-
|
|
375
|
-
### How do I update the plugin?
|
|
376
|
-
|
|
377
|
-
Use the plugin update command:
|
|
378
|
-
|
|
379
|
-
```bash
|
|
380
|
-
claude plugin update the-bulwark@qball-inc
|
|
130
|
+
```
|
|
131
|
+
/the-bulwark:issue-debugging Analyze the root cause of <symptom>; no code change.
|
|
132
|
+
/the-bulwark:fix-bug Fix <bug> end-to-end and prove the fix with tests.
|
|
133
|
+
# Verify a fix you already applied: validate it against the debug report.
|
|
381
134
|
```
|
|
382
135
|
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
If you installed via npm, the same update command works. Claude Code resolves the source from the installed plugin metadata.
|
|
386
|
-
|
|
387
|
-
Your project's Rules.md and CLAUDE.md are not affected by updates since they live in your project repo, not in the plugin directory.
|
|
388
|
-
|
|
389
|
-
### The statusline shows token usage but not cost
|
|
390
|
-
|
|
391
|
-
Cost tracking depends on your Claude Code version and plan. If cost data isn't available from the API, the statusline falls back to showing token counts only. Run `/the-bulwark:bulwark-statusline` to reconfigure or switch presets.
|
|
392
|
-
|
|
393
|
-
### I want to disable a specific hook temporarily
|
|
394
|
-
|
|
395
|
-
You can't disable individual plugin hooks without modifying `hooks/hooks.json` in the plugin directory. But you can work around it by adding the file path to the skip list in `enforce-quality.sh`, or by working in a directory that the hook already skips (`tmp/`, `logs/`, etc.).
|
|
396
|
-
|
|
397
|
-
---
|
|
398
|
-
|
|
399
|
-
## What's new in v1.2.0
|
|
400
|
-
|
|
401
|
-
The first major post-launch bundle. v1.0.0 → v1.1.0 was a single hook redesign. v1.2.0 covers 13+ phases (P10.5 → P10.25) of hardening, observability, and workflow improvements that emerged from real-world dogfooding.
|
|
402
|
-
|
|
403
|
-
### Spec drift enforcement
|
|
404
|
-
|
|
405
|
-
`Rules.md` was a single document users could quietly let fall behind canonical templates. The new `SD1` (Spec Drift) rule makes a pre-WP drift check mandatory: before any new or resumed implementation, the [`spec-drift-check`](docs/skills/spec-drift-check.md) skill extracts every claim from the brief — file paths, line numbers, function names, behavioral assertions — and verifies each against current code. It emits a structured PROCEED/STOP verdict with a per-claim log. STOP requires explicit user sign-off before implementation begins. This eliminates an entire class of failures where a brief said "modify function `foo` at line 142" but the function had moved or been renamed three sessions ago.
|
|
406
|
-
|
|
407
|
-
### `init --update` mode for stale CLAUDE.md / Rules.md
|
|
408
|
-
|
|
409
|
-
A new SessionStart hook (`check-template-drift`) detects when your project's `CLAUDE.md` or `Rules.md` have drifted from the canonical templates and surfaces the diff for review. The new `/the-bulwark:init --update` flow walks you through accepting each drifting section, with batched/tabbed prompts when 4+ sections need review and full pre-flight visibility into what's about to change. Parent/child section anchors are handled correctly so nested sections never duplicate.
|
|
410
|
-
|
|
411
|
-
### Plan → tasks workflow
|
|
412
|
-
|
|
413
|
-
[`plan-to-tasks`](docs/skills/plan-to-tasks.md) closes the gap between [`plan-creation`](docs/skills/plan-creation.md) output (markdown plan with phases and workpackages) and execution-ready task tracking. It transforms a `plan_v{N}.md` into a `tasks.yaml` workpackage index plus per-WP YAML files, with bidirectional parent/child plan linkage. Parallel Sonnet sub-agents do the per-WP transform.
|
|
414
|
-
|
|
415
|
-
### Stop hook redesign
|
|
416
|
-
|
|
417
|
-
The `Stop` hook (`suggest-pipeline-stop`) is rebuilt around a per-file registry, file-type-aware pipeline routing (code vs test vs doc vs config), log-pattern suppression, and a post-fix grace period that prevents re-suggesting a pipeline immediately after a fix lands. False-positive pipeline suggestions on doc-only or test-only changes are gone.
|
|
418
|
-
|
|
419
|
-
### Quality enforcement covers `MultiEdit`
|
|
420
|
-
|
|
421
|
-
The `PostToolUse` matcher previously caught only `Write` and `Edit`. v1.2.0 widens it to `Write|Edit|MultiEdit` so the same typecheck/lint/build gates apply to bulk edits — `MultiEdit` was a silent quality escape hatch.
|
|
422
|
-
|
|
423
|
-
### Other notable improvements
|
|
424
|
-
|
|
425
|
-
- **Hook output schema validation** in `anthropic-validator` (catches hook output that violates Claude Code's hook contract before it ships)
|
|
426
|
-
- **`bun` runtime installer** (`scripts/install-bun.sh`) — platform-aware, idempotent, scaffolded into the Justfile templates for the upcoming evaluation framework
|
|
427
|
-
- **Statusline reliability**: `--no-optional-locks` flag avoids contention with concurrent git operations
|
|
428
|
-
- **Schema migration across 15+ assets** for stricter `anthropic-validator` compliance
|
|
136
|
+
## Documentation
|
|
429
137
|
|
|
430
|
-
|
|
138
|
+
### Hooks
|
|
431
139
|
|
|
432
|
-
|
|
140
|
+
Eight hooks run automatically — no manual invocation. All use `${CLAUDE_PLUGIN_ROOT}` for path resolution, so they work wherever the plugin is installed.
|
|
433
141
|
|
|
434
|
-
|
|
142
|
+
| Hook | Event | What it does |
|
|
143
|
+
|------|-------|--------------|
|
|
144
|
+
| `enforce-quality.sh` | PostToolUse | Runs `just typecheck`/`lint`/`build` after every `Write`/`Edit`/`MultiEdit` on code; flags failures. Skips `tmp/`, `logs/`, `.claude/`, `docs/`. |
|
|
145
|
+
| `suggest-pipeline-stop.sh` | Stop | Suggests relevant review/audit pipelines; file-type-aware, per-file registry, post-fix grace period. |
|
|
146
|
+
| `inject-protocol.sh` | SessionStart | Injects the governance protocol; loads Rules.md; shows the activation banner. |
|
|
147
|
+
| `cleanup-stale.sh` | SessionStart | Deletes `logs/`+`tmp/` files older than 10 days (preserves `.gitkeep`). |
|
|
148
|
+
| `cleanup-review-registry.sh` | SessionStart | Wipes stale review-accumulator state so pipeline gating works across sessions. |
|
|
149
|
+
| `check-template-drift.sh` | SessionStart | Detects `CLAUDE.md`/`Rules.md` drift from canonical templates; feeds `init --update`. |
|
|
150
|
+
| `track-pipeline-start.sh` | SubagentStart | Logs pipeline invocation metadata for observability. |
|
|
151
|
+
| `track-pipeline-stop.sh` | SubagentStop | Logs pipeline completion metadata for observability. |
|
|
435
152
|
|
|
436
|
-
|
|
153
|
+
The Bulwark also ships one **optional, opt-in** hook (off by default) that auto-approves access to its *own* bundled files, so Claude Code stops re-prompting for assets you already trusted at install — handy if you don't run in auto mode. Full detail, safety boundaries, and how to enable it: **[hooks reference](docs/reference/hooks.md)**.
|
|
437
154
|
|
|
438
|
-
|
|
155
|
+
### Registries & guides
|
|
439
156
|
|
|
440
|
-
**
|
|
157
|
+
- **[Skill registry](docs/reference/skills.md)** — all 30 skills, grouped (product & strategy · code quality · setup & tooling · meta)
|
|
158
|
+
- **[Agent registry](docs/reference/agents.md)** — all 15 sub-agents, by pipeline
|
|
159
|
+
- **[Conventions](docs/reference/conventions.md)** — the CS / T / V / ID rules `Rules.md` enforces
|
|
160
|
+
- **Guides** — [Getting started](docs/guides/getting-started.md) · [How it works](docs/guides/how-it-works.md) · [Research & planning](docs/guides/research-and-planning.md) · [Feature development](docs/guides/feature-development.md) · [Fixing bugs](docs/guides/fixing-bugs.md)
|
|
441
161
|
|
|
442
|
-
|
|
162
|
+
## FAQ & troubleshooting
|
|
443
163
|
|
|
444
|
-
|
|
164
|
+
Common install and runtime issues — SSH clone failures, hooks not firing, `just` not found, rate-limited pipelines, and more — are covered in the **[FAQ](docs/faq.md)**. If your issue isn't there, [open an issue](https://github.com/QBall-Inc/the-bulwark/issues).
|
|
445
165
|
|
|
446
|
-
|
|
166
|
+
## Roadmap
|
|
447
167
|
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
---
|
|
168
|
+
Language-aware code review, an evaluation framework for skills/agents, a codebase-understanding skill for brownfield onboarding, enterprise traceability, and more. No timeline commitments — see **[docs/roadmap.md](docs/roadmap.md)** for the direction.
|
|
451
169
|
|
|
452
170
|
## Releases & changelog
|
|
453
171
|
|
|
454
172
|
- **Latest release**: [github.com/QBall-Inc/the-bulwark/releases/latest](https://github.com/QBall-Inc/the-bulwark/releases/latest)
|
|
455
|
-
- **Full version history**: [CHANGELOG.md](CHANGELOG.md)
|
|
456
|
-
- **npm
|
|
173
|
+
- **Full version history**: [CHANGELOG.md](CHANGELOG.md) — follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/); the project adheres to [SemVer](https://semver.org/spec/v2.0.0.html)
|
|
174
|
+
- **npm**: [npmjs.com/package/@qball-inc/the-bulwark](https://www.npmjs.com/package/@qball-inc/the-bulwark)
|
|
457
175
|
- **Update an installed plugin**: `claude plugin update the-bulwark@qball-inc`
|
|
458
176
|
|
|
459
|
-
|
|
177
|
+
## Contributing
|
|
460
178
|
|
|
461
|
-
|
|
179
|
+
Issues and PRs are welcome. The Bulwark is developed in a private repo and mirrored here, so contributions follow a specific porting model — see **[CONTRIBUTING.md](CONTRIBUTING.md)** before opening a PR. The fastest way to help: [open an issue](https://github.com/QBall-Inc/the-bulwark/issues) for a bug or feature request.
|
|
180
|
+
|
|
181
|
+
## Credits
|
|
182
|
+
|
|
183
|
+
Built with [`just`](https://github.com/casey/just) (Casey Rodarmor) and [Claude Code](https://docs.anthropic.com/en/docs/claude-code) (Anthropic). Badges by [shields.io](https://shields.io).
|
|
462
184
|
|
|
463
185
|
## License
|
|
464
186
|
|
|
@@ -466,6 +188,8 @@ The changelog follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) a
|
|
|
466
188
|
|
|
467
189
|
---
|
|
468
190
|
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
191
|
+
<p align="center">
|
|
192
|
+
<em>If you find this useful, please give it a star — it helps others discover the project.</em>
|
|
193
|
+
<br /><br />
|
|
194
|
+
<a href="https://github.com/QBall-Inc/the-bulwark"><img src="https://img.shields.io/github/stars/QBall-Inc/the-bulwark?style=social" alt="GitHub stars" /></a>
|
|
195
|
+
</p>
|