@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,232 @@
1
+ # mail +forward
2
+
3
+ > **前置条件:** 先阅读 [`../../lark-shared/SKILL.md`](../../lark-shared/SKILL.md) 了解认证、全局参数和安全规则。
4
+
5
+ 转发指定邮件,自动处理:
6
+ - 主题前缀 `Fwd: `(已含前缀时不重复)
7
+ - 自动拼接标准 “Forwarded message” 区块(From/Date/Subject/To + 原文)
8
+ - 支持纯文本和 HTML 转发
9
+
10
+ > **默认草稿**:`+forward` 默认保存为草稿,不会立即发送。如需立即发送,添加 `--confirm-send` 参数(仅在用户明确确认后使用)。
11
+
12
+ 本 skill 对应 shortcut:`lark-cli mail +forward`。
13
+
14
+ ## CRITICAL — 发送工作流(必须遵循)
15
+
16
+ 此命令默认**只保存草稿**,不会发送邮件。转发会将原邮件内容发送给新收件人,需要发送时有两种合规方式:
17
+
18
+ **方式 A(推荐)** — 创建转发草稿(不带 `--confirm-send`):
19
+ ```bash
20
+ lark-cli mail +forward --message-id <邮件ID> --to <收件人>
21
+ ```
22
+ → 返回 `draft_id`
23
+
24
+ 向用户展示转发摘要(被转发邮件、收件人、附加说明);如果用户想先看效果,可引导其去飞书邮件里查看草稿。
25
+
26
+ 用户明确同意后,发送该草稿:
27
+ ```bash
28
+ lark-cli mail user_mailbox.drafts send --params '{"user_mailbox_id":"me","draft_id":"<Step 1 返回的 draft_id>"}'
29
+ ```
30
+
31
+ **方式 B(允许)** — 用户已经明确确认收件人和内容时,可直接使用 `--confirm-send` 立即发送。
32
+
33
+ **禁止在用户未明确同意的情况下执行发送,无论是发送草稿还是直接使用 `--confirm-send`。**
34
+
35
+ ## 命令
36
+
37
+ ```bash
38
+ # 转发邮件(默认保存为草稿)— HTML 推荐
39
+ lark-cli mail +forward --message-id <邮件ID> --to alice@example.com --body '<p>FYI,请看下面原邮件。</p>'
40
+
41
+ # 转发并附加说明 + 抄送(草稿)
42
+ lark-cli mail +forward --message-id <邮件ID> --to alice@example.com --cc bob@example.com --body '<b>请参考</b>'
43
+
44
+ # 转发时插入内嵌图片(推荐:直接用相对路径,自动解析)
45
+ lark-cli mail +forward --message-id <邮件ID> --to alice@example.com --body '<p>详见图示:<img src="./logo.png" /></p>'
46
+
47
+ # 纯文本转发(仅在内容极简时使用)
48
+ lark-cli mail +forward --message-id <邮件ID> --to alice@example.com
49
+
50
+ # 确认发送(用户明确确认后才可使用)
51
+ lark-cli mail +forward --message-id <邮件ID> --to alice@example.com --confirm-send
52
+
53
+ # Dry Run(仅打印请求,不发送)
54
+ lark-cli mail +forward --message-id <邮件ID> --to alice@example.com --dry-run
55
+ ```
56
+
57
+ ## 参数
58
+
59
+ | 参数 | 必填 | 说明 |
60
+ |------|------|------|
61
+ | `--message-id <id>` | 是 | 被转发的邮件 ID |
62
+ | `--to <emails>` | 是 | 收件人邮箱,多个用逗号分隔 |
63
+ | `--body <text>` | 否 | 转发时附加的说明文字。推荐使用 HTML 获得富文本排版;也支持纯文本。根据转发正文和原邮件正文自动检测 HTML。使用 `--plain-text` 可强制纯文本模式。支持 `<img src="./local.png" />` 相对路径自动解析为内嵌图片(仅支持相对路径,不支持绝对路径) |
64
+ | `--from <email>` | 否 | 发件人邮箱地址(EML From 头)。使用别名(send_as)发信时,设为别名地址并配合 `--mailbox` 指定所属邮箱。默认读取邮箱主地址 |
65
+ | `--mailbox <email>` | 否 | 邮箱地址,指定草稿所属的邮箱(默认回退到 `--from`,再回退到 `me`)。当发件人(`--from`)与邮箱不同时使用。可通过 `accessible_mailboxes` 查询可用邮箱 |
66
+ | `--cc <emails>` | 否 | 抄送邮箱,多个用逗号分隔 |
67
+ | `--bcc <emails>` | 否 | 密送邮箱,多个用逗号分隔。与 `--event-*` 不兼容(见 `+send` 日程邀请约束) |
68
+ | `--plain-text` | 否 | 强制纯文本模式,忽略所有 HTML 自动检测。不可与 `--inline` 同时使用 |
69
+ | `--attach <paths>` | 否 | 附件文件路径,多个用逗号分隔,追加在原邮件附件之后。相对路径。当附件导致 EML 总大小超过 25 MB 时,超出部分自动上传为超大附件(HTML 邮件插入下载卡片,纯文本邮件追加下载链接),单个文件上限 3 GB |
70
+ | `--inline <json>` | 否 | 高级用法:手动指定内嵌图片 CID 映射。推荐直接在 `--body` 中使用 `<img src="./path" />`(自动解析)。仅在需要精确控制 CID 命名时使用此参数。格式:`'[{"cid":"mycid","file_path":"./logo.png"}]'`,在 body 中用 `<img src="cid:mycid">` 引用。不可与 `--plain-text` 同时使用 |
71
+ | `--signature-id <id>` | 否 | 签名 ID。附加邮箱签名到转发正文与引用块之间。运行 `mail +signature` 查看可用签名。不可与 `--plain-text` 同时使用 |
72
+ | `--priority <level>` | 否 | 邮件优先级:`high`、`normal`、`low`。省略或 `normal` 时不设置优先级 |
73
+ | `--event-summary <text>` | 否 | 日程标题。设置此参数即在邮件中嵌入日程邀请。需同时设置 `--event-start` 和 `--event-end` |
74
+ | `--event-start <time>` | 条件必填 | 日程开始时间(ISO 8601) |
75
+ | `--event-end <time>` | 条件必填 | 日程结束时间(ISO 8601) |
76
+ | `--event-location <text>` | 否 | 日程地点 |
77
+ | `--confirm-send` | 否 | 确认发送转发(默认只保存草稿)。仅在用户明确确认后使用 |
78
+
79
+ > **日程约束**:`--event-*` 与 `--send-time` 不可同时使用;`--to` 和 `--cc` 收件人自动成为日程参与者(ATTENDEE),`--bcc` 收件人不计入参与者。
80
+ | `--send-time <timestamp>` | 否 | 定时发送时间,Unix 时间戳(秒)。需至少为当前时间 + 5 分钟。配合 `--confirm-send` 使用可定时发送邮件 |
81
+ | `--request-receipt` | 否 | 请求已读回执(RFC 3798 Message Disposition Notification)。在出站 EML 里写 `Disposition-Notification-To: <sender>` 头。收件人的邮件客户端可能弹出提示、自动发送或忽略——送达不保证 |
82
+ | `--dry-run` | 否 | 仅打印请求,不执行 |
83
+
84
+ ## 返回值
85
+
86
+ 默认(草稿模式):
87
+ ```json
88
+ {
89
+ "ok": true,
90
+ "data": {
91
+ "draft_id": "草稿ID",
92
+ "tip": "draft saved. To send: lark-cli mail user_mailbox.drafts send --params '{...}'"
93
+ }
94
+ }
95
+ ```
96
+
97
+ `--confirm-send` 模式:
98
+ ```json
99
+ {
100
+ "ok": true,
101
+ "data": {
102
+ "message_id": "邮件ID",
103
+ "thread_id": "会话ID"
104
+ }
105
+ }
106
+ ```
107
+
108
+ 可选字段:
109
+
110
+ - `automation_send_disable_reason`:发送被邮箱自动化设置拦截时返回的原因
111
+ - `automation_send_disable_reference`:发送被拦截时的草稿打开链接
112
+
113
+ 字段语义:
114
+
115
+ - 若返回中包含 `automation_send_disable_reason` / `automation_send_disable_reference`,说明转发未真正发出,而是被邮箱设置拦截。此时应直接向用户展示原因和草稿打开链接,不要继续假设已经发送成功
116
+
117
+ ## 典型场景
118
+
119
+ ### 场景 1:用户说"把这封邮件转发给 Bob"(只创建草稿)
120
+ ```bash
121
+ lark-cli mail +forward --message-id <邮件ID> --to bob@example.com --body '<p>FYI</p>'
122
+ ```
123
+ → 返回 `draft_id`,告诉用户转发草稿已创建。
124
+
125
+ ### 场景 2:用户说"转发给 Bob 并发送"(需要发送)
126
+ ```bash
127
+ # 方式 A: 创建转发草稿
128
+ lark-cli mail +forward --message-id <邮件ID> --to bob@example.com --body '<p>FYI,请查收。</p>'
129
+ # → 返回 draft_id
130
+
131
+ # 向用户确认 "收件人 bob@example.com。如果你想先看效果,也可以先去飞书邮件里查看草稿。确认发送吗?"
132
+
133
+ # 用户确认后发送
134
+ lark-cli mail user_mailbox.drafts send --params '{"user_mailbox_id":"me","draft_id":"<draft_id>"}'
135
+
136
+ # 方式 B: 用户已明确确认时,直接发送
137
+ lark-cli mail +forward --message-id <邮件ID> --to bob@example.com --body '<p>FYI,请查收。</p>' --confirm-send
138
+ ```
139
+
140
+ ### 场景 3:用户说"下午 3 点转发给 Bob"(定时发送)
141
+ ```bash
142
+ # Step 1: 创建转发草稿
143
+ lark-cli mail +forward --message-id <邮件ID> --to bob@example.com --body '<p>FYI,请查收。</p>'
144
+ # → 返回 draft_id
145
+
146
+ # Step 2: 向用户确认 "转发草稿已创建:收件人 bob@example.com,定时 <目标时间> 发送。确认吗?"
147
+
148
+ # Step 3: 用户确认后定时发送(send_time 为 Unix 时间戳,需至少当前时间 + 5 分钟)
149
+ lark-cli mail user_mailbox.drafts send --params '{"user_mailbox_id":"me","draft_id":"<draft_id>"}' --data '{"send_time":"<unix_timestamp>"}'
150
+ ```
151
+
152
+ ### 场景 4:用户说"等等,先不转发了"(取消定时发送)
153
+ ```bash
154
+ # 取消定时发送(取消后邮件变回草稿)
155
+ lark-cli mail user_mailbox.drafts cancel_scheduled_send --params '{"user_mailbox_id":"me","draft_id":"<draft_id>"}'
156
+ ```
157
+ → 取消成功后邮件恢复为草稿状态,用户可重新编辑或在之后重新发送。
158
+
159
+ ## 转发整个会话
160
+
161
+ `+forward` 操作的是单封邮件(`--message-id`),但转发整个会话时应 forward **会话中最后一条消息**,因为邮件客户端会将完整的回复链嵌套在最新一条中。典型流程:
162
+
163
+ ```bash
164
+ # 1. 用 +triage 或 +thread 找到会话
165
+ lark-cli mail +thread --thread-id <THREAD_ID> --html=false --format json
166
+
167
+ # 2. 取最后一条消息的 message_id
168
+ # messages 按时间升序排列,最后一条 = messages[-1].message_id
169
+
170
+ # 3. 转发该消息
171
+ lark-cli mail +forward --message-id <最后一条的message_id> --to recipient@example.com --body '请过目'
172
+ ```
173
+
174
+ ## 实现说明
175
+
176
+ - 自动拉取原邮件后构建转发内容。
177
+ - 纯文本模式下会生成标准转发头块并附上原文文本。
178
+ - HTML 模式下会生成结构化转发块并尽量保留原 HTML 正文。
179
+
180
+ ## 发送后跟进
181
+
182
+ 转发发送后,分两种情况处理:
183
+
184
+ - 若返回中有 `automation_send_disable_reason` / `automation_send_disable_reference`:说明发送被邮箱设置拦截,应直接告诉用户原因并提供草稿打开链接,**不要**调用 `send_status`
185
+
186
+ **1. 确认投递状态**(仅立即发送且返回非空 `message_id` 时必须)
187
+
188
+ 用返回的 `message_id` 查询投递状态:
189
+
190
+ ```bash
191
+ lark-cli mail user_mailbox.messages send_status --params '{"user_mailbox_id":"me","message_id":"<发送返回的 message_id>"}'
192
+ ```
193
+
194
+ 状态码:1=正在投递, 2=投递失败重试, 3=退信, 4=投递成功, 5=待审批, 6=审批拒绝。向用户简要报告投递结果,异常状态需重点提示。
195
+
196
+ **1b. 定时发送(指定了 `--send-time`)**
197
+
198
+ 定时发送不会立即产生 `message_id`,因此 `send_status` 在定时发送成功后会返回"待发送"状态,**不建议在定时发送后立即查询**。可在预定发送时间后再查询。
199
+
200
+ 如需取消定时发送:
201
+
202
+ ```bash
203
+ lark-cli mail user_mailbox.drafts cancel_scheduled_send --params '{"user_mailbox_id":"me","draft_id":"<draft_id>"}'
204
+ ```
205
+
206
+ **取消后邮件会变回草稿**,可继续编辑或在之后重新发送。
207
+
208
+ **2. 标记已读**(可选)— 询问用户是否需要将原邮件标记为已读。如果用户同意:
209
+
210
+ ```bash
211
+ lark-cli mail user_mailbox.messages batch_modify_message --params '{"user_mailbox_id":"me"}' --data '{"message_ids":["<原邮件ID>"],"remove_label_ids":["UNREAD"]}'
212
+ ```
213
+
214
+ ## 编辑转发草稿
215
+
216
+ `+forward` 创建的草稿正文包含引用区(原邮件的引用块)。如果需要编辑转发草稿的正文,**必须通过 `--patch-file` 使用 `set_reply_body` op**,它仅替换用户撰写部分,自动保留引用区。value 只传新的用户撰写内容,不要包含引用区。
217
+
218
+ ```bash
219
+ # 编辑转发草稿正文(自动保留引用区)
220
+ cat > ./patch.json << 'EOF'
221
+ { "ops": [{ "op": "set_reply_body", "value": "<p>修改后的转发附言</p>" }] }
222
+ EOF
223
+ lark-cli mail +draft-edit --draft-id <draft_id> --patch-file ./patch.json
224
+ ```
225
+
226
+ 如果用户要修改引用区内容或去掉引用区,则使用 `set_body` 全量替换。
227
+
228
+ ## 相关命令
229
+
230
+ - `lark-cli mail +send` — 发送新邮件
231
+ - `lark-cli mail +reply` — 回复邮件
232
+ - `lark-cli mail user_mailbox.messages get` — 查看邮件详情
@@ -0,0 +1,230 @@
1
+ # mail +message
2
+
3
+ > **前置条件:** 先阅读 [`../../lark-shared/SKILL.md`](../../lark-shared/SKILL.md) 了解认证、全局参数和安全规则。
4
+
5
+ 读取指定邮件的完整内容,包括邮件头、正文(纯文本 + 可选 HTML)以及统一的 `attachments` 列表(涵盖普通附件和内嵌图片)。
6
+
7
+ CLI 分两阶段构建最终 JSON:
8
+ - 安全的邮件元数据字段直接透传
9
+ - 正文、附件和辅助字段由 shortcut 派生
10
+
11
+ 本 skill 对应 shortcut `lark-cli mail +message`,内部步骤:
12
+ 1. `GET /open-apis/mail/v1/user_mailboxes/{mailbox}/messages/{message_id}` — 获取完整邮件内容
13
+
14
+ ## 命令
15
+
16
+ ```bash
17
+ # 读取一封邮件(默认包含 HTML 正文)
18
+ lark-cli mail +message --message-id <message-id>
19
+
20
+ # 仅纯文本正文(更小的负载,适合 AI 处理)
21
+ lark-cli mail +message --message-id <message-id> --html=false
22
+
23
+ # 指定邮箱
24
+ lark-cli mail +message --mailbox user@example.com --message-id <message-id>
25
+
26
+ # JSON 输出(脚本友好)
27
+ lark-cli mail +message --message-id <message-id> --format json
28
+
29
+ # Dry Run
30
+ lark-cli mail +message --message-id <message-id> --dry-run
31
+ ```
32
+
33
+ ## 参数
34
+
35
+ | 参数 | 必填 | 默认值 | 说明 |
36
+ |------|------|--------|------|
37
+ | `--message-id <id>` | 是 | — | 邮件 ID |
38
+ | `--mailbox <email>` | 否 | 当前用户 | 邮箱地址(`user_mailbox_id`) |
39
+ | `--html` | 否 | true | 是否返回 HTML 正文(`false` 仅返回纯文本,减少带宽) |
40
+ | `--format <mode>` | 否 | json | 输出格式:`json`(默认)/ `pretty` / `table` / `ndjson` / `csv` |
41
+ | `--dry-run` | 否 | — | 仅打印请求,不执行 |
42
+
43
+ ## 返回值
44
+
45
+ 成功时返回 `{"ok": true, "data": ...}` 结构,`data` 字段包含:
46
+
47
+ ```json
48
+ {
49
+ "message_id": "邮件 ID",
50
+ "thread_id": "会话 ID",
51
+ "smtp_message_id": "RFC 2822 Message-ID",
52
+ "subject": "邮件主题",
53
+ "head_from": {"mail_address": "alice@example.com", "name": "Alice"},
54
+ "to": [{"mail_address": "bob@example.com", "name": "Bob"}],
55
+ "cc": [{"mail_address": "carol@example.com", "name": "Carol"}],
56
+ "bcc": [],
57
+ "date": "Thu, 19 Mar 2026 16:33:02 +0800",
58
+ "in_reply_to": "<original@domain>",
59
+ "reply_to": "reply-to@domain",
60
+ "reply_to_smtp_message_id": "reply-to@domain",
61
+ "references": ["<a@domain>", "<b@domain>"],
62
+ "internal_date": "1748000000000",
63
+ "date_formatted": "2026-03-19 16:33",
64
+ "message_state": 1,
65
+ "message_state_text": "received",
66
+ "folder_id": "INBOX",
67
+ "label_ids": ["UNREAD"],
68
+ "priority_type": "1",
69
+ "priority_type_text": "high",
70
+ "security_level": {
71
+ "is_risk": true,
72
+ "risk_banner_level": "DANGER",
73
+ "risk_banner_reason": "UNAUTH_EXTERNAL",
74
+ "is_header_from_external": true,
75
+ "via_domain": "example.com",
76
+ "spam_banner_type": "USER_RULE",
77
+ "spam_user_rule_id": "76180000000025388",
78
+ "spam_banner_info": "blocked.example.com"
79
+ },
80
+ "body_plain_text": "Hi Bob, ...",
81
+ "body_preview": "Hi Bob, ...",
82
+ "body_html": "<html>...</html>",
83
+ "attachments": [
84
+ {
85
+ "id": "att_xxx",
86
+ "filename": "report.pdf",
87
+ "attachment_type": 1,
88
+ "is_inline": false
89
+ },
90
+ {
91
+ "id": "att_yyy",
92
+ "filename": "logo.png",
93
+ "content_type": "image/png",
94
+ "is_inline": true,
95
+ "cid": "logo@cid"
96
+ }
97
+ ]
98
+ }
99
+ ```
100
+
101
+ ### 字段说明
102
+
103
+ > 注意:使用 `--format json` 获取结构化输出。所有 JSON 输出统一包裹在 `{"ok": true, "data": ...}` 结构中。
104
+
105
+ | 字段 | 说明 |
106
+ |------|------|
107
+ | `message_id` | 邮件 ID |
108
+ | `thread_id` | 会话 ID |
109
+ | `subject` | 邮件主题 |
110
+ | `head_from` | 发件人对象:`{mail_address, name}` |
111
+ | `to` | 收件人列表:`[{mail_address, name}]` |
112
+ | `cc` | 抄送列表:`[{mail_address, name}]` |
113
+ | `bcc` | 密送列表:`[{mail_address, name}]` |
114
+ | `date` | EML 中的时间(毫秒) |
115
+ | `date_formatted` | 可读的发送时间,如 `"2026-03-19 16:33"` |
116
+ | `smtp_message_id` | 符合 RFC 2822 的 SMTP Message-ID |
117
+ | `in_reply_to` | In-Reply-To 邮件头 |
118
+ | `references` | References 邮件头,祖先 SMTP message ID 列表 |
119
+ | `internal_date` | 创建/接收/发送时间(毫秒) |
120
+ | `message_state` | 邮件状态:`1` = 已接收,`2` = 已发送,`3` = 草稿 |
121
+ | `message_state_text` | `"unknown"` / `"received"` / `"sent"` / `"draft"` |
122
+ | `folder_id` | 文件夹 ID。值:`INBOX`、`SENT`、`SPAM`、`ARCHIVED`、`STRANGER`,或自定义文件夹 ID |
123
+ | `label_ids` | 标签 ID 列表 |
124
+ | `priority_type` | 优先级值:`0` = 无优先级,`1` = 高,`3` = 普通,`5` = 低 |
125
+ | `priority_type_text` | `"unknown"` / `"high"` / `"normal"` / `"low"` |
126
+ | `draft_id` | 草稿 ID,可通过列出草稿 API 获取 |
127
+ | `reply_to` | Reply-To 邮件头 |
128
+ | `reply_to_smtp_message_id` | Reply-To SMTP Message-ID |
129
+ | `body_plain_text` | **LLM 阅读推荐的正文字段**;已 base64url 解码并清理 ANSI 转义 |
130
+ | `body_preview` | 纯文本正文前 100 字符,用于快速预览 |
131
+ | `body_html` | 原始 HTML 正文;`--html=false` 时省略 |
132
+ | `attachments` | 普通附件和内嵌图片的统一列表 |
133
+ | `attachments[].id` | 附件 ID(用于下载 URL API) |
134
+ | `attachments[].filename` | 附件文件名 |
135
+ | `attachments[].content_type` | 附件 MIME 类型 |
136
+ | `attachments[].attachment_type` | 附件类型:`1` = 普通附件,`2` = 超大附件 |
137
+ | `attachments[].is_inline` | `true` = 内嵌图片,`false` = 普通附件 |
138
+ | `attachments[].cid` | 内嵌图片的 Content-ID(对应 HTML 正文中 `<img src="cid:...">` 的引用) |
139
+
140
+ ### security_level
141
+
142
+ 当服务端有该邮件的风险元数据时返回。
143
+
144
+ | 字段 | 说明 |
145
+ |------|------|
146
+ | `is_risk` | 布尔值。`true` 表示邮件被标记为有风险 |
147
+ | `risk_banner_level` | 风险等级。值:`WARNING`、`DANGER`、`INFO` |
148
+ | `risk_banner_reason` | 风险原因。值:`NO_REASON`、`IMPERSONATE_DOMAIN`(相似域名仿冒)、`IMPERSONATE_KP_NAME`(关键人物姓名仿冒)、`UNAUTH_EXTERNAL`(未认证的外部域名)、`MALICIOUS_URL`、`MALICIOUS_ATTACHMENT`、`PHISHING`、`IMPERSONATE_PARTNER`(合作伙伴仿冒)、`EXTERNAL_ENCRYPTION_ATTACHMENT`(外部加密附件) |
149
+ | `is_header_from_external` | 布尔值。`true` 表示发件人来自外部域名 |
150
+ | `via_domain` | 当邮件代发或伪造时显示的 SPF/DKIM 域名,如 `"larksuite.com"` |
151
+ | `spam_banner_type` | 垃圾邮件原因。值:`USER_REPORT`(用户举报)、`USER_BLOCK`(被用户屏蔽)、`ANTI_SPAM`(系统判定为垃圾邮件)、`USER_RULE`(匹配收件箱规则)、`BLOCK_DOMIN`(域名被用户屏蔽)、`BLOCK_ADDRESS`(地址被用户屏蔽) |
152
+ | `spam_user_rule_id` | 匹配的收件箱规则 ID |
153
+ | `spam_banner_info` | 匹配用户黑名单的地址或域名,如 `"larksuite.com"` |
154
+
155
+ ## 注意事项
156
+
157
+ - **JSON 输出可直接使用** — 默认输出合法 UTF-8 JSON,可直接读取,无需额外编码转换。
158
+ - JSON 输出中 `body_html` 里的 `<` / `>` 可能显示为 `\u003c` / `\u003e`(JSON 安全转义,内容不变,`jq -r` 可还原)。
159
+ - `mail +message` 默认不再获取附件/图片下载 URL。这样可以保持邮件详情读取更轻量,调用方可按需单独请求 URL。
160
+ - 查看原始 HTML:
161
+
162
+ ```bash
163
+ # jq -r 自动处理 JSON 转义,输出原始 HTML
164
+ lark-cli mail +message --message-id <id> --format json | jq -r '.data.body_html'
165
+ ```
166
+
167
+ ## 典型场景
168
+
169
+ ### 读取邮件 → 摘要 → 回复
170
+
171
+ ```bash
172
+ # 1. 读取邮件(仅纯文本,更小负载)
173
+ lark-cli mail +message --message-id <id> --html=false --format json
174
+
175
+ # 2. 让 LLM 分析 body_plain_text 并起草回复
176
+
177
+ # 3. 发送回复
178
+ lark-cli mail +reply --message-id <id> --body "..."
179
+ ```
180
+
181
+ ### 按需获取附件或内嵌图片下载 URL
182
+
183
+ ```bash
184
+ # 1. 读取邮件,从 .data.attachments[] 中获取附件 ID
185
+ lark-cli mail +message --message-id <id> --format json
186
+
187
+ # 2. 仅为需要的 ID 获取下载 URL
188
+ lark-cli schema mail.user_mailbox.message.attachments.download_url
189
+ lark-cli mail user_mailbox.message.attachments download_url \
190
+ --params '{"user_mailbox_id":"me","message_id":"<id>","attachment_ids":["att_xxx","att_yyy"]}'
191
+ ```
192
+
193
+ 普通附件和内嵌图片使用同一个 `user_mailbox.message.attachments download_url` 原生 API(无 shortcut 封装),传入 `attachments[].id` 即可。
194
+
195
+ ## 日程邀请邮件
196
+
197
+ 当邮件包含日程邀请(`text/calendar`)时,输出中会包含 `calendar_event` 对象:
198
+
199
+ ```json
200
+ {
201
+ "calendar_event": {
202
+ "method": "REQUEST",
203
+ "uid": "abc123",
204
+ "summary": "产品评审",
205
+ "start": "2026-04-20T14:00:00+08:00",
206
+ "end": "2026-04-20T15:00:00+08:00",
207
+ "location": "5F-大会议室",
208
+ "organizer": "sender@example.com",
209
+ "attendees": ["alice@example.com", "bob@example.com"]
210
+ }
211
+ }
212
+ ```
213
+
214
+ 字段说明:
215
+
216
+ - `method`:ICS `METHOD`,通常为 `REQUEST` / `REPLY` / `CANCEL`。
217
+ - `uid`:日程 UID。
218
+ - `summary`:日程标题。
219
+ - `start` / `end`:开始 / 结束时间(RFC 3339 UTC)。
220
+ - `location`:地点(可能为空)。
221
+ - `organizer`:组织者邮箱。
222
+ - `attendees`:参会人邮箱列表。
223
+
224
+ ## 相关命令
225
+
226
+ - `lark-cli mail +thread` — 读取会话中所有邮件
227
+ - `lark-cli mail +reply` — 回复邮件
228
+ - `lark-cli mail +forward` — 转发邮件
229
+ - `lark-cli mail user_mailbox.message.attachments download_url` — 按需获取邮件附件/图片下载 URL
230
+ - `lark-cli mail user_mailbox.messages list` — 列出收件箱邮件(获取 `message_id`)
@@ -0,0 +1,108 @@
1
+ # mail +messages
2
+
3
+ > **前置条件:** 先阅读 [`../../lark-shared/SKILL.md`](../../lark-shared/SKILL.md) 了解认证、全局参数和安全规则。
4
+
5
+ 通过传入逗号分隔的 `message_id` 列表,一次性读取多封邮件的完整内容。
6
+
7
+ 本 shortcut 是 `mail +message` 的批量版本。每个返回的 `messages[]` 项使用与 `+message` 相同的归一化结构:安全元数据字段直接透传,正文和辅助字段由 shortcut 派生。
8
+
9
+ 优先使用本 shortcut 而非原生 `mail user_mailbox.messages batch_get` API,因为:
10
+ - 正文字段已 base64url 解码
11
+ - 每条邮件的输出结构已归一化
12
+ - 不可用的 message ID 会被显式列出
13
+
14
+ 本 skill 对应 shortcut `lark-cli mail +messages`,内部步骤:
15
+ 1. `POST /open-apis/mail/v1/user_mailboxes/{mailbox}/messages/batch_get` — 批量获取邮件
16
+ 2. 对每条返回的邮件使用与 `+message` 相同的规则归一化输出
17
+
18
+ ## 命令
19
+
20
+ ```bash
21
+ # 读取多封邮件(默认包含 HTML 正文)
22
+ lark-cli mail +messages --message-ids <id1>,<id2>,<id3>
23
+
24
+ # 仅纯文本正文(更小的负载,适合 AI 处理)
25
+ lark-cli mail +messages --message-ids <id1>,<id2>,<id3> --html=false
26
+
27
+ # 指定邮箱
28
+ lark-cli mail +messages --mailbox user@example.com --message-ids <id1>,<id2>
29
+
30
+ # JSON 输出
31
+ lark-cli mail +messages --message-ids <id1>,<id2> --format json
32
+
33
+ # Dry Run
34
+ lark-cli mail +messages --message-ids <id1>,<id2> --dry-run
35
+ ```
36
+
37
+ ## 参数
38
+
39
+ | 参数 | 必填 | 默认值 | 说明 |
40
+ |------|------|--------|------|
41
+ | `--message-ids <id1,id2,...>` | 是 | — | 逗号分隔的邮件 ID 列表 |
42
+ | `--mailbox <email>` | 否 | 当前用户 | 邮箱地址(`user_mailbox_id`) |
43
+ | `--html` | 否 | true | 是否返回 HTML 正文(`false` 仅返回纯文本,减少带宽) |
44
+ | `--format <mode>` | 否 | json | 输出格式:`json`(默认)/ `pretty` / `table` / `ndjson` / `csv` |
45
+ | `--dry-run` | 否 | — | 仅打印请求,不执行 |
46
+
47
+ ## 返回值
48
+
49
+ 成功时返回 `{"ok": true, "data": ...}` 结构,`data` 字段包含:
50
+
51
+ ```json
52
+ {
53
+ "messages": [
54
+ { "...与 +message 输出结构相同..." }
55
+ ],
56
+ "total": 1,
57
+ "unavailable_message_ids": ["msg-2"]
58
+ }
59
+ ```
60
+
61
+ 顶层字段:
62
+
63
+ | 字段 | 说明 |
64
+ |------|------|
65
+ | `messages` | 返回的邮件列表,顺序与请求的 `--message-ids` 一致,排除 API 未返回的 ID |
66
+ | `total` | 成功返回的邮件数量 |
67
+ | `unavailable_message_ids` | 请求了但 Mail API 未返回详情的 ID 列表 |
68
+
69
+ 每个 `messages[]` 项使用与 [`mail +message`](./lark-mail-message.md#返回值) 相同的结构。完整字段列表参见 [`+message` 字段说明](./lark-mail-message.md#字段说明) 和 [`+message` security_level](./lark-mail-message.md#security_level)。
70
+
71
+ > 注意:使用 `--format json` 获取结构化输出。所有 JSON 输出统一包裹在 `{"ok": true, "data": ...}` 结构中。
72
+
73
+ ## 注意事项
74
+
75
+ - **JSON 输出可直接使用**,可直接读取,无需额外编码转换。
76
+ - 只需读取一封邮件时请使用 `+message`。
77
+ - `--message-ids` 无硬性上限;shortcut 内部会自动将大列表拆分为多次批量 API 调用。
78
+ - JSON 输出中 `messages[].body_html` 里的 `<` / `>` 可能显示为 `\u003c` / `\u003e`(JSON 安全转义,内容不变,`jq -r` 可还原)。
79
+ - `mail +messages` 仅返回附件元数据。如后续步骤需要下载 URL,请针对特定的 `message_id` 和 `attachment_ids` 调用原生附件 URL API。
80
+ - 与 `+message` 一样,普通附件和内嵌图片都出现在 `messages[].attachments[]` 中,使用同一个 `user_mailbox.message.attachments download_url` API。
81
+
82
+ ## 典型场景
83
+
84
+ ### 批量摘要多封已知邮件
85
+
86
+ ```bash
87
+ # 一次性读取多封邮件
88
+ lark-cli mail +messages --message-ids <id1>,<id2>,<id3> --html=false --format json
89
+
90
+ # 让 LLM 分析 .data.messages[].body_plain_text 并生成分组摘要
91
+ ```
92
+
93
+ ### 对比多封邮件内容后决策
94
+
95
+ ```bash
96
+ # 获取多封邮件的归一化输出
97
+ lark-cli mail +messages --message-ids <id1>,<id2> --html=false --format json
98
+
99
+ # 检查 subject/from/body_preview 或 body_plain_text,对比意图和下一步操作
100
+ ```
101
+
102
+ ## 相关命令
103
+
104
+ - `lark-cli mail +message` — 读取单封邮件
105
+ - `lark-cli mail +thread` — 读取会话中所有邮件
106
+ - `lark-cli mail +reply` — 回复邮件
107
+ - `lark-cli mail +forward` — 转发邮件
108
+ - `lark-cli mail user_mailbox.message.attachments download_url` — 按需获取邮件附件/图片下载 URL