Craft quality software with AI discipline. Spec-driven development plugin for Claude Code and Opencode — quality gates, adversarial testing, and evidence capture.
$ npx -y skills add Obsidian-Owl/specwright --agent claude-code
Repo: Obsidian-Owl/specwright
What's inside
Project status: unmaintained
Specwright is no longer under active development. The concepts — spec-driven flow, quality gates, auditable evidence, and learning capture — validated well in practice, but the plugin/skills implementation hit structural limits that prevented taking them further. Subsequent work on auditability, gating, and guardrails has moved into a purpose-built harness rather than a plugin.
The repository remains public as a reference. Occasional minor fixes may still land, and the project could be revived in the future, but no roadmap work, feature requests, or support should be expected. Issues and pull requests may not receive a response.
AI agents optimise for "done." That's the problem. Code compiles, tests pass, CI is green — and three days later you find an export nobody imports, a handler that's never called, a validation rule that exists in the spec but not in the code. The hard part isn't writing code. It's proving it works.
Specwright closes the entire loop — design, plan, build, verify, ship, learn. Every requirement is tracked to implementation evidence. Every PR ships with proof, not promises.
AGENTS.md| Capability | Specwright | Spec Kit | Oh-My-ClaudeCode | Superpowers | Manual workflows |
|---|---|---|---|---|---|
| Structured spec writing | Yes | Yes — core strength | Yes | Yes | DIY |
| Adversarial TDD (separate tester/executor) | Yes | No | Yes | Yes | No |
| Wiring verification (orphaned code, layer violations) | Yes | No | No | No | No |
| Evidence-based PRs (criterion → code + test) | Yes | No | No | No | No |
| Quality gates with findings (not just badges) | Yes | Partial | Yes | Partial | DIY |
| Compaction recovery | Yes | No | Yes | No | No |
| Learning system (patterns promoted across sessions) | Yes | No | Yes | Yes | No |
| Codebase knowledge persistence | Yes | No | Yes | No | No |
Every tool in this space pushes AI-assisted development forward. Specwright's focus is the verification and evidence gap — the part between "tests pass" and "it actually works."
Other tools in this space tend to focus on the front half of the loop — specification authoring, agent orchestration, or planning scaffolds — then hand off to the AI. The hard part isn't planning or delegation. It's everything after: does the code actually do what was asked? Is it wired up? Is it secure? Can you prove it?
Specwright focuses on the verification and evidence side — the part where AI agents actually fail.
Autonomous Gated Engineering — Skills operate autonomously between human gates, applying a decision protocol grounded in Amazon's Type 1/Type 2 framework, Google's SRE heuristics, and the Principle of Least Surprise. Every autonomous decision is recorded in decisions.md and surfaced at the gate handoff. Humans review at skill transitions — like reviewing a PR, not like pair programming. 64 intervention points reduced to 5 human gates.
Tiered Test Execution — gate-build runs four test tiers in order: build → unit → integration → smoke. Integration tests validate against real infrastructure (databases, clusters, APIs). Smoke tests verify critical paths end-to-end. The inner-loop in sw-build runs integration tests after TDD — catching runtime issues while the build-fixer is still in context, just like a real engineer who starts the app and checks it works before submitting a PR.
Evidence Pipeline — Six sequential gates capture proof into structured reports. PRs ship with a compliance matrix mapping every acceptance criterion to code and test evidence. Reviewers don't have to trust — they can verify.
Wiring Verification — Static analysis catches orphaned files, unused exports, layer violations, and circular dependencies. Other tools check if code compiles and tests pass. Specwright checks if the code is actually connected.
Learning System — Failures are captured, patterns are promoted, and learnings compact into tiered memory (index, themes, raw data). The system gets smarter with every session. Knowledge survives context windows.
Codebase Knowledge — During init, Specwright surveys your codebase and builds a persistent knowledge document (LANDSCAPE.md) covering architecture, modules, conventions, and gotchas. Design phases load this instantly instead of re-scanning. It stays current — refreshed when stale, incrementally updated after every shipped work unit.
Codebase Health Checks — Run /sw-audit periodically to find systemic issues that per-change gates miss: architecture debt, complexity growth, convention drift, accumulated workarounds. Findings persist in AUDIT.md with stable IDs across re-runs. Design phases surface relevant findings. The learn phase resolves them when addressed.
Compaction Recovery — All stateful skills support resume-from-crash. When Claude's context window compacts, Specwright reloads full state from disk — including workflow stage, work unit queue, and gate progress — so no manual re-orientation is needed.
graph LR
A["/sw-init"] --> B["/sw-design"]
B --> C["/sw-plan"]
C --> D["/sw-build"]
D --> E["/sw-verify"]
E --> F["/sw-ship"]
F -.->|next work unit| D
F --> G["/sw-learn"]
G -.->|patterns feed back| B
H["/sw-audit"] -.->|findings feed into| B
I["/sw-research"] -.->|briefs feed into| B
style A fill:#1e293b,stroke:#f59e0b,color:#f8fafc
style B fill:#1e293b,stroke:#f59e0b,color:#f8fafc
style C fill:#1e293b,stroke:#f59e0b,color:#f8fafc
style D fill:#1e293b,stroke:#f59e0b,color:#f8fafc
style E fill:#1e293b,stroke:#f59e0b,color:#f8fafc
style F fill:#1e293b,stroke:#f59e0b,color:#f8fafc
style G fill:#1e293b,stroke:#f59e0b,color:#f8fafc
style H fill:#1e293b,stroke:#f59e0b,color:#f8fafc
style I fill:#1e293b,stroke:#f59e0b,color:#f8fafc
| Phase | What Happens | Key Innovation |
|---|---|---|
| Init | Detect stack, configure gates, create anchor documents | Auto-detection — don't ask what you can infer |
| Research | Investigate external docs, APIs, patterns; produce validated briefs | Evidence-graded findings with confidence scoring |
| Design | Research codebase, design solution, adversarial critic — autonomously with gate handoff | Decisions recorded, human reviews at the gate |
| Plan | Decompose into work units, write testable acceptance criteria | Specs grounded in approved design artifacts |
| Build | TDD + inner-loop validation against real infrastructure. Optional parallel execution (experimental). | Integration tests run during build, not just at verify |
| Verify | 6 quality gates with tiered test execution and evidence capture | Findings shown inline, not just pass/fail badges |
| Ship | PR with acceptance criteria mapped to evidence | Every requirement traceable to code + test |
| Learn | Capture patterns, auto-promote by objective criteria | Knowledge compounds across sessions |
| Audit | Periodic health check — architecture, complexity, consistency, debt | Finds systemic issues gates miss. Run anytime. |
/plugin marketplace add Obsidian-Owl/specwright
/plugin install specwright@specwright
Add the plugin to your opencode.json:
{
"plugin": ["@obsidian-owl/opencode-specwright@latest"]
}
Opencode installs the package automatically on next startup — no manual npm install needed.
Install for your user account:
curl -fsSL https://raw.githubusercontent.com/Obsidian-Owl/specwright/main/scripts/install-codex.sh | bash -s -- --user
Or install into the current repository:
curl -fsSL https://raw.githubusercontent.com/Obsidian-Owl/specwright/main/scripts/install-codex.sh | bash -s -- --repo
Then open Codex and enable the plugin from the plugin directory:
/plugins
The installer downloads the latest prebuilt Codex bundle from GitHub Releases,
installs it into plugins/specwright under the selected scope, and updates the
matching Codex marketplace manifest.
It requires curl, tar, and python3.
To update later:
curl -fsSL https://raw.githubusercontent.com/Obsidian-Owl/specwright/main/scripts/install-codex.sh | bash -s -- --update --user
Manual install:
specwright-codex.tar.gz from GitHub Releases.~/plugins/specwright for a user install or <repo>/plugins/specwright for a repo install.specwright entry to ~/.agents/plugins/marketplace.json or <repo>/.agents/plugins/marketplace.json with source.path set to ./plugins/specwright.Packaged Codex installs use the prebuilt plugin bundle and its bundled slash-command contract. If you are developing Specwright itself and only need repo-local skills-only mode, use the source tree directly instead of the packaged installer above.
This enables:
/sw-* slash commandsAny AI coding agent that reads AGENTS.md can use Specwright's core skills directly. Copy or symlink the core/ directory into your project and point your agent at AGENTS.md.
Initialize your project:
/sw-init
FAQ
specwright is a Claude Code plugin with 23 hand-picked skills for development work, indexed on Flowy. Install it with the command on its page. It includes gate-build, gate-security, gate-semantic. Its skills do not fire on their own yet. Request auto-invocation to have Flowy route them as you prompt. Free and open source.
Is this plugin yours?
Claim it with GitHubSubmit a pluginPromote it