@wagemule/daemon 0.1.2 → 0.1.3

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 (341) hide show
  1. package/README.md +9 -1
  2. package/dist/main.cjs +91 -32
  3. package/dist/main.cjs.map +2 -2
  4. package/dist/skills/larksuite/lark-approval/SKILL.md +56 -0
  5. package/dist/skills/larksuite/lark-attendance/SKILL.md +57 -0
  6. package/dist/skills/larksuite/lark-base/SKILL.md +349 -0
  7. package/dist/skills/larksuite/lark-base/references/dashboard-block-data-config.md +350 -0
  8. package/dist/skills/larksuite/lark-base/references/examples.md +140 -0
  9. package/dist/skills/larksuite/lark-base/references/formula-field-guide.md +735 -0
  10. package/dist/skills/larksuite/lark-base/references/lark-base-advperm-disable.md +83 -0
  11. package/dist/skills/larksuite/lark-base/references/lark-base-advperm-enable.md +80 -0
  12. package/dist/skills/larksuite/lark-base/references/lark-base-base-copy.md +74 -0
  13. package/dist/skills/larksuite/lark-base/references/lark-base-base-create.md +68 -0
  14. package/dist/skills/larksuite/lark-base/references/lark-base-base-get.md +39 -0
  15. package/dist/skills/larksuite/lark-base/references/lark-base-cell-value.md +151 -0
  16. package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-arrange.md +83 -0
  17. package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-block-create.md +108 -0
  18. package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-block-delete.md +46 -0
  19. package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-block-get.md +57 -0
  20. package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-block-list.md +53 -0
  21. package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-block-update.md +84 -0
  22. package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-create.md +73 -0
  23. package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-delete.md +44 -0
  24. package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-get.md +59 -0
  25. package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-list.md +52 -0
  26. package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-update.md +69 -0
  27. package/dist/skills/larksuite/lark-base/references/lark-base-dashboard.md +240 -0
  28. package/dist/skills/larksuite/lark-base/references/lark-base-data-analysis-sop.md +88 -0
  29. package/dist/skills/larksuite/lark-base/references/lark-base-data-query.md +451 -0
  30. package/dist/skills/larksuite/lark-base/references/lark-base-field-create.md +104 -0
  31. package/dist/skills/larksuite/lark-base/references/lark-base-field-delete.md +51 -0
  32. package/dist/skills/larksuite/lark-base/references/lark-base-field-get.md +42 -0
  33. package/dist/skills/larksuite/lark-base/references/lark-base-field-list.md +44 -0
  34. package/dist/skills/larksuite/lark-base/references/lark-base-field-search-options.md +48 -0
  35. package/dist/skills/larksuite/lark-base/references/lark-base-field-update.md +166 -0
  36. package/dist/skills/larksuite/lark-base/references/lark-base-field.md +23 -0
  37. package/dist/skills/larksuite/lark-base/references/lark-base-form-create.md +87 -0
  38. package/dist/skills/larksuite/lark-base/references/lark-base-form-delete.md +64 -0
  39. package/dist/skills/larksuite/lark-base/references/lark-base-form-get.md +68 -0
  40. package/dist/skills/larksuite/lark-base/references/lark-base-form-list.md +73 -0
  41. package/dist/skills/larksuite/lark-base/references/lark-base-form-questions-create.md +118 -0
  42. package/dist/skills/larksuite/lark-base/references/lark-base-form-questions-delete.md +68 -0
  43. package/dist/skills/larksuite/lark-base/references/lark-base-form-questions-list.md +84 -0
  44. package/dist/skills/larksuite/lark-base/references/lark-base-form-questions-update.md +92 -0
  45. package/dist/skills/larksuite/lark-base/references/lark-base-form-questions.md +23 -0
  46. package/dist/skills/larksuite/lark-base/references/lark-base-form-update.md +82 -0
  47. package/dist/skills/larksuite/lark-base/references/lark-base-form.md +24 -0
  48. package/dist/skills/larksuite/lark-base/references/lark-base-history.md +16 -0
  49. package/dist/skills/larksuite/lark-base/references/lark-base-record-batch-create.md +58 -0
  50. package/dist/skills/larksuite/lark-base/references/lark-base-record-batch-update.md +53 -0
  51. package/dist/skills/larksuite/lark-base/references/lark-base-record-delete.md +62 -0
  52. package/dist/skills/larksuite/lark-base/references/lark-base-record-history-list.md +86 -0
  53. package/dist/skills/larksuite/lark-base/references/lark-base-record-share-link-create.md +72 -0
  54. package/dist/skills/larksuite/lark-base/references/lark-base-record-upload-attachment.md +50 -0
  55. package/dist/skills/larksuite/lark-base/references/lark-base-record-upsert.md +64 -0
  56. package/dist/skills/larksuite/lark-base/references/lark-base-record.md +29 -0
  57. package/dist/skills/larksuite/lark-base/references/lark-base-role-create.md +89 -0
  58. package/dist/skills/larksuite/lark-base/references/lark-base-role-delete.md +83 -0
  59. package/dist/skills/larksuite/lark-base/references/lark-base-role-get.md +87 -0
  60. package/dist/skills/larksuite/lark-base/references/lark-base-role-list.md +81 -0
  61. package/dist/skills/larksuite/lark-base/references/lark-base-role-update.md +94 -0
  62. package/dist/skills/larksuite/lark-base/references/lark-base-shortcut-field-properties.md +481 -0
  63. package/dist/skills/larksuite/lark-base/references/lark-base-table-create.md +62 -0
  64. package/dist/skills/larksuite/lark-base/references/lark-base-table-delete.md +51 -0
  65. package/dist/skills/larksuite/lark-base/references/lark-base-table-get.md +46 -0
  66. package/dist/skills/larksuite/lark-base/references/lark-base-table-list.md +43 -0
  67. package/dist/skills/larksuite/lark-base/references/lark-base-table-update.md +49 -0
  68. package/dist/skills/larksuite/lark-base/references/lark-base-table.md +20 -0
  69. package/dist/skills/larksuite/lark-base/references/lark-base-view-create.md +50 -0
  70. package/dist/skills/larksuite/lark-base/references/lark-base-view-delete.md +48 -0
  71. package/dist/skills/larksuite/lark-base/references/lark-base-view-get-card.md +38 -0
  72. package/dist/skills/larksuite/lark-base/references/lark-base-view-get-filter.md +38 -0
  73. package/dist/skills/larksuite/lark-base/references/lark-base-view-get-group.md +38 -0
  74. package/dist/skills/larksuite/lark-base/references/lark-base-view-get-sort.md +38 -0
  75. package/dist/skills/larksuite/lark-base/references/lark-base-view-get-timebar.md +38 -0
  76. package/dist/skills/larksuite/lark-base/references/lark-base-view-get-visible-fields.md +28 -0
  77. package/dist/skills/larksuite/lark-base/references/lark-base-view-get.md +38 -0
  78. package/dist/skills/larksuite/lark-base/references/lark-base-view-list.md +44 -0
  79. package/dist/skills/larksuite/lark-base/references/lark-base-view-rename.md +44 -0
  80. package/dist/skills/larksuite/lark-base/references/lark-base-view-set-card.md +55 -0
  81. package/dist/skills/larksuite/lark-base/references/lark-base-view-set-filter.md +181 -0
  82. package/dist/skills/larksuite/lark-base/references/lark-base-view-set-group.md +65 -0
  83. package/dist/skills/larksuite/lark-base/references/lark-base-view-set-sort.md +63 -0
  84. package/dist/skills/larksuite/lark-base/references/lark-base-view-set-timebar.md +51 -0
  85. package/dist/skills/larksuite/lark-base/references/lark-base-view-set-visible-fields.md +46 -0
  86. package/dist/skills/larksuite/lark-base/references/lark-base-view.md +44 -0
  87. package/dist/skills/larksuite/lark-base/references/lark-base-workflow-create.md +180 -0
  88. package/dist/skills/larksuite/lark-base/references/lark-base-workflow-disable.md +94 -0
  89. package/dist/skills/larksuite/lark-base/references/lark-base-workflow-enable.md +94 -0
  90. package/dist/skills/larksuite/lark-base/references/lark-base-workflow-get.md +147 -0
  91. package/dist/skills/larksuite/lark-base/references/lark-base-workflow-guide.md +718 -0
  92. package/dist/skills/larksuite/lark-base/references/lark-base-workflow-list.md +124 -0
  93. package/dist/skills/larksuite/lark-base/references/lark-base-workflow-schema.md +935 -0
  94. package/dist/skills/larksuite/lark-base/references/lark-base-workflow-update.md +167 -0
  95. package/dist/skills/larksuite/lark-base/references/lark-base-workflow.md +23 -0
  96. package/dist/skills/larksuite/lark-base/references/lark-base-workspace.md +18 -0
  97. package/dist/skills/larksuite/lark-base/references/lookup-field-guide.md +510 -0
  98. package/dist/skills/larksuite/lark-base/references/role-config.md +539 -0
  99. package/dist/skills/larksuite/lark-calendar/SKILL.md +154 -0
  100. package/dist/skills/larksuite/lark-calendar/references/lark-calendar-agenda.md +78 -0
  101. package/dist/skills/larksuite/lark-calendar/references/lark-calendar-create.md +109 -0
  102. package/dist/skills/larksuite/lark-calendar/references/lark-calendar-freebusy.md +124 -0
  103. package/dist/skills/larksuite/lark-calendar/references/lark-calendar-room-find.md +113 -0
  104. package/dist/skills/larksuite/lark-calendar/references/lark-calendar-rsvp.md +42 -0
  105. package/dist/skills/larksuite/lark-calendar/references/lark-calendar-schedule-meeting.md +265 -0
  106. package/dist/skills/larksuite/lark-calendar/references/lark-calendar-suggestion.md +125 -0
  107. package/dist/skills/larksuite/lark-calendar/references/lark-calendar-update.md +105 -0
  108. package/dist/skills/larksuite/lark-contact/SKILL.md +45 -0
  109. package/dist/skills/larksuite/lark-contact/references/lark-contact-get-user.md +19 -0
  110. package/dist/skills/larksuite/lark-contact/references/lark-contact-search-user.md +124 -0
  111. package/dist/skills/larksuite/lark-doc/SKILL.md +69 -0
  112. package/dist/skills/larksuite/lark-doc/references/lark-doc-create.md +89 -0
  113. package/dist/skills/larksuite/lark-doc/references/lark-doc-fetch.md +141 -0
  114. package/dist/skills/larksuite/lark-doc/references/lark-doc-md.md +71 -0
  115. package/dist/skills/larksuite/lark-doc/references/lark-doc-media-download.md +50 -0
  116. package/dist/skills/larksuite/lark-doc/references/lark-doc-media-insert.md +114 -0
  117. package/dist/skills/larksuite/lark-doc/references/lark-doc-media-preview.md +41 -0
  118. package/dist/skills/larksuite/lark-doc/references/lark-doc-search.md +217 -0
  119. package/dist/skills/larksuite/lark-doc/references/lark-doc-update.md +252 -0
  120. package/dist/skills/larksuite/lark-doc/references/lark-doc-whiteboard.md +100 -0
  121. package/dist/skills/larksuite/lark-doc/references/lark-doc-xml.md +169 -0
  122. package/dist/skills/larksuite/lark-doc/references/style/lark-doc-create-workflow.md +56 -0
  123. package/dist/skills/larksuite/lark-doc/references/style/lark-doc-style.md +106 -0
  124. package/dist/skills/larksuite/lark-doc/references/style/lark-doc-update-workflow.md +54 -0
  125. package/dist/skills/larksuite/lark-drive/SKILL.md +343 -0
  126. package/dist/skills/larksuite/lark-drive/references/lark-drive-add-comment.md +169 -0
  127. package/dist/skills/larksuite/lark-drive/references/lark-drive-apply-permission.md +77 -0
  128. package/dist/skills/larksuite/lark-drive/references/lark-drive-create-folder.md +73 -0
  129. package/dist/skills/larksuite/lark-drive/references/lark-drive-create-shortcut.md +103 -0
  130. package/dist/skills/larksuite/lark-drive/references/lark-drive-delete.md +79 -0
  131. package/dist/skills/larksuite/lark-drive/references/lark-drive-download.md +31 -0
  132. package/dist/skills/larksuite/lark-drive/references/lark-drive-export-download.md +50 -0
  133. package/dist/skills/larksuite/lark-drive/references/lark-drive-export.md +119 -0
  134. package/dist/skills/larksuite/lark-drive/references/lark-drive-import.md +154 -0
  135. package/dist/skills/larksuite/lark-drive/references/lark-drive-move.md +120 -0
  136. package/dist/skills/larksuite/lark-drive/references/lark-drive-pull.md +137 -0
  137. package/dist/skills/larksuite/lark-drive/references/lark-drive-push.md +162 -0
  138. package/dist/skills/larksuite/lark-drive/references/lark-drive-reactions.md +113 -0
  139. package/dist/skills/larksuite/lark-drive/references/lark-drive-search.md +239 -0
  140. package/dist/skills/larksuite/lark-drive/references/lark-drive-status.md +137 -0
  141. package/dist/skills/larksuite/lark-drive/references/lark-drive-task-result.md +302 -0
  142. package/dist/skills/larksuite/lark-drive/references/lark-drive-upload.md +101 -0
  143. package/dist/skills/larksuite/lark-event/SKILL.md +145 -0
  144. package/dist/skills/larksuite/lark-event/references/lark-event-im.md +86 -0
  145. package/dist/skills/larksuite/lark-im/SKILL.md +162 -0
  146. package/dist/skills/larksuite/lark-im/references/lark-im-chat-create.md +162 -0
  147. package/dist/skills/larksuite/lark-im/references/lark-im-chat-identity.md +55 -0
  148. package/dist/skills/larksuite/lark-im/references/lark-im-chat-list.md +113 -0
  149. package/dist/skills/larksuite/lark-im/references/lark-im-chat-messages-list.md +142 -0
  150. package/dist/skills/larksuite/lark-im/references/lark-im-chat-search.md +136 -0
  151. package/dist/skills/larksuite/lark-im/references/lark-im-chat-update.md +84 -0
  152. package/dist/skills/larksuite/lark-im/references/lark-im-flag-cancel.md +67 -0
  153. package/dist/skills/larksuite/lark-im/references/lark-im-flag-create.md +67 -0
  154. package/dist/skills/larksuite/lark-im/references/lark-im-flag-list.md +100 -0
  155. package/dist/skills/larksuite/lark-im/references/lark-im-messages-mget.md +95 -0
  156. package/dist/skills/larksuite/lark-im/references/lark-im-messages-reply.md +222 -0
  157. package/dist/skills/larksuite/lark-im/references/lark-im-messages-resources-download.md +94 -0
  158. package/dist/skills/larksuite/lark-im/references/lark-im-messages-search.md +217 -0
  159. package/dist/skills/larksuite/lark-im/references/lark-im-messages-send.md +223 -0
  160. package/dist/skills/larksuite/lark-im/references/lark-im-reactions.md +297 -0
  161. package/dist/skills/larksuite/lark-im/references/lark-im-threads-messages-list.md +111 -0
  162. package/dist/skills/larksuite/lark-mail/SKILL.md +648 -0
  163. package/dist/skills/larksuite/lark-mail/references/lark-mail-decline-receipt.md +115 -0
  164. package/dist/skills/larksuite/lark-mail/references/lark-mail-draft-create.md +123 -0
  165. package/dist/skills/larksuite/lark-mail/references/lark-mail-draft-edit.md +400 -0
  166. package/dist/skills/larksuite/lark-mail/references/lark-mail-forward.md +232 -0
  167. package/dist/skills/larksuite/lark-mail/references/lark-mail-message.md +230 -0
  168. package/dist/skills/larksuite/lark-mail/references/lark-mail-messages.md +108 -0
  169. package/dist/skills/larksuite/lark-mail/references/lark-mail-reply-all.md +206 -0
  170. package/dist/skills/larksuite/lark-mail/references/lark-mail-reply.md +242 -0
  171. package/dist/skills/larksuite/lark-mail/references/lark-mail-send-receipt.md +120 -0
  172. package/dist/skills/larksuite/lark-mail/references/lark-mail-send.md +216 -0
  173. package/dist/skills/larksuite/lark-mail/references/lark-mail-share-to-chat.md +87 -0
  174. package/dist/skills/larksuite/lark-mail/references/lark-mail-signature.md +98 -0
  175. package/dist/skills/larksuite/lark-mail/references/lark-mail-template-create.md +129 -0
  176. package/dist/skills/larksuite/lark-mail/references/lark-mail-template-update.md +150 -0
  177. package/dist/skills/larksuite/lark-mail/references/lark-mail-thread.md +111 -0
  178. package/dist/skills/larksuite/lark-mail/references/lark-mail-triage.md +122 -0
  179. package/dist/skills/larksuite/lark-mail/references/lark-mail-watch.md +94 -0
  180. package/dist/skills/larksuite/lark-markdown/SKILL.md +46 -0
  181. package/dist/skills/larksuite/lark-markdown/references/lark-markdown-create.md +86 -0
  182. package/dist/skills/larksuite/lark-markdown/references/lark-markdown-fetch.md +79 -0
  183. package/dist/skills/larksuite/lark-markdown/references/lark-markdown-overwrite.md +85 -0
  184. package/dist/skills/larksuite/lark-minutes/SKILL.md +139 -0
  185. package/dist/skills/larksuite/lark-minutes/references/lark-minutes-download.md +137 -0
  186. package/dist/skills/larksuite/lark-minutes/references/lark-minutes-search.md +206 -0
  187. package/dist/skills/larksuite/lark-minutes/references/lark-minutes-upload.md +104 -0
  188. package/dist/skills/larksuite/lark-okr/SKILL.md +133 -0
  189. package/dist/skills/larksuite/lark-okr/references/lark-okr-contentblock.md +359 -0
  190. package/dist/skills/larksuite/lark-okr/references/lark-okr-cycle-detail.md +84 -0
  191. package/dist/skills/larksuite/lark-okr/references/lark-okr-cycle-list.md +90 -0
  192. package/dist/skills/larksuite/lark-okr/references/lark-okr-entities.md +329 -0
  193. package/dist/skills/larksuite/lark-okr/references/lark-okr-image-upload.md +116 -0
  194. package/dist/skills/larksuite/lark-okr/references/lark-okr-progress-create.md +81 -0
  195. package/dist/skills/larksuite/lark-okr/references/lark-okr-progress-delete.md +47 -0
  196. package/dist/skills/larksuite/lark-okr/references/lark-okr-progress-get.md +62 -0
  197. package/dist/skills/larksuite/lark-okr/references/lark-okr-progress-list.md +80 -0
  198. package/dist/skills/larksuite/lark-okr/references/lark-okr-progress-update.md +81 -0
  199. package/dist/skills/larksuite/lark-openapi-explorer/SKILL.md +153 -0
  200. package/dist/skills/larksuite/lark-shared/SKILL.md +138 -0
  201. package/dist/skills/larksuite/lark-sheets/SKILL.md +345 -0
  202. package/dist/skills/larksuite/lark-sheets/references/lark-sheets-cell-data.md +197 -0
  203. package/dist/skills/larksuite/lark-sheets/references/lark-sheets-cell-images.md +59 -0
  204. package/dist/skills/larksuite/lark-sheets/references/lark-sheets-cell-style-and-merge.md +141 -0
  205. package/dist/skills/larksuite/lark-sheets/references/lark-sheets-dropdown.md +133 -0
  206. package/dist/skills/larksuite/lark-sheets/references/lark-sheets-filter-views.md +193 -0
  207. package/dist/skills/larksuite/lark-sheets/references/lark-sheets-float-images.md +125 -0
  208. package/dist/skills/larksuite/lark-sheets/references/lark-sheets-formula.md +88 -0
  209. package/dist/skills/larksuite/lark-sheets/references/lark-sheets-row-column-management.md +151 -0
  210. package/dist/skills/larksuite/lark-sheets/references/lark-sheets-sheet-management.md +164 -0
  211. package/dist/skills/larksuite/lark-sheets/references/lark-sheets-spreadsheet-management.md +134 -0
  212. package/dist/skills/larksuite/lark-skill-maker/SKILL.md +85 -0
  213. package/dist/skills/larksuite/lark-slides/SKILL.md +525 -0
  214. package/dist/skills/larksuite/lark-slides/assets/templates/administration--all_hands_meeting.xml +1999 -0
  215. package/dist/skills/larksuite/lark-slides/assets/templates/administration--annual_gala.xml +1160 -0
  216. package/dist/skills/larksuite/lark-slides/assets/templates/administration--company_intro.xml +1376 -0
  217. package/dist/skills/larksuite/lark-slides/assets/templates/administration--corporate_culture.xml +1765 -0
  218. package/dist/skills/larksuite/lark-slides/assets/templates/hr--employee_training.xml +912 -0
  219. package/dist/skills/larksuite/lark-slides/assets/templates/hr--employee_training_workshop.xml +1504 -0
  220. package/dist/skills/larksuite/lark-slides/assets/templates/hr--onboarding.xml +933 -0
  221. package/dist/skills/larksuite/lark-slides/assets/templates/marketing--brand_communication.xml +1367 -0
  222. package/dist/skills/larksuite/lark-slides/assets/templates/marketing--brand_logo_design.xml +1347 -0
  223. package/dist/skills/larksuite/lark-slides/assets/templates/marketing--brand_operations_plan.xml +1309 -0
  224. package/dist/skills/larksuite/lark-slides/assets/templates/marketing--business_plan.xml +1646 -0
  225. package/dist/skills/larksuite/lark-slides/assets/templates/marketing--marketing_plan.xml +1469 -0
  226. package/dist/skills/larksuite/lark-slides/assets/templates/marketing--marketing_strategy.xml +1484 -0
  227. package/dist/skills/larksuite/lark-slides/assets/templates/marketing--product_whitepaper.xml +1455 -0
  228. package/dist/skills/larksuite/lark-slides/assets/templates/marketing--roadshow_business_plan.xml +1506 -0
  229. package/dist/skills/larksuite/lark-slides/assets/templates/misc--book_sharing.xml +1338 -0
  230. package/dist/skills/larksuite/lark-slides/assets/templates/misc--club_event_plan.xml +4885 -0
  231. package/dist/skills/larksuite/lark-slides/assets/templates/misc--student_career_plan.xml +1854 -0
  232. package/dist/skills/larksuite/lark-slides/assets/templates/office--dark_general.xml +3763 -0
  233. package/dist/skills/larksuite/lark-slides/assets/templates/office--dept_annual_report.xml +1192 -0
  234. package/dist/skills/larksuite/lark-slides/assets/templates/office--light_general.xml +3378 -0
  235. package/dist/skills/larksuite/lark-slides/assets/templates/office--project_kickoff.xml +3152 -0
  236. package/dist/skills/larksuite/lark-slides/assets/templates/office--quarterly_review.xml +1253 -0
  237. package/dist/skills/larksuite/lark-slides/assets/templates/office--work_report.xml +1099 -0
  238. package/dist/skills/larksuite/lark-slides/assets/templates/office--work_summary.xml +4420 -0
  239. package/dist/skills/larksuite/lark-slides/assets/templates/office--work_summary_report.xml +1523 -0
  240. package/dist/skills/larksuite/lark-slides/assets/templates/operations--brand_logo_design.xml +1347 -0
  241. package/dist/skills/larksuite/lark-slides/assets/templates/operations--brand_operations_plan.xml +1309 -0
  242. package/dist/skills/larksuite/lark-slides/assets/templates/operations--marketing_plan.xml +1469 -0
  243. package/dist/skills/larksuite/lark-slides/assets/templates/operations--product_promotion.xml +687 -0
  244. package/dist/skills/larksuite/lark-slides/assets/templates/personal--experience_sharing.xml +2242 -0
  245. package/dist/skills/larksuite/lark-slides/assets/templates/personal--personal_resume.xml +2047 -0
  246. package/dist/skills/larksuite/lark-slides/assets/templates/personal--promotion_defense.xml +1099 -0
  247. package/dist/skills/larksuite/lark-slides/assets/templates/personal--promotion_report.xml +1039 -0
  248. package/dist/skills/larksuite/lark-slides/assets/templates/personal--self_intro.xml +696 -0
  249. package/dist/skills/larksuite/lark-slides/assets/templates/personal--teaching_sharing.xml +3013 -0
  250. package/dist/skills/larksuite/lark-slides/assets/templates/product--business_case_analysis.xml +1341 -0
  251. package/dist/skills/larksuite/lark-slides/assets/templates/product--market_analysis.xml +898 -0
  252. package/dist/skills/larksuite/lark-slides/assets/templates/product--product_analysis.xml +1537 -0
  253. package/dist/skills/larksuite/lark-slides/assets/templates/product--product_intro.xml +2838 -0
  254. package/dist/skills/larksuite/lark-slides/assets/templates/product--product_promotion.xml +687 -0
  255. package/dist/skills/larksuite/lark-slides/assets/templates/product--product_promotion_2.xml +687 -0
  256. package/dist/skills/larksuite/lark-slides/references/examples.md +261 -0
  257. package/dist/skills/larksuite/lark-slides/references/lark-slides-create.md +137 -0
  258. package/dist/skills/larksuite/lark-slides/references/lark-slides-edit-workflows.md +142 -0
  259. package/dist/skills/larksuite/lark-slides/references/lark-slides-media-upload.md +128 -0
  260. package/dist/skills/larksuite/lark-slides/references/lark-slides-replace-slide.md +239 -0
  261. package/dist/skills/larksuite/lark-slides/references/lark-slides-xml-presentation-slide-create.md +221 -0
  262. package/dist/skills/larksuite/lark-slides/references/lark-slides-xml-presentation-slide-delete.md +123 -0
  263. package/dist/skills/larksuite/lark-slides/references/lark-slides-xml-presentation-slide-get.md +110 -0
  264. package/dist/skills/larksuite/lark-slides/references/lark-slides-xml-presentation-slide-replace.md +186 -0
  265. package/dist/skills/larksuite/lark-slides/references/lark-slides-xml-presentations-get.md +98 -0
  266. package/dist/skills/larksuite/lark-slides/references/slide-templates.md +201 -0
  267. package/dist/skills/larksuite/lark-slides/references/slides_demo.xml +226 -0
  268. package/dist/skills/larksuite/lark-slides/references/slides_xml_schema_definition.xml +3004 -0
  269. package/dist/skills/larksuite/lark-slides/references/template-catalog.md +464 -0
  270. package/dist/skills/larksuite/lark-slides/references/template-index.json +1853 -0
  271. package/dist/skills/larksuite/lark-slides/references/xml-format-guide.md +369 -0
  272. package/dist/skills/larksuite/lark-slides/references/xml-schema-quick-ref.md +215 -0
  273. package/dist/skills/larksuite/lark-slides/scripts/layout_lint.py +349 -0
  274. package/dist/skills/larksuite/lark-slides/scripts/layout_lint_test.py +159 -0
  275. package/dist/skills/larksuite/lark-slides/scripts/template_tool.py +970 -0
  276. package/dist/skills/larksuite/lark-slides/scripts/template_tool_test.py +177 -0
  277. package/dist/skills/larksuite/lark-task/SKILL.md +165 -0
  278. package/dist/skills/larksuite/lark-task/references/lark-task-assign.md +38 -0
  279. package/dist/skills/larksuite/lark-task/references/lark-task-comment.md +28 -0
  280. package/dist/skills/larksuite/lark-task/references/lark-task-complete.md +27 -0
  281. package/dist/skills/larksuite/lark-task/references/lark-task-create.md +57 -0
  282. package/dist/skills/larksuite/lark-task/references/lark-task-followers.md +35 -0
  283. package/dist/skills/larksuite/lark-task/references/lark-task-get-my-tasks.md +55 -0
  284. package/dist/skills/larksuite/lark-task/references/lark-task-get-related-tasks.md +53 -0
  285. package/dist/skills/larksuite/lark-task/references/lark-task-reminder.md +36 -0
  286. package/dist/skills/larksuite/lark-task/references/lark-task-reopen.md +27 -0
  287. package/dist/skills/larksuite/lark-task/references/lark-task-search.md +41 -0
  288. package/dist/skills/larksuite/lark-task/references/lark-task-set-ancestor.md +32 -0
  289. package/dist/skills/larksuite/lark-task/references/lark-task-subscribe-event.md +86 -0
  290. package/dist/skills/larksuite/lark-task/references/lark-task-tasklist-create.md +35 -0
  291. package/dist/skills/larksuite/lark-task/references/lark-task-tasklist-members.md +36 -0
  292. package/dist/skills/larksuite/lark-task/references/lark-task-tasklist-search.md +38 -0
  293. package/dist/skills/larksuite/lark-task/references/lark-task-tasklist-task-add.md +38 -0
  294. package/dist/skills/larksuite/lark-task/references/lark-task-update.md +37 -0
  295. package/dist/skills/larksuite/lark-task/references/lark-task-upload-attachment.md +59 -0
  296. package/dist/skills/larksuite/lark-vc/SKILL.md +168 -0
  297. package/dist/skills/larksuite/lark-vc/references/lark-vc-notes.md +126 -0
  298. package/dist/skills/larksuite/lark-vc/references/lark-vc-recording.md +153 -0
  299. package/dist/skills/larksuite/lark-vc/references/lark-vc-search.md +176 -0
  300. package/dist/skills/larksuite/lark-vc-agent/SKILL.md +121 -0
  301. package/dist/skills/larksuite/lark-vc-agent/references/lark-vc-agent-meeting-events.md +247 -0
  302. package/dist/skills/larksuite/lark-vc-agent/references/lark-vc-agent-meeting-join.md +133 -0
  303. package/dist/skills/larksuite/lark-vc-agent/references/lark-vc-agent-meeting-leave.md +111 -0
  304. package/dist/skills/larksuite/lark-whiteboard/SKILL.md +144 -0
  305. package/dist/skills/larksuite/lark-whiteboard/references/connectors.md +102 -0
  306. package/dist/skills/larksuite/lark-whiteboard/references/content.md +40 -0
  307. package/dist/skills/larksuite/lark-whiteboard/references/image.md +80 -0
  308. package/dist/skills/larksuite/lark-whiteboard/references/lark-whiteboard-query.md +49 -0
  309. package/dist/skills/larksuite/lark-whiteboard/references/lark-whiteboard-update.md +100 -0
  310. package/dist/skills/larksuite/lark-whiteboard/references/layout.md +374 -0
  311. package/dist/skills/larksuite/lark-whiteboard/references/schema.md +357 -0
  312. package/dist/skills/larksuite/lark-whiteboard/references/style.md +318 -0
  313. package/dist/skills/larksuite/lark-whiteboard/references/typography.md +73 -0
  314. package/dist/skills/larksuite/lark-whiteboard/routes/dsl.md +107 -0
  315. package/dist/skills/larksuite/lark-whiteboard/routes/mermaid.md +27 -0
  316. package/dist/skills/larksuite/lark-whiteboard/routes/svg.md +54 -0
  317. package/dist/skills/larksuite/lark-whiteboard/scenes/architecture.md +433 -0
  318. package/dist/skills/larksuite/lark-whiteboard/scenes/bar-chart.md +187 -0
  319. package/dist/skills/larksuite/lark-whiteboard/scenes/comparison.md +135 -0
  320. package/dist/skills/larksuite/lark-whiteboard/scenes/fishbone.md +238 -0
  321. package/dist/skills/larksuite/lark-whiteboard/scenes/flowchart.md +185 -0
  322. package/dist/skills/larksuite/lark-whiteboard/scenes/flywheel.md +195 -0
  323. package/dist/skills/larksuite/lark-whiteboard/scenes/funnel.md +101 -0
  324. package/dist/skills/larksuite/lark-whiteboard/scenes/line-chart.md +214 -0
  325. package/dist/skills/larksuite/lark-whiteboard/scenes/mermaid.md +130 -0
  326. package/dist/skills/larksuite/lark-whiteboard/scenes/milestone.md +139 -0
  327. package/dist/skills/larksuite/lark-whiteboard/scenes/organization.md +173 -0
  328. package/dist/skills/larksuite/lark-whiteboard/scenes/photo-showcase.md +126 -0
  329. package/dist/skills/larksuite/lark-whiteboard/scenes/pyramid.md +99 -0
  330. package/dist/skills/larksuite/lark-whiteboard/scenes/swimlane.md +371 -0
  331. package/dist/skills/larksuite/lark-whiteboard/scenes/treemap.md +216 -0
  332. package/dist/skills/larksuite/lark-wiki/SKILL.md +111 -0
  333. package/dist/skills/larksuite/lark-wiki/references/lark-wiki-delete-space.md +205 -0
  334. package/dist/skills/larksuite/lark-wiki/references/lark-wiki-move.md +183 -0
  335. package/dist/skills/larksuite/lark-wiki/references/lark-wiki-node-copy.md +72 -0
  336. package/dist/skills/larksuite/lark-wiki/references/lark-wiki-node-create.md +127 -0
  337. package/dist/skills/larksuite/lark-wiki/references/lark-wiki-node-list.md +88 -0
  338. package/dist/skills/larksuite/lark-wiki/references/lark-wiki-space-list.md +68 -0
  339. package/dist/skills/larksuite/lark-workflow-meeting-summary/SKILL.md +104 -0
  340. package/dist/skills/larksuite/lark-workflow-standup-report/SKILL.md +120 -0
  341. package/package.json +2 -1
