万户医疗智慧办公日程助手 Skill
本 Skill 负责万户医疗智慧办公(FlexOffice v5.4)个人日程查询与新建准备。占会议室走会议 Skill。
- 范围:今日/指定区间日程、日程详情、新建准备(收集标题/时间后确认)
- 不做:分类后台、领导日程权限矩阵、共享策略配置、写
oa_calendar* - 执行层:
user-mysql/execute_sql
执行总则
- 禁止编造命令与参数:只使用本文件与 references/mcp-tools.md。
- 结果不符即停止:失败 2 次停止,不换表。
- 返回行原样呈现。
- 全程中文;标识原文。
- 写库红线:只用
SELECT。
字段名术语:
userId= 日程拥有者(calendar_owner)timeFrom/timeTo= 区间,YYYY-MM-DD
依赖 Skill
> 依赖策略:查「我的」必须有 userId。会议预约不在本包。
必需依赖
| 依赖技能 | 用途 | 安装地址 |
|---|---|---|
wanhu-flexoffice-login |
解析 userId |
本产品线登录 Skill |
按需依赖
| 依赖技能 | 用途 | 用在哪 |
|---|---|---|
wanhu-flexoffice-meeting |
订会议室 | 用户要占房间时转交 |
依赖缺失处理
- 无 userId → 不得查「我的」日程。
- MCP 不可用 → 停止。
重要约束
- 先身份、后查询。不复制登录实现。
启动与登录态
- 优先
wanhu-flexoffice-loginwhoami。空列表合法。
命令与参数
入口:execute_sql。细则 references/mcp-tools.md。
| 高层意图 | 数据契约 |
|---|---|
| 日程列表 | oa_calendar |
| 日程详情 | oa_calendar |
| 新建准备 | 不写库 |
| 参数 | 必填 | 语义 | 格式 |
|---|---|---|---|
userId |
是 | 拥有者 | 字符串 ID |
timeFrom / timeTo |
否 | 区间 | YYYY-MM-DD;未指定默认今天 |
keyword |
否 | 标题 | LIKE |
pageSize |
否 | 条数 | 默认 20,最大 100 |
查询日程
意图识别:今天有什么安排、本周日程、某天日程。
固定顺序:
- 解析
userId。完成:非空。 - 解析区间:说「今天」= 当天;「本周」= 本周一至周日;未说日期 = 今天。完成:
timeFrom/timeTo。 - 按 references/query-rules.md 查询。完成:行或空。
- 渲染。空=「该区间无日程」,不放宽到全年。
日程详情
定位唯一 id 后按契约查一行。多条澄清。
新建准备
意图识别:加个日程、提醒我明天开会(无会议室)。
- 提取标题、开始时间、结束时间(可空)。
- 缺标题或开始时间 → 请用户补齐。
- 复述后确认。未确认禁止宣称已保存。
- 说明缺少写库 MCP,不 INSERT。见 references/write-rules.md。
用户明确要订会议室 → 转交 wanhu-flexoffice-meeting。
澄清回传
| 澄清类型 | 处理 |
|---|---|
| 区间不明且用户说「最近」 | 请用户给日期,默认今天不得改成一个月 |
| 详情多条 | 列出标题 + 时间 + id |
执行器铁律
- 只
execute_sql。2. 必须LIMIT。3. 禁止写库。4. 禁止SELECT *。
输出与呈现
建议列:标题、开始、结束、是否全天、id。
失败与停止
| 场景 | 处理 |
|---|---|
| MCP/SQL 错误 | 原样转述,失败 2 次停止 |
| 无 userId | 停止 |
| 用户要真正保存/完成写库 | 收集后停止,说明无写 MCP |
| 用户要订会议室 | 转交会议 Skill |
行为红线
- 不拼 HTTP。2. 不写
oa_calendar*。3. 不把共享他人日程当成默认可查(无共享契约)。
参考文件(按需读取,不默认全读)
- references/mcp-tools.md
- references/query-rules.md
- references/write-rules.md
- references/catalog.md
包文件结构
wanhu-flexoffice-calendar__skillhub/
├── SKILL.md
├── agents/
│ └── openai.yaml
└── references/
├── catalog.md
├── mcp-tools.md
├── query-rules.md
└── write-rules.md