chore: sync before memory update
This commit is contained in:
@@ -0,0 +1,102 @@
|
||||
---
|
||||
name: huanxi-report
|
||||
description: "寰汐员工日报工作流:查看今日日报状态(+check)、保存草稿(+draft)、提交日报(+submit)、撤回日报(+withdraw)。当用户说"帮我写日报"、"填日报"、"提交日报"、"查看今日汇报情况"时触发。"
|
||||
---
|
||||
|
||||
# 寰汐员工日报
|
||||
|
||||
**前置条件:先 Read `../huanxi-shared/SKILL.md`(缓存规则 + TTL 策略)**
|
||||
|
||||
---
|
||||
|
||||
## 标准工作流(完整流程)
|
||||
|
||||
```
|
||||
Step 0: 确认身份
|
||||
→ Read ~/.claude/huanxi-cache/me.json(永久缓存)
|
||||
→ 若 me.json 为空:mcp__huanxi__user_get_me() → 写入缓存
|
||||
|
||||
Step 1: 检查是否工作日
|
||||
→ 查 workdays.json["今日日期"]
|
||||
→ 未缓存:mcp__huanxi__system_get_workday() → 追加写入 workdays.json
|
||||
→ 非工作日:告知用户,询问"是否仍要填写?"(不强制中断)
|
||||
|
||||
Step 2: 查看今日日报状态
|
||||
→ mcp__huanxi__report_get_today()
|
||||
→ submitted → 告知"今日已提交",询问是否撤回
|
||||
→ draft/empty → 继续 Step 3
|
||||
|
||||
Step 3: 获取待汇报任务并收集内容
|
||||
→ mcp__huanxi__report_get_tasks_to_report()
|
||||
→ 展示待汇报任务列表(task_id, name, 模块, 当前进度)
|
||||
→ 引导用户逐一填写今日进展和完成百分比
|
||||
→ 详见 references/report-draft.md
|
||||
|
||||
Step 4: 保存草稿并展示初稿
|
||||
→ mcp__huanxi__report_save_draft(items=[...])
|
||||
→ 展示完整初稿内容供用户预览
|
||||
|
||||
Step 5: 询问是否 AI 润色
|
||||
→ 询问用户:"是否需要 AI 润色优化表达?"
|
||||
→ 用户同意 → mcp__huanxi__llm_polish_report(content=<初稿内容>)
|
||||
→ 展示润色后版本,与初稿对比
|
||||
→ 用户选择采用润色版或保留原版
|
||||
→ 若采用润色版:mcp__huanxi__report_save_draft(items=[...]) 更新草稿
|
||||
→ 用户拒绝 → 直接进入 Step 6
|
||||
|
||||
Step 6: 确认并提交
|
||||
→ 展示最终内容,等待用户明确确认("确认"/"提交"/"好的"等)
|
||||
→ ⚠️ 未收到确认前,禁止调用 report_submit_item
|
||||
→ 用户确认后:
|
||||
a. mcp__huanxi__report_get_today() → 获取各条目的 item_id
|
||||
b. 对每个需提交的草稿条目 → mcp__huanxi__report_submit_item(item_id)
|
||||
c. 逐条提交,不影响其他条目
|
||||
→ 详见 references/report-submit.md
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Shortcuts
|
||||
|
||||
| 指令 | 说明 |
|
||||
|------|------|
|
||||
| [`+check`](#check) | 查看今日日报状态(已提交/草稿/空) |
|
||||
| [`+draft`](references/report-draft.md) | 读取待报任务并保存草稿 |
|
||||
| [`+submit`](references/report-submit.md) | 提交当天日报(必须先确认) |
|
||||
| `+withdraw` | 撤回已提交日报(询问确认) |
|
||||
|
||||
---
|
||||
|
||||
## +check:查看今日状态 {#check}
|
||||
|
||||
```
|
||||
1. mcp__huanxi__report_get_today()
|
||||
2. 展示:
|
||||
- 提交状态(submitted / draft / 未填)
|
||||
- 已填任务列表及内容摘要
|
||||
- 未填/dismissed 任务
|
||||
3. 若已提交:询问"是否需要撤回修改?"
|
||||
4. 若草稿:询问"是否继续编辑并提交?"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## +withdraw:撤回日报
|
||||
|
||||
```
|
||||
1. mcp__huanxi__report_get_today() → 获取各条目状态和 item_id
|
||||
2. 展示已提交的条目列表,询问用户要撤回哪条(可多选)
|
||||
3. 等待用户确认(撤回后该条目变为草稿,其他已提交条目不受影响)
|
||||
4. 对用户选择的每条 → mcp__huanxi__report_withdraw_item(item_id)
|
||||
5. 告知撤回成功,可重新编辑后用 report_submit_item 重新提交
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 关键约束
|
||||
|
||||
- **禁止自动提交**:Step 6 必须展示内容并等待用户明确确认("确认"/"提交"/"好的"等),不得自动调用 `report_submit_item`
|
||||
- **逐条操作,不做全量**:提交/撤回必须使用 `report_submit_item` / `report_withdraw_item`(需传 item_id),禁止批量操作所有条目,除非用户明确要求"全部提交/撤回"
|
||||
- **dismissed 状态**:用户主动标记"今天不汇报该任务",dismiss 的条目不计入汇报,不要提示用户补填
|
||||
- **非工作日**:检测到非工作日时,明确告知但不中断,询问用户意愿
|
||||
- **已提交则不重复操作**:Step 2 发现已提交时,不继续 Step 3-6,改为询问是否撤回
|
||||
@@ -0,0 +1,56 @@
|
||||
# 保存日报草稿(+draft)
|
||||
|
||||
## 前置
|
||||
|
||||
已通过 `report_get_tasks_to_report()` 获取待汇报任务列表。
|
||||
|
||||
---
|
||||
|
||||
## 草稿数据结构
|
||||
|
||||
每个 `item` 包含:
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
|------|------|------|
|
||||
| `task_id` | string | 任务 ID(从待报任务中取) |
|
||||
| `content` | string | 汇报内容(今日进展) |
|
||||
| `progress` | int | 任务进度(0-100,整数) |
|
||||
| `status` | string | 可选,不改变则不传 |
|
||||
|
||||
---
|
||||
|
||||
## 执行步骤
|
||||
|
||||
```
|
||||
Step 1: 展示待汇报任务列表,引导用户逐一填写内容
|
||||
|
||||
格式示例:
|
||||
┌─────────────────────────────────────────
|
||||
│ 任务: [前端开发] 完成登录页面 UI 优化
|
||||
│ 当前进度: 60%
|
||||
│ 今日进展(请输入): ___
|
||||
│ 完成百分比(0-100): ___
|
||||
└─────────────────────────────────────────
|
||||
|
||||
Step 2: 收集所有填写内容,构建 items 数组
|
||||
|
||||
Step 3: [可选] 若用户请求 AI 辅助 → mcp__huanxi__llm_polish_report(content)
|
||||
将润色建议展示给用户,由用户确认采用哪个版本
|
||||
|
||||
Step 4: mcp__huanxi__report_save_draft(items=[
|
||||
{ task_id: "xxx", content: "...", progress: 80 },
|
||||
...
|
||||
])
|
||||
|
||||
Step 5: 告知保存结果:
|
||||
"已保存草稿,共 N 个任务条目。是否现在提交?"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 注意事项
|
||||
|
||||
- `progress` 是 **整数百分比**(0-100),不是小数
|
||||
- 用户未填写 `content` 的任务:询问是否 dismiss(今天不汇报)还是暂时跳过
|
||||
- `report_save_draft` 是 upsert 操作,多次调用不会重复创建
|
||||
- 草稿保存成功后,下次调用 `report_get_today()` 可看到 draft 状态
|
||||
@@ -0,0 +1,54 @@
|
||||
# 提交日报(+submit)
|
||||
|
||||
## 前置条件
|
||||
|
||||
- 草稿已通过 `report_save_draft()` 保存
|
||||
- 用户已查看并确认内容
|
||||
|
||||
---
|
||||
|
||||
## 执行步骤
|
||||
|
||||
```
|
||||
Step 1: mcp__huanxi__report_get_today() → 获取最新草稿内容
|
||||
|
||||
Step 2: 展示完整草稿给用户审阅:
|
||||
┌─────────────────────────────────────────
|
||||
│ 📋 今日日报预览(2026-04-13)
|
||||
│
|
||||
│ ✅ 完成登录页面 UI 优化(进度 80%)
|
||||
│ 今日进展:完成了头部导航栏的响应式改造...
|
||||
│
|
||||
│ 🔄 接口联调(进度 50%)
|
||||
│ 今日进展:与后端对接了 3 个接口...
|
||||
└─────────────────────────────────────────
|
||||
|
||||
Step 3: 等待用户明确确认("确认"/"提交"/"好的"/"ok"等)
|
||||
⚠️ 未收到确认前,禁止调用 report_submit
|
||||
|
||||
Step 4: 对每个需提交的草稿条目(item.status == "draft"):
|
||||
mcp__huanxi__report_submit_item(item_id=<item.id>)
|
||||
逐条提交,不影响其他条目状态
|
||||
|
||||
Step 5: 告知提交结果:
|
||||
"✅ 日报已提交!共 N 个任务条目。"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 提交失败处理
|
||||
|
||||
| 错误 | 处理方式 |
|
||||
|------|---------|
|
||||
| 草稿为空 | 提示用户先填写内容(+draft) |
|
||||
| 已提交 | 告知已提交,询问是否撤回 |
|
||||
| 网络错误 | 告知用户,建议稍后重试 |
|
||||
|
||||
---
|
||||
|
||||
## 重要约束
|
||||
|
||||
**禁止自动提交**:无论何种情况,`report_submit_item()` 调用前必须经过用户明确确认。
|
||||
这是强制规则,不得因为"用户已经填好了"或"工作流要求"而跳过确认步骤。
|
||||
|
||||
**逐条提交,不做全量**:需先从 `report_get_today()` 获取各条目的 `item_id`,再逐条调用 `report_submit_item(item_id)`,不得批量提交所有条目(除非用户明确要求"全部提交")。
|
||||
Reference in New Issue
Block a user