cd /news/developer-tools/specmanager-a-full-agile-team-for-fo… · home topics developer-tools article
[ARTICLE · art-43203] src=github.com ↗ pub= topic=developer-tools verified=true sentiment=↑ positive

SpecManager – a full agile team for founders, as a Claude Code plugin

SpecManager, a Claude Code plugin that replaces ad-hoc vibe coding with a gated spec-driven development lifecycle, has been released as an MIT-licensed open-source tool. The plugin enforces a PRD-to-walkthrough workflow with a localhost kanban board backed by plain markdown, targeting single-user, fully local use for founders. It is available via GitHub and requires Node 20+ and Claude Code.

read6 min views1 publishedJun 29, 2026
SpecManager – a full agile team for founders, as a Claude Code plugin
Image: source

Spec-driven development for Claude Code. A Claude Code plugin that replaces ad-hoc vibe coding with a gated lifecycle — PRD → Architecture → (Design) → Plan + tasks → Build → Walkthroughs — rendered as a localhost kanban board backed by plain markdown in your repo.

Claude drafts each stage from the previous approved one and your existing codebase; you edit and approve in the board. Every artifact is git-tracked markdown, so it diffs, reviews, and travels with the code. Single-user, fully local, no auth, bound to 127.0.0.1

.

specmanager.org · MIT licensed

/plugin marketplace add joanseg/specmanager

/plugin install specmanager@specmanager

/reload-plugins

/mcp       ## If plugin:specmanager:specmanager ✘ failed select and click enter to reconnect

/specmanager-init
/specmanager-board

Example of a Specmanager board:

That's it — no build step. The compiled server and UI are committed, and a SessionStart

hook installs runtime dependencies into the plugin's data dir on first launch.

Requirements: Node 20+ and Claude Code. The board runs at http://127.0.0.1:4317

(change the port in the plugin's user config).

Each feature is a row on the board that flows left to right through the lifecycle. You drive it with slash commands; Claude does the drafting via dedicated subagents, and you approve each stage in the board before the next unlocks.

/specmanager-interview "Checkout corridor" # OPTIONAL pre-PRD interview — extracts & stress-tests the idea
/specmanager-prd "Checkout corridor"       # create the feature + draft its PRD → approve in board
/specmanager-architecture   <feature>       # draft the Architecture   → approve in board
/specmanager-design         <feature>       # OPTIONAL high-fi HTML mockups → approve
/specmanager-plan           <feature>       # plan.md + phased tasks   → approve in board
/specmanager-build          <feature> next  # build one phase at a time
/specmanager-walkthrough    <feature> <phase>   # per-phase walkthrough
/specmanager-walkthrough    <feature> final     # feature-level roll-up
/specmanager-board                          # open the kanban board anytime

<feature>

is the feature's slug or id (reported by /specmanager-prd

when it creates the feature).

/specmanager-interview

is optional: a multi-turn interview in your Claude session that pulls the idea out of your head and challenges it (using the gstack office-hours forcing-question method) before any PRD exists. The result can be stored as interview.md

in the feature's PRD folder — shown as a chip on the board, never gating anything — and the PRD drafter grounds itself in it when present.

Stage Produces Unlocks when
PRD
press-release.md , prd.md
always (the entry point)
Architecture
architecture.md
PRD approved
Design (optional)
high-fidelity HTML mockups PRD approved (runs in parallel with Architecture)
Plan
plan.md + task records (tasks.json , rollup)
Architecture approved (and Design, if one exists, approved)
Build
no doc — it's execution
Plan approved
Walkthroughs
<slug>.md per phase + a final roll-up
the phase's tasks are all done

Gates are enforced in shared code, not in prompts — Claude cannot draft a stage whose gate is closed. Plans are organised into phases, each a testable, runnable increment; tasks carry a Fibonacci complexity

score and anything over 3 must be split. /specmanager-build

builds one phase and stops at its boundary.

approved

