dsh-crwu-workbench 0.0.10

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 (479) hide show
  1. package/CHANGELOG.md +1516 -0
  2. package/LICENSE +26 -0
  3. package/README.en.md +204 -0
  4. package/README.md +521 -0
  5. package/SECURITY.md +39 -0
  6. package/bin/darwin-arm64/crwu +0 -0
  7. package/bin/darwin-arm64/dws +0 -0
  8. package/bin/darwin-arm64/ossutil +0 -0
  9. package/bin/manifest.json +82 -0
  10. package/bin/win32-x64/crwu.exe +0 -0
  11. package/bin/win32-x64/dws.exe +4 -0
  12. package/bin/win32-x64/ossutil.exe +0 -0
  13. package/common/skills/.synced.json +8 -0
  14. package/common/skills/crwu-dws/SKILL.md +208 -0
  15. package/common/skills/crwu-dws/references/00-/347/233/256/345/275/225/345/277/253/347/205/247schema.md +113 -0
  16. package/common/skills/crwu-dws/references/01-/345/256/241/346/240/270/344/270/213/350/275/275/344/270/216manifest/350/247/204/350/214/203.md +115 -0
  17. package/common/skills/crwu-dws/references/02-/347/274/223/345/255/230/344/270/216/345/205/234/345/272/225/346/237/245/346/211/276/350/247/204/350/214/203.md +119 -0
  18. package/common/skills/crwu-dws/scripts/test_dws_source_contract.py +493 -0
  19. package/common/skills/crwu-h3yun-login/SKILL.md +130 -0
  20. package/common/skills/crwu-h3yun-query/SKILL.md +192 -0
  21. package/config/crwu-workbench.yml +26 -0
  22. package/cordis.patch.yml +46 -0
  23. package/lib/client.js +10346 -0
  24. package/lib/index.js +11584 -0
  25. package/package.json +119 -0
  26. package/scripts/prepare.mjs +59 -0
  27. package/skills/README.md +26 -0
  28. package/skills/crwu/crwu-audit/SKILL.md +152 -0
  29. package/skills/crwu/crwu-audit/references/00-input-and-route-profile.md +232 -0
  30. package/skills/crwu/crwu-audit/references/01-report-id-resolution.md +13 -0
  31. package/skills/crwu/crwu-audit/references/02-scope-classification.md +25 -0
  32. package/skills/crwu/crwu-audit/references/03-asset-classification.md +27 -0
  33. package/skills/crwu/crwu-audit/references/04-business-classification.md +63 -0
  34. package/skills/crwu/crwu-audit/references/05-method-classification.md +66 -0
  35. package/skills/crwu/crwu-audit/references/06-overlay-classification.md +42 -0
  36. package/skills/crwu/crwu-audit/references/07-skill-registry.md +57 -0
  37. package/skills/crwu/crwu-audit/references/08-union-dispatch-rules.md +142 -0
  38. package/skills/crwu/crwu-audit/references/09-review-risk-classification.md +85 -0
  39. package/skills/crwu/crwu-audit/references/10-capability-gap-proposal.md +68 -0
  40. package/skills/crwu/crwu-audit/references/11-html-delivery-spec.md +881 -0
  41. package/skills/crwu/crwu-audit/references/12-leaf-common-contract.md +202 -0
  42. package/skills/crwu/crwu-audit/references/13-dingtalk-result-publish.md +88 -0
  43. package/skills/crwu/crwu-audit/references/14-orchestration-workflow.md +52 -0
  44. package/skills/crwu/crwu-audit/references/99-maintenance.md +62 -0
  45. package/skills/crwu/crwu-audit/scripts/README.md +157 -0
  46. package/skills/crwu/crwu-audit/scripts/audit_delivery.py +2736 -0
  47. package/skills/crwu/crwu-audit/scripts/audit_result.schema.json +1659 -0
  48. package/skills/crwu/crwu-audit/scripts/examples/audit-result.sample.json +739 -0
  49. package/skills/crwu/crwu-audit/scripts/fetch_review_records.py +85 -0
  50. package/skills/crwu/crwu-audit/scripts/media_extract.py +513 -0
  51. package/skills/crwu/crwu-audit/scripts/prepare_materials.py +1252 -0
  52. package/skills/crwu/crwu-audit/scripts/test_audit_delivery.py +1678 -0
  53. package/skills/crwu/crwu-audit/scripts/test_audit_multiaxis_router.py +1339 -0
  54. package/skills/crwu/crwu-audit/scripts/test_fetch_review_records.py +77 -0
  55. package/skills/crwu/crwu-audit/scripts/test_media_extract.py +332 -0
  56. package/skills/crwu/crwu-audit/scripts/test_prepare_materials.py +1081 -0
  57. package/skills/crwu/crwu-audit/template/audit-report.html +435 -0
  58. package/skills/crwu/crwu-audit-asset-asset-group-goodwill/SKILL.md +38 -0
  59. package/skills/crwu/crwu-audit-asset-asset-group-goodwill/references/00-applicability.md +28 -0
  60. package/skills/crwu/crwu-audit-asset-asset-group-goodwill/references/01-kb-assembly.md +31 -0
  61. package/skills/crwu/crwu-audit-asset-asset-group-goodwill/references/02-review-focus.md +21 -0
  62. package/skills/crwu/crwu-audit-asset-asset-group-goodwill/references/03-common-contract.md +202 -0
  63. package/skills/crwu/crwu-audit-asset-debt/SKILL.md +38 -0
  64. package/skills/crwu/crwu-audit-asset-debt/references/00-applicability.md +40 -0
  65. package/skills/crwu/crwu-audit-asset-debt/references/01-kb-assembly.md +41 -0
  66. package/skills/crwu/crwu-audit-asset-debt/references/02-review-focus.md +54 -0
  67. package/skills/crwu/crwu-audit-asset-debt/references/03-common-contract.md +202 -0
  68. package/skills/crwu/crwu-audit-asset-enterprise-value/SKILL.md +38 -0
  69. package/skills/crwu/crwu-audit-asset-enterprise-value/references/00-applicability.md +31 -0
  70. package/skills/crwu/crwu-audit-asset-enterprise-value/references/01-kb-assembly.md +35 -0
  71. package/skills/crwu/crwu-audit-asset-enterprise-value/references/02-review-focus.md +33 -0
  72. package/skills/crwu/crwu-audit-asset-enterprise-value/references/03-common-contract.md +202 -0
  73. package/skills/crwu/crwu-audit-asset-equipment/SKILL.md +38 -0
  74. package/skills/crwu/crwu-audit-asset-equipment/references/00-applicability.md +40 -0
  75. package/skills/crwu/crwu-audit-asset-equipment/references/01-kb-assembly.md +39 -0
  76. package/skills/crwu/crwu-audit-asset-equipment/references/02-review-focus.md +52 -0
  77. package/skills/crwu/crwu-audit-asset-equipment/references/03-common-contract.md +202 -0
  78. package/skills/crwu/crwu-audit-asset-intangible/SKILL.md +38 -0
  79. package/skills/crwu/crwu-audit-asset-intangible/references/00-applicability.md +36 -0
  80. package/skills/crwu/crwu-audit-asset-intangible/references/01-kb-assembly.md +40 -0
  81. package/skills/crwu/crwu-audit-asset-intangible/references/02-review-focus.md +68 -0
  82. package/skills/crwu/crwu-audit-asset-intangible/references/03-common-contract.md +202 -0
  83. package/skills/crwu/crwu-audit-asset-inventory/SKILL.md +38 -0
  84. package/skills/crwu/crwu-audit-asset-inventory/references/00-applicability.md +28 -0
  85. package/skills/crwu/crwu-audit-asset-inventory/references/01-kb-assembly.md +31 -0
  86. package/skills/crwu/crwu-audit-asset-inventory/references/02-review-focus.md +21 -0
  87. package/skills/crwu/crwu-audit-asset-inventory/references/03-common-contract.md +202 -0
  88. package/skills/crwu/crwu-audit-asset-mining-right/SKILL.md +38 -0
  89. package/skills/crwu/crwu-audit-asset-mining-right/references/00-applicability.md +31 -0
  90. package/skills/crwu/crwu-audit-asset-mining-right/references/01-kb-assembly.md +35 -0
  91. package/skills/crwu/crwu-audit-asset-mining-right/references/02-review-focus.md +33 -0
  92. package/skills/crwu/crwu-audit-asset-mining-right/references/03-common-contract.md +202 -0
  93. package/skills/crwu/crwu-audit-asset-other/SKILL.md +38 -0
  94. package/skills/crwu/crwu-audit-asset-other/references/00-applicability.md +28 -0
  95. package/skills/crwu/crwu-audit-asset-other/references/01-kb-assembly.md +31 -0
  96. package/skills/crwu/crwu-audit-asset-other/references/02-review-focus.md +21 -0
  97. package/skills/crwu/crwu-audit-asset-other/references/03-common-contract.md +202 -0
  98. package/skills/crwu/crwu-audit-asset-portfolio/SKILL.md +38 -0
  99. package/skills/crwu/crwu-audit-asset-portfolio/references/00-applicability.md +28 -0
  100. package/skills/crwu/crwu-audit-asset-portfolio/references/01-kb-assembly.md +31 -0
  101. package/skills/crwu/crwu-audit-asset-portfolio/references/02-review-focus.md +21 -0
  102. package/skills/crwu/crwu-audit-asset-portfolio/references/03-common-contract.md +202 -0
  103. package/skills/crwu/crwu-audit-asset-realestate/SKILL.md +38 -0
  104. package/skills/crwu/crwu-audit-asset-realestate/references/00-applicability.md +43 -0
  105. package/skills/crwu/crwu-audit-asset-realestate/references/01-kb-assembly.md +75 -0
  106. package/skills/crwu/crwu-audit-asset-realestate/references/02-review-focus.md +93 -0
  107. package/skills/crwu/crwu-audit-asset-realestate/references/03-common-contract.md +202 -0
  108. package/skills/crwu/crwu-audit-asset-scrap-materials/SKILL.md +38 -0
  109. package/skills/crwu/crwu-audit-asset-scrap-materials/references/00-applicability.md +28 -0
  110. package/skills/crwu/crwu-audit-asset-scrap-materials/references/01-kb-assembly.md +31 -0
  111. package/skills/crwu/crwu-audit-asset-scrap-materials/references/02-review-focus.md +21 -0
  112. package/skills/crwu/crwu-audit-asset-scrap-materials/references/03-common-contract.md +202 -0
  113. package/skills/crwu/crwu-audit-asset-transport-equipment/SKILL.md +38 -0
  114. package/skills/crwu/crwu-audit-asset-transport-equipment/references/00-applicability.md +31 -0
  115. package/skills/crwu/crwu-audit-asset-transport-equipment/references/01-kb-assembly.md +35 -0
  116. package/skills/crwu/crwu-audit-asset-transport-equipment/references/02-review-focus.md +33 -0
  117. package/skills/crwu/crwu-audit-asset-transport-equipment/references/03-common-contract.md +202 -0
  118. package/skills/crwu/crwu-audit-biz-asset-operation/SKILL.md +38 -0
  119. package/skills/crwu/crwu-audit-biz-asset-operation/references/00-applicability.md +30 -0
  120. package/skills/crwu/crwu-audit-biz-asset-operation/references/01-kb-assembly.md +32 -0
  121. package/skills/crwu/crwu-audit-biz-asset-operation/references/02-review-focus.md +42 -0
  122. package/skills/crwu/crwu-audit-biz-asset-operation/references/03-common-contract.md +202 -0
  123. package/skills/crwu/crwu-audit-biz-consulting-review/SKILL.md +38 -0
  124. package/skills/crwu/crwu-audit-biz-consulting-review/references/00-applicability.md +30 -0
  125. package/skills/crwu/crwu-audit-biz-consulting-review/references/01-kb-assembly.md +32 -0
  126. package/skills/crwu/crwu-audit-biz-consulting-review/references/02-review-focus.md +40 -0
  127. package/skills/crwu/crwu-audit-biz-consulting-review/references/03-common-contract.md +202 -0
  128. package/skills/crwu/crwu-audit-biz-financial-reporting/SKILL.md +38 -0
  129. package/skills/crwu/crwu-audit-biz-financial-reporting/references/00-applicability.md +41 -0
  130. package/skills/crwu/crwu-audit-biz-financial-reporting/references/01-kb-assembly.md +40 -0
  131. package/skills/crwu/crwu-audit-biz-financial-reporting/references/02-review-focus.md +64 -0
  132. package/skills/crwu/crwu-audit-biz-financial-reporting/references/03-common-contract.md +202 -0
  133. package/skills/crwu/crwu-audit-biz-financing-debt/SKILL.md +38 -0
  134. package/skills/crwu/crwu-audit-biz-financing-debt/references/00-applicability.md +31 -0
  135. package/skills/crwu/crwu-audit-biz-financing-debt/references/01-kb-assembly.md +34 -0
  136. package/skills/crwu/crwu-audit-biz-financing-debt/references/02-review-focus.md +47 -0
  137. package/skills/crwu/crwu-audit-biz-financing-debt/references/03-common-contract.md +202 -0
  138. package/skills/crwu/crwu-audit-biz-investment-capital/SKILL.md +38 -0
  139. package/skills/crwu/crwu-audit-biz-investment-capital/references/00-applicability.md +31 -0
  140. package/skills/crwu/crwu-audit-biz-investment-capital/references/01-kb-assembly.md +34 -0
  141. package/skills/crwu/crwu-audit-biz-investment-capital/references/02-review-focus.md +47 -0
  142. package/skills/crwu/crwu-audit-biz-investment-capital/references/03-common-contract.md +202 -0
  143. package/skills/crwu/crwu-audit-biz-judicial-liquidation-compensation/SKILL.md +38 -0
  144. package/skills/crwu/crwu-audit-biz-judicial-liquidation-compensation/references/00-applicability.md +30 -0
  145. package/skills/crwu/crwu-audit-biz-judicial-liquidation-compensation/references/01-kb-assembly.md +32 -0
  146. package/skills/crwu/crwu-audit-biz-judicial-liquidation-compensation/references/02-review-focus.md +40 -0
  147. package/skills/crwu/crwu-audit-biz-judicial-liquidation-compensation/references/03-common-contract.md +202 -0
  148. package/skills/crwu/crwu-audit-biz-tax-history/SKILL.md +38 -0
  149. package/skills/crwu/crwu-audit-biz-tax-history/references/00-applicability.md +29 -0
  150. package/skills/crwu/crwu-audit-biz-tax-history/references/01-kb-assembly.md +30 -0
  151. package/skills/crwu/crwu-audit-biz-tax-history/references/02-review-focus.md +33 -0
  152. package/skills/crwu/crwu-audit-biz-tax-history/references/03-common-contract.md +202 -0
  153. package/skills/crwu/crwu-audit-biz-transaction-disposal/SKILL.md +38 -0
  154. package/skills/crwu/crwu-audit-biz-transaction-disposal/references/00-applicability.md +31 -0
  155. package/skills/crwu/crwu-audit-biz-transaction-disposal/references/01-kb-assembly.md +34 -0
  156. package/skills/crwu/crwu-audit-biz-transaction-disposal/references/02-review-focus.md +47 -0
  157. package/skills/crwu/crwu-audit-biz-transaction-disposal/references/03-common-contract.md +202 -0
  158. package/skills/crwu/crwu-audit-datacheck/SKILL.md +59 -0
  159. package/skills/crwu/crwu-audit-datacheck/references/00-KB/350/243/205/351/205/215/350/241/250.md +25 -0
  160. package/skills/crwu/crwu-audit-datacheck/references/01-runtime-and-check-catalog.md +139 -0
  161. package/skills/crwu/crwu-audit-datacheck/scripts/recalc_check.py +521 -0
  162. package/skills/crwu/crwu-audit-datacheck/scripts/test_recalc_check.py +419 -0
  163. package/skills/crwu/crwu-audit-datacheck/scripts/test_skill_self_containment.py +44 -0
  164. package/skills/crwu/crwu-audit-external-data/SKILL.md +73 -0
  165. package/skills/crwu/crwu-audit-external-data/references/00-KB/350/243/205/351/205/215/350/241/250.md +38 -0
  166. package/skills/crwu/crwu-audit-external-data/references/01-connector-access.md +116 -0
  167. package/skills/crwu/crwu-audit-external-data/references/02-verification-workflow.md +78 -0
  168. package/skills/crwu/crwu-audit-external-data/scripts/connector_probe.py +374 -0
  169. package/skills/crwu/crwu-audit-external-data/scripts/test_connector_probe.py +264 -0
  170. package/skills/crwu/crwu-audit-output-filter/SKILL.md +34 -0
  171. package/skills/crwu/crwu-audit-output-filter/references/00-applicability.md +7 -0
  172. package/skills/crwu/crwu-audit-output-filter/references/01-kb-assembly.md +11 -0
  173. package/skills/crwu/crwu-audit-output-filter/references/02-review-focus.md +25 -0
  174. package/skills/crwu/crwu-audit-public-general-standards/SKILL.md +46 -0
  175. package/skills/crwu/crwu-audit-public-general-standards/references/00-applicability.md +41 -0
  176. package/skills/crwu/crwu-audit-public-general-standards/references/01-kb-assembly.md +66 -0
  177. package/skills/crwu/crwu-audit-public-general-standards/references/02-review-focus.md +111 -0
  178. package/skills/crwu/crwu-audit-public-general-standards/references/03-execution-contract.md +89 -0
  179. package/skills/crwu/crwu-dev-audit-optimize/SKILL.md +98 -0
  180. package/skills/crwu/crwu-dev-audit-optimize/references/00-/344/274/230/345/214/226/350/247/204/350/214/203/344/270/216/346/226/207/344/273/266/350/220/275/347/202/271.md +132 -0
  181. package/skills/crwu/crwu-dev-audit-optimize/references/01-/345/217/215/351/246/210/345/256/232/344/275/215/344/270/216/347/224/273/345/203/217/346/265/201/347/250/213.md +108 -0
  182. package/skills/crwu/crwu-dev-audit-optimize/references/02-/346/226/271/346/241/210/346/250/241/346/235/277/344/270/216/347/241/256/350/256/244/351/227/250/347/246/201.md +92 -0
  183. package/skills/crwu/crwu-dev-audit-optimize/references/03-AI/344/272/272/345/267/245/345/267/256/350/267/235/345/210/206/346/236/220/346/265/201/347/250/213.md +95 -0
  184. package/skills/crwu/crwu-dev-audit-optimize/scripts/examples/gap-analysis.sample.json +116 -0
  185. package/skills/crwu/crwu-dev-audit-optimize/scripts/gap_analysis.schema.json +33 -0
  186. package/skills/crwu/crwu-dev-audit-optimize/scripts/gap_analysis_delivery.py +475 -0
  187. package/skills/crwu/crwu-dev-audit-optimize/scripts/test_gap_analysis_delivery.py +855 -0
  188. package/skills/crwu/crwu-dev-audit-optimize/template/NOTICE.echarts.txt +7 -0
  189. package/skills/crwu/crwu-dev-audit-optimize/template/echarts.min.js +45 -0
  190. package/skills/crwu/crwu-dev-audit-optimize/template/gap-analysis-report.html +71 -0
  191. package/skills/crwu/crwu-dev-audit-skill-maintainer/SKILL.md +74 -0
  192. package/skills/crwu/crwu-dev-audit-skill-maintainer/references/00-responsibility-and-modes.md +62 -0
  193. package/skills/crwu/crwu-dev-audit-skill-maintainer/references/01-kb-source-discovery.md +89 -0
  194. package/skills/crwu/crwu-dev-audit-skill-maintainer/references/02-child-skill-contract.md +99 -0
  195. package/skills/crwu/crwu-dev-audit-skill-maintainer/references/03-review-item-execution-contract.md +51 -0
  196. package/skills/crwu/crwu-dev-audit-skill-maintainer/references/04-registry-and-mapping-update.md +73 -0
  197. package/skills/crwu/crwu-dev-audit-skill-maintainer/references/05-validation-and-delivery.md +127 -0
  198. package/skills/crwu/crwu-dev-audit-skill-maintainer/references/06-live-routing-reconciliation.md +136 -0
  199. package/skills/crwu/crwu-dev-audit-skill-maintainer/references/07-kb-skill-map.md +411 -0
  200. package/skills/crwu/crwu-dev-audit-skill-maintainer/scripts/README.md +200 -0
  201. package/skills/crwu/crwu-dev-audit-skill-maintainer/scripts/check_audit_skill_mappings.py +2477 -0
  202. package/skills/crwu/crwu-dev-audit-skill-maintainer/scripts/kb_tool.py +577 -0
  203. package/skills/crwu/crwu-dev-audit-skill-maintainer/scripts/test_audit_skill_maintainer.py +5097 -0
  204. package/skills/dws/LICENSE +178 -0
  205. package/skills/dws/NOTICE +17 -0
  206. package/skills/dws/dingtalk-aisearch/SKILL.md +83 -0
  207. package/skills/dws/dingtalk-aisearch/references/aisearch.md +249 -0
  208. package/skills/dws/dingtalk-aisearch/references/intent-guide.md +15 -0
  209. package/skills/dws/dingtalk-aisearch/references/lite-recipes.md +31 -0
  210. package/skills/dws/dingtalk-aitable/SKILL.md +139 -0
  211. package/skills/dws/dingtalk-aitable/references/06-data-analytics.md +11 -0
  212. package/skills/dws/dingtalk-aitable/references/aitable/aitable-advperm.md +251 -0
  213. package/skills/dws/dingtalk-aitable/references/aitable/aitable-attachment.md +49 -0
  214. package/skills/dws/dingtalk-aitable/references/aitable/aitable-best-practices.md +48 -0
  215. package/skills/dws/dingtalk-aitable/references/aitable/aitable-cell-value.md +346 -0
  216. package/skills/dws/dingtalk-aitable/references/aitable/aitable-dashboard-chart.md +46 -0
  217. package/skills/dws/dingtalk-aitable/references/aitable/aitable-data-analysis-sop.md +131 -0
  218. package/skills/dws/dingtalk-aitable/references/aitable/aitable-datasource.md +272 -0
  219. package/skills/dws/dingtalk-aitable/references/aitable/aitable-error-recovery.md +128 -0
  220. package/skills/dws/dingtalk-aitable/references/aitable/aitable-export-import.md +113 -0
  221. package/skills/dws/dingtalk-aitable/references/aitable/aitable-field-properties.md +238 -0
  222. package/skills/dws/dingtalk-aitable/references/aitable/aitable-field.md +186 -0
  223. package/skills/dws/dingtalk-aitable/references/aitable/aitable-filter-sort.md +135 -0
  224. package/skills/dws/dingtalk-aitable/references/aitable/aitable-form.md +130 -0
  225. package/skills/dws/dingtalk-aitable/references/aitable/aitable-formula-guide.md +224 -0
  226. package/skills/dws/dingtalk-aitable/references/aitable/aitable-primary-doc.md +58 -0
  227. package/skills/dws/dingtalk-aitable/references/aitable/aitable-record-create.md +52 -0
  228. package/skills/dws/dingtalk-aitable/references/aitable/aitable-record-delete.md +20 -0
  229. package/skills/dws/dingtalk-aitable/references/aitable/aitable-record-history.md +97 -0
  230. package/skills/dws/dingtalk-aitable/references/aitable/aitable-record-name-key.md +47 -0
  231. package/skills/dws/dingtalk-aitable/references/aitable/aitable-record-query.md +120 -0
  232. package/skills/dws/dingtalk-aitable/references/aitable/aitable-record-share.md +54 -0
  233. package/skills/dws/dingtalk-aitable/references/aitable/aitable-record-stats.md +59 -0
  234. package/skills/dws/dingtalk-aitable/references/aitable/aitable-record-update.md +66 -0
  235. package/skills/dws/dingtalk-aitable/references/aitable/aitable-record-upsert.md +89 -0
  236. package/skills/dws/dingtalk-aitable/references/aitable/aitable-view-config.md +140 -0
  237. package/skills/dws/dingtalk-aitable/references/aitable/aitable-view-extras.md +195 -0
  238. package/skills/dws/dingtalk-aitable/references/aitable/aitable-view-types.md +95 -0
  239. package/skills/dws/dingtalk-aitable/references/aitable/aitable-workflow.md +384 -0
  240. package/skills/dws/dingtalk-aitable/references/aitable-record-ops.md +80 -0
  241. package/skills/dws/dingtalk-aitable/references/aitable-section.md +30 -0
  242. package/skills/dws/dingtalk-aitable/references/aitable.md +59 -0
  243. package/skills/dws/dingtalk-aitable/references/field-rules.md +17 -0
  244. package/skills/dws/dingtalk-aitable/references/intent-guide.md +17 -0
  245. package/skills/dws/dingtalk-aitable/references/recipes/conventions.md +44 -0
  246. package/skills/dws/dingtalk-aitable/references/url-patterns.md +144 -0
  247. package/skills/dws/dingtalk-aitable/scripts/aitable_export_via_task.py +210 -0
  248. package/skills/dws/dingtalk-aitable/scripts/aitable_import_via_task.py +173 -0
  249. package/skills/dws/dingtalk-aitable/scripts/bulk_add_fields.py +273 -0
  250. package/skills/dws/dingtalk-aitable/scripts/import_records.py +333 -0
  251. package/skills/dws/dingtalk-aitable/scripts/upload_attachment.py +190 -0
  252. package/skills/dws/dingtalk-calendar/SKILL.md +137 -0
  253. package/skills/dws/dingtalk-calendar/references/03-meeting.md +56 -0
  254. package/skills/dws/dingtalk-calendar/references/calendar.md +760 -0
  255. package/skills/dws/dingtalk-calendar/references/intent-guide.md +9 -0
  256. package/skills/dws/dingtalk-calendar/references/lite-recipes.md +25 -0
  257. package/skills/dws/dingtalk-calendar/scripts/calendar_free_slot_finder.py +199 -0
  258. package/skills/dws/dingtalk-calendar/scripts/calendar_schedule_meeting.py +233 -0
  259. package/skills/dws/dingtalk-calendar/scripts/calendar_today_agenda.py +139 -0
  260. package/skills/dws/dingtalk-chat/SKILL.md +127 -0
  261. package/skills/dws/dingtalk-chat/references/01-messaging.md +103 -0
  262. package/skills/dws/dingtalk-chat/references/card/callback.md +10 -0
  263. package/skills/dws/dingtalk-chat/references/card/create.md +27 -0
  264. package/skills/dws/dingtalk-chat/references/card/schema.md +14 -0
  265. package/skills/dws/dingtalk-chat/references/card/update.md +13 -0
  266. package/skills/dws/dingtalk-chat/references/chat/chat-bot.md +187 -0
  267. package/skills/dws/dingtalk-chat/references/chat/chat-conversation.md +165 -0
  268. package/skills/dws/dingtalk-chat/references/chat/group-admin.md +144 -0
  269. package/skills/dws/dingtalk-chat/references/chat/group-discovery.md +121 -0
  270. package/skills/dws/dingtalk-chat/references/chat/message-actions.md +132 -0
  271. package/skills/dws/dingtalk-chat/references/chat/message-media.md +76 -0
  272. package/skills/dws/dingtalk-chat/references/chat/message-query.md +135 -0
  273. package/skills/dws/dingtalk-chat/references/chat/thread.md +46 -0
  274. package/skills/dws/dingtalk-chat/references/chat-emoji-list.md +216 -0
  275. package/skills/dws/dingtalk-chat/references/chat.md +140 -0
  276. package/skills/dws/dingtalk-chat/references/contracts.md +70 -0
  277. package/skills/dws/dingtalk-chat/references/intent-guide.md +56 -0
  278. package/skills/dws/dingtalk-contact/SKILL.md +122 -0
  279. package/skills/dws/dingtalk-contact/references/08-directory.md +51 -0
  280. package/skills/dws/dingtalk-contact/references/contact.md +595 -0
  281. package/skills/dws/dingtalk-contact/references/intent-guide.md +14 -0
  282. package/skills/dws/dingtalk-contact/references/lite-recipes.md +30 -0
  283. package/skills/dws/dingtalk-contact/references/recipes/conventions.md +44 -0
  284. package/skills/dws/dingtalk-contact/scripts/contact_dept_members.py +130 -0
  285. package/skills/dws/dingtalk-doc/SKILL.md +112 -0
  286. package/skills/dws/dingtalk-doc/references/04-document.md +57 -0
  287. package/skills/dws/dingtalk-doc/references/contracts.md +40 -0
  288. package/skills/dws/dingtalk-doc/references/doc/doc-block.md +39 -0
  289. package/skills/dws/dingtalk-doc/references/doc/doc-comment.md +29 -0
  290. package/skills/dws/dingtalk-doc/references/doc/doc-create.md +54 -0
  291. package/skills/dws/dingtalk-doc/references/doc/doc-export.md +30 -0
  292. package/skills/dws/dingtalk-doc/references/doc/doc-import.md +28 -0
  293. package/skills/dws/dingtalk-doc/references/doc/doc-info.md +12 -0
  294. package/skills/dws/dingtalk-doc/references/doc/doc-media.md +46 -0
  295. package/skills/dws/dingtalk-doc/references/doc/doc-read.md +56 -0
  296. package/skills/dws/dingtalk-doc/references/doc/doc-update.md +87 -0
  297. package/skills/dws/dingtalk-doc/references/doc/format/doc-jsonml-cookbook.md +469 -0
  298. package/skills/dws/dingtalk-doc/references/doc/format/doc-jsonml-schema.json +526 -0
  299. package/skills/dws/dingtalk-doc/references/doc/format/doc-jsonml-schema.md +711 -0
  300. package/skills/dws/dingtalk-doc/references/doc/style/doc-create-workflow.md +414 -0
  301. package/skills/dws/dingtalk-doc/references/doc/style/doc-style-guideline.md +404 -0
  302. package/skills/dws/dingtalk-doc/references/doc/style/doc-update-workflow.md +316 -0
  303. package/skills/dws/dingtalk-doc/references/doc.md +82 -0
  304. package/skills/dws/dingtalk-doc/references/intent-guide.md +20 -0
  305. package/skills/dws/dingtalk-drive/SKILL.md +128 -0
  306. package/skills/dws/dingtalk-drive/references/drive.md +126 -0
  307. package/skills/dws/dingtalk-drive/references/folder-sync.md +40 -0
  308. package/skills/dws/dingtalk-drive/references/intent-guide.md +22 -0
  309. package/skills/dws/dingtalk-drive/references/lite-recipes.md +39 -0
  310. package/skills/dws/dingtalk-event/SKILL.md +106 -0
  311. package/skills/dws/dingtalk-event/references/event-im-keys.md +54 -0
  312. package/skills/dws/dingtalk-event/references/event-im-lifecycle.md +35 -0
  313. package/skills/dws/dingtalk-event/references/event-im-operations.md +52 -0
  314. package/skills/dws/dingtalk-event/references/event-im-output.md +39 -0
  315. package/skills/dws/dingtalk-event/references/event-im.md +58 -0
  316. package/skills/dws/dingtalk-event/references/event-oa.md +155 -0
  317. package/skills/dws/dingtalk-event/references/event-todo.md +50 -0
  318. package/skills/dws/dingtalk-event/references/event-voip.md +69 -0
  319. package/skills/dws/dingtalk-mail/SKILL.md +113 -0
  320. package/skills/dws/dingtalk-mail/references/09-mail.md +45 -0
  321. package/skills/dws/dingtalk-mail/references/intent-guide.md +8 -0
  322. package/skills/dws/dingtalk-mail/references/lite-recipes.md +45 -0
  323. package/skills/dws/dingtalk-mail/references/mail.md +1889 -0
  324. package/skills/dws/dingtalk-mail/references/recipes/conventions.md +44 -0
  325. package/skills/dws/dingtalk-mail/scripts/mail_send_with_cc.py +122 -0
  326. package/skills/dws/dingtalk-mail/scripts/mail_unread_summary.py +114 -0
  327. package/skills/dws/dingtalk-minutes/SKILL.md +116 -0
  328. package/skills/dws/dingtalk-minutes/references/07-minutes.md +149 -0
  329. package/skills/dws/dingtalk-minutes/references/10-minutes-speaker-match.md +32 -0
  330. package/skills/dws/dingtalk-minutes/references/11-minutes-speaker-correct.md +40 -0
  331. package/skills/dws/dingtalk-minutes/references/intent-guide.md +79 -0
  332. package/skills/dws/dingtalk-minutes/references/lite-recipes.md +25 -0
  333. package/skills/dws/dingtalk-minutes/references/minutes.md +210 -0
  334. package/skills/dws/dingtalk-minutes/references/recipes/conventions.md +33 -0
  335. package/skills/dws/dingtalk-minutes/scripts/minutes_recent_summary.py +196 -0
  336. package/skills/dws/dingtalk-minutes/scripts/test_minutes_scripts.py +222 -0
  337. package/skills/dws/dingtalk-misc/SKILL.md +55 -0
  338. package/skills/dws/dingtalk-misc/references/05-reporting.md +29 -0
  339. package/skills/dws/dingtalk-misc/references/agoal.md +302 -0
  340. package/skills/dws/dingtalk-misc/references/attendance-intent-guide.md +7 -0
  341. package/skills/dws/dingtalk-misc/references/attendance-report.md +109 -0
  342. package/skills/dws/dingtalk-misc/references/attendance-schedule.md +115 -0
  343. package/skills/dws/dingtalk-misc/references/attendance-vacation.md +129 -0
  344. package/skills/dws/dingtalk-misc/references/attendance.md +149 -0
  345. package/skills/dws/dingtalk-misc/references/dev/app.md +42 -0
  346. package/skills/dws/dingtalk-misc/references/dev/connect.md +108 -0
  347. package/skills/dws/dingtalk-misc/references/dev/credentials.md +26 -0
  348. package/skills/dws/dingtalk-misc/references/dev/dev-index.md +13 -0
  349. package/skills/dws/dingtalk-misc/references/dev/event.md +47 -0
  350. package/skills/dws/dingtalk-misc/references/dev/mcp.md +106 -0
  351. package/skills/dws/dingtalk-misc/references/dev/member.md +19 -0
  352. package/skills/dws/dingtalk-misc/references/dev/permission.md +56 -0
  353. package/skills/dws/dingtalk-misc/references/dev/recipes.md +58 -0
  354. package/skills/dws/dingtalk-misc/references/dev/robot.md +74 -0
  355. package/skills/dws/dingtalk-misc/references/dev/security.md +21 -0
  356. package/skills/dws/dingtalk-misc/references/dev/version.md +99 -0
  357. package/skills/dws/dingtalk-misc/references/dev/webapp.md +22 -0
  358. package/skills/dws/dingtalk-misc/references/devapp.md +148 -0
  359. package/skills/dws/dingtalk-misc/references/devdoc-intent-guide.md +7 -0
  360. package/skills/dws/dingtalk-misc/references/devdoc.md +42 -0
  361. package/skills/dws/dingtalk-misc/references/ding.md +184 -0
  362. package/skills/dws/dingtalk-misc/references/hrbrain.md +67 -0
  363. package/skills/dws/dingtalk-misc/references/live.md +23 -0
  364. package/skills/dws/dingtalk-misc/references/markdown.md +167 -0
  365. package/skills/dws/dingtalk-misc/references/oa/oa-form-components.md +345 -0
  366. package/skills/dws/dingtalk-misc/references/oa/oa-process-nodes.md +374 -0
  367. package/skills/dws/dingtalk-misc/references/oa.md +1014 -0
  368. package/skills/dws/dingtalk-misc/references/openapi-explorer.md +47 -0
  369. package/skills/dws/dingtalk-misc/references/pat.md +52 -0
  370. package/skills/dws/dingtalk-misc/references/profile.md +41 -0
  371. package/skills/dws/dingtalk-misc/references/recruit.md +89 -0
  372. package/skills/dws/dingtalk-misc/references/report-conventions.md +44 -0
  373. package/skills/dws/dingtalk-misc/references/report-intent-guide.md +11 -0
  374. package/skills/dws/dingtalk-misc/references/report-lite-recipes.md +25 -0
  375. package/skills/dws/dingtalk-misc/references/report.md +109 -0
  376. package/skills/dws/dingtalk-misc/references/sheet/sheet-batch-operations.md +104 -0
  377. package/skills/dws/dingtalk-misc/references/sheet/sheet-chart.md +69 -0
  378. package/skills/dws/dingtalk-misc/references/sheet/sheet-comment.md +166 -0
  379. package/skills/dws/dingtalk-misc/references/sheet/sheet-conditional-format.md +59 -0
  380. package/skills/dws/dingtalk-misc/references/sheet/sheet-dimension-operations.md +60 -0
  381. package/skills/dws/dingtalk-misc/references/sheet/sheet-dropdown.md +103 -0
  382. package/skills/dws/dingtalk-misc/references/sheet/sheet-export.md +135 -0
  383. package/skills/dws/dingtalk-misc/references/sheet/sheet-filter-view.md +51 -0
  384. package/skills/dws/dingtalk-misc/references/sheet/sheet-filter.md +181 -0
  385. package/skills/dws/dingtalk-misc/references/sheet/sheet-formula.md +192 -0
  386. package/skills/dws/dingtalk-misc/references/sheet/sheet-import.md +76 -0
  387. package/skills/dws/dingtalk-misc/references/sheet/sheet-media-image.md +263 -0
  388. package/skills/dws/dingtalk-misc/references/sheet/sheet-pivot-table.md +292 -0
  389. package/skills/dws/dingtalk-misc/references/sheet/sheet-range-operations.md +161 -0
  390. package/skills/dws/dingtalk-misc/references/sheet/sheet-read-data.md +60 -0
  391. package/skills/dws/dingtalk-misc/references/sheet/sheet-revision-changeset.md +46 -0
  392. package/skills/dws/dingtalk-misc/references/sheet/sheet-search-replace.md +120 -0
  393. package/skills/dws/dingtalk-misc/references/sheet/sheet-style-format.md +71 -0
  394. package/skills/dws/dingtalk-misc/references/sheet/sheet-version.md +84 -0
  395. package/skills/dws/dingtalk-misc/references/sheet/sheet-workbook.md +59 -0
  396. package/skills/dws/dingtalk-misc/references/sheet/sheet-write-data.md +93 -0
  397. package/skills/dws/dingtalk-misc/references/sheet-conventions.md +44 -0
  398. package/skills/dws/dingtalk-misc/references/sheet-intent-guide.md +12 -0
  399. package/skills/dws/dingtalk-misc/references/sheet.md +166 -0
  400. package/skills/dws/dingtalk-misc/references/skill.md +98 -0
  401. package/skills/dws/dingtalk-misc/references/unsupported-scripts.md +49 -0
  402. package/skills/dws/dingtalk-misc/references/url-patterns.md +144 -0
  403. package/skills/dws/dingtalk-misc/references/whiteboard/compose.md +200 -0
  404. package/skills/dws/dingtalk-misc/references/whiteboard/open-nodes-v1/01-overview.md +57 -0
  405. package/skills/dws/dingtalk-misc/references/whiteboard/open-nodes-v1/02-query.md +288 -0
  406. package/skills/dws/dingtalk-misc/references/whiteboard/open-nodes-v1/03-update.md +249 -0
  407. package/skills/dws/dingtalk-misc/references/whiteboard/open-nodes-v1/04-text-style.md +395 -0
  408. package/skills/dws/dingtalk-misc/references/whiteboard/open-nodes-v1/05-shape-frame-group-connector.md +186 -0
  409. package/skills/dws/dingtalk-misc/references/whiteboard/open-nodes-v1/06-vector-icon-path.md +313 -0
  410. package/skills/dws/dingtalk-misc/references/whiteboard/open-nodes-v1/07-examples-errors-write-support.md +270 -0
  411. package/skills/dws/dingtalk-misc/references/whiteboard/open-nodes-v1/08-catalogs.md +61 -0
  412. package/skills/dws/dingtalk-misc/references/whiteboard/open-nodes-v1.md +54 -0
  413. package/skills/dws/dingtalk-misc/references/whiteboard/replace.md +41 -0
  414. package/skills/dws/dingtalk-misc/references/whiteboard/vector.md +51 -0
  415. package/skills/dws/dingtalk-misc/references/whiteboard.md +115 -0
  416. package/skills/dws/dingtalk-misc/scripts/aiapp_create_and_poll.py +138 -0
  417. package/skills/dws/dingtalk-misc/scripts/attendance_my_record.py +91 -0
  418. package/skills/dws/dingtalk-misc/scripts/attendance_report_checkin.py +440 -0
  419. package/skills/dws/dingtalk-misc/scripts/attendance_report_common.py +1698 -0
  420. package/skills/dws/dingtalk-misc/scripts/attendance_report_daily.py +558 -0
  421. package/skills/dws/dingtalk-misc/scripts/attendance_report_detail.py +809 -0
  422. package/skills/dws/dingtalk-misc/scripts/attendance_report_monthly.py +758 -0
  423. package/skills/dws/dingtalk-misc/scripts/attendance_report_record.py +947 -0
  424. package/skills/dws/dingtalk-misc/scripts/attendance_schedule_export.py +344 -0
  425. package/skills/dws/dingtalk-misc/scripts/attendance_schedule_import.py +498 -0
  426. package/skills/dws/dingtalk-misc/scripts/attendance_team_shift.py +89 -0
  427. package/skills/dws/dingtalk-misc/scripts/attendance_vacation_balance.py +617 -0
  428. package/skills/dws/dingtalk-misc/scripts/finance_daily_cashflow.py +70 -0
  429. package/skills/dws/dingtalk-misc/scripts/finance_expense_flow.py +138 -0
  430. package/skills/dws/dingtalk-misc/scripts/oa_batch_approve.py +158 -0
  431. package/skills/dws/dingtalk-misc/scripts/oa_pending_review.py +132 -0
  432. package/skills/dws/dingtalk-misc/scripts/report_received_today.py +315 -0
  433. package/skills/dws/dingtalk-misc/scripts/yida_custom_page_update.py +401 -0
  434. package/skills/dws/dingtalk-misc/scripts/yida_form_builder.py +526 -0
  435. package/skills/dws/dingtalk-misc/scripts/yida_form_fields.py +315 -0
  436. package/skills/dws/dingtalk-misc/scripts/yida_form_inspector.py +311 -0
  437. package/skills/dws/dingtalk-misc/scripts/yida_form_update.py +185 -0
  438. package/skills/dws/dingtalk-misc/scripts/yida_jsx_pipeline.py +1588 -0
  439. package/skills/dws/dingtalk-misc/scripts/yida_page_compiler.py +1441 -0
  440. package/skills/dws/dingtalk-misc/scripts/yida_page_generate.py +514 -0
  441. package/skills/dws/dingtalk-misc/scripts/yida_page_schema.py +519 -0
  442. package/skills/dws/dingtalk-misc/scripts/yida_page_self_check.py +398 -0
  443. package/skills/dws/dingtalk-misc/scripts/yida_process_flow.py +1478 -0
  444. package/skills/dws/dingtalk-misc/scripts/yida_process_update.py +589 -0
  445. package/skills/dws/dingtalk-misc/scripts/yida_report_builder.py +494 -0
  446. package/skills/dws/dingtalk-misc/scripts/yida_report_charts.py +1434 -0
  447. package/skills/dws/dingtalk-misc/scripts/yida_report_update.py +244 -0
  448. package/skills/dws/dingtalk-misc/scripts/yida_schema_common.py +340 -0
  449. package/skills/dws/dingtalk-shared/SKILL.md +83 -0
  450. package/skills/dws/dingtalk-shared/references/capability-limits.md +31 -0
  451. package/skills/dws/dingtalk-shared/references/channel-login.md +26 -0
  452. package/skills/dws/dingtalk-shared/references/confirmation.md +59 -0
  453. package/skills/dws/dingtalk-shared/references/error-codes.md +155 -0
  454. package/skills/dws/dingtalk-shared/references/global-reference.md +122 -0
  455. package/skills/dws/dingtalk-shared/references/intent-guide.md +537 -0
  456. package/skills/dws/dingtalk-shared/references/recipes/conventions.md +45 -0
  457. package/skills/dws/dingtalk-shared/references/recipes/lite-catalog.md +275 -0
  458. package/skills/dws/dingtalk-shared/references/recipes/meta.md +67 -0
  459. package/skills/dws/dingtalk-shared/references/routing.md +52 -0
  460. package/skills/dws/dingtalk-shared/references/runtime-contract.md +11 -0
  461. package/skills/dws/dingtalk-shared/references/schema-usage.md +88 -0
  462. package/skills/dws/dingtalk-shared/references/url-patterns.md +144 -0
  463. package/skills/dws/dingtalk-shared/references/workflow-routing.md +45 -0
  464. package/skills/dws/dingtalk-todo/SKILL.md +119 -0
  465. package/skills/dws/dingtalk-todo/references/02-task.md +70 -0
  466. package/skills/dws/dingtalk-todo/references/intent-guide.md +15 -0
  467. package/skills/dws/dingtalk-todo/references/lite-recipes.md +68 -0
  468. package/skills/dws/dingtalk-todo/references/recipes/conventions.md +44 -0
  469. package/skills/dws/dingtalk-todo/references/todo.md +517 -0
  470. package/skills/dws/dingtalk-todo/scripts/todo_batch_create.py +354 -0
  471. package/skills/dws/dingtalk-todo/scripts/todo_daily_summary.py +153 -0
  472. package/skills/dws/dingtalk-todo/scripts/todo_overdue_check.py +101 -0
  473. package/skills/dws/dingtalk-wiki/SKILL.md +117 -0
  474. package/skills/dws/dingtalk-wiki/references/intent-guide.md +14 -0
  475. package/skills/dws/dingtalk-wiki/references/lite-recipes.md +44 -0
  476. package/skills/dws/dingtalk-wiki/references/wiki-members.md +32 -0
  477. package/skills/dws/dingtalk-wiki/references/wiki-node-ops.md +46 -0
  478. package/skills/dws/dingtalk-wiki/references/wiki.md +65 -0
  479. package/skills/dws/provenance.json +27 -0
