/ 目錄 / 演練場 / Spec Workflow
● 社群 Pimzino ⚡ 即開即用

Spec Workflow

作者 Pimzino · Pimzino/spec-workflow-mcp

Structured Requirements → Design → Tasks workflow with a live dashboard and human approval gates — stop Claude YOLO-coding features.

Spec Workflow turns feature development into a three-stage pipeline: Requirements doc, Design doc, Task list. Each stage requires approval (via web dashboard or VSCode sidebar) before moving on. Claude can't skip ahead, writes implementation logs, and tracks progress bar state on every task. Feels like Jira-for-Claude.

為什麼要用

核心特性

即時演示

實際使用效果

spec-workflow-mcp.replay ▶ 就緒
0/0

安裝

選擇你的客戶端

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "spec-workflow-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@pimzino/spec-workflow-mcp@latest",
        "/path/to/project"
      ]
    }
  }
}

開啟 Claude Desktop → Settings → Developer → Edit Config。儲存後重啟應用。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "spec-workflow-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@pimzino/spec-workflow-mcp@latest",
        "/path/to/project"
      ]
    }
  }
}

Cursor 使用與 Claude Desktop 相同的 mcpServers 格式。專案級設定優先於全域。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "spec-workflow-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@pimzino/spec-workflow-mcp@latest",
        "/path/to/project"
      ]
    }
  }
}

點擊 Cline 側欄中的 MCP Servers 圖示,然後選 "Edit Configuration"。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "spec-workflow-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@pimzino/spec-workflow-mcp@latest",
        "/path/to/project"
      ]
    }
  }
}

格式與 Claude Desktop 相同。重啟 Windsurf 生效。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "spec-workflow-mcp",
      "command": "npx",
      "args": [
        "-y",
        "@pimzino/spec-workflow-mcp@latest",
        "/path/to/project"
      ]
    }
  ]
}

Continue 使用伺服器物件陣列,而非映射。

~/.config/zed/settings.json
{
  "context_servers": {
    "spec-workflow-mcp": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "@pimzino/spec-workflow-mcp@latest",
          "/path/to/project"
        ]
      }
    }
  }
}

加入 context_servers。Zed 儲存後熱重載。

claude mcp add spec-workflow-mcp -- npx -y @pimzino/spec-workflow-mcp@latest /path/to/project

一行命令搞定。用 claude mcp list 驗證,claude mcp remove 移除。

使用場景

實戰用法: Spec Workflow

Build a feature with a spec, not a vibe prompt

👤 Devs shipping medium-complexity features ⏱ ~90 min intermediate

何時使用: You're about to ask Claude to "add OAuth" and dread the 500-line diff that will land in one go.

前置條件
  • Project path known — MCP is launched with /path/to/project as arg
步驟
  1. Requirements
    Use spec-workflow. Create a spec named oauth-login. Start with requirements — what are we adding, who is it for, what are the non-goals?✓ 已複製
    → Requirements doc drafted, link to dashboard for approval
  2. Approve + Design
    I approved in the dashboard. Now write the design: components, data model, sequence diagram, error cases.✓ 已複製
    → Design doc with concrete architecture
  3. Tasks + Execute
    I approved. Break into tasks. Then execute task 1.1 — just that one, stop after.✓ 已複製
    → Task list created; only task 1.1 implemented with log entry

結果: A feature shipped with reviewable intermediate artifacts — not a mystery diff.

注意事項
  • Claude tries to skip straight to code — The MCP blocks it — but be explicit in prompts anyway: "do not implement yet"
搭配使用: github · filesystem

Get a non-engineer stakeholder to approve a spec before code happens

👤 Teams with PM/design sign-off loops ⏱ ~60 min intermediate

何時使用: You need PM approval before implementation and the PM doesn't read GitHub PRs.

前置條件
  • Dashboard URL shareable — Port-forward or expose localhost:5000 via ngrok for remote PMs
步驟
  1. Spec
    Draft the requirements doc for checkout-v2 and share the dashboard URL.✓ 已複製
    → Doc + shareable link
  2. Iterate via feedback
    PM left 3 revision comments in the dashboard. Fetch them and revise the doc.✓ 已複製
    → Doc updated with revision history visible
  3. Execute post-approval
    Approval just went through — proceed to design.✓ 已複製
    → Next stage starts; approval timestamp logged

結果: Traceable approval chain from non-engineer stakeholders.

注意事項
  • Dashboard not reachable for remote users — Use Tailscale or ngrok with auth
搭配使用: github

組合

與其他 MCP 搭配,撬動十倍槓桿

spec-workflow-mcp + github

Open a PR per approved task

After executing task 2.1, open a GitHub PR titled "feat(oauth): task 2.1" with the diff.✓ 已複製
spec-workflow-mcp + filesystem

Store specs in-repo alongside code

Save the approved spec to /docs/specs/oauth-login.md and commit.✓ 已複製

工具

此 MCP 暴露的能力

工具輸入參數何時呼叫成本
create_spec name: str Start a new feature free
write_requirements spec_id, content: markdown First phase of any spec free
write_design spec_id, content: markdown After requirements approved free
create_tasks spec_id, tasks: [] After design approved free
execute_task spec_id, task_id Implement one task at a time free
get_approval_status spec_id, stage Gate next stage free

成本與限制

運行它的成本

API 配額
Local
每次呼叫 Token 數
Proportional to doc/task size
費用
Free
提示
Keep requirements concise — the approval cost is human time, not tokens

安全

權限、密鑰、影響範圍

最小權限: filesystem-write (for spec docs)
憑證儲存: None
資料出站: None — localhost dashboard

故障排查

常見錯誤與修復

Dashboard won't load

Start it explicitly: npx -y @pimzino/spec-workflow-mcp@latest --dashboard

驗證: Visit localhost:5000
Port 5000 already in use (macOS AirPlay)

Pass --port 5050 or disable AirPlay Receiver in System Settings

驗證: Check with `lsof -i :5000`
Tasks stay in pending after approval

MCP client may be caching old tool results — restart the client

替代方案

Spec Workflow 對比其他方案

替代方案何時用它替代權衡
Plain Markdown in /docsSolo dev with no approval loop neededNo structure enforcement, no dashboard
Linear MCPYou already use Linear for tasks and want Claude to touch issues directlyNo spec-doc layer

更多

資源

📖 閱讀 GitHub 上的官方 README

🐙 查看未解決的 issue

🔍 瀏覽全部 400+ MCP 伺服器和 Skills