Back to skills
SKILL.md
Reimbursement Draft Submit
ASecurity创建或更新当前用户正在办理的一张真实报销草稿;核对模板和业务日期,完整展示草稿后,经用户确认提交该 revision 并触发 AI 审核。只查进度时不使用本流程。
- 417 stars
- 0 votes
- 0 copies
- 0 views
- Added November 8, 2026
Security analysis
100/100npx -y skills add infometa/workbuddyskills --skill reimbursement-draft-submit --agent claude-codeAre you the author of Reimbursement Draft Submit?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/infometa-reimbursement-draft-submit)---
name: reimbursement-draft-submit
label: 报销草稿提交
icon: ""
description: 创建或更新当前用户正在办理的一张真实报销草稿;核对模板和业务日期,完整展示草稿后,经用户确认提交该 revision 并触发 AI 审核。只查进度时不使用本流程。
---
# 报销草稿创建与提交
## 适用范围与连接器
关联 `sealai-finance` Connector。只处理当前用户正在办理的一张真实报销单,包括只保存草稿,以及确认后提交草稿。
只查已有单据状态时使用“本人报销进度”;企业审核汇总使用“审核进度汇总”;新客默认配置和固定演示数据使用“新客财务初始化”。材料清单咨询、他人报销和人工审批不在本流程范围内,不因用户提到“报销”就创建或提交单据。
## 执行步骤
1. **连接并确认办理对象。** 未连接时,引导用户通过 SealAI OAuth 登录、选择企业并确认授权。沿用当前 OAuth 身份和 Tool 的既有权限校验;权限拒绝时停止,不替换身份或绕过授权。复用对话中已确认的费用类型、票据字段和模板,只补问缺失或有歧义的信息。
2. **读取已选模板的真实结构。** 使用稳定模板引用时,同时提供 `source`、`source_template_id` 和完整 `version` 调用 `approval_document_template_get`;已有可靠 `template_id` 时,用它读取模板。没有可核验引用时先补齐,不猜模板 ID、字段或版本,不省略版本,也不跨会话漂移到最新模板。读取失败时停在模板核对,不自动调用初始化来替代。
3. **收集字段并确认业务日期。** 按真实模板收集必填字段,普通票据字段使用豆包视觉读取;读不清或彼此冲突的内容请用户核对,不补造票据信息。真实报销的 `demo_data` 必须为 `false`,不得复用固定演示案例。
请用户明确确认本单业务日期;已有明确确认且未变化的日期直接复用。模板有业务日期范围(如出差日期)时,将开始日 `00:00:00.000`、结束日 `23:59:59.999` 按 `Asia/Shanghai` 转为 Unix 毫秒;只有单日费用或宴请日期时,使用该日的起止毫秒。不得用当前时间、草稿创建时间或提交时间代替。业务日期缺失或尚未确认时先补问,不保存或提交无日期的新草稿。
4. **保留并写入用户提供的原始附件。** 先读取 [WorkBuddy 上传辅助流程](../../platform/UPLOAD.md),只上传用户选定且授权办理本单的原件。映射真实返回的 uri/text/mimeType 到当前模板 ATTACHMENT.value 内的 url/name/mimeType,category=file;不传顶层attachments,不猜模板key。受管引用由后端校验并物化为稳定存储,保存返回可能为新签名URL,应核对文件名、数量、MIME和工具结果,而非要求签名URL逐字相同。已有真实可读原件引用可复用。部分失败、原件遗漏或类型不明时停止,不用OCR、file/blob或虚构URL代替。用户未提供原件且模板允许时可保存无附件草稿。
5. **首次保存时保持幂等。** 调用 `approval_document_write`,固定传 `mode=create_if_missing`、`source_system=finance_skill`;同一草稿稳定复用 `source_document_id`,不因重试或用户补充字段生成新的来源 ID。按真实模板传递已收集的 `fields`,使用步骤 2 核对的 `template_id` 或完整 `template_ref`。必须传步骤 3 得到的 `source_start_time`,有业务期间时同时传 `source_end_time`。记录 Tool 返回的真实单据与 revision;需要修改已存在草稿时进入更新步骤,不用首次创建冒充更新。
6. **更新时保留 revision CAS。** 仍调用 `approval_document_write`,传 `mode=update`、`source_system=finance_skill`、`document_id` 和当前 `expected_revision`。业务日期变化时重传 `source_start_time/source_end_time`;未变化时由服务端保留原日期。revision 冲突时停止更新和提交,读取并重新展示最新草稿,不覆盖他人或旧版本修改。读取方式必须符合现有 Tool 契约;无法取得最新草稿时如实报告并停止,不虚构读取结果或读取 Tool。
7. **核对已保存附件并展示草稿,确认提交具体版本。** 每次保存后核对 Tool 返回单据的附件字段、文件数量、文件名、数量与本单原件一致,受管引用物化后的签名URL允许变化,但存储归属和业务保存结果必须可核对,字段格式正确;缺失或无法核对时阻止提交。保存返回只能证明附件引用已写入,实际下载和解析以审核 Tool 的真实结果为准,不能预先宣称 SealAI 已读取原件。`create_if_missing` 返回的已有草稿缺少本次原件时,按步骤 6 合法更新草稿,取得新 revision 后重新核对并展示;已提交单据不得覆盖。完整展示 Tool 返回的草稿、实际已保存的附件文件名/数量、缺失项和 revision,区分已保存内容与仍待补充内容。用户只要求保存时,反馈保存结果,不提交。只有用户在当前会话看过本次草稿并明确确认提交后,才调用 `expense_form_submit`,原样传 `document_id` 和用户确认过的 `confirmed_revision`。用户修改内容或 revision 变化后,重新展示草稿并重新取得提交确认;不把较早的“帮我报销”当作对后续版本的确认。
8. **如实反馈提交结果。** 提交会触发 AI 审核。只展示 Tool 返回的提交状态和审核任务标识;未返回任务标识时不编造。“已提交”不等于“审核通过”或“已付款”。提交后继续查询使用“本人报销进度”,不重新调用提交来查询状态。
## 异常与停止条件
缺少可核验模板、业务日期未确认、用户已提供的原件未取得有效引用或未完整保存、权限拒绝、revision 冲突或提交尚未确认时,停在对应步骤,说明需要补充或核对什么。
失败或结果不确定时,保留已取得的草稿、revision 和真实错误,不自动重复提交,也不把无响应直接描述为提交失败或成功。不执行人工审批、付款或自动通知。
Attribution
Related skills
View all in tools →Comments
Loading comments…
Newsletter
Get the weekly list of safe new skills, and the ones we pulled.