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,130 @@
1
+ # form — 表单管理
2
+
3
+ ## 命令一览
4
+
5
+ | 命令 | 用途 |
6
+ |------|------|
7
+ | `form list` | 列出数据表下所有表单视图 |
8
+ | `form get` | 按 viewId 取单个表单详情(list_form_views + viewIds 过滤) |
9
+ | `form create` | 创建表单视图(等价于 `view create --view-type FormDesigner`) |
10
+ | `form update` | 更新表单标题或描述 |
11
+ | `form delete` | 删除表单视图(不可逆) |
12
+ | `form field list` | 列出表单可见字段 |
13
+ | `form field update` | 更新字段必填/描述 |
14
+ | `form field hide` | 在表单中隐藏/显示字段(不影响底层数据表字段) |
15
+ | `form share get` | 获取分享配置 |
16
+ | `form share update` | 开启/关闭分享 |
17
+ | `form questions create` | 添加题目(等价于 `field create`,命令位置上的别名) |
18
+ | `form questions delete` | 删除题目(等价于 `field delete`,命令位置上的别名) |
19
+
20
+ ## 建议操作顺序
21
+
22
+ ```bash
23
+ # 1) 列出数据表下的表单视图
24
+ dws aitable form list --base-id BASE_ID --table-id TABLE_ID --format json
25
+
26
+ # 2) 查看单个表单详情
27
+ dws aitable form get --base-id BASE_ID --table-id TABLE_ID --view-id VIEW_ID --format json
28
+
29
+ # 3) 查看表单字段配置
30
+ dws aitable form field list --base-id BASE_ID --table-id TABLE_ID --view-id VIEW_ID --format json
31
+
32
+ # 4) 查看分享配置
33
+ dws aitable form share get --base-id BASE_ID --table-id TABLE_ID --view-id VIEW_ID --format json
34
+ ```
35
+
36
+ 开启并取得可发送链接的最短闭环使用 canonical shortcut:
37
+
38
+ ```bash
39
+ dws aitable form create --base-id BASE_ID --table-id TABLE_ID --name "表单名" --format json
40
+ dws aitable +form-share-update --base-id BASE_ID --table-id TABLE_ID --view-id VIEW_ID --enabled true --format json
41
+ dws aitable +form-share-get --base-id BASE_ID --table-id TABLE_ID --view-id VIEW_ID --format json
42
+ ```
43
+
44
+ 从最后一次返回直接读取 `data.shareFormUuid`,分享地址为 `https://alidocs.dingtalk.com/i/form/{shareFormUuid}`。字段已存在时不要再调用 Help、Catalog、`form get`,也不要换 `--verbose`、`raw`、`pretty` 重复请求。用户还要求发送时,把该完整 URL 交给 Chat 的发送命令并检查真实发送回执。
45
+
46
+ ## 要点
47
+
48
+ - **创建表单**有两种等价方式:
49
+ - `form create --name "表单名"`(推荐,语义清晰)
50
+ - `view create --view-type FormDesigner --name "表单名"`(底层一致)
51
+ - `form update` 支持 `--title` 与 `--name` 两个等价参数;至少需传一项
52
+ - `form field update` 必须传 `--required` 或 `--field-description` 至少一项
53
+ - `form field hide` 仅控制字段在表单中的可见性,不影响底层数据表字段
54
+ - **题目管理**与字段管理本质相同(题目 = 表格字段):
55
+ - `form questions create` 与 `field create` 入参完全一致(`--fields` JSON 或 `--name --type`)
56
+ - `form questions delete` 与 `field delete` 入参完全一致(必传 `--field-id`)
57
+ - 设置必填要在 create 后用 `form field update --required true` 单独调一次
58
+
59
+ ## form 子命令
60
+
61
+ | 命令 | 用途 | 必填参数 | 说明 |
62
+ |------|------|----------|------|
63
+ | `form list` | 列出表单视图 | `--base-id` `--table-id` | 返回 viewId/name/title/createdAt |
64
+ | `form get` | 按 viewId 取单个表单 | `--base-id` `--table-id` `--view-id` | 内部基于 list_form_views 过滤 |
65
+ | `form create` | 创建表单视图 | `--base-id` `--table-id` `--name` | viewType=FormDesigner |
66
+ | `form update` | 更新表单 | `--base-id` `--table-id` `--view-id` | `--title`/`--name`(等价)和 `--description` 至少传一项;同时传 title/name 时 title 优先 |
67
+ | `form delete` | 删除表单 | `--base-id` `--table-id` `--view-id` `--yes` | 不可逆 |
68
+
69
+ ## form field 子命令
70
+
71
+ | 命令 | 用途 | 必填参数 | 说明 |
72
+ |------|------|----------|------|
73
+ | `form field list` | 列出表单字段 | `--base-id` `--table-id` `--view-id` | 返回 fieldId/name/type/required/hidden/description(hidden=true 的字段不在此返回) |
74
+ | `form field update` | 更新表单字段 | `--base-id` `--table-id` `--view-id` `--field-id` | `--required` 或 `--field-description` 至少一项 |
75
+ | `form field hide` | 切换字段隐藏 | `--base-id` `--table-id` `--view-id` `--field-id` `--hidden` | `--hidden true` 隐藏 / `--hidden false` 显示 |
76
+
77
+ ## form questions 子命令
78
+
79
+ `form questions create/delete` 与 `field create/delete` 入参、行为完全一致,只是命令位置归属于 `form` 命令组,方便从表单视角操作题目。
80
+
81
+ | 命令 | 用途 | 必填参数 | 说明 |
82
+ |------|------|----------|------|
83
+ | `form questions create` | 添加题目 | `--base-id` `--table-id` + (`--fields` 或 `--name --type`) | 入参与 `field create` 完全一致 |
84
+ | `form questions delete` | 删除题目 | `--base-id` `--table-id` `--field-id` `--yes` | 入参与 `field delete` 完全一致;不可逆;批量需多次调用 |
85
+
86
+ ## form share 子命令
87
+
88
+ | 命令 | 用途 | 必填参数 | 说明 |
89
+ |------|------|----------|------|
90
+ | `form share get` | 获取分享配置 | `--base-id` `--table-id` `--view-id` | 返回 enabled/status/shareFormUuid |
91
+ | `form share update` | 开启/关闭分享 | `--base-id` `--table-id` `--view-id` `--enabled` | `--enabled true` 开启 / `--enabled false` 关闭。注意:UI 上"发布并分享"按钮是另一概念,本命令只切换内部 enabled 标志,开启后需在 UI 刷新页面才会看到分享面板 |
92
+
93
+ ## 完整工作流示例
94
+
95
+ > **占位符约定**:
96
+ > - `BASE_ID` 来自 `dws aitable base list` / `base search` 返回的 `data.bases[].baseId`
97
+ > - `TABLE_ID` 来自 `dws aitable base get --base-id BASE_ID` 返回的 `data.tables[].tableId`
98
+ > - `VIEW_ID` 来自步骤 1 `form create` 返回的 `data.viewId`
99
+ > - `FIELD_ID` 来自步骤 2 `form questions create` 返回的 `data.results[].fieldId`
100
+
101
+ ```bash
102
+ # 1) 创建表单 → 取返回的 data.viewId 作为 VIEW_ID
103
+ dws aitable form create --base-id BASE_ID --table-id TABLE_ID --name "员工信息收集" --format json
104
+
105
+ # 2) 添加题目 → 取返回的 data.results[].fieldId 作为 FIELD_ID
106
+ dws aitable form questions create --base-id BASE_ID --table-id TABLE_ID \
107
+ --fields '[{"fieldName":"姓名","type":"text"},{"fieldName":"邮箱","type":"text"}]' --format json
108
+
109
+ # 3) 配置表单标题与描述
110
+ dws aitable form update --base-id BASE_ID --table-id TABLE_ID --view-id VIEW_ID \
111
+ --title "员工信息收集" --description "请填写您的基本信息" --format json
112
+
113
+ # 4) 设置题目必填(FIELD_ID 来自步骤 2)
114
+ dws aitable form field update --base-id BASE_ID --table-id TABLE_ID --view-id VIEW_ID \
115
+ --field-id FIELD_ID --required true --format json
116
+
117
+ # 5) 隐藏不需要的题目
118
+ dws aitable form field hide --base-id BASE_ID --table-id TABLE_ID --view-id VIEW_ID \
119
+ --field-id FIELD_ID --hidden true --format json
120
+
121
+ # 6) 开启分享(注意:开启后需 UI 刷新页面才会看到分享面板)
122
+ dws aitable form share update --base-id BASE_ID --table-id TABLE_ID --view-id VIEW_ID \
123
+ --enabled true --format json
124
+ ```
125
+
126
+ ## 返回结构补充
127
+
128
+ - `form list` 返回 `data.formViews[]`,**每条仅含** `viewId/name/title/createdAt`;`shareFormUuid` 不在此返回,请用 `form share get` 单独获取。
129
+ - `form get` 返回结构与 `form list` 完全一致(`data.formViews[]`),仅含一条记录(与请求 viewId 一致)。Agent 提取时仍走 `data.formViews[0]`。
130
+ - `form field list` 仅返回**未隐藏**的字段;`hidden=true` 的字段不在此返回,如需查看全部字段请用 `field get`。
@@ -0,0 +1,224 @@
1
+ # AI 表格公式字段指南
2
+
3
+ > 当用户要创建 formula 类型字段、编写表内计算公式、做派生指标时,必须先读本文档。
4
+
5
+ ## 1. 何时使用 formula 字段
6
+
7
+ | 场景 | 用 formula | 不用 formula |
8
+ |------|-----------|-------------|
9
+ | 长期展示在表中的派生值(如"总价=单价×数量") | ✅ | |
10
+ | 条件标记(如"超期=IF(截止日期<TODAY(),'是','否')") | ✅ | |
11
+ | 文本拼接(如"全名=姓&名") | ✅ | |
12
+ | 一次性统计分析(如"本月总销售额") | | ✅ 用 record stats 服务端聚合 |
13
+ | 跨表查找引用 | | ✅ 用 lookup 字段(见下方说明) |
14
+
15
+ ## 2. 创建 formula 字段
16
+
17
+ ```bash
18
+ dws aitable field create \
19
+ --base-id <baseId> \
20
+ --table-id <tableId> \
21
+ --name "总价" \
22
+ --type formula \
23
+ --config '{"formula": "[单价] * [数量]"}' \
24
+ --format json
25
+ ```
26
+
27
+ ### config 结构
28
+
29
+ ```json
30
+ {
31
+ "formula": "<公式表达式>"
32
+ }
33
+ ```
34
+
35
+ - `formula` 是唯一必填字段
36
+ - 表达式中引用字段使用 **方括号 + 字段名**:`[字段名]`
37
+ - 字段名必须精确匹配(含空格、大小写)
38
+
39
+ ## 3. 公式语法
40
+
41
+ ### 3.1 引用规则
42
+
43
+ | 引用方式 | 语法 | 说明 |
44
+ |---------|------|------|
45
+ | 引用本表字段 | `[字段名]` | 字段名必须精确匹配 |
46
+ | 引用关联表字段 | 不支持 | 需要用 lookup 字段 |
47
+
48
+ ### 3.2 常用函数分类
49
+
50
+ #### 数值计算
51
+
52
+ | 函数 | 用途 | 示例 |
53
+ |------|------|------|
54
+ | `+` `-` `*` `/` | 四则运算 | `[单价] * [数量]` |
55
+ | `SUM(...)` | 求和 | `SUM([Q1], [Q2], [Q3], [Q4])` |
56
+ | `ROUND(value, digits)` | 四舍五入 | `ROUND([金额] * 0.1, 2)` |
57
+ | `ABS(value)` | 绝对值 | `ABS([差额])` |
58
+ | `MAX(a, b, ...)` | 最大值 | `MAX([成绩1], [成绩2])` |
59
+ | `MIN(a, b, ...)` | 最小值 | `MIN([报价1], [报价2])` |
60
+
61
+ #### 文本处理
62
+
63
+ | 函数 | 用途 | 示例 |
64
+ |------|------|------|
65
+ | `&` | 文本拼接 | `[姓] & [名]` |
66
+ | `CONCATENATE(...)` | 拼接多个值 | `CONCATENATE([城市], "-", [区])` |
67
+ | `LEFT(text, n)` | 取左侧 n 字符 | `LEFT([编号], 4)` |
68
+ | `RIGHT(text, n)` | 取右侧 n 字符 | `RIGHT([手机], 4)` |
69
+ | `LEN(text)` | 文本长度 | `LEN([备注])` |
70
+ | `UPPER(text)` / `LOWER(text)` | 大小写转换 | `UPPER([代码])` |
71
+
72
+ #### 逻辑判断
73
+
74
+ | 函数 | 用途 | 示例 |
75
+ |------|------|------|
76
+ | `IF(条件, 真值, 假值)` | 条件判断 | `IF([金额] > 1000, "大额", "普通")` |
77
+ | `AND(a, b, ...)` | 逻辑与 | `IF(AND([状态]="完成", [评分]>=4), "优秀", "")` |
78
+ | `OR(a, b, ...)` | 逻辑或 | `IF(OR([等级]="A", [等级]="B"), "通过", "未通过")` |
79
+ | `NOT(expr)` | 逻辑非 | `NOT([已归档])` |
80
+ | `SWITCH(expr, v1, r1, v2, r2, ..., default)` | 多条件匹配 | `SWITCH([状态], "待办","🔴", "进行中","🟡", "完成","🟢", "")` |
81
+
82
+ #### 日期函数
83
+
84
+ | 函数 | 用途 | 示例 |
85
+ |------|------|------|
86
+ | `TODAY()` | 当前日期 | `IF([截止日期] < TODAY(), "已逾期", "正常")` |
87
+ | `NOW()` | 当前时间 | `NOW()` |
88
+ | `YEAR(date)` / `MONTH(date)` / `DAY(date)` | 提取年/月/日 | `YEAR([创建时间])` |
89
+ | `DATEDIF(start, end, unit)` | 日期差 | `DATEDIF([开始], [结束], "d")` 返回天数 |
90
+ | `DATEADD(date, count, unit)` | 日期加减 | `DATEADD([创建时间], 7, "d")` |
91
+
92
+ > `DATEDIF` 的 unit 参数:`"y"`=年, `"m"`=月, `"d"`=天
93
+
94
+ #### 空值处理
95
+
96
+ | 函数 | 用途 | 示例 |
97
+ |------|------|------|
98
+ | `BLANK()` | 空值常量 | `IF([备注] = BLANK(), "无", [备注])` |
99
+ | `IF(field, ...)` | 字段为空时视为 false | `IF([评分], [评分], 0)` |
100
+
101
+ ## 4. 常见公式模板
102
+
103
+ ### 4.1 计算类
104
+
105
+ ```
106
+ // 含税价格
107
+ [不含税价] * (1 + [税率])
108
+
109
+ // 完成率百分比
110
+ [已完成数] / [总数]
111
+
112
+ // 折扣后价格
113
+ [原价] * (1 - [折扣率])
114
+ ```
115
+
116
+ ### 4.2 状态标记类
117
+
118
+ ```
119
+ // 逾期标记
120
+ IF([截止日期] < TODAY(), "⚠️ 已逾期", "正常")
121
+
122
+ // 优先级标签
123
+ SWITCH([优先级], "紧急","🔴P0", "高","🟠P1", "中","🟡P2", "低","🟢P3", "")
124
+
125
+ // 进度状态
126
+ IF([进度] >= 1, "✅ 已完成", IF([进度] > 0, "🔄 进行中", "⏳ 未开始"))
127
+ ```
128
+
129
+ ### 4.3 文本拼接类
130
+
131
+ ```
132
+ // 编号生成
133
+ "PRJ-" & [项目编码] & "-" & [序号]
134
+
135
+ // 地址拼接
136
+ [省] & [市] & [区] & [详细地址]
137
+ ```
138
+
139
+ ## 5. 注意事项与限制
140
+
141
+ ### 5.1 formula 字段是只读的
142
+
143
+ - formula 字段的值由系统自动计算,**不能通过 `record create/update` 写入**
144
+ - 如果用户要"设置某个计算结果",应引导其修改源字段
145
+
146
+ ### 5.2 字段名必须精确
147
+
148
+ - 公式中的 `[字段名]` 必须与表中实际字段名完全一致
149
+ - 创建 formula 字段前,先通过 `field get` 确认字段名
150
+
151
+ ### 5.3 循环引用
152
+
153
+ - formula 字段不能引用自身
154
+ - 不能形成 A→B→A 的循环引用
155
+
156
+ ### 5.4 与跨表引用字段的区别
157
+
158
+ 钉钉 AI 表格有两种跨表取值方式:`lookup`(关联引用)和 `filterUp`(查找引用)。
159
+
160
+ | 维度 | formula | lookup (关联引用) | filterUp (查找引用) |
161
+ |------|---------|-----------------|-------------------|
162
+ | 字段类型 | `formula` | `lookup` | `filterUp` |
163
+ | 数据来源 | 本表字段 | 通过已有关联字段(bidirectionalLink/unidirectionalLink)取关联表字段 | 直接指定目标表 + 筛选条件取值 |
164
+ | 前置条件 | 无 | 必须先有关联字段 | 无需关联字段 |
165
+ | 适用场景 | 本表内计算、条件判断 | "我关联了某条记录,取它的某个字段值" | "在另一张表里按条件查找记录并聚合取值" |
166
+
167
+ #### lookup config(已验证)
168
+
169
+ ```json
170
+ {
171
+ "associateField": "<本表中的关联字段 fieldId(bidirectionalLink/unidirectionalLink 类型)>",
172
+ "valuesField": "<关联目标表中要取值的字段 fieldId>",
173
+ "aggregator": "SUM|AVERAGE|COUNT|MAX|MIN|CONCATENATE"
174
+ }
175
+ ```
176
+
177
+ 创建示例:
178
+ ```bash
179
+ dws aitable field create --base-id <baseId> --table-id <tableId> \
180
+ --name "关联名称" --type lookup \
181
+ --config '{"associateField":"<linkFieldId>","valuesField":"<targetFieldId>","aggregator":"CONCATENATE"}'
182
+ ```
183
+
184
+ #### filterUp config(已验证)
185
+
186
+ ```json
187
+ {
188
+ "targetSheet": "<目标表 tableId>",
189
+ "filters": [
190
+ {
191
+ "fieldId": "<目标表字段Id>",
192
+ "operator": "equal|contain",
193
+ "value": "<匹配值>",
194
+ "link": "AND"
195
+ }
196
+ ],
197
+ "valuesField": "<目标表中要取值的字段Id>",
198
+ "aggregator": "SUM|AVERAGE|COUNT|MAX|MIN|CONCATENATE"
199
+ }
200
+ ```
201
+
202
+ > `filters` 必须非空(至少一条筛选规则)。
203
+ > `filters[].operator` 仅支持:`equal`、`contain`(`not_equal`/`not_contain`/`is_empty` 等均不支持)。
204
+ > `filters[].link` 统一为 `"AND"` 或 `"OR"`。
205
+
206
+ ### 5.5 创建前检查清单
207
+
208
+ 1. 已通过 `field get` 确认所有引用字段的精确名称
209
+ 2. 引用字段不包含 formula/lookup 等只读字段(可能导致二次计算延迟)
210
+ 3. 公式语法正确(括号匹配、函数名正确)
211
+ 4. 字段类型兼容(数值运算的字段确实是 number 类型)
212
+
213
+ ## 6. 更新 formula 字段
214
+
215
+ ```bash
216
+ dws aitable field update \
217
+ --base-id <baseId> \
218
+ --table-id <tableId> \
219
+ --field-id <fieldId> \
220
+ --config '{"formula": "[新字段A] + [新字段B]"}' \
221
+ --format json
222
+ ```
223
+
224
+ 更新时只需传新的 `formula` 表达式,系统会自动重新计算所有记录。
@@ -0,0 +1,58 @@
1
+ # 主键文档管理
2
+
3
+ ## 适用场景
4
+
5
+ 当需要为 AI 表格中的记录创建或查询关联的主键文档时使用。主键文档是 primaryDoc 类型字段对应的钉钉在线文档,可通过 `dws doc` 进行内容读写。
6
+
7
+ 若任务包含创建或关联主键文档,必须在首次建表前读取本文件,并把 `primaryDoc` 直接作为新表首字段;不要先以普通 `text` 首字段建表,再删除表、字段或记录重建。
8
+
9
+ ## 命令
10
+
11
+ ### 查询主键文档
12
+
13
+ ```bash
14
+ dws aitable +record-primary-doc-get --base-id BASE_ID --table-id TABLE_ID --record-id RECORD_ID
15
+ ```
16
+
17
+ **参数:**
18
+ - `--base-id`(必填):Base ID
19
+ - `--table-id`(必填):Table ID
20
+ - `--record-id`(必填):Record ID
21
+
22
+ **返回:** `data.nodeId` — 主键文档的 nodeId,可直接传给 `dws doc read/update` 的 `--node` 参数。若该记录尚未创建主键文档,`nodeId` 为 null。
23
+
24
+ ### 创建主键文档
25
+
26
+ ```bash
27
+ dws aitable +record-primary-doc-create --base-id BASE_ID --table-id TABLE_ID --field-id FIELD_ID --record-id RECORD_ID
28
+ ```
29
+
30
+ **参数:**
31
+ - `--base-id`(必填):Base ID
32
+ - `--table-id`(必填):Table ID
33
+ - `--field-id`(必填):主键字段 ID,必须是 primaryDoc 类型(通过 `dws aitable field get` 查看字段类型)
34
+ - `--record-id`(必填):Record ID
35
+
36
+ **返回:** `data.nodeId` — 创建或已存在的主键文档 nodeId。
37
+
38
+ **幂等性:** 若该记录已有主键文档,直接返回已有文档的 nodeId,不会重复创建。
39
+
40
+ ## 注意事项
41
+
42
+ - `fieldId` 必须是 primaryDoc 类型,否则返回 `INVALID_FIELD_TYPE` 错误
43
+ - `primaryDoc` 是建表时的首字段能力,不能在已有普通首字段之后补建,也不能把普通字段改成 primaryDoc。需要该能力时应新建以 primaryDoc 为首字段的数据表并迁移数据;未经用户明确授权不要自动迁移。
44
+ - 传入不存在的 `recordId` 会返回 `RECORD_NOT_FOUND` 错误
45
+ - 创建后可通过 `dws doc update --node <nodeId>` 写入文档内容,或 `dws doc read --node <nodeId>` 读取
46
+
47
+ ## 典型工作流
48
+
49
+ ```bash
50
+ # 1. 查询字段目录,拿到 primaryDoc 字段的 fieldId
51
+ dws aitable field get --base-id BASE_ID --table-id TABLE_ID
52
+
53
+ # 2. 为记录创建主键文档
54
+ dws aitable +record-primary-doc-create --base-id BASE_ID --table-id TABLE_ID --field-id FIELD_ID --record-id RECORD_ID
55
+
56
+ # 3. 拿到返回的 nodeId,用 dws doc 写入内容
57
+ dws doc update --node <data.nodeId> --content "# 项目方案\n\n文档正文内容..."
58
+ ```
@@ -0,0 +1,52 @@
1
+ # record create — 新增记录
2
+
3
+ ## 命令格式
4
+
5
+ ```
6
+ Usage:
7
+ dws aitable record create [flags]
8
+ Example:
9
+ dws aitable record create --base-id <BASE_ID> --table-id <TABLE_ID> \
10
+ --records '[{"cells":{"fldTextId":"文本内容","fldNumId":123}}]'
11
+ Flags:
12
+ --base-id string Base ID (必填)
13
+ --records string 记录列表 JSON 数组,单次最多 100 条 (必填,与 --records-file 二选一)
14
+ --records-file string 从文件读取 records JSON(替代 --records,适合超长数据或 Windows 环境)
15
+ --table-id string Table ID (必填)
16
+ ```
17
+
18
+ ## Windows / 超长 JSON 推荐
19
+
20
+ 将 records JSON 写入文件,用 `--records-file ./records.json` 传入,避免命令行截断和引号转义问题。
21
+
22
+ ## 常见错误(严格避免)
23
+
24
+ | 错误 | 说明 |
25
+ |------|------|
26
+ | 参数名用 `--data` | ❌ 参数名是 `--records`,不是 `--data` |
27
+ | cells key 用字段名 | ❌ cells key 必须是 fieldId(如 `fldXXX`),不是字段名称(如 `"课程名称"`) |
28
+ | 不先获取 fieldId | ❌ 必须先 `field get` 获取 fieldId,再写入记录 |
29
+ | 单次超 100 条 | ❌ 单次最多 100 条,超过需分批 |
30
+ | 附件/图片字段直传 URL | ❌ 严禁 `{"url":"https://..."}` — 会触发 TIMEOUT_ERROR。必须先 `attachment upload` 获取 `fileToken`,再用 `{"fileToken":"ft_xxx"}` 写入。详见 [aitable-attachment.md](./aitable-attachment.md) |
31
+
32
+ ## 正确流程
33
+
34
+ ```bash
35
+ # 先获取 fieldId
36
+ dws aitable field get --base-id <BASE_ID> --table-id <TABLE_ID> --format json
37
+ # 从返回中提取 fieldId(如 fldABC123)
38
+
39
+ # 再用 fieldId 写入记录
40
+ dws aitable record create --base-id <BASE_ID> --table-id <TABLE_ID> \
41
+ --records '[{"cells":{"fldABC123":"Python入门"}}]' --format json
42
+
43
+ # 从创建响应的 data.newRecordIds[] 提取新 ID,并回读确认真实写入值
44
+ dws aitable record query --base-id <BASE_ID> --table-id <TABLE_ID> \
45
+ --record-ids <NEW_RECORD_ID> --format json
46
+ ```
47
+
48
+ 创建成功以 `data.newRecordIds[]` 为 ID 来源;不要把整个 `data` 当作单个 recordId,也不要只以退出码作为写入成功证据。
49
+
50
+ ## cells 写入格式
51
+
52
+ 各字段类型的写入格式见 [aitable-cell-value.md](./aitable-cell-value.md)。
@@ -0,0 +1,20 @@
1
+ # record delete — 删除记录
2
+
3
+ ## 命令格式
4
+
5
+ ```
6
+ Usage:
7
+ dws aitable record delete [flags]
8
+ Example:
9
+ dws aitable record delete --base-id <BASE_ID> --table-id <TABLE_ID> --record-ids rec1,rec2 --yes
10
+ Flags:
11
+ --base-id string Base ID (必填)
12
+ --record-ids string 待删除记录 ID 列表,逗号分隔,最多 100 条 (必填)
13
+ --table-id string Table ID (必填)
14
+ ```
15
+
16
+ ## 注意事项
17
+
18
+ - **不可逆操作**,调用前建议先 `record query` 确认目标记录
19
+ - 需要先通过 `record query` 获取 recordId
20
+ - 单次最多删除 100 条记录
@@ -0,0 +1,97 @@
1
+ # 行记录变更历史(record history-list)
2
+
3
+ 按 recordId 查询单条记录的全部变更历史,用于审计、回溯字段变更、定位操作人。
4
+
5
+ ## 命令
6
+
7
+ ```
8
+ dws aitable record history-list \
9
+ --base-id BASE_ID --table-id TABLE_ID --record-id REC_ID \
10
+ [--offset N] [--limit M]
11
+ ```
12
+
13
+ | flag | 说明 |
14
+ |------|------|
15
+ | `--base-id` | 所属 Base ID(必填,可用 `--base` 别名) |
16
+ | `--table-id` | 所属 Table ID(必填) |
17
+ | `--record-id` | 目标记录 ID(必填,单条;不支持批量) |
18
+ | `--offset` | 分页偏移量,默认 0 |
19
+ | `--limit` | 每页返回数量,范围 [1, 50],默认 20 |
20
+
21
+ ## 返回结构
22
+
23
+ ```jsonc
24
+ {
25
+ "data": {
26
+ "histories": [
27
+ {
28
+ "type": "field_change", // 变更类型
29
+ "action": "update", // 操作动作: create / update / delete
30
+ "newValue": "{\"...\":\"...\"}", // 变更后的值(JSON 字符串)
31
+ "oldValue": "{\"...\":\"...\"}", // 变更前的值(JSON 字符串)
32
+ "operateTime": 1733123456789, // 操作时间(毫秒级时间戳)
33
+ "typeChangedFields": "{...}", // 类型变更的字段信息(JSON 字符串)
34
+ "version": 7 // 版本号(单调递增)
35
+ }
36
+ ]
37
+ }
38
+ }
39
+ ```
40
+
41
+ `newValue` / `oldValue` / `typeChangedFields` 是 JSON 字符串(不是 JSON 对象),需要二次 `JSON.parse` 才能拿到结构化值。
42
+
43
+ ## 字段含义速查
44
+
45
+ | 字段 | 用途 |
46
+ |------|------|
47
+ | `type` | 高层分类:`record_create` / `field_change` / `record_delete` 等。先按 type 过滤大类。 |
48
+ | `action` | 三态:`create` / `update` / `delete`。比 type 粗,但便于按"动作"统计。 |
49
+ | `version` | 单调递增整数;同一 record 越新值越大。**用作"上一条 vs 这一条"的稳定排序键**。 |
50
+ | `operateTime` | 毫秒时间戳;可格式化成可读时间。多条同 version 的极端场景用 operateTime 兜底排序。 |
51
+
52
+ ## 典型用法
53
+
54
+ ### 1. 看一条记录被改过几次
55
+
56
+ ```bash
57
+ dws aitable record history-list --base-id BASE --table-id TBL --record-id REC --format json \
58
+ | jq '.data.histories[] | {version, action, operateTime}'
59
+ ```
60
+
61
+ ### 2. 翻页拉全量历史
62
+
63
+ ```bash
64
+ # 第 1 页(最新 20 条)
65
+ dws aitable record history-list --base-id BASE --table-id TBL --record-id REC --limit 50 --offset 0
66
+
67
+ # 第 2 页
68
+ dws aitable record history-list --base-id BASE --table-id TBL --record-id REC --limit 50 --offset 50
69
+ ```
70
+
71
+ `limit` 上限 50,需要更多请增加 `offset` 翻页。
72
+
73
+ ### 3. 回溯某字段最近一次值
74
+
75
+ ```bash
76
+ dws aitable record history-list --base-id BASE --table-id TBL --record-id REC --limit 50 --format json \
77
+ | jq '[.data.histories[] | select(.action == "update")][0].oldValue'
78
+ ```
79
+
80
+ ### 4. 找出删除事件(如果存在 delete history)
81
+
82
+ ```bash
83
+ dws aitable record history-list --base-id BASE --table-id TBL --record-id REC --format json \
84
+ | jq '.data.histories[] | select(.action == "delete") | {version, operateTime}'
85
+ ```
86
+
87
+ ## 注意事项
88
+
89
+ - 一次只能查一条 record;如需批量审计多条记录请循环调用。
90
+ - 仅返回**字段值变更**与**记录生命周期事件**;视图、字段定义、表结构变更不在此 history 里。
91
+ - 历史保留时长由 server 决定,过老的记录可能不再返回。
92
+
93
+ ## 与其他 record 命令的关系
94
+
95
+ - 想看记录"现在长什么样" → `record query` / `record get`
96
+ - 想看记录"过去长什么样、什么时候改的" → `record history-list`(本命令)
97
+ - 想看"这张表整体改过什么" → 当前 CLI 不支持表级 history;只能逐 record 查
@@ -0,0 +1,47 @@
1
+ # 行命名规则枚举键(recordNameKey)映射
2
+
3
+ `dws aitable table update --record-name-key <枚举键>` 用于设置数据表的"行命名规则"——卡片/详情页里"行"的展示别名。**取值是固定枚举,不是字段 ID**;传非法值服务端返回 `INVALID_RECORD_NAME_KEY`。
4
+
5
+ ## 中文 → 枚举键(按 UI 下拉顺序)
6
+
7
+ | 用户说 | --record-name-key | 用户说 | --record-name-key |
8
+ |---|---|---|---|
9
+ | 记录 | `ji_lu`(默认) | 项目 | `project` |
10
+ | 任务 | `task` | 事件 | `event` |
11
+ | 请求 | `request` | 活动 | `campaign` |
12
+ | 目标 | `objective` | 交付物 | `deliverable` |
13
+ | 资产 | `asset` | 客户 | `customer` |
14
+ | 订单 | `order` | 联系人 | `contact` |
15
+ | 物料/物品 | `item` | 问题 | `question` 或 `issue` |
16
+ | 工单 | `ticket` | 候选人 | `candidate` |
17
+ | 商机/机会 | `opportunity` | 会议 | `meeting` |
18
+ | 成员 | `member` | OKR | `okr` |
19
+
20
+ ## 其他常用键(按场景分组)
21
+
22
+ - **业务流程**:`approval` / `application` / `case` / `decision` / `delivery` / `payment` / `purchase_order` / `quote` / `release`
23
+ - **HR / 财务**:`employee` / `expense` / `budget` / `invoice`
24
+ - **产品 / 研发**:`feature` / `feedback` / `idea` / `bug` / `requirement` / `risk` / `sprint` / `story` / `subtask` / `epic`
25
+ - **CRM**:`account` / `lead` / `prospect` / `deal`
26
+ - **运营 / 支持**:`note` / `report` / `topic` / `session` / `service`
27
+ - **资源 / 通用**:`file` / `document` / `product` / `team` / `user` / `vendor` / `key_result` / `metric`
28
+
29
+ 完整集合较大(共 273 个),服务端校验;以上未列出的合法键也可直接传(如 `goal` / `okr` / `pillar` / `phase` / `milestone` 等)。
30
+
31
+ ## 使用示例
32
+
33
+ ```bash
34
+ # 用户说"把这张表的行叫'任务'吧" → 传 task
35
+ dws aitable table update --base-id BASE --table-id TBL --record-name-key task
36
+
37
+ # 用户说"换成项目" → 传 project
38
+ dws aitable table update --base-id BASE --table-id TBL --record-name-key project
39
+
40
+ # 用户说"恢复成默认(记录)" → 传 ji_lu
41
+ dws aitable table update --base-id BASE --table-id TBL --record-name-key ji_lu
42
+ ```
43
+
44
+ ## 注意
45
+
46
+ - recordNameKey **不会在 `table get` 响应里回显**(`get_tables` DTO 设计上不暴露该字段);写入是否成功以 `table update` 的 set response 是否回填 `recordNameKey` 字段为准。
47
+ - 中文别名是 server 内置 i18n,UI 显示用户对应的国际化文案,CLI 必须传英文枚举键。