Notion ↔ 代码仓库双向桥接 · 工单系统
对接Notion现有「⚡ 半体工单 · Half-Body Orders」数据库 数据库ID:
05719bae-9e53-40f4-8233-6bf54551ac18数据库URL: https://www.notion.so/663e4f29c7404d088f3a02fcc70b1418
现有数据库结构
| 字段 | 类型 | 说明 |
|---|---|---|
| 任务标题 | Title | 工单标题 |
| 状态 | Select | 待开发·开发中·自检中·待审查·审核中·已完成·暂缓 |
| 优先级 | Select | P0·P1·P2 |
| 负责Agent | Select | 译典A05·培园A04·录册A02·霜砚Web·铸渊 |
| 编号 | Text | 工单编号 |
| 分支名 | Text | Git分支名 |
| 仓库路径 | Text | 仓库目标路径 |
| 开发内容 | Text | 详细描述 |
| 约束 | Text | 规范约束 |
| 阶段编号 | Text | Phase编号 |
| 自检结果 | Text | Agent自检 |
| 审核结果 | Text | 霜砚审核 |
| 下一轮指引 | Text | 完成后触发 |
| 创建时间 | Date | 自动 |
同步流程
Notion(霜砚/知秋/其他Agent) 代码仓库(铸渊)
│ │
├─ 创建/更新工单 ├─ sync-ticket.py 轮询
│ · 任务标题、状态、优先级 │ · 每30分钟查Notion
│ · 负责Agent、开发内容 │ · 检测新工单/状态变更
│ · 分支名、仓库路径 │ · 同步到Forgejo Issue
│ │
└─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ → ├─ 铸渊醒来 → 读取Issue
霜砚:审核结果更新 │ → 处理 → 推代码
知秋:创建新工单 │ → 更新工单状态
译典/培园/录册:开发中 │
└─ → 写回Notion
铸渊:处理结果
状态:自检中
配置方式
# 在服务器上
cd /opt/guanghulab-repo/notion
# 设置Notion API token(来自WorkBuddy的Notion集成)
export NOTION_TOKEN="1d4d872b-594c-815e-8cfd-0002d22415e8:rYkVgBbnSvHe4GyE:B2CeHHv9LA_jMXlTuwMxahyky_oLdblC"
export NOTION_DATABASE_ID="05719bae-9e53-40f4-8233-6bf54551ac18"
# 启动同步
pm2 start sync-ticket.py --name notion-ticket-sync
# 查看日志
pm2 logs notion-ticket-sync
铸渊的工单工作流
- 醒来读工单:检查Notion工单数据库中状态为「待开发」且负责Agent不指定的工单
- 领取工单:将工单状态改为「开发中」,负责Agent标注铸渊
- 开发:按工单的分支名、仓库路径、开发内容执行
- 自检:完成后填写自检结果
- 标记状态:改为「自检中」
- 霜砚审核:霜砚在Notion中审核→审核结果写入→状态改为「待审查」/「已完成」
Notion ↔ 代码仓库桥接 · v1.1 · 对接现有半体工单数据库 · D110