is a commitment, not a freeze. Reopen an approved doc and every downstream doc that depended on it gets a non-blocking stale badge — a "the basis changed, review me" signal. Regenerate or re-approve to clear it.

/specmanager-board

opens a grid: one row per feature, one column per stage (PRD · Architecture · Design · Plan · Build · Walkthroughs). It updates live over websockets as Claude writes docs or you edit them.

  • Each cell is a card showing status ( draft

/approved

), a stale badge, and whether it was generated by agent or human. - Clicking a card opens a doc panel drawer over the dimmed board to read, edit, and approve. Design docs get a CodeMirror HTML editor with a live sandboxed<iframe>

preview. - The Build cell groups tasks under collapsible phase headers with per-phase progress bars instead of a document. - The Walkthrough column shows one card per phase plus a final roll-up card that stays locked until every phase walkthrough is approved.

Edits you make in the board and writes Claude makes both flow through the same shared logic layer, so the two views never drift. AI writes use optimistic concurrency, so a stale agent write can't clobber your manual edits.

Everything is markdown with YAML frontmatter under your project, version-controlled by git:

<your-project>/
  CLAUDE.md                         # carries a managed SpecManager block (between markers)
  docs/DESIGN.md                    # managed design-system spec (inferred from your UI)
  .claude/specs/
    manifest.json                   # rebuildable board index (derived from frontmatter)
    features/<slug>/
      feature.json
      prd/        press-release.md, prd.md
      architecture/ architecture.md
      design/     <mockups>.html
      plan/       plan.md, tasks.md, tasks.json
      walkthroughs/ <slug>.md

Frontmatter is authoritative; manifest.json

is a cache you can delete and rebuild. The managed regions in CLAUDE.md

and DESIGN.md

live strictly between <!-- specmanager:start -->

/ <!-- specmanager:end -->

markers — nothing outside them is ever touched.

The plugin ships its compiled server/dist

and ui/dist

, so users install with no build step. Rebuild before committing source changes:

cd plugins/specmanager/server
npm install
npm run build
npm run selftest          # core flow against a tmp dir
npm run selftest-board    # boots board: REST + WS + file watcher
npm run selftest-phases   # phase rollup + Fibonacci ≤3 validation
npm run selftest-build    # per-phase gates + walkthrough storage
npm run smoke-mcp         # MCP wire protocol + tools registered

cd ../ui
npm install
npm run build             # → ui/dist, served by the board server

Then reinstall in a test repo:

/plugin marketplace update specmanager
/plugin install specmanager@specmanager
/reload-plugins

CLose all Claude Code sessions. Then open CLaude Code sesion and reconnect mcp:

/mcp      ## select specmanager:specmanager, click enter and reconnect

Tech stack: Node 20+, TypeScript, MCP stdio transport, Fastify + ws

, chokidar

, gray-matter

, zod

, React 18 + Vite, CodeMirror 6. One shared @specmanager/core

library backs both the MCP server (Claude's interface) and the board server (the UI's interface); one MCP process boots the board.

Repo layout: the marketplace manifest is at the repo root (.claude-plugin/marketplace.json

); the plugin itself lives in plugins/specmanager/

. Design docs are under docs/

(the original full spec is archived at docs/temp/original-specs/architecture-and-spec.md

).

— select it and reconnect. If it persists, fully restart: quit Claude (/mcp

shows specmanager failedCtrl-C

twice),claude daemon stop

, kill stragglers (ps aux | grep mcp.js

), confirm the port is free (lsof -nP -iTCP:4317 -sTCP:LISTEN

), then relaunchclaude

from your project.Board won't open— the MCP process boots the board server on startup; if it isn't running, restart your Claude session./specmanager-board

reports the URL so you can open it manually.— do the full restart above rather than retrying the reload./reload-plugins

reports a load error

── more in #developer-tools 4 stories · sorted by recency
── more on @claude code 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/specmanager-a-full-a…] indexed:0 read:6min 2026-06-29 ·