@amaster.ai/pi-lark 0.1.4 → 0.1.6

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 (416) hide show
  1. package/package.json +3 -3
  2. package/skills/lark-approval/SKILL.md +99 -0
  3. package/skills/lark-approval/references/lark-approval-approvals-get.md +128 -0
  4. package/skills/lark-approval/references/lark-approval-approvals-search.md +103 -0
  5. package/skills/lark-approval/references/lark-approval-initiate.md +221 -0
  6. package/skills/lark-approval/references/lark-approval-instance-form-control-parameters.md +606 -0
  7. package/skills/lark-approval/references/lark-approval-instance-value-sourcing.md +108 -0
  8. package/skills/lark-approval/references/lark-approval-instances-cancel.md +78 -0
  9. package/skills/lark-approval/references/lark-approval-instances-cc.md +105 -0
  10. package/skills/lark-approval/references/lark-approval-instances-get.md +145 -0
  11. package/skills/lark-approval/references/lark-approval-instances-initiated.md +128 -0
  12. package/skills/lark-approval/references/lark-approval-tasks-add-sign.md +120 -0
  13. package/skills/lark-approval/references/lark-approval-tasks-approve.md +81 -0
  14. package/skills/lark-approval/references/lark-approval-tasks-query.md +85 -0
  15. package/skills/lark-approval/references/lark-approval-tasks-reject.md +73 -0
  16. package/skills/lark-approval/references/lark-approval-tasks-remind.md +82 -0
  17. package/skills/lark-approval/references/lark-approval-tasks-rollback.md +89 -0
  18. package/skills/lark-approval/references/lark-approval-tasks-transfer.md +91 -0
  19. package/skills/lark-apps/SKILL.md +110 -0
  20. package/skills/lark-apps/references/lark-apps-access-scope-get.md +28 -0
  21. package/skills/lark-apps/references/lark-apps-access-scope-set.md +40 -0
  22. package/skills/lark-apps/references/lark-apps-automation.md +164 -0
  23. package/skills/lark-apps/references/lark-apps-cloud-dev.md +120 -0
  24. package/skills/lark-apps/references/lark-apps-create.md +40 -0
  25. package/skills/lark-apps/references/lark-apps-db-execute.md +228 -0
  26. package/skills/lark-apps/references/lark-apps-db.md +162 -0
  27. package/skills/lark-apps/references/lark-apps-env-pull.md +37 -0
  28. package/skills/lark-apps/references/lark-apps-env.md +48 -0
  29. package/skills/lark-apps/references/lark-apps-file.md +96 -0
  30. package/skills/lark-apps/references/lark-apps-get.md +43 -0
  31. package/skills/lark-apps/references/lark-apps-git-credential.md +37 -0
  32. package/skills/lark-apps/references/lark-apps-html-publish.md +62 -0
  33. package/skills/lark-apps/references/lark-apps-init.md +36 -0
  34. package/skills/lark-apps/references/lark-apps-list.md +37 -0
  35. package/skills/lark-apps/references/lark-apps-local-dev.md +78 -0
  36. package/skills/lark-apps/references/lark-apps-observability.md +48 -0
  37. package/skills/lark-apps/references/lark-apps-openapi-key.md +79 -0
  38. package/skills/lark-apps/references/lark-apps-plugin-install.md +36 -0
  39. package/skills/lark-apps/references/lark-apps-plugin-list.md +23 -0
  40. package/skills/lark-apps/references/lark-apps-plugin-uninstall.md +25 -0
  41. package/skills/lark-apps/references/lark-apps-release-create.md +32 -0
  42. package/skills/lark-apps/references/lark-apps-release-get.md +28 -0
  43. package/skills/lark-apps/references/lark-apps-release-list.md +31 -0
  44. package/skills/lark-apps/references/lark-apps-role.md +133 -0
  45. package/skills/lark-apps/references/lark-apps-session-messages-list.md +53 -0
  46. package/skills/lark-apps/references/lark-apps-update.md +30 -0
  47. package/skills/lark-attendance/SKILL.md +57 -0
  48. package/skills/lark-base/SKILL.md +161 -0
  49. package/skills/lark-base/references/dashboard-block-data-config.md +376 -0
  50. package/skills/lark-base/references/formula-field-guide.md +737 -0
  51. package/skills/lark-base/references/lark-base-cell-value.md +158 -0
  52. package/skills/lark-base/references/lark-base-dashboard-block-get-data.md +717 -0
  53. package/skills/lark-base/references/lark-base-dashboard.md +247 -0
  54. package/skills/lark-base/references/lark-base-data-analysis-sop.md +210 -0
  55. package/skills/lark-base/references/lark-base-data-query-guide.md +61 -0
  56. package/skills/lark-base/references/lark-base-data-query.md +454 -0
  57. package/skills/lark-base/references/lark-base-field-create.md +105 -0
  58. package/skills/lark-base/references/lark-base-field-json.md +527 -0
  59. package/skills/lark-base/references/lark-base-field-update.md +173 -0
  60. package/skills/lark-base/references/lark-base-form-detail.md +71 -0
  61. package/skills/lark-base/references/lark-base-form-questions-create.md +118 -0
  62. package/skills/lark-base/references/lark-base-form-questions-update.md +92 -0
  63. package/skills/lark-base/references/lark-base-form-submit.md +170 -0
  64. package/skills/lark-base/references/lark-base-record-batch-create.md +57 -0
  65. package/skills/lark-base/references/lark-base-record-batch-update.md +52 -0
  66. package/skills/lark-base/references/lark-base-record-history-list.md +43 -0
  67. package/skills/lark-base/references/lark-base-record-upsert.md +63 -0
  68. package/skills/lark-base/references/lark-base-role-guide.md +65 -0
  69. package/skills/lark-base/references/lark-base-view-set-filter.md +191 -0
  70. package/skills/lark-base/references/lark-base-workflow-guide.md +830 -0
  71. package/skills/lark-base/references/lark-base-workflow-schema.md +1071 -0
  72. package/skills/lark-base/references/lookup-field-guide.md +512 -0
  73. package/skills/lark-base/references/role-config.md +549 -0
  74. package/skills/lark-calendar/SKILL.md +198 -0
  75. package/skills/lark-calendar/references/lark-calendar-create.md +83 -0
  76. package/skills/lark-calendar/references/lark-calendar-meeting.md +40 -0
  77. package/skills/lark-calendar/references/lark-calendar-recurring.md +90 -0
  78. package/skills/lark-calendar/references/lark-calendar-room-find.md +109 -0
  79. package/skills/lark-calendar/references/lark-calendar-rsvp.md +38 -0
  80. package/skills/lark-calendar/references/lark-calendar-schedule-clear-time.md +59 -0
  81. package/skills/lark-calendar/references/lark-calendar-schedule-fuzzy-time.md +88 -0
  82. package/skills/lark-calendar/references/lark-calendar-schedule-meeting.md +122 -0
  83. package/skills/lark-calendar/references/lark-calendar-suggestion.md +121 -0
  84. package/skills/lark-calendar/references/lark-calendar-update.md +100 -0
  85. package/skills/lark-contact/SKILL.md +55 -0
  86. package/skills/lark-contact/references/lark-contact-get-user.md +19 -0
  87. package/skills/lark-contact/references/lark-contact-search-user.md +123 -0
  88. package/skills/lark-doc/SKILL.md +84 -0
  89. package/skills/lark-doc/references/lark-doc-create.md +80 -0
  90. package/skills/lark-doc/references/lark-doc-fetch.md +140 -0
  91. package/skills/lark-doc/references/lark-doc-history.md +107 -0
  92. package/skills/lark-doc/references/lark-doc-md.md +76 -0
  93. package/skills/lark-doc/references/lark-doc-media-download.md +50 -0
  94. package/skills/lark-doc/references/lark-doc-media-insert.md +114 -0
  95. package/skills/lark-doc/references/lark-doc-media-preview.md +41 -0
  96. package/skills/lark-doc/references/lark-doc-mindnote.md +128 -0
  97. package/skills/lark-doc/references/lark-doc-resource-cover.md +70 -0
  98. package/skills/lark-doc/references/lark-doc-update.md +260 -0
  99. package/skills/lark-doc/references/lark-doc-whiteboard.md +158 -0
  100. package/skills/lark-doc/references/lark-doc-word-stat.md +93 -0
  101. package/skills/lark-doc/references/lark-doc-xml-extended-blocks.md +35 -0
  102. package/skills/lark-doc/references/lark-doc-xml.md +182 -0
  103. package/skills/lark-doc/references/style/lark-doc-create-workflow.md +47 -0
  104. package/skills/lark-doc/references/style/lark-doc-style.md +68 -0
  105. package/skills/lark-doc/references/style/lark-doc-update-workflow.md +48 -0
  106. package/skills/lark-doc/scripts/doc_word_stat.py +1243 -0
  107. package/skills/lark-drive/SKILL.md +232 -0
  108. package/skills/lark-drive/references/lark-drive-add-comment.md +193 -0
  109. package/skills/lark-drive/references/lark-drive-apply-permission.md +77 -0
  110. package/skills/lark-drive/references/lark-drive-comment-location.md +205 -0
  111. package/skills/lark-drive/references/lark-drive-comments-guide.md +80 -0
  112. package/skills/lark-drive/references/lark-drive-cover.md +79 -0
  113. package/skills/lark-drive/references/lark-drive-create-folder.md +73 -0
  114. package/skills/lark-drive/references/lark-drive-create-shortcut.md +103 -0
  115. package/skills/lark-drive/references/lark-drive-delete.md +103 -0
  116. package/skills/lark-drive/references/lark-drive-download.md +31 -0
  117. package/skills/lark-drive/references/lark-drive-export-download.md +50 -0
  118. package/skills/lark-drive/references/lark-drive-export.md +174 -0
  119. package/skills/lark-drive/references/lark-drive-files-list.md +183 -0
  120. package/skills/lark-drive/references/lark-drive-import.md +178 -0
  121. package/skills/lark-drive/references/lark-drive-inspect.md +52 -0
  122. package/skills/lark-drive/references/lark-drive-list-comments.md +125 -0
  123. package/skills/lark-drive/references/lark-drive-member-add.md +66 -0
  124. package/skills/lark-drive/references/lark-drive-move.md +122 -0
  125. package/skills/lark-drive/references/lark-drive-permission-guide.md +53 -0
  126. package/skills/lark-drive/references/lark-drive-preview.md +87 -0
  127. package/skills/lark-drive/references/lark-drive-pull.md +137 -0
  128. package/skills/lark-drive/references/lark-drive-push.md +189 -0
  129. package/skills/lark-drive/references/lark-drive-reactions.md +113 -0
  130. package/skills/lark-drive/references/lark-drive-search.md +273 -0
  131. package/skills/lark-drive/references/lark-drive-secure-label.md +52 -0
  132. package/skills/lark-drive/references/lark-drive-status.md +135 -0
  133. package/skills/lark-drive/references/lark-drive-task-result.md +355 -0
  134. package/skills/lark-drive/references/lark-drive-upload.md +101 -0
  135. package/skills/lark-drive/references/lark-drive-version-delete.md +38 -0
  136. package/skills/lark-drive/references/lark-drive-version-get.md +71 -0
  137. package/skills/lark-drive/references/lark-drive-version-history.md +73 -0
  138. package/skills/lark-drive/references/lark-drive-version-revert.md +35 -0
  139. package/skills/lark-drive/references/lark-drive-workflow-knowledge-organize-analysis.md +249 -0
  140. package/skills/lark-drive/references/lark-drive-workflow-knowledge-organize-discovery.md +253 -0
  141. package/skills/lark-drive/references/lark-drive-workflow-knowledge-organize-execution.md +200 -0
  142. package/skills/lark-drive/references/lark-drive-workflow-knowledge-organize-planning.md +336 -0
  143. package/skills/lark-drive/references/lark-drive-workflow-knowledge-organize-rollback.md +308 -0
  144. package/skills/lark-drive/references/lark-drive-workflow-knowledge-organize.md +232 -0
  145. package/skills/lark-drive/references/lark-drive-workflow-permission-governance-commands.md +168 -0
  146. package/skills/lark-drive/references/lark-drive-workflow-permission-governance-outputs.md +424 -0
  147. package/skills/lark-drive/references/lark-drive-workflow-permission-governance.md +207 -0
  148. package/skills/lark-drive/references/lark-drive-workflow.md +131 -0
  149. package/skills/lark-event/SKILL.md +155 -0
  150. package/skills/lark-event/references/lark-event-approval.md +170 -0
  151. package/skills/lark-event/references/lark-event-im.md +87 -0
  152. package/skills/lark-event/references/lark-event-minutes.md +54 -0
  153. package/skills/lark-event/references/lark-event-task.md +78 -0
  154. package/skills/lark-event/references/lark-event-vc.md +106 -0
  155. package/skills/lark-event/references/lark-event-whiteboard.md +67 -0
  156. package/skills/lark-im/SKILL.md +249 -0
  157. package/skills/lark-im/references/card/card-2.0-schema.md +107 -0
  158. package/skills/lark-im/references/card/components/button.md +63 -0
  159. package/skills/lark-im/references/card/components/chart.md +57 -0
  160. package/skills/lark-im/references/card/components/checker.md +38 -0
  161. package/skills/lark-im/references/card/components/collapsible_panel.md +46 -0
  162. package/skills/lark-im/references/card/components/column_set.md +53 -0
  163. package/skills/lark-im/references/card/components/date_picker.md +34 -0
  164. package/skills/lark-im/references/card/components/div.md +36 -0
  165. package/skills/lark-im/references/card/components/form.md +51 -0
  166. package/skills/lark-im/references/card/components/header.md +34 -0
  167. package/skills/lark-im/references/card/components/hr.md +17 -0
  168. package/skills/lark-im/references/card/components/img.md +34 -0
  169. package/skills/lark-im/references/card/components/img_combination.md +30 -0
  170. package/skills/lark-im/references/card/components/input.md +43 -0
  171. package/skills/lark-im/references/card/components/interactive_container.md +46 -0
  172. package/skills/lark-im/references/card/components/markdown.md +56 -0
  173. package/skills/lark-im/references/card/components/multi_select_person.md +40 -0
  174. package/skills/lark-im/references/card/components/multi_select_static.md +40 -0
  175. package/skills/lark-im/references/card/components/overflow.md +36 -0
  176. package/skills/lark-im/references/card/components/person.md +30 -0
  177. package/skills/lark-im/references/card/components/person_list.md +31 -0
  178. package/skills/lark-im/references/card/components/picker_datetime.md +34 -0
  179. package/skills/lark-im/references/card/components/picker_time.md +34 -0
  180. package/skills/lark-im/references/card/components/recycling_container.md +35 -0
  181. package/skills/lark-im/references/card/components/select_img.md +42 -0
  182. package/skills/lark-im/references/card/components/select_person.md +39 -0
  183. package/skills/lark-im/references/card/components/select_static.md +43 -0
  184. package/skills/lark-im/references/card/components/table.md +53 -0
  185. package/skills/lark-im/references/card/lark-im-card-create.md +180 -0
  186. package/skills/lark-im/references/card/lark-im-card-style.md +281 -0
  187. package/skills/lark-im/references/card/resource/colors.md +34 -0
  188. package/skills/lark-im/references/card/resource/icons.md +38 -0
  189. package/skills/lark-im/references/lark-im-card-action-reply.md +175 -0
  190. package/skills/lark-im/references/lark-im-chat-create.md +162 -0
  191. package/skills/lark-im/references/lark-im-chat-identity.md +55 -0
  192. package/skills/lark-im/references/lark-im-chat-list.md +166 -0
  193. package/skills/lark-im/references/lark-im-chat-members-list.md +83 -0
  194. package/skills/lark-im/references/lark-im-chat-messages-list.md +157 -0
  195. package/skills/lark-im/references/lark-im-chat-search.md +142 -0
  196. package/skills/lark-im/references/lark-im-chat-update.md +84 -0
  197. package/skills/lark-im/references/lark-im-feed-group-list-item.md +68 -0
  198. package/skills/lark-im/references/lark-im-feed-group-list.md +65 -0
  199. package/skills/lark-im/references/lark-im-feed-group-query-item.md +44 -0
  200. package/skills/lark-im/references/lark-im-feed-groups.md +452 -0
  201. package/skills/lark-im/references/lark-im-feed-shortcut-create.md +97 -0
  202. package/skills/lark-im/references/lark-im-feed-shortcut-list.md +103 -0
  203. package/skills/lark-im/references/lark-im-feed-shortcut-remove.md +48 -0
  204. package/skills/lark-im/references/lark-im-flag-cancel.md +67 -0
  205. package/skills/lark-im/references/lark-im-flag-create.md +67 -0
  206. package/skills/lark-im/references/lark-im-flag-list.md +100 -0
  207. package/skills/lark-im/references/lark-im-message-enrichment.md +54 -0
  208. package/skills/lark-im/references/lark-im-messages-mget.md +99 -0
  209. package/skills/lark-im/references/lark-im-messages-reply.md +277 -0
  210. package/skills/lark-im/references/lark-im-messages-resources-download.md +94 -0
  211. package/skills/lark-im/references/lark-im-messages-search.md +234 -0
  212. package/skills/lark-im/references/lark-im-messages-send.md +279 -0
  213. package/skills/lark-im/references/lark-im-reactions.md +299 -0
  214. package/skills/lark-im/references/lark-im-threads-messages-list.md +115 -0
  215. package/skills/lark-mail/SKILL.md +290 -0
  216. package/skills/lark-mail/assets/templates/job-application--resume.html +33 -0
  217. package/skills/lark-mail/assets/templates/newsletter--weekly-brief.html +50 -0
  218. package/skills/lark-mail/assets/templates/research--market-report.html +256 -0
  219. package/skills/lark-mail/assets/templates/weekly--personal-report.html +43 -0
  220. package/skills/lark-mail/assets/templates/weekly--team-report.html +9 -0
  221. package/skills/lark-mail/references/lark-mail-calendar-invite.md +36 -0
  222. package/skills/lark-mail/references/lark-mail-decline-receipt.md +115 -0
  223. package/skills/lark-mail/references/lark-mail-draft-create.md +127 -0
  224. package/skills/lark-mail/references/lark-mail-draft-edit.md +404 -0
  225. package/skills/lark-mail/references/lark-mail-forward.md +239 -0
  226. package/skills/lark-mail/references/lark-mail-html.md +333 -0
  227. package/skills/lark-mail/references/lark-mail-lint-html.md +243 -0
  228. package/skills/lark-mail/references/lark-mail-message-modify.md +48 -0
  229. package/skills/lark-mail/references/lark-mail-message-trash.md +41 -0
  230. package/skills/lark-mail/references/lark-mail-message.md +233 -0
  231. package/skills/lark-mail/references/lark-mail-messages.md +108 -0
  232. package/skills/lark-mail/references/lark-mail-recall.md +66 -0
  233. package/skills/lark-mail/references/lark-mail-recipient-search.md +59 -0
  234. package/skills/lark-mail/references/lark-mail-reply-all.md +213 -0
  235. package/skills/lark-mail/references/lark-mail-reply.md +249 -0
  236. package/skills/lark-mail/references/lark-mail-rules.md +31 -0
  237. package/skills/lark-mail/references/lark-mail-send-as.md +44 -0
  238. package/skills/lark-mail/references/lark-mail-send-receipt.md +120 -0
  239. package/skills/lark-mail/references/lark-mail-send-status.md +46 -0
  240. package/skills/lark-mail/references/lark-mail-send.md +222 -0
  241. package/skills/lark-mail/references/lark-mail-share-to-chat.md +87 -0
  242. package/skills/lark-mail/references/lark-mail-signature.md +98 -0
  243. package/skills/lark-mail/references/lark-mail-template-create.md +129 -0
  244. package/skills/lark-mail/references/lark-mail-template-update.md +150 -0
  245. package/skills/lark-mail/references/lark-mail-template.md +54 -0
  246. package/skills/lark-mail/references/lark-mail-thread.md +111 -0
  247. package/skills/lark-mail/references/lark-mail-triage.md +131 -0
  248. package/skills/lark-mail/references/lark-mail-watch.md +94 -0
  249. package/skills/lark-markdown/SKILL.md +70 -0
  250. package/skills/lark-markdown/references/lark-markdown-create.md +114 -0
  251. package/skills/lark-markdown/references/lark-markdown-diff.md +156 -0
  252. package/skills/lark-markdown/references/lark-markdown-fetch.md +79 -0
  253. package/skills/lark-markdown/references/lark-markdown-overwrite.md +85 -0
  254. package/skills/lark-markdown/references/lark-markdown-patch.md +160 -0
  255. package/skills/lark-minutes/SKILL.md +207 -0
  256. package/skills/lark-minutes/references/lark-minutes-detail.md +62 -0
  257. package/skills/lark-minutes/references/lark-minutes-download.md +135 -0
  258. package/skills/lark-minutes/references/lark-minutes-search.md +202 -0
  259. package/skills/lark-minutes/references/lark-minutes-speaker-replace.md +107 -0
  260. package/skills/lark-minutes/references/lark-minutes-summary.md +120 -0
  261. package/skills/lark-minutes/references/lark-minutes-todo.md +136 -0
  262. package/skills/lark-minutes/references/lark-minutes-update.md +39 -0
  263. package/skills/lark-minutes/references/lark-minutes-upload.md +104 -0
  264. package/skills/lark-note/SKILL.md +94 -0
  265. package/skills/lark-note/references/lark-note-detail.md +26 -0
  266. package/skills/lark-note/references/lark-note-transcript.md +23 -0
  267. package/skills/lark-okr/SKILL.md +122 -0
  268. package/skills/lark-okr/references/lark-okr-alignments.md +180 -0
  269. package/skills/lark-okr/references/lark-okr-batch-create.md +106 -0
  270. package/skills/lark-okr/references/lark-okr-contentblock.md +427 -0
  271. package/skills/lark-okr/references/lark-okr-cycle-detail.md +91 -0
  272. package/skills/lark-okr/references/lark-okr-cycle-list.md +93 -0
  273. package/skills/lark-okr/references/lark-okr-entities.md +329 -0
  274. package/skills/lark-okr/references/lark-okr-image-upload.md +116 -0
  275. package/skills/lark-okr/references/lark-okr-indicator-update.md +80 -0
  276. package/skills/lark-okr/references/lark-okr-indicators.md +223 -0
  277. package/skills/lark-okr/references/lark-okr-patch.md +104 -0
  278. package/skills/lark-okr/references/lark-okr-progress-create.md +85 -0
  279. package/skills/lark-okr/references/lark-okr-progress-delete.md +47 -0
  280. package/skills/lark-okr/references/lark-okr-progress-get.md +93 -0
  281. package/skills/lark-okr/references/lark-okr-progress-list.md +80 -0
  282. package/skills/lark-okr/references/lark-okr-progress-update.md +85 -0
  283. package/skills/lark-okr/references/lark-okr-reorder.md +81 -0
  284. package/skills/lark-okr/references/lark-okr-weight.md +96 -0
  285. package/skills/lark-openapi-explorer/SKILL.md +153 -0
  286. package/skills/lark-shared/SKILL.md +211 -0
  287. package/skills/lark-shared/references/lark-wiki-token-routing.md +42 -0
  288. package/skills/lark-sheets/SKILL.md +234 -0
  289. package/skills/lark-sheets/references/lark-sheets-batch-update.md +200 -0
  290. package/skills/lark-sheets/references/lark-sheets-changeset.md +105 -0
  291. package/skills/lark-sheets/references/lark-sheets-chart.md +332 -0
  292. package/skills/lark-sheets/references/lark-sheets-conditional-format.md +181 -0
  293. package/skills/lark-sheets/references/lark-sheets-filter-view.md +137 -0
  294. package/skills/lark-sheets/references/lark-sheets-filter.md +130 -0
  295. package/skills/lark-sheets/references/lark-sheets-float-image.md +159 -0
  296. package/skills/lark-sheets/references/lark-sheets-formula-translation.md +276 -0
  297. package/skills/lark-sheets/references/lark-sheets-formula-verify.md +77 -0
  298. package/skills/lark-sheets/references/lark-sheets-history.md +93 -0
  299. package/skills/lark-sheets/references/lark-sheets-pivot-table.md +171 -0
  300. package/skills/lark-sheets/references/lark-sheets-range-operations.md +297 -0
  301. package/skills/lark-sheets/references/lark-sheets-read-data.md +235 -0
  302. package/skills/lark-sheets/references/lark-sheets-search-replace.md +111 -0
  303. package/skills/lark-sheets/references/lark-sheets-sheet-structure.md +212 -0
  304. package/skills/lark-sheets/references/lark-sheets-sparkline.md +149 -0
  305. package/skills/lark-sheets/references/lark-sheets-visual-standards.md +205 -0
  306. package/skills/lark-sheets/references/lark-sheets-workbook.md +420 -0
  307. package/skills/lark-sheets/references/lark-sheets-write-cells.md +575 -0
  308. package/skills/lark-sheets/scripts/sheets_df.py +32 -0
  309. package/skills/lark-skill-maker/SKILL.md +85 -0
  310. package/skills/lark-slides/SKILL.md +285 -0
  311. package/skills/lark-slides/references/asset-planning.md +135 -0
  312. package/skills/lark-slides/references/examples.md +91 -0
  313. package/skills/lark-slides/references/iconpark-index.json +41901 -0
  314. package/skills/lark-slides/references/iconpark.md +46 -0
  315. package/skills/lark-slides/references/lark-slides-create.md +156 -0
  316. package/skills/lark-slides/references/lark-slides-edit-workflows.md +144 -0
  317. package/skills/lark-slides/references/lark-slides-media-upload.md +127 -0
  318. package/skills/lark-slides/references/lark-slides-pptx-template-workflows.md +89 -0
  319. package/skills/lark-slides/references/lark-slides-replace-pages.md +95 -0
  320. package/skills/lark-slides/references/lark-slides-replace-slide.md +240 -0
  321. package/skills/lark-slides/references/lark-slides-screenshot.md +97 -0
  322. package/skills/lark-slides/references/lark-slides-whiteboard.md +331 -0
  323. package/skills/lark-slides/references/lark-slides-xml-get.md +100 -0
  324. package/skills/lark-slides/references/lark-slides-xml-presentation-slide-delete.md +125 -0
  325. package/skills/lark-slides/references/lark-slides-xml-presentation-slide-get.md +110 -0
  326. package/skills/lark-slides/references/lark-slides-xml-presentation-slide-replace.md +189 -0
  327. package/skills/lark-slides/references/lark-slides-xml-presentations-get.md +99 -0
  328. package/skills/lark-slides/references/planning-layer.md +246 -0
  329. package/skills/lark-slides/references/slide-templates.md +201 -0
  330. package/skills/lark-slides/references/slides_chart_demo.xml +1 -0
  331. package/skills/lark-slides/references/slides_demo.xml +226 -0
  332. package/skills/lark-slides/references/slides_xml_schema_definition.xml +3054 -0
  333. package/skills/lark-slides/references/troubleshooting.md +45 -0
  334. package/skills/lark-slides/references/validation-checklist.md +119 -0
  335. package/skills/lark-slides/references/visual-planning.md +255 -0
  336. package/skills/lark-slides/references/xml-format-guide.md +433 -0
  337. package/skills/lark-slides/references/xml-schema-quick-ref.md +249 -0
  338. package/skills/lark-slides/scripts/iconpark_tool.py +362 -0
  339. package/skills/lark-slides/scripts/iconpark_tool_test.py +177 -0
  340. package/skills/lark-slides/scripts/xml_text_overlap_lint.py +1220 -0
  341. package/skills/lark-slides/scripts/xml_text_overlap_lint_test.py +1170 -0
  342. package/skills/lark-task/SKILL.md +168 -0
  343. package/skills/lark-task/references/lark-task-assign.md +38 -0
  344. package/skills/lark-task/references/lark-task-comment.md +28 -0
  345. package/skills/lark-task/references/lark-task-complete.md +27 -0
  346. package/skills/lark-task/references/lark-task-create.md +70 -0
  347. package/skills/lark-task/references/lark-task-followers.md +35 -0
  348. package/skills/lark-task/references/lark-task-get-my-tasks.md +61 -0
  349. package/skills/lark-task/references/lark-task-get-related-tasks.md +53 -0
  350. package/skills/lark-task/references/lark-task-reminder.md +36 -0
  351. package/skills/lark-task/references/lark-task-reopen.md +27 -0
  352. package/skills/lark-task/references/lark-task-search.md +41 -0
  353. package/skills/lark-task/references/lark-task-set-ancestor.md +32 -0
  354. package/skills/lark-task/references/lark-task-tasklist-create.md +35 -0
  355. package/skills/lark-task/references/lark-task-tasklist-members.md +36 -0
  356. package/skills/lark-task/references/lark-task-tasklist-search.md +38 -0
  357. package/skills/lark-task/references/lark-task-tasklist-task-add.md +38 -0
  358. package/skills/lark-task/references/lark-task-update.md +37 -0
  359. package/skills/lark-task/references/lark-task-upload-attachment.md +59 -0
  360. package/skills/lark-vc/SKILL.md +205 -0
  361. package/skills/lark-vc/references/lark-vc-detail.md +44 -0
  362. package/skills/lark-vc/references/lark-vc-recording.md +152 -0
  363. package/skills/lark-vc/references/lark-vc-search.md +163 -0
  364. package/skills/lark-vc/references/vc-domain-boundaries.md +196 -0
  365. package/skills/lark-vc-agent/SKILL.md +201 -0
  366. package/skills/lark-vc-agent/references/lark-vc-agent-meeting-events.md +315 -0
  367. package/skills/lark-vc-agent/references/lark-vc-agent-meeting-join.md +141 -0
  368. package/skills/lark-vc-agent/references/lark-vc-agent-meeting-leave.md +105 -0
  369. package/skills/lark-vc-agent/references/lark-vc-agent-meeting-list-active.md +91 -0
  370. package/skills/lark-vc-agent/references/lark-vc-agent-meeting-message-send.md +134 -0
  371. package/skills/lark-whiteboard/SKILL.md +47 -0
  372. package/skills/lark-whiteboard/elements/connectors.md +102 -0
  373. package/skills/lark-whiteboard/elements/content.md +40 -0
  374. package/skills/lark-whiteboard/elements/image.md +80 -0
  375. package/skills/lark-whiteboard/elements/layout.md +374 -0
  376. package/skills/lark-whiteboard/elements/schema.md +357 -0
  377. package/skills/lark-whiteboard/elements/style.md +318 -0
  378. package/skills/lark-whiteboard/elements/typography.md +73 -0
  379. package/skills/lark-whiteboard/references/lark-whiteboard-query.md +60 -0
  380. package/skills/lark-whiteboard/references/lark-whiteboard-update.md +122 -0
  381. package/skills/lark-whiteboard/references/lark-whiteboard-workflow.md +97 -0
  382. package/skills/lark-whiteboard/routes/dsl.md +107 -0
  383. package/skills/lark-whiteboard/routes/mermaid.md +27 -0
  384. package/skills/lark-whiteboard/routes/svg-edit.md +85 -0
  385. package/skills/lark-whiteboard/routes/svg.md +54 -0
  386. package/skills/lark-whiteboard/scenes/architecture.md +433 -0
  387. package/skills/lark-whiteboard/scenes/bar-chart.md +187 -0
  388. package/skills/lark-whiteboard/scenes/comparison.md +135 -0
  389. package/skills/lark-whiteboard/scenes/fishbone.md +238 -0
  390. package/skills/lark-whiteboard/scenes/flowchart.md +185 -0
  391. package/skills/lark-whiteboard/scenes/flywheel.md +195 -0
  392. package/skills/lark-whiteboard/scenes/funnel.md +101 -0
  393. package/skills/lark-whiteboard/scenes/line-chart.md +214 -0
  394. package/skills/lark-whiteboard/scenes/mermaid.md +130 -0
  395. package/skills/lark-whiteboard/scenes/milestone.md +139 -0
  396. package/skills/lark-whiteboard/scenes/organization.md +173 -0
  397. package/skills/lark-whiteboard/scenes/photo-showcase.md +126 -0
  398. package/skills/lark-whiteboard/scenes/pyramid.md +99 -0
  399. package/skills/lark-whiteboard/scenes/swimlane.md +371 -0
  400. package/skills/lark-whiteboard/scenes/treemap.md +216 -0
  401. package/skills/lark-wiki/SKILL.md +114 -0
  402. package/skills/lark-wiki/references/lark-wiki-delete-space.md +205 -0
  403. package/skills/lark-wiki/references/lark-wiki-member-add.md +67 -0
  404. package/skills/lark-wiki/references/lark-wiki-member-list.md +76 -0
  405. package/skills/lark-wiki/references/lark-wiki-member-remove.md +61 -0
  406. package/skills/lark-wiki/references/lark-wiki-move-to-drive.md +122 -0
  407. package/skills/lark-wiki/references/lark-wiki-move.md +185 -0
  408. package/skills/lark-wiki/references/lark-wiki-node-copy.md +72 -0
  409. package/skills/lark-wiki/references/lark-wiki-node-create.md +127 -0
  410. package/skills/lark-wiki/references/lark-wiki-node-delete.md +62 -0
  411. package/skills/lark-wiki/references/lark-wiki-node-get.md +57 -0
  412. package/skills/lark-wiki/references/lark-wiki-node-list.md +95 -0
  413. package/skills/lark-wiki/references/lark-wiki-space-create.md +46 -0
  414. package/skills/lark-wiki/references/lark-wiki-space-list.md +68 -0
  415. package/skills/lark-workflow-meeting-summary/SKILL.md +122 -0
  416. package/skills/lark-workflow-standup-report/SKILL.md +122 -0
