weaver-work-cli 0.1.38 → 0.1.40

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.
Files changed (166) hide show
  1. package/README.md +7 -3
  2. package/dist/chunks/{archive-PDV724YK.js → archive-JHTONRST.js} +556 -66
  3. package/dist/chunks/{archive-oa-4XE4MNXQ.js → archive-oa-FCHLCPHC.js} +2 -2
  4. package/dist/chunks/{asset-PDL2QE2N.js → asset-RLIHC7DB.js} +2 -2
  5. package/dist/chunks/asset-idle-KVOFTLCP.js +670 -0
  6. package/dist/chunks/{attachment-content-MDDGOE5E.js → attachment-content-RZYDB3MB.js} +3 -3
  7. package/dist/chunks/{blog-UYR3EUXW.js → blog-42OZTJNP.js} +2 -2
  8. package/dist/chunks/{caizhilian-LG2X5NMF.js → caizhilian-KRK547K5.js} +2 -2
  9. package/dist/chunks/{calendar-FG4BAZHE.js → calendar-RTWAMKHD.js} +2 -2
  10. package/dist/chunks/{chunk-J7USS3ED.js → chunk-4CTESSKI.js} +4 -4
  11. package/dist/chunks/{chunk-OJQUJZQF.js → chunk-4TEDNCON.js} +45 -5
  12. package/dist/chunks/chunk-57IECMWX.js +487 -0
  13. package/dist/chunks/{chunk-ELYDWBZJ.js → chunk-7BRU4EFH.js} +13 -7
  14. package/dist/chunks/{chunk-6LTFIFLM.js → chunk-7E6MUOEK.js} +2 -2
  15. package/dist/chunks/{chunk-KKRL3REV.js → chunk-7U577Q7U.js} +2 -2
  16. package/dist/chunks/{chunk-UJJD4QWF.js → chunk-CAQNBBQA.js} +2 -2
  17. package/dist/chunks/{chunk-CORFRD7Q.js → chunk-CXRQWOZ5.js} +2 -2
  18. package/dist/chunks/{chunk-GGJFMNJM.js → chunk-FLS4DPGP.js} +110 -16
  19. package/dist/chunks/{chunk-JSMFPO43.js → chunk-I566ZYNF.js} +1 -1
  20. package/dist/chunks/{chunk-6FTTSA45.js → chunk-IZSSVYAG.js} +2 -2
  21. package/dist/chunks/{chunk-XJY7G4DD.js → chunk-JWRZM2H2.js} +3 -3
  22. package/dist/chunks/{chunk-NI6GIPIM.js → chunk-LFMSDBZN.js} +529 -395
  23. package/dist/chunks/{chunk-VRYHGG6O.js → chunk-LN447PY2.js} +92 -51
  24. package/dist/chunks/{chunk-NR6RKXPA.js → chunk-NETCCARD.js} +4 -2
  25. package/dist/chunks/{chunk-Z32KWY6G.js → chunk-NJKREDA3.js} +1 -1
  26. package/dist/chunks/{chunk-FUWVHMVV.js → chunk-SPRHHSVC.js} +2 -2
  27. package/dist/chunks/{chunk-IZUDA353.js → chunk-T6EGVBKU.js} +1 -1
  28. package/dist/chunks/{chunk-DMV2TOMH.js → chunk-VNBU55SL.js} +428 -145
  29. package/dist/chunks/{chunk-UZZBA6PV.js → chunk-WFFNM65B.js} +47 -6
  30. package/dist/chunks/{chunk-EG6ZU444.js → chunk-ZUX3P6BQ.js} +10 -5
  31. package/dist/chunks/{conflict-BQZEQ4SP.js → conflict-VR55AOOO.js} +2 -2
  32. package/dist/chunks/{contract-XIRAFTEV.js → contract-HI4FNPYE.js} +2 -2
  33. package/dist/chunks/{cowork-BLG62BL2.js → cowork-HJLI353D.js} +12 -5
  34. package/dist/chunks/{ebuilder-form-NUKG5QW4.js → ebuilder-form-HTGI63UU.js} +3 -3
  35. package/dist/chunks/{ehr-2STW5ILH.js → ehr-GYXIYH3A.js} +2 -2
  36. package/dist/chunks/env-DW3G4HUO.js +19 -0
  37. package/dist/chunks/{esb-UUDQUNKY.js → esb-I5INCEFE.js} +4 -4
  38. package/dist/chunks/factory-TKXGXS6L.js +30 -0
  39. package/dist/chunks/{fna-6RCY4NU5.js → fna-K2MHTQ24.js} +2 -2
  40. package/dist/chunks/group-chat-VYBNMJLG.js +18 -0
  41. package/dist/chunks/{host-FWDOSRH5.js → host-256GVCAH.js} +3 -3
  42. package/dist/chunks/{host-EJZFROU3.js → host-D5SERMAJ.js} +3 -3
  43. package/dist/chunks/{host-RHM3NPXV.js → host-JM4YVHFM.js} +3 -3
  44. package/dist/chunks/{host-7RXEDMAH.js → host-L3VLITMT.js} +3 -3
  45. package/dist/chunks/{host-UFF33TWJ.js → host-ZUQTJYYK.js} +3 -3
  46. package/dist/chunks/{hrm-PKJ6ELSH.js → hrm-VLRBKTZB.js} +3 -3
  47. package/dist/chunks/{im-YJAXS7CO.js → im-QK3VTLXK.js} +8 -8
  48. package/dist/chunks/{invoice-HWVSXGX6.js → invoice-T5JTA32H.js} +3 -3
  49. package/dist/chunks/{jiuchuanhui-L7VKILZB.js → jiuchuanhui-P2FNEQVZ.js} +2 -2
  50. package/dist/chunks/{lazy-dispatch-NMYEIHRH.js → lazy-dispatch-XRRI46M6.js} +5 -5
  51. package/dist/chunks/{mail-B42RRU7G.js → mail-3Y7MJ6PS.js} +9 -4
  52. package/dist/chunks/{meeting-CFYVBJSS.js → meeting-M7LTXGJE.js} +11 -10
  53. package/dist/chunks/{okr-GCLF6V7W.js → okr-OBC6S67L.js} +2 -2
  54. package/dist/chunks/{plan-ZVL7GBRI.js → plan-5H6I53SK.js} +2 -2
  55. package/dist/chunks/{project-4YWAAE2K.js → project-L75QZV4S.js} +2 -2
  56. package/dist/chunks/{registry-EP4VTHZS.js → registry-KMHCPAAD.js} +9 -8
  57. package/dist/chunks/{registry-OZSMDVPP.js → registry-QGHFNUWS.js} +2 -2
  58. package/dist/chunks/{registry-FRJ6H7BT.js → registry-RXPN6BBT.js} +4 -4
  59. package/dist/chunks/{registry-SG2PGVCF.js → registry-UGRBCBHO.js} +3 -3
  60. package/dist/chunks/{room-recommend-R3JVUUAC.js → room-recommend-A3UDC3CA.js} +4 -4
  61. package/dist/chunks/{schedule-NIJBTYDO.js → schedule-5GCACCK7.js} +4 -4
  62. package/dist/chunks/{workflow-BB24DFBY.js → workflow-M5ZJ7DWF.js} +11 -8
  63. package/dist/core/output.js +16 -6
  64. package/dist/index.js +33 -28
  65. package/dist/internal/e10/auth/commands.js +109 -56
  66. package/dist/internal/e10/auth/messages.js +1 -0
  67. package/dist/internal/e10/auth/session.js +11 -1
  68. package/dist/internal/e10/auth/xiaoe.js +29 -4
  69. package/dist/internal/e10/auth-recovery.js +13 -6
  70. package/dist/internal/e10/client.js +13 -0
  71. package/dist/internal/e10/context.js +24 -3
  72. package/dist/internal/e10/request-runtime.js +12 -1
  73. package/dist/shortcuts/archive/host.js +2 -0
  74. package/dist/shortcuts/archive/manifest.js +1 -1
  75. package/dist/shortcuts/archive/operations/borrow-list.js +13 -1
  76. package/dist/shortcuts/archive/operations/flow-url.js +1 -1
  77. package/dist/shortcuts/archive/operations/prelib.js +472 -0
  78. package/dist/shortcuts/archive/operations/registry.js +2 -0
  79. package/dist/shortcuts/archive/operations/upload.js +1 -1
  80. package/dist/shortcuts/asset-idle/errors.js +44 -0
  81. package/dist/shortcuts/asset-idle/host.js +161 -0
  82. package/dist/shortcuts/asset-idle/index.js +114 -0
  83. package/dist/shortcuts/asset-idle/manifest.js +159 -0
  84. package/dist/shortcuts/asset-idle/operations/idle.js +47 -0
  85. package/dist/shortcuts/asset-idle/operations/registry.js +33 -0
  86. package/dist/shortcuts/asset-idle/operations/shared.js +142 -0
  87. package/dist/shortcuts/asset-idle/operations/types.js +9 -0
  88. package/dist/shortcuts/asset-idle/operations.js +15 -0
  89. package/dist/shortcuts/cowork/operations/item-write.js +10 -2
  90. package/dist/shortcuts/index.js +5 -0
  91. package/dist/shortcuts/mail/operations/mail-send.js +8 -2
  92. package/dist/shortcuts/meeting/operations/eb/catalog.js +5 -1
  93. package/dist/shortcuts/meeting/operations/eb/create-flow.js +381 -104
  94. package/dist/shortcuts/meeting/operations/eb/crm-search.js +87 -5
  95. package/dist/shortcuts/meeting/operations/eb/flow-memory.js +49 -0
  96. package/dist/shortcuts/meeting/operations/eb/group-chat.js +583 -0
  97. package/dist/shortcuts/meeting/operations/eb/index.js +2 -0
  98. package/dist/shortcuts/meeting/operations/eb/room-recommend.js +19 -3
  99. package/dist/shortcuts/meeting/operations/eb/room-summary.js +2 -0
  100. package/dist/shortcuts/meeting/operations/eb/usage-cache.js +99 -0
  101. package/dist/shortcuts/meeting/operations/from-group-chat.js +35 -12
  102. package/dist/shortcuts/workflow/host.js +3 -0
  103. package/dist/shortcuts/workflow/index.js +1 -1
  104. package/dist/shortcuts/workflow/operations/form.js +65 -171
  105. package/dist/shortcuts/workflow/operations/todoSmartConvert/aigroupRules.js +129 -27
  106. package/dist/shortcuts/workflow/operations/todoSmartConvert/aigroupStore.js +6 -0
  107. package/dist/shortcuts/workflow/operations/todoSmartConvert/summaryCache.js +60 -117
  108. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoDetailCache.js +44 -7
  109. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoDetailFetcher.js +37 -29
  110. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.collect.js +48 -8
  111. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.core.js +1 -0
  112. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.detail.js +22 -18
  113. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.group.js +17 -9
  114. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.groupSummary.js +34 -10
  115. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.js +5 -2
  116. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.smartGroup.js +9 -2
  117. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.summary.js +122 -20
  118. package/docs/_catalog.md +3 -0
  119. package/docs/asset-idle.md +45 -0
  120. package/docs/e10-auth.md +16 -1
  121. package/docs/todo-smart-convert/subgroup-rules.md +1 -1
  122. package/package.json +1 -1
  123. package/scripts/mcp-meeting.mjs +234 -0
  124. package/scripts/package-skill.mjs +2 -0
  125. package/skill-template/business-info.json +14 -1
  126. package/skill-template/domains/asset-idle.md +13 -0
  127. package/skill-template/domains/wenshuding.md +3 -0
  128. package/skills/weaver-e10-archive-oa/SKILL.md +1 -0
  129. package/skills/weaver-e10-archive-oa/references/my-borrow.md +49 -0
  130. package/skills/weaver-e10-asset-idle/SKILL.md +73 -0
  131. package/skills/weaver-e10-asset-idle/references/idle-list.md +62 -0
  132. package/skills/weaver-e10-asset-idle/references/idle-stats-and-charts.md +65 -0
  133. package/skills/weaver-e10-asset-idle/references/source-manifest.json +193 -0
  134. package/skills/weaver-e10-asset-idle/references/widget-style.md +205 -0
  135. package/skills/weaver-e10-caizhilian/SKILL.md +29 -11
  136. package/skills/weaver-e10-caizhilian/references/auth-and-install.md +12 -0
  137. package/skills/weaver-e10-caizhilian/references/files.md +1 -1
  138. package/skills/weaver-e10-caizhilian/references/setting-encrypt.md +1 -1
  139. package/skills/weaver-e10-caizhilian/references/source-manifest.json +45 -45
  140. package/skills/weaver-e10-cowork/SKILL.md +2 -0
  141. package/skills/weaver-e10-cowork/references/cowork-write.md +1 -1
  142. package/skills/weaver-e10-jucailin/SKILL.md +2 -0
  143. package/skills/weaver-e10-jucailin/references/recruit-read.md +2 -0
  144. package/skills/weaver-e10-jucailin/references/recruit-write.md +1 -1
  145. package/skills/weaver-e10-mail/SKILL.md +3 -0
  146. package/skills/weaver-e10-mail/references/mail-send.md +2 -0
  147. package/skills/weaver-e10-meeting/SKILL.md +88 -25
  148. package/skills/weaver-e10-meeting/references/meeting-minute-file.md +25 -11
  149. package/skills/weaver-e10-meeting.zip +0 -0
  150. package/skills/weaver-e10-shared/SKILL.md +5 -5
  151. package/skills/weaver-e10-shared/references/e10-auth-and-session.md +3 -3
  152. package/skills/weaver-e10-wenshuding/SKILL.md +29 -6
  153. package/skills/weaver-e10-wenshuding/references/archive-borrow-list.md +14 -0
  154. package/skills/weaver-e10-wenshuding/references/archive-download.md +2 -0
  155. package/skills/weaver-e10-wenshuding/references/archive-flow.md +1 -1
  156. package/skills/weaver-e10-wenshuding/references/archive-prelib-arrange.md +76 -0
  157. package/skills/weaver-e10-wenshuding/references/archive-prelib-list.md +107 -0
  158. package/skills/weaver-e10-wenshuding/references/archive-prelib-open.md +59 -0
  159. package/skills/weaver-e10-wenshuding/references/archive-upload.md +4 -1
  160. package/skills/weaver-e10-wenshuding/references/source-manifest.json +108 -65
  161. package/skills/weaver-e10-workflow/SKILL.md +9 -2
  162. package/skills/weaver-e10-workflow/aigroup/default.json +166 -19
  163. package/skills/weaver-e10-workflow/references/todo-smart-convert.md +72 -34
  164. package/skills/weaver-e10-workflow/tools/todo-serve.cjs +113 -25
  165. package/skills/weaver-e10-workflow/tools/todo-summary.cjs +350 -50
  166. package/dist/chunks/{chunk-2LV74IWP.js → chunk-E7OK5WD5.js} +5 -5
