项目状态管理(事件驱动)
适用场景
> 用事件日志替代手工 Kanban 拖拽,自动沉淀“进展、阻塞、决策、转向”。;| 内置 | cron | 每日 standup 自动生成 | 内置能力 |
功能说明
> 用事件日志替代手工 Kanban 拖拽,自动沉淀“进展、阻塞、决策、转向”。
这个 Skill 能帮你做什么
- 减少手动维护看板成本,让状态更新更自然。
- 保留“为什么这样做”的上下文,便于后续复盘。
- 将代码提交与项目状态关联,提升可追踪性。
需要的工具/依赖
| 类型 | 工具/能力 | 用途 | 说明 |
|---|---|---|---|
| 外部(需安装) | postgres / SQLite |
存储项目与事件状态 | 数据库 |
| 外部(按需) | github (gh CLI) |
关联提交与项目事件 | GitHub CLI |
| 内置 | Discord / Telegram 通道 | 状态查询与日报分发 | 内置能力 |
| 内置 | cron |
每日 standup 自动生成 | 内置能力 |
| 内置 | 子代理能力 | 并行分析多个项目状态 | 内置能力 |
快速体验版(先跑一轮)
你是我的项目状态助手。
我会输入“完成了什么/卡在哪里/决定了什么”,
请转换成事件日志并输出当前项目状态快照。
本轮不写数据库。
产品化增强版
输入参数
| 参数 | 示例 | 是否必填 | 说明 |
|---|---|---|---|
project_sources |
GitHub, Linear, Notion, Slack |
是 | 项目状态入口 |
status_fields |
owner, milestone, risk, next_action |
是 | 状态字段 |
report_frequency |
daily / weekly |
是 | 报告频率 |
risk_rules |
blocked > 2d, overdue, no owner |
是 | 风险判定规则 |
stakeholder_channel |
飞书项目群 |
否 | 同步渠道 |
archive_path |
reports/project-state |
否 | 状态快照保存位置 |
标准输出格式
# 项目状态管理(事件驱动) - 运行结果
## 摘要
- 本次运行目标:...
- 运行模式:preview / scheduled / production
- 数据覆盖范围:...
## 处理结果
- 项目摘要、里程碑状态、阻塞项、风险等级、下一步动作
## 建议动作
| 优先级 | 动作 | 对象/负责人 | 截止时间 | 依据 |
|---|---|---|---|---|
## 待人工确认
- ...
输出样例
- 项目:支付重构;状态:Yellow;原因:测试环境阻塞 2 天。
- 下一步:王五今天 18:00 前确认回归计划。
运行流程
- 读取任务、提交、讨论和文档更新。
- 按项目归并进展、阻塞和风险。
- 生成状态报告和责任人清单。
- 把需要决策的事项推送给相关人。
人工确认点
- 修改项目状态、关闭任务或向群内发布报告前需要确认。
- 跨团队责任分配不明确时进入待确认。
交付验收
- 每个项目都有 owner、状态、风险和下一步动作。
- 阻塞项不会在连续两次报告中丢失。
- 报告能追溯到任务或讨论链接。
风险控制
- 不把未确认的个人推测写成事实。
- 不自动关闭任务或改里程碑。
失败处理
- 某个系统不可读时标记数据缺口。
- 项目无 owner 时列入治理清单。
可选升级方向
- 增加专属配置文件,固化参数、阈值、渠道和运行频率。
- 接入运行日志和效果复盘,统计成功率、误报率、耗时和人工介入次数。
- 根据具体客户场景扩展字段、模板、评分规则和报告样式。
稳定自动版(可长期运行)
1) 状态库结构
CREATE TABLE projects (
id SERIAL PRIMARY KEY,
name TEXT UNIQUE,
status TEXT,
current_phase TEXT,
last_update TIMESTAMPTZ DEFAULT NOW()
);
CREATE TABLE events (
id SERIAL PRIMARY KEY,
project_id INTEGER REFERENCES projects(id),
event_type TEXT,
description TEXT,
context TEXT,
timestamp TIMESTAMPTZ DEFAULT NOW()
);
CREATE TABLE blockers (
id SERIAL PRIMARY KEY,
project_id INTEGER REFERENCES projects(id),
blocker_text TEXT,
status TEXT DEFAULT 'open',
created_at TIMESTAMPTZ DEFAULT NOW(),
resolved_at TIMESTAMPTZ
);
2) 事件驱动提示词(参考流程)
When I say:
- "Finished [task]" → log progress
- "Blocked on [issue]" → create blocker
- "Decided to [decision]" → log decision
- "Pivoting to [new approach]" → log pivot
Every morning at 9 AM:
1. Scan git commits from past 24h
2. Link commits to projects
3. Post standup summary (yesterday/today/blockers)
质量等级
- 难度:高级
- 风险:中
- 自动化程度:可定时
- 适用对象:企业
成功标准
- 口头更新可自动转为结构化状态。
- 阻塞项可集中跟踪。
- 每日 standup 自动输出且可读。