Package Exports
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@aslomon/effectum) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
⚡ Effectum
Describe what you want. Get production-ready code.
Effectum (Latin): the result, the accomplishment — that which has been brought to completion.
Quick Start · How It Works · The Workflow · PRD Workshop · How is this different? · Limitations
Why I built this
I'm a solo developer who builds everything with Claude Code. I tried BMAD, SpecKit, Taskmaster, GSD — they all taught me something. BMAD was too enterprise. SpecKit too rigid. GSD is brilliant at context engineering but doesn't help you write the spec in the first place.
So I built Effectum. It combines what I learned from all of them: structured specifications (like SpecKit), autonomous execution (like GSD's approach), and quality gates that actually enforce standards.
The result: describe what you want, write a proper spec with the PRD Workshop, then let Claude Code build it overnight with the Ralph Loop.
This isn't a new idea — it's the best combination of existing ideas I've found, packaged so it actually works.
🚀 Quick Start
npx @aslomon/effectumThe interactive installer asks two questions — scope (global or local) and runtime — then sets everything up.
# Open Claude Code in your project
cd ~/my-project && claude
# Set up your project (substitutes placeholders in settings.json)
/setup .
# Write a specification
/prd:new
# Build it
/plan docs/prds/001-my-feature.md[!TIP] That's it. Four steps from zero to autonomous development.
Install options
npx @aslomon/effectum # Interactive (recommended)
npx @aslomon/effectum --global # Install to ~/.claude/ for all projects
npx @aslomon/effectum --local # Install to ./.claude/ for this project only
npx @aslomon/effectum --global --claude # Non-interactive, Claude Code runtimePrefer the classic git approach?
git clone https://github.com/aslomon/effectum.git
cd effectum
claude
/setup ~/my-project📦 What's Included
One command. Everything you need for autonomous Claude Code development.
| What | Details |
|---|---|
| 10 workflow commands | /plan, /tdd, /verify, /e2e, /code-review, /build-fix, /refactor-clean, /ralph-loop, /cancel-ralph, /checkpoint |
| PRD Workshop | 8 knowledge files for guided specification writing |
| 4 MCP servers | Context7, Playwright, Sequential Thinking, Filesystem |
| Playwright setup | Browser install + playwright.config.ts |
| Stack presets | Next.js + Supabase, Python + FastAPI, Swift/SwiftUI, Generic |
| Quality gates | 8 automated checks (build, types, lint, tests, security, etc.) |
| Guardrails | Rules that prevent known mistakes |
🎯 How It Works
Effectum has two parts that work together:
🏗️ The InstallerSets up your project with everything Claude Code needs for autonomous development:
One command: |
📋 The PRD WorkshopHelps you write specifications that are good enough for autonomous implementation:
One command: |
graph LR
A["💡 Your Idea"] --> B["📋 Specification\n(PRD Workshop)"]
B --> C["/plan\nAnalyze & Plan"]
C --> D["/tdd\nTests → Code"]
D --> E["/verify\nQuality Gates"]
E --> F["/code-review\nSecurity Audit"]
F --> G["✅ Production Code"]
style A fill:#fef3c7,stroke:#f59e0b,color:#92400e
style B fill:#e0e7ff,stroke:#6366f1,color:#3730a3
style C fill:#f3f4f6,stroke:#9ca3af,color:#374151
style D fill:#f3f4f6,stroke:#9ca3af,color:#374151
style E fill:#f3f4f6,stroke:#9ca3af,color:#374151
style F fill:#f3f4f6,stroke:#9ca3af,color:#374151
style G fill:#dcfce7,stroke:#22c55e,color:#166534🔧 The Workflow
/plan — Think before building
Claude reads your specification, explores your codebase, and creates a plan. It identifies risks, asks questions, and waits for your OK before writing a single line of code.
/tdd — Tests first, always
Write a failing test → Write code to pass it → Improve → Repeat. Every feature is tested before it exists.
/verify — Every quality gate, every time
| Gate | What it checks | Standard |
|---|---|---|
| 🔨 Build | Compiles without errors | 0 errors |
| 📐 Types | Type safety | 0 errors |
| 🧹 Lint | Clean code style | 0 warnings |
| 🧪 Tests | Test suite | All pass, 80%+ coverage |
| 🔒 Security | OWASP vulnerabilities | None found |
| 🚫 Debug logs | console.log in production |
0 occurrences |
| 🛡️ Type safety | any or unsafe casts |
None |
| 📏 File size | Oversized files | Max 300 lines |
/code-review — A second pair of eyes
Reviews every change for security issues, code quality, architecture violations, and common mistakes. Rates findings as Critical, Warning, or Info.
/ralph-loop — Build while you sleep
[!IMPORTANT] This is the most powerful feature.
/ralph-loop "Build the auth system"
--max-iterations 30
--completion-promise "All tests pass, build succeeds, 0 lint errors"Claude works autonomously — writing code, running tests, fixing errors, iterating — until every quality gate passes. It only stops when the promise is 100% true.
You go to sleep. You wake up to a working feature.
🔄 How Ralph Loop works internally
graph TD
A["Start: Read PRD"] --> B["Check current state\n(git diff, tests)"]
B --> C["Implement next step"]
C --> D["Run quality gates"]
D --> E{"All gates\npass?"}
E -- No --> F{"Same error\n3+ times?"}
F -- No --> B
F -- Yes --> G["Try different approach"]
G --> B
E -- Yes --> H{"Completion\npromise true?"}
H -- No --> B
H -- Yes --> I["✅ Output promise\nDone!"]
D --> J{"80% iterations\nused?"}
J -- Yes --> K["📝 Write status report"]
K --> B
style I fill:#dcfce7,stroke:#22c55e
style A fill:#e0e7ff,stroke:#6366f1- Built-in error recovery: reads errors, tries alternatives, documents blockers
- Status report at 80%: if running out of iterations, writes what's done and what's left
- Honest promises: the completion promise is ONLY output when 100% true
📋 The PRD Workshop
A specification (PRD) is the bridge between "I want this" and "Claude builds this."
The better the spec, the better the code.
Two Modes
| Mode | When to use | What happens |
|---|---|---|
| 🔍 Workshop | Vague idea, complex project | Effectum asks questions round by round until it fully understands |
| ⚡ Express | Clear requirements | Describe it, Effectum fills gaps and produces the spec in one shot |
What a Specification Contains
┌─────────────────────────────────────────┐
│ 📋 EFFECTUM SPECIFICATION (PRD) │
├─────────────────────────────────────────┤
│ │
│ Problem & Goal │
│ ── What are we solving? Why? │
│ │
│ User Stories │
│ ── What can users do when done? │
│ │
│ Acceptance Criteria │
│ ── Given X, When Y, Then Z │
│ ── (every criterion = one test) │
│ │
│ Data Model │
│ ── Tables, fields, types, RLS │
│ │
│ API Design │
│ ── Endpoints, formats, error codes │
│ │
│ Quality Gates │
│ ── 8 automated checks that must pass │
│ │
│ Completion Promise │
│ ── "All tests pass, build succeeds, │
│ 0 lint errors" │
│ │
└─────────────────────────────────────────┘Workshop Commands
| Command | What it does |
|---|---|
/prd:new |
Start a new specification (guided) |
/prd:express |
Quick spec from clear input |
/prd:discuss |
Deep-dive into specific areas |
/prd:review |
Quality check — ready for implementation? |
/prd:decompose |
Split a large project into pieces |
/prd:network-map |
Visualize connections (Mermaid) |
/prd:handoff |
Export spec to your project |
/prd:status |
See all projects and progress |
/prd:resume |
Continue where you left off |
/prd:prompt |
Generate the right handoff prompt |
/workshop:init |
Create a new project workspace |
/workshop:archive |
Archive a completed project |
🆚 How is this different?
| Tool | What it does | What Effectum adds |
|---|---|---|
| GSD | Context engineering, prevents context rot | PRD Workshop (helps you write the spec), Ralph Loop (autonomous overnight) |
| BMAD | Full enterprise methodology | Same ideas, 90% less ceremony |
| SpecKit | Living specifications | + Autonomous execution + Quality gates |
| Taskmaster | Task breakdown from PRDs | + TDD workflow + Code review + E2E testing |
The short version: Effectum doesn't invent new concepts. It combines what already works, removes what doesn't, and packages it so it actually runs.
🎨 Stack Presets
Effectum adapts to your technology:
|
Next.js + Supabase TypeScript, Tailwind, Shadcn Supabase, Vitest, Playwright Full-stack web apps |
Python + FastAPI Pydantic, SQLAlchemy pytest, ruff APIs and backends |
Swift / SwiftUI SwiftData, XCTest swift-format, SPM iOS and macOS apps |
Generic Stack-agnostic Customize everything Anything else |
Each preset configures build commands, test frameworks, linters, formatters, and architecture rules for your stack.
🎚️ Three Autonomy Levels
Choose how much Claude decides on its own:
| Conservative | Standard | Full Autonomy | |
|---|---|---|---|
| Claude asks before... | Most changes | Ambiguous specs | Almost nothing |
| Git operations | Always asks | Asks for push | Autonomous |
| File changes | Confirms each | Works freely | Works freely |
| Best for | Teams, learning | Daily dev | Overnight builds |
| Ralph Loop | ❌ | ✅ | ✅ Recommended |
Choose during /setup. Change anytime in .claude/settings.json.
⚠️ Limitations
Effectum is useful, but it's honest about what it can't do yet:
- Only works with Claude Code — workflow commands are Claude Code specific. Other runtimes (Codex, Gemini CLI) are on the roadmap.
- PRD Workshop requires Claude Code slash commands — you can't use it from the web interface or API directly.
- Ralph Loop effectiveness depends on PRD quality — garbage in, garbage out. A vague spec produces vague code, even autonomously.
- MCP servers need npm/Node.js — if you're in a restricted environment without npm access, MCP setup will fail.
- No test suite yet — ironic for a TDD tool. It's on the list.
📁 Project Structure
effectum/
│
├── system/ The installable workflow
│ ├── templates/ CLAUDE.md, settings, guardrails (parameterized)
│ ├── commands/ 10 workflow commands
│ └── stacks/ Next.js · Python · Swift · Generic
│
├── workshop/ Specification tools
│ ├── knowledge/ 8 reference guides
│ ├── templates/ PRD & project templates
│ └── projects/ Your spec projects (per branch)
│
├── docs/ Documentation
│ ├── workflow-overview.md The complete workflow
│ ├── installation-guide.md Setup step by step
│ ├── prd-workshop-guide.md Writing great specs
│ ├── customization.md Adapting Effectum
│ └── troubleshooting.md Common fixes
│
├── CLAUDE.md Makes Claude understand this repo
└── README.md You are here📚 Documentation
| Guide | What you'll learn |
|---|---|
| 📖 Workflow Overview | The complete autonomous workflow explained |
| 🔧 Installation Guide | Detailed setup instructions |
| 📋 PRD Workshop Guide | How to write great specifications |
| ⚙️ Customization | Adapting Effectum to your needs |
| 🔍 Troubleshooting | Common issues and solutions |
❓ FAQ
Do I need to write a specification for every feature?
No. Use /plan directly with a description for small things. Specifications shine for anything complex — they eliminate back-and-forth and produce dramatically better results.
Does this work with other AI coding tools?
Effectum is built for Claude Code. The specifications it produces are useful for any AI tool, but the workflow commands (/plan, /tdd, etc.) are Claude Code specific. See Limitations.
Can I customize everything after setup?
Yes. Everything is plain text — edit CLAUDE.md for rules, .claude/settings.json for hooks, .claude/guardrails.md for safety rules. See Customization.
What if Ralph Loop gets stuck?
Built-in error recovery: reads errors, tries alternatives, documents blockers. At 80% of max iterations, writes a status report of what's done and what's left. Use /cancel-ralph to stop it manually anytime.
Is this safe to use?
Yes. File protection blocks writes to .env and secrets. Destructive command prevention blocks rm -rf and DROP TABLE. Quality gates catch issues before they ship. Conservative mode asks before most actions.
What does /setup actually do?
/setup configures your project by substituting placeholders in settings.json and CLAUDE.md with your actual project name, tech stack, language, and autonomy level. Run it once per project after installing Effectum.
🤝 Contributing
The most impactful areas:
- 🎨 Stack presets — Add Go, Rust, Ruby, Django, etc.
- 🔧 Workflow commands — Improve or add new ones
- 📚 Knowledge base — Better examples, more techniques
- 🌍 Documentation — Clearer guides, translations