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,82 @@
1
+ {
2
+ "schemaVersion": "crwu.plugin-bin-manifest.v1",
3
+ "generatedAt": "2026-09-28T01:55:47.678Z",
4
+ "platforms": [
5
+ {
6
+ "platform": "darwin-arm64",
7
+ "tools": [
8
+ {
9
+ "tool": "crwu",
10
+ "file": "crwu",
11
+ "platform": "darwin-arm64",
12
+ "source": "repo-build",
13
+ "sourceVersion": "0.0.1",
14
+ "target": "darwin/arm64",
15
+ "buildCommit": "d90d55efe18bd6ae01bd3102959ed7a62c4381c2",
16
+ "size": 7351330,
17
+ "sha256": "864496c621bcfaddd23a433ce4dcd36b32a882f5281e2ebc223bbdca57c64816"
18
+ },
19
+ {
20
+ "tool": "ossutil",
21
+ "file": "ossutil",
22
+ "platform": "darwin-arm64",
23
+ "source": "https://gosspublic.alicdn.com/ossutil/1.7.19/ossutil-v1.7.19-mac-arm64.zip",
24
+ "sourceVersion": "1.7.19",
25
+ "target": "darwin-arm64",
26
+ "archiveSha256": "10ece4d328c5d2440833adc5f4167168e9b2a4c5d364f673b0c45bcc4fd02ec5",
27
+ "size": 10849218,
28
+ "sha256": "84ca0ada6b040e1814291b78f94159de53a698b5ca5bb007217ba26560b82d4b"
29
+ },
30
+ {
31
+ "tool": "dws",
32
+ "file": "dws",
33
+ "platform": "darwin-arm64",
34
+ "source": "dingtalk-workspace-cli@1.0.61/dws-darwin-arm64.tar.gz",
35
+ "sourceVersion": "1.0.61",
36
+ "target": "darwin-arm64",
37
+ "archiveSha256": "9a122f6322983c45e44db7274788dbb5c62d1762268e45d18e0e72ed40d39978",
38
+ "size": 32432720,
39
+ "sha256": "b41b5d3250fc809dbb80e1471b9a3768e0df3af088e296b457bd381f5e1df3de"
40
+ }
41
+ ]
42
+ },
43
+ {
44
+ "platform": "win32-x64",
45
+ "tools": [
46
+ {
47
+ "tool": "crwu",
48
+ "file": "crwu.exe",
49
+ "platform": "win32-x64",
50
+ "source": "repo-build",
51
+ "sourceVersion": "0.0.1",
52
+ "target": "windows/amd64",
53
+ "buildCommit": "d90d55efe18bd6ae01bd3102959ed7a62c4381c2",
54
+ "size": 8122880,
55
+ "sha256": "ca0d055a2335bf0ddefaf3b448e59a3999ed328e88c868e47873e73b29fdadb3"
56
+ },
57
+ {
58
+ "tool": "ossutil",
59
+ "file": "ossutil.exe",
60
+ "platform": "win32-x64",
61
+ "source": "https://gosspublic.alicdn.com/ossutil/1.7.19/ossutil-v1.7.19-windows-amd64.zip",
62
+ "sourceVersion": "1.7.19",
63
+ "target": "win32-x64",
64
+ "archiveSha256": "8e9176aedc87d230ccd97dc7236b16564f2a068609ed301acdc73dc27faf7e77",
65
+ "size": 11647488,
66
+ "sha256": "a90ff4fdb7d282652a5b50d39a6c74640afd1a505bd925ccc58940373cb8d398"
67
+ },
68
+ {
69
+ "tool": "dws",
70
+ "file": "dws.exe",
71
+ "platform": "win32-x64",
72
+ "source": "dingtalk-workspace-cli@1.0.61/dws-windows-amd64.zip",
73
+ "sourceVersion": "1.0.61",
74
+ "target": "win32-x64",
75
+ "archiveSha256": "defdcf217bddfb74254c6eeaff408f8b23dddb44729cd997b6d85aa6ce7727a0",
76
+ "size": 34613248,
77
+ "sha256": "134111858af3ed250d294c9ed9c4ccfb6c46dd70df3bc5cefe78bd8f06ca90ef"
78
+ }
79
+ ]
80
+ }
81
+ ]
82
+ }
Binary file
@@ -0,0 +1,4 @@
1
+ [diffend] Oversized file quarantined before diffing.
2
+ name: package/bin/win32-x64/dws.exe
3
+ size: 34613248 bytes
4
+ sha256: 134111858af3ed250d294c9ed9c4ccfb6c46dd70df3bc5cefe78bd8f06ca90ef
Binary file
@@ -0,0 +1,8 @@
1
+ {
2
+ "source": "plugins/common/skills",
3
+ "skills": [
4
+ "crwu-dws",
5
+ "crwu-h3yun-login",
6
+ "crwu-h3yun-query"
7
+ ]
8
+ }
@@ -0,0 +1,208 @@
1
+ ---
2
+ name: crwu-dws
3
+ description: >-
4
+ 中瑞世联评估审核知识库(钉钉 wiki)【只读域】技能:M1 查询/导出该知识库(按精确库名解析
5
+ 组织+个人全范围,多命中全导)的完整层级目录,并缓存目录/索引到本地 ~/.crwu/knowledge
6
+ 的 dws-dir-cache 下;M2 按本次审核文件清单(crwu-audit 路由/子技能装配产出)**实时下载**
7
+ 知识文档(**按节点 extension 双通道取数**:adoc→`doc +export` 导出 markdown;可读原生文本
8
+ md/txt→`drive +download` 原样取回;其余类型记 skipped 不伪造正文;逐文件 exportedAt)到与源审核数据文件同级的案例目录 knowledge/ 下
9
+ ——清单同时支持单文件路径与目录路径,文件零缓存:每次审核重新下载,下载时刻即最新;
10
+ M3 缓存兜底查找:按文件名/nodeId/库内层级路径 先查本地目录缓存,未命中自动刷新缓存后再查,
11
+ 仍无则如实报告"没找到";正文一律实时从钉钉取回(永不落缓存,保证最新)。
12
+ 缓存原则:目录可缓存、正文不缓存;缓存库名与 skill 目标库名不一致 → 先清理缓存、在线重下目录结构(防跨库误命中)。对钉钉零写操作。泛化钉钉知识库/doc 管理走
13
+ dingtalk-wiki/dingtalk-doc;审核意见不属本技能。
14
+ 宿主分流:DSH 环境只走工作台注册的结构化 Tool;非 DSH 宿主见文末兼容层。
15
+ metadata:
16
+ cli_version: ">=0.2.14"
17
+ category: crwu
18
+ requires:
19
+ bins:
20
+ - dws
21
+ ---
22
+
23
+ # crwu-dws(钉钉知识库只读域:M1 目录查询+缓存 / M2 按清单实时下载 / M3 路径·缓存兜底查找)
24
+
25
+ ## 0.0 宿主分流(先读这一节)
26
+
27
+ **本技能有两种执行形态,不要混用:**
28
+
29
+ | 宿主 | 执行入口 | 说明 |
30
+ | --- | --- | --- |
31
+ | **DSH(DeepSeek Harness)** | 结构化 Tool `crwu_audit_knowledge_materialize` | **唯一**入口。空间解析、目录遍历、节点读取、文档导出/下载全部在 Tool 内部经 `ctx.shell` 完成;模型只提交 `caseDir`、`paths[]`(可选 `spaceName`)。**禁止**在 shell 里拼命令、**禁止**查找或猜命令路径、**禁止**改 PATH。 |
32
+ | 非 DSH 宿主 | 下列 M1/M2/M3 的 CLI 路径 | 见文末「非 DSH 宿主兼容层(legacy CLI)」,保留给仍以命令行集成的宿主与人工排障。 |
33
+
34
+ DSH 下的三条硬规则:
35
+
36
+ 1. **只调 Tool**:M2(按清单实时下载)等价于一次
37
+ `crwu_audit_knowledge_materialize({ caseDir, paths })` 调用;返回的
38
+ `manifest[]`/`counts`/`failures` 就是本文档要求的记账结果(`status` 取
39
+ `exported|downloaded|skipped|failed`)。
40
+ 2. **capability gap 不降级**:Tool 不可见或返回能力缺失时,如实报告
41
+ 「capability gap:缺少 <工具名>」并停止 —— **不要**退回命令行、**不要**去搜 PATH。
42
+ 3. **兼容层不参与自动审核**:DSH 自动审核链路(`crwu-audit` 技能 + 审核子代理提示词)
43
+ **不引用**兼容层里的任何命令。
44
+
45
+ 下面 §1–§9 描述的是**语义契约**(寻址、通道分流、记账、缓存红线、完整性判定)。
46
+ 它们在两种形态下都成立;只有"用哪条命令实现"这一点在 DSH 下由 Tool 内部承担。
47
+
48
+
49
+ ## 0. 目录结构与加载
50
+ - `SKILL.md`(本文件,入口;三模式流程 + 取数通道分流 + 缓存语义 + 只读白名单)
51
+ - `references/00-目录快照schema.md` —— 快照 schema / 字段语义(含 `extension` 通道判据)/ 渲染规则(M1/M2/M3 共用)
52
+ - `references/01-审核下载与manifest规范.md` —— M2 双通道下载布局 / 文件与目录项语义 / manifest、skipped 与失败记账
53
+ - `references/02-缓存与兜底查找规范.md` —— 缓存身份与名一致性清理 / 目录缓存布局 / node-index(含全路径键与 `extension`)/ M3 路径·查找与刷新协议 / 正文不落缓存红线
54
+ - 改前必读本技能 `references/00`–`references/02`(缓存语义与决策口径);改动只落源仓并提交,运行时部署由用户 skills 管理机制负责(不直接写/ln/cp/rm `~/.skills-manager`、`~/.dsh`、`~/.workbuddy` 等运行时目录)
55
+
56
+ ## 1. 触发与模式消歧
57
+
58
+ | 用户意图(例) | 模式 | 主要产物 |
59
+ | --- | --- | --- |
60
+ | "看/查/列 中瑞世联评估审核知识库 的 目录/层级/树/结构" | **M1 目录查询** | 摘要 + 目录缓存(`~/.crwu/knowledge/dws-dir-cache/<库名>/`:`目录快照.json`/`目录树.md`/`node-index.json`/`.cache-meta.json`) |
61
+ | 审核编排:路由/装配已定文件清单,"下载本次审核需要的知识文档(最新实时版)" | **M2 按清单实时下载**(审核消费主路径) | `<案例目录>/knowledge/` 本次工作集(逐文件 exportedAt)+ `.crwu-manifest.jsonl` + `.crwu-directory.json` |
62
+ | "找/查 文件 XX / 层级路径 …(在不在库里、哪个目录)"、"nodeId … 是什么"、"取 XX 最新内容" | **M3 缓存兜底查找(含路径寻址)** | 命中:元数据+树路径(要正文 → 实时拉取入本次工作目录/即弃);未命中→刷新→仍无:"未找到"报告 |
63
+
64
+ - 目标库名默认「中瑞世联评估审核知识库」;其他库名同流程处理(产物目录以实际库名为准)。
65
+ - **缓存名一致性(清理层,§5.0)**:缓存目录按 `<库名>` 分目录、只对与 skill 目标库名一致的库有效;缓存库名与目标不一致(改名/换库/历史残留)→ **先清理该缓存目录,再在线重下目标库目录结构**;禁止把别的库的缓存当目标库索引(跨库误命中)。
66
+ - **不触发**:泛化钉钉知识库/doc 管理(→ `dingtalk-wiki`/`dingtalk-doc`);审核报告材料(→ `crwu-audit`)。
67
+ - M2 由 crwu-audit 编排者在路由/装配确定本次文件清单后调用(清单 = 命中子技能装配路径表 + 执行契约路径并集);M3 供 skill(audit 族等)定位并现场获取参考文档,也可对用户直接服务。
68
+
69
+ ## 2. 执行契约(dws 最小集)
70
+ - 只通过 `dws` CLI;结构化读取用 `--format json`,按真实返回判断;已知命令直接执行,只有 leaf 参数/flag 不确定时读一次精确 Schema/Help;不加载产品级 Catalog。
71
+ - 不猜命令、flag、字段、ID、名称;后续 ID 必须来自真实返回;解析/读取/导出全程同一 profile(多账号只用 `isOrgCurrent=true` 默认账号或用户明确指定)。
72
+ - 不输出或记录 token 等凭据;认证/权限/profile/未知错误 → 只读 `dingtalk-shared` 对应 reference,不连续猜测;时间戳面向用户时转当前时区。
73
+ - **对钉钉零写(硬白名单)**:wiki 域仅 `space-list/space-search/space-get/node-list/node-search/node-get`;doc 域仅 `+export`;drive 域仅 `+download`(三者均远端只读、产物落本地)。禁止其余一切命令。
74
+ - **取数通道按节点 `extension` 分流(v0.6,硬规则)**:知识库文档并非全是钉钉在线文档——`doc +export` **只支持 `extension=adoc`**,对原生文件必失败。分流口径见 §6.2:
75
+ | `extension` | 通道(Tool 内部实现) | manifest 里的 `channel` | 说明 |
76
+ | --- | --- | --- | --- |
77
+ | `adoc` | 导出为 markdown | `export` | 钉钉在线文档 |
78
+ | 可读原生文本(`md`/`txt`) | 原样取回 | `download` | 原件即正文,**不得**走导出通道 |
79
+ | 其它(`pdf`/`docx`/`xlsx`/`able`/`axls`/二进制 …) | 不取正文 | `skipped` | 记 `skipped` + 真实 `extension`,**不是 failure**、不伪造正文 |
80
+ 禁止"先用 `doc +export` 试、失败再换通道"的试错式取数:通道必须由 `extension` 判定(真实返回,缺席时按 §6.2 第 2 步补查),试错会把必然失败记成 failure 并污染 manifest。
81
+ - 本技能唯一的"写" = 本地:① 目录缓存写入/清理(M1/M3 刷新;库名不一致清理见 §5.0)② 当前审核工作集(M2)③ 临时区(正文实时取用,用后即弃)。**正文永不写入目录缓存**(红线:references/02 §1.2)。
82
+
83
+ ## 3. P1 库解析(三模式共用,只读)
84
+ 1. 确认 profile;M2 额外确认案例目录(§6.1);M3 输入 = 精确文件名 / nodeId / **库内层级路径(文件级或目录前缀)**(用户/调用方给出,不猜近似)。
85
+ 2. 分范围(组织 / 个人)**全量**取空间并精确名匹配;候选浏览不能作为唯一性证据。DSH 下这一步由 `crwu_audit_knowledge_materialize` 内部完成,并把命中的库写进返回的 `spaces[]`。
86
+ 3. 判据:`requestedType` 与请求范围一致;`autoPageComplete=true` 才可用"缺席"证无;命中 0 → 报告范围+相似候选,不编造;命中 ≥1 → 全部进入处理列表,保留真实 `workspaceId/spaceType`(只取服务端真实返回)与范围标注。
87
+
88
+ ## 4. P2 目录遍历(三模式共用,只读,DFS 递归)
89
+ 1. 根层与每一层都用同一种「按库(`workspace`)+ 可选父目录」的完整分页列举,直至无 folder。
90
+ **分页页数上限必须显式放大**(默认只翻 20 页,大库会被静默截断成"遍历完成")。
91
+ DSH 下这一步由 `crwu_audit_knowledge_materialize` 内部完成;遍历不完整时它返回
92
+ `complete=false` 并逐条记 failures,不会把截断报成全量。
93
+ 2. 纪律:每层记录分页证据并写入快照;`hasChildren` 仅提示不作剪枝;folder 按 nodeId 去重(二次展开停+标注);节点字段只取真实返回,未知 type 原样保留;**文档节点必须同时记录 `extension`/`contentType`**(服务端真实返回,缺席记 `null` 不推断)——它们是 §6.2 取数通道分流的唯一判据;体量上限 10,000 节点 / 20 层 → 停止并如实报告部分结果。
94
+ 3. 遍历结果 = 内存树(前序展开序);任何一次**成功完整遍历**都更新目录缓存(P3-M1 原子替换)。
95
+
96
+ ## 5. P3-M1 目录查询 → 写缓存
97
+ ### 5.0 缓存名一致性校验与清理(缓存清理层;M1/M3 用缓存前置,M2 不涉及)
98
+ 目的:目录缓存按 `<库名>` 分目录、只对与 skill 目标库名一致的库有效;历史改名/换库/临时其它库运行会留下**别的库名**的缓存目录,若被当成目标缓存查找 = **跨库误命中**。规则:缓存库名 ≠ 本次目标库名 → **先清理缓存、再在线重下目标库目录结构**,绝不复用。
99
+ - **对账基准 = 本次目标库名**(skill 默认「中瑞世联评估审核知识库」或本次指定库名;M1 与 M3 刷新路径叠加 P1 解析结果,按 name+workspaceId **双匹配**对账;M3 **命中路径不发起在线遍历**(§7.1 约定),以请求库名为准做名级对账——workspaceId 一致性在每次写缓存时已由 P1 校验并固化于 `.cache-meta.json.space`)。
100
+ - **判据**:缓存目录身份 = `.cache-meta.json.space`(`name`+`workspaceId`)。身份与目标(名级或双匹配)**不一致**,或 meta 缺失/损坏且目录名 ≠ 目标库名(身份不可证实)→ 该目录**整体删除**;meta 缺失/损坏但目录名 == 目标库名 → 不删除,按 §7.1 缓存损坏走刷新覆盖重建。
101
+ - **清理动作**:删除不一致缓存目录(正式 4 文件 + 任何残留 `.tmp-*`)。目录缓存 = 可再生中间产物、不含正文 → 删除安全,红线不受影响;只作用于 `dws-dir-cache`,不碰 M2 当前审核 `knowledge/` 工作集或远端。删除失败 → 报告路径问题,该缓存按不可用处理,不静默复用。
102
+ - **重建**:对目标库在线重跑 P1+P2 全量遍历,重新下载远程目录结构并原子写缓存(即本 § 下方 1–4 写缓存流程);M3 侧进入 §7.2 刷新路径后重查。
103
+ - **报告**:清理动作必须可见——"已清理不一致缓存:<目录>(缓存=<库名>,目标=<库名>)";重建后附新 generated_at。
104
+
105
+ 1. 组快照/树/索引:`目录快照.json`(references/00 schema,含 space 元数据、evidence、failures)、`目录树.md`、`node-index.json`(references/02 §3)。
106
+ 2. 落盘:`~/.crwu/knowledge/dws-dir-cache/<库名>/`;**原子替换**——先写 `.tmp-*` 再 rename 覆盖(防半截缓存);目录不存在则创建(父目录知识根只读不可写时报告路径问题,不静默改落点)。
107
+ 3. 更新 `.cache-meta.json`:`{schema:"crwu.kb-dir-cache.meta.v1", space:{name,workspaceId,spaceType}, last_successful_at, source:"dingtalk-live", stats, evidence}`。
108
+ 4. 聊天摘要:命中库数、每库 节点/folder/深度/缓存路径;failures 非空附清单;`complete=false` 不写缓存、不宣称全量(保留旧缓存并在摘要说明"缓存未更新:遍历不完整")。
109
+
110
+ ## 6. P3-M2 按本次清单下载(远端只读 + 本地写)
111
+ ### 6.1 目标目录决议(禁止猜)
112
+ `knowledge/` 的父目录 = 案例目录(= crwu-audit 源审核数据文件所在目录的父级,二者同级):① 编排者/用户显式给出;② 部署约定 `CRWU_CASE_DIR`(若注入的是材料包目录则取其父级);③ 都没有 → 询问用户。
113
+
114
+ ### 6.2 M2 按清单实时下载(审核消费主路径;文件零缓存 R2/R3)
115
+ 输入:本次审核文件清单 = 层级路径列表 `paths[]`,来自 crwu-audit 路由/子技能装配路径表;**同一清单**可混合以下两种条目:
116
+
117
+ - **单文件路径**(不以 `/` 结尾,如 `<目录>/<文档>.md`):精确解析并**只下载该文件**。
118
+ - **目录路径**(以 `/` 结尾,如 `<目录>/`):展开并**递归下载**该目录下全部支持的正文文件。
119
+
120
+ 1. 建 `<案例目录>/knowledge/`;按清单逐条处理(顺序、不并发):
121
+ - **定位**:目录缓存 path 键命中 → 取 nodeId(快路径,不发起在线遍历);未命中/缓存缺失 → 在线 P1+P2 全量遍历并原子更新缓存 → 重查;仍无该路径 → 记 failures("清单项在库内不存在:<路径>"),继续后续项;
122
+ - 单文件清单项 → 只处理精确命中的该节点;命中 folder 或歧义多节点则记 failure,不猜;
123
+ - 目录清单项 → 展开为该目录下**全部**支持的正文文件(folder 递归至无子目录)并逐一实时下载,展开内容如实记账;
124
+ 2. **通道判定 + 实时下载**(逐节点、串行;通道由 `extension` 决定,禁止试错):
125
+ - **取 `extension`**:目录缓存条目带 `extension` → 直接用(快路径);缺失/`null`(旧缓存)→ 对该 nodeId 补一次节点元数据读取(只读、逐节点、结果写入 manifest evidence),仍为 `null` → 记 `skipped`("类型不可判定"),**不猜、不试**;DSH 下这一步由 Tool 内部完成;
126
+ - `extension=adoc` → 走**导出**通道,落地为 `knowledge/<同构层级路径>.md`(manifest 里 `channel=export`、`status=exported`);
127
+ - `extension ∈ {md, txt}`(可读原生文本)→ 走**原样下载**通道,落地为 `knowledge/<同构层级路径>.<extension>`(`channel=download`、`status=downloaded`),**原件即正文,不做格式转换**;
128
+ - 其余类型 → 记 `skipped`(原因含真实 `extension`),**不下载、不伪造正文**;
129
+ - 两条通道的 `--output` 均为**工作目录内相对路径**,因此命令在 `<案例目录>` 下执行;回执 `localPath`+`sizeBytes>0` 即终态;同 nodeId 已存在 → 原位覆盖=更新;异 nodeId 同名 → 追加 `-<nodeId前8>`;
130
+ 3. 记账 `.crwu-manifest.jsonl`(每文件 entry:nodeId/name/**extension**/**channel**/folderPath/localPath/**exportedAt**/evidence;`skipped` 单独成行;下载失败 → failure 行不中断;认证类系统性错误 → 停止,读 dingtalk-shared);
131
+ 4. 收尾写入 `.crwu-directory.json`(目录快照副本);摘要:成功 N / 跳过 S / 失败 F(逐项原因)+ **清单外零下载**声明 + 产物路径。
132
+ > 语义:本次下载物 = 本次审核工作材料(下载时刻即最新);跨审核/重跑一律重新下载(R2);**禁止**写入 `dws-dir-cache`(R4)。
133
+
134
+ ## 7. P3-M3 缓存兜底查找(目录可缓存 / 正文实时 / 未命中刷新;含路径寻址)
135
+ 输入:精确文件名 或 nodeId 或 **库内层级路径(文件级或目录前缀)**。
136
+ 0. **缓存清理层前置(§5.0)**:先用**本次请求的库名**对 `dws-dir-cache` 下缓存目录做名级对账——库名不一致的缓存目录先清理删除(动作须在结论中注明);目标库无一致缓存(含刚被清理)→ 跳过 1,直接走 2 刷新路径(在线重下目录结构后重查)。
137
+ 1. **查缓存**:读 `<缓存>/node-index.json`(nodeId → 条目;名称 → 条目列表):
138
+ - 命中(nodeId/名称/路径任一键)→ 报告:条目元数据(type/parentFolderId/所在库)+ **树路径上下文**(顶层 folder 链),结论标注"缓存命中(generated_at=<…>)";不发起在线遍历;
139
+ - 名称/路径多命中(同名不同路径等)→ 全部列出路径上下文,请调用方/用户消歧(不猜);
140
+ - **路径寻址**:全路径(`目录/…/文档`)精确命中 → 同上;目录前缀(`目录/…/`)→ 该目录下条目列表(限定层级展示);未命中 → 进入刷新(node-index 全路径键见 references/02 §3);
141
+ - 缓存缺失/损坏(JSON 解析失败等)→ 视为未命中,进入刷新。
142
+ 2. **未命中 → 刷新缓存**:重跑 P1+P2 在线全量遍历 → 原子更新缓存(§5 同款)→ **重查索引**。
143
+ 3. **刷新后仍未命中 → 报告**:"未找到:<名称/nodeId>(目录已刷新至 <时间> 后仍不存在)"+ 名称相近候选(≤5 条,来自新快照),**不编造、不猜测近似即命中**。
144
+ 4. **命中且调用方要正文** → 现场实时拉取到本次审核工作目录或系统临时目录:按 §6.2 第 2 步同一 `extension` 分流规则取数(`adoc` → `doc +export`;`md`/`txt` → `drive +download`;其余 → 如实报告"该类型不提供正文");登记 manifest 后仅供本次审核使用;**正文任何情况下不写入目录缓存,也不得跨审核复用**。
145
+ 5. **刷新失败降级**:在线遍历失败(认证/网络/分页未完成)→ 旧缓存可用:用旧缓存作答并显式标注"**缓存可能过期(generated_at=<…>),刷新失败:<原因>**";无旧缓存 → 报告"无法确认(缓存缺失且在线刷新失败)"。
146
+
147
+ ## 8. P4 一致性自查
148
+ - **写缓存前先校验快照 schema(硬门禁,不通过不得写、不得宣称全量)**:`目录快照.json` 的
149
+ `schema` 必须逐字等于 `crwu.kb-catalog.snapshot.v1`;`generated_at` / `profile` / `mode` /
150
+ `space` / `stats.complete` / `nodes` / `failures` 齐备;`nodes` 为**嵌套 `children`**
151
+ (扁平自带 `path` 的是 `node-index.json` 形态,写错会让映射检查器直接拒收整份缓存)。
152
+ 三个 schema 名与时间字段名不得混用(见 references/00 §3)。
153
+ - M1/M3 刷新:快照节点计数 == 遍历完成计数且 `failures=[]` 才写缓存/宣称全量;缓存 meta 的 `last_successful_at` 与快照 `generated_at` 一致。
154
+ - M2:清单项 = 成功 + 跳过 + 失败(目录条目按展开计数),失败逐项原因;**`skipped` 不得计入 failure**(非可读类型是正常结论,不是错误);每个 entry 的 `channel` 必须与 `extension` 分流口径一致(`adoc`→`export`,`md`/`txt`→`download`);manifest 幂等可复跑;**清单外文件零下载**(manifest 只含清单命中项及其目录展开项)。
155
+ - M3 报告:必须带结论依据标签(缓存命中/刷新后命中/刷新后仍无/降级可能过期/无法确认),禁止无来源结论。
156
+ - 缓存清理层:所用/所写缓存身份与本次目标库名一致;被清理的目录(如有)出现在摘要/结论的清理报告。
157
+
158
+ ## 9. 边界与纪律
159
+ - 结果只读自钉钉、不推断;目录/正文是**企业数据**:产物按约定落盘,不外传。
160
+ - **红线(用户口径 R1–R5)**:目录元数据可缓存、**知识正文不缓存**;知识正文唯一来源是钉钉知识库,每次审核都按本次清单现场下载。本次下载物只属本次审核,跨审核一律重新下载(R2);只下载单文件命中项或目录展开项,**清单外零下载**(R3)。
161
+ - 目录缓存只用于查找加速,不能提供正文或成为正文兜底。差异由人工/复核判定。
162
+ - 变更登记纪律:只改源仓并提交 + 源仓变更纪要;运行时部署由用户 skills 管理机制负责。
163
+
164
+ ## 10. 错误最短路径
165
+ 1. 空响应/缺失集合/分页未完成:停止后续并返回证据;不拿 `+space-search` 首页候选断言。
166
+ 2. 认证/权限/profile 错:读 `dingtalk-shared` 对应 reference;不重试猜测命令。
167
+ 3. M2 单节点下载失败:记 failure 继续;系统性(连续 >10 或认证类)→ 停止报告已得部分。**`extension` 非 adoc/可读文本时不得记为 failure**——那是 `skipped`;把类型不支持记成失败会掩盖真实故障。
168
+ 4. M3 缓存损坏/缺失:按 §7.1 视为未命中自动刷新;刷新也失败 → §7.5 降级,不假装权威。缓存 meta 缺失/损坏(身份不可证实)且目录名 ≠ 目标库名 → 按 §5.0 视为不一致,清理后在线重下。
169
+ 5. 缓存目录不可写:报告路径问题请用户处理;不静默改落点、不把正文改存他处以绕过红线。
170
+ 6. 未知 flag/命令:只查当前 leaf Help/一次 shortcut 清单;不跨产品试探。
171
+
172
+ <!-- crwu-cli-guard:legacy-compat-start -->
173
+ ## 非 DSH 宿主兼容层(legacy CLI)
174
+
175
+ 以下命令形态**只**适用于非 DSH 宿主与人工排障。DSH 环境下这些步骤全部由
176
+ `crwu_audit_knowledge_materialize` 内部完成,**不要在 DSH 里执行它们**。
177
+
178
+ - M1/P1 库解析(分范围全量取空间,精确名匹配):
179
+
180
+ ```bash
181
+ dws wiki +space-list --type orgWikiSpace --limit 50 --page-all --format json
182
+ dws wiki +space-list --type myWikiSpace --limit 50 --page-all --format json
183
+ ```
184
+
185
+ - P2 目录遍历(`--workspace` 必填;子层追加 `--folder`;页数上限显式放大):
186
+
187
+ ```bash
188
+ dws wiki +node-list --workspace <ID> --page-all --page-limit 200 --format json
189
+ dws wiki +node-list --workspace <ID> --folder <folderId> --page-all --page-limit 200 --format json
190
+ ```
191
+
192
+ - M2/M3 取节点元数据(判 `extension`):
193
+
194
+ ```bash
195
+ dws wiki +node-get --node <nodeId> --format json
196
+ ```
197
+
198
+ - M2/M3 双通道取正文:
199
+
200
+ ```bash
201
+ dws doc +export --node <nodeId> --export-format markdown --output <相对路径>
202
+ dws drive +download --node <nodeId> --output <相对路径>
203
+ ```
204
+
205
+ - 缓存兜底查找(M3):先用 `dws wiki +node-search` 在库内按关键词找候选,
206
+ 再按同一 `by_path` 口径精确定位;未命中就刷新缓存后重查,仍无则如实报告"未找到"。
207
+
208
+ <!-- crwu-cli-guard:legacy-compat-end -->
@@ -0,0 +1,113 @@
1
+ # crwu-dws references/00 —— 目录快照 schema / 渲染规则(M1/M2/M3 共用)
2
+
3
+ > 版本 v3(2026-09-15,随 crwu-dws v0.6:文档节点新增 `extension`/`contentType`,作为 M2/M3 取数通道分流的唯一判据)。
4
+ > 版本 v2(2026-09-08,随 crwu-dws v0.3:落点迁移到目录缓存层 + M3 支持)。
5
+ > 本文档随技能安装(源仓与运行时双份);
6
+ > 改前先读本技能 `SKILL.md` §5–§6(缓存与实时性模型)与 `references/02`。
7
+
8
+ ## 1. 用途
9
+
10
+ "知识库层级目录"的机器可读形态,三模式共用:
11
+
12
+ - M1:写目录缓存(`~/.crwu/knowledge/dws-dir-cache/<库名>/目录快照.json`)并展示。
13
+ - M2:收尾写入 `knowledge/.crwu-directory.json`(本次审核目录证据,同 schema)。
14
+ - M3:node-index 的数据源(快照更新后重建索引,见 references/02)。
15
+
16
+ **内容红线**:本 schema 只承载目录元数据;任何正文内容(文档正文/单元格/附件内容)不属于本文件及本缓存层(红线:references/02 §1.2 正文不缓存)。
17
+
18
+ ## 2. 快照 JSON schema(`crwu.kb-catalog.snapshot.v1`)
19
+
20
+ ```jsonc
21
+ {
22
+ "schema": "crwu.kb-catalog.snapshot.v1",
23
+ "generated_at": "2026-09-08T10:30:00+08:00", // ISO8601 带时区(=本次在线遍历完成时刻)
24
+ "profile": { "id": "…", "isOrgCurrent": true }, // 执行 profile 证据(真实返回)
25
+ "mode": "M1|M2", // 产出方
26
+ "space": {
27
+ "name": "中瑞世联评估审核知识库",
28
+ "workspaceId": "…", // 来自真实返回
29
+ "spaceType": "orgWikiSpace|myWikiSpace", // 只取服务端真实返回;缺席=null,不按请求值伪造
30
+ "scope_evidence": {
31
+ "requestedType": "orgWikiSpace", // 顶层请求范围
32
+ "autoPageComplete": true,
33
+ "pagesFetched": 1
34
+ }
35
+ },
36
+ "stats": { "total_nodes": 0, "folders": 0, "docs": 0, "max_depth": 0, "complete": true },
37
+ "nodes": [ // 前序展开序(根层在前,children 紧跟父节点)
38
+ {
39
+ "nodeId": "…", // 服务端 ID,名称永不替代 ID
40
+ "name": "…", // 原文
41
+ "type": "folder|file|未知原值", // 服务端 nodeType;文档一律为 file,不承载格式信息
42
+ "extension": "adoc", // ★ 取数通道判据(服务端真实返回;文档节点必记,缺席=null)
43
+ "contentType": "ALIDOC", // 辅助判据(adoc=ALIDOC,原生文件=OTHER);缺席=null
44
+ "parentFolderId": null, // 根层=null
45
+ "depth": 0, // 根层=0
46
+ "children": [ … ], // 嵌套子节点(同构)
47
+ "evidence": {
48
+ "hasChildren": null, // 服务端/规范化别名;缺席=null,不作剪枝依据
49
+ "page": { "autoPageComplete": true, "pagesFetched": 1, "itemsInPage": 20 }
50
+ }
51
+ }
52
+ ],
53
+ "failures": [] // 空=完整;否则逐条 {nodeId?, step, error}
54
+ }
55
+ ```
56
+
57
+ ## 3. 字段语义(不变量)
58
+
59
+ - **`schema` 字面与必填键逐字固定,不得混名、不得缺键**(v0.6 起列为硬门禁):
60
+ `目录快照.json` 的 `schema` 必须**逐字**写 `crwu.kb-catalog.snapshot.v1`;必填
61
+ `generated_at` / `profile` / `mode` / `space` / `stats` / `nodes` / `failures`,其中
62
+ `stats.complete` **必填**(缺席即无法判完整性)。
63
+ 三个 schema 名字**不得互相混用**:快照 `crwu.kb-catalog.snapshot.v1`、
64
+ 节点索引 `crwu.kb-dir-cache.nodeindex.v1`(`node-index.json`)、
65
+ 缓存元数据 `crwu.kb-dir-cache.meta.v1`(`.cache-meta.json`)。
66
+ 时间字段同理:快照用 `generated_at`,`.cache-meta.json` 用 `last_successful_at`,
67
+ **不得写成 `fetched_at`**(该名不是本域任何 schema 的字段)。
68
+ > 真实失效:实时缓存把 `node-index.json` 的**扁平节点形态**(节点自带 `path`)写进了
69
+ > `目录快照.json`,`schema` 字面写成 `crwu.kb-dir-cache.snapshot.v1`(由 meta 名与快照名
70
+ > 混合而成,本仓历史中从未存在),时间字段写 `fetched_at` 且缺 `profile`/`mode`/`stats.complete`;
71
+ > 后果是映射检查器直接拒收(`unsupported catalog schema`),整条映射校验链不可用。
72
+ - **`nodes` 必须是嵌套 `children`**(前序展开序):父节点内嵌 `children`,根层 `parentFolderId=null`。
73
+ 扁平节点数组(每个节点自带完整 `path`)属 `node-index.json` 的形态,**禁止**写入 `目录快照.json`。
74
+ - **名称不替代 ID**:所有在线操作只认 `nodeId`;`name` 仅展示与本地文件命名(M2)。
75
+ - **type 只表示节点形态**:服务端 `nodeType` 取值 `folder|file`;文档一律 `file`,**不承载格式信息**,禁止用它推断是 adoc 还是原生文件。
76
+ - **`extension` 是取数通道的唯一判据(v0.6 起强制记录)**:文档节点必须写服务端真实返回的 `extension`(`adoc`/`md`/`pdf`/`docx`/`xlsx`/`exe`…)与 `contentType`(`ALIDOC`/`OTHER`…);缺失记 `null`,**不推断、不按名称后缀猜测**(节点名不带后缀,`.md` 只是导出后的本地文件名)。M2/M3 按它分流(SKILL.md §2/§6.2):`adoc` → `doc +export`;`md`/`txt` → `drive +download`;其余 → `skipped`。
77
+ - **白名单外原样保留**:`extension`/`contentType` 未识别时原样记原值字符串,禁止归类或猜测。
78
+ - **parentFolderId**:根层 null;服务端未提供 → null 且 evidence 注明,不推断补值。
79
+ - **hasChildren**:只提示,**不作剪枝依据**;与实际 `+node-list` 展开不一致时如实记录,不当作失败也不反向剪枝。
80
+ - **complete 判定**:仅当遍历全部完成、`failures=[]`、每页 `autoPageComplete=true` → `stats.complete=true`;否则 false。
81
+ - **快照绝不携带正文**:任何字段不得内嵌/外链"取到的正文内容"(临时文件路径若被记录,仅作一次性传递用,随临时区清理)。
82
+
83
+ ## 4. 渲染规则(`目录树.md`)
84
+
85
+ ```
86
+ # <库名> 目录树
87
+ > workspaceId: <…> | spaceType: <…> | 扫取: <ISO8601> | profile: <…>
88
+ > 节点 <total>(folder <folders> / 文档 <docs>)/ 深度 <max> | complete: true|false
89
+
90
+ <顶层folder或文档>/
91
+ ├─ <子folder>/ [F]
92
+ │ └─ <文档名> adoc
93
+ └─ <根层文档名> axls
94
+ ```
95
+
96
+ - folder 名后接 `/` 且行尾标 `[F]`;文档行尾标 **`extension`**(不是 `type`——`type` 恒为 `file`,标它等于没标);`extension` 为 `null` 时输出 `ext:未提供`,未识别时原样输出 + 注"类型未识别"。
97
+ - 树内条目不得超出快照 nodes;快照是事实源、树是视图;库身份标注(workspaceId/spaceType/时间/统计/complete)不允许缺失(多库并存不混库)。
98
+
99
+ ## 5. 摘要口径(聊天展示)
100
+
101
+ - M1:`命中 <n> 库` → 每库一行:`<库名>(<spaceType>)workspaceId=<…>:节点 <total>/folder <folders>/深度 <max>,缓存 <绝对路径>(generated_at=<…>)`;failures 非空附"部分失败"清单;`complete=false` 显式"目录未完整(缓存未更新)"。
102
+ - M2:`knowledge/ 更新:成功 N / 跳过 S / 失败 F`,失败逐项一行;附本次清单类型(单文件/目录)与"清单外零下载"声明,并提示跨审核必须重新下载。
103
+ - M3:见 references/02 §6 报告口径。
104
+ - 全部产物给出绝对路径。
105
+
106
+ ## 6. 命名与落盘(M1 = 目录缓存层,v0.3 起)
107
+
108
+ - 缓存根:`~/.crwu/knowledge/dws-dir-cache/`;此层只存目录元数据,不是知识正文来源。
109
+ - 每库子目录:`dws-dir-cache/<精确库名>/`;库名清洗非法字符 `\/:*?"<>|` 与首尾空白(空 → workspaceId);同名不同 spaceType 多库 → 子目录追加 `-<spaceType>`。
110
+ - 文件:`目录快照.json`、`目录树.md`、`node-index.json`(references/02 §3 schema)、`.cache-meta.json`(references/02 §3 schema;身份语义见 §2)。
111
+ - 缓存身份与清理:缓存目录身份 = `.cache-meta.json.space`(name+workspaceId,真实返回);身份与目标库名不一致 → 目录被清理层整体删除后在线重下(references/02 §2 / SKILL.md §5.0)。
112
+ - **原子替换**:先写 `.tmp-*` 再 rename 覆盖;写失败不得留下半截"正式"文件(宁可保留旧缓存并在 meta 说明)。
113
+ - 旧落点 `~/.crwu/kb-catalog/`(v0.1/0.2):不再写入;既有文件保留待人工清理,本技能不迁移不删除。
@@ -0,0 +1,115 @@
1
+ # crwu-dws references/01 —— M2 审核下载与 manifest 规范
2
+
3
+ > 版本 v4(2026-09-15,随 crwu-dws v0.6:按节点 `extension` 分流的**双取数通道**——`adoc` 走 `doc +export`,可读原生文本 `md`/`txt` 走 `drive +download`,其余记 `skipped`)。
4
+ > 版本 v3(2026-09-08):钉钉是知识正文唯一来源;M2 仅按本次审核清单下载,支持单文件与目录条目。
5
+ > 本文档随技能安装;改前先读 references/00 与 references/02。
6
+
7
+ ## 1. 目标布局
8
+
9
+ ```
10
+ <案例目录>/
11
+ ├── <源审核数据文件…>
12
+ └── knowledge/ # 本次审核工作集,跨审核不得复用
13
+ ├── <顶层folder>/<子folder>/<文档名>.md # extension=adoc(导出)
14
+ ├── <顶层folder>/<子folder>/<文档名>.md # extension=md(原件即正文,原样下载)
15
+ ├── <顶层folder>/<子folder>/<文档名>.txt # extension=txt(同上)
16
+ ├── <文档名>-<nodeId前8>.md # 仅不同 nodeId 同名冲突时
17
+ ├── .crwu-manifest.jsonl
18
+ └── .crwu-directory.json
19
+ ```
20
+
21
+ - 点文件是本次下载的追溯元数据,不映射远端节点;读取正文时跳过。
22
+ - folder 映射本地目录;**文档按 `extension` 分流**(SKILL.md §2/§6.2):
23
+ | `extension` | 通道 | 落地 |
24
+ | --- | --- | --- |
25
+ | `adoc` | 导出通道(`channel=export`) | `<节点名>.md` |
26
+ | `md` / `txt` | 原样下载通道(`channel=download`) | `<节点名>.<extension>`(**原件即正文,不转换**) |
27
+ | 其余 | 不取正文 | 记 `skipped` + 真实 `extension`,不伪造正文 |
28
+ - `knowledge/` 不是知识库副本。它只包含本次清单命中的正文,跨审核或重跑必须重新从钉钉下载。
29
+ - `dws-dir-cache/` 只存目录元数据,禁止接收 M2 正文。
30
+
31
+ ## 2. 清单项语义
32
+
33
+ 同一清单允许混合:
34
+
35
+ 1. **单文件路径**:不以 `/` 结尾。精确解析到一个节点后只下载该文件;命中目录、零命中或多命中均记 failure。
36
+ 2. **目录路径**:以 `/` 结尾。精确解析目录后递归下载该目录下全部支持的正文文件。
37
+
38
+ 清单按声明顺序展开并去重;同一 nodeId 只下载一次。清单外零下载。无法解析或下载失败时,记录原始清单项、节点信息(如有)和原因,不得改读本地正文或推测内容。
39
+
40
+ **展开范围(v0.6 澄清)**:"全部支持的正文文件" = `extension` 为 `adoc`/`md`/`txt` 的节点。目录内其余类型(`pdf`/`docx`/`xlsx`/`exe`…)**必须出现在结果里**,但以 `skipped` + 真实 `extension` 记录——**不得静默丢弃**(静默丢弃会让"清单已覆盖"成为假象),也**不得记为 failure**。
41
+
42
+ **通道判定**:每条展开项先取 `extension`(缓存命中则直接读;缓存缺 `extension` → 对该 nodeId 补一次 `wiki +node-get`,只读,结果入 evidence),再按 §1 表格选通道。**禁止"先 `doc +export` 试一次、失败再换 `drive +download`"**——原生文件必然失败,试错会制造假 failure 并把通道缺陷掩盖成偶发错误。
43
+
44
+ ## 3. 命名与冲突
45
+
46
+ 1. 本地目录/文件名去除 `\\/:*?"<>|` 与首尾空白;清洗后为空时使用 nodeId 前 8 位。
47
+ 2. folder 同名冲突时后建者追加 `-<nodeId前8>`。
48
+ 3. 文档规范名 = `<节点名>.<落地后缀>`:`adoc` → `.md`(导出格式);`md`/`txt` → 保持原 `extension`。不同 nodeId 同名时追加 `-<nodeId前8>`。
49
+ 4. 同一审核重跑可依据 manifest 保持 `nodeId → localPath` 稳定,但正文必须重新取回并更新 `exportedAt`(`adoc` 重新导出、原生文件重新下载)。
50
+
51
+ ## 4. manifest JSONL
52
+
53
+ 首行 header,其后按清单展开顺序记录 entry、skipped 或 failure:
54
+
55
+ ```jsonc
56
+ { "schema": "crwu.audit-download.manifest.v1", "mode": "M2",
57
+ "space": { "name": "…", "workspaceId": "…", "spaceType": "…" },
58
+ "case_dir": "<案例目录绝对路径>", "started_at": "ISO8601" }
59
+
60
+ { "kind": "entry", "requestPath": "06-规则库/某文件",
61
+ "requestKind": "file", "nodeId": "…", "name": "…",
62
+ "extension": "adoc", "channel": "export",
63
+ "folderPath": "knowledge/06-规则库",
64
+ "localPath": "knowledge/06-规则库/某文件.md",
65
+ "exportedAt": "ISO8601",
66
+ "evidence": { "export": { "localPath": "…", "sizeBytes": 1234 } } }
67
+
68
+ { "kind": "entry", "requestPath": "03-评估方法/01-市场法",
69
+ "requestKind": "directory", "nodeId": "…", "name": "01-定义与适用前提",
70
+ "extension": "md", "channel": "download",
71
+ "folderPath": "knowledge/03-评估方法/01-市场法",
72
+ "localPath": "knowledge/03-评估方法/01-市场法/01-定义与适用前提.md",
73
+ "exportedAt": "ISO8601",
74
+ "evidence": { "download": { "savedPath": "…", "sizeBytes": 3631 },
75
+ "extensionSource": "catalog|node-get" } }
76
+
77
+ { "kind": "skipped", "requestPath": "相关工具/windows/crwu",
78
+ "requestKind": "file", "nodeId": "…", "name": "crwu",
79
+ "extension": "exe", "reason": "extension 非可读正文类型(adoc/md/txt)" }
80
+
81
+ { "kind": "failure", "requestPath": "06-规则库/不存在",
82
+ "requestKind": "file", "nodeId": null, "error": "清单项在库内不存在" }
83
+ ```
84
+
85
+ - 目录条目展开出的 entry 保留原始 `requestPath`,并使用 `requestKind:"directory"`。
86
+ - `localPath` 相对案例目录;绝对路径只在 header 的 `case_dir` 出现。
87
+ - **`extension` 与 `channel` 必填**:`channel ∈ {export, download}`,且必须与 `extension` 分流口径一致(`adoc`→`export`;`md`/`txt`→`download`)。`extension` 为 `null`(补查后仍不可判定)→ 记 `skipped`,不得进 entry。
88
+ - `extension` 来自补查(缓存缺字段)时,`evidence.extensionSource` 记 `node-get`;来自目录缓存时记 `catalog`——这是"通道判定有据"的留痕。
89
+ - **`requestPath` 必须逐字等于库内节点名**(`by_path` 键 = 原样精确名,不折叠大小写/全半角):
90
+ 目录项以 `/` 结尾;**单文件项不要加 `.md` 后缀**——`.md` 只是导出后的本地文件名
91
+ (§3.3「文档规范名 = `<节点名>.<落地后缀>`」),写进 `requestPath` 会与 `by_path` 键不匹配而记 failure。
92
+ 旧库(节点名自带 `.md`)留下的带后缀写法属历史残留,迁移到新库后必须去掉后缀。
93
+ - 取数回执 `sizeBytes>0` 才算成功;证据按真实返回记录(`doc +export` 用 `localPath`/`sizeBytes`,`drive +download` 用 `savedPath`/`sizeBytes`)。
94
+
95
+ ## 5. 收敛与摘要
96
+
97
+ - 原始清单项都必须得到"成功展开"或 failure;目录条目的展开数量单独记录。
98
+ - 展开后的唯一 nodeId 集合必须等于 **entry + skipped + failure** 的节点集合。
99
+ - manifest 不得出现清单命中项及其目录展开项之外的正文 entry。
100
+ - **`skipped` 是正常结论、不是失败**:摘要与 `failures[]` 分开统计,禁止把类型不支持并入 failure(会把真实故障淹掉)。
101
+ - 摘要报告成功、跳过、失败数量,逐项列出 failure,并明确"清单外零下载;本工作集只用于本次审核,跨审核重新下载"。
102
+
103
+ ## 6. 边界
104
+
105
+ - 知识正文唯一来源是钉钉知识库。
106
+ - M2 产物不得复制到任何目录缓存或作为后续审核的正文来源。
107
+ - 远端节点在审核过程中被删除或改变时,以本次实际导出结果和 `exportedAt` 为准;不使用历史正文补齐。
108
+
109
+ <!-- crwu-cli-guard:legacy-compat-start -->
110
+ > **非 DSH 宿主兼容层(legacy CLI)**:上表的两个通道在非 DSH 宿主分别对应
111
+ > `dws doc +export --export-format markdown`(adoc 导出)与
112
+ > `dws drive +download`(原生文本原样取回)。DSH 环境下两者都由
113
+ > `crwu_audit_knowledge_materialize` 内部完成,技能正文不再给出命令。
114
+
115
+ <!-- crwu-cli-guard:legacy-compat-end -->