Help us improve
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
By jvishnefske
Verified Rust development with 4 layers (Requirements, TDD, Implementation, Verify) and maximum parallelism. Combines defense-in-depth verification with parallel task orchestration.
npx claudepluginhub jvishnefske/swiss-cheese --plugin swiss-cheeseAnalyze requirements and produce TOML task specification
Gate to run: requirements, tdd, implementation, verify
Generate Swiss Cheese validation report by running all layer gates
Begin TDD implementation from task specification
Run all verification gates (requirements, tdd, implementation, verify)
Layer 4: Implement safe Rust code to pass tests
Layer 1: Formalize requirements with Rust-specific constraints
4-layer verified development with maximum parallelism. Use for multi-module Rust development with requirements, TDD, implementation, and verification.
Layer 3: Write comprehensive tests BEFORE implementation
Uses power tools
Uses Bash, Write, or Edit tools
Share bugs, ideas, or general feedback.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Rust development skill with strict coding standards, FAIL FAST error handling, and build/review agents
Rust development - cargo, clippy, testing, memory safety
Rust code review and development skills covering ownership, lifetimes, error handling, async/tokio, serde, sqlx, axum, macros, FFI, unsafe, concurrency, and testing patterns.
Comprehensive Rust development assistant with meta-question routing, coding guidelines, version queries, and ecosystem support
Verified Coherence Spec-Driven Development — adversarial quality gates for AI-assisted development
Specification-first AI harness: 11 structural gates, 11 Ouroboros commands, 11 agent personas, and 3-tier architecture enforcement. v2.1: Pair Mode (Navigator-Driver + independent test design + /review command).
A Claude Code plugin providing iterative Rust software development lifecycle tooling with multi-layer defect escape reduction methodology.
# Add Anthropic marketplace
/plugin marketplace add anthropics/claude-code
# Install plugin
/plugin install swiss-cheese
# Start with design review
/swiss-cheese "CAN-based motor controller"
# Answer all design review questions...
# Orchestrator runs 9-layer verification automatically
# Gates validate each layer by exit code
# Loop continues until ALL_GATES_PASS
| Command | Description |
|---|---|
/swiss-cheese | Start new verification with design review |
/swiss-cheese:gate N | Run gate N validation (exit 0=pass) |
/swiss-cheese:loop | Start iterative loop until completion |
/swiss-cheese:status | Show verification status |
/swiss-cheese:skip-layer N | Request layer skip (requires proof) |
/swiss-cheese:cancel | Cancel active loop |
┌─────────────────────────────────────────────────────────┐
│ Layer 9: Release Analysis → Gate 9 (exit 0/1) │
├─────────────────────────────────────────────────────────┤
│ Layer 8: Independent Review → Gate 8 (exit 0/1) │
├─────────────────────────────────────────────────────────┤
│ Layer 7: Dynamic Analysis → Gate 7 (exit 0/1) │
│ Miri, Fuzz, Coverage, Timing │
├─────────────────────────────────────────────────────────┤
│ Layer 6: Formal Verification → Gate 6 (exit 0/1/3) │
│ Kani, Prusti, Creusot │
├─────────────────────────────────────────────────────────┤
│ Layer 5: Static Analysis → Gate 5 (exit 0/1) │
│ Clippy, audit, deny, geiger │
├─────────────────────────────────────────────────────────┤
│ Layer 4: Implementation → Gate 4 (exit 0/1) │
│ Safe Rust, all tests pass │
├─────────────────────────────────────────────────────────┤
│ Layer 3: TDD Tests → Gate 3 (exit 0/1) │
│ Tests MUST FAIL (Red phase) │
├─────────────────────────────────────────────────────────┤
│ Layer 2: Architecture → Gate 2 (exit 0/1) │
│ Type-state, newtypes, ownership │
├─────────────────────────────────────────────────────────┤
│ Layer 1: Requirements → Gate 1 (exit 0/1) │
│ Formalized FR/SR/RC/TR │
└─────────────────────────────────────────────────────────┘
| Code | Meaning | Action |
|---|---|---|
| 0 | PASS | Advance to next layer |
| 1 | FAIL | Route to root cause layer |
| 2 | BLOCKED | Resolve prerequisites |
| 3 | SKIP | Approved skip |
The Orchestrator asks ALL questions upfront:
Using ralph-wiggum pattern:
/swiss-cheese:loop
→ Execute Layer N
→ Run Gate N
→ If PASS: advance
→ If FAIL: route to root cause
→ Stop hook blocks exit
→ Re-inject prompt
→ Continue until ALL_GATES_PASS
Convenience is NOT a valid reason.
Valid: "Pure lookup table with no arithmetic" Invalid: "We don't have time"
.swiss-cheese/
├── design-spec.yaml # Complete design specification
├── state.json # Verification state
├── loop-state.json # Loop iteration state
├── gates/ # Gate validation results
├── artifacts/
│ ├── layer-1/ # Requirements
│ ├── layer-2/ # Architecture
│ ├── layer-3/ # Tests
│ ├── layer-4/ # Implementation (src/)
│ ├── layer-5/ # Static analysis reports
│ ├── layer-6/ # Formal verification
│ ├── layer-7/ # Dynamic analysis
│ ├── layer-8/ # Review findings
│ └── layer-9/ # Release case
└── release/ # Release package
design-review: Upfront question methodologygate-validation: Exit code gate implementationswiss-cheese-patterns: Type-state, newtypes, no-panic