@@ -0,0 +1,239 @@
1
+ # slides +replace-slide(块级替换 / 插入)
2
+
3
+ > **前置条件:** 先阅读 [`../lark-shared/SKILL.md`](../../lark-shared/SKILL.md) 了解认证、全局参数和安全规则。
4
+
5
+ 对指定 slide 做块级替换或插入。编辑已有 PPT 的主路径——`slide_id` 不变、页序不动、只影响被指定的块。
6
+
7
+ 相比直接调 `xml_presentation.slide.replace`,这个 shortcut 的四个额外价值:
8
+
9
+ 1. `--presentation` 接受 `xml_presentation_id` / `/slides/` URL / `/wiki/` URL(wiki 自动解析);
10
+ 2. `block_replace` 的 `replacement` 根元素 `id="<block_id>"` 由 CLI 自动注入——底层 API 的硬约束(不注入返回 3350001);直接调原生 API 需自己加,用 Shortcut 则自动注入;
11
+ 3. `<shape>` 元素缺少 `<content/>` 子元素时由 CLI 自动注入——SML 2.0 schema 要求每个 `<shape>` 必须有 `<content/>` 子元素,缺失同样触发 3350001;自闭合的 `<shape .../>` 也会被自动展开为 `<shape ...><content/></shape>`;
12
+ 4. 3350001 错误时提供上下文感知的 hint,帮助 AI agent 和用户快速定位原因。
13
+
14
+ ## 命令
15
+
16
+ ```bash
17
+ # block_insert:在页末追加一个新元素
18
+ lark-cli slides +replace-slide --as user \
19
+ --presentation slidesXXXXXXXXXXXXXXXXXXXXXX \
20
+ --slide-id pfG \
21
+ --parts '[{"action":"block_insert","insertion":"<shape type=\"rect\" topLeftX=\"500\" topLeftY=\"100\" width=\"200\" height=\"100\"/>"}]'
22
+
23
+ # block_replace:已知某块 id,整块替换(replacement 根 id 自动注入为 bUn)
24
+ lark-cli slides +replace-slide --as user \
25
+ --presentation slidesXXXXXXXXXXXXXXXXXXXXXX \
26
+ --slide-id pfG \
27
+ --parts '[{"action":"block_replace","block_id":"bUn","replacement":"<shape type=\"text\" topLeftX=\"80\" topLeftY=\"80\" width=\"800\" height=\"120\"><content textType=\"title\"><p>新标题</p></content></shape>"}]'
28
+
29
+ # 大 --parts 走文件或 stdin(auto-gen 命令不支持 @file,但 shortcut 支持)
30
+ lark-cli slides +replace-slide --as user \
31
+ --presentation $PID --slide-id $SID --parts @parts.json
32
+ cat parts.json | lark-cli slides +replace-slide --as user \
33
+ --presentation $PID --slide-id $SID --parts -
34
+
35
+ # wiki URL 直接传(CLI 自动 get_node → 拿真实 xml_presentation_id)
36
+ lark-cli slides +replace-slide --as user \
37
+ --presentation "https://xxx.feishu.cn/wiki/wikcnXXXXXX" --slide-id pfG \
38
+ --parts '[{"action":"block_insert","insertion":"<shape type=\"rect\" width=\"100\" height=\"100\"/>"}]'
39
+
40
+ # 预览(不实际调用)
41
+ lark-cli slides +replace-slide --as user \
42
+ --presentation $PID --slide-id $SID --parts "$PARTS" --dry-run
43
+ ```
44
+
45
+ ## 参数
46
+
47
+ | 参数 | 必填 | 说明 |
48
+ |------|------|------|
49
+ | `--presentation` | 是 | `xml_presentation_id`、`/slides/<token>` URL,或 `/wiki/<token>` URL |
50
+ | `--slide-id` | 是 | 页面 ID(`xml_presentation.slide.get` / `xml_presentations.get` 都能拿到) |
51
+ | `--parts` | 是 | JSON 数组(`[{...}, ...]`),单次最多 200 条。支持 `@<file>` 和 `-`(stdin)读取 |
52
+ | `--revision-id` | 否 | 基础版本号;默认 `-1` 表示基于最新版执行;传具体版本号时,服务端以该版本为 base 执行;**传不存在的版本号(超过当前 revision)返回 3350002** |
53
+ | `--tid` | 否 | 并发事务 ID;多人协作长事务才用,单次单人调用留空 |
54
+
55
+ ## parts 元素结构
56
+
57
+ > **限制**:最多 200 条;`block_replace` 和 `block_insert` 可以在同一批次混用。**其他 action(含 `str_replace`)CLI 会直接报错拒绝**。
58
+
59
+ 每条 part 按 `action` 取不同字段:
60
+
61
+ ### action = `block_replace`
62
+
63
+ | 字段 | 必填 | 说明 |
64
+ |------|------|------|
65
+ | `action` | 是 | `"block_replace"` |
66
+ | `block_id` | 是 | 目标块的 3 位 short element ID(从 `slide.get` 返回 XML 里读) |
67
+ | `replacement` | 是 | 新 XML 片段;**根元素 `id` 会被 CLI 自动注入为 `block_id`**,用户不用自己加(如果已经加了且不一致会被覆盖为正确值) |
68
+
69
+ ### action = `block_insert`
70
+
71
+ | 字段 | 必填 | 说明 |
72
+ |------|------|------|
73
+ | `action` | 是 | `"block_insert"` |
74
+ | `insertion` | 是 | 要插入的 XML 片段 |
75
+ | `insert_before_block_id` | 否 | 插到这个块之前;省略(不提供此字段)则追加到页末 |
76
+
77
+ ## 合法根元素速查
78
+
79
+ `block_replace.replacement` 和 `block_insert.insertion` 必须以 SML 2.0 定义的合法元素为根。完整权威定义看 [`slides_xml_schema_definition.xml`](slides_xml_schema_definition.xml);这里只列能作为**根**的类型 + 每种类型的最小可工作片段。
80
+
81
+ | 元素 | 用途 | 关键点 |
82
+ |---|---|---|
83
+ | `<shape>` | 矩形/椭圆/三角/文本框等所有形状 | `type` 必填;`<content/>` 缺失时 CLI 会自动注入 |
84
+ | `<line>` | 直线 | 需 `startX/startY/endX/endY` |
85
+ | `<polyline>` | 折线 | `points` 读回时被服务端规整丢弃(几何已入库) |
86
+ | `<img>` | 图片 | `src` 必须是 [`+media-upload`](lark-slides-media-upload.md) 返回的 `file_token`,不能是 URL |
87
+ | `<icon>` | 图标 | `iconType` 取自 iconpark 资源 |
88
+ | `<table>` | 表格 | 整表替换会**重建内部 td id**,旧 td block_id 立即失效 |
89
+ | `<td>` | 单元格局部替换 | 只能 `block_replace`,不能 `block_insert`;`block_id` 必须是最新 `slide.get` 拿到的 td id |
90
+ | `<chart>` | 图表(line/bar/column/pie/area/radar/combo) | 必须嵌 `<chartPlotArea>` + `<chartData>` + `<dim1>/<dim2>/<chartField>` |
91
+
92
+ **不可作为根元素**:
93
+
94
+ - `<video>` / `<audio>` / `<whiteboard>` —— SML 2.0 没有这三个原生元素;`<undefined type="video|audio|whiteboard">` 是**导出时**的占位符(服务端遇到不支持的类型时用它代替),**不能写入**。尝试 insert/replace 都会返回 3350001。
95
+
96
+ ### 最小 XML 片段(JSON 嵌入时记得把 `"` 转义成 `\"`)
97
+
98
+ `<shape>`(文本框;`type` 还可选 `rect`/`ellipse`/`triangle`/`custom` 等):
99
+ ```xml
100
+ <shape type="text" topLeftX="80" topLeftY="80" width="800" height="120">
101
+ <content textType="title"><p>标题</p></content>
102
+ </shape>
103
+ ```
104
+
105
+ `<img>`:
106
+ ```xml
107
+ <img src="{file_token}" topLeftX="600" topLeftY="20" width="80" height="80"/>
108
+ ```
109
+
110
+ `<polyline>`:
111
+ ```xml
112
+ <polyline topLeftX="10" topLeftY="10" width="100" height="50" points="0,0 50,50 100,0"/>
113
+ ```
114
+
115
+ `<table>`(2×2):
116
+ ```xml
117
+ <table topLeftX="30" topLeftY="80">
118
+ <colgroup><col span="2" width="110"/></colgroup>
119
+ <tr><td><content><p>A</p></content></td><td><content><p>B</p></content></td></tr>
120
+ <tr><td><content><p>C</p></content></td><td><content><p>D</p></content></td></tr>
121
+ </table>
122
+ ```
123
+
124
+ `<td>`(`block_replace` 单元格;`block_id` 必须是最新 `slide.get` 拿到的 td id):
125
+ ```xml
126
+ <td><content><p>新内容</p></content></td>
127
+ ```
128
+
129
+ `<chart>`(`type` 改成 `bar`/`column`/`pie`/`area`/`radar`/`combo` 切换图型):
130
+ ```xml
131
+ <chart topLeftX="30" topLeftY="300" width="300" height="200">
132
+ <chartPlotArea><chartPlot type="line"/></chartPlotArea>
133
+ <chartData>
134
+ <dim1><chartField name="x" valueType="string">Q1,Q2,Q3,Q4</chartField></dim1>
135
+ <dim2><chartField name="Sales" valueType="number">10,20,15,30</chartField></dim2>
136
+ </chartData>
137
+ </chart>
138
+ ```
139
+
140
+ ## 返回值
141
+
142
+ ```json
143
+ {
144
+ "xml_presentation_id": "slidesXXXXXXXXXXXXXXXXXXXXXX",
145
+ "slide_id": "pfG",
146
+ "parts_count": 1,
147
+ "revision_id": 102
148
+ }
149
+ ```
150
+
151
+ | 字段 | 说明 |
152
+ |------|------|
153
+ | `xml_presentation_id` | 解析后的真实 token(wiki URL 解析后会变化) |
154
+ | `slide_id` | 与入参一致 |
155
+ | `parts_count` | 本次提交的 parts 条数 |
156
+ | `revision_id` | 成功后的新版本号,下次做乐观锁时用 |
157
+ | `failed_part_index` | 有部分失败时存在,指向第几条 part 失败 |
158
+ | `failed_reason` | 失败原因文字描述 |
159
+
160
+ 整批作为原子事务:任一 part 失败则整批不生效,服务端通过 `failed_part_index` / `failed_reason` 告诉你是哪条;按此定位修正后重发。
161
+
162
+ ## 使用流程
163
+
164
+ ### 给已有页加图(典型场景)
165
+
166
+ ```bash
167
+ PID=xxx
168
+ SID=yyy
169
+
170
+ # 1) 上传图片
171
+ TOKEN=$(lark-cli slides +media-upload --as user \
172
+ --file ./pic.png --presentation "$PID" | jq -r '.data.file_token')
173
+
174
+ # 2) block_insert 到页末
175
+ lark-cli slides +replace-slide --as user \
176
+ --presentation "$PID" --slide-id "$SID" \
177
+ --parts "$(jq -n --arg token "$TOKEN" \
178
+ '[{action:"block_insert",insertion:("<img src=\""+$token+"\" topLeftX=\"500\" topLeftY=\"100\" width=\"200\" height=\"150\"/>")}]')"
179
+ ```
180
+
181
+ ### 改标题(block_replace)
182
+
183
+ ```bash
184
+ # 先拿原页 XML,从里面找到标题块的 3 位 short id(如 bUn)
185
+ lark-cli slides xml_presentation.slide get --as user \
186
+ --params "{\"xml_presentation_id\":\"$PID\",\"slide_id\":\"$SID\"}"
187
+
188
+ # block_replace 换掉整个标题块(id 自动注入)
189
+ lark-cli slides +replace-slide --as user \
190
+ --presentation "$PID" --slide-id "$SID" \
191
+ --parts '[{"action":"block_replace","block_id":"bUn","replacement":"<shape type=\"text\" topLeftX=\"80\" topLeftY=\"80\" width=\"800\" height=\"120\"><content textType=\"title\"><p>新标题</p></content></shape>"}]'
192
+ ```
193
+
194
+ ### 批量:一次换标题 + 追加装饰图
195
+
196
+ `block_replace` 和 `block_insert` 可以在同一个 `--parts` 里混用,整批原子执行。
197
+
198
+ ```bash
199
+ lark-cli slides +replace-slide --as user \
200
+ --presentation "$PID" --slide-id "$SID" \
201
+ --parts '[
202
+ {"action":"block_replace","block_id":"bab","replacement":"<shape type=\"text\" topLeftX=\"80\" topLeftY=\"80\" width=\"800\" height=\"120\"><content textType=\"title\"><p>新标题</p></content></shape>"},
203
+ {"action":"block_insert","insertion":"<img src=\"<file_token>\" topLeftX=\"700\" topLeftY=\"400\" width=\"180\" height=\"100\"/>"}
204
+ ]'
205
+ ```
206
+
207
+ ### 乐观锁
208
+
209
+ ```bash
210
+ # 读时记录 revision_id
211
+ REV=$(lark-cli slides xml_presentation.slide get --as user \
212
+ --params "{\"xml_presentation_id\":\"$PID\",\"slide_id\":\"$SID\"}" \
213
+ | jq '.data.revision_id')
214
+
215
+ # 写时传 --revision-id;传不存在的版本号(超过当前 revision)返回 3350002
216
+ lark-cli slides +replace-slide --as user \
217
+ --presentation "$PID" --slide-id "$SID" --revision-id "$REV" \
218
+ --parts "$PARTS"
219
+ ```
220
+
221
+ ## 常见错误
222
+
223
+ | 现象 | 原因 | 对策 |
224
+ |------|------|------|
225
+ | 3350001 + hint "block_id not found" | `parts[i].block_id` 在当前页不存在 | 重新 `slide.get` 拿最新 XML,按里面的 short ID 再填 |
226
+ | 3350002 not found | `--revision-id` 传了不存在的版本号(超过当前 revision) | 用 `-1` 或用 `slide.get` 拿到的有效 `revision_id` |
227
+ | `--parts[i] action "str_replace" is not supported` | CLI 不暴露 `str_replace` | 把替换需求改写成 `block_replace` / `block_insert` |
228
+ | `--parts contains N items, exceeds maximum of 200` | 一次提交 parts 太多 | 拆多次调用 |
229
+ | `--parts[i] (block_replace) requires non-empty block_id` / `replacement` | 字段缺失 | 按 parts 元素结构补齐 |
230
+ | `<img>` 不显示 / 显示破图 | `src` 写了外链 URL | 换成通过 [`+media-upload`](lark-slides-media-upload.md) 拿到的 `file_token` |
231
+ | 3350001 | `replacement` 不是合法单根 XML 片段,或 `block_id` 不存在 | CLI 已自动注入 `id` 和 `<content/>`;如果仍报错,重新 `slide.get` 拿最新 XML 确认 `block_id` 存在;检查 XML 结构是否合法;坐标是否超出 960×540 |
232
+ | 403 | 权限不足 | 需要 `slides:presentation:update` 或 `slides:presentation:write_only`;wiki URL 还需要 `wiki:node:read` |
233
+
234
+ ## 相关命令
235
+
236
+ - [xml_presentation.slide get](lark-slides-xml-presentation-slide-get.md) — 读原页拿 `block_id` / `revision_id`
237
+ - [xml_presentation.slide replace](lark-slides-xml-presentation-slide-replace.md) — 底层 replace API 参考
238
+ - [+media-upload](lark-slides-media-upload.md) — 上传图片拿 `file_token`
239
+ - [lark-slides-edit-workflows.md](lark-slides-edit-workflows.md) — 读-改-写闭环 + 决策树
@@ -0,0 +1,221 @@
1
+ # lark-slides xml_presentation.slide create
2
+
3
+ ## 用途
4
+
5
+ 在指定的 XML 演示文稿中创建新的幻灯片页面,通常用于给 `slides +create` 创建出的空白 PPT 逐页补充内容。
6
+
7
+ ## 命令
8
+
9
+ ```bash
10
+ lark-cli slides xml_presentation.slide create --as user --params '<json_params>' --data '<json_data>'
11
+ ```
12
+
13
+ ## 参数说明
14
+
15
+ | 参数 | 类型 | 必需 | 说明 |
16
+ |------|------|------|------|
17
+ | `--params` | JSON string | 是 | 路径参数与查询参数 |
18
+ | `--data` | JSON string | 是 | 请求体,包含新页面内容 |
19
+
20
+ ### params JSON 结构
21
+
22
+ ```json
23
+ {
24
+ "xml_presentation_id": "slides_example_presentation_id",
25
+ "revision_id": -1,
26
+ "tid": "idMock"
27
+ }
28
+ ```
29
+
30
+ | 字段 | 类型 | 必需 | 说明 |
31
+ |------|------|------|------|
32
+ | `xml_presentation_id` | string | 是 | 目标演示文稿的唯一标识符 |
33
+ | `revision_id` | integer | 否 | 演示文稿版本号,`-1` 表示最新版本 |
34
+ | `tid` | string | 否 | 锁的事务 ID |
35
+
36
+ ### data JSON 结构
37
+
38
+ ```json
39
+ {
40
+ "slide": {
41
+ "slide_id": "slide_example_id",
42
+ "content": "<slide xmlns=\"http://www.larkoffice.com/sml/2.0\">...</slide>"
43
+ },
44
+ "before_slide_id": "slide_before_target"
45
+ }
46
+ ```
47
+
48
+ | 字段 | 类型 | 必需 | 说明 |
49
+ |------|------|------|------|
50
+ | `slide.slide_id` | string | 否 | 幻灯片页面 short ID |
51
+ | `slide.content` | string | 否 | 新幻灯片的 XML 内容 |
52
+ | `before_slide_id` | string | 否 | 插入到指定页面之前 |
53
+
54
+ ## slide XML 结构
55
+
56
+ `slide.content` 是一个完整的 `<slide>` 元素,遵循 SML 2.0 Schema:
57
+
58
+ ```xml
59
+ <slide xmlns="http://www.larkoffice.com/sml/2.0">
60
+ <data>
61
+ <shape type="text" topLeftX="80" topLeftY="80" width="800" height="120">
62
+ <content textType="title">
63
+ <p>标题</p>
64
+ </content>
65
+ </shape>
66
+ </data>
67
+ </slide>
68
+ ```
69
+
70
+ 详细格式请参考 [xml-format-guide.md](xml-format-guide.md) 和 [xml-schema-quick-ref.md](xml-schema-quick-ref.md)。
71
+
72
+ ## 使用示例
73
+
74
+ ### 在末尾添加幻灯片
75
+
76
+ ```bash
77
+ lark-cli slides xml_presentation.slide create --as user --params '{
78
+ "xml_presentation_id": "slides_example_presentation_id"
79
+ }' --data '{
80
+ "slide": {
81
+ "content": "<slide xmlns=\"http://www.larkoffice.com/sml/2.0\"><data><shape type=\"text\" topLeftX=\"80\" topLeftY=\"80\" width=\"800\" height=\"120\"><content textType=\"title\"><p>新页面标题</p></content></shape><shape type=\"text\" topLeftX=\"80\" topLeftY=\"200\" width=\"800\" height=\"180\"><content textType=\"body\"><p>内容文本</p></content></shape></data></slide>"
82
+ }
83
+ }'
84
+ ```
85
+
86
+ ### 在指定页面前插入幻灯片
87
+
88
+ ```bash
89
+ lark-cli slides xml_presentation.slide create --as user --params '{
90
+ "xml_presentation_id": "slides_example_presentation_id"
91
+ }' --data '{
92
+ "slide": {
93
+ "content": "<slide xmlns=\"http://www.larkoffice.com/sml/2.0\"><data><shape type=\"text\" topLeftX=\"80\" topLeftY=\"80\" width=\"800\" height=\"120\"><content textType=\"title\"><p>插入的标题页</p></content></shape></data></slide>"
94
+ },
95
+ "before_slide_id": "slide_before_target"
96
+ }'
97
+ ```
98
+
99
+ ### 带图形元素的幻灯片
100
+
101
+ ```bash
102
+ lark-cli slides xml_presentation.slide create --as user --params '{
103
+ "xml_presentation_id": "slides_example_presentation_id"
104
+ }' --data '{
105
+ "slide": {
106
+ "content": "<slide xmlns=\"http://www.larkoffice.com/sml/2.0\"><data><shape type=\"text\" topLeftX=\"80\" topLeftY=\"80\" width=\"520\" height=\"120\"><content textType=\"title\"><p>数据展示</p></content></shape><shape type=\"rect\" topLeftX=\"700\" topLeftY=\"100\" width=\"200\" height=\"150\"><fill><fillColor color=\"rgb(100, 149, 237)\"/></fill></shape></data></slide>"
107
+ }
108
+ }'
109
+ ```
110
+
111
+ ### 从文件读取 XML
112
+
113
+ ```bash
114
+ # 先创建 slide.xml 文件
115
+ cat > slide.xml << 'EOF'
116
+ <slide xmlns="http://www.larkoffice.com/sml/2.0">
117
+ <data>
118
+ <shape type="text" topLeftX="80" topLeftY="80" width="800" height="120">
119
+ <content textType="title">
120
+ <p>从文件加载</p>
121
+ </content>
122
+ </shape>
123
+ <shape type="text" topLeftX="80" topLeftY="200" width="800" height="180">
124
+ <content textType="body">
125
+ <p>这是从文件读取的幻灯片内容</p>
126
+ </content>
127
+ </shape>
128
+ </data>
129
+ </slide>
130
+ EOF
131
+
132
+ # 然后创建幻灯片
133
+ lark-cli slides xml_presentation.slide create --as user \
134
+ --params '{"xml_presentation_id":"slides_example_presentation_id"}' \
135
+ --data "$(jq -n --arg content "$(cat slide.xml)" '{slide:{content:$content}}')"
136
+ ```
137
+
138
+ ## 返回值
139
+
140
+ 成功时返回创建的幻灯片信息:
141
+
142
+ ```json
143
+ {
144
+ "code": 0,
145
+ "data": {
146
+ "slide_id": "slide_example_id",
147
+ "revision_id": 100
148
+ },
149
+ "msg": "success"
150
+ }
151
+ ```
152
+
153
+ ### 返回字段说明
154
+
155
+ | 字段 | 类型 | 说明 |
156
+ |------|------|------|
157
+ | `data.slide_id` | string | 新幻灯片的唯一标识 |
158
+ | `data.revision_id` | integer | 演示文稿最新版本号 |
159
+
160
+ ## slide 元素可用子元素
161
+
162
+ | 元素 | 说明 |
163
+ |------|------|
164
+ | `<style>` | 页面样式(背景填充) |
165
+ | `<data>` | 图形元素容器(shape、img、table、chart 等) |
166
+ | `<note>` | 演讲者备注 |
167
+
168
+ > [!IMPORTANT]
169
+ > **本地图片必须先上传**:`xml_presentation.slide.create` 不识别 `@./local.png` 占位符(那是 `+create --slides` 的语法糖)。直接调本接口添加带图新页时,必须先用 [`slides +media-upload`](lark-slides-media-upload.md) 拿到 `file_token`,再写进 `<img src="<file_token>">`。
170
+ >
171
+ > 如果是从零开始建带图 PPT,**强烈建议改用 [`slides +create --slides '[...]'`](lark-slides-create.md#本地图片path-占位符)** 一步搞定(自动上传 + 替换 token)。
172
+
173
+ ## 常见错误
174
+
175
+ | 错误码 | 含义 | 解决方案 |
176
+ |--------|------|----------|
177
+ | 404 | 演示文稿不存在 | 检查 `xml_presentation_id` 是否正确 |
178
+ | 400 | XML 格式错误 | 检查 `slide.content` 是否是完整 `<slide>` 元素 |
179
+ | 400 | 请求体结构错误 | 检查是否按 `slide.content` 和 `before_slide_id` 包装 |
180
+ | 403 | 权限不足 | 检查是否拥有 `slides:presentation:update` 或 `slides:presentation:write_only` scope |
181
+ | 3350001 | XML 非 well-formed 或服务端参数校验失败 | 优先检查未转义字符:文本 `Q&A -> Q&amp;A`,文本 `<` / `>` 写成 `&lt;` / `&gt;`,属性 URL `a=1&b=2 -> a=1&amp;b=2`;创建前运行 `python3 skills/lark-slides/scripts/layout_lint.py --input <file>` 获取行列和上下文 |
182
+
183
+ ## 注意事项
184
+
185
+ 1. **执行前必做**: 使用 `lark-cli schema slides.xml_presentation.slide.create` 查看最新的参数结构
186
+ 2. **slide.content 格式**: 必须是完整的 `<slide>` 元素,不是整个 presentation
187
+ 3. **命名空间建议**: 协议标准写法应带 `xmlns`,例如 `<slide xmlns="http://www.larkoffice.com/sml/2.0">`;当前服务端实现可能兼容不带 `xmlns` 的输入,但不作为协议保证
188
+ 4. **fill / border 写法**: 颜色填充使用 `<fill><fillColor color="..."/></fill>`,边框常用 `<border color="..." width="2"/>`
189
+ 5. **插入位置**: 通过 `before_slide_id` 指定插入目标,而不是用 `position`
190
+ 6. **JSON 转义**: 如果直接内联 XML,需要正确转义双引号
191
+ 7. **本地预检**: 创建前运行 `layout_lint.py --input <file>`;它检查 XML well-formed 和布局风险,不等价于完整 XSD schema 校验
192
+ 8. **建议**: 先使用 `xml_presentations.get` 获取现有结构,再添加新页面
193
+
194
+ ## 批量添加建议
195
+
196
+ 如果需要添加多张幻灯片,建议先明确每一页的 `before_slide_id`,或直接按最终顺序逐页追加:
197
+
198
+ ```bash
199
+ #!/bin/bash
200
+
201
+ PRESENTATION_ID="slides_example_presentation_id"
202
+
203
+ declare -a slides=(
204
+ '<slide xmlns="http://www.larkoffice.com/sml/2.0"><data><shape type="text" topLeftX="80" topLeftY="80" width="800" height="120"><content textType="title"><p>页面 1</p></content></shape></data></slide>'
205
+ '<slide xmlns="http://www.larkoffice.com/sml/2.0"><data><shape type="text" topLeftX="80" topLeftY="80" width="800" height="120"><content textType="title"><p>页面 2</p></content></shape></data></slide>'
206
+ '<slide xmlns="http://www.larkoffice.com/sml/2.0"><data><shape type="text" topLeftX="80" topLeftY="80" width="800" height="120"><content textType="title"><p>页面 3</p></content></shape></data></slide>'
207
+ )
208
+
209
+ for slide_xml in "${slides[@]}"; do
210
+ payload=$(jq -n --arg content "$slide_xml" '{slide:{content:$content}}')
211
+ lark-cli slides xml_presentation.slide create --as user --params "{\"xml_presentation_id\":\"$PRESENTATION_ID\"}" --data "$payload"
212
+ done
213
+ ```
214
+
215
+ ## 相关命令
216
+
217
+ - [slides +create](lark-slides-create.md) - 创建空白 PPT
218
+ - [xml_presentations get](lark-slides-xml-presentations-get.md) - 读取 PPT 内容
219
+ - [xml_presentation.slide delete](lark-slides-xml-presentation-slide-delete.md) - 删除幻灯片页面
220
+ - [xml-format-guide.md](xml-format-guide.md) - XML 格式详细规范
221
+ - [xml-schema-quick-ref.md](xml-schema-quick-ref.md) - Schema 快速参考
@@ -0,0 +1,123 @@
1
+ # lark-slides xml_presentation.slide delete
2
+
3
+ ## 用途
4
+
5
+ 删除指定 XML 演示文稿中的幻灯片页面。
6
+
7
+ ## 命令
8
+
9
+ ```bash
10
+ lark-cli slides xml_presentation.slide delete --as user --params '<json_params>'
11
+ ```
12
+
13
+ ## 参数说明
14
+
15
+ | 参数 | 类型 | 必需 | 说明 |
16
+ |------|------|------|------|
17
+ | `--params` | JSON string | 是 | 路径参数与查询参数 |
18
+
19
+ ### params JSON 结构
20
+
21
+ ```json
22
+ {
23
+ "xml_presentation_id": "slides_example_presentation_id",
24
+ "slide_id": "slide_example_id",
25
+ "revision_id": -1,
26
+ "tid": "idMock"
27
+ }
28
+ ```
29
+
30
+ | 字段 | 类型 | 必需 | 说明 |
31
+ |------|------|------|------|
32
+ | `xml_presentation_id` | string | 是 | 演示文稿的唯一标识符 |
33
+ | `slide_id` | string | 是 | 要删除的幻灯片唯一标识符 |
34
+ | `revision_id` | integer | 否 | 演示文稿版本号,`-1` 表示最新版本 |
35
+ | `tid` | string | 否 | 锁的事务 ID |
36
+
37
+ ## 使用示例
38
+
39
+ ### 删除指定幻灯片
40
+
41
+ ```bash
42
+ lark-cli slides xml_presentation.slide delete --as user --params '{
43
+ "xml_presentation_id": "slides_example_presentation_id",
44
+ "slide_id": "slide_example_id"
45
+ }'
46
+ ```
47
+
48
+ ### 结合查询删除(使用 jq)
49
+
50
+ ```bash
51
+ # 先读取 XML 内容,确认待删除页面
52
+ lark-cli slides xml_presentations get --as user --params '{"xml_presentation_id":"slides_example_presentation_id"}' | jq -r '.data.xml_presentation.content'
53
+
54
+ # 然后按已知 slide_id 删除
55
+ lark-cli slides xml_presentation.slide delete --as user --params '{"xml_presentation_id":"slides_example_presentation_id","slide_id":"slide_example_id"}'
56
+ ```
57
+
58
+ ## 返回值
59
+
60
+ 成功时返回删除确认信息:
61
+
62
+ ```json
63
+ {
64
+ "code": 0,
65
+ "data": {
66
+ "revision_id": 100
67
+ },
68
+ "msg": "success"
69
+ }
70
+ ```
71
+
72
+ ### 返回字段说明
73
+
74
+ | 字段 | 类型 | 说明 |
75
+ |------|------|------|
76
+ | `data.revision_id` | integer | 删除后的最新版本号 |
77
+
78
+ ## 常见错误
79
+
80
+ | 错误码 | 含义 | 解决方案 |
81
+ |--------|------|----------|
82
+ | 404 | 演示文稿不存在 | 检查 `xml_presentation_id` 是否正确 |
83
+ | 404 | 幻灯片不存在 | 检查 `slide_id` 是否正确,或该幻灯片已被删除 |
84
+ | 400 | 无法删除唯一幻灯片 | 演示文稿至少保留一页幻灯片 |
85
+ | 403 | 权限不足 | 检查是否拥有 `slides:presentation:update` 或 `slides:presentation:write_only` scope |
86
+
87
+ ## 注意事项
88
+
89
+ 1. **执行前必做**: 使用 `lark-cli schema slides.xml_presentation.slide.delete` 查看最新的参数结构
90
+ 2. **删除不可逆**: 删除操作无法撤销,请确保已备份重要内容
91
+ 3. **至少保留一页**: 演示文稿必须至少保留一页幻灯片,删除最后一页会报错
92
+ 4. **版本控制**: 如果依赖版本号并发控制,删除前先确认 `revision_id`
93
+ 5. **获取 slide_id**: 创建幻灯片时请保存返回值;仅靠 `get` 返回的 XML 无法直接推导服务端 short ID
94
+
95
+ ## 如何获取 slide_id
96
+
97
+ ### 方法 1: 创建时保存
98
+
99
+ ```bash
100
+ lark-cli slides xml_presentation.slide create --as user --params '{"xml_presentation_id":"slides_example_presentation_id"}' --data '{
101
+ "slide": {
102
+ "content": "<slide xmlns=\"http://www.larkoffice.com/sml/2.0\"><data><shape type=\"text\" topLeftX=\"80\" topLeftY=\"80\" width=\"800\" height=\"120\"><content textType=\"title\"><p>新页面</p></content></shape></data></slide>"
103
+ }
104
+ }'
105
+ ```
106
+
107
+ 返回结果中的 `slide_id` 就是后续删除所需的值。
108
+
109
+ ## 批量删除建议
110
+
111
+ 如果需要删除多张幻灯片,建议先整理好待删 `slide_id` 列表,再逐个删除:
112
+
113
+ ```bash
114
+ for slide_id in sld_a sld_b sld_c; do
115
+ lark-cli slides xml_presentation.slide delete --as user --params "{\"xml_presentation_id\":\"slides_example_presentation_id\",\"slide_id\":\"$slide_id\"}"
116
+ done
117
+ ```
118
+
119
+ ## 相关命令
120
+
121
+ - [slides +create](lark-slides-create.md) - 创建空白 PPT
122
+ - [xml_presentations get](lark-slides-xml-presentations-get.md) - 读取 PPT 内容
123
+ - [xml_presentation.slide create](lark-slides-xml-presentation-slide-create.md) - 添加幻灯片页面