指挥棒
人类和代理共享任务图——React Kanban UI、MCP服务器和phoenixvc组织的双向YAML同步。
指挥棒 是凤凰生态系统的工作可见性层。它为人类和人工智能代理提供了一个共享的工作视图:投资组合→ 项目→ 任务层次结构以看板的形式出现,其中有一个MCP服务器,可以让代理直接从他们的工具调用中读写任务。工作状态与中的YAML文件双向同步 org-meta,使项目图版本可控,代理可访问。这个名字来源于接力赛接力棒——工作在人类和代理人之间干净利落地交接,然后再回来。
______________________________________________________________________
它做什么
- 看板 --React+Vite+Tailwind前端,具有3层层次结构:投资组合→ 项目→ Task.拖放、检查表支持和状态跟踪。
- MCP服务器 --Express后端公开了一个MCP(模型上下文协议)服务器,以便AI代理
deck,cognitive-mesh,以及retort项目可以在不离开工具循环的情况下查询和更新任务。 - YAML同步 --Postgres任务数据库和提交的YAML文件之间的双向同步
org-meta任务图始终受版本控制。 - 组织上下文传递 --后端代理来自以下位置的组织级数据(路线图、项目、任务)
mcp-org因此代理通过单个MCP端点获得完整的组织上下文。 - 铁路部署 --在Railway上部署为web服务。Monorepo与单独
backend/和frontend/包装。
______________________________________________________________________
建筑
frontend (React/Vite/Tailwind)
│
▼
backend (Express + MCP server)
│
┌────┴─────────────────┐
│ │
Postgres mcp-org
(task store) (org context — roadmap, projects)
│
└──▶ org-meta (YAML sync)部署在铁路上。代理可以通过HTTP传输访问MCP服务器。
______________________________________________________________________
仓库布局
baton/
├── backend/ # Express API + MCP server
│ ├── src/
│ │ ├── db/schema.ts # Drizzle ORM schema
│ │ ├── mcp/server.ts # MCP tool definitions
│ │ ├── mcp/orgClient.ts# mcp-org JSON-RPC client
│ │ └── routes/ # REST API routes (tasks, org)
│ └── package.json
├── frontend/ # React Kanban UI
│ ├── src/
│ │ ├── components/ # Board, Card, Column components
│ │ └── hooks/ # Data fetching hooks
│ └── package.json
├── railway.toml # Railway deployment config
└── README.md______________________________________________________________________
先决条件
- 启用corepack的Node.js 22+(pnpm从以下位置激活
package.jsonspackageManager现场) - PostgreSQL(通过铁路或本地)
MCP_ORG_URL+MCP_ORG_SECRET用于组织上下文传递
______________________________________________________________________
快速启动
backend/ 和 frontend/ 是独立的pnpm项目(每个项目都有自己的锁文件),因此每个铁路服务都是独立构建的。
corepack enable # one-time, activates pnpm@10.x from packageManager field
# Backend
cd backend && pnpm install && pnpm dev
# Frontend
cd frontend && pnpm install && pnpm dev复制 .env.example 到 .env 并填写:
DATABASE_URL--PostgreSQL连接字符串MCP_ORG_URL--mcp-org端点(默认:铁路部署)MCP_ORG_SECRET--mcp-org身份验证的共享密钥
______________________________________________________________________
MCP工具
MCP服务器为代理提供工具:
| 工具 | 说明 |
|---|---|
list_projects | 列出投资组合中的所有项目 |
list_tasks | 使用可选的项目、状态和搜索筛选器获取任务 |
task_check | 用于检查共享任务图的代理友好别名 |
get_task | 使用检查表和代理消息获取一个任务 |
create_task | 创建新任务 |
task_notify | 用于创建可见共享任务的代理友好别名 |
update_task | 更新任务状态、受让人或检查表 |
move_task | 将任务移动到状态列 |
add_checklist_item | 向任务添加检查表项 |
complete_checklist_item | 标记已完成的清单项 |
log_agent_message | 编写代理活动消息 |
get_deep_link | 创建或返回资源深度链接 |
search_tasks | 搜索任务标题和上下文 |
sync_repo_yaml | 返回项目的YAML导入的同步端点 |
get_org_roadmap | Passthrough——从mcp-org获取组织路线图 |
list_org_projects | Passthrough——列出mcp组织的所有项目 |
search_org_tasks | Passthrough--从mcp组织中搜索组织任务 |
get_org_health | Passthrough--从mcp-org获取组织健康信息 |
get_yaml_source | 返回项目的YAML源代码的仓库URL |
______________________________________________________________________
生态系统
接力棒是凤凰平台的工作可见性层。它连接到:
| 代表 | 角色 |
|---|---|
deck | 桌面操作工具——在操作员仪表板中嵌入指挥板视图并显示任务计数 |
mcp-org | 组织MCP服务器——接力棒将组织上下文(路线图、项目)从MCP组织代理到其自己的MCP客户端 |
org-meta | 组织注册表——从接力棒接收YAML任务同步;版本控制任务状态的真实来源 |
cognitive-mesh | 代理编排——从接力后端接收任务路由请求 |
retort | 代理脚手架——基于反驳的项目可以通过MCP从接力棒中读取任务 |
sluice | AI网关——接力棒后端AI调用水闸路由 |
______________________________________________________________________
灵感
- linear.app --项目跟踪用户体验和三层层次模型(团队→ 项目→ 问题)
- 计划如此 --开源项目管理,双向同步模式
