参数/描述修正: - report-submit.md:report_submit → report_submit_item - huanxi-shared 全局约定:同步修正 report_submit 工具名 - weekly-draft.md:多模块循环示例 week → week_number(weekly_report_save 正确参数名) - 工具索引补全参数:task_list_mine/people_get_board/user_list/weekly_report_submit - resolve-ids.md:澄清 feishu_user_id 与 feishu_open_id 是两个不同字段 新增工具调用规范: - huanxi-shared 全局约定第 6 条:以 MCP 工具实际定义为准 - 5 个 skill 文件前置区域统一加 ⚠️ 提示引用第 6 条 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
4.8 KiB
4.8 KiB
name: huanxi-weekly description: "寰汐周报工作流(仅限模块负责人):查看本周周报状态(+check)、基于本周负责人日报 AI 汇总草稿(+draft)、提交周报(+submit)、撤回(+withdraw)。当用户说"写周报"、"提交周报"、"本周总结"、"周报进度"时触发。"
寰汐周报(仅限模块负责人)
前置条件:先 Read ../huanxi-shared/SKILL.md(缓存规则 + TTL 策略)
⚠️ 工具调用规范:执行任何
mcp__huanxi__*调用前,以工具实际注册的参数名和类型为准,本文档示例仅供工作流引导(见 shared 全局约定第 6 条)。
权限说明
周报只有模块负责人(my_role == 'leader')才需要提交。
若用户不是任何模块的负责人:
- 告知:"您目前不是任何模块的负责人,无需提交周报。"
- 建议:若有疑问,可联系管理员确认模块角色。
ISO 周数规范(重要)
寰汐周报使用 ISO 8601 标准:
year字段存 ISO year(不是日历年)- 12月底/1月初可能跨年:如 2025-12-29 的 ISO year = 2026(第1周)
- Python 获取:
date.isocalendar()→(iso_year, week, weekday)
当前日期 → ISO 周号计算示例:
- 2026-04-13(周一)→ year=2026, week=16
标准工作流
Step 0: 确认负责人身份和模块
→ Read ~/.claude/huanxi-cache/modules.json(24h 缓存)
→ 若过期:mcp__huanxi__module_list() → 更新缓存
→ 筛选 my_role == 'leader' 的模块列表
→ 若列表为空:告知用户无需提交周报,流程终止
→ 若有多个 leader 模块:询问"要提交哪些模块的周报?"
Step 1: 确定当前 ISO 周号
→ 根据今日日期计算 (iso_year, iso_week)
→ 告知:第 iso_week 周(周一 ~ 周日 日期范围)
Step 2: 批量拉取周报草稿
→ mcp__huanxi__weekly_report_get_batch(
year=iso_year,
week=iso_week,
module_ids=[<leader 模块的 ID 列表>]
)
→ 返回:各模块的现有草稿状态
Step 3: 逐日拉取本周负责人日报
→ 计算本周日期范围(周一到今日,YYYY-MM-DD 格式列表)
→ 对每个日期逐一调用:
mcp__huanxi__leader_report_get_batch(
date=<单个日期>,
module_ids=[<leader 模块的 ID 列表>]
)
→ 汇总所有日期的返回数据
→ 展示:本周每日负责人日报记录(含各日进展摘要 + 下属提交情况)
Step 4: 询问是否 AI 汇总
→ 展示本周负责人日报数据后,询问:
"是否需要 AI 根据本周负责人日报自动生成周报草稿?"
→ 用户同意 → AI 基于 leader_report_batch 起草:
· content:本周模块整体进展总结
· next_week_plan:下周模块工作计划
→ 展示草稿,供用户审阅和修改
→ 用户拒绝 → 引导用户手动填写本周总结和下周计划
Step 5: 逐模块保存草稿
→ 详见 references/weekly-draft.md
→ mcp__huanxi__weekly_report_save(module_id, year, week_number, content, next_week_plan)
Step 6: 确认并提交
→ 展示所有模块最终内容,等待用户明确确认("确认"/"提交"/"好的"等)
→ ⚠️ 未收到确认前,禁止调用 weekly_report_submit
→ mcp__huanxi__weekly_report_submit(module_id)
Shortcuts
| 指令 | 说明 |
|---|---|
+check |
查看本周周报状态(草稿/已提交) |
+draft |
基于本周负责人日报 AI 生成草稿 |
+submit |
提交周报(必须先确认) |
+withdraw |
撤回已提交周报 |
+check:查看本周状态
1. 确认 leader 模块列表(同 Step 0)
2. 若无 leader 模块:告知无需提交周报
3. mcp__huanxi__weekly_report_get_batch(year, week, module_ids)
4. 展示各模块周报状态:
- submitted:已提交,展示摘要
- draft:草稿中,展示已填内容
- empty:未填,建议运行 +draft
+withdraw:撤回周报
1. 确认 leader 模块(从 modules.json 缓存中取)
2. 若有多个 leader 模块,询问要撤回哪个模块的周报
3. 告知撤回影响(状态变为草稿,可重新编辑),等待用户确认
4. mcp__huanxi__weekly_report_withdraw(module_id)
(默认撤回当周;如需撤回历史周:传 year + week_number)
5. 告知成功,可重新编辑后再次提交
关键约束
- 仅负责人可提交:首先检查
my_role == 'leader',非负责人直接告知无需操作 - 禁止自动提交:
weekly_report_submit(module_id)前必须展示全部内容并等待用户确认 - year 存 ISO year:高频出错点,必须使用
isocalendar()[0],不要用date.year - 每个模块独立提交,有多个模块时逐一处理
- 撤回后可重新编辑,不影响当前状态