@symerian/symi 3.0.16 → 3.0.18

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 (310) hide show
  1. package/dist/{audio-preflight-CBDFctZN.js → audio-preflight-BfmZbg4Y.js} +4 -4
  2. package/dist/{audio-preflight-gsZSpG-6.js → audio-preflight-DcuC-liM.js} +4 -4
  3. package/dist/build-info.json +3 -3
  4. package/dist/bundled/boot-md/handler.js +8 -8
  5. package/dist/bundled/session-memory/handler.js +7 -7
  6. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  7. package/dist/{chrome-nPMY1XTJ.js → chrome-Bo7cbvFK.js} +5 -5
  8. package/dist/{chrome-BjVab8gM.js → chrome-DYp18Q0t.js} +5 -5
  9. package/dist/{deliver-D-QFqm31.js → deliver-ChSIbiMM.js} +1 -1
  10. package/dist/{deliver-B4-bcot9.js → deliver-DEgRQM4J.js} +1 -1
  11. package/dist/extensionAPI.js +7 -7
  12. package/dist/{image-CDwtQjmt.js → image-Bx-hvoNJ.js} +1 -1
  13. package/dist/{image-CcS-vzTA.js → image-CQl_mjWk.js} +1 -1
  14. package/dist/llm-slug-generator.js +7 -7
  15. package/dist/{manager-BnEdHzmO.js → manager-D_pn0urG.js} +1 -1
  16. package/dist/{manager-09r0qPze.js → manager-YQxK2t0C.js} +1 -1
  17. package/dist/{pi-embedded-CWsY69-4.js → pi-embedded-CLw_ZzEZ.js} +16 -16
  18. package/dist/{pi-embedded-helpers-BBMy-lqr.js → pi-embedded-helpers-B5I53aw6.js} +4 -4
  19. package/dist/{pi-embedded-helpers-ChEYbgVj.js → pi-embedded-helpers-sUAEIC9X.js} +4 -4
  20. package/dist/plugin-sdk/{accounts-BfyWsC_i.js → accounts-CWFytwbR.js} +3 -3
  21. package/dist/plugin-sdk/{active-listener-DcJW7xAT.js → active-listener-BkZ4jHrL.js} +2 -2
  22. package/dist/plugin-sdk/{agent-scope-ChbGV6of.js → agent-scope-C9gfY_Gk.js} +2 -2
  23. package/dist/plugin-sdk/{audio-preflight-D3GtNLqW.js → audio-preflight-HKbdzXLZ.js} +21 -21
  24. package/dist/plugin-sdk/{bindings-CN2Qmefj.js → bindings-BaKIqPPy.js} +2 -2
  25. package/dist/plugin-sdk/{channel-web-DTyqujjA.js → channel-web-D5nWiTH1.js} +18 -18
  26. package/dist/plugin-sdk/{chrome-BKzAKr3K.js → chrome-klTSnz-9.js} +3 -3
  27. package/dist/plugin-sdk/{chunk-DhDkBujV.js → chunk-BbrYSny_.js} +1 -1
  28. package/dist/plugin-sdk/{command-format-CVrYFyZS.js → command-format-BN6tyZt6.js} +1 -1
  29. package/dist/plugin-sdk/{commands-registry-17yfZkHZ.js → commands-registry-CTzKKtY6.js} +4 -4
  30. package/dist/plugin-sdk/{config-7wk65zKC.js → config-Crv2qEdJ.js} +9 -9
  31. package/dist/plugin-sdk/{consolidate-exbAW0ml.js → consolidate-DT1QH65Q.js} +2 -2
  32. package/dist/plugin-sdk/{deliver-TxAcw7J5.js → deliver-7rOvAlrc.js} +12 -12
  33. package/dist/plugin-sdk/{diagnostic-Debx4frd.js → diagnostic-0nsxhWp7.js} +1 -1
  34. package/dist/plugin-sdk/{fs-safe-wBYbAkJF.js → fs-safe-DfWYBeWF.js} +1 -1
  35. package/dist/plugin-sdk/{gemini-auth-7U2pm2Ky.js → gemini-auth-C0N0_u49.js} +1 -1
  36. package/dist/plugin-sdk/{image-BtDVmYA5.js → image-WOSl2apK.js} +4 -4
  37. package/dist/plugin-sdk/index.js +43 -43
  38. package/dist/plugin-sdk/{ir-CKMvRrGW.js → ir-9J84MTls.js} +4 -4
  39. package/dist/plugin-sdk/{local-roots-c_gaPs01.js → local-roots-OLRDbvyY.js} +3 -3
  40. package/dist/plugin-sdk/{login-DUym1Jy0.js → login-C7x4q0i2.js} +7 -7
  41. package/dist/plugin-sdk/{login-qr-B-WBdvrX.js → login-qr-Dv5_MoAW.js} +9 -9
  42. package/dist/plugin-sdk/{manager-B71SCzos.js → manager-C83tK17x.js} +8 -8
  43. package/dist/plugin-sdk/{manifest-registry-Dnic6Chh.js → manifest-registry-CJMV-PI7.js} +1 -1
  44. package/dist/plugin-sdk/{markdown-tables-Dur7OTlM.js → markdown-tables-DXNKz5y_.js} +1 -1
  45. package/dist/plugin-sdk/{message-channel-BrAhJJV_.js → message-channel-aGy1HbQQ.js} +1 -1
  46. package/dist/plugin-sdk/{model-selection-B9qaVQSJ.js → model-selection-C-3-tpe7.js} +4 -4
  47. package/dist/plugin-sdk/{outbound-DB1wDM8b.js → outbound-DquCeSy5.js} +6 -6
  48. package/dist/plugin-sdk/{pi-auth-json-ZO118hoy.js → pi-auth-json-D9PDCXGn.js} +1 -1
  49. package/dist/plugin-sdk/{pi-embedded-helpers-s_U0Un7j.js → pi-embedded-helpers-D3ygfH7l.js} +16 -16
  50. package/dist/plugin-sdk/{plugins-DF81oSaI.js → plugins-DOwnSg9D.js} +4 -4
  51. package/dist/plugin-sdk/{pw-ai-CTwP02uv.js → pw-ai-rlengLjb.js} +8 -8
  52. package/dist/plugin-sdk/{qmd-manager-CBaSGant.js → qmd-manager-BzxFjRFa.js} +4 -4
  53. package/dist/plugin-sdk/{registry-CZVURNhF.js → registry-5iFfixlB.js} +2 -2
  54. package/dist/plugin-sdk/{replies-hwRbkU3z.js → replies-BXOzO_H5.js} +7 -7
  55. package/dist/plugin-sdk/{reply-prefix-CaXmzZlx.js → reply-prefix-INAKTqCU.js} +1 -1
  56. package/dist/plugin-sdk/{resolve-outbound-target-fxVSOBmk.js → resolve-outbound-target-DvbxHtqp.js} +2 -2
  57. package/dist/plugin-sdk/{resolve-route-ClCyiOeu.js → resolve-route-URXlY3AK.js} +3 -3
  58. package/dist/plugin-sdk/{runner-Cq5jvwQ7.js → runner-Bv0_DWoH.js} +9 -9
  59. package/dist/plugin-sdk/{session-B_TkB65Y.js → session-C3r8l7ou.js} +4 -4
  60. package/dist/plugin-sdk/{skill-commands-0LF9HTGr.js → skill-commands-KjLUGIdZ.js} +5 -5
  61. package/dist/plugin-sdk/{skills-BIT_O7J0.js → skills-BrsD4L5c.js} +7 -7
  62. package/dist/plugin-sdk/{sqlite-Bx5Y5U5X.js → sqlite-CjW7ME1H.js} +1 -1
  63. package/dist/plugin-sdk/{subsystem-CXqYeDy-.js → subsystem-DcOg1xJr.js} +1 -1
  64. package/dist/plugin-sdk/{synthesis-DtsYAj1E.js → synthesis-CY7YAasV.js} +38 -38
  65. package/dist/plugin-sdk/{target-errors-B8mokOeH.js → target-errors-BVWJGWFq.js} +2 -2
  66. package/dist/plugin-sdk/{thinking-Ca0DhqzO.js → thinking-CtsTDPOi.js} +3 -3
  67. package/dist/plugin-sdk/{tokens-CvlONEqh.js → tokens-8lqOTZCB.js} +1 -1
  68. package/dist/plugin-sdk/{tool-images-DpBaWEHT.js → tool-images-Cl_rGIUZ.js} +2 -2
  69. package/dist/plugin-sdk/{tool-loop-detection-BOvUFa0f.js → tool-loop-detection-Da4WUT_P.js} +2 -2
  70. package/dist/plugin-sdk/{unified-runner-CnM7lyNd.js → unified-runner-nwMnsZyj.js} +60 -60
  71. package/dist/plugin-sdk/web-BlweOZDp.js +54 -0
  72. package/dist/plugin-sdk/{whatsapp-actions-CvnfsFJm.js → whatsapp-actions-DpfaGYs7.js} +21 -21
  73. package/dist/{pw-ai-BW8_KeDf.js → pw-ai-BqxJG-Wh.js} +1 -1
  74. package/dist/{pw-ai-j9IE1K0-.js → pw-ai-C-NSGye0.js} +1 -1
  75. package/dist/{runner-8ALr2UII.js → runner-COGFTeDw.js} +1 -1
  76. package/dist/{runner-C4-9kFdR.js → runner-DhCi2lT1.js} +1 -1
  77. package/dist/{synthesis-Cph3LhA1.js → synthesis-CXZu24Vx.js} +7 -7
  78. package/dist/{synthesis-Cus0A2dL.js → synthesis-DrPxcMlQ.js} +7 -7
  79. package/dist/{unified-runner-CX80YMTk.js → unified-runner-iByUazvW.js} +16 -16
  80. package/dist/{web-ChozvJ7I.js → web-EsMQBIYf.js} +7 -7
  81. package/dist/{web-DFlsbXmQ.js → web-PPg5y6xI.js} +7 -7
  82. package/docs/.i18n/zh-CN.tm.jsonl +0 -20
  83. package/docs/automation/cron-jobs.md +0 -2
  84. package/docs/automation/hooks.md +0 -2
  85. package/docs/automation/poll.md +0 -8
  86. package/docs/automation/webhook.md +0 -2
  87. package/docs/capabilities.md +0 -2
  88. package/docs/channels/broadcast-groups.md +0 -1
  89. package/docs/channels/channel-routing.md +4 -10
  90. package/docs/channels/group-messages.md +0 -2
  91. package/docs/channels/groups.md +0 -10
  92. package/docs/channels/index.md +0 -1
  93. package/docs/channels/matrix.md +0 -2
  94. package/docs/channels/msteams.md +0 -2
  95. package/docs/channels/pairing.md +0 -3
  96. package/docs/channels/signal.md +0 -2
  97. package/docs/channels/troubleshooting.md +0 -7
  98. package/docs/cli/channels.md +0 -6
  99. package/docs/cli/configure.md +0 -1
  100. package/docs/cli/directory.md +0 -1
  101. package/docs/cli/index.md +0 -7
  102. package/docs/cli/message.md +1 -47
  103. package/docs/cli/status.md +0 -1
  104. package/docs/concepts/architecture.md +0 -1
  105. package/docs/concepts/features.md +0 -2
  106. package/docs/concepts/markdown-formatting.md +6 -8
  107. package/docs/concepts/memory.md +0 -4
  108. package/docs/concepts/messages.md +0 -1
  109. package/docs/concepts/models.md +0 -1
  110. package/docs/concepts/multi-agent.md +4 -19
  111. package/docs/concepts/queue.md +0 -3
  112. package/docs/concepts/retry.md +0 -5
  113. package/docs/concepts/session-tool.md +0 -2
  114. package/docs/concepts/session.md +2 -9
  115. package/docs/concepts/streaming.md +0 -2
  116. package/docs/concepts/system-prompt.md +0 -1
  117. package/docs/concepts/timezone.md +0 -1
  118. package/docs/date-time.md +0 -1
  119. package/docs/docs.json +2 -11
  120. package/docs/experiments/plans/cron-add-hardening.md +0 -1
  121. package/docs/experiments/plans/session-binding-channel-agnostic.md +2 -23
  122. package/docs/experiments/plans/thread-bound-subagents.md +7 -64
  123. package/docs/gateway/configuration-examples.md +0 -10
  124. package/docs/gateway/configuration-reference.md +22 -47
  125. package/docs/gateway/configuration.md +0 -3
  126. package/docs/gateway/heartbeat.md +0 -2
  127. package/docs/gateway/security/index.md +1 -6
  128. package/docs/gateway/troubleshooting.md +0 -1
  129. package/docs/help/faq.md +0 -13
  130. package/docs/help/troubleshooting.md +0 -1
  131. package/docs/index.md +0 -6
  132. package/docs/install/ansible.md +2 -3
  133. package/docs/install/docker.md +1 -7
  134. package/docs/install/fly.md +0 -14
  135. package/docs/install/northflank.mdx +7 -11
  136. package/docs/install/railway.mdx +6 -10
  137. package/docs/install/render.mdx +1 -2
  138. package/docs/ja-JP/index.md +0 -3
  139. package/docs/pi.md +3 -5
  140. package/docs/platforms/digitalocean.md +0 -1
  141. package/docs/platforms/mac/voicewake.md +0 -1
  142. package/docs/providers/index.md +0 -2
  143. package/docs/refactor/outbound-session-mirroring.md +0 -2
  144. package/docs/reference/AGENTS.default.md +0 -1
  145. package/docs/reference/RELEASING.md +0 -1
  146. package/docs/reference/session-management-compaction.md +0 -1
  147. package/docs/reference/templates/AGENTS.md +0 -7
  148. package/docs/reference/wizard.md +0 -4
  149. package/docs/security/CONTRIBUTING-THREAT-MODEL.md +0 -1
  150. package/docs/security/README.md +0 -1
  151. package/docs/security/THREAT-MODEL-ATLAS.md +7 -10
  152. package/docs/start/docs-directory.md +0 -1
  153. package/docs/start/hubs.md +0 -1
  154. package/docs/start/lore.md +0 -3
  155. package/docs/start/setup.md +0 -2
  156. package/docs/start/showcase.md +0 -2
  157. package/docs/start/symi.md +0 -4
  158. package/docs/start/wizard-cli-reference.md +0 -4
  159. package/docs/start/wizard.md +3 -4
  160. package/docs/tools/agent-send.md +0 -1
  161. package/docs/tools/elevated.md +0 -2
  162. package/docs/tools/exec-approvals.md +0 -1
  163. package/docs/tools/index.md +0 -7
  164. package/docs/tools/multi-agent-sandbox-tools.md +1 -2
  165. package/docs/tools/reactions.md +0 -1
  166. package/docs/tools/slash-commands.md +0 -14
  167. package/docs/tools/symihub.md +0 -1
  168. package/docs/tts.md +0 -1
  169. package/docs/web/control-ui.md +0 -1
  170. package/docs/zh-CN/automation/cron-jobs.md +0 -2
  171. package/docs/zh-CN/automation/poll.md +0 -8
  172. package/docs/zh-CN/automation/webhook.md +0 -2
  173. package/docs/zh-CN/channels/broadcast-groups.md +0 -1
  174. package/docs/zh-CN/channels/channel-routing.md +4 -9
  175. package/docs/zh-CN/channels/group-messages.md +0 -2
  176. package/docs/zh-CN/channels/groups.md +0 -10
  177. package/docs/zh-CN/channels/imessage.md +0 -2
  178. package/docs/zh-CN/channels/index.md +0 -1
  179. package/docs/zh-CN/channels/msteams.md +0 -2
  180. package/docs/zh-CN/channels/pairing.md +0 -3
  181. package/docs/zh-CN/channels/signal.md +0 -2
  182. package/docs/zh-CN/channels/slack.md +0 -2
  183. package/docs/zh-CN/channels/telegram.md +0 -3
  184. package/docs/zh-CN/channels/troubleshooting.md +0 -2
  185. package/docs/zh-CN/cli/channels.md +0 -6
  186. package/docs/zh-CN/cli/configure.md +0 -1
  187. package/docs/zh-CN/cli/directory.md +0 -1
  188. package/docs/zh-CN/cli/index.md +0 -7
  189. package/docs/zh-CN/cli/message.md +1 -42
  190. package/docs/zh-CN/cli/status.md +0 -1
  191. package/docs/zh-CN/concepts/architecture.md +0 -1
  192. package/docs/zh-CN/concepts/features.md +0 -2
  193. package/docs/zh-CN/concepts/markdown-formatting.md +6 -8
  194. package/docs/zh-CN/concepts/messages.md +0 -1
  195. package/docs/zh-CN/concepts/multi-agent.md +4 -5
  196. package/docs/zh-CN/concepts/queue.md +0 -3
  197. package/docs/zh-CN/concepts/retry.md +0 -5
  198. package/docs/zh-CN/concepts/session-tool.md +0 -2
  199. package/docs/zh-CN/concepts/session.md +3 -11
  200. package/docs/zh-CN/concepts/streaming.md +0 -2
  201. package/docs/zh-CN/concepts/system-prompt.md +0 -2
  202. package/docs/zh-CN/concepts/timezone.md +0 -2
  203. package/docs/zh-CN/date-time.md +0 -1
  204. package/docs/zh-CN/experiments/plans/cron-add-hardening.md +0 -1
  205. package/docs/zh-CN/gateway/configuration-examples.md +0 -7
  206. package/docs/zh-CN/gateway/configuration.md +2 -50
  207. package/docs/zh-CN/gateway/heartbeat.md +0 -2
  208. package/docs/zh-CN/gateway/security/index.md +1 -6
  209. package/docs/zh-CN/gateway/troubleshooting.md +1 -14
  210. package/docs/zh-CN/help/faq.md +0 -15
  211. package/docs/zh-CN/index.md +0 -3
  212. package/docs/zh-CN/install/ansible.md +2 -3
  213. package/docs/zh-CN/install/docker.md +1 -7
  214. package/docs/zh-CN/install/fly.md +0 -14
  215. package/docs/zh-CN/install/northflank.mdx +7 -11
  216. package/docs/zh-CN/install/railway.mdx +6 -10
  217. package/docs/zh-CN/install/render.mdx +1 -2
  218. package/docs/zh-CN/pi.md +3 -5
  219. package/docs/zh-CN/platforms/digitalocean.md +0 -1
  220. package/docs/zh-CN/platforms/mac/voicewake.md +0 -1
  221. package/docs/zh-CN/providers/index.md +0 -2
  222. package/docs/zh-CN/refactor/outbound-session-mirroring.md +0 -2
  223. package/docs/zh-CN/reference/AGENTS.default.md +0 -1
  224. package/docs/zh-CN/reference/RELEASING.md +0 -1
  225. package/docs/zh-CN/reference/session-management-compaction.md +0 -1
  226. package/docs/zh-CN/reference/templates/AGENTS.md +0 -5
  227. package/docs/zh-CN/start/docs-directory.md +0 -1
  228. package/docs/zh-CN/start/getting-started.md +0 -5
  229. package/docs/zh-CN/start/hubs.md +0 -1
  230. package/docs/zh-CN/start/lore.md +0 -3
  231. package/docs/zh-CN/start/setup.md +0 -2
  232. package/docs/zh-CN/start/showcase.md +0 -2
  233. package/docs/zh-CN/start/symi.md +0 -4
  234. package/docs/zh-CN/start/wizard.md +0 -5
  235. package/docs/zh-CN/tools/agent-send.md +0 -1
  236. package/docs/zh-CN/tools/elevated.md +0 -2
  237. package/docs/zh-CN/tools/exec-approvals.md +0 -1
  238. package/docs/zh-CN/tools/index.md +0 -7
  239. package/docs/zh-CN/tools/multi-agent-sandbox-tools.md +1 -2
  240. package/docs/zh-CN/tools/reactions.md +0 -1
  241. package/docs/zh-CN/tools/slash-commands.md +0 -9
  242. package/docs/zh-CN/tts.md +0 -2
  243. package/docs/zh-CN/web/control-ui.md +0 -1
  244. package/package.json +1 -1
  245. package/dist/plugin-sdk/web-CIPJBHAU.js +0 -54
  246. package/docs/channels/discord.md +0 -998
  247. package/docs/zh-CN/channels/discord.md +0 -468
  248. package/skills/1password/SKILL.md +0 -71
  249. package/skills/1password/references/cli-examples.md +0 -29
  250. package/skills/1password/references/get-started.md +0 -17
  251. package/skills/apple-notes/SKILL.md +0 -78
  252. package/skills/apple-reminders/SKILL.md +0 -119
  253. package/skills/bear-notes/SKILL.md +0 -108
  254. package/skills/blogwatcher/SKILL.md +0 -70
  255. package/skills/blucli/SKILL.md +0 -48
  256. package/skills/bluebubbles/SKILL.md +0 -132
  257. package/skills/camsnap/SKILL.md +0 -46
  258. package/skills/canvas/SKILL.md +0 -204
  259. package/skills/connect-email/SKILL.md +0 -142
  260. package/skills/document-generation/SKILL.md +0 -83
  261. package/skills/eightctl/SKILL.md +0 -51
  262. package/skills/food-order/SKILL.md +0 -49
  263. package/skills/gemini/SKILL.md +0 -44
  264. package/skills/gh-issues/SKILL.md +0 -865
  265. package/skills/gifgrep/SKILL.md +0 -80
  266. package/skills/github/SKILL.md +0 -164
  267. package/skills/gog/SKILL.md +0 -117
  268. package/skills/goplaces/SKILL.md +0 -53
  269. package/skills/healthcheck/SKILL.md +0 -246
  270. package/skills/himalaya/SKILL.md +0 -258
  271. package/skills/himalaya/references/configuration.md +0 -184
  272. package/skills/himalaya/references/message-composition.md +0 -199
  273. package/skills/imsg/SKILL.md +0 -122
  274. package/skills/long-task/SKILL.md +0 -58
  275. package/skills/long-task/scripts/detach-task.sh +0 -187
  276. package/skills/nano-banana-pro/SKILL.md +0 -59
  277. package/skills/nano-banana-pro/scripts/generate_image.py +0 -184
  278. package/skills/nano-pdf/SKILL.md +0 -39
  279. package/skills/notion/SKILL.md +0 -173
  280. package/skills/obsidian/SKILL.md +0 -82
  281. package/skills/openai-image-gen/SKILL.md +0 -90
  282. package/skills/openai-image-gen/scripts/gen.py +0 -240
  283. package/skills/openai-whisper/SKILL.md +0 -39
  284. package/skills/openai-whisper-api/SKILL.md +0 -53
  285. package/skills/openai-whisper-api/scripts/transcribe.sh +0 -85
  286. package/skills/openhue/SKILL.md +0 -113
  287. package/skills/oracle/SKILL.md +0 -126
  288. package/skills/ordercli/SKILL.md +0 -79
  289. package/skills/peekaboo/SKILL.md +0 -191
  290. package/skills/reactions-extensive/SKILL.md +0 -30
  291. package/skills/reactions-minimal/SKILL.md +0 -31
  292. package/skills/safe-edit/SKILL.md +0 -51
  293. package/skills/sag/SKILL.md +0 -88
  294. package/skills/sherpa-onnx-tts/SKILL.md +0 -104
  295. package/skills/sherpa-onnx-tts/bin/sherpa-onnx-tts +0 -178
  296. package/skills/songsee/SKILL.md +0 -50
  297. package/skills/sonoscli/SKILL.md +0 -66
  298. package/skills/spotify-player/SKILL.md +0 -65
  299. package/skills/symihub/SKILL.md +0 -78
  300. package/skills/things-mac/SKILL.md +0 -87
  301. package/skills/tmux/SKILL.md +0 -153
  302. package/skills/tmux/scripts/find-sessions.sh +0 -112
  303. package/skills/tmux/scripts/wait-for-text.sh +0 -83
  304. package/skills/trello/SKILL.md +0 -96
  305. package/skills/video-frames/SKILL.md +0 -47
  306. package/skills/video-frames/scripts/frame.sh +0 -81
  307. package/skills/voice-call/SKILL.md +0 -46
  308. package/skills/wacli/SKILL.md +0 -73
  309. package/skills/weather/SKILL.md +0 -113
  310. package/skills/xurl/SKILL.md +0 -462