@@ -0,0 +1,13 @@
1
+ 本业务域用于泛微 E10 资管家的**闲置资产判定结果查询与统计出图**。入口 `SKILL.md` 先路由到 `weaver-e10-shared/SKILL.md`,再给出判定口径语义(服务端判定不重算)、操作路由和出图流程。具体用法拆到 `references/`:
2
+
3
+ - `idle-list.md`:`asset-idle.idle.list` 分页拉取服务端已判定的闲置资产结果集、字段口径与失败处置。
4
+ - `idle-stats-and-charts.md`:`asset-idle.idle.stats` 聚合统计(czjy 处置建议 / zclx 类型 / xzsz 时长分档)与三张图输出流程、系统页面地址行规则。
5
+ - `widget-style.md`:三张图的唯一样式来源(尺寸、字号、色值、文案结构)。
6
+ - `source-manifest.json`:源资料清单与 sha256 指纹,用于源资料更新检测。
7
+
8
+ 调优重点:
9
+
10
+ - `weaver-work-cli asset-idle schema` 是 operation 合约第一信息源;`withheldOperations` 声明按名称解析动作流 ID(`asset-idle.flow.resolve`)为禁用能力,`esbFlowId` 必须由调用方传入,不引导用户猜 ID。
11
+ - **判定口径红线**:xzsz / pdyj / zxd / czjy 服务端已判定,CLI 与 Agent 都不重算、不补算;xzsz/czjy 缺失标「无法判断」并排除出对应统计(`disabledCapabilities.idle-date-recalculation`)。
12
+ - 统计出图按固定流程:`idle.stats` → widget_guidelines → 三张图连续输出(图前图间无正文文字)→ 图③ widget 内部最后一行输出 `闲置资产详情:{url}`。
13
+ - 与 `weaver-e10-ziguanjia`(`weaver-work-cli asset`,资产台账管理)的路由区分:闲置统计/出图走本域,入库/领用/归还/维保走资管家。
@@ -2,6 +2,7 @@
2
2
 
