weaver-work-cli 0.1.5 → 0.1.7
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 +14 -9
- package/dist/cmd/skills/index.js +60 -0
- package/dist/internal/e10/auth/commands.js +48 -32
- package/dist/internal/e10/auth/session.js +44 -3
- package/dist/internal/e10/auth/xiaoe.js +363 -11
- package/dist/internal/e10/context.js +4 -2
- package/dist/internal/skills/detector.js +42 -0
- package/dist/internal/skills/install.js +50 -3
- package/dist/shortcuts/archive/render/search-format.js +12 -3
- package/dist/shortcuts/ebuilder-form/continuation.js +70 -0
- package/dist/shortcuts/ebuilder-form/errors.js +54 -0
- package/dist/shortcuts/ebuilder-form/host.js +1238 -0
- package/dist/shortcuts/ebuilder-form/index.js +108 -0
- package/dist/shortcuts/ebuilder-form/manifest.js +347 -0
- package/dist/shortcuts/ebuilder-form/operations/read.js +157 -0
- package/dist/shortcuts/ebuilder-form/operations/registry.js +56 -0
- package/dist/shortcuts/ebuilder-form/operations/shared.js +132 -0
- package/dist/shortcuts/ebuilder-form/operations/types.js +19 -0
- package/dist/shortcuts/ebuilder-form/operations/write.js +277 -0
- package/dist/shortcuts/ebuilder-form/operations.js +8 -0
- package/dist/shortcuts/ehr/operations/salary.js +2 -140
- package/dist/shortcuts/im/continuation.js +70 -0
- package/dist/shortcuts/{yimiaoban → im}/errors.js +14 -14
- package/dist/shortcuts/{yimiaoban → im}/host.js +26 -26
- package/dist/shortcuts/{yimiaoban → im}/index.js +42 -42
- package/dist/shortcuts/{yimiaoban → im}/manifest.js +7 -6
- package/dist/shortcuts/{yimiaoban → im}/operations/file-user.js +54 -41
- package/dist/shortcuts/{yimiaoban → im}/operations/group-read.js +46 -44
- package/dist/shortcuts/{yimiaoban → im}/operations/group-write.js +113 -66
- package/dist/shortcuts/{yimiaoban → im}/operations/msg-sync.js +164 -141
- package/dist/shortcuts/{yimiaoban → im}/operations/msg-write.js +47 -47
- package/dist/shortcuts/{yimiaoban → im}/operations/person.js +10 -10
- package/dist/shortcuts/{yimiaoban → im}/operations/registry.js +10 -8
- package/dist/shortcuts/{yimiaoban → im}/operations/session.js +82 -83
- package/dist/shortcuts/im/operations/shared.js +442 -0
- package/dist/shortcuts/{yimiaoban → im}/operations/types.js +1 -1
- package/dist/shortcuts/im/operations/user-remind.js +201 -0
- package/dist/shortcuts/{yimiaoban → im}/operations/write-util.js +7 -7
- package/dist/shortcuts/{yimiaoban → im}/operations.js +3 -3
- package/dist/shortcuts/index.js +10 -2
- package/dist/shortcuts/invoice/manifest.js +113 -10
- package/dist/shortcuts/invoice/operations/import.js +39 -14
- package/dist/shortcuts/invoice/operations/reim.js +38 -18
- package/dist/shortcuts/invoice/operations/shared.js +35 -6
- package/dist/shortcuts/jiuchuanhui/manifest.js +3 -3
- package/dist/shortcuts/jiuchuanhui/operations/registry.js +2 -2
- package/dist/shortcuts/{yimiaoban → okr}/continuation.js +10 -10
- package/dist/shortcuts/okr/errors.js +70 -0
- package/dist/shortcuts/okr/host.js +169 -0
- package/dist/shortcuts/okr/index.js +155 -0
- package/dist/shortcuts/okr/manifest.js +70 -0
- package/dist/shortcuts/okr/operations/link.js +305 -0
- package/dist/shortcuts/okr/operations/read.js +481 -0
- package/dist/shortcuts/okr/operations/registry.js +31 -0
- package/dist/shortcuts/okr/operations/shared.js +381 -0
- package/dist/shortcuts/okr/operations/types.js +88 -0
- package/dist/shortcuts/okr/operations/write.js +838 -0
- package/dist/shortcuts/okr/operations.js +8 -0
- package/dist/shortcuts/project/continuation.js +70 -0
- package/dist/shortcuts/project/errors.js +53 -0
- package/dist/shortcuts/project/host.js +160 -0
- package/dist/shortcuts/project/index.js +106 -0
- package/dist/shortcuts/project/manifest.js +36 -0
- package/dist/shortcuts/project/operations/read.js +551 -0
- package/dist/shortcuts/project/operations/registry.js +31 -0
- package/dist/shortcuts/project/operations/shared.js +68 -0
- package/dist/shortcuts/project/operations/types.js +39 -0
- package/dist/shortcuts/project/operations/write.js +266 -0
- package/dist/shortcuts/project/operations.js +8 -0
- package/dist/shortcuts/workflow/continuation.js +508 -0
- package/dist/shortcuts/workflow/endpoints.js +149 -0
- package/dist/shortcuts/workflow/errors.js +112 -0
- package/dist/shortcuts/workflow/host.js +224 -0
- package/dist/shortcuts/workflow/index.js +116 -0
- package/dist/shortcuts/workflow/manifest.js +30 -0
- package/dist/shortcuts/workflow/operations/form.js +4159 -0
- package/dist/shortcuts/workflow/operations/read.js +3778 -0
- package/dist/shortcuts/workflow/operations/registry.js +33 -0
- package/dist/shortcuts/workflow/operations/shared.js +167 -0
- package/dist/shortcuts/workflow/operations/types.js +44 -0
- package/dist/shortcuts/workflow/operations/write.js +1991 -0
- package/dist/shortcuts/workflow/operations.js +119 -0
- package/dist/shortcuts/workflow/state.js +182 -0
- package/docs/SKILL.md +5 -3
- package/docs/_catalog.md +10 -1
- package/docs/agent-invoice.md +2 -2
- package/docs/agent-skill-install.md +2 -2
- package/docs/e10-auth.md +3 -1
- package/docs/ebuilder-form.md +38 -0
- package/docs/im.md +104 -0
- package/docs/invoice.md +5 -5
- package/docs/okr.md +122 -0
- package/docs/operation-manual.md +10 -7
- package/docs/project.md +69 -0
- package/docs/skill-review-2026-09-19.md +68 -0
- package/package.json +3 -2
- package/scripts/package-skill.mjs +38 -11
- package/scripts/sync-connector-skills.mjs +172 -0
- package/skill-template/business-info.json +357 -16
- package/skill-template/domains/ebuilder-form.md +5 -0
- package/skill-template/domains/okr.md +18 -0
- package/skill-template/domains/shijingran.md +3 -0
- package/skill-template/domains/skill-maker.md +4 -4
- package/skill-template/domains/workflow.md +22 -0
- package/skill-template/domains/yepiaotong.md +4 -2
- package/skill-template/domains/yimiaoban.md +13 -10
- package/skill-template/product.json +5 -0
- package/skill-template/skill-template.md +1 -0
- package/skills/weaver-e10-calendar/SKILL.md +5 -1
- package/skills/weaver-e10-calendar/references/calendar-query.md +7 -0
- package/skills/weaver-e10-calendar/references/source-manifest.json +314 -32
- package/skills/weaver-e10-ebuilder-form/SKILL.md +123 -0
- package/skills/weaver-e10-ebuilder-form/references/context-routing.md +90 -0
- package/skills/weaver-e10-ebuilder-form/references/custom-api.md +86 -0
- package/skills/weaver-e10-ebuilder-form/references/disabled-capabilities.md +50 -0
- package/skills/weaver-e10-ebuilder-form/references/fields-browser.md +100 -0
- package/skills/weaver-e10-ebuilder-form/references/list-nlist.md +91 -0
- package/skills/weaver-e10-ebuilder-form/references/openapi-read.md +74 -0
- package/skills/weaver-e10-ebuilder-form/references/openapi-write.md +86 -0
- package/skills/weaver-e10-ebuilder-form/references/source-manifest.json +107 -0
- package/skills/weaver-e10-esb/SKILL.md +1 -1
- package/skills/weaver-e10-esb/references/source-manifest.json +15 -14
- package/skills/weaver-e10-hrm/SKILL.md +1 -1
- package/skills/weaver-e10-hrm/references/source-manifest.json +357 -38
- package/skills/weaver-e10-jiuchuanhui/SKILL.md +22 -4
- package/skills/weaver-e10-jiuchuanhui/references/clue.md +4 -2
- package/skills/weaver-e10-jiuchuanhui/references/contact.md +1 -1
- package/skills/weaver-e10-jiuchuanhui/references/customer.md +3 -3
- package/skills/weaver-e10-jiuchuanhui/references/disabled-capabilities.md +1 -1
- package/skills/weaver-e10-jiuchuanhui/references/discovery-config.md +10 -10
- package/skills/weaver-e10-jiuchuanhui/references/general-helpers.md +3 -3
- package/skills/weaver-e10-jiuchuanhui/references/sale.md +7 -7
- package/skills/weaver-e10-jiuchuanhui/references/source-manifest.json +3 -3
- package/skills/weaver-e10-jucailin/SKILL.md +2 -2
- package/skills/weaver-e10-mail/SKILL.md +22 -6
- package/skills/weaver-e10-meeting/SKILL.md +22 -1
- package/skills/weaver-e10-okr/SKILL.md +139 -0
- package/skills/weaver-e10-okr/references/okr-align.md +59 -0
- package/skills/weaver-e10-okr/references/okr-keyresult.md +68 -0
- package/skills/weaver-e10-okr/references/okr-link-routing.md +67 -0
- package/skills/weaver-e10-okr/references/okr-query.md +105 -0
- package/skills/weaver-e10-okr/references/okr-write.md +94 -0
- package/skills/weaver-e10-okr/references/source-manifest.json +672 -0
- package/skills/weaver-e10-plan/SKILL.md +3 -3
- package/skills/weaver-e10-plan/references/plan-report-write.md +1 -1
- package/skills/weaver-e10-plan/references/source-manifest.json +20 -20
- package/skills/weaver-e10-qiyecheng/SKILL.md +21 -1
- package/skills/weaver-e10-qiyecheng/references/source-manifest.json +17 -17
- package/skills/weaver-e10-shared/SKILL.md +79 -11
- package/skills/weaver-e10-shared/references/e10-auth-and-session.md +41 -8
- package/skills/weaver-e10-shared/references/non-interactive-environment.md +78 -0
- package/skills/weaver-e10-shared/references/weaver-e10-installation.md +39 -0
- package/skills/weaver-e10-shijingran/SKILL.md +83 -0
- package/skills/weaver-e10-shijingran/references/field-resolution.md +105 -0
- package/skills/weaver-e10-shijingran/references/operations.md +154 -0
- package/skills/weaver-e10-shijingran/references/source-manifest.json +1380 -0
- package/skills/weaver-e10-shijingran/references/write-operations.md +90 -0
- package/skills/weaver-e10-skill-maker/SKILL.md +26 -9
- package/skills/weaver-e10-skill-maker/references/business-skill-generation.md +39 -8
- package/skills/weaver-e10-skill-maker/references/detector-validation.md +25 -8
- package/skills/weaver-e10-skill-maker/references/module-cli-generation.md +66 -5
- package/skills/weaver-e10-skill-maker/references/module-gap-audit-and-repair.md +86 -0
- package/skills/weaver-e10-skill-maker/references/source-update-detection.md +59 -5
- package/skills/weaver-e10-skill-maker/references/weaver-skill-style.md +16 -8
- package/skills/weaver-e10-wenshuding/SKILL.md +28 -4
- package/skills/weaver-e10-wenshuding/references/archive-search.md +14 -0
- package/skills/weaver-e10-wenshuding/references/source-manifest.json +27 -26
- package/skills/weaver-e10-workflow/SKILL.md +250 -0
- package/skills/weaver-e10-workflow/references/source-manifest.json +1062 -0
- package/skills/weaver-e10-workflow/references/workflow-agent-entry.md +96 -0
- package/skills/weaver-e10-workflow/references/workflow-batch.md +275 -0
- package/skills/weaver-e10-workflow/references/workflow-create.md +182 -0
- package/skills/weaver-e10-workflow/references/workflow-edit.md +106 -0
- package/skills/weaver-e10-workflow/references/workflow-memory.md +165 -0
- package/skills/weaver-e10-workflow/references/workflow-operate.md +153 -0
- package/skills/weaver-e10-workflow/references/workflow-query.md +821 -0
- package/skills/weaver-e10-workflow/references/workflow-share.md +117 -0
- package/skills/weaver-e10-workflow/references/workflow-view.md +189 -0
- package/skills/weaver-e10-yepiaotong/SKILL.md +28 -28
- package/skills/weaver-e10-yepiaotong/references/invoice-disabled-capabilities.md +11 -5
- package/skills/weaver-e10-yepiaotong/references/invoice-import.md +14 -8
- package/skills/weaver-e10-yepiaotong/references/invoice-issuing-examples.md +9 -43
- package/skills/weaver-e10-yepiaotong/references/invoice-issuing.md +8 -0
- package/skills/weaver-e10-yepiaotong/references/invoice-reim.md +13 -17
- package/skills/weaver-e10-yepiaotong/references/reim-api-reference.md +6 -7
- package/skills/weaver-e10-yepiaotong/references/reim-examples.md +2 -2
- package/skills/weaver-e10-yepiaotong/references/source-manifest.json +1155 -553
- package/skills/weaver-e10-yimiaoban/SKILL.md +56 -38
- package/skills/weaver-e10-yimiaoban/references/ding-write.md +8 -8
- package/skills/weaver-e10-yimiaoban/references/error-codes.md +16 -0
- package/skills/weaver-e10-yimiaoban/references/field-resolution.md +10 -10
- package/skills/weaver-e10-yimiaoban/references/file-user-i18n.md +12 -12
- package/skills/weaver-e10-yimiaoban/references/group-read.md +16 -16
- package/skills/weaver-e10-yimiaoban/references/group-write.md +17 -15
- package/skills/weaver-e10-yimiaoban/references/msg-read.md +21 -17
- package/skills/weaver-e10-yimiaoban/references/msg-write.md +10 -10
- package/skills/weaver-e10-yimiaoban/references/person.md +6 -6
- package/skills/weaver-e10-yimiaoban/references/safety-boundaries.md +15 -11
- package/skills/weaver-e10-yimiaoban/references/session-sysmsg.md +11 -10
- package/skills/weaver-e10-yimiaoban/references/source-manifest.json +2164 -154
- package/skills/weaver-e10-yimiaoban/references/user-remind.md +75 -0
- package/skills/weaver-e10-ziguanjia/SKILL.md +4 -2
- package/skills/weaver-e10-ziguanjia/references/source-manifest.json +99 -29
- package/tools/weaver-skill-detector-1.0.13/SKILL.md +253 -0
- package/tools/weaver-skill-detector-1.0.13/_meta.json +6 -0
- package/tools/weaver-skill-detector-1.0.13/references/checklist.md +298 -0
- package/tools/weaver-skill-detector-1.0.13/scripts/validate_skill.py +4190 -0
- package/dist/shortcuts/yimiaoban/operations/shared.js +0 -236
- package/docs/yimiaoban.md +0 -86
- package/skills/weaver-e10-calendar/product.json +0 -8
- package/skills/weaver-e10-esb/product.json +0 -8
- package/skills/weaver-e10-hrm/product.json +0 -8
- package/skills/weaver-e10-jiuchuanhui/product.json +0 -8
- package/skills/weaver-e10-jucailin/product.json +0 -8
- package/skills/weaver-e10-mail/product.json +0 -8
- package/skills/weaver-e10-meeting/product.json +0 -8
- package/skills/weaver-e10-plan/product.json +0 -8
- package/skills/weaver-e10-qiyecheng/product.json +0 -8
- package/skills/weaver-e10-skill-maker/product.json +0 -8
- package/skills/weaver-e10-wenshuding/product.json +0 -8
- package/skills/weaver-e10-yepiaotong/product.json +0 -8
- package/skills/weaver-e10-yepiaotong/references/invoice-red.md +0 -261
- package/skills/weaver-e10-yimiaoban/product.json +0 -8
- package/skills/weaver-e10-ziguanjia/product.json +0 -8
- /package/dist/shortcuts/{yimiaoban → im}/operations/msg-parse.js +0 -0
|
@@ -2,20 +2,20 @@
|
|
|
2
2
|
|
|
3
3
|
## 何时使用
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
给某人/某群发文本、图片或文件消息;撤回自己发出的消息(时限以回包 `withdrawInterval` 为准);群消息置顶/取消置顶。全部是两段式写操作:
|
|
6
6
|
|
|
7
7
|
| operation 对 | 动作 |
|
|
8
8
|
| --- | --- |
|
|
9
|
-
| `
|
|
10
|
-
| `
|
|
11
|
-
| `
|
|
12
|
-
| `
|
|
9
|
+
| `im.msg.send.single.prepare` / `.apply` | 发送单聊消息 |
|
|
10
|
+
| `im.msg.send.group.prepare` / `.apply` | 发送群聊消息 |
|
|
11
|
+
| `im.msg.withdraw.prepare` / `.apply` | 撤回消息(`type`=single/group) |
|
|
12
|
+
| `im.msg.top.set.prepare` / `.apply` | 群消息置顶/取消(`type`:1 置顶 2 取消,或 `cancel:true`) |
|
|
13
13
|
|
|
14
14
|
## 输入要点(prepare 阶段)
|
|
15
15
|
|
|
16
16
|
- 发送单聊:`toUid`+`toCid`(接收人,先用 `person.resolve` 解析);群聊:`groupId`。文本用 `txt`;图片用本地路径 `img`;文件用本地路径 `file`(CLI 会先上传到 E10 文件服务再发送,`img`/`file` 与 `txt` 可组合)。
|
|
17
17
|
- **全空白文本(空格/换行)不算内容,会被拒绝(`content_required`)**;`img` 与 `file` 一次只能传一种(`content_conflict`)。
|
|
18
|
-
- 撤回:`type`(single/group)+ `msgid`(消息 `ser_msgid`);单聊还需 `toUid`/`toCid`,群聊还需 `groupId
|
|
18
|
+
- 撤回:`type`(single/group)+ `msgid`(消息 `ser_msgid`);单聊还需 `toUid`/`toCid`,群聊还需 `groupId`。**只能撤回本人发出的消息,且有时限**——`apply` 回包会给出该环境实际时限(`withdrawInterval`,实测如"30 秒",不同环境可能是"2 分钟"),超时(1505)错误里也会带上;以回包值为准,不要写死时限。
|
|
19
19
|
- 置顶:`groupId` + `msgid` + `type`(1 置顶 / 2 取消)。
|
|
20
20
|
- 本地文件路径:绝对路径或相对 CLI 运行目录的路径均可;上传前必须先与用户确认该文件内容可能进入大模型上下文并被发送到 E10 文件服务。
|
|
21
21
|
|
|
@@ -24,13 +24,13 @@
|
|
|
24
24
|
Windows PowerShell:
|
|
25
25
|
|
|
26
26
|
```powershell
|
|
27
|
-
weaver-work-cli --json
|
|
27
|
+
weaver-work-cli --json im run im.msg.send.group.prepare --input-json '{"groupId":"1788334281700000004","txt":"下午 3 点评审,请准时参加"}'
|
|
28
28
|
```
|
|
29
29
|
|
|
30
30
|
macOS/Linux(bash/zsh):
|
|
31
31
|
|
|
32
32
|
```bash
|
|
33
|
-
weaver-work-cli --json
|
|
33
|
+
weaver-work-cli --json im run im.msg.send.group.prepare --input-json '{"groupId":"1788334281700000004","txt":"下午 3 点评审,请准时参加"}'
|
|
34
34
|
```
|
|
35
35
|
|
|
36
36
|
prepare 返回 `data.summary`(动作/目标/内容预览)与 `data.continuation`。向用户确认后执行 apply:
|
|
@@ -38,13 +38,13 @@ prepare 返回 `data.summary`(动作/目标/内容预览)与 `data.continuat
|
|
|
38
38
|
Windows PowerShell:
|
|
39
39
|
|
|
40
40
|
```powershell
|
|
41
|
-
weaver-work-cli --json
|
|
41
|
+
weaver-work-cli --json im run im.msg.send.group.apply --input-json '{"confirm":true,"continuation":"<prepare 返回的 continuation>"}'
|
|
42
42
|
```
|
|
43
43
|
|
|
44
44
|
macOS/Linux(bash/zsh):
|
|
45
45
|
|
|
46
46
|
```bash
|
|
47
|
-
weaver-work-cli --json
|
|
47
|
+
weaver-work-cli --json im run im.msg.send.group.apply --input-json '{"confirm":true,"continuation":"<prepare 返回的 continuation>"}'
|
|
48
48
|
```
|
|
49
49
|
|
|
50
50
|
## 注意
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
|
|
7
7
|
| operation | 用途 |
|
|
8
8
|
| --- | --- |
|
|
9
|
-
| `
|
|
10
|
-
| `
|
|
9
|
+
| `im.person.resolve` | 按姓名/工号/手机/邮箱**模糊**查询在职员工 → uid/cid/部门 |
|
|
10
|
+
| `im.person.resolveByIds` | 按 uid 批量解析 → 姓名/部门/岗位/cid(一次最多 100,超出自动分批) |
|
|
11
11
|
|
|
12
12
|
## 输入要点
|
|
13
13
|
|
|
@@ -20,15 +20,15 @@
|
|
|
20
20
|
Windows PowerShell:
|
|
21
21
|
|
|
22
22
|
```powershell
|
|
23
|
-
weaver-work-cli --json
|
|
24
|
-
weaver-work-cli --json
|
|
23
|
+
weaver-work-cli --json im run im.person.resolve --input-json '{"name":"初四十九"}'
|
|
24
|
+
weaver-work-cli --json im run im.person.resolveByIds --input-json '{"ids":["100234","100235"]}'
|
|
25
25
|
```
|
|
26
26
|
|
|
27
27
|
macOS/Linux(bash/zsh):
|
|
28
28
|
|
|
29
29
|
```bash
|
|
30
|
-
weaver-work-cli --json
|
|
31
|
-
weaver-work-cli --json
|
|
30
|
+
weaver-work-cli --json im run im.person.resolve --input-json '{"name":"初四十九"}'
|
|
31
|
+
weaver-work-cli --json im run im.person.resolveByIds --input-json '{"ids":["100234","100235"]}'
|
|
32
32
|
```
|
|
33
33
|
|
|
34
34
|
## 注意
|
|
@@ -1,21 +1,23 @@
|
|
|
1
1
|
# 易秒办红线与边界
|
|
2
2
|
|
|
3
|
-
本文件汇总易秒办业务域**不可违反**的红线,供写操作/消息展示前自查。写协议(prepare→apply、continuation、停止条件)见 [`msg-write.md`](msg-write.md)、[`ding-write.md`](ding-write.md)、[`group-write.md`](group-write.md);共享层通用规则见 `weaver-
|
|
3
|
+
本文件汇总易秒办业务域**不可违反**的红线,供写操作/消息展示前自查。写协议(prepare→apply、continuation、停止条件)见 [`msg-write.md`](msg-write.md)、[`ding-write.md`](ding-write.md)、[`group-write.md`](group-write.md);共享层通用规则见 `weaver-e10-shared`。
|
|
4
4
|
|
|
5
5
|
## 红线(违规 = 必须停下说明,不绕过)
|
|
6
6
|
|
|
7
7
|
1. **请求体禁止操作人字段**:任何 operation 的输入都不接受 `user`/`sender`/`creator`/`operator` 等操作人字段;操作者由会话 `eteamsid` 识别。不要在入参里补这些字段,CLI 会直接拒绝(`forbidden_keys`)。
|
|
8
|
-
2. **人名一律走 hrm**:姓名解析(消息发送者、群成员、阅读人、@提及)只认 `
|
|
8
|
+
2. **人名一律走 hrm**:姓名解析(消息发送者、群成员、阅读人、@提及)只认 `im.person.resolve`/`resolveByIds`(底层 `/api/hrm/common/getEmployeeByIds`)或消息行里的 hrm 姓名;**禁止用 IM 群成员接口返回的 `name` 字段**展示姓名,禁止本地猜测/拼表。
|
|
9
9
|
3. **uid/cid/群 id 非 0、按字符串传输**:uint64 必须字符串化;`0`、空串直接拒绝。
|
|
10
|
-
4.
|
|
11
|
-
5. **时间范围查询转 id
|
|
12
|
-
6.
|
|
13
|
-
7.
|
|
14
|
-
8.
|
|
15
|
-
9.
|
|
16
|
-
10.
|
|
17
|
-
11.
|
|
18
|
-
12.
|
|
10
|
+
4. **不本地过滤、分页口径固定**:搜索/筛选一律服务端完成(`mask`/`cond`/`type` 等),**禁止先拉数据再本地过滤**;唯一例外是 `session.list` 的 `type`(接口本身不支持类型条件,CLI 与源脚本同为本地筛选,属于模块既定行为,不要据此扩展到其它字段)。分页口径固定:**有界区间**(时间范围 / 默认当天 / 显式 `end`)由 CLI 自动循环翻页拉完(上限 100 页),直接展示即可;**无界区间**(`latest:true`)只拉一页,需要更早数据时用 `nextStart` 显式续拉,同一轮内不要连续多次续拉;**会话列表不自动翻页**,用 `nextMsgid` 显式续拉。
|
|
11
|
+
5. **时间范围查询转 id 区间 + 强制收敛 7 天**:单聊/群聊/系统消息历史不支持服务端时间过滤,CLI 把 `from/to` 换算为消息 id 区间;跨度 > 7 天自动收敛为该范围最后 7 个自然日,`rangeShrink.notice` **必须原样转述给用户**;要更早历史就按 ≤ 7 天分段,不要替用户改口径。
|
|
12
|
+
6. **本人 IM 身份只用于本机组装**:`group.search` 的 `members/owner/creator` 条件、撤回/必达消息体、建群自检、消息「我」的判定,由 CLI 用 `teamsCheck` 取得的本人 `imCid`/`imUid` 完成;调用方不要传、也传不了这些身份(`user`/`sender`/`operator` 会被 `forbidden_key` 拒绝),不要自行拼 `cid`/`uid` 顶替。
|
|
13
|
+
7. **消息展示完整不截断**:拉到的 `content` 完整展示,无论多长;不得自行截断/省略/改写正文。输出顺序为最新在前;渲染表格时转义 `|`、保留换行提示(⏎)、媒体显示为 `[图片]/[视频]/[文件]名称` 且预览/下载链接保持可点击,必达消息保留 `[必达]` 前缀。
|
|
14
|
+
8. **写操作只认 CLI 签发的 continuation**:不手工拼、不复用、不跨操作;prepare 后 10 分钟有效;`apply` 不自动重试。
|
|
15
|
+
9. **禁止发送空白消息**:`txt` 为空或全空白(空格/换行)不算内容,CLI 直接返回 `content_required`,需提示用户提供非空内容。
|
|
16
|
+
10. **超时即失败**:普通请求超过 15 秒即视为失败(上传 15/60 秒),不再重试,向用户说明失败原因;禁止无限重试或静默换接口。
|
|
17
|
+
11. **未匹配不猜测**:人员/群未匹配(`total=0`/空)时直接告知「未找到『XX』,请确认名称是否正确」并停止。🔴 禁止翻历史会话、拉会话列表、按相似名/部分名模糊搜索去猜人,也不要推荐"可能的人"。
|
|
18
|
+
12. **禁止拉全量获取数量**:不允许通过逐页拉全量统计消息总数/会话总数等;触发此类需求(如"一共有多少条消息")直接回复「无法统计总数,功能暂时不支持」,不提供逐页全量变通。数量只基于本次返回(如 `total=N`)。**有界区间的自动翻页只服务于"按范围取数据",同样不能用来做全量计数。**
|
|
19
|
+
13. **旧字段兼容要显式**:`file.upload` 的旧名 `filePath`/`shareGroups` 仍可用,但与新名 `file`/`shareGroup` 同时出现且取值不一致时返回 `alias_conflict`;只保留一个,不要依赖"后者覆盖前者"。
|
|
20
|
+
14. **数据对不上不得自行猜测**:接口返回与预期不符(返回 0 条/条数不符/字段缺失)时,按下面模板先给证据再让用户选方向;禁止自作主张换参数反复探测、换同类型接口或编造数据。
|
|
19
21
|
|
|
20
22
|
## 写链停止条件
|
|
21
23
|
|
|
@@ -52,6 +54,8 @@
|
|
|
52
54
|
| `1303` | 无聊天记录 | 按成功空列表(看 `emptyReason`),不报错 |
|
|
53
55
|
| `1209` / 群不存在 | 群不可读/已解散 | 告知用户 |
|
|
54
56
|
| `forbidden_keys` | 传了操作人字段 | 去掉后重试(说明红线) |
|
|
57
|
+
| `alias_conflict` | 旧字段与新字段同时出现且取值不一致 | 只保留其中一个后重试 |
|
|
58
|
+
| `self_identity_missing` | 需要本人 cid/uid 的查询取不到有效身份 | 说明登录态不完整,按共享规则重新登录 |
|
|
55
59
|
| `context_mismatch` / `continuation_expired` | 会话/租户或超时变化 | 重新 prepare |
|
|
56
60
|
| `target_changed` | prepare 后目标/内容指纹变化 | 重新 prepare |
|
|
57
61
|
| `members_resolve_failed` | 成员 hrm 解析失败 | 列失败项,问是否 `removeFailed:true` |
|
|
@@ -6,32 +6,32 @@
|
|
|
6
6
|
|
|
7
7
|
| operation | 用途 |
|
|
8
8
|
| --- | --- |
|
|
9
|
-
| `
|
|
10
|
-
| `
|
|
11
|
-
| `
|
|
12
|
-
| `
|
|
9
|
+
| `im.session.list` | 拉当前用户会话列表(单聊/群聊/系统消息,名称与副标题已解析) |
|
|
10
|
+
| `im.sysmsg.groupSearch` | 按名称搜系统消息分组/类型配置(供 query 使用) |
|
|
11
|
+
| `im.sysmsg.typeSync` | 按 gids/tids 拉系统消息分组/类型配置 |
|
|
12
|
+
| `im.sysmsg.query` | 拉系统消息(流程/任务/公文等),支持阅读维度/处理状态/时间范围/单页倒序 |
|
|
13
13
|
|
|
14
14
|
## 输入要点
|
|
15
15
|
|
|
16
|
-
- `session.list`:`num` 默认 20 上限 50;`flag` 0 up+down / 1 up / 2 down(默认 2,从最新拉);`msgid`
|
|
16
|
+
- `session.list`:`num` 默认 20 上限 50;`flag` 0 up+down / 1 up / 2 down(默认 2,从最新拉);`msgid` 锚点实现翻页(取上页返回的 `nextMsgid`);`type` 只过滤该 session_type;`around` 表示锚点附近上下各半。**会话列表不参与消息类自动翻页**:一次只返回一页,更旧会话需用户明确要求后用 `nextMsgid` 继续。
|
|
17
17
|
- 会话返回带 `sessionTypeName`(单聊/群聊/系统消息)、`name`(单聊=对方姓名、群聊=群名、系统=分组名)、`unread`(来自 `unread_count`)、`unreadLabel`(免打扰会话显示 `N(免打扰)`)、`time`(会话更新时间)、`subtitle`(发送者:最近消息内容)、`lastMsgid`(下一页锚点 `nextMsgid`)。
|
|
18
18
|
- `sysmsg.groupSearch` 用名称找分组/类型(流程/待办/公告等),返回 gid/tid 供 `typeSync` 与 `query`。
|
|
19
|
-
- `sysmsg.query`:**必填 `group`(系统分组 id,来自 `groupSearch`/会话列表)**,可选 `type`(消息类型 id)、`flag`(0 不分已读未读/1 已读/2 未读)、`deal`(0 全部/1 未处理/2 已处理)、`num`(默认
|
|
19
|
+
- `sysmsg.query`:**必填 `group`(系统分组 id,来自 `groupSearch`/会话列表)**,可选 `type`(消息类型 id)、`flag`(0 不分已读未读/1 已读/2 未读)、`deal`(0 全部/1 未处理/2 已处理)、`num`(默认 **50**、上限 50)、时间范围 `from`/`to`/`latest`、显式 `start`/`end`。分页口径与聊天消息一致:有界区间(时间范围/默认当天/显式 `end`)自动循环翻页拉完,`latest:true` 只拉一页;`from`/`to` 跨度 > 7 天自动收敛为最后 7 个自然日并把 `rangeShrink.notice` 转述给用户。系统消息「已读/处理」类状态更新在需要时由 Agent 引导用户到易秒办处理,CLI 不伪装处理。
|
|
20
20
|
|
|
21
21
|
## 命令
|
|
22
22
|
|
|
23
23
|
Windows PowerShell:
|
|
24
24
|
|
|
25
25
|
```powershell
|
|
26
|
-
weaver-work-cli --json
|
|
27
|
-
weaver-work-cli --json
|
|
26
|
+
weaver-work-cli --json im run im.session.list --input-json '{"num":20}'
|
|
27
|
+
weaver-work-cli --json im run im.sysmsg.query --input-json '{"group":110,"num":50,"flag":2}'
|
|
28
28
|
```
|
|
29
29
|
|
|
30
30
|
macOS/Linux(bash/zsh):
|
|
31
31
|
|
|
32
32
|
```bash
|
|
33
|
-
weaver-work-cli --json
|
|
34
|
-
weaver-work-cli --json
|
|
33
|
+
weaver-work-cli --json im run im.session.list --input-json '{"num":20}'
|
|
34
|
+
weaver-work-cli --json im run im.sysmsg.query --input-json '{"group":110,"num":50,"flag":2}'
|
|
35
35
|
```
|
|
36
36
|
|
|
37
37
|
## 输出处理
|
|
@@ -39,6 +39,7 @@ weaver-work-cli --json yimiaoban run yimiaoban.sysmsg.query --input-json '{"grou
|
|
|
39
39
|
- 会话列表渲染:单聊/群聊显示名称(走 hrm/群信息),系统消息显示分组名;副标题按类型给最近消息预览,媒体会话显示 `[图片]xxx.png`/`[文件]xxx.pdf` 形式,必达消息保留 `[必达]` 前缀。
|
|
40
40
|
- 列表结果大时按共享规则汇总(只给关键列 + 总数),不要整表倾倒;按需翻页。
|
|
41
41
|
- `sysmsg.query` 返回 `dealMode`:`true` 表示该分组以**处理状态**为准(`statusLabel` = 已处理/未处理),`false` 表示以**阅读状态**为准(已读/未读);`title` 为系统消息标题(如流程标题),展示时标题一行、内容一行。
|
|
42
|
+
- 系统消息同样是分页字段:`pages`/`autoPaged`/`pageSize`/`exhausted`/`hasMore`/`nextStart`/`range`/`rangeShrink`;`start` 是**排除边界**(返回 id `< start`),CLI 已按消息 id 去重。
|
|
42
43
|
|
|
43
44
|
## 失败处理
|
|
44
45
|
|