/ 目录 / 演练场 / 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