3
3
  - `archive-agent-entry.md`:schema、统一 `archive run` 入口、stdin/文件 JSON 调用方式和输出约定。
4
4
  - `archive-fonds.md`:全宗列表与预归档电子文件库节点识别(上传的 treeId 来源)。
5
+ - `archive-prelib-list.md`:电子文件库列表查询(`treeId -> getTreeDetail -> getListDatas`)与智能识别的 `prepare -> apply`。
5
6
  - `archive-search.md`:全文检索可借档案,结果行的 `id`/`formId` 复用规则。
6
7
  - `archive-info.md`:档案基本信息查询(`{档案ID}_{表单ID}` 与 `dataId+formId` 两种输入)。
7
8
  - `archive-borrow-car.md`:借阅车列表(首选自定义接口、失败自动回退)与加入借阅车的 `prepare -> apply` 协议。
@@ -20,3 +21,5 @@ Agent 调优重点:
20
21
  - 下载为异步任务:`.apply` 会轮询打包进度并落盘,不要按超时立即重试。
21
22
  - 发起借阅/续借只返回 URL,不自动打开浏览器;必须把 URL 交给用户并说明需在浏览器完成填写与提交。
22
23
  - 结果为 `partial/write_uncertain` 时停止,不自动重放写请求。
24
+ - 电子文件库列表(`archive.prelib.list`)属于预归档库数据,与全文检索的可借档案不是同一批,不要混用;行 `id` 是智能识别 `checkIds` 的来源,展示时保留。
25
+ - 智能识别(`intelligentCate`)是异步任务:返回 `taskId` 只表示已提交,不得声称识别完成,也不要重复提交。
@@ -81,6 +81,7 @@ Agent 不得自行拼接、改写或向用户索取上述凭证(禁止要求
81
81
  | 查契约锁(案例)合同 | `archive-oa run archive-oa.qys.contract.list` | [`qys-contract-search.md`](references/qys-contract-search.md) |
82
82
  | 加入借阅车 / 看借阅车 | `archive-oa run archive-oa.borrow-car.add.prepare` → `.apply` / `archive-oa.borrow-car.list` | [`borrow-car.md`](references/borrow-car.md) |
83
83
  | 发起借阅(**生成流程页 URL 并打开浏览器**) | `archive-oa run archive-oa.borrow.start.url` / 契约锁 `archive-oa.qys.borrow.start.url`(或 `archive-oa borrow start-url [--source qys]`) | [`borrow-flow.md`](references/borrow-flow.md) |
84
+ | 查询我的借阅 / 我的借阅单 | 转到 `weaver-e10-workflow` 的 `workflow.search` | [`my-borrow.md`](references/my-borrow.md) |
84
85
  | 其余未收录能力 | 不在范围 | [`disabled-capabilities.md`](references/disabled-capabilities.md) |
85
86
 
86
87
  契约锁链路把 operation 前缀换成 `archive-oa.qys.*`(借阅车 `archive-oa.qys.borrow-car.*`、发起借阅 `archive-oa.qys.borrow.start.url`)。两套的流程页 URL 规则相同,`fb` 取借阅车记录自身的值(泛微 `0`、契约锁 `1`),禁止手工指定;契约锁客户名称字段是 `qymc`,泛微是 `htmc`。
@@ -0,0 +1,49 @@
1
+ # 查询我的借阅 / 我的借阅单
2
+
3
+ 用户说「我的借阅」「我的借阅单」「查一下我借的合同」时,**本技能不自己查流程数据**——`archive-oa` 只有合同查询与借阅车能力,没有流程查询能力。改用 **`weaver-e10-workflow`** 技能的 `workflow.search`。
4
+
5
+ 执行前按共享规则确认 `weaver-e10-workflow` 已安装;未安装时如实告知,不要用 `archive-oa` 的 operation 冒充流程查询。
6
+
7
+ ## 固定限制(强制)
8
+
9
+ | 参数 | 取值 | 说明 |
10
+ | --- | --- | --- |
11
+ | `workflow` | `["泛微合同电子档借阅申请流程"]` | **必须且只能是这一个工作流**;纯名称由 CLI 调 workflowPathBrowser 解析。多命中/0 命中时 CLI 返回澄清信封(`candidates`),此时用自然语言请用户确认完整名称,再按「名称(ID)」重发;**不要自己挑一个、不要向用户索取 ID** |
12
+ | `filterFields` 前提 | 必须传 `workflow` 且**只能是单个** | 缺 workflow 报 `field_require_workflow`,多个报 `field_require_single_workflow` |
13
+ | `category` | `mine`(默认) | 「我的借阅」= 我发起的 → `mine`。用户说「待我审批的借阅」才是 `todo`;说「我处理过的」→ `done`;都不确定且给了条件 → `all` |
14
+ | mine 为 0 时 | 提示后改查 `done` | 实测当前账号 `mine`=0、`done`=14(借阅流程多为他人发起、本人作为档案/审批方处理)。**`mine` 查到 0 条不要直接下结论「没有借阅」**,要如实说明「我发起的没有,我处理过的有 N 条,要看吗?」,用户确认后再用 `done` 查 |
15
+
16
+ ## 默认:只查「授权结束日期」未到期
17
+
18
+ **已实测可用的写法**(直接照用):
19
+
20
+ ```json
21
+ {"category":"...","workflow":["泛微合同电子档借阅申请流程"],
22
+ "filterFields":[{"fieldName":"授权结束日期","term":"like","value":["<今天 YYYY-MM-DD>","9999-12-31"]}]}
23
+ ```
24
+
25
+ - 「授权结束日期」是**日期字段**,`term` **只支持 `like` / `null` / `notnull`**;传 `ge` / `gt` 会报 `field_term_unsupported`。
26
+ - `like` 的 `value` 是**日期区间 `[开始, 结束]`**(YYYY-MM-DD)。**单边空串代表最小值**,所以:
27
+ - 未到期(≥ 今天)→ `["<今天>","9999-12-31"]`(**不要写 `["<今天>",""]`**,会被判「起点晚于终点」而报 `time_invalid`);
28
+ - 已到期(< 今天)→ `["","<昨天>"]`。
29
+ - 「今天」取当前真实日期,**禁止写死日期**。
30
+ - 实测对照(同一工作流):已办共 14 条,未到期区间返回 **0**、已到期区间返回 **14**,证明该区间过滤真实生效。
31
+ - 字段名以 CLI 实际解析为准:`fieldName` 支持 `字段名(字段ID)` 或纯字段名;多命中/0 命中返回澄清信封(候选为 `字段名(字段ID)`),**按候选选择,不得臆造**;字段元数据读不到(`field_meta`)时如实告知并改为不带 `filterFields` 查询。
32
+ - **不要逐条 `workflow.detail` 去取授权结束日期**:列表 `cards` 不带表单字段,且详情返回的表单值实测可能为空;用上面的 `filterFields` 区间即可,无需逐条调用。
33
+
34
+ ## 与用户交互:查全部
35
+
36
+ - 默认只查未到期;**每次汇报都要说明**「当前只含未到期,要看全部请说『查全部』」。
37
+ - 用户说「全部」「所有」「包括已到期的」「不限」「都列出来」时,**去掉授权结束日期条件**重新查一次(其余限制不变,仍限定该工作流)。
38
+ - 未到期查到 0 条时,主动提示「要不要看全部(含已到期)」,不要直接下结论说没有借阅记录。
39
+
40
+ ## 展示
41
+
42
+ - 按 `workflow.search` 的返回原样渲染流程列表(标题、编号、当前节点、状态、发起/结束时间等),**不新增衍生列**。
43
+ - 需要看某条详情时用 `workflow.detail`;需要在 OA 打开时用 `workflow.open`。
44
+
45
+ ## 禁止事项
46
+
47
+ - **禁止用 `archive-oa` 的 operation 查询借阅流程**(本技能无此能力),也不要把借阅车当成「我的借阅」——借阅车只是待发起的临时清单,不是已发起的流程。
48
+ - 禁止伪造工作流名称、字段 ID 或流程数据。
49
+ - 禁止把「授权结束日期」写成其它字段名(如「到期日期」「结束日期」),以 CLI 返回的候选为准。
@@ -0,0 +1,73 @@
1
+ ---
2
+ name: weaver-e10-asset-idle
3
+ display_name: 泛微E10闲置资产统计
4
+ display_name_en: Weaver E10 Idle Asset Statistics
5
+ description: "泛微E10资管家闲置资产判定结果查询与统计:触发「自用-skill获取闲置资产」动作流分页获取服务端已判定的闲置资产,聚合处置建议、类型与闲置时长统计并出三张图,通过 weaver-work-cli asset-idle 命令执行。"
6
+ description_zh: "泛微E10资管家闲置资产:分页获取服务端已判定的闲置资产结果集,聚合处置建议(待调拨/待调剂/待评估)、资产类型与闲置时长统计,并按固定样式输出三张图与系统页面地址,通过 weaver-work-cli asset-idle 命令执行。"
7
+ description_en: "Query server-judged idle assets from Weaver E10 asset management via the weaver-work-cli asset-idle command, aggregate disposal suggestions, asset types and idle-duration buckets, and render three fixed-style charts."
8
+ version: 1.0.0
9
+ author: 泛微网络科技股份有限公司
10
+ agent_created: true
11
+ requires:
12
+ bins: ["weaver-work-cli"]
13
+ cliHelp: "weaver-work-cli asset-idle --help"
14
+ ---
15
+
16
+ # 泛微E10闲置资产统计
17
+
18
+ **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`——省略会装进默认目录,导致本技能依然读不到共享规则。命令均成功后重新读取共享规则;仍读不到就停止并把结果报告用户,不得凭猜测继续。**
19
+
20
+ **`--is-connector` 判据**:用户明确使用连接器、或上下文要求用连接器完成任务 → 传 `true`;本次任务或上下文直接选择单独技能 → 不传;用户没有明确说明时,按**正在运行的这份 Skill 是哪一级**定——**用户级(条目标 `(user)`)不传,连接器级(标 `(connector)`)传**(同名 Skill 只会运行用户级那一份)。传 `true` 时不要再写 `--profile` / `--base-url`。完整规则见 [`../weaver-e10-shared/SKILL.md`](../weaver-e10-shared/SKILL.md)。
21
+
22
+ 本技能覆盖**闲置资产判定结果的查询、聚合统计与可视化**:闲置判定由服务端动作流完成,CLI 只拉取结果与聚合,不做二次判定。接口原始调用(curl / 拼请求头)不在本技能范围,见「不在范围」。
23
+
24
+ ## 命令入口
25
+
26
+ ```text
27
+ weaver-work-cli asset-idle --help
28
+ weaver-work-cli asset-idle schema
29
+ weaver-work-cli --json asset-idle run <operation> --input-json '<json>'
30
+ ```
31
+
32
+ `schema` 是可用能力的唯一事实来源。禁止把源资料中的接口路径当成本技能可直接调用的地址,也禁止把未出现在 `schema` 中的能力当作可用 operation。
33
+
34
+ ## 高优先级语义
35
+
36
+ - 「闲置资产」「闲置统计」「待调剂/待调拨/待评估」「闲置时长」「资管家闲置」→ 本技能
37
+ - 判定口径全部来自服务端:`xzsz`(闲置时长/天)、`pdyj`(判定依据,原样展示)、`zxd`(置信度 0.8/0.85/0.9/0.95)、`czjy`(处置建议编码:0=待调拨、1=待调剂、2=待评估)直接使用,**不重算、不补算、不改写**
38
+ - `xzsz` 或 `czjy` 缺失 → 标「无法判断」,排除出对应统计,不猜测
39
+ - 不使用「内部调拨/内部调剂/报废评估」旧称,不计算剩余年限,不反推 `idle_date`/`stockindate`/`use_term`
40
+ - `esbFlowId` 必须由调用方传入;按名称解析动作流 ID 是禁用能力(`asset-idle.flow.resolve`),不要猜 ID
41
+
42
+ ## 命令表
43
+
44
+ | 用户意图 | CLI operation | Reference |
45
+ | --- | --- | --- |
46
+ | 拉取闲置资产判定结果明细(自动翻页合并) | `asset-idle.idle.list` | [`references/idle-list.md`](references/idle-list.md) |
47
+ | 出统计三张图(数据统计/类型统计/闲置时长统计)+ 系统页面地址 | `asset-idle.idle.stats` | [`references/idle-stats-and-charts.md`](references/idle-stats-and-charts.md) |
48
+ | 图表尺寸、字号、色值、文案结构 | (渲染规范,不调 CLI) | [`references/widget-style.md`](references/widget-style.md) |
49
+
50
+ ## 处理链(统计出图必须按此顺序)
51
+
52
+ 1. **确认 esbFlowId**:用户没给动作流 ID 时向用户索取(或按用户确认在旧版 e10-cli 用 `actionflow application-list` 按 name 精确匹配「自用-skill获取闲置资产」、moudle=ebuilder 取 id;匹配不到或多条同名即停止并告知用户,不得沿用旧 ID 或猜测)。
53
+ 2. **取数**:`asset-idle.idle.stats` 一次拿到 total、czjyCounts、typeCounts、agingBuckets(CLI 已自动翻页合并)。要明细时再跑 `asset-idle.idle.list`。
54
+ 3. **出图**:先加载图表设计规范(widget_guidelines,chart + diagram 模块,只加载不写文字),再按 [`references/widget-style.md`](references/widget-style.md) 依次输出三张图:① 数据统计(HTML 网格卡)② 类型统计(Top10 + 其他横向条形图)③ 闲置时长统计(5 档柱状图,0 档不显示)。
55
+ 4. **页面地址**:写在图③ widget 内部最后一行,格式 `闲置资产详情:{url}`;三张图之前、图与图之间不得输出任何正文文字。
56
+
57
+ ## 执行原则
58
+
59
+ - 最小必要查询:默认只要统计就跑 `idle.stats`,不要先 `idle.list` 再自己数
60
+ - 大结果摘要:`idle.list` 可能返回上千条,回复用户时给总数与分组摘要,不粘贴全量 JSON;不落盘、不生成 html、不调用 present_files
61
+ - 错误语义驱动:按 JSON envelope 的 `error.type/subtype` 处置(见 reference 失败处理),不盲目重试
62
+ - `truncated=true` 时结果不是全集:先增大 `maxPages` 重查,不要用截断数据出图
63
+
64
+ ## 写操作失败决策树
65
+
66
+ 本模块两个 operation 均为只读(`risk: read`),没有高风险写链。认证/会话类失败按 `weaver-e10-shared` 的「认证错误只报告状态」规则处理;其余失败处置见各 reference 的「失败处理」。
67
+
68
+ ## 不在范围
69
+
70
+ - 禁止绕过 CLI 直接 curl / fetch / 浏览器自动化调用 E10 接口
71
+ - 按名称解析动作流 ID(`asset-idle.flow.resolve`,见 schema 的 `withheldOperations`)
72
+ - 基于日期的判定、阈值反推、剩余年限计算(服务端判定为唯一口径,见 schema 的 `disabledCapabilities`)
73
+ - 闲置资产的台账管理(入库/领用/归还/维保)→ 用 `weaver-e10-ziguanjia`(`weaver-work-cli asset`)
@@ -0,0 +1,62 @@
1
+ # 拉取闲置资产判定结果
2
+
3
+ ## 何时使用
4
+
5
+ - 用户要闲置资产明细、要逐条看判定依据(pdyj)、置信度(zxd)
6
+ - 统计出图前需要确认数据规模,或要核对某类资产的条目
7
+ - 统计请优先用 `asset-idle.idle.stats`(一次拿到全部分组),本 operation 用于明细
8
+
9
+ ## 输入要点
10
+
11
+ | 字段 | 类型 | 必填 | 说明 |
12
+ | --- | --- | --- | --- |
13
+ | esbFlowId | string(1-32 位数字) | 是 | 「自用-skill获取闲置资产」动作流 ID。按名称解析是禁用能力(`asset-idle.flow.resolve`),必须由用户或调用方提供 |
14
+ | maxPages | integer 1-100 | 否(默认 20) | 单次最多翻页数。每页 1000 条为服务端固定值;hasMore=false 才是全集 |
15
+
16
+ 请求体由 CLI 组装(esbFlowId + moduleSource=ebuilder + customParams.mainTable.curPage),认证请求头由 `weaver-work-cli` 统一托管,见 `weaver-e10-shared` 的「请求头契约」。
17
+
18
+ ## 命令
19
+
20
+ Windows PowerShell:
21
+
22
+ ```powershell
23
+ weaver-work-cli --json asset-idle run asset-idle.idle.list --input-json '{"esbFlowId":"1330576130980388964"}'
24
+ ```
25
+
26
+ macOS/Linux(bash/zsh):
27
+
28
+ ```bash
29
+ weaver-work-cli --json asset-idle run asset-idle.idle.list --input-json '{"esbFlowId":"1330576130980388964"}'
30
+ ```
31
+
32
+ 上面 JSON 中的动作流 ID 是源资料实测样例,实际以用户提供的为准,不要照抄。控制翻页上限:
33
+
34
+ ```bash
35
+ weaver-work-cli --json asset-idle run asset-idle.idle.list --input-json '{"esbFlowId":"<用户提供的动作流ID>","maxPages":50}'
36
+ ```
37
+
38
+ ## 输出处理
39
+
40
+ 成功 envelope 的 `data`:
41
+
42
+ - `items`:各页 idleAssets 合并后的条目数组,字段为 `zclx`(资产类型)、`xzsz`(闲置时长/天,字符串数字)、`pdyj`(判定依据,原样展示)、`zxd`(置信度)、`czjy`(处置建议编码 0/1/2)、`xzdj`(闲置等级编码)、`zcmc`(资产标识,当前是资产记录 ID)、`unique_key` / `id`(记录主键)
43
+ - `total`:合并后总条数,即服务端判定的闲置资产全集(统计分母)
44
+ - `pages` / `hasMore` / `truncated`:翻页状态
45
+
46
+ 回复用户时给摘要(总数、czjy 分组、类型 Top 几),不要粘贴全量 JSON;不落盘、不生成 html 文件。
47
+
48
+ ## 注意
49
+
50
+ - 返回条数即服务端判定的闲置资产全集;`truncated=true` 时不是全集,先增大 `maxPages` 重查
51
+ - 判定结论直接使用(xzsz / pdyj / zxd / czjy),不做二次判定、不重算、不补算、不改写
52
+ - 字段缺失(如 xzsz 为空)标「无法判断」,不臆造、不反推日期补齐
53
+
54
+ ## 失败处理
55
+
56
+ | error.type / subtype | 含义 | 处置 |
57
+ | --- | --- | --- |
58
+ | authentication / session_expired | 未登录或会话失效 | 按 `weaver-e10-shared` 规则反馈;CLI 底层已自动恢复过一次,仍失败即停止 |
59
+ | api / actionflow_failed | 动作流执行未成功(resultCode 非 200) | 看 error.details.resultCode / resultMsg,向用户反馈服务端原因;retryable=false 不自动重试 |
60
+ | network / protocol | 返回结构异常(缺 mainTable / 非 JSON / 无 resultCode) | 反馈协议异常,不猜测结构重试 |
61
+ | validation / operation_unknown | operation 名写错 | 用 `weaver-work-cli asset-idle schema` 核对 |
62
+ | validation / input_unknown_key 等 | 输入字段不合法 | 按 error.message 修正入参 |
@@ -0,0 +1,65 @@
1
+ # 闲置资产统计出图
2
+
3
+ ## 何时使用
4
+
5
+ - 用户要看闲置资产统计:数据统计(闲置资产/待调剂/待调拨/待评估)、类型统计、闲置时长统计
6
+ - 触发词:「闲置资产统计」「出三张图」「闲置情况」「资管家闲置」
7
+
8
+ ## 输入要点
9
+
10
+ 与 `asset-idle.idle.list` 完全一致:`esbFlowId`(必填)、`maxPages`(可选,默认 20)。聚合由 CLI 完成,Agent 不再自己数数。
11
+
12
+ ## 命令
13
+
14
+ Windows PowerShell:
15
+
16
+ ```powershell
17
+ weaver-work-cli --json asset-idle run asset-idle.idle.stats --input-json '{"esbFlowId":"1330576130980388964"}'
18
+ ```
19
+
20
+ macOS/Linux(bash/zsh):
21
+
22
+ ```bash
23
+ weaver-work-cli --json asset-idle run asset-idle.idle.stats --input-json '{"esbFlowId":"1330576130980388964"}'
24
+ ```
25
+
26
+ 上面 JSON 中的动作流 ID 是源资料实测样例,实际以用户提供的为准,不要照抄。
27
+
28
+ ## 输出处理
29
+
30
+ 成功 envelope 的 `data`:
31
+
32
+ - `total`:服务端判定结果集总条数(统计分母)
33
+ - `czjyCounts`:处置建议分组,`code` 固定映射 0=待调拨、1=待调剂、2=待评估,缺失为 `code:null`(无法判断)
34
+ - `typeCounts`:按 `zclx` 计数,降序;xzsz 缺失的条目不参与
35
+ - `agingBuckets`:闲置时长分档(1 个月按 30 天计,边界值归前一档:≤30、31–90、91–180、181–365、>365),固定顺序,仅含数量大于 0 的档位
36
+ - `unableToJudge`:xzsz 缺失(无法判断)条数,已排除出类型与时长统计
37
+ - `truncated`:为 true 时统计不完整,先增大 maxPages 重查,不要出图
38
+
39
+ ## 出图流程(顺序固定,不得增减)
40
+
41
+ 1. **先加载图表设计规范**(widget_guidelines,chart + diagram 模块;仅加载,不把加载过程写成文字)。
42
+ 2. **按 [`widget-style.md`](widget-style.md) 依次输出三张图**,`show_widget` title 固定为 ①「数据统计」②「类型统计」③「闲置时长统计」:
43
+ - ① 数据统计:HTML 网格卡,四项为 闲置资产(total)/ 待调剂(czjy=1)/ 待调拨(czjy=0)/ 待评估(czjy=2),卡背景 #F5F9FF
44
+ - ② 类型统计:typeCounts 取 Top10,其余合并为灰条「其他(N类)」;类型数 ≤10 时不画灰条;容器高度 = 柱数 × 42 + 60
45
+ - ③ 闲置时长统计:agingBuckets 柱状图,数量为 0 的档位不显示(CLI 已过滤)
46
+ 3. **对话窗口内只输出这三张图**:第一张图之前、图与图之间一律不写任何文字——不写引导语、不写解读、不写过渡句、不写结论、不写总结。图表自带标题、图例与数值。
47
+ 4. **页面地址行写在图③ widget 内部**(图表容器之后、widget 最后一行,`margin-top:8px`、13px、`--color-text-secondary`、链接色 `--color-text-info`、`target=_blank`),格式固定 `闲置资产详情:{url}`,不得作为正文文本输出:
48
+ - PC 端:`{base-url}/sp/ebdpage/view/1330976366140497921/page/1330976366140497921`
49
+ - 移动端:`{base-url}/mobile/ebdpage/view/1089307236525424647`
50
+ - `{base-url}` 用当前登录租户的 baseUrl 替换
51
+ - 客户端判断:**默认按 PC 端输出**;仅当用户明确说明在移动端(「手机上」「移动端」「App 里」)才给移动端地址;判断不了按 PC 端,不追问、不同时给两端地址
52
+ 5. 全量明细不在对话窗口输出、不落盘、不生成 html 文件、不调用 present_files;第三张图之后不再输出任何正文文字。
53
+
54
+ ## 注意
55
+
56
+ - 统计口径与判定规则以 CLI 返回为准(服务端判定),Agent 不重算、不二次分组、不改档位边界
57
+ - widget_code 必须是裸 SVG/HTML 片段:不含 `<!DOCTYPE>` / `<html>` / `<head>` / `<body>`;SVG 每个形状显式设置 fill;配色跟随当前 IDE 主题(浅色主题不用深色底)
58
+ - 禁止临场改样式、禁止再用手绘 SVG 出图;尺寸、字号、色值、文案结构一律以 [`widget-style.md`](widget-style.md) 为准
59
+
60
+ ## 失败处理
61
+
62
+ 与 [`idle-list.md`](idle-list.md) 相同(同一 host 通道);额外注意:
63
+
64
+ - `truncated=true`:不出图,增大 `maxPages` 重查后再统计
65
+ - `czjyCounts` 中 `code:null`(无法判断)数量大:如实展示,不要猜测编码补齐
@@ -0,0 +1,193 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "generatedAt": "2026-11-02",
4
+ "generator": "weaver-e10-skill-maker (weaver-work-cli 0.1.38)",
5
+ "sourceRoot": "用户级技能目录(weaver-e10-ziguanjia-idle,安装副本)",
6
+ "files": [
7
+ {
8
+ "path": "SKILL.md",
9
+ "size": 5524,
10
+ "sha256": "2ac15681e818513fc683bdfeb68e1744f6b00a637b467b529503930808928b3e",
11
+ "role": "existing-skill"
12
+ },
13
+ {
14
+ "path": "references/api.md",
15
+ "size": 4422,
16
+ "sha256": "ceb67e67f0c8a1c365acbb4615f98ea3a16516f8bda3b82120e31d43d5e1ad8f",
17
+ "role": "api-doc"
18
+ },
19
+ {
20
+ "path": "references/widget-style.md",
21
+ "size": 12794,
22
+ "sha256": "a5eecde866cfb54389cbea8d576d8ef1db8acaf61b3e74351844b63ef31386c5",
23
+ "role": "existing-skill"
24
+ },
25
+ {
26
+ "path": "_user_meta.json",
27
+ "size": 99,
28
+ "sha256": "78824fabf9515f2df728154197f8ae782b8805d2688372013b2cc99833817529",
29
+ "role": "sample"
30
+ }
31
+ ],
32
+ "sourceChunks": [
33
+ {
34
+ "id": "api.md#find-idle-assents",
35
+ "title": "接口 find-idle-assents(POST {baseurl}/api/esb/server/event/triggerActionFlow)",
36
+ "operations": ["asset-idle.idle.list", "asset-idle.idle.stats"],
37
+ "impacted": ["src/shortcuts/asset-idle/host.ts", "references/idle-list.md"]
38
+ },
39
+ {
40
+ "id": "api.md#调用与鉴权",
41
+ "title": "调用与鉴权(实测固化 2026-10-27):无通用 HTTP 命令、分页 1000 条/页、hasMore 翻页、会话失效判据",
42
+ "operations": ["asset-idle.idle.list", "asset-idle.idle.stats"],
43
+ "impacted": ["src/shortcuts/asset-idle/host.ts", "references/idle-list.md"]
44
+ },
45
+ {
46
+ "id": "api.md#当前返回结构",
47
+ "title": "2026-10-30 起返回服务端判定结果集(zclx/xzsz/pdyj/zxd/czjy/xzdj/zcmc 等)",
48
+ "operations": ["asset-idle.idle.list", "asset-idle.idle.stats"],
49
+ "impacted": ["src/shortcuts/asset-idle/manifest.ts", "src/shortcuts/asset-idle/operations/shared.ts", "references/idle-list.md"]
50
+ },
51
+ {
52
+ "id": "SKILL.md#二数据的来源与判定口径",
53
+ "title": "服务端判定不重算;字段缺失标无法判断;返回条数即全集",
54
+ "operations": ["asset-idle.idle.list", "asset-idle.idle.stats"],
55
+ "impacted": ["src/shortcuts/asset-idle/manifest.ts(disabledCapabilities)", "src/shortcuts/asset-idle/operations/shared.ts", "skills/weaver-e10-asset-idle/SKILL.md"]
56
+ },
57
+ {
58
+ "id": "SKILL.md#三处置建议口径",
59
+ "title": "czjy 编码映射 0=待调拨、1=待调剂、2=待评估;不算剩余年限;不用旧称",
60
+ "operations": ["asset-idle.idle.stats"],
61
+ "impacted": ["src/shortcuts/asset-idle/operations/shared.ts(CZJY_LABELS)", "references/idle-stats-and-charts.md"]
62
+ },
63
+ {
64
+ "id": "SKILL.md#四技能执行步骤",
65
+ "title": "esbFlowId 动态解析规则、分页合并、统计出图流程、页面地址行规则",
66
+ "operations": ["asset-idle.idle.list", "asset-idle.idle.stats"],
67
+ "impacted": ["skills/weaver-e10-asset-idle/SKILL.md", "references/idle-stats-and-charts.md", "src/shortcuts/asset-idle/manifest.ts(withheldOperations)"]
68
+ },
69
+ {
70
+ "id": "widget-style.md#1-3",
71
+ "title": "三张图模板与硬规则(数据统计卡 / 类型统计 / 闲置时长统计)",
72
+ "operations": [],
73
+ "impacted": ["references/widget-style.md(整文件保真迁移)"]
74
+ }
75
+ ],
76
+ "operationImpact": {
77
+ "asset-idle.idle.list": {
78
+ "parameterCoverage": [
79
+ {
80
+ "source": "esbFlowId(api.md 请求参数;SKILL.md 四.1 动态解析)",
81
+ "target": "inputSchema.properties.esbFlowId",
82
+ "status": "converted",
83
+ "note": "ID 按字符串传递避免精度丢失;按名称解析在 weaver-work-cli 无可用接口,登记为 withheldOperation asset-idle.flow.resolve,esbFlowId 必须由调用方传入"
84
+ },
85
+ {
86
+ "source": "curPage(api.md:从 1 开始,hasMore=true 则 +1)",
87
+ "target": "handler 内部循环(host.fetchPage 第二参数)",
88
+ "status": "derived",
89
+ "note": "CLI 自动翻页,不暴露给调用方"
90
+ },
91
+ {
92
+ "source": "moduleSource=ebuilder(api.md 固定参数)",
93
+ "target": "host 常量 ASSET_IDLE_MODULE_SOURCE",
94
+ "status": "fixed"
95
+ },
96
+ {
97
+ "source": "每页 1000 条(api.md 分页规则)",
98
+ "target": "host 常量 ASSET_IDLE_PAGE_SIZE(服务端固定,CLI 不传)",
99
+ "status": "fixed"
100
+ },
101
+ {
102
+ "source": "(源资料无此参数)",
103
+ "target": "inputSchema.properties.maxPages(默认 20,1-100)",
104
+ "status": "derived",
105
+ "note": "CLI 保护的翻页上限;停止判据 hasMore 来自源资料。truncated=true 时结果不是全集并给出警告"
106
+ },
107
+ {
108
+ "source": "会话失效判据(api.md:{\"error\":\"authentication required\",\"code\":-2})",
109
+ "target": "host.isIdleAuthRejected",
110
+ "status": "converted"
111
+ }
112
+ ],
113
+ "outputFields": [
114
+ { "source": "idleAssets[](api.md 当前返回结构字段表)", "target": "data.items[]", "status": "converted" },
115
+ { "source": "zclx / xzsz / pdyj / zxd / czjy / xzdj / zcmc / unique_key / id", "target": "data.items[].同名字段", "status": "converted", "note": "逐字段进 outputSchema.items;xzsz/pdyj/zxd/czjy 直接使用不重算" },
116
+ { "source": "czjy_obj / xzdj_obj / yjzczt_obj / czlc / czlc_obj / zcxzczrq(实测恒为空)", "target": "无(manifest.disabledCapabilities.display-only-fields)", "status": "not-applicable", "note": "不可依赖,归一化时不透出" },
117
+ { "source": "旧版结构 stockindate / idle_date / use_term / asset_name / type_name / status_name(已不适用)", "target": "无", "status": "not-applicable", "note": "2026-10-30 起动作流改为返回判定结果集,旧字段不再返回;禁止反推日期补齐" },
118
+ { "source": "hasMore", "target": "data.hasMore", "status": "converted" },
119
+ { "source": "resultCode=200(成功判据)", "target": "host 成功判定;非 200 → api/actionflow_failed", "status": "converted" },
120
+ { "source": "(CLI 侧统计)total / pages / truncated", "target": "data 同名字段", "status": "derived" }
121
+ ],
122
+ "inputExamples": [
123
+ {
124
+ "name": "single-flow-default-pages",
125
+ "input": { "esbFlowId": "1330576130980388964" },
126
+ "source": "references/api.md 请求参数示例(2026-11-02 实测值,仅作样例展示,实际以用户提供的为准)",
127
+ "sourceType": "source-provided",
128
+ "notes": "esbFlowId 按名称动态解析是源口径;CLI 侧要求调用方传入,样例值仅为格式参考"
129
+ },
130
+ {
131
+ "name": "with-page-cap",
132
+ "input": { "esbFlowId": "1330576130980388964", "maxPages": 50 },
133
+ "source": "synthetic(由 maxPages schema 推导,需业务复核)",
134
+ "sourceType": "synthetic"
135
+ }
136
+ ]
137
+ },
138
+ "asset-idle.idle.stats": {
139
+ "parameterCoverage": [
140
+ {
141
+ "source": "同 asset-idle.idle.list(esbFlowId / maxPages;curPage、moduleSource、页大小为 derived/fixed)",
142
+ "target": "inputSchema 与 idle.list 一致",
143
+ "status": "converted"
144
+ },
145
+ {
146
+ "source": "SKILL.md 四.2 聚合统计:总数、czjy 分组计数、按 zclx 计数、按 xzsz 分档",
147
+ "target": "handler 调 aggregateIdleAssets",
148
+ "status": "converted"
149
+ },
150
+ {
151
+ "source": "widget-style.md 第 3 节档位边界(≤30/31–90/91–180/181–365/>365,边界归前一档)",
152
+ "target": "operations/shared.ts AGING_BUCKETS / agingBucketOf",
153
+ "status": "converted"
154
+ }
155
+ ],
156
+ "outputFields": [
157
+ { "source": "总数(SKILL.md 四.2)", "target": "data.total", "status": "converted" },
158
+ { "source": "czjy 分组计数(0/1/2/缺失→无法判断)", "target": "data.czjyCounts[]", "status": "converted" },
159
+ { "source": "按 zclx 计数(降序)", "target": "data.typeCounts[]", "status": "converted", "note": "Top10+其他合并为展示口径,由渲染侧处理" },
160
+ { "source": "按 xzsz 分档(5 档,0 档不显示)", "target": "data.agingBuckets[]", "status": "converted" },
161
+ { "source": "字段缺失标无法判断并排除出统计(SKILL.md 二.3)", "target": "data.unableToJudge / unableToJudgeByType", "status": "converted" },
162
+ { "source": "(CLI 侧)pages / truncated / esbFlowId", "target": "data 同名字段", "status": "derived" }
163
+ ]
164
+ }
165
+ },
166
+ "sourceCoverage": [
167
+ {
168
+ "file": "SKILL.md",
169
+ "status": "converted",
170
+ "evidence": "判定口径/处置口径 → manifest.disabledCapabilities 与 operations/shared.ts;esbFlowId 解析 → withheldOperations;出图流程与页面地址 → SKILL.md + idle-stats-and-charts.md;esbFlowId 实测值 → manifest inputExamples(source-provided,标注实际以用户为准)"
171
+ },
172
+ {
173
+ "file": "references/api.md",
174
+ "status": "converted",
175
+ "evidence": "接口路径/请求体/分页/会话失效判据 → host.ts;返回字段表 → manifest outputSchema;调用与鉴权段中的 e10-login/curl 凭据拼装不迁移(shared 规则禁止,认证由 CLI 托管)→ external-only"
176
+ },
177
+ {
178
+ "file": "references/widget-style.md",
179
+ "status": "converted",
180
+ "evidence": "整文件保真迁移到 references/widget-style.md;仅头部说明改为数值来自 asset-idle.idle.stats"
181
+ },
182
+ {
183
+ "file": "_user_meta.json",
184
+ "status": "not-applicable",
185
+ "evidence": "用户安装元数据,不参与业务能力"
186
+ }
187
+ ],
188
+ "notes": [
189
+ "源 skill 引用的登录技能与 e10-login/e10-cli 凭据拼装按 weaver-e10-shared 红线不迁移:认证统一由 weaver-work-cli 托管。",
190
+ "api.md『调用与鉴权』段的 curl/e10-login 实测细节不迁移为能力,只保留其业务判据(页大小 1000、hasMore 翻页、code=-2 会话失效),登记 external-only。",
191
+ "缺失样例:无 missingExamples;源资料提供了请求参数样例(已入 inputExamples)。"
192
+ ]
193
+ }