@@ -0,0 +1,527 @@
1
+ # Base field JSON SSOT
2
+
3
+ > 适用命令:`lark-cli base +field-create`、`lark-cli base +field-update`
4
+
5
+ 本文档定义 `+field-create` / `+field-update` 写字段时 `--json` 的推荐格式,是字段类型与字段 JSON 结构的 source of truth。目标不是复刻完整 schema,而是让 agent 稳定产出正确 payload。
6
+
7
+ ## 1. 顶层规则(必须遵守)
8
+
9
+ - `--json` 必须是 JSON 对象。
10
+ - 顶层统一使用:`type` + `name` + 类型特有字段。
11
+ - 所有字段类型都支持可选 `description`;支持纯文本,也支持 Markdown 链接。
12
+ - 字段默认值使用 `default_value`,直接传对应 CellValue;支持范围只有 `text`、`number`、静态 `select`、`datetime`、`user`。清空默认值传 `null`;省略表示创建时不设置、更新时不修改。
13
+ - 不要使用旧结构:`field_name`、`property`、`ui_type`、数字枚举 `type`。
14
+ - `+field-update` 使用同样的字段 JSON 结构,但语义是 `PUT`;这是高风险写入操作,建议先 `+field-get` 再按目标状态全量提交,并带 `--yes`。
15
+ - `type=formula` 或 `type=lookup` 创建/更新前,必须先读对应 guide。
16
+
17
+ 推荐示例:
18
+
19
+ ```json
20
+ {
21
+ "type": "text",
22
+ "name": "需求背景",
23
+ "description": "记录需求背景与已知约束"
24
+ }
25
+ ```
26
+
27
+ ## 2. 字段速查
28
+
29
+ | 类型 | 最小必填字段 | 常见补充字段 |
30
+ |------|--------------|-------------|
31
+ | `text` | `type` `name` | `style.type` `default_value` |
32
+ | `number` | `type` `name` | `style` `default_value` |
33
+ | `select` | `type` `name` | `multiple` + `options` + 静态 `default_value`,或 `multiple` + `dynamic_options_source` |
34
+ | `datetime` | `type` `name` | `style.format` `default_value` |
35
+ | `created_at` / `updated_at` | `type` `name` | `style.format` |
36
+ | `user` / `group_chat` | `type` `name` | `multiple`;仅 `user` 支持 `default_value` |
37
+ | `created_by` / `updated_by` | `type` `name` | 无 |
38
+ | `link` | `type` `name` `link_table` | `bidirectional` `bidirectional_link_field_name` |
39
+ | `formula` | `type` `name` `expression` | 无 |
40
+ | `lookup` | `type` `name` `from` `select` `where` | `aggregate` |
41
+ | `auto_number` | `type` `name` | `style.rules` |
42
+ | `attachment` / `location` / `checkbox` | `type` `name` | 无 |
43
+
44
+ 所有类型都可额外传 `description`;上表的“常见补充字段”只列类型特有配置。
45
+
46
+ ## 3. 各类型写法
47
+
48
+ ### 3.1 text
49
+
50
+ 文本字段;电话、超链接、邮箱、条码也都属于 `text`,通过 `style.type` 区分。
51
+ 支持 `default_value`:静态 Markdown 文本字符串;`phone` style 必须是合法电话号码;`url` style 传一个 Markdown 链接或裸 URL;`email` style 必须是合法邮箱字符串,不要传 Markdown 链接或 `mailto:`。
52
+
53
+ 最小写法(默认 `style.type` 为 `plain`):
54
+
55
+ ```json
56
+ {
57
+ "type": "text",
58
+ "name": "标题",
59
+ "default_value": "默认标题"
60
+ }
61
+ ```
62
+
63
+ 常用写法:
64
+
65
+ 默认值可以是 Markdown 文本
66
+ ```json
67
+ {
68
+ "type": "text",
69
+ "name": "标题",
70
+ "description": "主标题字段",
71
+ "default_value": "未命名"
72
+ }
73
+ ```
74
+
75
+ `style.type=phone` 时默认值是合法电话号码字符串。
76
+ ```json
77
+ {
78
+ "type": "text",
79
+ "name": "联系电话",
80
+ "style": { "type": "phone" },
81
+ "default_value": "+8613800000000"
82
+ }
83
+ ```
84
+
85
+ ```json
86
+ {
87
+ "type": "text",
88
+ "name": "官网",
89
+ "style": { "type": "url" },
90
+ "default_value": "[官网](https://example.com)"
91
+ }
92
+ ```
93
+
94
+ ```json
95
+ {
96
+ "type": "text",
97
+ "name": "邮箱",
98
+ "style": { "type": "email" },
99
+ "default_value": "owner@example.com"
100
+ }
101
+ ```
102
+
103
+ 常用 `style.type`:`plain`(默认)、`phone`、`url`、`email`、`barcode`。
104
+
105
+ ### 3.2 number
106
+
107
+ 数字字段;货币、进度、评分都属于 `number`,通过 `style.type` 区分。
108
+ 支持 `default_value`:静态 JSON number;所有 number style 都按这个规则写。
109
+
110
+ 最小写法(默认 `style.type` 为 `plain`):
111
+
112
+ ```json
113
+ {
114
+ "type": "number",
115
+ "name": "工时",
116
+ "default_value": 8
117
+ }
118
+ ```
119
+
120
+ `style` 是按 `type` 区分的对象;不同 `style.type` 的内部字段不一样,不要混传。
121
+
122
+ #### `plain`
123
+
124
+ 支持字段:`precision`、`percentage`、`thousands_separator`
125
+
126
+ 默认值 / 约束:
127
+ - `precision` 取值 `0..4`,默认 `2`
128
+ - `percentage` 默认 `false`
129
+ - `thousands_separator` 默认 `false`
130
+
131
+ ```json
132
+ {
133
+ "type": "number",
134
+ "name": "工时",
135
+ "style": {
136
+ "type": "plain",
137
+ "precision": 2,
138
+ "percentage": false,
139
+ "thousands_separator": true
140
+ },
141
+ "default_value": 8
142
+ }
143
+ ```
144
+
145
+ #### `currency`
146
+
147
+ 支持字段:`precision`、`currency_code`
148
+
149
+ 默认值 / 约束:
150
+ - `precision` 取值 `0..4`,默认 `2`
151
+ - `currency_code` 必填,如 `CNY`、`USD`、`EUR`
152
+
153
+ ```json
154
+ {
155
+ "type": "number",
156
+ "name": "预算",
157
+ "style": { "type": "currency", "precision": 2, "currency_code": "CNY" }
158
+ }
159
+ ```
160
+
161
+ #### `progress`
162
+
163
+ 支持字段:`percentage`、`color`
164
+
165
+ 默认值 / 约束:
166
+ - `percentage` 默认 `true`
167
+ - `color` 必填
168
+ - `color` 可用:`Blue`、`Purple`、`DarkGreen`、`Green`、`Cyan`、`Orange`、`Red`、`Gray`、`WhiteToBlueGradient`、`WhiteToPurpleGradient`、`WhiteToOrangeGradient`、`GreenToRedGradient`、`RedToGreenGradient`、`BlueToPinkGradient`、`PinkToBlueGradient`、`SpectralGradient`
169
+
170
+ ```json
171
+ {
172
+ "type": "number",
173
+ "name": "完成度",
174
+ "style": { "type": "progress", "percentage": true, "color": "Blue" },
175
+ "default_value": 0.65
176
+ }
177
+ ```
178
+
179
+ #### `rating`
180
+
181
+ 支持字段:`icon`、`min`、`max`
182
+
183
+ 默认值 / 约束:
184
+ - `icon` 默认 `star`
185
+ - `icon` 可用:`star`、`heart`、`thumbsup`、`fire`、`smile`、`lightning`、`flower`、`number`
186
+ - `min` 取值 `0..1`,默认 `1`
187
+ - `max` 取值 `1..10`,默认 `5`
188
+
189
+ ```json
190
+ {
191
+ "type": "number",
192
+ "name": "评分",
193
+ "style": { "type": "rating", "icon": "star", "min": 1, "max": 5 }
194
+ }
195
+ ```
196
+
197
+ ### 3.3 select
198
+
199
+ 单选和多选都使用 `select`;用 `multiple` 区分。`multiple` 默认 `false`。静态选项用 `options`,动态选项用 `dynamic_options_source`;两者不要同时传。
200
+
201
+ #### 静态选项
202
+
203
+ 支持字段:`multiple`、`options`
204
+ 支持 `default_value`:静态选项名数组;即使 `multiple=false` 也写数组,如 `["Todo"]`。
205
+
206
+ 默认值 / 约束:
207
+ - `multiple` 默认 `false`
208
+ - `options` 最多 `10000` 项
209
+ - `options[]` 结构是 `{name, hue?, lightness?}`
210
+ - `options[].name` 必填
211
+ - `options[].hue` 可用:`Red`、`Orange`、`Yellow`、`Lime`、`Green`、`Turquoise`、`Wathet`、`Blue`、`Carmine`、`Purple`、`Gray` 缺省值为 `Blue`
212
+ - `options[].lightness` 可用:`Lighter`、`Light`、`Standard`、`Dark`、`Darker` 缺省值为 `Lighter`
213
+ - 选项里没有 `id`,只有 `name`。
214
+ - 支持 `default_value` 配置:填选项名数组。
215
+
216
+ ```json
217
+ {
218
+ "type": "select",
219
+ "name": "状态",
220
+ "multiple": false,
221
+ "default_value": ["Todo"],
222
+ "options": [
223
+ { "name": "Todo", "hue": "Blue", "lightness": "Lighter" },
224
+ { "name": "Done", "hue": "Green", "lightness": "Light" }
225
+ ]
226
+ }
227
+ ```
228
+
229
+ #### 动态选项
230
+
231
+ 支持字段:`multiple`、`dynamic_options_source`
232
+ 动态选项不支持 `default_value`。
233
+
234
+ 默认值 / 约束:
235
+ - `multiple` 默认 `false`
236
+ - `dynamic_options_source` 结构是 `{table_id, field_id}`
237
+ - `dynamic_options_source.table_id` 填来源表 id 或表名
238
+ - `dynamic_options_source.field_id` 填来源字段 id 或字段名
239
+ - `dynamic_options_source` 仅创建支持;更新已有字段时不要传
240
+ - 引用选项条件 / 级联筛选条件:这个功能在 Base 前端支持,属于 UI-only 属性,OpenAPI 里不支持,CLI 不能读取、创建或更新;不要根据接口返回缺失判断未配置
241
+ - 动态选项不支持配置 `default_value`。
242
+
243
+ ```json
244
+ {
245
+ "type": "select",
246
+ "name": "动态状态",
247
+ "multiple": false,
248
+ "dynamic_options_source": {
249
+ "table_id": "选项表",
250
+ "field_id": "候选状态"
251
+ }
252
+ }
253
+ ```
254
+
255
+ ### 3.4 datetime
256
+
257
+ 手动填写的日期/时间字段。系统时间用 `created_at` / `updated_at`。
258
+ 支持 `default_value`:静态时间字符串,或 `{ "$slot": "record_created_time" }`。`datetime + record_created_time` 是自动填充可编辑单元格;`created_at` 是只读创建时间元信息。
259
+
260
+ 最小写法:
261
+
262
+ ```json
263
+ {
264
+ "type": "datetime",
265
+ "name": "截止时间",
266
+ "default_value": "2026-03-24 10:00:00"
267
+ }
268
+ ```
269
+
270
+ 支持字段:`style.format`
271
+
272
+ 默认值 / 约束:
273
+ - `style.format` 默认 `yyyy/MM/dd` 可用格式:`yyyy/MM/dd`、`yyyy/MM/dd HH:mm`、`yyyy/MM/dd HH:mm Z`、`yyyy-MM-dd`、`yyyy-MM-dd HH:mm`、`yyyy-MM-dd HH:mm Z`、`MM-dd`、`MM/dd/yyyy`、`dd/MM/yyyy`
274
+ - `style.format` 只控制前端显示格式;当前可配置格式最多显示到分钟,底层时间值仍可保留秒级精度。
275
+
276
+ 常用写法:
277
+
278
+ ```json
279
+ {
280
+ "type": "datetime",
281
+ "name": "截止时间",
282
+ "style": { "format": "yyyy-MM-dd HH:mm" },
283
+ "default_value": { "$slot": "record_created_time" }
284
+ }
285
+ ```
286
+
287
+ ### 3.5 created_at / updated_at
288
+
289
+ 系统创建时间 / 系统更新时间字段;可配显示格式,但记录写入时应视为只读。
290
+
291
+ 支持字段:`style.format`
292
+
293
+ 默认值 / 约束:
294
+ - `style.format` 默认 `yyyy/MM/dd`
295
+ - 可用格式:`yyyy/MM/dd`、`yyyy/MM/dd HH:mm`、`yyyy/MM/dd HH:mm Z`、`yyyy-MM-dd`、`yyyy-MM-dd HH:mm`、`yyyy-MM-dd HH:mm Z`、`MM-dd`、`MM/dd/yyyy`、`dd/MM/yyyy`
296
+
297
+ ```json
298
+ { "type": "created_at", "name": "创建时间" }
299
+ ```
300
+
301
+ ```json
302
+ { "type": "updated_at", "name": "更新时间", "style": { "format": "yyyy/MM/dd HH:mm" } }
303
+ ```
304
+
305
+ ### 3.6 user / group_chat
306
+
307
+ 人员字段和群字段都支持 `multiple`。
308
+ `user` 支持 `default_value`:人员 CellValue 数组,元素可用 `{ "id": "ou_xxx" }` 或 `{ "$slot": "current_user" }`;不要猜用户 ID。`group_chat` 不支持默认值。
309
+
310
+ 默认值 / 约束:
311
+ - `multiple` 默认 `true`
312
+ - `user` 字段支持 `default_value` 配置,`group_chat` 字段不支持 `default_value` 配置。
313
+
314
+ ```json
315
+ {
316
+ "type": "user",
317
+ "name": "负责人",
318
+ "multiple": true,
319
+ "default_value": [{ "$slot": "current_user" }, { "id": "ou_xxx" }]
320
+ }
321
+ ```
322
+
323
+ ```json
324
+ { "type": "group_chat", "name": "负责群", "multiple": true }
325
+ ```
326
+
327
+ ### 3.7 created_by / updated_by
328
+
329
+ 系统创建人 / 系统修改人字段;记录写入时应视为只读。
330
+
331
+ ```json
332
+ { "type": "created_by", "name": "创建人" }
333
+ ```
334
+
335
+ ```json
336
+ { "type": "updated_by", "name": "更新人" }
337
+ ```
338
+
339
+ ### 3.8 link
340
+
341
+ 关联字段;`link_table` 必填。
342
+
343
+ 支持字段:`link_table`、`bidirectional`、`bidirectional_link_field_name`
344
+
345
+ 默认值 / 约束:
346
+ - `link_table` 必填
347
+ - `link` 字段的单元格表示“当前记录关联到的对侧表记录集合”
348
+ - `bidirectional` 默认 `false`
349
+ - `bidirectional=true` 时,会在被关联表自动创建一个反向关联字段。任一侧记录的关联关系发生变更时,另一侧对应记录会自动同步更新
350
+ - `bidirectional_link_field_name` 仅在 `bidirectional=true` 时使用
351
+ - 关联字段筛选:这个功能在 Base 前端支持,属于 UI-only 属性,OpenAPI 里不支持,CLI 不能读取、创建或更新;不要根据接口返回缺失判断未配置
352
+
353
+ ```json
354
+ {
355
+ "type": "link",
356
+ "name": "关联任务",
357
+ "link_table": "任务表"
358
+ }
359
+ ```
360
+
361
+ 双向关联:
362
+
363
+ ```json
364
+ {
365
+ "type": "link",
366
+ "name": "关联任务",
367
+ "link_table": "任务表",
368
+ "bidirectional": true,
369
+ "bidirectional_link_field_name": "反向关联"
370
+ }
371
+ ```
372
+
373
+ 更新时注意:
374
+ - `link` 不允许转换为其他类型,其他类型也不能转换为 `link`。
375
+ - 现有 `link` 字段的 `bidirectional` 不能改。
376
+
377
+ ### 3.9 formula
378
+
379
+ 公式字段;`expression` 必填。创建/更新前先读 [formula-field-guide.md](formula-field-guide.md) 学习公式语法。
380
+
381
+ ```json
382
+ {
383
+ "type": "formula",
384
+ "name": "合计",
385
+ "expression": "1+1"
386
+ }
387
+ ```
388
+
389
+ ### 3.10 lookup
390
+
391
+ 查找引用字段;`from`、`select`、`where` 必填,`aggregate` 可选。创建/更新前先读 [lookup-field-guide.md](lookup-field-guide.md)。
392
+
393
+ 支持字段:`from`、`select`、`where`、`aggregate`
394
+
395
+ 默认值 / 约束:
396
+ - `from`、`select`、`where` 必填
397
+ - `aggregate` 默认 `raw_value` 代表不进行聚合,直接返回 select 回的原始值
398
+ - `aggregate` 可用:`raw_value`、`sum`、`average`、`counta`、`unique_counta`、`max`、`min`、`unique`
399
+ - `where.logic` 默认 `and`,仅支持 `and` / `or`
400
+ - `where.conditions` 至少 1 条
401
+ - `conditions` 每项是三元组 `[field, op, value?]`
402
+
403
+ ```json
404
+ {
405
+ "type": "lookup",
406
+ "name": "状态汇总",
407
+ "from": "任务表",
408
+ "select": "状态",
409
+ "where": {
410
+ "logic": "and",
411
+ "conditions": [
412
+ ["负责人", "==", { "type": "field_ref", "field": "当前负责人" }],
413
+ ["状态", "non_empty", null]
414
+ ]
415
+ },
416
+ "aggregate": "raw_value"
417
+ }
418
+ ```
419
+
420
+ ### 3.11 auto_number
421
+
422
+ 自动编号字段;不写 `style.rules` 时使用默认规则:`NO.001`。
423
+
424
+ 最小写法:
425
+
426
+ ```json
427
+ {
428
+ "type": "auto_number",
429
+ "name": "编号"
430
+ }
431
+ ```
432
+
433
+ 支持字段:`style.rules`
434
+
435
+ 默认值 / 约束:
436
+ - `style.rules` 是规则数组,数量 `1..9`
437
+ - 默认规则:
438
+
439
+ ```json
440
+ {
441
+ "style": {
442
+ "rules": [
443
+ { "type": "text", "text": "NO." },
444
+ { "type": "incremental_number", "length": 3 }
445
+ ]
446
+ }
447
+ }
448
+ ```
449
+
450
+ #### `text`
451
+
452
+ 支持字段:`text`
453
+
454
+ ```json
455
+ { "type": "text", "text": "TASK-" }
456
+ ```
457
+
458
+ #### `incremental_number`
459
+
460
+ 支持字段:`length`
461
+
462
+ 默认值 / 约束:
463
+ - `length` 取值 `1..9`
464
+
465
+ ```json
466
+ { "type": "incremental_number", "length": 4 }
467
+ ```
468
+
469
+ #### `created_time`
470
+
471
+ 支持字段:`date_format`
472
+
473
+ 默认值 / 约束:
474
+ - `date_format` 可用:`yyyyMMdd`、`yyyyMM`、`yyMM`、`MMdd`、`yyyy`、`MM`、`dd`
475
+
476
+ ```json
477
+ { "type": "created_time", "date_format": "yyyyMMdd" }
478
+ ```
479
+
480
+ 自定义规则:
481
+
482
+ ```json
483
+ {
484
+ "type": "auto_number",
485
+ "name": "编号",
486
+ "style": {
487
+ "rules": [
488
+ { "type": "text", "text": "TASK-" },
489
+ { "type": "created_time", "date_format": "yyyyMMdd" },
490
+ { "type": "incremental_number", "length": 4 }
491
+ ]
492
+ }
493
+ }
494
+ ```
495
+
496
+ ### 3.12 attachment / location / checkbox
497
+
498
+ ```json
499
+ { "type": "attachment", "name": "附件" }
500
+ ```
501
+
502
+ ```json
503
+ { "type": "location", "name": "位置" }
504
+ ```
505
+
506
+ 写入必须使用 `{lng,lat}`。location 读回会包含 `full_address`;筛选和 `location -> text` 类型转换按 `full_address` 字符串处理,只有公式能访问坐标。
507
+
508
+ ```json
509
+ { "type": "checkbox", "name": "完成" }
510
+ ```
511
+
512
+ ## 4. 创建与更新
513
+
514
+ - `+field-create`:按目标字段配置直接构造 `--json`。
515
+ - `+field-update`:使用同样的 JSON 结构,但语义是 `PUT`;建议先 `+field-get`,再按目标完整状态提交,并带 `--yes`。
516
+
517
+ ## 5. 暂不支持字段
518
+
519
+ Object(对象字段)、Button(按钮字段)、Stage(流程字段)暂时都没有被 CLI 支持。这些字段会展示为 `not_support` 字段并被保护:不允许修改,不允许读取内容。
520
+
521
+ ## 6. 易错点
522
+
523
+ - `select` 只有一个类型;不要写 `single_select` / `multi_select`,用 `multiple` 控制是否多选。
524
+ - `number` 的精度、货币、进度、评分配置都放在 `style` 下,不要写顶层 `precision`。
525
+ - `datetime` 是手动日期字段;系统时间请改用 `created_at` / `updated_at`。
526
+ - `formula` / `lookup` 没读 guide 前不要直接写。
527
+ - 只有 `text`、`number`、静态 `select`、`datetime`、`user` 支持 `default_value`;清空统一传 `"default_value": null`。其他字段类型不要配置默认值。
@@ -0,0 +1,173 @@
1
+ # base +field-update
2
+
3
+ > **前置条件:** 先阅读 [`../lark-shared/SKILL.md`](../../lark-shared/SKILL.md) 了解认证、全局参数和安全规则。
4
+
5
+ 更新一个已有字段。
6
+
7
+ ## 推荐命令
8
+
9
+ ```bash
10
+ lark-cli base +field-update \
11
+ --base-token <base_token> \
12
+ --table-id <table_id> \
13
+ --field-id <field_id> \
14
+ --json '{"name":"状态","type":"select","multiple":false,"default_value":["Doing"],"options":[{"name":"Todo","hue":"Blue","lightness":"Lighter"},{"name":"Doing","hue":"Orange","lightness":"Light"},{"name":"Done","hue":"Green","lightness":"Light"}]}' \
15
+ --yes
16
+
17
+ lark-cli base +field-update \
18
+ --base-token <base_token> \
19
+ --table-id <table_id> \
20
+ --field-id <field_id> \
21
+ --json '{"name":"负责人","type":"user","multiple":false,"default_value":null,"description":"用于标记记录的直接负责人"}' \
22
+ --yes
23
+ ```
24
+
25
+ ## 参数
26
+
27
+ | 参数 | 必填 | 说明 |
28
+ |------|------|------|
29
+ | `--base-token <token>` | 是 | Base Token |
30
+ | `--table-id <id_or_name>` | 是 | 表 ID 或表名 |
31
+ | `--field-id <id_or_name>` | 是 | 字段 ID 或字段名 |
32
+ | `--json <body>` | 是 | 字段属性 JSON 对象 |
33
+ | `--yes` | 是 | 确认执行高风险字段更新 |
34
+
35
+ > 这是**高风险写入操作**。`+field-update` 使用 `PUT` 全量字段定义语义;改变字段类型或关键配置可能影响整列已有数据的解释、展示或可用性。CLI 层要求显式传 `--yes`;如果用户已经明确目标和期望更新,可直接执行并带上 `--yes`。
36
+
37
+ ## API 入参详情
38
+
39
+ **HTTP 方法和路径:**
40
+
41
+ ```
42
+ PUT /open-apis/base/v3/bases/:base_token/tables/:table_id/fields/:field_id
43
+ ```
44
+
45
+ ## JSON 值规范
46
+
47
+ - `--json` 必须是 **JSON 对象**,顶层直接传字段定义。
48
+ - 更新语义是 `PUT`(全量字段配置更新),不要只传零散片段;至少显式包含 `name`、`type`,并补齐该类型所需关键配置。
49
+ - 所有字段类型都支持可选 `description`;支持纯文本,也支持 Markdown 链接。
50
+ - 需要字段默认值时传 `default_value`,直接使用字段对应 CellValue;传 `null` 清空,省略表示不修改现有默认值。完整规则见 [lark-base-field-json.md](lark-base-field-json.md)。
51
+ - `select` 更新时:`options` 仍按对象数组传,避免混入无效字段。
52
+ - `link` 更新限制:
53
+ - 不能把非 `link` 字段改成 `link`,也不能把 `link` 改成非 `link`。
54
+ - 现有 `link` 字段的 `bidirectional` 不能改。
55
+
56
+ **推荐更新示例**
57
+
58
+ ```json
59
+ {
60
+ "name": "状态",
61
+ "type": "select",
62
+ "multiple": false,
63
+ "default_value": ["Doing"],
64
+ "options": [
65
+ { "name": "Todo", "hue": "Blue", "lightness": "Lighter" },
66
+ { "name": "Doing", "hue": "Orange", "lightness": "Light" },
67
+ { "name": "Done", "hue": "Green", "lightness": "Light" }
68
+ ]
69
+ }
70
+ ```
71
+
72
+ **字段说明示例**
73
+
74
+ ```json
75
+ {
76
+ "name": "负责人",
77
+ "type": "user",
78
+ "multiple": false,
79
+ "description": "用于标记记录的直接负责人"
80
+ }
81
+ ```
82
+
83
+ ## 返回重点
84
+
85
+ - 返回 `field` 和 `updated: true`。
86
+
87
+ ## 工作流
88
+
89
+
90
+ 1. 建议先用 `+field-get` 拉现状,再做最小化修改。
91
+ 2. `formula/lookup` 类型更新前先阅读对应指南。
92
+ 3. 如果这次更新会改变字段 `type` 先按下方“字段类型变更规则”判断能否执行。如果不修改 `type`,大多数场景都相对安全。
93
+
94
+ ## 字段类型变更规则
95
+
96
+ 字段类型变更采用白名单机制:**只允许白名单转换**;未命中白名单时,**不建议用 CLI 转换字段类型** 除非用户明确知道风险并同意。
97
+
98
+ ### 允许直接转换 type
99
+
100
+ 先 `+field-get` / `+field-list` 看结构,再抽样读值;只有命中以下规则时,转换才是比较安全的。
101
+
102
+ #### 相对安全
103
+
104
+ | 目标类型 | 允许的源类型 | 说明 |
105
+ |------|------|------|
106
+ | `text` | `number`、`select`、`datetime`、`created_at`、`updated_at`、`location`(只保留 `full_address`)、`auto_number`、`checkbox` | 保留字符串表示;丢失原类型语义和结构化能力 |
107
+ | `number` | `text`、`number`、`datetime`、`created_at`、`updated_at`、`checkbox` | 保留可解析的数字值;无法解析的值会变空,原文本格式会丢失 |
108
+ | `datetime` | `text`、`number`、`datetime`、`created_at`、`updated_at` | 保留可解析的时间字符串和时间戳;无法解析的值会变空,原文本格式会丢失 |
109
+ | `select` | `text -> select`、`number -> select`、`single select -> multi select` | 只有完全匹配目标选项名的值会转成对应选项;没匹配上的值会被丢弃 |
110
+
111
+ #### 可执行但会截断 / 重算
112
+
113
+ - `select(multi) -> select(single)`: 只保留第一个值,其余值会被丢弃。
114
+ - `user(multi) -> user(single)`: 只保留第一个人员,其余值会被丢弃。
115
+ - `group_chat(multi) -> group_chat(single)`: 只保留第一个群,其余值会被丢弃。
116
+
117
+ #### 无状态字段可直接转换
118
+
119
+ - `created_at`、`created_by`、`updated_at`、`updated_by`、`formula`、`lookup`: 这类字段值由系统或计算逻辑生成,不承载独立存储数据;可以执行类型转换,不必担心破坏原始记录值,但仍要做下游读回验证。
120
+
121
+ ### 一律不要用 CLI 转换
122
+
123
+ 以下场景全部视为黑名单;默认要求用户改到 Web 页面手动完成,或改走“新建字段 + 数据迁移”。
124
+
125
+ - `any -> checkbox`
126
+ - `any -> user`
127
+ - `any -> group_chat`
128
+ - `any -> attachment`
129
+ - `any -> location`
130
+ - `link` 类型变更
131
+ - 任意涉及动态 / 静态选项来源切换的 `select` 类型变更
132
+
133
+ ### 可例外继续执行的场景
134
+
135
+ 只有在**整列数据丢失可接受**时,才允许对黑名单场景例外执行。
136
+
137
+ - `EmptyColumn`: 该列为空
138
+ - `FreshTableInit`: 新建空表初始化
139
+ - `PrimaryFieldBootstrap`: 主列不能删,只能更新完成初始化
140
+ - `ExplicitLossAccepted`: 用户明确接受整列数据丢失
141
+
142
+ 不满足以上条件时,不要转换。
143
+
144
+ ### 非白名单场景如何处理
145
+
146
+ - 命中白名单时:建议直接原地转换,再做读回验证。
147
+ - 未命中白名单时:先询问用户是否仍要执行转换,并明确说明风险:
148
+ - 无状态字段除外;这类字段可以直接转换
149
+ - 可能整列变空
150
+ - 可能只保留第一个值
151
+ - 可能只保留字符串表示,丢失原类型语义和结构化能力
152
+ - 可能影响视图 / 筛选 / 排序 / 公式 / lookup / 写入引用
153
+ - 如果用户不接受风险:不要执行转换。
154
+
155
+ ### 完成态验证
156
+
157
+ - `FieldReadback`: 读回字段结构,确认 `type` / `multiple` / `style` / `options`
158
+ - `ValueReadback`: 抽样读回转换后的单元格值
159
+ - `DownstreamReadback`: 若涉及看板 / 分组 / 排序 / lookup / 公式,继续读回结果
160
+ - `CompletionRule`: 结构、值、下游能力都正确,才能回复“已完成”
161
+
162
+ ## 坑点
163
+
164
+ - ⚠️ 这是全量字段属性更新语义,不是 patch。
165
+ - ⚠️ 这是高风险写入操作,执行时必须带 `--yes`。
166
+ - ⚠️ 当 `type` 是 `formula` 或 `lookup` 时,先阅读对应指南再执行。
167
+
168
+ ## 参考
169
+
170
+ - 更新前读取当前字段,确认现有 `type` 和具体配置细节,再决定是原地更新还是新建字段迁移。
171
+ - [lark-base-field-json.md](lark-base-field-json.md) — 字段 JSON 规范(推荐)
172
+ - [formula-field-guide.md](formula-field-guide.md) — formula 指南(更新公式前必读)
173
+ - [lookup-field-guide.md](lookup-field-guide.md) — lookup 指南(更新查找引用前必读)