weaver-work-cli 0.1.38 → 0.1.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -2
- package/dist/chunks/{archive-PDV724YK.js → archive-ENZYBBME.js} +556 -66
- package/dist/chunks/{archive-oa-4XE4MNXQ.js → archive-oa-YWLEC5V4.js} +2 -2
- package/dist/chunks/{asset-PDL2QE2N.js → asset-OOV6DWPA.js} +2 -2
- package/dist/chunks/asset-idle-RE632MY5.js +670 -0
- package/dist/chunks/{attachment-content-MDDGOE5E.js → attachment-content-RWN2FCLL.js} +3 -3
- package/dist/chunks/{blog-UYR3EUXW.js → blog-PEPOJAL7.js} +2 -2
- package/dist/chunks/{caizhilian-LG2X5NMF.js → caizhilian-WYIQDVPJ.js} +2 -2
- package/dist/chunks/{calendar-FG4BAZHE.js → calendar-CIARBAOX.js} +2 -2
- package/dist/chunks/{chunk-6FTTSA45.js → chunk-36DIFZAH.js} +2 -2
- package/dist/chunks/{chunk-UJJD4QWF.js → chunk-BJGXMFGD.js} +2 -2
- package/dist/chunks/{chunk-ELYDWBZJ.js → chunk-CQHGNCK2.js} +1 -1
- package/dist/chunks/{chunk-XJY7G4DD.js → chunk-EINRJHQ3.js} +3 -3
- package/dist/chunks/{chunk-UZZBA6PV.js → chunk-EZGFHJFW.js} +28 -6
- package/dist/chunks/{chunk-NI6GIPIM.js → chunk-F2EQXUEE.js} +438 -387
- package/dist/chunks/{chunk-VRYHGG6O.js → chunk-GVPJZXJ2.js} +3 -3
- package/dist/chunks/{chunk-IZUDA353.js → chunk-HJYVHXUQ.js} +1 -1
- package/dist/chunks/{chunk-KKRL3REV.js → chunk-I2HB737U.js} +2 -2
- package/dist/chunks/{chunk-NR6RKXPA.js → chunk-K3RUEEOL.js} +4 -2
- package/dist/chunks/{chunk-6LTFIFLM.js → chunk-KTCB5R5H.js} +2 -2
- package/dist/chunks/{chunk-J7USS3ED.js → chunk-L4N7B7ZD.js} +4 -4
- package/dist/chunks/{chunk-CORFRD7Q.js → chunk-MUQUHKPG.js} +2 -2
- package/dist/chunks/{chunk-DMV2TOMH.js → chunk-NLK2RZKG.js} +46 -46
- package/dist/chunks/{chunk-JSMFPO43.js → chunk-P2DAISYW.js} +1 -1
- package/dist/chunks/{chunk-GGJFMNJM.js → chunk-T7JDJJ7H.js} +3 -3
- package/dist/chunks/{chunk-OJQUJZQF.js → chunk-XXJOSZTQ.js} +2 -0
- package/dist/chunks/{chunk-Z32KWY6G.js → chunk-YS5DPN4T.js} +1 -1
- package/dist/chunks/{chunk-EG6ZU444.js → chunk-ZUX3P6BQ.js} +10 -5
- package/dist/chunks/{chunk-FUWVHMVV.js → chunk-ZXRNHZTE.js} +2 -2
- package/dist/chunks/{conflict-BQZEQ4SP.js → conflict-DRMDOL56.js} +2 -2
- package/dist/chunks/{contract-XIRAFTEV.js → contract-73MERZWN.js} +2 -2
- package/dist/chunks/{cowork-BLG62BL2.js → cowork-HNGBPD7A.js} +2 -2
- package/dist/chunks/{ebuilder-form-NUKG5QW4.js → ebuilder-form-OY6DVNRK.js} +3 -3
- package/dist/chunks/{ehr-2STW5ILH.js → ehr-RAQNEQO7.js} +2 -2
- package/dist/chunks/{esb-UUDQUNKY.js → esb-6XV7C7YV.js} +4 -4
- package/dist/chunks/{fna-6RCY4NU5.js → fna-XTSRB7G7.js} +2 -2
- package/dist/chunks/{host-RHM3NPXV.js → host-3F5UM5GN.js} +3 -3
- package/dist/chunks/{host-EJZFROU3.js → host-A7J6GDUP.js} +3 -3
- package/dist/chunks/{host-FWDOSRH5.js → host-VGPVP7YF.js} +3 -3
- package/dist/chunks/{host-7RXEDMAH.js → host-YAQAPYNP.js} +3 -3
- package/dist/chunks/{host-UFF33TWJ.js → host-YMBXWFWX.js} +3 -3
- package/dist/chunks/{hrm-PKJ6ELSH.js → hrm-TLHKC545.js} +3 -3
- package/dist/chunks/{im-YJAXS7CO.js → im-YOUCFMUK.js} +3 -3
- package/dist/chunks/{invoice-HWVSXGX6.js → invoice-WNBS2B4C.js} +3 -3
- package/dist/chunks/{jiuchuanhui-L7VKILZB.js → jiuchuanhui-XABWS5RN.js} +2 -2
- package/dist/chunks/{lazy-dispatch-NMYEIHRH.js → lazy-dispatch-NLZ5UQQI.js} +5 -5
- package/dist/chunks/{mail-B42RRU7G.js → mail-LRYMBFNL.js} +2 -2
- package/dist/chunks/{meeting-CFYVBJSS.js → meeting-ESXL6MFI.js} +10 -10
- package/dist/chunks/{okr-GCLF6V7W.js → okr-EOV65SSF.js} +2 -2
- package/dist/chunks/{plan-ZVL7GBRI.js → plan-YFPVKW6Y.js} +2 -2
- package/dist/chunks/{project-4YWAAE2K.js → project-MDVZUYQW.js} +2 -2
- package/dist/chunks/{registry-EP4VTHZS.js → registry-QCLZEDAP.js} +8 -8
- package/dist/chunks/{registry-FRJ6H7BT.js → registry-VT5Y2HLA.js} +4 -4
- package/dist/chunks/{registry-SG2PGVCF.js → registry-YX4CSEMD.js} +3 -3
- package/dist/chunks/{room-recommend-R3JVUUAC.js → room-recommend-L3MWH4JW.js} +4 -4
- package/dist/chunks/{schedule-NIJBTYDO.js → schedule-UASAVDVD.js} +4 -4
- package/dist/chunks/{workflow-BB24DFBY.js → workflow-KDGIUCNW.js} +9 -6
- package/dist/core/output.js +16 -6
- package/dist/index.js +33 -28
- package/dist/internal/e10/auth/messages.js +1 -0
- package/dist/internal/e10/auth-recovery.js +13 -6
- package/dist/internal/e10/context.js +16 -3
- package/dist/internal/e10/request-runtime.js +3 -1
- package/dist/shortcuts/archive/host.js +2 -0
- package/dist/shortcuts/archive/manifest.js +1 -1
- package/dist/shortcuts/archive/operations/borrow-list.js +13 -1
- package/dist/shortcuts/archive/operations/flow-url.js +1 -1
- package/dist/shortcuts/archive/operations/prelib.js +472 -0
- package/dist/shortcuts/archive/operations/registry.js +2 -0
- package/dist/shortcuts/archive/operations/upload.js +1 -1
- package/dist/shortcuts/asset-idle/errors.js +44 -0
- package/dist/shortcuts/asset-idle/host.js +161 -0
- package/dist/shortcuts/asset-idle/index.js +114 -0
- package/dist/shortcuts/asset-idle/manifest.js +159 -0
- package/dist/shortcuts/asset-idle/operations/idle.js +47 -0
- package/dist/shortcuts/asset-idle/operations/registry.js +33 -0
- package/dist/shortcuts/asset-idle/operations/shared.js +142 -0
- package/dist/shortcuts/asset-idle/operations/types.js +9 -0
- package/dist/shortcuts/asset-idle/operations.js +15 -0
- package/dist/shortcuts/index.js +5 -0
- package/dist/shortcuts/workflow/host.js +3 -0
- package/dist/shortcuts/workflow/index.js +1 -1
- package/dist/shortcuts/workflow/operations/form.js +46 -171
- package/dist/shortcuts/workflow/operations/todoSmartConvert/aigroupRules.js +77 -26
- package/dist/shortcuts/workflow/operations/todoSmartConvert/aigroupStore.js +6 -0
- package/dist/shortcuts/workflow/operations/todoSmartConvert/summaryCache.js +59 -117
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoDetailCache.js +44 -7
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoDetailFetcher.js +37 -29
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.collect.js +20 -6
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.detail.js +22 -18
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.groupSummary.js +34 -10
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.js +4 -2
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.smartGroup.js +9 -2
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.summary.js +110 -20
- package/docs/_catalog.md +3 -0
- package/docs/asset-idle.md +45 -0
- package/docs/e10-auth.md +1 -1
- package/docs/todo-smart-convert/subgroup-rules.md +1 -1
- package/package.json +1 -1
- package/scripts/package-skill.mjs +2 -0
- package/skill-template/business-info.json +14 -1
- package/skill-template/domains/asset-idle.md +13 -0
- package/skill-template/domains/wenshuding.md +3 -0
- package/skills/weaver-e10-archive-oa/SKILL.md +1 -0
- package/skills/weaver-e10-archive-oa/references/my-borrow.md +49 -0
- package/skills/weaver-e10-asset-idle/SKILL.md +73 -0
- package/skills/weaver-e10-asset-idle/references/idle-list.md +62 -0
- package/skills/weaver-e10-asset-idle/references/idle-stats-and-charts.md +65 -0
- package/skills/weaver-e10-asset-idle/references/source-manifest.json +193 -0
- package/skills/weaver-e10-asset-idle/references/widget-style.md +205 -0
- package/skills/weaver-e10-caizhilian/SKILL.md +29 -11
- package/skills/weaver-e10-caizhilian/references/auth-and-install.md +12 -0
- package/skills/weaver-e10-caizhilian/references/files.md +1 -1
- package/skills/weaver-e10-caizhilian/references/setting-encrypt.md +1 -1
- package/skills/weaver-e10-caizhilian/references/source-manifest.json +45 -45
- package/skills/weaver-e10-cowork/SKILL.md +2 -0
- package/skills/weaver-e10-jucailin/SKILL.md +2 -0
- package/skills/weaver-e10-jucailin/references/recruit-read.md +2 -0
- package/skills/weaver-e10-jucailin/references/recruit-write.md +1 -1
- package/skills/weaver-e10-mail/SKILL.md +3 -0
- package/skills/weaver-e10-shared/SKILL.md +5 -5
- package/skills/weaver-e10-shared/references/e10-auth-and-session.md +3 -3
- package/skills/weaver-e10-wenshuding/SKILL.md +29 -6
- package/skills/weaver-e10-wenshuding/references/archive-borrow-list.md +14 -0
- package/skills/weaver-e10-wenshuding/references/archive-download.md +2 -0
- package/skills/weaver-e10-wenshuding/references/archive-flow.md +1 -1
- package/skills/weaver-e10-wenshuding/references/archive-prelib-arrange.md +76 -0
- package/skills/weaver-e10-wenshuding/references/archive-prelib-list.md +107 -0
- package/skills/weaver-e10-wenshuding/references/archive-prelib-open.md +59 -0
- package/skills/weaver-e10-wenshuding/references/archive-upload.md +4 -1
- package/skills/weaver-e10-wenshuding/references/source-manifest.json +108 -65
- package/skills/weaver-e10-workflow/SKILL.md +5 -2
- package/skills/weaver-e10-workflow/aigroup/default.json +154 -19
- package/skills/weaver-e10-workflow/references/todo-smart-convert.md +59 -27
- package/skills/weaver-e10-workflow/tools/todo-serve.cjs +113 -25
- package/skills/weaver-e10-workflow/tools/todo-summary.cjs +292 -42
|
@@ -2,23 +2,24 @@
|
|
|
2
2
|
name: weaver-e10-caizhilian
|
|
3
3
|
display_name: 泛微E10采知连知识管理
|
|
4
4
|
display_name_en: Weaver E10 Document Management
|
|
5
|
-
description: "泛微E10
|
|
6
|
-
description_zh: "泛微E10
|
|
7
|
-
description_en: "Weaver E10
|
|
8
|
-
version: 1.1.
|
|
5
|
+
description: "泛微E10采知连知识管理:文档创建/搜索/编辑/比对、文件夹与权限共享、标签参与人、附件封面、文件采集与上传。当用户处理采知连/知识库的文档、文件夹、共享权限或附件时使用。"
|
|
6
|
+
description_zh: "泛微E10采知连知识管理:文档创建/搜索/编辑/比对、文件夹与权限共享、标签参与人、附件封面、文件采集与上传。当用户处理采知连/知识库的文档、文件夹、共享权限或附件时使用。"
|
|
7
|
+
description_en: "Weaver E10 caizhilian knowledge management: document create/search/edit/compare, folders and sharing permissions, tags and participants, attachments and covers, file collection and upload. Use this skill when the user works with caizhilian or knowledge-base documents, folders, sharing permissions, or attachments."
|
|
8
|
+
version: 1.1.42
|
|
9
9
|
author: 泛微网络科技股份有限公司
|
|
10
|
+
tags: [文档管理, 知识库, 泛微E10, document-management, knowledge-base]
|
|
10
11
|
agent_created: true
|
|
11
12
|
requires:
|
|
12
13
|
bins: ["weaver-work-cli"]
|
|
14
|
+
dependencies:
|
|
15
|
+
- weaver-e10-shared
|
|
13
16
|
cliHelp: "weaver-work-cli caizhilian --help"
|
|
17
|
+
compatibility: "需 Node.js >=18 与 npm 全局安装 weaver-work-cli;业务操作需可访问目标 E10 系统并完成登录;支持 Windows / macOS / Linux"
|
|
14
18
|
---
|
|
15
19
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
`<SKILLS_ROOT>` 取本 SKILL.md 所在目录的上一级绝对目录(即与本技能同级的 skills 根目录),不要省略 `--target-dir`——省略会装进默认目录,
|
|
20
|
-
导致本技能依然读不到共享规则。
|
|
21
|
-
命令均成功后重新读取共享规则;若环境中确实无法补齐共享规则,停止依赖登录态的业务操作,告知用户共享认证规则缺失;不要在业务 Skill 中猜测宿主或写死登录命令。
|
|
20
|
+
**开始前先做环境自检,首轮必须有产出**:先按 [`auth-and-install.md`](references/auth-and-install.md) 检查 `weaver-work-cli` 是否可用(`weaver-work-cli --version`),并按需执行 `weaver-work-cli caizhilian schema` / `caizhilian operations`(不依赖登录态,不发起业务请求);`caizhilian health` 需已有登录配置,未登录时返回认证错误属预期结果、如实转述即可。把能力目录或自检结论随首轮草案一并交付,见「首轮必有产出」。
|
|
21
|
+
本包的安装、认证、JSON 输出与高风险写入规则已完整沉淀在 [`auth-and-install.md`](references/auth-and-install.md) 与 [`write-protocol.md`](references/write-protocol.md),**不依赖任何包外技能**;同级目录若装有共享规则技能(weaver-e10-shared),可顺带读取作规则复核——它是可选增强,缺它也能跑,不存在或读取失败都直接按本包规则继续。
|
|
22
|
+
CLI 未安装时**不要空手终止、也不要擅自安装**:先把安装命令原样展示给用户(`npm install -g weaver-work-cli`,用户提供 registry 时加 `--registry "<用户提供的 registry 地址>"`),等用户明确确认后代为执行一次;确实无法补齐时,停止依赖登录态的业务操作,但仍交付「能力边界说明 + 安装/登录步骤 + 本任务执行草案」。不要在业务 Skill 中猜测宿主或写死登录命令。
|
|
22
23
|
**`--is-connector` 判据**:用户明确使用连接器、或上下文要求用连接器完成任务 → 传 `true`;本次任务或上下文直接选择单独技能 → 不传;用户没有明确说明时,按**正在运行的这份 Skill 是哪一级**定——**用户级(条目标 `(user)`)不传,连接器级(标 `(connector)`)传**(同名 Skill 只会运行用户级那一份)。
|
|
23
24
|
传 `true` 时不要再写 `--profile` / `--base-url`。
|
|
24
25
|
完整规则见 [`auth-and-install.md`](references/auth-and-install.md)。
|
|
@@ -39,6 +40,23 @@ Windows/PowerShell 下不要使用 `printf`、`$HOME/...`、`~/...`、bash 反
|
|
|
39
40
|
|
|
40
41
|
涉及附件、封面图片、正文文件、本地文件上传或下载落盘的操作,执行前必须提醒用户:文件内容可能被上传到 E10 采知连文档中心或文件服务器、下载内容会写入本地磁盘,并可能进入当前大模型上下文用于理解和处理;必须等待用户明确确认后才继续。
|
|
41
42
|
|
|
43
|
+
## 执行预算(最小动作集,避免冗余读取与重复调用)
|
|
44
|
+
|
|
45
|
+
- 同一轮已有新鲜查询结果时不重复查询同一列表或同一详情;`*.form` 的表单结构同轮内复用。
|
|
46
|
+
- 列表默认小页(`page_size=10`)且只查第一页;用户要求「继续」才翻页,不自动拉全量。
|
|
47
|
+
- 已拿到 `doc_id` / `folder_id` / `attachment_id` 或本地文件路径时直达对应操作,不默认走「search -> get -> form -> list -> prepare -> apply」全链路。
|
|
48
|
+
- 一次只跑一个文件上传/下载;reference 按需读取,不为同一件事连翻多个文件。
|
|
49
|
+
|
|
50
|
+
## 首轮必有产出(先给草案,再补信息)
|
|
51
|
+
|
|
52
|
+
用户一句话进来,第一轮回复必须包含产出物,不允许只回提问、只报依赖缺失或空手等待:
|
|
53
|
+
|
|
54
|
+
- **先给草案卡**:任务理解(对象 / 动作 / 范围 / 预期结果)+ 执行方案(准备走的处理链与关键取值)+「本卡假设(不符请改)」列出所用默认假设;能推断的按最稳默认直接写进草案,用户否决再改。
|
|
55
|
+
- **必问项 ≤3 且附在产出之后**:只问确实缺失、无默认值且影响动手的问题,一次问全;不要第一句先反问,不要挤牙膏式追问。
|
|
56
|
+
- **确认门只卡写操作落地**:查询、方案、草案与结果摘要直接交付,不设确认门;只有真正执行写操作(prepare → apply、上传、下载落盘)前才等用户明确确认。
|
|
57
|
+
- **环境缺失不等于零产出**:CLI 未装 / 未登录 / 规则缺失时,交付「能力边界说明 + 原样展示的安装与登录步骤 + 本任务执行草案」,按 [`auth-and-install.md`](references/auth-and-install.md) 执行。
|
|
58
|
+
- **无交互 / 无登录环境同样要有产出**:拿不到用户应答(自动化执行器、托管沙箱),或 CLI 未装、未登录、无 E10 环境时,首轮直接交付四件套:①环境自检结论(`--version` / `schema` / `operations` 的真实输出摘要;`health` 报认证错误属预期,原样转述)②能力目录摘要 ③本任务的分步执行方案——可直接复制执行的真实命令 + 参数模板 + 字段取值来源 ④前置条件清单(安装 CLI、提供登录域名、所需权限)。此环境下不等待确认,也不执行安装、登录与任何写操作——方案交付即为本轮产出;恢复交互后回到正常流程。
|
|
59
|
+
|
|
42
60
|
## 路由优先级(先判断是不是采知连文档中心,再选 operation)
|
|
43
61
|
|
|
44
62
|
采知连是 E10 的文档中心 / 知识库能力,不是通用网盘,也不是流程表单。**只要用户的核心对象是采知连文档、知识库文件夹、文档共享与权限、文档标签/参与人、文档附件与封面、文档比对,就优先使用 `weaver-e10-caizhilian`。**
|
|
@@ -195,7 +213,7 @@ Windows/PowerShell 下不要使用 `printf`、`$HOME/...`、`~/...`、bash 反
|
|
|
195
213
|
### 9) 先明确需求,再动手
|
|
196
214
|
|
|
197
215
|
- **动手前先确认理解一致**:对象、动作、范围、预期结果四个方面是否都清楚——清楚才动手。
|
|
198
|
-
-
|
|
216
|
+
- **分辨不清必须澄清**:需求含糊、可能有多种理解、信息不足时,把理解写成草案卡 + 假设清单向用户确认(见「首轮必有产出」),不要自己挑一种理解就执行。
|
|
199
217
|
- **一次问清**:需要澄清时把关键问题一次问全,不要挤牙膏式反复追问。
|
|
200
218
|
- **自检信号**:当你心里出现「用户应该是想要……」「这样应该也满足需求」「大概就是这个意思」时——停下,先确认,不要替用户拍板。
|
|
201
219
|
|
|
@@ -10,6 +10,8 @@
|
|
|
10
10
|
|
|
11
11
|
本 Skill 不自行发起 HTTP 请求、不搭建登录流程。安装检查、登录、Cookie 拼接、请求头注入全部由 `weaver-work-cli` 托管,Agent 只负责调用 CLI 并把结果转述给用户。
|
|
12
12
|
|
|
13
|
+
本文件是本包安装与认证规则的完整来源,不依赖任何包外技能;同级共享规则技能只作可选复核,缺失不影响执行。CLI 未安装或未登录时按 SKILL.md「首轮必有产出」交付能力边界说明、安装与登录步骤和任务执行草案,不要空手终止。
|
|
14
|
+
|
|
13
15
|
## 安装与可用性检查
|
|
14
16
|
|
|
15
17
|
```text
|
|
@@ -74,6 +76,16 @@ weaver-work-cli --version
|
|
|
74
76
|
- 权限错误时停止并如实报告,不自动加 `sudo`。
|
|
75
77
|
- 每条命令只执行一次;成功后用 `weaver-work-cli --version` 确认版本,再继续原业务操作。
|
|
76
78
|
|
|
79
|
+
## 无交互 / 无登录环境(自动化执行器、托管沙箱)
|
|
80
|
+
|
|
81
|
+
判定信号:宿主/会话没有用户应答通道(自动评测、无人值守执行器),或上文判定未安装且安装确认无人可问,或本地无登录配置。
|
|
82
|
+
|
|
83
|
+
1. 本地自检照常:`weaver-work-cli --version`(未装则跳过并记录)、`caizhilian schema`、`caizhilian operations`——二者不依赖登录态。
|
|
84
|
+
2. `caizhilian health` 或业务命令返回 `authentication/session_unavailable` 属预期结果:如实转述,不当作故障,也不重试。
|
|
85
|
+
3. **不等待确认,也不执行安装、登录与写操作**——「安装 / 登录域名 / 写操作必须用户确认」的红线不变。
|
|
86
|
+
4. 首轮交付四件套:环境自检结论、能力目录摘要、本任务分步执行方案(真实命令 + 参数模板 + 字段取值来源,取自本包 references,不编造)、前置条件清单(安装 CLI、提供登录域名、所需权限)。
|
|
87
|
+
5. 恢复用户应答后,回到「安装与可用性检查」「登录流程」的正常路径继续。
|
|
88
|
+
|
|
77
89
|
## 登录态判断
|
|
78
90
|
|
|
79
91
|
只允许通过 CLI 命令判断登录态:
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
|
|
22
22
|
- `upload` 是新增附件;`replace` 走源 `reUpload`,**保留原附件 ID**(旧文件版本被顶替),所以 `attachment_id` 与 `folder_id` 都是必填,必须先用 `caizhilian.document.get` 或 `caizhilian.compare.list-file-objects` 拿到真实附件 ID。
|
|
23
23
|
- `download` 的 `save_path` 可以是**完整文件路径**,也可以是以 `/` 或 `\` 结尾的**目录**(目录时文件名取自响应头 `content-disposition`,已过滤路径穿越字符)。
|
|
24
|
-
- 未传 `save_path`
|
|
24
|
+
- 未传 `save_path` 且默认下载目录配置为空时直接报 `no_save_path`(CLI 侧不提供默认目录),必须让用户给出保存位置。
|
|
25
25
|
- `download-as-pdf` 会先调 `/api/file/download/toPdf?fileId=<attachment_id>` 预检,服务端返回不支持时报 `pdf_not_supported`;支持时带 `downloadToPdf=true` 下载 PDF 版本。
|
|
26
26
|
- 下载单文件上限 **100MB**,超限报 `file_too_large`;下载/上传超时 **120 秒**(普通接口 12 秒)。
|
|
27
27
|
- 同名文件已存在时按源的 `rename` 策略自动改名为 `名称(1).扩展名`、`名称(2).扩展名`……**不覆盖**已有文件。
|
|
@@ -38,7 +38,7 @@ metadata:
|
|
|
38
38
|
|
|
39
39
|
## When to use
|
|
40
40
|
|
|
41
|
-
- 用户说"把加解密功能打开""
|
|
41
|
+
- 用户说"把加解密功能打开""把加解密软件地址改一下""场景切到上传下载均不处理"
|
|
42
42
|
"加密文件上传=1 加密"等
|
|
43
43
|
- 改 weapp 后台的"加解密设置"页(`<your-e10-domain>/info/fileSet/encryption`)
|
|
44
44
|
- 调试 eteams-file 后台加解密功能(华途 / 天锐绿盾 / 亿赛通)
|
|
@@ -6056,57 +6056,57 @@
|
|
|
6056
6056
|
}
|
|
6057
6057
|
],
|
|
6058
6058
|
"artifactBaseline": {
|
|
6059
|
-
"aggregateSha256": "
|
|
6059
|
+
"aggregateSha256": "9daa9ebc569f2f2ea9291e26e8b8ffd6ad553e4650e6480b6ea20311f4e0f90e",
|
|
6060
6060
|
"files": [
|
|
6061
6061
|
{
|
|
6062
6062
|
"path": "docs/_catalog.md",
|
|
6063
|
-
"size":
|
|
6064
|
-
"sha256": "
|
|
6063
|
+
"size": 5355,
|
|
6064
|
+
"sha256": "b980b43bc1c9dabfa9b5b6da0a6e0187357d4c4f73c6f80a141c0c317acc182b"
|
|
6065
6065
|
},
|
|
6066
6066
|
{
|
|
6067
6067
|
"path": "docs/caizhilian.md",
|
|
6068
|
-
"size":
|
|
6069
|
-
"sha256": "
|
|
6068
|
+
"size": 26779,
|
|
6069
|
+
"sha256": "011b212cca9c6214cccb2dfc81043cb90b831b86078903e49f6cb3e87ff6ecc3"
|
|
6070
6070
|
},
|
|
6071
6071
|
{
|
|
6072
6072
|
"path": "skill-template/business-info.json",
|
|
6073
|
-
"size":
|
|
6074
|
-
"sha256": "
|
|
6073
|
+
"size": 8592,
|
|
6074
|
+
"sha256": "06f4c239dfcd50f0be1febb00b663e962064a4d2c19193632957fdf5ef85d39a"
|
|
6075
6075
|
},
|
|
6076
6076
|
{
|
|
6077
6077
|
"path": "skill-template/domains/caizhilian.md",
|
|
6078
|
-
"size":
|
|
6079
|
-
"sha256": "
|
|
6078
|
+
"size": 3575,
|
|
6079
|
+
"sha256": "9468ab0220d55c0c8efbd9bdeb1dec65656611e8e363fbb61708680e0f43f3a1"
|
|
6080
6080
|
},
|
|
6081
6081
|
{
|
|
6082
6082
|
"path": "skills/weaver-e10-caizhilian/references/agent-entry.md",
|
|
6083
|
-
"size":
|
|
6084
|
-
"sha256": "
|
|
6083
|
+
"size": 8917,
|
|
6084
|
+
"sha256": "cc733e3906938553fc9af92887f73f8c0a87211c2bb06a225f48703f86f9516d"
|
|
6085
6085
|
},
|
|
6086
6086
|
{
|
|
6087
6087
|
"path": "skills/weaver-e10-caizhilian/references/collaboration.md",
|
|
6088
|
-
"size":
|
|
6089
|
-
"sha256": "
|
|
6088
|
+
"size": 9836,
|
|
6089
|
+
"sha256": "74b2695da815994a12ec98d01b0317500b22713486779b760478ba608e740d25"
|
|
6090
6090
|
},
|
|
6091
6091
|
{
|
|
6092
6092
|
"path": "skills/weaver-e10-caizhilian/references/document.md",
|
|
6093
|
-
"size":
|
|
6094
|
-
"sha256": "
|
|
6093
|
+
"size": 12651,
|
|
6094
|
+
"sha256": "d825ec32e0239eb624df0d12f0aed6d9b1bcc61c86930e093eb5e8b0fd7a3f93"
|
|
6095
6095
|
},
|
|
6096
6096
|
{
|
|
6097
6097
|
"path": "skills/weaver-e10-caizhilian/references/file-upload.md",
|
|
6098
|
-
"size":
|
|
6099
|
-
"sha256": "
|
|
6098
|
+
"size": 8148,
|
|
6099
|
+
"sha256": "642ac8243797099a0d25f250002bcc920cb4c00b696a6f3cfef0d5af01ad939b"
|
|
6100
6100
|
},
|
|
6101
6101
|
{
|
|
6102
6102
|
"path": "skills/weaver-e10-caizhilian/references/files.md",
|
|
6103
|
-
"size":
|
|
6104
|
-
"sha256": "
|
|
6103
|
+
"size": 13266,
|
|
6104
|
+
"sha256": "c6f2bf50dc907cd70beef5652bf5f508099f9d0b1c8fc28a8b138d195ea85a21"
|
|
6105
6105
|
},
|
|
6106
6106
|
{
|
|
6107
6107
|
"path": "skills/weaver-e10-caizhilian/references/folder.md",
|
|
6108
|
-
"size":
|
|
6109
|
-
"sha256": "
|
|
6108
|
+
"size": 20487,
|
|
6109
|
+
"sha256": "4635473c58785dda2abf0613a40b27a99073b749e44600d9638a935be1e1a8ff"
|
|
6110
6110
|
},
|
|
6111
6111
|
{
|
|
6112
6112
|
"path": "skills/weaver-e10-caizhilian/references/org-browser.md",
|
|
@@ -6120,18 +6120,18 @@
|
|
|
6120
6120
|
},
|
|
6121
6121
|
{
|
|
6122
6122
|
"path": "skills/weaver-e10-caizhilian/references/write-protocol.md",
|
|
6123
|
-
"size":
|
|
6124
|
-
"sha256": "
|
|
6123
|
+
"size": 10704,
|
|
6124
|
+
"sha256": "6f47273ed588ebaa82e2efc1b4afcdb4b4775be2ae30df97a5664719ac691911"
|
|
6125
6125
|
},
|
|
6126
6126
|
{
|
|
6127
6127
|
"path": "skills/weaver-e10-caizhilian/SKILL.md",
|
|
6128
|
-
"size":
|
|
6129
|
-
"sha256": "
|
|
6128
|
+
"size": 34205,
|
|
6129
|
+
"sha256": "5d4403aacf845b0aa73266be007015f9c1e9109edb9c93408f78ee8efaae2fed"
|
|
6130
6130
|
},
|
|
6131
6131
|
{
|
|
6132
6132
|
"path": "src/internal/e10/request-runtime.ts",
|
|
6133
|
-
"size":
|
|
6134
|
-
"sha256": "
|
|
6133
|
+
"size": 19854,
|
|
6134
|
+
"sha256": "cb58d21cdc018d027b5c13b1e5cfd4befa8a3e466e8c60fcff41852bc1047982"
|
|
6135
6135
|
},
|
|
6136
6136
|
{
|
|
6137
6137
|
"path": "src/shortcuts/caizhilian/continuation.ts",
|
|
@@ -6165,8 +6165,8 @@
|
|
|
6165
6165
|
},
|
|
6166
6166
|
{
|
|
6167
6167
|
"path": "src/shortcuts/caizhilian/host.ts",
|
|
6168
|
-
"size":
|
|
6169
|
-
"sha256": "
|
|
6168
|
+
"size": 11801,
|
|
6169
|
+
"sha256": "000fa19a7527a1238bfb05c1cd0bae8406dba406d6a654173a5979119fbb17ae"
|
|
6170
6170
|
},
|
|
6171
6171
|
{
|
|
6172
6172
|
"path": "src/shortcuts/caizhilian/index.ts",
|
|
@@ -6175,8 +6175,8 @@
|
|
|
6175
6175
|
},
|
|
6176
6176
|
{
|
|
6177
6177
|
"path": "src/shortcuts/caizhilian/manifest.ts",
|
|
6178
|
-
"size":
|
|
6179
|
-
"sha256": "
|
|
6178
|
+
"size": 2660,
|
|
6179
|
+
"sha256": "0a8d1bc549e5890f7e4c0c3fec694f4e7147d6e28ef67e2779b0c8a22b150d69"
|
|
6180
6180
|
},
|
|
6181
6181
|
{
|
|
6182
6182
|
"path": "src/shortcuts/caizhilian/operations.ts",
|
|
@@ -6220,8 +6220,8 @@
|
|
|
6220
6220
|
},
|
|
6221
6221
|
{
|
|
6222
6222
|
"path": "src/shortcuts/caizhilian/operations/handlers/fileops.ts",
|
|
6223
|
-
"size":
|
|
6224
|
-
"sha256": "
|
|
6223
|
+
"size": 30889,
|
|
6224
|
+
"sha256": "6607f1b658e124a57858b07e29a902a137edcf15416113fc6784eddb2eeed811"
|
|
6225
6225
|
},
|
|
6226
6226
|
{
|
|
6227
6227
|
"path": "src/shortcuts/caizhilian/operations/handlers/folder.ts",
|
|
@@ -6245,13 +6245,13 @@
|
|
|
6245
6245
|
},
|
|
6246
6246
|
{
|
|
6247
6247
|
"path": "src/shortcuts/caizhilian/operations/shared.ts",
|
|
6248
|
-
"size":
|
|
6249
|
-
"sha256": "
|
|
6248
|
+
"size": 19527,
|
|
6249
|
+
"sha256": "04262196e9a9ca6f433cf516f7a3c9b800ef5153acf483d042ffcf9ab5d530aa"
|
|
6250
6250
|
},
|
|
6251
6251
|
{
|
|
6252
6252
|
"path": "src/shortcuts/caizhilian/operations/specs.ts",
|
|
6253
|
-
"size":
|
|
6254
|
-
"sha256": "
|
|
6253
|
+
"size": 47492,
|
|
6254
|
+
"sha256": "9b06a4016c3114c3fee0d9a29a8ad0f88fc0efa0c6f54949442fc525b58574d2"
|
|
6255
6255
|
},
|
|
6256
6256
|
{
|
|
6257
6257
|
"path": "src/shortcuts/caizhilian/operations/types.ts",
|
|
@@ -6260,28 +6260,28 @@
|
|
|
6260
6260
|
},
|
|
6261
6261
|
{
|
|
6262
6262
|
"path": "src/shortcuts/index.ts",
|
|
6263
|
-
"size":
|
|
6264
|
-
"sha256": "
|
|
6263
|
+
"size": 1500,
|
|
6264
|
+
"sha256": "fe10e9918df3c47bf9038298df7c7d590c74cc3de62fce173f6f610938ae9090"
|
|
6265
6265
|
},
|
|
6266
6266
|
{
|
|
6267
6267
|
"path": "test/business/caizhilian-command.test.ts",
|
|
6268
6268
|
"size": 3836,
|
|
6269
|
-
"sha256": "
|
|
6269
|
+
"sha256": "3e92a7f26748d25a3230497aa1ab3b94b6aaaf06b16114775633dc8cb3cd2d6b"
|
|
6270
6270
|
},
|
|
6271
6271
|
{
|
|
6272
6272
|
"path": "test/business/caizhilian-file-upload.test.ts",
|
|
6273
|
-
"size":
|
|
6274
|
-
"sha256": "
|
|
6273
|
+
"size": 18269,
|
|
6274
|
+
"sha256": "b7fc967a6f590ca722b8e26d9f666695974f882001629feacb6c428ccb1ed50b"
|
|
6275
6275
|
},
|
|
6276
6276
|
{
|
|
6277
6277
|
"path": "test/business/caizhilian-operations.test.ts",
|
|
6278
|
-
"size":
|
|
6279
|
-
"sha256": "
|
|
6278
|
+
"size": 42970,
|
|
6279
|
+
"sha256": "b6e079743201f14c27ef48315091a49f53d11cbc23c00a84b806e77e67586237"
|
|
6280
6280
|
},
|
|
6281
6281
|
{
|
|
6282
6282
|
"path": "test/business/caizhilian-source-manifest.test.ts",
|
|
6283
6283
|
"size": 9659,
|
|
6284
|
-
"sha256": "
|
|
6284
|
+
"sha256": "100cb5cf4b037f5e252465bd8e7f8293336e073ceba570d8934b5bce3199f085"
|
|
6285
6285
|
}
|
|
6286
6286
|
]
|
|
6287
6287
|
},
|
|
@@ -21,6 +21,8 @@ cliHelp: "weaver-work-cli cowork --help"
|
|
|
21
21
|
**CRITICAL — 开始前 MUST 先用 Read 工具读取 [`../weaver-e10-shared/SKILL.md`](../weaver-e10-shared/SKILL.md),其中包含安装、E10 认证、JSON 输出和高风险写入规则。若共享规则不存在、CLI 未安装或读取失败,说明本技能的必需依赖缺失,必须调用宿主提供的提问/确认弹框,向用户说明必须补齐 `weaver-work-cli` 与共享 skill `weaver-e10-shared`(不补齐本技能无法执行)及补齐计划,并把下面两条待执行命令原样完整展示在确认信息中;Agent 不能在未确认时自行安装。用户明确确认后,Agent 必须直接代为按顺序执行且每条仅执行一次,不得要求或引导用户手动执行:① 缺 CLI 时执行 `npm install -g weaver-work-cli`;② 再执行 `weaver-work-cli skills install shared --target-dir <SKILLS_ROOT>` 装回共享 skill,`<SKILLS_ROOT>` 取本 SKILL.md 所在目录的上一级绝对目录(即与本技能同级的 skills 根目录),不要省略 `--target-dir`——省略会装进默认目录,导致本技能依然读不到共享规则。命令均成功后重新读取共享规则;仍读不到就停止并把结果报告用户,不得凭猜测继续。**
|
|
22
22
|
**`--is-connector` 判据**:用户明确使用连接器、或上下文要求用连接器完成任务 → 传 `true`;本次任务或上下文直接选择单独技能 → 不传;用户没有明确说明时,按**正在运行的这份 Skill 是哪一级**定——**用户级(条目标 `(user)`)不传,连接器级(标 `(connector)`)传**(同名 Skill 只会运行用户级那一份)。传 `true` 时不要再写 `--profile` / `--base-url`。完整规则见 [`../weaver-e10-shared/SKILL.md`](../weaver-e10-shared/SKILL.md)。
|
|
23
23
|
|
|
24
|
+
**共享规则定位与回退(发布包已裁 shared 时必须走此回退,不得直接判定依赖缺失)**:先读 `../weaver-e10-shared/SKILL.md`;该相对路径不存在时,按以下顺序回退定位,命中即读并继续任务,不要中断:① 与本技能目录同级的 `weaver-e10-shared/SKILL.md`(即 skills 根目录下);② weaver-work-cli 安装根下的 `node_modules/weaver-work-cli/skills/weaver-e10-shared/SKILL.md`(安装根可用 `npm root -g` 定位,或从 weaver-work-cli 可执行文件所在目录向上查找 `node_modules`);③ 本机其他已安装位置的 `skills/weaver-e10-shared/SKILL.md`。以上三条均取不到,才判定依赖缺失并进入下述确认流程。
|
|
25
|
+
|
|
24
26
|
# 泛微 E10 协作区
|
|
25
27
|
|
|
26
28
|
## 概述
|
|
@@ -23,6 +23,8 @@ cliHelp: "weaver-work-cli ehr --help"
|
|
|
23
23
|
**CRITICAL — 开始前 MUST 先用 Read 工具读取 [`../weaver-e10-shared/SKILL.md`](../weaver-e10-shared/SKILL.md),其中包含安装、E10 认证、JSON 输出和高风险写入规则。若共享规则不存在、CLI 未安装或读取失败,说明本技能的必需依赖缺失,必须调用宿主提供的提问/确认弹框,向用户说明必须补齐 `weaver-work-cli` 与共享 skill `weaver-e10-shared`(不补齐本技能无法执行)及补齐计划,并把下面两条待执行命令原样完整展示在确认信息中;Agent 不能在未确认时自行安装。用户明确确认后,Agent 必须直接代为按顺序执行且每条仅执行一次,不得要求或引导用户手动执行:① 缺 CLI 时执行 `npm install -g weaver-work-cli`;② 再执行 `weaver-work-cli skills install shared --target-dir <SKILLS_ROOT>` 装回共享 skill,`<SKILLS_ROOT>` 取本 SKILL.md 所在目录的上一级绝对目录(即与本技能同级的 skills 根目录),不要省略 `--target-dir`——省略会装进默认目录,导致本技能依然读不到共享规则。命令均成功后重新读取共享规则;仍读不到就停止并把结果报告用户,不得凭猜测继续。**
|
|
24
24
|
**`--is-connector` 判据**:用户明确使用连接器、或上下文要求用连接器完成任务 → 传 `true`;本次任务或上下文直接选择单独技能 → 不传;用户没有明确说明时,按**正在运行的这份 Skill 是哪一级**定——**用户级(条目标 `(user)`)不传,连接器级(标 `(connector)`)传**(同名 Skill 只会运行用户级那一份)。传 `true` 时不要再写 `--profile` / `--base-url`。完整规则见 [`../weaver-e10-shared/SKILL.md`](../weaver-e10-shared/SKILL.md)。
|
|
25
25
|
|
|
26
|
+
**共享规则定位与回退(发布包已裁 shared 时必须走此回退,不得直接判定依赖缺失)**:先读 `../weaver-e10-shared/SKILL.md`;该相对路径不存在时,按以下顺序回退定位,命中即读并继续任务,不要中断:① 与本技能目录同级的 `weaver-e10-shared/SKILL.md`(即 skills 根目录下);② weaver-work-cli 安装根下的 `node_modules/weaver-work-cli/skills/weaver-e10-shared/SKILL.md`(安装根可用 `npm root -g` 定位,或从 weaver-work-cli 可执行文件所在目录向上查找 `node_modules`);③ 本机其他已安装位置的 `skills/weaver-e10-shared/SKILL.md`。以上三条均取不到,才判定依赖缺失并进入下述确认流程。
|
|
27
|
+
|
|
26
28
|
本技能覆盖聚才林业务域:**人事档案(hr)**、**出勤管理(attend)**、**薪酬管理(salary)**、**招聘(recruit,读 + 写)**。招聘写操作走 prepare→apply 确认协议;撤销类写操作不实现,原因见 [`references/safety-boundaries.md`](references/safety-boundaries.md)。
|
|
27
29
|
|
|
28
30
|
## 命令入口
|
|
@@ -97,5 +97,7 @@ weaver-work-cli --json ehr run ehr.recruit.interview.feedbackTodo --input-json '
|
|
|
97
97
|
「AI 面试结束时间已过 且(有录像附件 或 已开始录制)且 反馈结果为空」——「待反馈」本身就等于
|
|
98
98
|
「已完成 + 有视频 + 未填意见」。`video_url_info` 是「视频面试地址」(HR 手填的会议链接),与录像无关。
|
|
99
99
|
|
|
100
|
+
**截断可见性(强制)**:本接口靠客户端翻页后筛选,`maxPages`(默认 5)× `pageSize`(默认 200)之外的数据不会被扫到。回答前必须先判断是否可能被截断——只要出现下列任一情况即判定可能截断:`scanned` 已达 `maxPages`×`pageSize` 上限、`note` 提示需加大 `maxPages`、或命中数接近扫描上限。判定可能截断时**必须**在回答中写明「本次仅扫描 N 条,可能仍有未覆盖的待反馈记录,可指定更大 maxPages 继续查」,**禁止把可能不完整的清单当作全量结果交付**;确认未截断时无需提示。
|
|
101
|
+
|
|
100
102
|
**时效性**:状态由 E10 调度任务定时同步,刚结束的面试可能有几分钟延迟;回答时要说明「以系统状态为准」。
|
|
101
103
|
**下一步**:用户确认要评价某人后,用 `ehr.recruit.candidate.interview.feedback.edit.prepare` 提交反馈(写操作,需确认)。
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
2. `apply` 入参 = prepare 相同业务参数 + `confirm: true` + `continuation`。**apply 会校验指纹**:业务参数与 prepare 快照不一致时报 `target_changed`,须重新 prepare。
|
|
28
28
|
3. continuation 与当前 CLI 登录环境绑定(由 `weaver-work-cli auth` 托管),切换租户或账号后报 `context_mismatch`,此时须重新 prepare。登录与认证细节见共享规则 [`../../weaver-e10-shared/SKILL.md`](../../weaver-e10-shared/SKILL.md)。
|
|
29
29
|
4. 多步写入(saveFormData → initTalentBatch / sendOffer / saveEstPreEntry / runEsb)中途网络中断时报 `partial/write_uncertain` 并给出已落地的记录 id——**禁止自动重试**,先按提示回查(`candidate.search` / `candidate.card`)确认实际状态。
|
|
30
|
-
5. prepare 与 apply 应连续执行。`arrange` 默认时间窗取「当前时刻」,间隔跨分钟后指纹不一致会报 `target_changed
|
|
30
|
+
5. prepare 与 apply 应连续执行。`arrange` 默认时间窗取「当前时刻」,间隔跨分钟后指纹不一致会报 `target_changed`。**因此 `arrange` 必须显式传 `startTime`/`endTime`(格式 `YYYY-MM-DD HH:mm`)**:用户给了时间就用用户时间;用户没给时按默认值(当前整分钟起 + 该环境默认时长)显式写入这两项,不要省略交给服务端取实时值。这样即使用户看摘要超过 1 分钟再确认,apply 也不会误报 `target_changed`。若显式传参后仍报 `target_changed`,说明业务参数被改动,必须重新 prepare 并重新确认,不要重试原 apply。
|
|
31
31
|
|
|
32
32
|
## 参数要点
|
|
33
33
|
|
|
@@ -21,6 +21,8 @@ cliHelp: "weaver-work-cli mail --help"
|
|
|
21
21
|
**CRITICAL — 开始前 MUST 先用 Read 工具读取 [`../weaver-e10-shared/SKILL.md`](../weaver-e10-shared/SKILL.md),其中包含安装、E10 认证、JSON 输出和高风险写入规则。若共享规则不存在、CLI 未安装或读取失败,说明本技能的必需依赖缺失,必须调用宿主提供的提问/确认弹框,向用户说明必须补齐 `weaver-work-cli` 与共享 skill `weaver-e10-shared`(不补齐本技能无法执行)及补齐计划,并把下面两条待执行命令原样完整展示在确认信息中;Agent 不能在未确认时自行安装。用户明确确认后,Agent 必须直接代为按顺序执行且每条仅执行一次,不得要求或引导用户手动执行:① 缺 CLI 时执行 `npm install -g weaver-work-cli`;② 再执行 `weaver-work-cli skills install shared --target-dir <SKILLS_ROOT>` 装回共享 skill,`<SKILLS_ROOT>` 取本 SKILL.md 所在目录的上一级绝对目录(即与本技能同级的 skills 根目录),不要省略 `--target-dir`——省略会装进默认目录,导致本技能依然读不到共享规则。命令均成功后重新读取共享规则;仍读不到就停止并把结果报告用户,不得凭猜测继续。**
|
|
22
22
|
**`--is-connector` 判据**:用户明确使用连接器、或上下文要求用连接器完成任务 → 传 `true`;本次任务或上下文直接选择单独技能 → 不传;用户没有明确说明时,按**正在运行的这份 Skill 是哪一级**定——**用户级(条目标 `(user)`)不传,连接器级(标 `(connector)`)传**(同名 Skill 只会运行用户级那一份)。传 `true` 时不要再写 `--profile` / `--base-url`。完整规则见 [`../weaver-e10-shared/SKILL.md`](../weaver-e10-shared/SKILL.md)。
|
|
23
23
|
|
|
24
|
+
**共享规则定位与回退(发布包已裁 shared 时必须走此回退,不得直接判定依赖缺失)**:先读 `../weaver-e10-shared/SKILL.md`;该相对路径不存在时,按以下顺序回退定位,命中即读并继续任务,不要中断:① 与本技能目录同级的 `weaver-e10-shared/SKILL.md`(即 skills 根目录下);② weaver-work-cli 安装根下的 `node_modules/weaver-work-cli/skills/weaver-e10-shared/SKILL.md`(安装根可用 `npm root -g` 定位,或从 weaver-work-cli 可执行文件所在目录向上查找 `node_modules`);③ 本机其他已安装位置的 `skills/weaver-e10-shared/SKILL.md`。以上三条均取不到,才判定依赖缺失并进入下述确认流程。
|
|
25
|
+
|
|
24
26
|
认证和登录态只能按共享规则通过 `weaver-work-cli auth ...` 命令判断;禁止直接读取、列出、打印或解析用户主目录下的旧 `.e10-cli`、auth、config 或 Keychain 数据。
|
|
25
27
|
所有命令通过 `weaver-work-cli --json mail run <operation>` 执行:简单 JSON 优先传 `--input-json '<json>'`,复杂或多行 JSON 先写入 UTF-8 文件再传 `--input <path>`,只有确认当前 shell 能稳定传管道时才使用 `--input -`。调用前先按需读取 references 下对应的文件,查参数结构,不要猜字段;**references 是第一信息源**,`weaver-work-cli mail schema` 是 operation、字段和风险等级的合约来源。
|
|
26
28
|
命令示例、提示词和临时说明必须同时兼容 Windows 和 macOS/Linux;涉及 JSON 输入、用户目录、路径分隔符、Python 启动器、文件删除、目录查看或文件比对时,同时给 Windows PowerShell 与 macOS/Linux(bash/zsh)两套示例。Agent 先根据当前系统和 shell 选择对应示例,不确定时用 `node -p "process.platform"` 判断。Windows/PowerShell 下不要使用 `printf`、`$HOME/...`、`~/...`、bash 反斜杠续行、`rm/ls/diff/python3` 等 Unix-only 写法。
|
|
@@ -101,6 +103,7 @@ cliHelp: "weaver-work-cli mail --help"
|
|
|
101
103
|
- 已拿到邮件 id、联系人 id、模板 id、签名 id、附件 id 或本地文件路径时,优先调用对应 operation
|
|
102
104
|
- 同一轮里如果已有足够的新鲜查询结果,不要重复查询同一列表或同一详情
|
|
103
105
|
- 不要默认走 `list -> filter -> view -> prepare -> apply` 全链路;对象已明确时应压缩步骤
|
|
106
|
+
- **写操作已按风险分级,不要给单步命令强加双段确认**:`mail.star` / `mail.read.status` / `mail.read.all` / `mail.wait.add` / `mail.move.folder` / `mail.delete.move` / `mail.folder.create` / `mail.folder.delete` / `mail.recall` 都是单条命令,一步执行即可,不要再套 `prepare`→`apply`。仅 `mail.send.*`、`mail.contacts.save.*`、`mail.template.save.*`、`mail.sign.save.*`、`mail.blacklist.operate.*` 走双段确认。
|
|
104
107
|
|
|
105
108
|
### 3) 错误语义驱动,而不是盲目重试
|
|
106
109
|
|
|
@@ -53,7 +53,7 @@ XiaoE 环境有两种识别入口:桌面客户端由 Agent 根据宿主或任
|
|
|
53
53
|
- 工作目录名含 `xiaoeUserData`、使用 XiaoE 内置 Node.js,或已安装相关 CLI;
|
|
54
54
|
- 过去在同一台机器上登录或安装过 XiaoE。
|
|
55
55
|
|
|
56
|
-
桌面客户端首次没有本地会话时,Agent 判定为 XiaoE
|
|
56
|
+
桌面客户端首次没有本地会话时,Agent 判定为 XiaoE 后可显式执行 `weaver-work-cli auth xiaoe`,或通过 `--runtime-agent xiaoe` 标识宿主,让业务命令在加载会话时自动获取登录信息,例如 `weaver-work-cli --runtime-agent xiaoe workflow ...`;网页端已有 `XIAOE_*` 标记时自动识别。已保存的 XiaoE 会话过期恢复不依赖这个参数,也不依赖 Skill 或 Agent:CLI 会根据会话内的 `agentType` / `loginSource` 在公共请求层自行处理。`--runtime-agent` 表示运行时身份,不携带凭据。
|
|
57
57
|
|
|
58
58
|
WorkBuddy、Codex 及其他智能体一律使用 `weaver-work-cli auth login --base-url "<用户确认的登录域名>" --agent_type "<当前智能体名称>"` 走浏览器 OAuth。`auth login` / `auth oidc` 不会读取或消费 XiaoE 凭据。
|
|
59
59
|
|
|
@@ -67,9 +67,9 @@ Token、Cookie、ETEAMSID 和业务凭证**只能由 `weaver-work-cli` 内部读
|
|
|
67
67
|
|
|
68
68
|
下述 `auth xiaoe` 流程仅适用于上述已确认的 XiaoE 智能体环境;其他智能体不执行宿主脚本检测,直接进入浏览器 OAuth 流程。`auth xiaoe` 命令本身就是认证方式的显式选择;`hasXiaoEEnv` 使用桌面的 `--runtime-agent xiaoe` 或任意 `XIAOE_*` 环境变量识别运行环境。
|
|
69
69
|
|
|
70
|
-
|
|
70
|
+
首次缺少本地会话时,已识别为 XiaoE 的业务命令会在 CLI 公共会话加载层自动获取登录信息;如需提前登录,只运行 `weaver-work-cli auth xiaoe`。CLI 内部按「平台凭证 Node 换票 → CLI 自带 `xiaoe_env.py` 兼容换票 → 宿主 `tokens.py` → 桌面 XiaoE 客户端会话 → `WEAVER_XIAOE_*` 环境映射」顺序取凭据;其中 `XIAOE_DOMAIN` 是 XiaoE/erpa 换票服务地址,不是 E10 地址。`xiaoe_env.py` 属于 CLI npm 包,不放入 shared Skill,且只能由 CLI 内部执行和解析。已有 XiaoE 会话被接口明确拒绝为失效时,CLI 根据会话元数据在公共请求层静默恢复并重放一次;这个流程绕开 shared Skill,Agent 不参与,也不得再补跑登录或原业务命令。失败时 CLI 返回最终结构化错误。
|
|
71
71
|
|
|
72
|
-
1.
|
|
72
|
+
1. 首次无本地登录态、需要在业务命令之前显式建立 E10 会话时,可运行:
|
|
73
73
|
```text
|
|
74
74
|
weaver-work-cli auth xiaoe
|
|
75
75
|
```
|
|
@@ -77,7 +77,7 @@ Token、Cookie、ETEAMSID 和业务凭证**只能由 `weaver-work-cli` 内部读
|
|
|
77
77
|
3. XiaoE 统一登录由 CLI 按序取凭证:① 平台注入的 `XIAOE_USER_TOKEN` + `XIAOE_DOMAIN`,先走 Node 换票,再由 CLI npm 包自带的标准库 `xiaoe_env.py` 作兼容回退;② 宿主 `xiaoeUserData/tokens.py`(仅桌面宿主,CLI 在 macOS/Windows 都会先自动发现 XiaoE 客户端内置 Python,再回退到系统 Python);③ 内置原生实现读取桌面 XiaoE 客户端会话换取 `eteamId`,依次查找 `XIAOE_USER_SETTINGS_PATH`、`XIAOE_ROBOT_DATA_ROOT` / `XIAOE_ROBOT_ROOT` 和默认 `XiaoE/Robots/<id>/user_settings.json`,因此会话有效时不要求存在 `tokens.py`;④ `WEAVER_XIAOE_*` 环境映射。宿主只注入 `XIAOE_DOMAIN`、`XIAOE_USER_TOKEN` 等平台变量,不会注入 ETEAMSID 环境变量,CLI 也不读取 `XIAOE_ETEAMSID`。Agent 不要打印、转述、索取或要求用户手动设置这些凭证,也不要直接执行任一脚本或因为脚本报缺依赖就让用户安装 Python 包——凭据链内部的兼容回退由 CLI 完成。
|
|
78
78
|
4. `auth xiaoe` 是 XiaoE 认证方式的显式入口:CLI 不再判断当前宿主,只检查并消费可用凭据源。E10 目标地址按「显式 `--base-url` → 专用 `WEAVER_XIAOE_*` E10 配置/映射 → 当前 profile → CLI 内置默认值」解析,绝不能把 `XIAOE_DOMAIN` 当作 E10 地址。Token、Cookie、ETEAMSID 仍属于凭证,禁止在回复中展示。
|
|
79
79
|
5. XiaoE 统一登录走不通时,无论 macOS、Windows、Linux 或 Web,CLI 都返回 `authentication/xiaoe_credential_unavailable`,绝不自动打开浏览器或降级到 `auth login`;本任务必须停止,不得另行调用其他登录 Skill 或登录命令。
|
|
80
|
-
6. `auth status --no-check` 不会触发 XiaoE 统一登录;业务命令加载到 `agentType=XiaoE` 或 `loginSource=xiaoe-unified` 的会话并被 E10 明确拒绝为失效时,即使没有 `XIAOE_*` 或 `--runtime-agent xiaoe
|
|
80
|
+
6. `auth status --no-check` 不会触发 XiaoE 统一登录;业务命令加载到 `agentType=XiaoE` 或 `loginSource=xiaoe-unified` 的会话并被 E10 明确拒绝为失效时,即使没有 `XIAOE_*` 或 `--runtime-agent xiaoe`,也会静默触发一次统一登录并重放该请求一次。无可读取的本地会话时,则需要当前 `XIAOE_*` 或 `--runtime-agent xiaoe` 等宿主标记才能自动获取;显式 `--auth` 不触发自动替换。具体读取 [`e10-auth-and-session.md`](references/e10-auth-and-session.md)。
|
|
81
81
|
|
|
82
82
|
### 认证错误只报告状态,不指定登录命令
|
|
83
83
|
|
|
@@ -202,4 +202,4 @@ User-Agent: AgentType=<agentType>,IsAgent=true
|
|
|
202
202
|
|
|
203
203
|
7. 附件、图片上传或文件解析属于敏感数据处理。即便 operation 风险等级不是高风险写入,也必须先取得用户对“文件内容可能进入大模型/外部解析服务”的明确确认;不能把用户仅提供文件路径或文件名视为同意解析或上传。
|
|
204
204
|
|
|
205
|
-
8. Agent 明确选择 `auth xiaoe`
|
|
205
|
+
8. Agent 明确选择 `auth xiaoe` 后,或业务命令在已识别的 XiaoE 运行时发现本地会话缺失时,CLI 按顺序从平台注入凭证(Node 换票后由 CLI npm 包自带 `xiaoe_env.py` 兼容回退)、宿主 `xiaoeUserData/tokens.py`、内置原生实现读取的桌面 XiaoE 客户端会话(宿主注入路径优先、默认 `XiaoE/Robots/<id>/user_settings.json` 回退)、`WEAVER_XIAOE_*` 环境映射读取支持统一登录的凭证。已有会话被接口明确拒绝时会根据持久化会话的 `agentType` / `loginSource` 静默恢复 1 次,不要求 Agent 添加 `--runtime-agent xiaoe`。不要要求用户提供、展示或手动设置这些凭证。任意系统失败时都反馈结构化错误,不自动降级浏览器。
|
|
@@ -29,7 +29,7 @@ weaver-work-cli auth whoami
|
|
|
29
29
|
- 业务命令失败,stderr JSON 中 `error.type === "authentication"`(如 `E10 auth not found`)
|
|
30
30
|
- 业务命令返回 `error.subtype === "session_expired"`(E10 登录态 401/302 失效)
|
|
31
31
|
|
|
32
|
-
CLI 的认证错误只是状态信号,不是登录命令。已有 XiaoE 会话过期时,公共请求层会根据持久化会话的 `agentType` / `loginSource` 自动恢复,不依赖 `XIAOE_*`、`--runtime-agent xiaoe`、shared Skill 或 Agent
|
|
32
|
+
CLI 的认证错误只是状态信号,不是登录命令。已有 XiaoE 会话过期时,公共请求层会根据持久化会话的 `agentType` / `loginSource` 自动恢复,不依赖 `XIAOE_*`、`--runtime-agent xiaoe`、shared Skill 或 Agent。业务命令无可读取的本地会话时,若当前 `XIAOE_*`、`--runtime-agent xiaoe` 等标记已识别为 XiaoE,公共会话加载层也会先静默获取登录信息。失败时返回 `xiaoe_credential_unavailable`,提示已尝试自动获取,Agent 只反馈并停止;不要再次登录或重跑。需要在业务命令之前主动建立会话时,可按下述流程显式登录。
|
|
33
33
|
|
|
34
34
|
此时**禁止**:
|
|
35
35
|
|
|
@@ -40,12 +40,12 @@ CLI 的认证错误只是状态信号,不是登录命令。已有 XiaoE 会话
|
|
|
40
40
|
|
|
41
41
|
**正确流程(按序执行,缺一不可):**
|
|
42
42
|
|
|
43
|
-
0.
|
|
43
|
+
0. **首次无本地会话且需要提前登录时,由 XiaoE 智能体环境显式选择统一登录**:桌面端宿主/任务上下文明确标识为 XiaoE,或网页端命中原有环境变量判断时,才运行:
|
|
44
44
|
```text
|
|
45
45
|
weaver-work-cli auth xiaoe
|
|
46
46
|
```
|
|
47
47
|
本机存在 `xiaoeUserData/tokens.py`、XiaoE 客户端目录、工作目录或历史登录,都不能作为宿主身份依据。桌面客户端可由 `--runtime-agent xiaoe` 标识;命令进程中存在任意 `XIAOE_*` 变量时也直接标识为 XiaoE。未命中这两类判断的 WorkBuddy、Codex 及其他智能体必须跳过此步,进入下方浏览器 OAuth 流程。
|
|
48
|
-
CLI 会按“显式 `--base-url` → 专用 `WEAVER_XIAOE_*` E10 配置/映射 → 当前 profile `config.baseUrl` → CLI 内置默认值”解析 E10 登录域名;`XIAOE_DOMAIN` 只作为 XiaoE/erpa
|
|
48
|
+
CLI 会按“显式 `--base-url` → 专用 `WEAVER_XIAOE_*` E10 配置/映射 → 当前 profile `config.baseUrl` → CLI 内置默认值”解析 E10 登录域名;`XIAOE_DOMAIN` 只作为 XiaoE/erpa 换票服务地址。已识别为 XiaoE 的业务命令缺少本地会话时会静默尝试统一登录;已有会话被接口明确拒绝为失效时,公共请求层根据会话内 `agentType=XiaoE` 或 `loginSource=xiaoe-unified` 静默恢复并重放一次,不要求 Agent 添加 `--runtime-agent xiaoe`。恢复失败或重放后仍失效时,Agent 只反馈最终错误并停止,不再运行登录或业务命令。
|
|
49
49
|
|
|
50
50
|
1. **仅非 XiaoE 环境进入本步**。禁止先执行 `auth xiaoe` 或调用其他登录 Skill。先调用宿主提供的提问 / 弹框能力询问用户,让用户二选一:
|
|
51
51
|
- 输入本次要登录的 E10 登录域名(base URL),形如 `https://<企业域名>`;或
|
|
@@ -3,9 +3,9 @@ name: weaver-e10-wenshuding
|
|
|
3
3
|
display_name: 泛微E10文书定档案管理
|
|
4
4
|
display_name_en: Weaver E10 Wenshuding
|
|
5
5
|
description: "泛微 E10 文书定档案管理:全宗与预归档库、全文检索、档案基本信息、借阅车、借阅单、原文下载、发起借阅/续借流程页与预归档上传确认链。"
|
|
6
|
-
description_zh: "泛微 E10 文书定档案管理。支持查询全宗与预归档电子文件库、全文检索可借档案、查看档案基本信息、查看借阅车并直接加入档案(免确认写操作)、查看借阅单与详情、下载借阅单原文 zip,并通过 prepare/apply
|
|
6
|
+
description_zh: "泛微 E10 文书定档案管理。支持查询全宗与预归档电子文件库、全文检索可借档案、查看档案基本信息、查看借阅车并直接加入档案(免确认写操作)、查看借阅单与详情、下载借阅单原文 zip,并通过 prepare/apply 确认链处理发起借阅、续借和预归档上传。全宗信息仅在预归档上传时需要查询;借阅/续借流程页只生成 Markdown 超链接(a 标签)返回,不自动打开浏览器,由客户端决定打开方式。全文检索结果的默认返回显示样式为三段式卡片视图(标题可点击、命中词高亮、全宗/分类/日期摘要行)。"
|
|
7
7
|
description_en: "Weaver E10 Wenshuding archive skill for fonds and pre-archive libraries, full-text search, archive info, borrow car, borrow orders, original file packaging and download, borrow/renew workflow URL generation, and confirmed pre-archive upload."
|
|
8
|
-
version: 1.0.
|
|
8
|
+
version: 1.0.5
|
|
9
9
|
author: 泛微网络科技股份有限公司
|
|
10
10
|
agent_created: true
|
|
11
11
|
requires:
|
|
@@ -24,7 +24,21 @@ cliHelp: "weaver-work-cli archive --help"
|
|
|
24
24
|
|
|
25
25
|
本 Skill 是 CLI 型技能,不自行发起 HTTP 请求:认证与会话**统一由 `weaver-e10-shared` 共享规则和 `weaver-work-cli auth ...` 命令体系托管**,禁止自建或绕过登录流程。
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
接口请求头(由 CLI 注入,Agent 不手写):
|
|
28
|
+
|
|
29
|
+
```text
|
|
30
|
+
Cookie: <登录返回的完整原始 Cookie 串> # 禁止裁剪、去重或改写
|
|
31
|
+
eteamsid: <登录返回的 ETEAMSID>
|
|
32
|
+
User-Agent: AgentType=<agentType>,IsAgent=true
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
| 凭证 | 取值与要求 |
|
|
36
|
+
| --- | --- |
|
|
37
|
+
| `Cookie` | 登录返回的**完整原始 Cookie 串**,禁止裁剪、去重或改写 |
|
|
38
|
+
| `eteamsid` | 登录返回的 `ETEAMSID` |
|
|
39
|
+
| `User-Agent` | `AgentType=<agentType>,IsAgent=true` |
|
|
40
|
+
|
|
41
|
+
完整权威说明见 [`../weaver-e10-shared/SKILL.md`](../weaver-e10-shared/SKILL.md) 的「请求头契约」章节。
|
|
28
42
|
|
|
29
43
|
Agent 不得自行拼接、改写或向用户索取上述凭证(禁止要求用户贴 Cookie / ETEAMSID / token),也不得直接 `curl` / `fetch` E10 接口。
|
|
30
44
|
所有命令通过 `weaver-work-cli --json archive run <operation>` 执行:简单 JSON 优先传 `--input-json '<json>'`,复杂或多行 JSON 先写入 UTF-8 文件再传 `--input <path>`,只有确认当前 shell 能稳定传管道时才使用 `--input -`。调用前先按需读取 references 下对应的文件,查参数结构,不要猜字段;**references 是第一信息源**,`weaver-work-cli archive schema` 是 operation、字段和风险等级的合约来源。
|
|
@@ -41,7 +55,7 @@ Agent 不得自行拼接、改写或向用户索取上述凭证(禁止要求
|
|
|
41
55
|
|
|
42
56
|
出现以下任一语义时,优先走本 Skill:
|
|
43
57
|
|
|
44
|
-
- 文书定 / 档案 / 全宗 / 收集库 / 管理库 / 预归档库 / 电子文件库
|
|
58
|
+
- 文书定 / 档案 / 全宗 / 收集库 / 管理库 / 预归档库 / 电子文件库 / 我上传的档案 / 我上传的档案文件
|
|
45
59
|
- 档案检索 / 全文检索 / 可借档案 / 档号 / 案卷 / 保管期限 / 密级 / 库位
|
|
46
60
|
- 借阅车 / 加入借阅车 / 我的借阅车
|
|
47
61
|
- 借阅单 / 我的借阅 / 借阅记录 / 续借 / 归还期限
|
|
@@ -57,6 +71,11 @@ Agent 不得自行拼接、改写或向用户索取上述凭证(禁止要求
|
|
|
57
71
|
|---|---|---|
|
|
58
72
|
| 查看可用 operation、字段和风险等级 | `archive schema` | [`archive-agent-entry.md`](references/archive-agent-entry.md) |
|
|
59
73
|
| 查询全宗 / 预归档电子文件库节点 | `archive run archive.fonds.list` / `archive.prelib.tree` | [`archive-fonds.md`](references/archive-fonds.md) |
|
|
74
|
+
| 查看电子文件库列表(预归档库内的数据) | `archive run archive.prelib.list` | [`archive-prelib-list.md`](references/archive-prelib-list.md) |
|
|
75
|
+
| 查看我的档案 / 我上传的档案(默认我上传的电子文件库) | `archive run archive.prelib.list` | [`archive-prelib-list.md`](references/archive-prelib-list.md) |
|
|
76
|
+
| 对电子文件库数据做智能识别 | `archive run archive.prelib.intelligent.prepare` -> 用户确认 -> `.apply` | [`archive-prelib-list.md`](references/archive-prelib-list.md) |
|
|
77
|
+
| 提交整理(预归档数据整理提交) | `archive run archive.prelib.arrange.prepare` -> 用户确认 -> `.apply` | [`archive-prelib-arrange.md`](references/archive-prelib-arrange.md) |
|
|
78
|
+
| 打开某条预归档档案(生成链接) | `archive run archive.prelib.open` | [`archive-prelib-open.md`](references/archive-prelib-open.md) |
|
|
60
79
|
| 全文检索可借档案(默认卡片视图展示) | `archive run archive.search.run` | [`archive-search.md`](references/archive-search.md) |
|
|
61
80
|
| 查看档案基本信息 | `archive run archive.info.get` | [`archive-info.md`](references/archive-info.md) |
|
|
62
81
|
| 查看借阅车 | `archive run archive.borrow-car.list` | [`archive-borrow-car.md`](references/archive-borrow-car.md) |
|
|
@@ -72,11 +91,15 @@ Agent 不得自行拼接、改写或向用户索取上述凭证(禁止要求
|
|
|
72
91
|
处理链:
|
|
73
92
|
|
|
74
93
|
- 检索并借阅:`archive.search.run` -> 用户选择条目 -> `archive.borrow-car.add`(免确认直接加入)-> 需要时 `archive.borrow-car.list` 复核
|
|
75
|
-
- 从借阅车发起借阅:`archive.borrow-car.list` 取 `arcDangan` 与 `dataId` -> `archive.flow.borrow-car.prepare` -> 用户确认 -> `.apply` ->
|
|
94
|
+
- 从借阅车发起借阅:`archive.borrow-car.list` 取 `arcDangan` 与 `dataId` -> `archive.flow.borrow-car.prepare` -> 用户确认 -> `.apply` -> 把流程创建页 URL 以 Markdown 超链接(a 标签)返回,不自动打开浏览器,由客户端决定打开方式
|
|
76
95
|
- 从检索结果直接发起借阅:`archive.search.run` 取 `id`+`formId` -> `archive.flow.search.prepare` -> 用户确认 -> `.apply` -> 同上默认系统浏览器打开 URL
|
|
77
96
|
- 续借:`archive.borrow-list.list` 取 `dataId` -> `archive.flow.renew.prepare` -> 用户确认 -> `.apply` -> 同上默认系统浏览器打开 URL
|
|
78
97
|
- 下载原文:`archive.borrow-list.list` 取 `dataId` -> `archive.borrow-list.download.prepare`(校验未超期且有可下载原文)-> 用户确认 -> `.apply`(轮询打包并落盘)
|
|
79
|
-
-
|
|
98
|
+
- 查看我的档案 / 我上传的档案:`archive.prelib.list`(默认即"我上传的电子文件库"数据,不传 treeId 自动取电子文件库节点)
|
|
99
|
+
- 提交整理:`archive.prelib.list` 取行 id -> `archive.prelib.arrange.prepare` -> 用户确认 -> `.apply`(只处理识别成功的数据,必须原样转达服务端 message,见 [`archive-prelib-arrange.md`](references/archive-prelib-arrange.md))
|
|
100
|
+
- 打开档案链接:`archive.prelib.list` 取行 id -> `archive.prelib.open` 生成 `/sp/custom/archive/fileLibEdit?singleMetaId=行id&treeId=节点treeId`(见 [`archive-prelib-open.md`](references/archive-prelib-open.md))
|
|
101
|
+
- 预归档上传:`archive.fonds.list` 取全宗 `id`(**名称字段是 `fonds_name`,不是 `name`/`content`**)-> 需要时 `archive.prelib.tree` 取 `treeId` -> `archive.upload.prelib.prepare` -> `.apply`(用户已给出文件 + 明确全宗即视为已确认,直接上传;全宗未定、有歧义或多节点未指定时必须先问,详见 [`archive-upload.md`](references/archive-upload.md))
|
|
102
|
+
- 查看并识别电子文件库数据:`archive.prelib.list`(取列表与行 `id`)-> 用户勾选 -> `archive.prelib.intelligent.prepare` -> 用户确认 -> `.apply` -> 返回识别任务 `taskId`(异步,不要声称识别完成)
|
|
80
103
|
|
|
81
104
|
## 执行原则(减少误路由、误重试和无效消耗)
|
|
82
105
|
|
|
@@ -39,6 +39,20 @@ weaver-work-cli --json archive run archive.borrow-list.detail --input-json '{"da
|
|
|
39
39
|
- 表格样式:所有列(表头与内容)居中显示。
|
|
40
40
|
- 无值列留空或用 `-`;题名过长时截断。
|
|
41
41
|
|
|
42
|
+
## 详情展示(档案题名必须可点击)
|
|
43
|
+
|
|
44
|
+
`archive.borrow-list.detail` 返回的 `details[].arcDangan[]` 每项都带 `name`、`viewPath`、`url`(已拼好环境域名)。
|
|
45
|
+
|
|
46
|
+
展示借阅明细时,**"档案"列用题名做超链接**(Markdown `[题名](url)`,渲染即 `<a>`),点击在系统里打开该档案:
|
|
47
|
+
|
|
48
|
+
| 档案 | 档号 | 文件日期 | 借阅方式 |
|
|
49
|
+
| :---: | :---: | :---: | :---: |
|
|
50
|
+
| [发文](http://host/sp/custom/archive/archiveView?arcId=...&arcFormId=...) | GXDA-XZ·2025-30-8 | 2025-11-03 | 电子查看、下载 |
|
|
51
|
+
|
|
52
|
+
- 优先用 `url`(含域名,可直接点);`url` 为空时用 `viewPath` 自行拼当前环境域名。
|
|
53
|
+
- `id` 形如 `{档案ID}_{表单ID}`,是内部标识,**不要直接展示**,也不要让用户抄。
|
|
54
|
+
- 同一明细有多条档案时,每条都要带链接;无 `url` 时退回纯文本题名,不要拼半个链接。
|
|
55
|
+
|
|
42
56
|
## 字段复用
|
|
43
57
|
|
|
44
58
|
- `dataId` 是借阅单主表 ID,用于查看详情、下载和续借。
|
|
@@ -43,6 +43,8 @@ weaver-work-cli --json archive run archive.borrow-list.download.apply --input-js
|
|
|
43
43
|
## 注意
|
|
44
44
|
|
|
45
45
|
- 下载是异步任务,`.apply` 可能持续一段时间;进度只在终端以进度条形式反馈,Agent 不要因为等待就中断并重试。
|
|
46
|
+
- 文件下载接口可能返回 **302 重定向**(跳到文件服务/CDN)。CLI 已对下载请求开启跟随重定向,**不会再把这种 302 误判为登录失效**;若仍报 `session_expired`,才是真的需要重新登录。
|
|
47
|
+
- 提交打包任务与下载是两个阶段:`batchDownloadBorrowZip`(提交)→ 轮询进度 → `file/remotedownload`(取文件)。若提交和轮询都成功、只有最后一步失败,说明是下载环节问题,不要把整个任务重复提交。
|
|
46
48
|
- 打包完成前中断会浪费一次服务端任务;中断后如需继续,重新执行 `.prepare` 再 `.apply`。
|
|
47
49
|
- 涉及本地文件写入:下载到的 zip 可能包含敏感档案内容,**必须先提醒用户文件内容会落到本地磁盘并可能进入当前大模型上下文,等待用户明确确认后才执行 `.apply`**。
|
|
48
50
|
- `exportType=0`(直接导出)时其余三个分组字段必须为空;`exportType=1` 时按结构补齐分组字段,字段取值只能取档案基础字段候选。
|
|
@@ -41,6 +41,6 @@ weaver-work-cli --json archive run archive.flow.renew.prepare --input-json '{"da
|
|
|
41
41
|
## 注意
|
|
42
42
|
|
|
43
43
|
- `.prepare` 会检查是否绑定借阅流程;未绑定时返回 `validation/borrow_flow_unbound`,应提示联系管理员在档案设置中绑定借阅流程,不要重试。
|
|
44
|
-
- `.apply` 返回的是**流程创建页 URL**,CLI
|
|
44
|
+
- `.apply` 返回的是**流程创建页 URL**,CLI 不自动打开浏览器,**Agent 也不要自动打开**(不要执行 `open` / `start`)。把 URL 作为 **Markdown 超链接**返回,例如 `[填写并提交](URL)`(渲染即 `<a>` 标签),由客户端/用户自行决定打开方式(内置浏览器、系统浏览器或复制链接)。不要声称“已发起借阅申请”。
|
|
45
45
|
- 从借阅车发起会缓存档案与借阅车两组参数(两次缓存写入),从检索结果发起只缓存档案,续借不缓存。
|
|
46
46
|
- URL 中的缓存参数由服务端生成,Agent 不要手工拼接或改写 URL。
|