@@ -0,0 +1,135 @@
1
+ # message-query:消息读取、搜索与查询
2
+
3
+ > 返回入口:[DingTalk Chat Skill](../../SKILL.md)
4
+
5
+ 用于浏览或导出指定会话、按条件搜索消息、按消息 ID 读取详情、查看 @我、话题回复、
6
+ Favorite、Pin 和 reaction。只读任务优先使用 Shortcut;只有 Shortcut 未发布所需底层字段、
7
+ 原始响应或手工 continuation 时才读取精确原子 leaf Schema。
8
+
9
+ ## 入口选择
10
+
11
+ | 用户终点 | 唯一推荐入口 |
12
+ |---|---|
13
+ | <!-- dws-intent: chat.read.conversation -->浏览或导出一个指定群聊/单聊 | `dws chat +chat-messages` |
14
+ | <!-- dws-intent: chat.search.filtered -->发送者、关键词、@对象或消息类型是主要条件 | `dws chat +search-msg` |
15
+ | 已知消息 IDs 读取详情 | `dws chat +messages-mget` |
16
+ | 查看 @我的消息 | `dws chat +at-me` |
17
+ | 查看 Favorite | `dws chat +flag-list` |
18
+ | 已知话题主消息或 thread/topic ID 读取回复 | `dws chat +thread-replies` |
19
+
20
+ `+chat-messages` 是指定会话的粗粒度读取;`+search-msg` 是目标条件明确的单/跨会话检索。
21
+ 不要先读完整会话再补跑搜索,也不要把群名或姓名直接填入只接受稳定 ID 的参数。
22
+
23
+ ## 指定会话读取
24
+
25
+ 群聊 `--group` 可传群名或 `openConversationId`;也可用 `--chat-query` 显式解析群名、
26
+ 用 `--conversation-id` 显式传稳定 ID。单聊使用 `--user` 或 `--open-dingtalk-id`。
27
+
28
+ ```bash
29
+ dws chat +chat-messages --group <群名或openConversationId> --format json
30
+ dws chat +chat-messages --group <openConversationId> --page-all --page-limit 50 --format json
31
+ ```
32
+
33
+ 可附带非必填的 `--sender-query <姓名>`:未传时返回全部消息;唯一解析出
34
+ userId/openDingTalkId 后,按消息 `senderId` 筛选同一次读取结果,覆盖最终
35
+ `messages/count` 并返回 `resolvedFilters`。解析失败、不完整或存在歧义时抑制未过滤消息,
36
+ 返回 `sender_resolution_failed`,不得把全量消息当作发送者筛选结果。
37
+
38
+ `--sender` 是姓名、userId 或 openDingTalkId 的混合入口。通讯录无法确认输入类型时,可按
39
+ 原值 userId 精确过滤并交付命中消息,但结果必须保留 `identity_unverified`,不得把字符串命中
40
+ 升级为已验证身份,也不得据此作完整否定结论。
41
+
42
+ ```bash
43
+ dws chat +chat-messages --group "项目群" --sender-query "测试用户甲" --page-all --format json
44
+ ```
45
+
46
+ 时间范围使用公开可选的 `--start`、`--end`、`--order asc|desc`,兼容别名为
47
+ `--start-time/--end-time/--sort`。范围为 `[start,end)`;仅开始时间表示到本次执行当前时间;
48
+ 仅结束时间只支持 `desc`,`asc` 必须提供开始时间。旧 `--time/--direction` 只用于兼容的
49
+ 单边界模式,不能与范围模式混用。
50
+
51
+ ```bash
52
+ dws chat +chat-messages --group <openConversationId> \
53
+ --start "2026-08-01T00:00:00+08:00" --end "2026-08-02T00:00:00+08:00" \
54
+ --order asc --page-all --format json
55
+ ```
56
+
57
+ 完整读取后只需消息字段可判断的子集时,在同一次调用中使用全局 `--jq`,保留根信封并
58
+ 同步改写 `messages/count`;不得丢失 `complete`、`hasMore`、`failures` 等 ledger。
59
+ 发送者姓名仍使用 `--sender-query` 解析稳定身份,不用 `--jq` 比较展示名。
60
+
61
+ ```bash
62
+ dws chat +chat-messages --group "项目群" --page-all --format json \
63
+ --jq '. as $root | [.messages[] | select((.reactions // []) | length > 0)] as $matched | $root | .messages = $matched | .count = ($matched | length)'
64
+ ```
65
+
66
+ 要求导出时用 `--output <工作目录内相对.json>` 原子写入;需要资源时在读取命令上加
67
+ `--download-resources`,不要让 Agent 先输出全量 JSON 再手工遍历资源引用。
68
+
69
+ ## 多维度搜索
70
+
71
+ - 关键词使用公开 `--query`。
72
+ - 已知稳定会话 ID 使用 `--group` / `--groups`;稳定发送者 ID 使用 `--senders`。
73
+ - 只有群名时使用 `--chat-query`,由 CLI 唯一解析会话。
74
+ - 只有发送者姓名时使用 `--sender-query`,由 CLI 唯一解析人员。
75
+ - 不传会话过滤时搜索全部会话;默认时间范围为最近 7 天。
76
+ - `--page-all` 只翻完当前时间范围内的游标页;精确范围使用成对的 `--start/--end`。
77
+ - `--order` 只稳定排列已经取得的结果;未全量或 `complete=false` 时不得称为完整范围全局排序。
78
+
79
+ ```bash
80
+ dws chat +search-msg --chat-query "项目群" --sender-query "测试用户甲" --page-all --format json
81
+ dws chat +search-msg --chat-query "项目群" --query "发布计划" --page-all --format json
82
+ dws chat +search-msg --sender-query "测试用户甲" --page-all --format json
83
+ ```
84
+
85
+ 需要 Shortcut 未发布的原始过滤字段或响应时,才评估 `message search-advanced`。它支持
86
+ 发送者、@对象、多个会话、消息类型、会话类型、机器人消息和时间范围,但不是默认入口。
87
+ 至少提供一种真实过滤条件,完整遍历只有 `--page-all` 会触发。
88
+
89
+ ## 其他查询
90
+
91
+ ### 已知消息、@我与话题回复
92
+
93
+ - `+messages-mget --msg-ids <id...>`:最多 50 条;结果可直接用于回复、转发、撤回和资源下载。
94
+ - `+at-me [--group <群名或ID>] --page-all`:群内或跨全部会话查看 @我的消息。
95
+ - `+thread-replies --message-id <rootMessageId>`:自动只读解析 conversation/thread。
96
+ - `+thread-replies --group <cid> --thread-id <threadId>`:显式稳定上下文。
97
+
98
+ 话题回复默认 `desc`;`asc` 必须与 `--page-all` 一起使用。自动续页使用下层毫秒级
99
+ `nextCursor`,不得使用只有秒精度的展示时间手工拼 continuation。检查 `complete`、
100
+ `hasMore`、`stopReason` 和 `failures`。
101
+
102
+ ### Favorite、Pin 与 reaction 查询
103
+
104
+ | 任务 | 入口 |
105
+ |---|---|
106
+ | Favorite 列表 | `+flag-list`;要求全部时加 `--page-all`,页大小 1–30 |
107
+ | 消息 Pin 列表 | `message list-pin-msg --open-conversation-id <cid>` |
108
+ | 批量 reaction/文字回应 | `message list-emotion-replies --msg-ids <id...>` |
109
+ | 已读/未读状态 | `message read-status --group <cid> --message-id <id>` |
110
+
111
+ Favorite、消息 Pin、消息 Top 和会话 Top 是不同对象。写入或取消这些状态读取
112
+ [message-actions.md](message-actions.md),这里只负责查询。
113
+
114
+ ## 原子 fallback
115
+
116
+ | 原子命令 | 仅用于 |
117
+ |---|---|
118
+ | `message list` | 指定会话原始响应或显式手工 continuation |
119
+ | `message list-all` | 时间范围内全部会话的原始分页响应 |
120
+ | `message list-by-sender` | 已有稳定发送者 ID 且需要底层原始响应 |
121
+ | `message list-mentions` / `list-focused` | @我或特别关注的原始列表 |
122
+ | `message search` / `search-advanced` | Shortcut 未发布的真实过滤字段 |
123
+ | `message list-by-ids` | 已知消息 ID 的原始详情响应 |
124
+
125
+ Typed `chat message` 自动翻页只由 `--page-all` 触发;只传 `--page-limit`、`--max-items`
126
+ 或 `--page-delay` 仍是单页。非第一页失败时保留 partial 结果、失败页和 continuation,不能
127
+ 把 partial result 表述成完整成功。
128
+
129
+ ## 完成与错误
130
+
131
+ - 查询必须检查 `complete`、`hasMore`、`stopReason`、`failures` 和下载 ledger。
132
+ - 发送者/群名零命中或多候选时停止,不选择第一项。
133
+ - `unknown flag` 时读取精确 leaf Help,修正后最多重试一次。
134
+ - 子消息优先使用自己的 `messageId`;只在缺会话 ID 时继承父消息的 `conversationId`。
135
+ - 查到真实消息后需要写操作时,使用 [message-actions.md](message-actions.md) 中的稳定 ID 规则。
@@ -0,0 +1,46 @@
1
+ # 话题与话题圈
2
+
3
+ > 返回入口:[DingTalk Chat Skill](../../SKILL.md)
4
+
5
+ 话题(Thread)是一条主消息及其回复线,可以位于普通群或话题圈中,使用 `openConvThreadId` 标识;承载话题的父群使用 `openConversationId`。命令沿用拆分前 `chat group` / `chat message` 的参数名称。只有需要新建话题圈时才使用 `create-group`,已有群中的话题可直接使用其余 `chat thread` 命令。
6
+
7
+ ## 入口选择
8
+
9
+ | 用户终点 | 推荐入口 |
10
+ |---|---|
11
+ | 已有稳定成员 ID 创建话题圈 | `dws chat thread create-group --name <名称> --users <userId,...>` |
12
+ | 发布新话题 | `dws chat thread send --conversation-id <openConversationId>` |
13
+ | 将普通群中的已有消息升级为 Thread | `dws chat thread promote --conversation-id <openConversationId> --message-id <openMessageId>` |
14
+ | 浏览话题主消息 | `dws chat thread list --conversation-id <openConversationId>` |
15
+ | 向具体话题直接追加回复 | `dws chat thread reply --conversation-id <openConvThreadId>` |
16
+ | 分页读取一个话题的回复 | `dws chat thread list-replies --conversation-id <openConversationId> --topic-id <openConvThreadId>` |
17
+ | 转发整条话题 | `dws chat thread forward --src-msg-id <openMessageId> --src-conversation-id <openConversationId> --src-thread-id <openConvThreadId> --dest-conversation-id <openConversationId>` |
18
+ | 撤回话题中的一条消息 | `dws chat thread recall-message --conversation-id <openConversationId> --message-id <openMessageId>` |
19
+ | 添加或移除 emoji | `dws chat thread add-emoji` / `remove-emoji` |
20
+ | 查询 Thread 消息的表情回复 | `dws chat thread list-emotion-replies --msg-ids <openMessageId,...>` |
21
+ | 添加、移除或更新文字表情 | `dws chat thread add-text-emotion` / `remove-text-emotion` / `update-text-emotion` |
22
+
23
+ ## 发布、回复与读取
24
+
25
+ `thread send` 的 `--conversation-id` 是承载话题的会话 `openConversationId`,用于发布新的顶层话题。
26
+
27
+ `thread promote` 用于把普通群中一条已经存在的消息升级为 Thread 根消息;它同时需要消息所属普通群的 `openConversationId` 和该消息的 `openMessageId`,成功后返回新的 `openConvThreadId`。单聊消息不能升级;若要发送全新的 Thread,继续使用 `thread send`。
28
+
29
+ `thread reply` 沿用原发送命令的 `--conversation-id`,但这里传 Thread 子会话的 `openConvThreadId`。它直接追加回复,不使用消息引用回复,也不创建新的顶层 Thread。
30
+
31
+ 已有父会话 `openConversationId` 和 Thread `openConvThreadId` 且只需读取一页时,使用 `thread list-replies --conversation-id ... --topic-id ...`。需要按主消息自动解析、全量翻页、排序或下载资源时,使用 `+thread-replies` Shortcut。
32
+
33
+ 用户需要逐条查看、列出或概括具体回复内容时,使用 `thread list-replies`;只浏览话题主消息时使用 `thread list`。需要自动读取全部页面、排序或下载资源时,使用 `+thread-replies` Shortcut。
34
+
35
+ 整条 Thread 可转发到普通群;当前不支持从话题圈向另一个话题圈转发整条 Thread。
36
+
37
+ ## 消息操作
38
+
39
+ 撤回、emoji 和文字表情命令沿用对应 `chat message` 命令的主参数。Runtime 会先读取消息并校验其属于 Thread,再执行操作;批量查询会逐条校验 `--msg-ids`。文字表情的 `emotionId`、`backgroundId`、名称和文字使用 `chat message create-text-emotion` 返回的实际值;移除时使用已添加的值,更新时用 `--old-emotion-id` 传当前值、其余表情参数传新值。
40
+
41
+ ## 完成与错误
42
+
43
+ - 创建话题圈返回真实群会话结果,不额外制造 `openTopicId` 字段。
44
+ - 发布和回复沿用异步发送结果;`openTaskId` 是任务 ID,后续消息操作需要从发送状态或消息查询中取得真实消息 ID。
45
+ - Thread 主消息和回复均保留 `openConvThreadId`,父容器继续使用 `openConversationId`。
46
+ - 标识缺失、类型不明或消息不属于 Thread 时停止,不猜 ID。
@@ -0,0 +1,216 @@
1
+ # 钉钉默认表情列表(emoji 回应可用)
2
+
3
+ > 本文件列出钉钉支持的所有用户可见默认表情(showType=1),共 199 个。
4
+ >
5
+ > **来源与维护合同(reviewed snapshot)**:表格来自钉钉默认表情 catalog 的 showType=1
6
+ > 人工复核快照;当前 lower interface 没有可靠的“列出默认 emoji”命令,因此本文件不是从
7
+ > Runtime 或旧 Catalog 反向生成。更新时必须取得新的官方/真实客户端 catalog,核对
8
+ > emotionId、中文 name、en_US、showType 和总数,说明来源与复核日期,再整体替换表格;禁止
9
+ > 根据用户输入或单次 reaction 响应增补。生成策略为 **non-generated reviewed reference**,
10
+ > Schema/Skill 生成器不得机械重写它。最后复核:2026-08-03。
11
+ >
12
+ > 使用规则:
13
+ > - 用户描述的表情命中下表中的 `name` → 使用 `chat message add-emoji --emoji <name>` 贴 emoji 回应
14
+ > - 用户描述的表情未命中下表 → 先 `chat message create-text-emotion` 创建文字表情获取 emotionId,再 `chat message add-text-emotion` 贴文字表情回应
15
+
16
+ | # | emotionId | name | en_US |
17
+ |---|-----------|------|-------|
18
+ | 1 | emotion_001 | 微笑 | Smile |
19
+ | 2 | emotion_099 | 可爱 | Lovely |
20
+ | 3 | emotion_002 | 憨笑 | Wow |
21
+ | 4 | emotion_003 | 色 | Yum |
22
+ | 5 | emotion_004 | 发呆 | Dazed |
23
+ | 6 | emotion_005 | 老板 | Boss |
24
+ | 7 | emotion_036 | 傻笑 | Oops |
25
+ | 8 | emotion_006 | 流泪 | Sob |
26
+ | 9 | emotion_007 | 害羞 | Shy |
27
+ | 10 | emotion_008 | 闭嘴 | Silence |
28
+ | 11 | emotion_009 | 睡 | Sleepy |
29
+ | 12 | emotion_010 | 大哭 | Cry |
30
+ | 13 | emotion_011 | 尴尬 | Awkward |
31
+ | 14 | emotion_080 | 感谢 | Thanks |
32
+ | 15 | emotion_204 | 拒绝 | SayNo |
33
+ | 16 | emotion_078 | 赞 | Like |
34
+ | 17 | emotion_024 | 鼓掌 | Clap |
35
+ | 18 | emotion_105 | 打招呼 | Hi |
36
+ | 19 | emotion_159 | 666 | 666 |
37
+ | 20 | emotion_079 | 抱拳 | Salute |
38
+ | 21 | emotion_025 | 握手 | Shake |
39
+ | 22 | emotion_023 | OK | OK |
40
+ | 23 | emotion_033 | 胜利 | Peace |
41
+ | 24 | emotion_142 | 向左 | Left |
42
+ | 25 | emotion_143 | 向右 | Right |
43
+ | 26 | emotion_144 | 向上 | Up |
44
+ | 27 | emotion_145 | 向下 | Down |
45
+ | 28 | emotion_185 | 来呀 | Come |
46
+ | 29 | emotion_155 | 一点点 | ALittle |
47
+ | 30 | emotion_179 | 捏住 | Pinch |
48
+ | 31 | emotion_140 | 比心 | FingerHeart |
49
+ | 32 | emotion_106 | 送花花 | Flower |
50
+ | 33 | emotion_178 | 加油干 | MakeEffort |
51
+ | 34 | emotion_013 | 调皮 | Tongueout |
52
+ | 35 | emotion_014 | 大笑 | Laugh |
53
+ | 36 | emotion_015 | 惊讶 | Scowl |
54
+ | 37 | emotion_016 | 流汗 | Sweat |
55
+ | 38 | emotion_017 | 奋斗 | Fight |
56
+ | 39 | emotion_018 | 口罩 | Mask |
57
+ | 40 | emotion_019 | 生病 | Sick |
58
+ | 41 | emotion_020 | 吐 | Barf |
59
+ | 42 | emotion_021 | 难过 | Bummed |
60
+ | 43 | emotion_022 | 抓狂 | Crazy |
61
+ | 44 | emotion_026 | 右哼哼 | Humph |
62
+ | 45 | emotion_027 | 太阳 | Sunny |
63
+ | 46 | emotion_028 | 月亮 | Moon |
64
+ | 47 | emotion_029 | 强 | Thumbsup |
65
+ | 48 | emotion_030 | 弱 | Thumbsdown |
66
+ | 49 | emotion_031 | 彩带 | Tada |
67
+ | 50 | emotion_032 | 蛋糕 | Cake |
68
+ | 51 | emotion_034 | 骷髅 | Skull |
69
+ | 52 | emotion_035 | 撇嘴 | Pout |
70
+ | 53 | emotion_037 | 鄙视 | Dislike |
71
+ | 54 | emotion_038 | 嘘 | Shhh |
72
+ | 55 | emotion_040 | 思考 | Hmm… |
73
+ | 56 | emotion_041 | 亲亲 | Kiss |
74
+ | 57 | emotion_042 | 无奈 | Disappointed |
75
+ | 58 | emotion_043 | 感冒 | Pollution |
76
+ | 59 | emotion_044 | 对不起 | Sorry |
77
+ | 60 | emotion_045 | 再见 | Wave |
78
+ | 61 | emotion_046 | 投降 | GiveUp |
79
+ | 62 | emotion_047 | 哼 | Grumpy |
80
+ | 63 | emotion_048 | 欠扁 | FaceSlap |
81
+ | 64 | emotion_049 | 拜托 | Please |
82
+ | 65 | emotion_050 | 可怜 | Aww… |
83
+ | 66 | emotion_051 | 舒服 | Relax |
84
+ | 67 | emotion_052 | 爱意 | Romantic |
85
+ | 68 | emotion_054 | 财迷 | MoneyMoney |
86
+ | 69 | emotion_055 | 迷惑 | Puzzled |
87
+ | 70 | emotion_056 | 委屈 | Worried |
88
+ | 71 | emotion_057 | 灵感 | Idea |
89
+ | 72 | emotion_058 | 天使 | Angel |
90
+ | 73 | emotion_059 | 鬼脸 | SillyFace |
91
+ | 74 | emotion_060 | 凄凉 | Phew |
92
+ | 75 | emotion_061 | 郁闷 | Tired |
93
+ | 76 | emotion_063 | 坏笑 | Trick |
94
+ | 77 | emotion_064 | 算账 | SoMuch |
95
+ | 78 | emotion_206 | PK | PK |
96
+ | 79 | emotion_066 | 忍者 | Sneaky |
97
+ | 80 | emotion_039 | 衰 | Grr |
98
+ | 81 | emotion_067 | 炸弹 | Uh-Oh |
99
+ | 82 | emotion_081 | 笑哭 | LaughAndCry |
100
+ | 83 | emotion_082 | 嘿嘿 | Smirk |
101
+ | 84 | emotion_083 | 捂脸哭 | Facepalm |
102
+ | 85 | emotion_084 | 抠鼻 | NosePick |
103
+ | 86 | emotion_085 | 流鼻血 | BloodyNose |
104
+ | 87 | emotion_090 | 呲牙 | Grin |
105
+ | 88 | emotion_091 | 吃瓜 | EatingMelon |
106
+ | 89 | emotion_092 | 彩虹 | Rainbow |
107
+ | 90 | emotion_098 | 耶 | Yeah |
108
+ | 91 | emotion_012 | 发怒 | Steamed |
109
+ | 92 | emotion_100 | 捂眼睛 | CannotLook |
110
+ | 93 | emotion_101 | 推眼镜 | PushGlasses |
111
+ | 94 | emotion_102 | 暗中观察 | Peep |
112
+ | 95 | emotion_103 | 脑暴 | Brainstorming |
113
+ | 96 | emotion_112 | 冷笑 | Distressed |
114
+ | 97 | emotion_208 | 热 | HotFace |
115
+ | 98 | emotion_113 | 开心 | Happy |
116
+ | 99 | emotion_114 | 惊喜 | Surprised |
117
+ | 100 | emotion_115 | 回头 | LookBack |
118
+ | 101 | emotion_116 | 白眼 | RollEyes |
119
+ | 102 | emotion_117 | 一团乱麻 | Overwhelmed |
120
+ | 103 | emotion_149 | 黑眼圈 | DarkCircle |
121
+ | 104 | emotion_225 | 裂开 | Broken |
122
+ | 105 | emotion_156 | 恭喜 | Congrats |
123
+ | 106 | emotion_160 | 费解 | Confuse |
124
+ | 107 | emotion_167 | 收到 | RogerThat |
125
+ | 108 | emotion_186 | 快来 | ComeOn |
126
+ | 109 | emotion_086 | 敲打 | Hammer |
127
+ | 110 | emotion_176 | 捧脸 | HoldFace |
128
+ | 111 | emotion_194 | Get | Get |
129
+ | 112 | emotion_207 | 客服 | CustomerService |
130
+ | 113 | emotion_210 | AR | AR |
131
+ | 114 | emotion_221 | 小蜜蜂 | Bee |
132
+ | 115 | emotion_211 | 虎虎生威 | MajesticTiger |
133
+ | 116 | emotion_222 | 兔飞猛进 | Rabbit |
134
+ | 117 | emotion_226 | 龙头老大 | Dragon Face |
135
+ | 118 | emotion_236 | 蛇来运转 | Good luck |
136
+ | 119 | emotion_238 | 马上来财 | Wealth is coming |
137
+ | 120 | emotion_093 | 专注 | Concentrate |
138
+ | 121 | emotion_166 | 忙疯了 | CrazyBusy |
139
+ | 122 | emotion_187 | 等一等 | Wait |
140
+ | 123 | emotion_227 | 一脸苦笑 | Wry Smile |
141
+ | 124 | emotion_228 | 王之蔑视 | Unamused |
142
+ | 125 | emotion_229 | 洪荒之力 | Amazing |
143
+ | 126 | emotion_234 | 向左看 | Thinking |
144
+ | 127 | emotion_235 | 向右看 | Pondering |
145
+ | 128 | emotion_230 | YYDS | YYDS |
146
+ | 129 | emotion_231 | 这边请 | ThisWayPlease |
147
+ | 130 | emotion_232 | 弹射下班 | OffDuty |
148
+ | 131 | emotion_233 | 退退退 | Back |
149
+ | 132 | emotion_188 | 在吗 | Hello? |
150
+ | 133 | emotion_189 | 让人头大 | Hard |
151
+ | 134 | emotion_089 | 摊手 | Smugshrug |
152
+ | 135 | emotion_088 | 抱抱 | Hug |
153
+ | 136 | emotion_158 | 举手 | RaiseHand |
154
+ | 137 | emotion_177 | 开车 | Driving |
155
+ | 138 | emotion_191 | 抱大腿 | Follow |
156
+ | 139 | emotion_087 | 跪了 | YouWin |
157
+ | 140 | emotion_162 | 鞠躬 | Bow |
158
+ | 141 | emotion_180 | 选我 | PickMe |
159
+ | 142 | emotion_209 | 元气满满 | FullOfVitality |
160
+ | 143 | emotion_168 | 会议 | Meeting |
161
+ | 144 | emotion_095 | 猫咪 | Kitty |
162
+ | 145 | emotion_094 | 二哈 | Doggy |
163
+ | 146 | emotion_097 | 狗子 | Puppy |
164
+ | 147 | emotion_111 | 三多 | SanDuo |
165
+ | 148 | emotion_153 | 承让 | LetMeWin |
166
+ | 149 | emotion_154 | 撒花 | Celebration |
167
+ | 150 | emotion_070 | 礼物 | Present |
168
+ | 151 | emotion_104 | 生日快乐 | Birthday |
169
+ | 152 | emotion_071 | 爱心 | Love |
170
+ | 153 | emotion_072 | 心碎 | BrokenHeart |
171
+ | 154 | emotion_073 | 嘴唇 | Lips |
172
+ | 155 | emotion_074 | 鲜花 | Rose |
173
+ | 156 | emotion_075 | 残花 | Wilted |
174
+ | 157 | emotion_077 | 干杯 | Cheers |
175
+ | 158 | emotion_151 | 咖啡 | Coffee |
176
+ | 159 | emotion_152 | 奶茶 | MilkTea |
177
+ | 160 | emotion_202 | 茶 | Tea |
178
+ | 161 | emotion_218 | OKR | OKR |
179
+ | 162 | emotion_109 | KPI | KPI |
180
+ | 163 | emotion_108 | 100分 | 100 |
181
+ | 164 | emotion_110 | 对勾 | Check |
182
+ | 165 | emotion_192 | 打叉 | Wrong |
183
+ | 166 | emotion_174 | 气泡 | Bubble |
184
+ | 167 | emotion_157 | 加一 | PlusOne |
185
+ | 168 | emotion_193 | Done | Done |
186
+ | 169 | emotion_146 | 钉子 | Staple |
187
+ | 170 | emotion_076 | 出差 | BusinessTrip |
188
+ | 171 | emotion_181 | 高铁 | HighSpeedTrain |
189
+ | 172 | emotion_184 | 火箭 | Rocket |
190
+ | 173 | emotion_068 | 邮件 | Mail |
191
+ | 174 | emotion_163 | 文档 | Document |
192
+ | 175 | emotion_164 | 演示 | Presentation |
193
+ | 176 | emotion_165 | 表格 | Sheet |
194
+ | 177 | emotion_213 | 废纸篓 | Wastebasket |
195
+ | 178 | emotion_237 | 手机 | MobilePhone |
196
+ | 179 | emotion_203 | 时间 | Time |
197
+ | 180 | emotion_217 | 静音 | mute |
198
+ | 181 | emotion_201 | 公文包 | Briefcase |
199
+ | 182 | emotion_214 | 地球 | Earth |
200
+ | 183 | emotion_215 | 碳减排 | CarbonReduction |
201
+ | 184 | emotion_216 | 回收标志 | RecyclingSymbol |
202
+ | 185 | emotion_205 | 幼苗 | Seedling |
203
+ | 186 | emotion_096 | 红包 | RedPacket |
204
+ | 187 | emotion_150 | 锦鲤 | LuckyDog |
205
+ | 188 | emotion_148 | 福 | Luck |
206
+ | 189 | emotion_198 | 灯笼 | Lantern |
207
+ | 190 | emotion_199 | 爆竹 | Firecrackers |
208
+ | 191 | emotion_197 | 烟花 | Fireworks |
209
+ | 192 | emotion_195 | 恭喜发财 | Prosperity |
210
+ | 193 | emotion_161 | 月饼 | MoonCake |
211
+ | 194 | emotion_173 | 鸡腿 | ChickenLeg |
212
+ | 195 | emotion_169 | 休假 | Vacation |
213
+ | 196 | emotion_175 | 火 | Hot |
214
+ | 197 | emotion_223 | 点赞 | LikeHeartAndTripleSix |
215
+ | 198 | emotion_196 | 平安健康 | Peace&Health |
216
+ | 199 | emotion_200 | 定胜 | Victory |
@@ -0,0 +1,140 @@
1
+ # Chat 低频原子能力索引
2
+
3
+ > 返回入口:[DingTalk Chat Skill](../SKILL.md)
4
+
5
+ 本文件只用于根 Skill 和精确 task reference 都未覆盖的低频底层能力。普通发送、读取、搜索、
6
+ 建群、引用回复和查看置顶会话必须回到根 Skill 的 Golden Route,不在这里重新选路。
7
+
8
+ ## 使用边界
9
+
10
+ 1. 先确认任务确实需要 Shortcut 未发布的底层字段、原始响应或运维控制;
11
+ 2. 读取精确原子 leaf Schema/Help,不加载产品级 Catalog 猜参数;
12
+ 3. 自然目标仍必须唯一解析,禁止选择搜索结果第一项;
13
+ 4. 原子写 leaf 的 confirmation 若与对应 Golden Shortcut 不一致,停止并报告交付漂移;
14
+ 5. 后续 ID 只使用当前 profile 的真实返回,不跨组织复用;
15
+ 6. 完成后保留原始结果、partial failure 和可继续编排的稳定 ID。
16
+
17
+ ## 高频任务返回表
18
+
19
+ | 用户终点 | 返回入口 |
20
+ |---|---|
21
+ | 姓名/群名简单发送、文件、Bot、Webhook、复杂 @ | 根 Skill Golden Route |
22
+ | 消息读取、条件搜索、@我、Favorite/reaction 查询和批量详情 | [message-query](chat/message-query.md) |
23
+ | 编辑、撤回、引用、转发、reaction/Pin/Top/Favorite 写入 | [message-actions](chat/message-actions.md) |
24
+ | 位置、名片、资源下载和特殊媒体 fallback | [message-media](chat/message-media.md) |
25
+ | 群列表、群搜索、成员读取、Bot 列表和邀请链接 | [group-discovery](chat/group-discovery.md) |
26
+ | 建群、改群、成员写入、管理员、禁言、公告和群设置 | [group-admin](chat/group-admin.md) |
27
+ | 跨步骤消息/群组合流程 | [消息任务级流程](01-messaging.md) |
28
+ | Bot 搜索、进群和撤回 | [chat-bot](chat/chat-bot.md) |
29
+ | 会话置顶、状态和分组 | [chat-conversation](chat/chat-conversation.md) |
30
+ | 话题与话题圈的创建、发布、浏览、回复、互动和整条转发 | [thread](chat/thread.md) |
31
+ | 相邻低频意图仍需消歧 | [intent-guide](intent-guide.md) |
32
+
33
+ ## 消息底层能力
34
+
35
+ | 原子命令 | 仅用于 |
36
+ |---|---|
37
+ | `chat message send` | `+messages-send` 尚未发布的位置、名片等真实底层消息类型 |
38
+ | `chat message list` | 需要原始响应或显式手工 continuation;普通浏览使用 `+chat-messages` |
39
+ | `chat message list-all` | 指定时间范围的原始全会话分页接口 |
40
+ | `chat message list-by-sender` | 需要原始按发送者响应;普通组合搜索使用 `+search-msg` |
41
+ | `chat message list-mentions` / `list-focused` | 精确的 @我或特别关注原始列表 |
42
+ | `chat message search` / `search-advanced` | `+search-msg` 未发布的底层过滤字段或原始响应 |
43
+ | `chat message query-send-status` | 使用真实 `openTaskId` 查询用户消息投递任务 |
44
+ | `chat message recall` / `edit` | 撤回或编辑已知消息 |
45
+ | `chat message read-status` | 查询已知消息的已读/未读状态 |
46
+ | `chat message reply` | `+messages-reply` 未发布的底层引用字段,且安全门禁已对齐 |
47
+ | `chat message forward` / `combine-forward` | Shortcut 未覆盖的精确转发字段 |
48
+ | `chat message download-media` | Shortcut 无法消费的已知底层 mediaId/fileId 引用 |
49
+
50
+ 消息对象管理:
51
+
52
+ | 原子命令 | 对象 |
53
+ |---|---|
54
+ | `message set-pin-msg` / `unset-pin-msg` / `list-pin-msg` | 消息 Pin |
55
+ | `message set-top-msg` / `unset-top-msg` | 会话内消息 Top |
56
+ | `message add-favorite` / `remove-favorite` / `list-favorites` | 当前用户 Favorite |
57
+ | `message add-emoji` / `remove-emoji` | 默认 emoji reaction |
58
+ | `message create-text-emotion` / `add-text-emotion` / `update-text-emotion` / `remove-text-emotion` | 文字表情 |
59
+ | `message list-emotion-replies` | 批量 reaction/文字回应 |
60
+ | `emotion list` / `send` / `favorite` | 当前用户个人收藏表情列表、发送和新增 |
61
+
62
+ Favorite、消息 Pin、消息 Top 与会话 Top 是四种对象,不能互换。
63
+ 个人收藏表情与消息 reaction/文字回应不同;发送收藏表情使用 `chat emotion send`,给已有消息贴表情使用 `chat message add-emoji` 或 `chat message add-text-emotion`。
64
+
65
+ ## 群与成员底层能力
66
+
67
+ | 原子命令 | 用途 |
68
+ |---|---|
69
+ | `chat search` / `search-common` | 群管理前解析唯一群、查询共同群 |
70
+ | `chat group get-by-group-id` | 数字群号转 `openConversationId` |
71
+ | `chat group create` | `+chat-create` 尚未发布的真实底层创建字段;显式群主已由 Shortcut 覆盖 |
72
+ | `chat group members` / `members list-by-ids` | 群成员分页和精确详情 |
73
+ | `chat group members add` / `remove` | 添加/移除已知成员 ID |
74
+ | `chat group members add-bot` / `remove-bot` / `group bots` | 机器人进群、移除和列表 |
75
+ | `chat group rename` / `update-icon` | 群名和群头像 |
76
+ | `chat group transfer-owner` / `set-admin` | 群主和管理员 |
77
+ | `chat group upgrade-to-external` | 普通群升级外部群;不可逆 |
78
+ | `chat group invite-url` / `share-invite` | 群邀请链接及分享 |
79
+ | `chat group update-settings` / `user-settings query|set` | 管理员群开关或当前用户群偏好 |
80
+ | `chat group update-nick` / `update-alias` | 当前用户群昵称和群备注 |
81
+ | `chat group set-history` | 新成员历史消息可见范围 |
82
+ | `chat group-mute` / `group-mute-member` | 全员或指定成员禁言 |
83
+ | `chat group notice create|edit|get|list` | 群公告 |
84
+ | `chat group list-my-groups` / `list-all` | 当前用户相关群列表 |
85
+ | `chat group list-join-validations` / `audit-join-validation` | 入群审批 |
86
+ | `chat group-role *` | 群身份定义与成员分配 |
87
+
88
+ 退出、解散群、踢人、转让群主、升级外部群、禁言、管理员和公告写入都属于高影响操作;
89
+ 必须以最终 Runtime gate/Schema 为准确认对象与影响。
90
+
91
+ ## Bot 与 Webhook 底层能力
92
+
93
+ | 原子命令 | 用途 |
94
+ |---|---|
95
+ | `chat bot search` | 搜索当前用户创建的机器人并取得 `robotCode` |
96
+ | `chat bot find` | 搜索可用机器人并取得机器人 `openDingTalkId` |
97
+ | `chat message send-by-bot` | `+messages-send --as bot` 未发布的真实底层字段,包括机器人群聊引用回复的 `--reply` / `--ref-sender` |
98
+ | `chat message recall-by-bot` | 使用 `processQueryKey` 撤回机器人消息 |
99
+ | `chat message send-by-webhook` | `+messages-send --as webhook` 未发布的真实底层字段 |
100
+
101
+ 新发送流程统一使用 `+messages-send`。不得因看见 bot/webhook 原子命令就绕开统一身份能力矩阵。
102
+
103
+ ## 会话状态与分组
104
+
105
+ | 原子命令 | 用途 |
106
+ |---|---|
107
+ | `chat conversation-info` | 已知稳定用户/群 ID 的会话详情 |
108
+ | `chat list-all-conversations` | 全部会话原始分页列表 |
109
+ | `chat list-top-conversations` | 需要原始响应时的置顶会话 fallback;普通查看使用 `+conversation-list-top` |
110
+ | `chat set-top` | 设置/取消整个会话置顶 |
111
+ | `chat mute` / `hide` / `mute-at-all` / `mute-red-envelope` | 会话通知与可见状态 |
112
+ | `chat mark-unread` / `mark-read` | 会话未读或消息已读状态 |
113
+ | `chat clear-red-point` / `clear-all-red-point` | 清除会话红点 |
114
+ | `chat clear-messages` | 清空当前用户视角的会话记录 |
115
+ | `chat category *` | 自定义/智能会话分组 |
116
+
117
+ 消息 Top 使用 `message set-top-msg`,整个会话 Top 使用 `chat set-top`,查看置顶会话使用
118
+ `+conversation-list-top`。
119
+
120
+ ## 稳定 ID 传递
121
+
122
+ | 来源 | 只可用于 |
123
+ |---|---|
124
+ | 唯一群解析 / `+chat-create` | 当前 profile 下的 `openConversationId` |
125
+ | 唯一人员解析 | 当前 profile 下的 `userId` / `openDingTalkId` |
126
+ | `+messages-send` | `openTaskId` 查询投递状态;它不是消息 ID |
127
+ | `+chat-messages` / `+search-msg` / `+messages-mget` | 回复、转发、撤回、资源操作使用的真实消息/会话/thread ID |
128
+ | `chat bot search` | `robotCode`;不能当机器人 `openDingTalkId` |
129
+ | `chat message send-by-bot` | `processQueryKey` 用于机器人撤回;群聊引用回复还需消息查询返回的 `openMessageId` 与原发送者 `openDingTalkId` |
130
+
131
+ 显式稳定 ID 当前不携带可验证的 profile provenance;调用方必须保证来源,不得宣称所有
132
+ 跨 profile 误用都会在本地写入前被拦截。
133
+
134
+ ## 故障处理
135
+
136
+ - `unknown command` / `unknown flag`:读取精确 leaf Help,最多修正一次;
137
+ - confirmation 或参数约束不清:读取精确 leaf Schema,以最终 Runtime gate 为准;
138
+ - 自然目标零命中/多候选:停止并展示候选,不选择第一项;
139
+ - 权限、认证或 profile:按 `dingtalk-shared` 对应 reference 分流;
140
+ - partial result:保留已完成项、失败 ledger、continuation 和真实错误,不换同义原子命令重试。
@@ -0,0 +1,70 @@
1
+ # IM 稳定契约与能力边界
2
+
3
+ 本页只记录需要跨命令复用的 Runtime 契约。下面四个 marker 区块由
4
+ `check-multi-im-skill-chain.sh` 对照 Go typed descriptor 逐字校验;修改能力时先改 Runtime、
5
+ 测试与 descriptor,再同步本页。命令参数仍以精确 leaf Schema 为准。
6
+
7
+ ## 消息结果 `im.message-list.v1`
8
+
9
+ `+chat-messages`、`+search-msg`、`+messages-mget` 及相关消息读取使用同一兼容版本。
10
+ 字段可能为空,但不能换名猜测;全量任务必须结合完整性 ledger 判断。
11
+
12
+ <!-- DWS_MESSAGE_RESULT_CONTRACT_START -->
13
+ - `version`: `im.message-list.v1`
14
+ - `message_fields`: `messageId`, `conversationId`, `threadId`, `sender`, `senderId`, `senderType`, `messageType`, `text`, `createTime`, `updateTime`, `reactions`, `quotedMessage`, `forwarded`, `resourceRefs`
15
+ - `envelope_fields`: `contractVersion`, `messages`, `count`, `resolvedFilters`, `queryRange`, `pagesFetched`, `paginationKnown`, `complete`, `hasMore`, `nextPage`, `stopReason`, `truncated`, `truncatedByPageLimit`, `truncatedByResultLimit`, `failedCount`, `failures`, `partial`, `scope`, `resourceDownloads`
16
+ <!-- DWS_MESSAGE_RESULT_CONTRACT_END -->
17
+
18
+ 当 `complete=false` 时不能称为全量成功。`nextPage` 只能来自真实 lower boundary;
19
+ `failedCount/failures`、`partial`、总 `truncated` 和两个原因字段必须原样保留。
20
+ 当 Runtime 解析并应用自然发送者条件时,`resolvedFilters.senders[]` 保留原查询及选中的
21
+ `userId/openDingTalkId`。消息展示名可以与通讯录姓名不同;只能用稳定 `senderId` 与解析结果关联,
22
+ 不得重新做姓名字符串比较。
23
+
24
+ 当查询声明时间范围或顺序时,`queryRange` 保留规范化的 `startTime`、`endTime`、`order` 与
25
+ `semantics=[start,end)`。排序只覆盖本次实际取得的 `messages`;`complete=false` 时不得把它描述为完整范围的全局排序。
26
+
27
+ ## `+messages-send` 身份矩阵
28
+
29
+ <!-- DWS_IDENTITY_CAPABILITY_CONTRACT_START -->
30
+ | identity | targets | content types | natural targets | mention targets | idempotency keys | batch ledger |
31
+ |---|---|---|---|---|---:|---:|
32
+ | `user` | `group`<br>`direct-user`<br>`direct-open-dingtalk-id` | `text`<br>`markdown`<br>`image-media-id`<br>`file`<br>`audio-as-file`<br>`video-as-file` | `chat-query`<br>`user-query` | `open-dingtalk-id`<br>`all` | `true` | `false` |
33
+ | `bot` | `group`<br>`groups`<br>`direct-users`<br>`direct-open-dingtalk-ids` | `text`<br>`markdown` | — | `user-id`<br>`open-dingtalk-id`<br>`all` | `false` | `true` |
34
+ | `webhook` | `token-owned-group` | `text`<br>`markdown` | — | `user-id`<br>`mobile`<br>`all` | `false` | `false` |
35
+ <!-- DWS_IDENTITY_CAPABILITY_CONTRACT_END -->
36
+
37
+ Bot 多群用 `--groups` 或 `--groups-file`,Runtime 去重后输出
38
+ `im.batch-write.v1` 逐目标 ledger。Bot/Webhook 不支持的内容类型会在写前失败,不能降级为
39
+ 另一身份或偷偷改成纯文本。
40
+
41
+ ## 流式卡片
42
+
43
+ <!-- DWS_CARD_WORKFLOW_CONTRACT_START -->
44
+ - `version`: `im.streaming-card.v1`
45
+ - `targets`: `group`, `direct-user`, `direct-open-dingtalk-id`
46
+ - `content_types`: `streaming-text`
47
+ - `flow_statuses`: `1=processing`, `2=typing`, `3=completed`, `4=executing`, `5=error`
48
+ - `callback_supported`: `false`
49
+ <!-- DWS_CARD_WORKFLOW_CONTRACT_END -->
50
+
51
+ 发送目标与状态范围由 Runtime 校验。当前不是 Lark Card JSON 编译器,也不消费按钮 callback;
52
+ 具体创建和更新流程见 `card/` 下的精确 reference。
53
+
54
+ ## 正向能力与负向边界
55
+
56
+ <!-- DWS_CAPABILITY_BOUNDARY_CONTRACT_START -->
57
+ | capability | supported | current route / boundary |
58
+ |---|---:|---|
59
+ | `thread-write` | `false` | quote reply with +messages-reply; thread reading with +thread-replies |
60
+ | `bot-rich-media` | `false` | bot text/markdown, or current-user file/image send |
61
+ | `card-action-callback` | `false` | streaming text card create/update only |
62
+ | `resource-resume` | `false` | atomic whole-file download with explicit retry |
63
+ | `group-member-full-pagination` | `true` | +chat-members-list or +group-members |
64
+ | `group-owner-selection` | `true` | +chat-create owner flags |
65
+ <!-- DWS_CAPABILITY_BOUNDARY_CONTRACT_END -->
66
+
67
+ `supported=false` 是执行门禁,不是待猜测字段。只有 lower interface、Runtime、测试、Schema 和
68
+ 此页同时升级后,才能改变对外承诺。
69
+
70
+ 话题圈会话仍禁止引用消息回复;向 Thread 追加回复使用 `chat thread reply --conversation-id <openConvThreadId>`。