@@ -1,258 +0,0 @@
1
- ---
2
- name: himalaya
3
- description: "CLI to manage emails via IMAP/SMTP. Use `himalaya` to list, read, write, reply, forward, search, and organize emails from the terminal. Supports multiple accounts and message composition with MML (MIME Meta Language)."
4
- homepage: https://github.com/pimalaya/himalaya
5
- metadata:
6
- {
7
- "symi":
8
- {
9
- "emoji": "📧",
10
- "requires": { "bins": ["himalaya"] },
11
- "install":
12
- [
13
- {
14
- "id": "brew",
15
- "kind": "brew",
16
- "formula": "himalaya",
17
- "bins": ["himalaya"],
18
- "label": "Install Himalaya (brew)",
19
- },
20
- ],
21
- },
22
- }
23
- triggers: [himalaya]
24
- ---
25
-
26
- # Himalaya Email CLI
27
-
28
- Himalaya is a CLI email client that lets you manage emails from the terminal using IMAP, SMTP, Notmuch, or Sendmail backends.
29
-
30
- ## References
31
-
32
- - `references/configuration.md` (config file setup + IMAP/SMTP authentication)
33
- - `references/message-composition.md` (MML syntax for composing emails)
34
-
35
- ## Prerequisites
36
-
37
- 1. Himalaya CLI installed (`himalaya --version` to verify)
38
- 2. A configuration file at `~/.config/himalaya/config.toml`
39
- 3. IMAP/SMTP credentials configured (password stored securely)
40
-
41
- ## Configuration Setup
42
-
43
- Run the interactive wizard to set up an account:
44
-
45
- ```bash
46
- himalaya account configure
47
- ```
48
-
49
- Or create `~/.config/himalaya/config.toml` manually:
50
-
51
- ```toml
52
- [accounts.personal]
53
- email = "you@example.com"
54
- display-name = "Your Name"
55
- default = true
56
-
57
- backend.type = "imap"
58
- backend.host = "imap.example.com"
59
- backend.port = 993
60
- backend.encryption.type = "tls"
61
- backend.login = "you@example.com"
62
- backend.auth.type = "password"
63
- backend.auth.cmd = "pass show email/imap" # or use keyring
64
-
65
- message.send.backend.type = "smtp"
66
- message.send.backend.host = "smtp.example.com"
67
- message.send.backend.port = 587
68
- message.send.backend.encryption.type = "start-tls"
69
- message.send.backend.login = "you@example.com"
70
- message.send.backend.auth.type = "password"
71
- message.send.backend.auth.cmd = "pass show email/smtp"
72
- ```
73
-
74
- ## Common Operations
75
-
76
- ### List Folders
77
-
78
- ```bash
79
- himalaya folder list
80
- ```
81
-
82
- ### List Emails
83
-
84
- List emails in INBOX (default):
85
-
86
- ```bash
87
- himalaya envelope list
88
- ```
89
-
90
- List emails in a specific folder:
91
-
92
- ```bash
93
- himalaya envelope list --folder "Sent"
94
- ```
95
-
96
- List with pagination:
97
-
98
- ```bash
99
- himalaya envelope list --page 1 --page-size 20
100
- ```
101
-
102
- ### Search Emails
103
-
104
- ```bash
105
- himalaya envelope list from john@example.com subject meeting
106
- ```
107
-
108
- ### Read an Email
109
-
110
- Read email by ID (shows plain text):
111
-
112
- ```bash
113
- himalaya message read 42
114
- ```
115
-
116
- Export raw MIME:
117
-
118
- ```bash
119
- himalaya message export 42 --full
120
- ```
121
-
122
- ### Reply to an Email
123
-
124
- Interactive reply (opens $EDITOR):
125
-
126
- ```bash
127
- himalaya message reply 42
128
- ```
129
-
130
- Reply-all:
131
-
132
- ```bash
133
- himalaya message reply 42 --all
134
- ```
135
-
136
- ### Forward an Email
137
-
138
- ```bash
139
- himalaya message forward 42
140
- ```
141
-
142
- ### Write a New Email
143
-
144
- Interactive compose (opens $EDITOR):
145
-
146
- ```bash
147
- himalaya message write
148
- ```
149
-
150
- Send directly using template:
151
-
152
- ```bash
153
- cat << 'EOF' | himalaya template send
154
- From: you@example.com
155
- To: recipient@example.com
156
- Subject: Test Message
157
-
158
- Hello from Himalaya!
159
- EOF
160
- ```
161
-
162
- Or with headers flag:
163
-
164
- ```bash
165
- himalaya message write -H "To:recipient@example.com" -H "Subject:Test" "Message body here"
166
- ```
167
-
168
- ### Move/Copy Emails
169
-
170
- Move to folder:
171
-
172
- ```bash
173
- himalaya message move 42 "Archive"
174
- ```
175
-
176
- Copy to folder:
177
-
178
- ```bash
179
- himalaya message copy 42 "Important"
180
- ```
181
-
182
- ### Delete an Email
183
-
184
- ```bash
185
- himalaya message delete 42
186
- ```
187
-
188
- ### Manage Flags
189
-
190
- Add flag:
191
-
192
- ```bash
193
- himalaya flag add 42 --flag seen
194
- ```
195
-
196
- Remove flag:
197
-
198
- ```bash
199
- himalaya flag remove 42 --flag seen
200
- ```
201
-
202
- ## Multiple Accounts
203
-
204
- List accounts:
205
-
206
- ```bash
207
- himalaya account list
208
- ```
209
-
210
- Use a specific account:
211
-
212
- ```bash
213
- himalaya --account work envelope list
214
- ```
215
-
216
- ## Attachments
217
-
218
- Save attachments from a message:
219
-
220
- ```bash
221
- himalaya attachment download 42
222
- ```
223
-
224
- Save to specific directory:
225
-
226
- ```bash
227
- himalaya attachment download 42 --dir ~/Downloads
228
- ```
229
-
230
- ## Output Formats
231
-
232
- Most commands support `--output` for structured output:
233
-
234
- ```bash
235
- himalaya envelope list --output json
236
- himalaya envelope list --output plain
237
- ```
238
-
239
- ## Debugging
240
-
241
- Enable debug logging:
242
-
243
- ```bash
244
- RUST_LOG=debug himalaya envelope list
245
- ```
246
-
247
- Full trace with backtrace:
248
-
249
- ```bash
250
- RUST_LOG=trace RUST_BACKTRACE=1 himalaya envelope list
251
- ```
252
-
253
- ## Tips
254
-
255
- - Use `himalaya --help` or `himalaya <command> --help` for detailed usage.
256
- - Message IDs are relative to the current folder; re-list after folder changes.
257
- - For composing rich emails with attachments, use MML syntax (see `references/message-composition.md`).
258
- - Store passwords securely using `pass`, system keyring, or a command that outputs the password.
@@ -1,184 +0,0 @@
1
- # Himalaya Configuration Reference
2
-
3
- Configuration file location: `~/.config/himalaya/config.toml`
4
-
5
- ## Minimal IMAP + SMTP Setup
6
-
7
- ```toml
8
- [accounts.default]
9
- email = "user@example.com"
10
- display-name = "Your Name"
11
- default = true
12
-
13
- # IMAP backend for reading emails
14
- backend.type = "imap"
15
- backend.host = "imap.example.com"
16
- backend.port = 993
17
- backend.encryption.type = "tls"
18
- backend.login = "user@example.com"
19
- backend.auth.type = "password"
20
- backend.auth.raw = "your-password"
21
-
22
- # SMTP backend for sending emails
23
- message.send.backend.type = "smtp"
24
- message.send.backend.host = "smtp.example.com"
25
- message.send.backend.port = 587
26
- message.send.backend.encryption.type = "start-tls"
27
- message.send.backend.login = "user@example.com"
28
- message.send.backend.auth.type = "password"
29
- message.send.backend.auth.raw = "your-password"
30
- ```
31
-
32
- ## Password Options
33
-
34
- ### Raw password (testing only, not recommended)
35
-
36
- ```toml
37
- backend.auth.raw = "your-password"
38
- ```
39
-
40
- ### Password from command (recommended)
41
-
42
- ```toml
43
- backend.auth.cmd = "pass show email/imap"
44
- # backend.auth.cmd = "security find-generic-password -a user@example.com -s imap -w"
45
- ```
46
-
47
- ### System keyring (requires keyring feature)
48
-
49
- ```toml
50
- backend.auth.keyring = "imap-example"
51
- ```
52
-
53
- Then run `himalaya account configure <account>` to store the password.
54
-
55
- ## Gmail Configuration
56
-
57
- ```toml
58
- [accounts.gmail]
59
- email = "you@gmail.com"
60
- display-name = "Your Name"
61
- default = true
62
-
63
- backend.type = "imap"
64
- backend.host = "imap.gmail.com"
65
- backend.port = 993
66
- backend.encryption.type = "tls"
67
- backend.login = "you@gmail.com"
68
- backend.auth.type = "password"
69
- backend.auth.cmd = "pass show google/app-password"
70
-
71
- message.send.backend.type = "smtp"
72
- message.send.backend.host = "smtp.gmail.com"
73
- message.send.backend.port = 587
74
- message.send.backend.encryption.type = "start-tls"
75
- message.send.backend.login = "you@gmail.com"
76
- message.send.backend.auth.type = "password"
77
- message.send.backend.auth.cmd = "pass show google/app-password"
78
- ```
79
-
80
- **Note:** Gmail requires an App Password if 2FA is enabled.
81
-
82
- ## iCloud Configuration
83
-
84
- ```toml
85
- [accounts.icloud]
86
- email = "you@icloud.com"
87
- display-name = "Your Name"
88
-
89
- backend.type = "imap"
90
- backend.host = "imap.mail.me.com"
91
- backend.port = 993
92
- backend.encryption.type = "tls"
93
- backend.login = "you@icloud.com"
94
- backend.auth.type = "password"
95
- backend.auth.cmd = "pass show icloud/app-password"
96
-
97
- message.send.backend.type = "smtp"
98
- message.send.backend.host = "smtp.mail.me.com"
99
- message.send.backend.port = 587
100
- message.send.backend.encryption.type = "start-tls"
101
- message.send.backend.login = "you@icloud.com"
102
- message.send.backend.auth.type = "password"
103
- message.send.backend.auth.cmd = "pass show icloud/app-password"
104
- ```
105
-
106
- **Note:** Generate an app-specific password at appleid.apple.com
107
-
108
- ## Folder Aliases
109
-
110
- Map custom folder names:
111
-
112
- ```toml
113
- [accounts.default.folder.alias]
114
- inbox = "INBOX"
115
- sent = "Sent"
116
- drafts = "Drafts"
117
- trash = "Trash"
118
- ```
119
-
120
- ## Multiple Accounts
121
-
122
- ```toml
123
- [accounts.personal]
124
- email = "personal@example.com"
125
- default = true
126
- # ... backend config ...
127
-
128
- [accounts.work]
129
- email = "work@company.com"
130
- # ... backend config ...
131
- ```
132
-
133
- Switch accounts with `--account`:
134
-
135
- ```bash
136
- himalaya --account work envelope list
137
- ```
138
-
139
- ## Notmuch Backend (local mail)
140
-
141
- ```toml
142
- [accounts.local]
143
- email = "user@example.com"
144
-
145
- backend.type = "notmuch"
146
- backend.db-path = "~/.mail/.notmuch"
147
- ```
148
-
149
- ## OAuth2 Authentication (for providers that support it)
150
-
151
- ```toml
152
- backend.auth.type = "oauth2"
153
- backend.auth.client-id = "your-client-id"
154
- backend.auth.client-secret.cmd = "pass show oauth/client-secret"
155
- backend.auth.access-token.cmd = "pass show oauth/access-token"
156
- backend.auth.refresh-token.cmd = "pass show oauth/refresh-token"
157
- backend.auth.auth-url = "https://provider.com/oauth/authorize"
158
- backend.auth.token-url = "https://provider.com/oauth/token"
159
- ```
160
-
161
- ## Additional Options
162
-
163
- ### Signature
164
-
165
- ```toml
166
- [accounts.default]
167
- signature = "Best regards,\nYour Name"
168
- signature-delim = "-- \n"
169
- ```
170
-
171
- ### Downloads directory
172
-
173
- ```toml
174
- [accounts.default]
175
- downloads-dir = "~/Downloads/himalaya"
176
- ```
177
-
178
- ### Editor for composing
179
-
180
- Set via environment variable:
181
-
182
- ```bash
183
- export EDITOR="vim"
184
- ```
@@ -1,199 +0,0 @@
1
- # Message Composition with MML (MIME Meta Language)
2
-
3
- Himalaya uses MML for composing emails. MML is a simple XML-based syntax that compiles to MIME messages.
4
-
5
- ## Basic Message Structure
6
-
7
- An email message is a list of **headers** followed by a **body**, separated by a blank line:
8
-
9
- ```
10
- From: sender@example.com
11
- To: recipient@example.com
12
- Subject: Hello World
13
-
14
- This is the message body.
15
- ```
16
-
17
- ## Headers
18
-
19
- Common headers:
20
-
21
- - `From`: Sender address
22
- - `To`: Primary recipient(s)
23
- - `Cc`: Carbon copy recipients
24
- - `Bcc`: Blind carbon copy recipients
25
- - `Subject`: Message subject
26
- - `Reply-To`: Address for replies (if different from From)
27
- - `In-Reply-To`: Message ID being replied to
28
-
29
- ### Address Formats
30
-
31
- ```
32
- To: user@example.com
33
- To: John Doe <john@example.com>
34
- To: "John Doe" <john@example.com>
35
- To: user1@example.com, user2@example.com, "Jane" <jane@example.com>
36
- ```
37
-
38
- ## Plain Text Body
39
-
40
- Simple plain text email:
41
-
42
- ```
43
- From: alice@localhost
44
- To: bob@localhost
45
- Subject: Plain Text Example
46
-
47
- Hello, this is a plain text email.
48
- No special formatting needed.
49
-
50
- Best,
51
- Alice
52
- ```
53
-
54
- ## MML for Rich Emails
55
-
56
- ### Multipart Messages
57
-
58
- Alternative text/html parts:
59
-
60
- ```
61
- From: alice@localhost
62
- To: bob@localhost
63
- Subject: Multipart Example
64
-
65
- <#multipart type=alternative>
66
- This is the plain text version.
67
- <#part type=text/html>
68
- <html><body><h1>This is the HTML version</h1></body></html>
69
- <#/multipart>
70
- ```
71
-
72
- ### Attachments
73
-
74
- Attach a file:
75
-
76
- ```
77
- From: alice@localhost
78
- To: bob@localhost
79
- Subject: With Attachment
80
-
81
- Here is the document you requested.
82
-
83
- <#part filename=/path/to/document.pdf><#/part>
84
- ```
85
-
86
- Attachment with custom name:
87
-
88
- ```
89
- <#part filename=/path/to/file.pdf name=report.pdf><#/part>
90
- ```
91
-
92
- Multiple attachments:
93
-
94
- ```
95
- <#part filename=/path/to/doc1.pdf><#/part>
96
- <#part filename=/path/to/doc2.pdf><#/part>
97
- ```
98
-
99
- ### Inline Images
100
-
101
- Embed an image inline:
102
-
103
- ```
104
- From: alice@localhost
105
- To: bob@localhost
106
- Subject: Inline Image
107
-
108
- <#multipart type=related>
109
- <#part type=text/html>
110
- <html><body>
111
- <p>Check out this image:</p>
112
- <img src="cid:image1">
113
- </body></html>
114
- <#part disposition=inline id=image1 filename=/path/to/image.png><#/part>
115
- <#/multipart>
116
- ```
117
-
118
- ### Mixed Content (Text + Attachments)
119
-
120
- ```
121
- From: alice@localhost
122
- To: bob@localhost
123
- Subject: Mixed Content
124
-
125
- <#multipart type=mixed>
126
- <#part type=text/plain>
127
- Please find the attached files.
128
-
129
- Best,
130
- Alice
131
- <#part filename=/path/to/file1.pdf><#/part>
132
- <#part filename=/path/to/file2.zip><#/part>
133
- <#/multipart>
134
- ```
135
-
136
- ## MML Tag Reference
137
-
138
- ### `<#multipart>`
139
-
140
- Groups multiple parts together.
141
-
142
- - `type=alternative`: Different representations of same content
143
- - `type=mixed`: Independent parts (text + attachments)
144
- - `type=related`: Parts that reference each other (HTML + images)
145
-
146
- ### `<#part>`
147
-
148
- Defines a message part.
149
-
150
- - `type=<mime-type>`: Content type (e.g., `text/html`, `application/pdf`)
151
- - `filename=<path>`: File to attach
152
- - `name=<name>`: Display name for attachment
153
- - `disposition=inline`: Display inline instead of as attachment
154
- - `id=<cid>`: Content ID for referencing in HTML
155
-
156
- ## Composing from CLI
157
-
158
- ### Interactive compose
159
-
160
- Opens your `$EDITOR`:
161
-
162
- ```bash
163
- himalaya message write
164
- ```
165
-
166
- ### Reply (opens editor with quoted message)
167
-
168
- ```bash
169
- himalaya message reply 42
170
- himalaya message reply 42 --all # reply-all
171
- ```
172
-
173
- ### Forward
174
-
175
- ```bash
176
- himalaya message forward 42
177
- ```
178
-
179
- ### Send from stdin
180
-
181
- ```bash
182
- cat message.txt | himalaya template send
183
- ```
184
-
185
- ### Prefill headers from CLI
186
-
187
- ```bash
188
- himalaya message write \
189
- -H "To:recipient@example.com" \
190
- -H "Subject:Quick Message" \
191
- "Message body here"
192
- ```
193
-
194
- ## Tips
195
-
196
- - The editor opens with a template; fill in headers and body.
197
- - Save and exit the editor to send; exit without saving to cancel.
198
- - MML parts are compiled to proper MIME when sending.
199
- - Use `himalaya message export --full` to inspect the raw MIME structure of received emails.