weaver-work-cli 0.1.26 → 0.1.29
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 +7 -2
- package/dist/cmd/setup/index.js +1 -1
- package/dist/internal/e10/auth/commands.js +1 -6
- package/dist/internal/e10/auth/messages.js +3 -0
- package/dist/internal/e10/auth/session.js +8 -0
- package/dist/internal/e10/auth-recovery.js +148 -0
- package/dist/internal/e10/client.js +47 -15
- package/dist/internal/e10/context.js +8 -8
- package/dist/internal/e10/index.js +1 -0
- package/dist/internal/e10/request-runtime.js +51 -9
- package/dist/shortcuts/archive/host.js +3 -2
- package/dist/shortcuts/archive/manifest.js +1 -1
- package/dist/shortcuts/archive-oa/host.js +2 -1
- package/dist/shortcuts/archive-oa/manifest.js +1 -1
- package/dist/shortcuts/asset/host.js +7 -6
- package/dist/shortcuts/blog/host.js +4 -3
- package/dist/shortcuts/caizhilian/host.js +3 -2
- package/dist/shortcuts/caizhilian/manifest.js +1 -1
- package/dist/shortcuts/calendar/host.js +2 -1
- package/dist/shortcuts/contract/host.js +34 -59
- package/dist/shortcuts/ehr/host.js +2 -1
- package/dist/shortcuts/esb/host.js +2 -1
- package/dist/shortcuts/fna/host.js +6 -3
- package/dist/shortcuts/fna/manifest.js +10 -5
- package/dist/shortcuts/fna/operations/expense-chart.js +162 -0
- package/dist/shortcuts/fna/operations/registry.js +2 -0
- package/dist/shortcuts/hrm/host.js +2 -1
- package/dist/shortcuts/im/host.js +3 -2
- package/dist/shortcuts/invoice/host.js +9 -7
- package/dist/shortcuts/invoice/manifest.js +23 -142
- package/dist/shortcuts/invoice/operations/issuing-qys.js +266 -203
- package/dist/shortcuts/invoice/operations/registry.js +1 -6
- package/dist/shortcuts/jiuchuanhui/host.js +2 -1
- package/dist/shortcuts/mail/host.js +2 -1
- package/dist/shortcuts/meeting/host.js +2 -1
- package/dist/shortcuts/meeting/operations/eb/conflict.js +78 -12
- package/dist/shortcuts/okr/host.js +2 -1
- package/dist/shortcuts/plan/host.js +2 -1
- package/dist/shortcuts/project/host.js +2 -1
- package/dist/shortcuts/workflow/host.js +3 -5
- package/dist/shortcuts/workflow/index.js +4 -1
- package/dist/shortcuts/workflow/operations/chatscene.js +4 -22
- package/dist/shortcuts/workflow/operations/form.js +281 -166
- package/dist/shortcuts/workflow/operations/read.js +39 -8
- package/dist/shortcuts/workflow/operations/registry.js +2 -0
- package/dist/shortcuts/workflow/operations/todoSmartConvert/businessRules.js +331 -0
- package/dist/shortcuts/workflow/operations/todoSmartConvert/detailFieldRules.js +133 -0
- package/dist/shortcuts/workflow/operations/todoSmartConvert/summaryCache.js +326 -0
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoDetailCache.js +113 -0
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoDetailFetcher.js +259 -0
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoListRows.js +64 -0
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoOutputPlanner.js +28 -0
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.aggregate.js +70 -0
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.collect.js +267 -0
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.core.js +392 -0
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.detail.js +165 -0
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.group.js +448 -0
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.groupSummary.js +348 -0
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.js +222 -0
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.pipeline.js +66 -0
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.smartGroup.js +502 -0
- package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.summary.js +540 -0
- package/dist/shortcuts/workflow/stdout-compact.js +7 -0
- package/docs/SKILL.md +1 -1
- package/docs/_catalog.md +2 -1
- package/docs/agent-invoice.md +1 -1
- package/docs/caizhilian.md +1 -1
- package/docs/e10-auth.md +1 -1
- package/docs/fna.md +7 -3
- package/docs/invoice.md +4 -6
- package/docs/todo-smart-convert/README.md +171 -0
- package/docs/todo-smart-convert/data-contract.md +236 -0
- package/docs/todo-smart-convert/mock/ai-todo-query-target.json +209 -0
- package/docs/todo-smart-convert/subgroup-rules.md +245 -0
- package/package.json +1 -1
- package/scripts/package-skill.mjs +1 -1
- package/skill-template/business-info.json +4 -1
- package/skill-template/domains/caizhilian.md +2 -1
- package/skill-template/domains/qiyecheng.md +1 -0
- package/skill-template/domains/yepiaotong.md +6 -2
- package/skill-template/skill-template.md +1 -0
- package/skills/weaver-e10-blog/SKILL.md +6 -1
- package/skills/weaver-e10-blog/references/blog-query.md +3 -1
- package/skills/weaver-e10-caizhilian/SKILL.md +18 -9
- package/skills/weaver-e10-caizhilian/references/action-flow.md +70 -0
- package/skills/weaver-e10-caizhilian/references/agent-entry.md +6 -2
- package/skills/weaver-e10-caizhilian/references/auth-and-install.md +207 -0
- package/skills/weaver-e10-caizhilian/references/file-collection.md +56 -54
- package/skills/weaver-e10-caizhilian/references/file-upload.md +4 -4
- package/skills/weaver-e10-caizhilian/references/host-executor-prompt.md +32 -0
- package/skills/weaver-e10-caizhilian/references/host-platform-integration.md +46 -0
- package/skills/weaver-e10-caizhilian/references/rule-index.md +56 -0
- package/skills/weaver-e10-caizhilian/references/setting-attach.md +5 -16
- package/skills/weaver-e10-caizhilian/references/setting-backup.md +4 -13
- package/skills/weaver-e10-caizhilian/references/setting-encrypt.md +6 -15
- package/skills/weaver-e10-caizhilian/references/setting-storage-docs-summary.md +126 -0
- package/skills/weaver-e10-caizhilian/references/setting-storage-field-map.md +57 -0
- package/skills/weaver-e10-caizhilian/references/setting-storage.md +142 -482
- package/skills/weaver-e10-caizhilian/references/source-manifest.json +7 -7
- package/skills/weaver-e10-caizhilian/references/task-workflow.md +87 -0
- package/skills/weaver-e10-caizhilian/references/withheld.md +2 -2
- package/skills/weaver-e10-caizhilian/references/write-protocol.md +7 -0
- package/skills/weaver-e10-calendar/SKILL.md +6 -1
- package/skills/weaver-e10-esb/SKILL.md +8 -0
- package/skills/weaver-e10-esb/references/input-format.md +3 -1
- package/skills/weaver-e10-esb/references/source-manifest.json +5 -5
- package/skills/weaver-e10-hrm/SKILL.md +6 -1
- package/skills/weaver-e10-hrm/references/employee.md +1 -1
- package/skills/weaver-e10-hrm/references/org.md +1 -1
- package/skills/weaver-e10-hrm/references/position.md +1 -1
- package/skills/weaver-e10-jinchengda/SKILL.md +2 -1
- package/skills/weaver-e10-jinchengda/references/contract-agent-entry.md +1 -1
- package/skills/weaver-e10-jiuchuanhui/SKILL.md +6 -1
- package/skills/weaver-e10-jucailin/SKILL.md +6 -1
- package/skills/weaver-e10-jucailin/references/hr-contact.md +1 -1
- package/skills/weaver-e10-jucailin/references/salary.md +1 -1
- package/skills/weaver-e10-mail/SKILL.md +6 -1
- package/skills/weaver-e10-meeting/SKILL.md +11 -6
- package/skills/weaver-e10-meeting/references/meeting-eb.md +7 -3
- package/skills/weaver-e10-meeting/references/meeting-queries.md +3 -1
- package/skills/weaver-e10-meeting/references/meeting-verification.md +4 -2
- package/skills/weaver-e10-okr/SKILL.md +6 -1
- package/skills/weaver-e10-okr/references/source-manifest.json +5 -5
- package/skills/weaver-e10-plan/SKILL.md +6 -1
- package/skills/weaver-e10-plan/references/plan-overview-and-routing.md +3 -1
- package/skills/weaver-e10-plan/references/plan-report-query.md +3 -1
- package/skills/weaver-e10-plan/references/source-manifest.json +7 -7
- package/skills/weaver-e10-qiyecheng/SKILL.md +16 -6
- package/skills/weaver-e10-qiyecheng/references/catalog.md +6 -3
- package/skills/weaver-e10-qiyecheng/references/expense-center.md +2 -0
- package/skills/weaver-e10-qiyecheng/references/expense-chart.md +78 -0
- package/skills/weaver-e10-qiyecheng/references/source-manifest.json +87 -33
- package/skills/weaver-e10-shared/SKILL.md +37 -14
- package/skills/weaver-e10-shared/references/e10-auth-and-session.md +11 -8
- package/skills/weaver-e10-shared/references/non-interactive-environment.md +4 -4
- package/skills/weaver-e10-shared/references/weaver-e10-installation.md +3 -1
- package/skills/weaver-e10-wenshuding/SKILL.md +6 -1
- package/skills/weaver-e10-wenshuding/references/source-manifest.json +3 -3
- package/skills/weaver-e10-workflow/SKILL.md +23 -1
- package/skills/weaver-e10-workflow/references/source-manifest.json +1 -2
- package/skills/weaver-e10-workflow/references/todo-smart-convert.md +282 -0
- package/skills/weaver-e10-workflow/references/workflow-create.md +30 -55
- package/skills/weaver-e10-workflow/scripts/todo-summary.cjs +695 -0
- package/skills/weaver-e10-yepiaotong/SKILL.md +19 -17
- package/skills/weaver-e10-yepiaotong/references/invoice-issuing-examples.md +75 -78
- package/skills/weaver-e10-yepiaotong/references/invoice-issuing-form-fill-rules.md +179 -0
- package/skills/weaver-e10-yepiaotong/references/invoice-issuing-workflow.md +238 -0
- package/skills/weaver-e10-yepiaotong/references/invoice-reim.md +7 -7
- package/skills/weaver-e10-yepiaotong/references/reim-api-reference.md +11 -5
- package/skills/weaver-e10-yepiaotong/references/reim-examples.md +55 -33
- package/skills/weaver-e10-yepiaotong/references/reim-form-fill-rules.md +102 -23
- package/skills/weaver-e10-yepiaotong/references/reim-phone-subsidy-rules.md +1 -1
- package/skills/weaver-e10-yepiaotong/references/reim-workflow.md +53 -42
- package/skills/weaver-e10-yepiaotong/references/source-manifest.json +94 -214
- package/skills/weaver-e10-yimiaoban/SKILL.md +9 -2
- package/skills/weaver-e10-yimiaoban/references/file-user-i18n.md +1 -1
- package/skills/weaver-e10-yimiaoban/references/msg-read.md +1 -1
- package/skills/weaver-e10-yimiaoban/references/source-manifest.json +9 -9
- package/skills/weaver-e10-ziguanjia/SKILL.md +6 -1
- package/dist/shortcuts/invoice/operations/issuing.js +0 -198
- package/skills/weaver-e10-yepiaotong/references/invoice-issuing-field-rules.md +0 -161
- package/skills/weaver-e10-yepiaotong/references/invoice-issuing-qys-ledger.md +0 -66
- package/skills/weaver-e10-yepiaotong/references/invoice-issuing.md +0 -107
|
@@ -5,7 +5,7 @@ display_name_en: Weaver CLI Shared Rules
|
|
|
5
5
|
description: weaver-work-cli 共享规则:安装检查、E10 认证、JSON 输出、高风险写入、安全边界和引用路由。
|
|
6
6
|
description_zh: weaver-work-cli 共享规则:安装检查、E10 认证、JSON 输出、高风险写入、安全边界和引用路由。
|
|
7
7
|
description_en: Shared rules for weaver-work-cli, including installation checks, E10 authentication, JSON output, high-risk writes, safety boundaries, and reference routing.
|
|
8
|
-
version: 1.2.
|
|
8
|
+
version: 1.2.5
|
|
9
9
|
author: 泛微网络科技股份有限公司
|
|
10
10
|
agent_created: true
|
|
11
11
|
requires:
|
|
@@ -33,9 +33,15 @@ requires:
|
|
|
33
33
|
- 漏传 `--is-connector` **不会报错**,但会退回本机活跃 profile,可能操作到与预期不同的租户。
|
|
34
34
|
- **本套 Skill 里的命令示例一律省略 `--is-connector`**(示例只示意参数形态,不代表最终命令):执行前必须先按上表判定,命中「传」的要在 `weaver-work-cli` 之后补上 `--is-connector true`,且**本任务内每条命令都要带**——包括记忆读取、记忆保存这类无入参的命令。
|
|
35
35
|
|
|
36
|
+
## XiaoE 版本更新由客户端托管(全局覆盖)
|
|
37
|
+
|
|
38
|
+
本任务开始时一旦按下文规则判定当前智能体为 XiaoE,**不得执行 `weaver-work-cli --version` 或 `npm view weaver-work-cli version` 做可用性、版本或更新检查**。XiaoE 客户端已经负责检查并更新配套的 `weaver-work-cli`;Agent 直接进入登录态诊断或业务命令。本规则覆盖本 Skill、业务 Skill 及其 references 中所有通用的 `--version` 检查示例。
|
|
39
|
+
|
|
40
|
+
XiaoE 中如果后续命令直接返回 `command not found`、退出码 127 或明确的版本不兼容错误,停止并反馈 XiaoE 客户端运行时异常,不自行执行 npm 查询、安装或升级。仅非 XiaoE 环境继续使用下述版本检查与安装流程。
|
|
41
|
+
|
|
36
42
|
## 业务 Skill 安装前版本检查
|
|
37
43
|
|
|
38
|
-
用户要求安装任一业务模块 Skill
|
|
44
|
+
用户要求安装任一业务模块 Skill 时,先复用本任务开始时的宿主判定:XiaoE 环境跳过本节版本比对,由 XiaoE 客户端保证配套 CLI 更新;非 XiaoE 环境必须先执行 `weaver-work-cli --version` 与 `npm view weaver-work-cli version` 比对本地版本和 npm 源版本。若本地版本低于 npm 源版本,先询问用户是否使用(推荐)最新版 `weaver-work-cli`;用户确认后先执行 `npm install -g weaver-work-cli` 更新 CLI,再继续安装业务模块 Skill。用户拒绝时,说明将沿用本地版本后再继续。
|
|
39
45
|
|
|
40
46
|
## 最高优先级:XiaoE 统一登录
|
|
41
47
|
|
|
@@ -61,7 +67,7 @@ Token、Cookie、ETEAMSID 和业务凭证**只能由 `weaver-work-cli` 内部读
|
|
|
61
67
|
|
|
62
68
|
下述 `auth xiaoe` 流程仅适用于上述已确认的 XiaoE 智能体环境;其他智能体不执行宿主脚本检测,直接进入浏览器 OAuth 流程。`auth xiaoe` 命令本身就是认证方式的显式选择;`hasXiaoEEnv` 使用桌面的 `--runtime-agent xiaoe` 或任意 `XIAOE_*` 环境变量识别运行环境。
|
|
63
69
|
|
|
64
|
-
需要登录态时只运行 `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
|
|
70
|
+
需要登录态时只运行 `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 会在公共请求层静默恢复并重放一次。失败时 CLI 返回结构化错误,Agent 不要替它执行脚本、安装 Python 依赖、手工取 Token 或自动引导用户在本地终端重复登录。
|
|
65
71
|
|
|
66
72
|
1. 未登录、登录失效、准备执行业务命令前需要确认 E10 会话,或 `auth status --no-check` 显示未登录时,先运行:
|
|
67
73
|
```text
|
|
@@ -70,8 +76,19 @@ Token、Cookie、ETEAMSID 和业务凭证**只能由 `weaver-work-cli` 内部读
|
|
|
70
76
|
2. 不得因为本地存在旧 profile、`auth profile current` 指向旧环境,或 `auth profile list` 里只有旧环境,就跳过 XiaoE 统一登录;也不得先要求用户选择旧 profile 或输入域名。
|
|
71
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 完成。
|
|
72
78
|
4. `auth xiaoe` 是 XiaoE 认证方式的显式入口:CLI 不再判断当前宿主,只检查并消费可用凭据源。E10 目标地址按「显式 `--base-url` → 专用 `WEAVER_XIAOE_*` E10 配置/映射 → 当前 profile → CLI 内置默认值」解析,绝不能把 `XIAOE_DOMAIN` 当作 E10 地址。Token、Cookie、ETEAMSID 仍属于凭证,禁止在回复中展示。
|
|
73
|
-
5. XiaoE 统一登录走不通时,无论 macOS、Windows、Linux 或 Web,CLI 都返回 `authentication/xiaoe_credential_unavailable`,绝不自动打开浏览器或降级到 `auth login
|
|
74
|
-
6. `auth status --no-check`
|
|
79
|
+
5. XiaoE 统一登录走不通时,无论 macOS、Windows、Linux 或 Web,CLI 都返回 `authentication/xiaoe_credential_unavailable`,绝不自动打开浏览器或降级到 `auth login`;本任务必须停止,不得另行调用其他登录 Skill 或登录命令。
|
|
80
|
+
6. `auth status --no-check` 不会触发 XiaoE 统一登录;业务命令只有在已加载的会话被 E10 明确拒绝为失效时,才静默触发一次统一登录并重放该请求一次。首次无本地会话仍须显式执行 `auth xiaoe`;具体读取 [`e10-auth-and-session.md`](references/e10-auth-and-session.md)。
|
|
81
|
+
|
|
82
|
+
### 认证错误只报告状态,不指定登录命令
|
|
83
|
+
|
|
84
|
+
CLI 和业务 Skill 在返回 `authentication` / `session_expired` 时,只能说明未登录或会话已失效,不得在 `error.message` 或业务错误分支中写死 `auth login`、`auth xiaoe`、`--base-url`、`--agent_type` 等具体登录命令或参数。
|
|
85
|
+
|
|
86
|
+
业务 Skill 的提示词必须把认证恢复写成下面的强制分流,不能只写“重新登录”或把认证方式交给错误文案决定:
|
|
87
|
+
|
|
88
|
+
1. Agent 必须重用本任务开始时的宿主判定,禁止调用任何其他登录 Skill。
|
|
89
|
+
2. 明确为 XiaoE 时,只执行 `weaver-work-cli auth xiaoe`,不得改用 `auth login`。统一登录返回 `authentication/xiaoe_credential_unavailable` 时停止并反馈宿主凭据不可用,不自动回退浏览器登录。
|
|
90
|
+
3. 非 XiaoE 时,不得执行 `auth xiaoe`;取得用户确认的真实 E10 登录域名后,执行 `weaver-work-cli auth login --base-url "<用户确认的 E10 登录域名>" --agent_type "<当前智能体名称>"`。已有可用 profile 时也可按用户选择切换并验证。
|
|
91
|
+
4. 登录恢复后,读操作可以重新执行;写操作不得复用旧 continuation,必须重新 prepare 并重新确认。已返回 `partial` / `write_uncertain` 时先只读回查,禁止直接重放写入。
|
|
75
92
|
|
|
76
93
|
`auth xiaoe` 的 preflight 会输出不含凭证的 `authMode=xiaoe`、`credentialSourceDetected`、`attempted`、`platformCredentialDetected`、`tokenScriptDetected`、`clientSettingsDetected`、`environmentCredentialDetected` 和 `baseUrl`;命中脚本分支时会出现 `Trying XiaoE token script credential...`,命中内置 Node 会话分支时会出现 `Trying built-in XiaoE client session credential...`。成功后登录结果和 `auth status` 中的 `credentialSourceStep`、`credentialSourceType`、`credentialSourceLabel` 用于确认实际来源;`2 / token_script / xiaoeUserData/tokens.py` 表示宿主脚本换票成功,`3 / xiaoe_client / XiaoE client settings` 表示不依赖 `tokens.py`、由 Node 直接换票成功。
|
|
77
94
|
|
|
@@ -82,22 +99,28 @@ Token、Cookie、ETEAMSID 和业务凭证**只能由 `weaver-work-cli` 内部读
|
|
|
82
99
|
`auth login` 会在本机 `127.0.0.1:19800` 监听浏览器回调,最长等待 5 分钟。在 Agent 沙箱/托管环境中,外部浏览器无法回调容器内 `127.0.0.1:19800`,因此:
|
|
83
100
|
|
|
84
101
|
1. 任意系统运行 `auth xiaoe` 时,收到 `xiaoe_credential_unavailable` 即反馈宿主登录态/凭据注入异常,不要自动切换 `auth login`,也不要要求用户去本地终端重复执行命令。
|
|
85
|
-
2.
|
|
86
|
-
3.
|
|
102
|
+
2. 仅非 XiaoE 环境在用户确认真实 E10 域名且确认 CLI 与浏览器同机后运行 `auth login`;仍须限时等待,超时未完成即终止并反馈。
|
|
103
|
+
3. 仅非 XiaoE 环境在用户无法完成浏览器登录、且明确要求并同意人工录入时,才可使用保底方式 `weaver-work-cli auth set --eteamsid "<ETEAMSID>" --base-url "<用户确认的登录域名>"`;它不是业务认证错误的默认恢复路径。ETEAMSID 由用户从已登录浏览器主动提供,Agent 不得索取、展示或转述该值。
|
|
87
104
|
4. 严禁不加限制地前台运行 `auth xiaoe` / `auth login` 并等待 OAuth 回调。
|
|
88
105
|
|
|
89
106
|
## 通用准则
|
|
90
107
|
|
|
91
108
|
1. 执行业务命令前先确认用法:优先读当前业务 Skill 和被路由到的 reference,必要时跑对应命令的 `--help` 或 `schema`,不要猜参数。
|
|
92
109
|
|
|
93
|
-
2. 首次使用先确认 CLI
|
|
110
|
+
2. 首次使用先确认 CLI 可用。XiaoE 环境不检查版本,直接执行:
|
|
111
|
+
|
|
112
|
+
```text
|
|
113
|
+
weaver-work-cli doctor --e10
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
非 XiaoE 环境执行:
|
|
94
117
|
|
|
95
118
|
```text
|
|
96
119
|
weaver-work-cli --version
|
|
97
120
|
weaver-work-cli doctor --e10
|
|
98
121
|
```
|
|
99
122
|
|
|
100
|
-
如果命令不可用(尤其是 `command not found` 或退出码 127
|
|
123
|
+
如果命令不可用(尤其是 `command not found` 或退出码 127),XiaoE 环境按本 Skill 的全局覆盖规则停止并反馈客户端运行时异常;非 XiaoE 环境先读 [`weaver-e10-installation.md`](references/weaver-e10-installation.md):先区分「已安装但不在 PATH」与「未安装」(前者只需把全局 bin 目录前置到 PATH,不要重装),确认未安装后再让用户选择 npm 源安装或本地代码安装;本地代码必须提供仓库目录。用户明确同意后才执行 `npm install -g weaver-work-cli`、`npm install`、`npm run build` 或 `npm link`。
|
|
101
124
|
|
|
102
125
|
3. 业务输入只描述业务对象和意图。认证、Cookie、ETEAMSID、业务 Token、接口地址和回查细节都由 CLI 托管。调用业务 operation 时,简单 JSON 优先使用 `--input-json '<json>'`;多步传递优先用 shell 变量,超大结果用 `--input-ref <refId>`,不要把上一步 stdout 写入临时文件再作为下一步输入。`--input <path>` 只用于用户提供的 JSON 文件或明确的文件业务输入;复杂 JSON 可在确有需要时使用,不能用它中转 CLI 上一步的输出。只有确认当前 shell 能稳定传管道时才使用 `--input -`。生成或改写 docs、reference、提示词和命令示例时,必须同时兼容 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 写法。
|
|
103
126
|
|
|
@@ -107,7 +130,7 @@ weaver-work-cli doctor --e10
|
|
|
107
130
|
|
|
108
131
|
5. 涉及附件、图片、本地文件、远程 URL 文件或文件内容解析的操作,执行前必须先向用户说明:文件内容可能会被上传到业务系统、OCR/解析服务,并可能进入当前大模型上下文用于理解和处理。必须等待用户明确确认后,才继续上传、读取、解析、OCR、导入或复用已上传文件对象;用户未确认时只说明风险和所需确认,不执行相关命令。
|
|
109
132
|
|
|
110
|
-
6. **同名不同包不要混用**:环境中可能并存另一个独立的 E10 登录 CLI(例如 `e10-login`,版本号可能带 `xiaoe` 后缀),它提供登录与状态查询,但其登录态**不会**被 `weaver-work-cli`
|
|
133
|
+
6. **同名不同包不要混用**:环境中可能并存另一个独立的 E10 登录 CLI(例如 `e10-login`,版本号可能带 `xiaoe` 后缀),它提供登录与状态查询,但其登录态**不会**被 `weaver-work-cli` 复用。非 XiaoE 环境的 CLI 可用性以 `weaver-work-cli --version` 为凭;XiaoE 环境跳过版本检查,以 `doctor --e10` 或实际业务命令的结果为凭。登录态一律以 `weaver-work-cli auth status --no-check` / `doctor --e10` 为凭;不得因为另一个 CLI 显示已登录就判定本 CLI 可用,也不要用另一个 CLI 的输出替代本 CLI 的认证结论。
|
|
111
134
|
|
|
112
135
|
## 超时与重试预算
|
|
113
136
|
|
|
@@ -115,7 +138,7 @@ weaver-work-cli doctor --e10
|
|
|
115
138
|
|
|
116
139
|
| 命令类别 | 单次超时预算 | 重试策略 |
|
|
117
140
|
| --- | --- | --- |
|
|
118
|
-
| 登录类(`auth xiaoe` / `auth login` / `auth set`) | 300 秒(5 分钟,后台运行 + 限时观察) |
|
|
141
|
+
| 登录类(`auth xiaoe` / `auth login` / `auth set`) | 300 秒(5 分钟,后台运行 + 限时观察) | Agent 不自动重跑登录命令;XiaoE 业务请求收到明确认证拒绝时,CLI 内部只静默恢复 1 次 |
|
|
119
142
|
| 只读业务查询(list / get / schema / preview) | 120 秒 | 最多 1 次;仅在网络类错误且未产生副作用时 |
|
|
120
143
|
| 写入类(prepare / apply / import / update / delete) | 600 秒(10 分钟) | **禁止自动重试**(存在重复入账/重复提交风险);结果不确定时只补一次只读回查 |
|
|
121
144
|
| 安装与构建(`npm install` / `npm run build` / `npm link`) | 1800 秒(30 分钟) | 禁止自动重试;失败即停止并报告,不加 `sudo` |
|
|
@@ -147,7 +170,7 @@ User-Agent: AgentType=<agentType>,IsAgent=true
|
|
|
147
170
|
|
|
148
171
|
登录与会话统一由 `weaver-e10-shared` 共享规则和 `weaver-work-cli auth ...` 命令体系托管;业务 Skill 不得自建登录流程,也不得读取、打印、转存任何认证目录或凭证。
|
|
149
172
|
|
|
150
|
-
返回 `partial`、`write_uncertain
|
|
173
|
+
返回 `partial`、`write_uncertain`、回查失败或网络中断时,立即停止当前写流程,不自动重试写入或删除。唯一例外是 XiaoE 公共请求层收到明确的认证拒绝(请求尚未进入业务处理)时,可静默恢复会话并原样重放 1 次;若恢复失败、重放后仍失效、身份变化或请求体不可重放,则立即停止。
|
|
151
174
|
|
|
152
175
|
当前 CLI 的普通大小 JSON 输出是完整 envelope;超过预算时会暂存完整结果,并在 stdout 返回精简摘要和 `refId`。CLI 没有飞书 CLI 那种通用 `--jq`、`--format table/ndjson` 或 `--page-all`。列表、详情、OCR、导出等可能产生大响应时,必须先读 [`json-output-contract.md`](references/json-output-contract.md) 的“大结果渲染与提效规则”:默认小页读取、只保留任务所需字段、分页有预算,回复用户时给摘要,不要原样粘贴超长 JSON。
|
|
153
176
|
|
|
@@ -175,8 +198,8 @@ User-Agent: AgentType=<agentType>,IsAgent=true
|
|
|
175
198
|
|
|
176
199
|
5. 不能猜测 CLI 未暴露的内部字段、接口路径、ID 解析逻辑或回查语义。
|
|
177
200
|
|
|
178
|
-
6. 未登录或登录失效(`authentication` / `session_expired` / `auth status` 未登录)时,Agent 若已根据桌面端明确上下文或网页端原有环境变量规则判定为 XiaoE
|
|
201
|
+
6. 未登录或登录失效(`authentication` / `session_expired` / `auth status` 未登录)时,Agent 若已根据桌面端明确上下文或网页端原有环境变量规则判定为 XiaoE,必须运行 `weaver-work-cli auth xiaoe` 尝试统一登录;统一登录不可用时必须反馈 CLI 原因并停止。任意系统都不得把 `xiaoe_credential_unavailable` 改成浏览器 OAuth、本地终端操作或其他登录 Skill。仅非 XiaoE 环境在用户确认真实 E10 域名后运行 `auth login`,并必须传入 `--agent_type "<当前智能体名称>"`,让授权确认页展示发起登录验证的智能体;**禁止**使用示例占位域名登录,也禁止在拿到域名前反复重试业务命令。具体流程读取 [`e10-auth-and-session.md`](references/e10-auth-and-session.md)。
|
|
179
202
|
|
|
180
203
|
7. 附件、图片上传或文件解析属于敏感数据处理。即便 operation 风险等级不是高风险写入,也必须先取得用户对“文件内容可能进入大模型/外部解析服务”的明确确认;不能把用户仅提供文件路径或文件名视为同意解析或上传。
|
|
181
204
|
|
|
182
|
-
8. Agent 明确选择 `auth xiaoe` 后,CLI 按顺序从平台注入凭证(Node 换票后由 CLI npm 包自带 `xiaoe_env.py` 兼容回退)、宿主 `xiaoeUserData/tokens.py`、内置原生实现读取的桌面 XiaoE 客户端会话(宿主注入路径优先、默认 `XiaoE/Robots/<id>/user_settings.json` 回退)、`WEAVER_XIAOE_*` 环境映射读取支持统一登录的凭证(宿主不会注入 ETEAMSID 环境变量)。桌面会话有效时 Node 可直接换票,不要求存在 `tokens.py`;shared Skill 也不携带任何 Token 脚本。`XIAOE_DOMAIN` 仅是 XiaoE/erpa 换票服务地址;E10 目标按显式参数、专用 E10 配置/映射、当前 profile、CLI
|
|
205
|
+
8. Agent 明确选择 `auth xiaoe` 后,CLI 按顺序从平台注入凭证(Node 换票后由 CLI npm 包自带 `xiaoe_env.py` 兼容回退)、宿主 `xiaoeUserData/tokens.py`、内置原生实现读取的桌面 XiaoE 客户端会话(宿主注入路径优先、默认 `XiaoE/Robots/<id>/user_settings.json` 回退)、`WEAVER_XIAOE_*` 环境映射读取支持统一登录的凭证(宿主不会注入 ETEAMSID 环境变量)。桌面会话有效时 Node 可直接换票,不要求存在 `tokens.py`;shared Skill 也不携带任何 Token 脚本。`XIAOE_DOMAIN` 仅是 XiaoE/erpa 换票服务地址;E10 目标按显式参数、专用 E10 配置/映射、当前 profile、CLI 默认值的顺序解析。业务命令不会在首次无会话时自动登录,但已有会话被接口明确拒绝时会静默恢复 1 次;桌面端需要 XiaoE 专属业务行为时,Agent 必须添加 `--runtime-agent xiaoe`,命令进程中存在任意 `XIAOE_*` 变量时也会直接识别为 XiaoE。不要要求用户提供、展示或手动设置这些凭证。任意系统失败时都反馈结构化错误,不自动降级浏览器。
|
|
@@ -29,6 +29,8 @@ 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 的认证错误只是状态信号,不是登录命令。`error.message` 和业务 Skill 的错误分支不得指定 `auth login`、`auth xiaoe` 或其参数;Agent 必须先判定当前宿主环境,再按下述流程自行选择认证方式。
|
|
33
|
+
|
|
32
34
|
此时**禁止**:
|
|
33
35
|
|
|
34
36
|
- 使用示例占位域名(如 `https://weapp.xxx.cn`)或自行猜测域名执行登录
|
|
@@ -43,17 +45,18 @@ weaver-work-cli auth whoami
|
|
|
43
45
|
weaver-work-cli auth xiaoe
|
|
44
46
|
```
|
|
45
47
|
本机存在 `xiaoeUserData/tokens.py`、XiaoE 客户端目录、工作目录或历史登录,都不能作为宿主身份依据。桌面客户端可由 `--runtime-agent xiaoe` 标识;命令进程中存在任意 `XIAOE_*` 变量时也直接标识为 XiaoE。未命中这两类判断的 WorkBuddy、Codex 及其他智能体必须跳过此步,进入下方浏览器 OAuth 流程。
|
|
46
|
-
CLI 会按“显式 `--base-url` → 专用 `WEAVER_XIAOE_*` E10 配置/映射 → 当前 profile `config.baseUrl` → CLI 内置默认值”解析 E10 登录域名;`XIAOE_DOMAIN` 只作为 XiaoE/erpa 换票服务地址。`auth xiaoe` 命令本身即代表 Agent 已选择 XiaoE 认证,CLI
|
|
48
|
+
CLI 会按“显式 `--base-url` → 专用 `WEAVER_XIAOE_*` E10 配置/映射 → 当前 profile `config.baseUrl` → CLI 内置默认值”解析 E10 登录域名;`XIAOE_DOMAIN` 只作为 XiaoE/erpa 换票服务地址。`auth xiaoe` 命令本身即代表 Agent 已选择 XiaoE 认证,CLI 只负责发现和消费凭据。业务命令不会在缺少本地会话时主动登录;已有会话被接口明确拒绝为失效时,公共请求层会静默恢复并重放一次。桌面客户端需要 XiaoE 专属业务行为时,Agent 在业务命令上显式添加全局参数 `--runtime-agent xiaoe`,命令进程中存在任意 `XIAOE_*` 变量时也会自动识别。统一登录失败时返回认证错误并停止,任何操作系统都不自动进入浏览器流程。Agent 不得因为本地存在旧 profile 就跳过 XiaoE 认证规则,不得调用任何其他登录 Skill,也不得要求用户提供或展示 `XIAOE_*` / ETEAMSID。
|
|
47
49
|
|
|
48
|
-
1.
|
|
50
|
+
1. **仅非 XiaoE 环境进入本步**。禁止先执行 `auth xiaoe` 或调用其他登录 Skill。先调用宿主提供的提问 / 弹框能力询问用户,让用户二选一:
|
|
49
51
|
- 输入本次要登录的 E10 登录域名(base URL),形如 `https://<企业域名>`;或
|
|
50
52
|
- 从已有 profile 中选择一个已登录环境:先运行 `weaver-work-cli auth profile list` 列出候选,让用户选择。
|
|
51
53
|
2. 用户提供了**新域名**时,用真实域名执行浏览器 OAuth 登录:
|
|
52
54
|
```text
|
|
53
55
|
weaver-work-cli auth login --base-url "<用户输入的域名>" --agent_type "<当前智能体名称>"
|
|
54
56
|
```
|
|
57
|
+
该分支仅用于非 XiaoE 环境;不得先执行 `auth xiaoe`,也不得改调其他登录 Skill。
|
|
55
58
|
端口冲突时加 `--port 19801`。
|
|
56
|
-
3.
|
|
59
|
+
3. 用户明确要求切换到**已有且仍有效的 profile** 时,切换后验证登录态;这不是失效会话的替代登录方式:
|
|
57
60
|
```text
|
|
58
61
|
weaver-work-cli auth profile use PROFILE_NAME
|
|
59
62
|
weaver-work-cli auth status
|
|
@@ -67,8 +70,8 @@ weaver-work-cli auth whoami
|
|
|
67
70
|
`auth login` 会在本机 `127.0.0.1:19800` 监听浏览器回调,最长等待 5 分钟。Agent 沙箱/托管环境中的外部浏览器无法回调容器内地址。`auth xiaoe` 不会进入这条浏览器流程。执行规则:
|
|
68
71
|
|
|
69
72
|
1. 任意系统运行 `auth xiaoe` 时,收到 `xiaoe_credential_unavailable` 即反馈并停止;不要自动改跑 `auth login`。
|
|
70
|
-
2.
|
|
71
|
-
3.
|
|
73
|
+
2. 仅非 XiaoE 环境在用户确认真实 E10 域名且确认 CLI 与浏览器同机后执行 `auth login`;仍须限时等待,超时未完成即终止并反馈。
|
|
74
|
+
3. 仅非 XiaoE 环境在用户无法完成浏览器登录、且明确要求并同意人工录入时,才可使用保底方式 `weaver-work-cli auth set --eteamsid "<ETEAMSID>" --base-url "<用户确认的登录域名>"`;它不是业务认证错误的默认恢复路径。ETEAMSID 由用户从已登录浏览器主动提供,Agent 不得索取、展示或转述该值。
|
|
72
75
|
4. 严禁不加限制地前台运行 `auth xiaoe` / `auth login` 并等待 OAuth 回调。
|
|
73
76
|
|
|
74
77
|
## 登录
|
|
@@ -113,9 +116,9 @@ weaver-work-cli auth login --base-url "<用户确认的登录域名>" --agent_ty
|
|
|
113
116
|
本地文件 URL。“始终打开”偏好保存在当前本地回调地址的浏览器存储中;未识别到返回协议
|
|
114
117
|
时,页面只提示用户手动返回智能体或终端。本地 CLI 打开通道默认保留 15 分钟;通道结束
|
|
115
118
|
后页面会自动退回浏览器自定义协议打开方式,不直接显示网络请求错误。
|
|
116
|
-
智能小 E 统一登录不会经过浏览器,也不会显示“返回智能小 E
|
|
119
|
+
智能小 E 统一登录不会经过浏览器,也不会显示“返回智能小 E”弹层;该弹层只属于非 XiaoE 环境发起的 `auth login` 浏览器 OAuth。
|
|
117
120
|
|
|
118
|
-
|
|
121
|
+
仅非 XiaoE 环境在用户明确要求时,保底方式才是让用户手动写入浏览器中的 `ETEAMSID`:
|
|
119
122
|
|
|
120
123
|
```text
|
|
121
124
|
weaver-work-cli auth set --eteamsid "PCACCOUNT_xxx" --base-url "<用户确认的登录域名>" --agent_type "<当前智能体名称>"
|
|
@@ -138,7 +141,7 @@ weaver-work-cli --profile PROFILE_NAME auth status --no-check
|
|
|
138
141
|
|
|
139
142
|
## XiaoE 凭据由 CLI 独占处理
|
|
140
143
|
|
|
141
|
-
运行 `auth xiaoe
|
|
144
|
+
运行 `auth xiaoe`,或已登录的 XiaoE 业务请求被 E10 明确拒绝为会话失效时,CLI 按以下顺序自行取凭据,Agent **不参与、也不得复现**。后者全程静默、合并同一 profile 的并发恢复,并最多重放原请求 1 次;流式请求、网络错误、`partial` / `write_uncertain` 均不触发重放:
|
|
142
145
|
|
|
143
146
|
1. **平台注入凭据**:`XIAOE_USER_TOKEN` + `XIAOE_DOMAIN`(小 e 业务服务地址)。先由 Node 直接换票;失败时 CLI 可调用 npm 包自带的 `scripts/xiaoe_env.py` 兼容换票。脚本不属于 Skill,由 CLI 内部执行、解析并隐藏凭证 stdout。
|
|
144
147
|
2. **宿主 `tokens.py`**:桌面宿主 `xiaoeUserData/tokens.py`(macOS `~/Library/Application Support/xiaoeUserData/tokens.py`,Windows `%LOCALAPPDATA%\xiaoeUserData\tokens.py`);CLI 在 macOS 应用包与 Windows 按用户/全局安装目录中自动查找 XiaoE 客户端内置 Python,并优先用它执行脚本;可用 `WEAVER_XIAOE_TOKEN_SCRIPT_PATH` 指定脚本路径,用 `WEAVER_XIAOE_TOKEN_SCRIPT_PYTHON` 指定解释器。
|
|
@@ -32,7 +32,7 @@ error.stage = xiaoe_unified_login
|
|
|
32
32
|
|
|
33
33
|
收到该错误后,反馈宿主登录态或凭据注入不可用并停止。不要自动执行 `auth login`,也不要要求用户在本地终端重复执行登录。
|
|
34
34
|
|
|
35
|
-
`auth xiaoe`
|
|
35
|
+
`auth xiaoe` 不会自动降级到浏览器;当前任务已判定为 XiaoE 时不得另行执行 `auth login` 或调用其他登录 Skill。只有非 XiaoE 环境进入 `auth login` 流程时,才可能出现下列浏览器 OAuth 信号:
|
|
36
36
|
|
|
37
37
|
| 浏览器 OAuth 信号 | 含义 |
|
|
38
38
|
| --- | --- |
|
|
@@ -45,8 +45,8 @@ error.stage = xiaoe_unified_login
|
|
|
45
45
|
|
|
46
46
|
1. **立即终止**该命令,不要等待本地回调。
|
|
47
47
|
2. 向用户反馈浏览器 OAuth 在当前环境无法完成本地回调的实际原因。
|
|
48
|
-
3.
|
|
49
|
-
4.
|
|
48
|
+
3. 不自动给出“去本地终端执行”的操作;仅非 XiaoE 环境可说明浏览器授权必须在 CLI 与浏览器同机的环境执行。
|
|
49
|
+
4. 仅非 XiaoE 环境且用户明确要求保底方式时,可说明 `auth set`,但 Agent 不得索取、展示、转述或记录 ETEAMSID:
|
|
50
50
|
```text
|
|
51
51
|
weaver-work-cli auth set --eteamsid "<ETEAMSID>" --base-url "<用户确认的登录域名>" --agent_type "<当前智能体名称>"
|
|
52
52
|
```
|
|
@@ -64,7 +64,7 @@ weaver-work-cli auth xiaoe --base-url "<用户确认的 E10 域名>"
|
|
|
64
64
|
判定结论与处置:
|
|
65
65
|
|
|
66
66
|
- 域名与网络**不是**失败原因,不要再反复更换域名重试。
|
|
67
|
-
- 这属于宿主登录态、凭据注入或当前 CLI
|
|
67
|
+
- 这属于宿主登录态、凭据注入或当前 CLI 消费凭证的异常;停止并反馈。XiaoE 环境不执行 `weaver-work-cli --version`,版本检查更新由客户端负责。
|
|
68
68
|
- 不要因为一次认证失败就断言 CLI 不可用;只读诊断命令(`auth status --no-check`、`doctor --e10`)仍可作为环境检查手段。
|
|
69
69
|
|
|
70
70
|
## 可写性相关说明
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
# 安装与可用性检查
|
|
2
2
|
|
|
3
|
+
> **XiaoE 例外(覆盖全文)**:本任务已判定为 XiaoE 时,不执行本文任何 `weaver-work-cli --version`、`npm view weaver-work-cli version`、npm 安装或升级步骤。CLI 的检查更新由 XiaoE 客户端负责;直接进入登录态诊断或业务命令。若命令不存在或明确报告版本不兼容,停止并反馈 XiaoE 客户端运行时异常。
|
|
4
|
+
|
|
3
5
|
## 什么时候读取
|
|
4
6
|
|
|
5
|
-
|
|
7
|
+
仅非 XiaoE 环境在命令不可用、版本不确定、用户刚安装、全局命令可能指向旧版本,或需要确认当前安装包含哪些 Agent Skill 时读取本文件。XiaoE 环境只在命令异常时读取上面的覆盖规则并停止,不进入手工安装流程。
|
|
6
8
|
|
|
7
9
|
## 检查命令
|
|
8
10
|
|
|
@@ -113,7 +113,12 @@ Agent 不得自行拼接、改写或向用户索取上述凭证(禁止要求
|
|
|
113
113
|
- **除非错误明确提示可恢复或需要补充参数,否则不要重复刷同一个 operation**
|
|
114
114
|
- 写请求已经发出后,遇到结果不确定必须停止;不要把 `.apply` 当成可重试读操作
|
|
115
115
|
- 下载是异步任务,`.apply` 会持续轮询进度;不要因为等待时间长就中断重放
|
|
116
|
-
- **错误为 `authentication` 或 `session_expired` 时:立即停止当前操作,不要用示例占位域名或自行猜域名登录,也不要盲目重试**。先读取共享规则 `../weaver-e10-shared/references/e10-auth-and-session.md
|
|
116
|
+
- **错误为 `authentication` 或 `session_expired` 时:立即停止当前操作,不要用示例占位域名或自行猜域名登录,也不要盲目重试**。先读取共享规则 `../weaver-e10-shared/references/e10-auth-and-session.md`。
|
|
117
|
+
- 登录失效的认证方式必须由 Agent 复用本任务开始时的宿主判定,禁止调用任何其他登录 Skill。
|
|
118
|
+
- 明确为 XiaoE 时,只执行 `weaver-work-cli auth xiaoe`,不得改用 `auth login`。
|
|
119
|
+
- 统一登录返回 `authentication/xiaoe_credential_unavailable` 时停止并反馈宿主凭据不可用,不自动回退浏览器登录。
|
|
120
|
+
- 非 XiaoE 时不得执行 `auth xiaoe`;取得用户确认的真实 E10 登录域名后,执行 `weaver-work-cli auth login --base-url "<用户确认的 E10 登录域名>" --agent_type "<当前智能体名称>"`。
|
|
121
|
+
- 登录恢复后读操作可重新执行;写操作不得复用旧 continuation,必须重新 prepare 并重新确认。已返回 `partial/write_uncertain` 时先只读回查,禁止直接重放写入。
|
|
117
122
|
|
|
118
123
|
### 4) 附件、图片和文件解析确认
|
|
119
124
|
|
|
@@ -323,7 +323,7 @@
|
|
|
323
323
|
}
|
|
324
324
|
},
|
|
325
325
|
"artifactBaseline": {
|
|
326
|
-
"aggregateSha256": "
|
|
326
|
+
"aggregateSha256": "83f35c2f01d10c90a94c9770d58ee0b110bca65651229360e3d58891d7a4c322",
|
|
327
327
|
"files": [
|
|
328
328
|
{
|
|
329
329
|
"path": "src/shortcuts/archive/continuation.ts",
|
|
@@ -427,8 +427,8 @@
|
|
|
427
427
|
},
|
|
428
428
|
{
|
|
429
429
|
"path": "skills/weaver-e10-wenshuding/SKILL.md",
|
|
430
|
-
"size":
|
|
431
|
-
"sha256": "
|
|
430
|
+
"size": 18173,
|
|
431
|
+
"sha256": "e82a3d28e3095241e892181fd40719cfb03ef6e266a1a23c3b8b07a613171b60"
|
|
432
432
|
},
|
|
433
433
|
{
|
|
434
434
|
"path": "skill-template/product.json",
|
|
@@ -92,17 +92,39 @@ cliHelp: "weaver-work-cli workflow --help"
|
|
|
92
92
|
|
|
93
93
|
**判定规则:** 用户核心对象是流程实例(request)或流程发起表单时走本 Skill。要发起某个流程用 `workflow.createForm`(它内部解析当前用户**可发起**的工作流,解析不出唯一目标时直接给出候选);查询"我有哪些待办"用 `workflow.search`。涉及"姓名转人员 ID / 组织架构 / 部门岗位"时,人员与组织解析交给 `weaver-e10-hrm`,本 Skill 只在操作流程时消费其返回的人员 ID。
|
|
94
94
|
|
|
95
|
+
**独立分支例外(先判这个,再判上面的常规规则):** 用户要跨多条流程做汇总、摘要或金额合计时,直接使用只读 operation `workflow.todoSmartConvert`,并只读取 [`todo-smart-convert.md`](references/todo-smart-convert.md)。
|
|
96
|
+
|
|
97
|
+
**本分支术语(沟通、改造、写文档一律用这套说法):**
|
|
98
|
+
|
|
99
|
+
| 名词 | 含义 |
|
|
100
|
+
| --- | --- |
|
|
101
|
+
| `workflowName` | 工作流名称。**第一次分组 = 按 `workflowName` 分组**,得到的每组叫「工作流分组」 |
|
|
102
|
+
| **ai二次分组** | 工作流分组之后、在组内再切子组的过程。**只有这一步需要 AI 计划(`aiGroups`)** |
|
|
103
|
+
| **原始列表数据** | `/getTodoListData` 返回的待办条目集合,整条链路的唯一数据源 |
|
|
104
|
+
| **流程标题** | 条目字段 `requestNameTitle`;没有流程详情数据时 AI 只能靠它判断语义 |
|
|
105
|
+
| **流程详情数据** | `/getWorkflowRequest` 返回的表单字段 + 基础信息(分组素材 / 摘要素材 / 阈值指标都取它) |
|
|
106
|
+
| **requestDatas** | 工作流分组的条目集合(汇总项内部也用同名数组);**平铺输出到 `displayItems[]` 的 `type:"request"` 单条**,不是留在 `requestDatas` |
|
|
107
|
+
| `requestId` | 请求 ID。`getTodoListData` 返回的每条数据对应一个,回灌摘要、定位条目都以它为主键 |
|
|
108
|
+
|
|
109
|
+
不带限定语时说「分组」= 按 `workflowName` 的第一次分组;说「二次分组」= ai二次分组。
|
|
110
|
+
|
|
111
|
+
- 不要先调用 `workflow.search`,也不要套用它的分组或 `finalMarkdown` 输出口径。
|
|
112
|
+
- 阶段顺序、`aiGroups`(仅在需要语义侧重点时生成)与回灌、摘要规则和最终输出均以该 reference 为准;若省略 `aiGroups`,按 reference 的确定性规则继续执行;AI 计划必须基于本轮 `collect` 结果。
|
|
113
|
+
- 本分支只读;提交、置已读、催办、共享、转发、退回等写操作仍走 `workflow.batch*`。
|
|
114
|
+
- 最终交付**不区分宿主/agent 类型**,固定两份、缺一不可:① 回复里**直接内联完整的 `<browsertool>...</browsertool>` 载荷**(标签成对,`params.data` = 完整三键);② **同时**落一份**不带标签的纯 JSON 文件**(同一份载荷)并用 `present_files` 打开。超长时先提示条数与体积再输出,不要改成分组拆块。
|
|
115
|
+
|
|
95
116
|
## 选哪个命令
|
|
96
117
|
|
|
97
118
|
| 想做什么 | 命令 | 按需读取 reference |
|
|
98
119
|
| --- | --- | --- |
|
|
99
120
|
| 查看可用 operation、字段和风险等级、输出契约 | `workflow schema` | [`workflow-agent-entry.md`](references/workflow-agent-entry.md) |
|
|
100
|
-
|
|
|
121
|
+
| 常规流程列表查询与筛选(含查询分组,不做跨条目汇总) | `workflow run workflow.search` | [`workflow-query.md`](references/workflow-query.md) |
|
|
101
122
|
| 待办整体分组计数(智能分组第二步;须先确认 `oaContext.smartGrouping === true`) | `workflow run workflow.todoStat` | [`workflow-query.md`](references/workflow-query.md) |
|
|
102
123
|
| 查看流程完整详情、生成摘要、打开流程、查签字意见/流转日志 | `workflow run workflow.detail` / `workflow.summary` / `workflow.open` / `workflow.requestLog` | [`workflow-view.md`](references/workflow-view.md) |
|
|
103
124
|
| 打开 OA 页面(待办/已办/草稿/监控/创建/查看) | `workflow run workflow.pageOpen` | [`workflow-view.md`](references/workflow-view.md) |
|
|
104
125
|
| 单条流程操作:同意/提交/退回/转办/委托/转发/抄送/加审/收回/结束/征询/删除/催办 | `workflow run workflow.operatePrepare` / `workflow.operateApply` | [`workflow-operate.md`](references/workflow-operate.md) |
|
|
105
126
|
| 批量提交 / 置已读 / 催办 / 共享 / 转发 / 退回(均为单命令,一次调用完成) | `workflow run workflow.batchSubmit` / `workflow.batchRead` / `workflow.batchSupervise` / `workflow.batchShare` / `workflow.batchForward` / `workflow.batchReject` | [`workflow-batch.md`](references/workflow-batch.md) |
|
|
127
|
+
| 跨条目汇总待办 / 待办摘要 / 待办金额合计(workflow 内独立分支) | `workflow run workflow.todoSmartConvert` | [`todo-smart-convert.md`](references/todo-smart-convert.md) |
|
|
106
128
|
| 单条流程共享(人/部门/分部/群组/角色/岗位/所有人) | `workflow run workflow.sharePrepare` / `workflow.shareApply` | [`workflow-share.md`](references/workflow-share.md) |
|
|
107
129
|
| 发起/创建流程、填单、存草稿 | `workflow run workflow.createForm` / `workflow.createRequest` | [`workflow-create.md`](references/workflow-create.md) |
|
|
108
130
|
| 修改已存在流程的表单内容 | `workflow run workflow.editLoad` / `workflow.editPrepare` / `workflow.editApply` | [`workflow-edit.md`](references/workflow-edit.md) |
|