@wagemule/daemon 0.1.0 → 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 -2
  2. package/dist/main.cjs +270 -101
  3. package/dist/main.cjs.map +3 -3
  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,216 @@
1
+ # mail +send
2
+
3
+ > **前置条件:** 先阅读 [`../../lark-shared/SKILL.md`](../../lark-shared/SKILL.md) 了解认证、全局参数和安全规则。
4
+
5
+ 发送新邮件,支持:
6
+ - 纯文本或 HTML 正文
7
+ - 抄送/密送
8
+ - 本地文件附件(`--attach`)
9
+ - 内嵌图片(`--inline`,CID 可用随机字符串)
10
+
11
+ 本 skill 对应 shortcut:`lark-cli mail +send`。
12
+
13
+ ## CRITICAL — 发送工作流(必须遵循)
14
+
15
+ 此命令默认**只保存草稿**,不会发送邮件。需要发送时,有两种合规方式:
16
+
17
+ **方式 A(推荐)** — 先创建草稿,再确认发送:
18
+ ```bash
19
+ lark-cli mail +send --to <收件人> --subject '<主题>' --body '<正文>'
20
+ ```
21
+ → 返回 `draft_id`
22
+
23
+ 向用户展示邮件摘要(收件人、主题、正文预览);如果用户想先看效果,可引导其去飞书邮件里打开该草稿查看详情。
24
+
25
+ 用户明确同意后,发送该草稿:
26
+ ```bash
27
+ lark-cli mail user_mailbox.drafts send --params '{"user_mailbox_id":"me","draft_id":"<Step 1 返回的 draft_id>"}'
28
+ ```
29
+
30
+ **方式 B(允许)** — 用户已经明确确认收件人和内容时,可直接使用 `--confirm-send` 立即发送:
31
+ ```bash
32
+ lark-cli mail +send --to <收件人> --subject '<主题>' --body '<正文>' --confirm-send
33
+ ```
34
+
35
+ **禁止在用户未明确同意的情况下执行发送,无论是发送草稿还是直接使用 `--confirm-send`。**
36
+
37
+ ## 命令
38
+
39
+ ```bash
40
+ # 保存为草稿(默认行为,不发送)— HTML 格式推荐
41
+ lark-cli mail +send --to alice@example.com --subject '周报' \
42
+ --body '<p>本周进展:</p><ul><li>完成 A 模块</li><li>修复 3 个 bug</li></ul>'
43
+
44
+ # 保存为草稿并抄送
45
+ lark-cli mail +send --to alice@example.com --cc bob@example.com --subject '状态更新' --body '<b>已完成</b>'
46
+
47
+ # 确认发送(仅在用户明确确认后使用)
48
+ lark-cli mail +send --to alice@example.com --subject '周报' \
49
+ --body '<p>本周进展如下...</p>' --confirm-send
50
+
51
+ # 保存带附件的草稿
52
+ lark-cli mail +send --to alice@example.com --subject '请查收' --body '<p>见附件</p>' --attach ./report.pdf,./logs.zip
53
+
54
+ # 保存带内嵌图片的草稿(推荐:直接用相对路径,自动解析)
55
+ lark-cli mail +send --to alice@example.com --subject '预览图' --body '<img src="./logo.png" />'
56
+
57
+ # 纯文本邮件(仅在内容极简时使用)
58
+ lark-cli mail +send --to alice@example.com --subject '确认' --body '收到,谢谢'
59
+
60
+ # Dry Run(仅打印请求,不执行)
61
+ lark-cli mail +send --to alice@example.com --subject '测试' --body '<p>test</p>' --dry-run
62
+ ```
63
+
64
+ ## 参数
65
+
66
+ | 参数 | 必填 | 说明 |
67
+ |------|------|------|
68
+ | `--to <emails>` | 是 | 收件人邮箱,多个用逗号分隔 |
69
+ | `--subject <text>` | 是 | 邮件主题 |
70
+ | `--body <text>` | 是 | 邮件正文。推荐使用 HTML 获得富文本排版;也支持纯文本(自动检测)。使用 `--plain-text` 可强制纯文本模式。支持 `<img src="./local.png" />` 相对路径自动解析为内嵌图片(仅支持相对路径,不支持绝对路径) |
71
+ | `--from <email>` | 否 | 发件人邮箱地址(EML From 头)。使用别名(send_as)发信时,设为别名地址并配合 `--mailbox` 指定所属邮箱。默认读取邮箱主地址 |
72
+ | `--mailbox <email>` | 否 | 邮箱地址,指定草稿所属的邮箱(默认回退到 `--from`,再回退到 `me`)。当发件人(`--from`)与邮箱不同时使用。可通过 `accessible_mailboxes` 查询可用邮箱 |
73
+ | `--cc <emails>` | 否 | 抄送邮箱,多个用逗号分隔 |
74
+ | `--bcc <emails>` | 否 | 密送邮箱,多个用逗号分隔 |
75
+ | `--plain-text` | 否 | 强制纯文本模式,忽略 HTML 自动检测。不可与 `--inline` 同时使用 |
76
+ | `--attach <paths>` | 否 | 附件文件路径,多个用逗号分隔。相对路径。当附件导致 EML 总大小超过 25 MB 时,超出部分自动上传为超大附件(HTML 邮件插入下载卡片,纯文本邮件追加下载链接),单个文件上限 3 GB |
77
+ | `--inline <json>` | 否 | 高级用法:手动指定内嵌图片 CID 映射。推荐直接在 `--body` 中使用 `<img src="./path" />`(自动解析)。仅在需要精确控制 CID 命名时使用此参数。格式:`'[{"cid":"mycid","file_path":"./logo.png"}]'`,在 body 中用 `<img src="cid:mycid">` 引用。不可与 `--plain-text` 同时使用 |
78
+ | `--signature-id <id>` | 否 | 签名 ID。附加邮箱签名到正文末尾。运行 `mail +signature` 查看可用签名。不可与 `--plain-text` 同时使用 |
79
+ | `--priority <level>` | 否 | 邮件优先级:`high`、`normal`、`low`。省略或 `normal` 时不设置优先级 |
80
+ | `--event-summary <text>` | 否 | 日程标题。设置此参数即在邮件中嵌入日程邀请(text/calendar)。需同时设置 `--event-start` 和 `--event-end` |
81
+ | `--event-start <time>` | 条件必填 | 日程开始时间(ISO 8601,如 `2026-04-20T14:00+08:00`) |
82
+ | `--event-end <time>` | 条件必填 | 日程结束时间(ISO 8601) |
83
+ | `--event-location <text>` | 否 | 日程地点 |
84
+ | `--confirm-send` | 否 | 确认发送邮件(默认只保存草稿)。仅在用户明确确认收件人和内容后使用 |
85
+ | `--send-time <timestamp>` | 否 | 定时发送时间,Unix 时间戳(秒)。需至少为当前时间 + 5 分钟。配合 `--confirm-send` 使用可定时发送邮件 |
86
+ | `--request-receipt` | 否 | 请求已读回执(RFC 3798 Message Disposition Notification)。在出站 EML 里写 `Disposition-Notification-To: <sender>` 头。收件人的邮件客户端**可能**弹出提示询问是否回执、可能自动发送、也可能忽略——送达不保证 |
87
+ | `--dry-run` | 否 | 仅打印请求,不执行 |
88
+
89
+ ### 日程邀请约束
90
+
91
+ 使用 `--event-*` 时需满足以下条件:
92
+
93
+ - `--event-summary`、`--event-start`、`--event-end` 必须同时出现或同时不出现
94
+ - 与 `--send-time` 互斥,不可同时使用(日程邀请必须立即发送,否则收件人可能在日程开始后才收到)
95
+ - 不可与 `--bcc` 同时使用:日程参会人(ATTENDEE)仅来自 To 和 Cc,Bcc 收件人不在参会人列表中、无法 RSVP,且该组合将导致邮件发送失败。需要邀请某人参加日程请用 `--to` 或 `--cc`;如只想告知而不邀请,请单独发一封无日程的邮件
96
+
97
+ ## 返回值
98
+
99
+ **草稿模式(默认):**
100
+
101
+ ```json
102
+ {
103
+ "ok": true,
104
+ "data": {
105
+ "draft_id": "草稿ID",
106
+ "tip": "draft saved. To send: lark-cli mail user_mailbox.drafts send --params '{...}'"
107
+ }
108
+ }
109
+ ```
110
+
111
+ 草稿模式下,只要结果不是直接发信而是产出了草稿,就应给用户展示草稿打开链接。当前应以 `create` / `edit` / `send` 链路返回的链接信息为准,不要把 `user_mailbox.drafts get` 当作拿草稿打开链接的来源。如果返回中带有 `reference`,应把链接与 `draft_id` 一并返回;当前没有链接时,静默处理,不要伪造链接。
112
+
113
+ **发送模式(`--confirm-send`):**
114
+
115
+ ```json
116
+ {
117
+ "ok": true,
118
+ "data": {
119
+ "message_id": "邮件ID",
120
+ "thread_id": "会话ID"
121
+ }
122
+ }
123
+ ```
124
+
125
+ 可选字段:
126
+
127
+ - `automation_send_disable_reason`:发送被邮箱自动化设置拦截时返回的原因
128
+ - `automation_send_disable_reference`:发送被拦截时的草稿打开链接
129
+
130
+ 字段语义:
131
+
132
+ - 若返回中包含 `automation_send_disable_reason` / `automation_send_disable_reference`,说明邮件未真正发出,而是被邮箱设置拦截。此时应直接向用户展示原因和草稿打开链接,不要继续假设已经发送成功
133
+
134
+ ## 典型场景
135
+
136
+ ### 场景 1:用户说"帮我写一封邮件给 Alice"(只创建草稿)
137
+ ```bash
138
+ lark-cli mail +send --to alice@example.com --subject '周报' --body '<p>本周进展如下...</p>'
139
+ ```
140
+ → 返回草稿结果时,如输出中带有草稿打开链接,则一起展示给用户;如果当前输出没有链接,则静默处理。如果用户想先看效果,可去飞书邮件 UI 中打开草稿查看详情。
141
+
142
+ ### 场景 2:用户说"发邮件给 Alice 说收到了"(需要发送)
143
+ ```bash
144
+ # 方式 A: 创建草稿
145
+ lark-cli mail +send --to alice@example.com --subject '收到' --body '<p>已收到,谢谢!</p>'
146
+ # → 返回 draft_id
147
+
148
+ # 向用户确认 "当前收件人 alice@example.com,主题「收到」。如果你想先看效果,也可以先去飞书邮件里打开草稿查看详情。确认发送吗?"
149
+
150
+ # 用户确认后发送
151
+ lark-cli mail user_mailbox.drafts send --params '{"user_mailbox_id":"me","draft_id":"<draft_id>"}'
152
+
153
+ # 方式 B: 用户已明确确认时,直接发送
154
+ lark-cli mail +send --to alice@example.com --subject '收到' --body '<p>已收到,谢谢!</p>' --confirm-send
155
+ ```
156
+
157
+ ### 场景 3:用户说"下午 3 点给 Alice 发一封周报"(定时发送)
158
+ ```bash
159
+ # Step 1: 创建草稿(定时发送也走草稿流程)
160
+ lark-cli mail +send --to alice@example.com --subject '周报' --body '<p>本周进展如下...</p>'
161
+ # → 返回 draft_id
162
+
163
+ # Step 2: 向用户确认 "邮件草稿已创建:收件人 alice@example.com,主题「周报」,定时 <目标时间> 发送。确认吗?"
164
+
165
+ # Step 3: 用户确认后定时发送(send_time 为 Unix 时间戳,需至少当前时间 + 5 分钟)
166
+ lark-cli mail user_mailbox.drafts send --params '{"user_mailbox_id":"me","draft_id":"<draft_id>"}' --data '{"send_time":"<unix_timestamp>"}'
167
+ ```
168
+
169
+ ### 场景 4:用户说"等等,先不发那封邮件了"(取消定时发送)
170
+ ```bash
171
+ # 取消定时发送(取消后邮件变回草稿)
172
+ lark-cli mail user_mailbox.drafts cancel_scheduled_send --params '{"user_mailbox_id":"me","draft_id":"<draft_id>"}'
173
+ ```
174
+ → 取消成功后邮件恢复为草稿状态,用户可重新编辑或在之后重新发送。
175
+
176
+ ## 发送后跟进
177
+
178
+ 邮件发送后,分两种情况处理:
179
+
180
+ - 若返回中有 `automation_send_disable_reason` / `automation_send_disable_reference`:说明发送被邮箱设置拦截,应直接告诉用户原因并提供草稿打开链接,**不要**调用 `send_status`
181
+
182
+ ### 立即发送(无 `--send-time`)
183
+
184
+ 若返回非空 `message_id`,调用:
185
+
186
+ ```bash
187
+ lark-cli mail user_mailbox.messages send_status --params '{"user_mailbox_id":"me","message_id":"<发送返回的 message_id>"}'
188
+ ```
189
+
190
+ 状态码:1=正在投递, 2=投递失败重试, 3=退信, 4=投递成功, 5=待审批, 6=审批拒绝。向用户简要报告各收件人投递结果,异常状态需重点提示。
191
+
192
+ ### 定时发送(指定了 `--send-time`)
193
+
194
+ 定时发送不会立即产生 `message_id`,因此 `send_status` 在定时发送成功后会返回"待发送"状态,**不建议在定时发送后立即查询**。可在预定发送时间后再查询投递状态。
195
+
196
+ 如需取消定时发送,可在预定时间前调用取消接口:
197
+
198
+ ```bash
199
+ lark-cli mail user_mailbox.drafts cancel_scheduled_send --params '{"user_mailbox_id":"me","draft_id":"<draft_id>"}'
200
+ ```
201
+
202
+ **取消后邮件会变回草稿**,可继续编辑或在之后重新发送。
203
+
204
+ ## 实现说明
205
+
206
+ - 使用 EML 构建器生成完整 MIME 邮件并 base64url 编码后发送。
207
+ - `--attach` 作为普通附件添加。相对路径。
208
+ - `--inline` 接受 JSON 数组,每项需提供 `cid`(唯一标识符,可用随机十六进制字符串)和 `file_path`(相对路径),作为 inline part 嵌入邮件。
209
+ - **超大附件**:当附件导致 EML 总大小(headers + body + inline images + attachments,base64 编码后)超过 25 MB 时,超出的文件自动通过 `medias/upload_*` API 上传到云端。HTML 邮件插入与飞书客户端一致的下载卡片;纯文本邮件追加包含文件名、大小和下载链接的文本块。单个文件上限 3 GB,总附件数量上限 250 个。
210
+
211
+ ## 相关命令
212
+
213
+ - `lark-cli mail +reply` — 回复邮件
214
+ - `lark-cli mail +reply-all` — 回复全部
215
+ - `lark-cli mail +forward` — 转发邮件
216
+ - `lark-cli mail user_mailbox.messages list` — 列出邮件
@@ -0,0 +1,87 @@
1
+ # mail +share-to-chat
2
+
3
+ > **前置条件:** 先阅读 [`../../lark-shared/SKILL.md`](../../lark-shared/SKILL.md) 了解认证、全局参数和安全规则。
4
+
5
+ 将邮件以卡片形式分享到飞书 IM 会话(群聊或个人对话)。内部两步完成:创建分享凭证 → 发送卡片到 IM。
6
+
7
+ **依赖 Scope:** `mail:user_mailbox.message:readonly`、`im:message`、`im:message.send_as_user`
8
+
9
+ ## 命令
10
+
11
+ ```bash
12
+ # 分享单封邮件到群聊(默认 receive-id-type=chat_id)
13
+ lark-cli mail +share-to-chat --message-id <邮件ID> --receive-id oc_xxx
14
+
15
+ # 分享整个会话到群聊
16
+ lark-cli mail +share-to-chat --thread-id <会话ID> --receive-id oc_xxx
17
+
18
+ # 通过邮箱分享给个人
19
+ lark-cli mail +share-to-chat --message-id <邮件ID> --receive-id user@example.com --receive-id-type email
20
+
21
+ # Dry Run
22
+ lark-cli mail +share-to-chat --message-id <邮件ID> --receive-id oc_xxx --dry-run
23
+ ```
24
+
25
+ ## 参数
26
+
27
+ | 参数 | 必填 | 说明 |
28
+ |------|------|------|
29
+ | `--message-id <id>` | 否(二选一) | 要分享的邮件 ID,与 `--thread-id` 互斥 |
30
+ | `--thread-id <id>` | 否(二选一) | 要分享的邮件会话 ID,与 `--message-id` 互斥 |
31
+ | `--receive-id <id>` | 是 | 目标接收者 ID,类型由 `--receive-id-type` 决定 |
32
+ | `--receive-id-type <type>` | 否 | 接收者 ID 类型(默认 `chat_id`)。可选:`chat_id` / `open_id` / `user_id` / `union_id` / `email` |
33
+ | `--mailbox <email>` | 否 | 邮箱地址(默认 `me`) |
34
+ | `--dry-run` | 否 | 仅打印请求,不执行 |
35
+
36
+ ## 返回值
37
+
38
+ ```json
39
+ {
40
+ "ok": true,
41
+ "data": {
42
+ "card_id": "550e8400-e29b-41d4-a716-446655440000",
43
+ "im_message_id": "om_dc13264520392913993dd051dba21dcf"
44
+ }
45
+ }
46
+ ```
47
+
48
+ ## 典型场景
49
+
50
+ ### 场景 1:用户说"帮我把这封邮件分享到项目群"
51
+
52
+ ```bash
53
+ # Step 1: 搜索群聊获取 chat_id
54
+ lark-cli im +chat-search --query "项目群"
55
+ # → 获取 chat_id: oc_xxx
56
+
57
+ # Step 2: 分享邮件
58
+ lark-cli mail +share-to-chat --message-id <邮件ID> --receive-id oc_xxx
59
+ ```
60
+
61
+ ### 场景 2:分享整个邮件会话
62
+
63
+ ```bash
64
+ lark-cli mail +share-to-chat --thread-id <会话ID> --receive-id oc_xxx
65
+ ```
66
+
67
+ ### 场景 3:通过邮箱分享给个人
68
+
69
+ ```bash
70
+ lark-cli mail +share-to-chat --message-id <邮件ID> --receive-id alice@example.com --receive-id-type email
71
+ ```
72
+
73
+ ## 常见错误
74
+
75
+ | 症状 | 原因 | 解决 |
76
+ |------|------|------|
77
+ | `either --message-id or --thread-id is required` | 两个参数都未传 | 传入其中一个 |
78
+ | `--message-id and --thread-id are mutually exclusive` | 两个参数同时传 | 只传一个 |
79
+ | 403 `user not in chat` | 用户不在目标会话中 | 确认用户是群成员 |
80
+ | 404 `message not found` | 邮件 ID 无效 | 确认邮件 ID 正确 |
81
+ | 403 `permission not granted` | 缺少 `im:message` 或 `im:message.send_as_user` scope | 重新授权:`lark-cli auth login --scope "im:message,im:message.send_as_user"` |
82
+
83
+ ## 相关命令
84
+
85
+ - `lark-cli im +chat-search` — 搜索群聊获取 chat_id
86
+ - `lark-cli mail +message` — 查看邮件内容
87
+ - `lark-cli mail +thread` — 查看邮件会话
@@ -0,0 +1,98 @@
1
+ # mail +signature
2
+
3
+ > **前置条件:** 先阅读 [`../../lark-shared/SKILL.md`](../../lark-shared/SKILL.md) 了解认证、全局参数和安全规则。
4
+
5
+ 查看邮箱签名列表或详情。返回签名的类型、默认使用情况、内容预览等信息。TENANT(企业)签名的模板变量会被自动替换为实际值。
6
+
7
+ 本 skill 对应 shortcut:`lark-cli mail +signature`。
8
+
9
+ ## 命令
10
+
11
+ ```bash
12
+ # 列出所有签名
13
+ lark-cli mail +signature
14
+
15
+ # 查看某个签名的详情(渲染后的内容预览、模板变量值、图片信息)
16
+ lark-cli mail +signature --detail <signature_id>
17
+
18
+ # 指定邮箱
19
+ lark-cli mail +signature --from shared@example.com
20
+ ```
21
+
22
+ ## 参数
23
+
24
+ | 参数 | 必填 | 说明 |
25
+ |------|------|------|
26
+ | `--from <email>` | 否 | 邮箱地址(默认 `me`) |
27
+ | `--detail <id>` | 否 | 签名 ID,查看详情。省略则列出所有签名 |
28
+
29
+ ## 返回值
30
+
31
+ **列表模式:**
32
+
33
+ ```json
34
+ {
35
+ "ok": true,
36
+ "data": {
37
+ "signatures": [
38
+ {
39
+ "id": "<签名ID>",
40
+ "name": "个人签名",
41
+ "type": "USER",
42
+ "content_preview": "这是我的签名内容 [image] 超链接哈哈"
43
+ },
44
+ {
45
+ "id": "<签名ID>",
46
+ "name": "企业签名",
47
+ "type": "TENANT",
48
+ "is_send_default": true,
49
+ "is_reply_default": true,
50
+ "content_preview": "企业签名 姓名:陈煌 部门:研发团队"
51
+ }
52
+ ]
53
+ }
54
+ }
55
+ ```
56
+
57
+ **详情模式(`--detail`):**
58
+
59
+ ```json
60
+ {
61
+ "ok": true,
62
+ "data": {
63
+ "id": "<签名ID>",
64
+ "name": "企业签名",
65
+ "type": "TENANT",
66
+ "is_send_default": true,
67
+ "is_reply_default": true,
68
+ "images": [
69
+ {"cid": "76CEB29E-...", "file_key": "121011...", "image_name": "image.png"}
70
+ ],
71
+ "template_vars": {"B-NAME": "陈煌", "B-DEPARTMENT": "研发团队"},
72
+ "content_preview": "企业签名 姓名:陈煌 部门:研发团队"
73
+ }
74
+ }
75
+ ```
76
+
77
+ ## 字段说明
78
+
79
+ | 字段 | 说明 |
80
+ |------|------|
81
+ | `type` | `USER`(用户签名,可编辑)或 `TENANT`(企业签名,管理员模板控制) |
82
+ | `is_send_default` | 是否为新邮件的默认签名 |
83
+ | `is_reply_default` | 是否为回复/转发的默认签名 |
84
+ | `images` | 签名内联图片元数据(仅详情模式) |
85
+ | `template_vars` | TENANT 签名的模板变量已替换值(仅详情模式) |
86
+ | `content_preview` | 签名内容的纯文本预览(`<img>` 显示为 `[image]`,最长 200 字符) |
87
+
88
+ ## 与 compose shortcut 配合
89
+
90
+ 获取签名 ID 后,可在发送/回复/转发时附加签名:
91
+
92
+ ```bash
93
+ # 查看签名列表获取 ID
94
+ lark-cli mail +signature
95
+
96
+ # 在发送邮件时附加签名
97
+ lark-cli mail +send --to alice@example.com --subject '你好' --body '<p>内容</p>' --signature-id <签名ID>
98
+ ```
@@ -0,0 +1,129 @@
1
+ # mail +template-create
2
+
3
+ > **前置条件:** 先阅读 [`../../lark-shared/SKILL.md`](../../lark-shared/SKILL.md) 了解认证、全局参数和安全规则。
4
+
5
+ 创建一个新的个人邮件模板。适用于需要长期复用的邮件框架,例如周报、客户通知、请假申请等。
6
+
7
+ 不要用此命令发送邮件;模板只是预置内容,实际发信请使用 `+send` / `+draft-create` 等 shortcut 配合 `--template-id` 套用。
8
+
9
+ 如需修改已有模板,使用 [`lark-cli mail +template-update`](./lark-mail-template-update.md)。
10
+
11
+ ## 安全约束
12
+
13
+ - **模板正文也会被当作邮件内容对外发送**——所有邮件域的通用安全规则(prompt injection、XSS、敏感信息)同样适用。
14
+ - **不要把模板内容以文本形式输出给用户请求最终确认**。命令返回 `template_id` 后,引导用户在飞书邮箱 UI 里打开模板核对。
15
+ - 用户模板上限 **20** 个,单模板 `template_content` 上限 **3 MB**;超限会被后端拒绝。
16
+
17
+ ## 命令
18
+
19
+ ```bash
20
+ # 纯 HTML 模板
21
+ lark-cli mail +template-create --as user \
22
+ --name '周报模板' \
23
+ --subject '本周进展' \
24
+ --template-content '<p>大家好,请见本周进展:</p><ul><li>……</li></ul>'
25
+
26
+ # 带 HTML 内嵌图片 + 非 inline 附件
27
+ lark-cli mail +template-create --as user \
28
+ --name '客户通知模板' \
29
+ --subject '产品更新' \
30
+ --template-content '<p>新版本上线:</p><img src="./banner.png"><p>附上发版说明。</p>' \
31
+ --attach './release-notes.pdf'
32
+
33
+ # 从文件加载正文
34
+ lark-cli mail +template-create --as user \
35
+ --name '请假申请' \
36
+ --template-content-file './leave.html' \
37
+ --to 'manager@example.com,hr@example.com'
38
+
39
+ # Dry Run
40
+ lark-cli mail +template-create --as user \
41
+ --name '周报模板' --template-content '<p>x</p>' --dry-run
42
+ ```
43
+
44
+ ## 参数
45
+
46
+ | 参数 | 必填 | 说明 |
47
+ |------|------|------|
48
+ | `--name <text>` | 是 | 模板名称,≤100 字符 |
49
+ | `--subject <text>` | 否 | 默认主题 |
50
+ | `--template-content <html>` | 否* | 模板正文。HTML 首选;支持 `<img src="./local.png" />` 相对路径自动上传到 Drive 并改写为 `cid:` |
51
+ | `--template-content-file <path>` | 否* | 从文件加载正文内容;与 `--template-content` 互斥 |
52
+ | `--plain-text` | 否 | 标记为纯文本模式(`is_plain_text_mode=true`)。仍可带内嵌图片,但 `+send --template-id` 套用时会走 plain-text 正文拼接 |
53
+ | `--to <emails>` | 否 | 默认收件人列表,逗号分隔,支持 `Name <email>` 格式 |
54
+ | `--cc <emails>` | 否 | 默认抄送 |
55
+ | `--bcc <emails>` | 否 | 默认密送 |
56
+ | `--attach <paths>` | 否 | 非 inline 附件路径,逗号分隔。每个文件按 `--attach` 书写顺序上传到 Drive |
57
+ | `--mailbox <email>` | 否 | 所属邮箱,默认 `me`(当前用户主邮箱) |
58
+ | `--dry-run` | 否 | 仅打印计划中的 API 调用链,不真实执行 |
59
+
60
+ \* `--template-content` / `--template-content-file` 二选一;两者都留空则模板正文为空(用户之后可通过 `+template-update` 补充)。
61
+
62
+ ## HTML 内嵌图片自动上传
63
+
64
+ 正文中所有不带 URI scheme 的 `<img src="./local.png">`(相对路径)会被:
65
+
66
+ 1. 上传到 Drive(≤20 MB 走 `medias/upload_all`;>20 MB 走 `upload_prepare + upload_part + upload_finish`)
67
+ 2. 生成 UUIDv4 CID
68
+ 3. HTML 改写为 `<img src="cid:<uuid>">`
69
+ 4. 在 `attachments[]` 追加 `{id: <file_key>, cid, is_inline: true, filename, attachment_type}`
70
+
71
+ 带 URI scheme 的 `<img src="https://...">` 或 `<img src="cid:...">` 跳过上传。
72
+
73
+ ## SMALL vs LARGE 附件
74
+
75
+ 附件分为 SMALL(`attachment_type=1`,内嵌到 EML)和 LARGE(`attachment_type=2`,由服务端渲染成下载链接)。切换阈值:
76
+
77
+ - **本地单文件大小**:≤20 MB 用 `upload_all`,>20 MB 分块上传(与 SMALL/LARGE 无关,只影响 Drive 上传路径)。
78
+ - **累计 EML 投影**:`subject + to + cc + bcc + template_content + base64 附件体积`;同批次累计超过 **25 MB** 后,剩余的非 inline 附件标 `LARGE`,inline 图片不能切换到 LARGE(HTML `cid:` 引用要求 MIME part 存在)。
79
+
80
+ 两套判定相互独立。
81
+
82
+ ## 顺序约束
83
+
84
+ - inline 图片按正文中 `<img>` 出现顺序处理
85
+ - 非 inline 按 `--attach` 书写顺序处理;重复路径不会去重
86
+
87
+ ## 返回值
88
+
89
+ 成功返回:
90
+
91
+ ```json
92
+ {
93
+ "template": {
94
+ "template_id": "712345",
95
+ "name": "周报模板",
96
+ "subject": "本周进展",
97
+ "template_content": "<p>...</p>",
98
+ "is_plain_text_mode": false,
99
+ "tos": [{"mail_address": "alice@example.com"}],
100
+ "attachments": [...],
101
+ "create_time": "1714000000000"
102
+ }
103
+ }
104
+ ```
105
+
106
+ - `template_id` 为十进制字符串。后续套用模板时 `--template-id <template_id>`。
107
+
108
+ ## 错误码速查
109
+
110
+ | errno | HTTP | 触发 |
111
+ |-------|------|------|
112
+ | `15080201 InvalidTemplateName` | 400 | `name` 为空或超 100 字符 |
113
+ | `15080202 TemplateNumberLimit` | 400 | 已达 20 模板上限 |
114
+ | `15080203 TemplateContentSizeLimit` | 400 | 单模板 > 3 MB |
115
+ | `15080206 TemplateTotalSizeLimit` | 400 | 所有模板总大小 > 50 MB |
116
+ | `15080207 InvalidTemplateParam` | 400 | 其他参数错误 |
117
+
118
+ ## 所需 scope
119
+
120
+ `mail:user_mailbox.message:modify`
121
+
122
+ ## 相关
123
+
124
+ - 更新模板:[`+template-update`](./lark-mail-template-update.md)
125
+ - 套用模板发信:在 `+send` / `+draft-create` / `+reply` / `+reply-all` / `+forward` 中使用 `--template-id`
126
+ - 原生 API:
127
+ - `lark-cli mail user_mailbox.templates list --params '{"user_mailbox_id":"me"}'` — 列出模板
128
+ - `lark-cli mail user_mailbox.templates get --params '{"user_mailbox_id":"me","template_id":"<id>"}'` — 获取完整模板
129
+ - `lark-cli mail user_mailbox.templates delete --params '{"user_mailbox_id":"me","template_id":"<id>"}'` — 删除
@@ -0,0 +1,150 @@
1
+ # mail +template-update
2
+
3
+ > **前置条件:** 先阅读 [`../../lark-shared/SKILL.md`](../../lark-shared/SKILL.md) 了解认证、全局参数和安全规则。
4
+
5
+ 更新已有的个人邮件模板(全量替换式更新)。支持 `--inspect` 只读 projection、`--print-patch-template` 打印 patch 骨架、`--patch-file` 结构化 patch、以及扁平的 `--set-*` flag。
6
+
7
+ > **⚠️ 后端无乐观锁 → last-write-wins**。并发更新可能丢失最近的改动;CLI 在每次成功更新时会在 stderr 打印一条 warning 提示。
8
+
9
+ 如需创建新模板,使用 [`lark-cli mail +template-create`](./lark-mail-template-create.md)。
10
+
11
+ ## 工作模式
12
+
13
+ | 入口 | 行为 | 是否写库 |
14
+ |------|------|---------|
15
+ | `--print-patch-template` | 打印 `--patch-file` 的 JSON 骨架 | 否(纯本地) |
16
+ | `--inspect` | 返回当前模板完整 projection | 否(只 GET) |
17
+ | `--set-*` / `--attach` | 扁平 flag 合并后 PUT | 是 |
18
+ | `--patch-file` | 结构化 patch + 扁平 flag 合并后 PUT | 是 |
19
+
20
+ ## 命令
21
+
22
+ ```bash
23
+ # 查看当前状态(不修改)
24
+ lark-cli mail +template-update --as user --template-id 712345 --inspect
25
+
26
+ # 打印 patch 骨架并保存
27
+ lark-cli mail +template-update --as user --print-patch-template > /tmp/tpl-patch.json
28
+
29
+ # 用扁平 flag 改 subject + cc
30
+ lark-cli mail +template-update --as user --template-id 712345 \
31
+ --set-subject '每周五发布' \
32
+ --set-cc 'manager@example.com'
33
+
34
+ # 用 patch 文件做结构化更新(支持 is_plain_text_mode 翻回 false 等 tri-state 场景)
35
+ lark-cli mail +template-update --as user --template-id 712345 \
36
+ --patch-file /tmp/tpl-patch.json
37
+
38
+ # 追加新附件
39
+ lark-cli mail +template-update --as user --template-id 712345 \
40
+ --attach './appendix.pdf'
41
+ ```
42
+
43
+ ## 参数
44
+
45
+ ### 定位
46
+
47
+ | 参数 | 必填 | 说明 |
48
+ |------|------|------|
49
+ | `--template-id <id>` | 是* | 模板 ID,十进制整数字符串 |
50
+ | `--mailbox <email>` | 否 | 所属邮箱,默认 `me` |
51
+
52
+ \* `--print-patch-template` 场景下可省略。
53
+
54
+ ### 只读 / 输出
55
+
56
+ | 参数 | 说明 |
57
+ |------|------|
58
+ | `--inspect` | 只 GET,不修改;返回完整模板 projection |
59
+ | `--print-patch-template` | 打印 patch 骨架(不访问网络),保存后作为 `--patch-file` 的起点 |
60
+
61
+ ### 扁平 set-* flag(直接指定新值)
62
+
63
+ | 参数 | 说明 |
64
+ |------|------|
65
+ | `--set-name <text>` | 替换名称,≤100 字符 |
66
+ | `--set-subject <text>` | 替换默认主题 |
67
+ | `--set-template-content <html>` | 替换正文。支持 `<img src="./local.png" />` 相对路径自动上传并改写 |
68
+ | `--set-template-content-file <path>` | 从文件加载替换正文;与 `--set-template-content` 互斥 |
69
+ | `--set-plain-text` | 标为纯文本模式(置 true)。**不提供不会置 false**;要把 HTML 模板翻回 false,请用 `--patch-file` 的 `{"is_plain_text_mode": false}` |
70
+ | `--set-to <emails>` | 替换默认收件人列表 |
71
+ | `--set-cc <emails>` | 替换默认抄送 |
72
+ | `--set-bcc <emails>` | 替换默认密送 |
73
+ | `--attach <paths>` | 追加非 inline 附件(按书写顺序),不替换已有附件 |
74
+
75
+ ### 结构化 patch
76
+
77
+ | 参数 | 说明 |
78
+ |------|------|
79
+ | `--patch-file <path>` | JSON patch 文件。结构同 `--print-patch-template` 输出;任何 **非空字段**覆盖当前模板对应字段 |
80
+
81
+ patch-file 字段(全部可选,未提供的字段保持当前模板原值):
82
+
83
+ ```json
84
+ {
85
+ "name": "string (≤100 chars, optional)",
86
+ "subject": "string (optional)",
87
+ "template_content": "string (HTML 或纯文本;本地 <img src> 会自动上传)",
88
+ "is_plain_text_mode": "bool (optional) — 显式 true/false 都生效",
89
+ "tos": [{"mail_address": "...", "name": "..."}],
90
+ "ccs": [{"mail_address": "...", "name": "..."}],
91
+ "bccs": [{"mail_address": "...", "name": "..."}]
92
+ }
93
+ ```
94
+
95
+ ## 合并策略
96
+
97
+ 1. `GET` 当前模板完整内容
98
+ 2. 先应用扁平 `--set-*` flag(非空即覆盖)
99
+ 3. 再应用 `--patch-file`(非空字段覆盖)——patch-file 优先级高于扁平 flag
100
+ 4. 重新扫描新正文中的 `<img>` 本地路径,上传到 Drive 并改写为 `cid:`
101
+ 5. `--attach` 追加的新附件以新的 `emlProjectedSize` 独立计算 SMALL/LARGE
102
+ 6. 附件按 `(id, cid)` 去重后 `PUT` 整个模板
103
+
104
+ > **所有原有附件保留**:只追加 `--attach` 新附件;如需删除已有附件,目前只能通过 `--patch-file` 的 `template_content` 改写正文去除相应 `<img>` 引用,或使用原生 API 整块重写。
105
+
106
+ ## DryRun 行为
107
+
108
+ - 默认:打印 `GET /user_mailboxes/:id/templates/:tid` + Drive 上传步骤(如有 `<img>` 或 `--attach`)+ `PUT` 步骤。
109
+ - `--inspect`:只打印 `GET`。
110
+ - `--print-patch-template`:打印骨架,不走任何 API。
111
+
112
+ ## 返回值
113
+
114
+ 成功返回:
115
+
116
+ ```json
117
+ {
118
+ "template": {
119
+ "template_id": "712345",
120
+ "name": "周报模板",
121
+ "subject": "每周五发布",
122
+ "template_content": "...",
123
+ "is_plain_text_mode": false,
124
+ "tos": [...],
125
+ "attachments": [...],
126
+ "create_time": "1714000000000"
127
+ }
128
+ }
129
+ ```
130
+
131
+ `--inspect` 返回同样结构;`--print-patch-template` 返回 patch JSON 骨架。
132
+
133
+ ## 错误码速查
134
+
135
+ | errno | HTTP | 触发 |
136
+ |-------|------|------|
137
+ | `15080201 InvalidTemplateName` | 400 | `--set-name` 为空或超 100 字符 |
138
+ | `15080203 TemplateContentSizeLimit` | 400 | 更新后 `template_content` > 3 MB |
139
+ | `15080204 InvalidTemplateID` | 404 | `template_id` 不存在或不属于当前用户 |
140
+ | `15080207 InvalidTemplateParam` | 400 | 其他参数错误(含 `template_id` 无法 parseInt) |
141
+
142
+ ## 所需 scope
143
+
144
+ `mail:user_mailbox.message:modify`, `mail:user_mailbox:readonly`
145
+
146
+ ## 相关
147
+
148
+ - 创建模板:[`+template-create`](./lark-mail-template-create.md)
149
+ - 套用模板发信:在 `+send` / `+draft-create` / `+reply` / `+reply-all` / `+forward` 中使用 `--template-id`
150
+ - 删除模板(原生 API):`lark-cli mail user_mailbox.templates delete --params '{"user_mailbox_id":"me","template_id":"<id>"}'`