@symerian/symi 3.0.21 → 3.0.22

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 (688) hide show
  1. package/dist/build-info.json +3 -3
  2. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  3. package/package.json +1 -1
  4. package/docs/.i18n/README.md +0 -31
  5. package/docs/.i18n/glossary.ja-JP.json +0 -14
  6. package/docs/.i18n/glossary.zh-CN.json +0 -210
  7. package/docs/.i18n/ja-JP.tm.jsonl +0 -0
  8. package/docs/.i18n/zh-CN.tm.jsonl +0 -1303
  9. package/docs/CNAME +0 -1
  10. package/docs/assets/install-script.svg +0 -1
  11. package/docs/assets/macos-onboarding/01-macos-warning.jpeg +0 -0
  12. package/docs/assets/macos-onboarding/02-local-networks.jpeg +0 -0
  13. package/docs/assets/macos-onboarding/03-security-notice.png +0 -0
  14. package/docs/assets/macos-onboarding/04-choose-gateway.png +0 -0
  15. package/docs/assets/macos-onboarding/05-permissions.png +0 -0
  16. package/docs/assets/pixel-symi.svg +0 -60
  17. package/docs/assets/showcase/agents-ui.jpg +0 -0
  18. package/docs/assets/showcase/bambu-cli.png +0 -0
  19. package/docs/assets/showcase/codexmonitor.png +0 -0
  20. package/docs/assets/showcase/gohome-grafana.png +0 -0
  21. package/docs/assets/showcase/ios-testflight.jpg +0 -0
  22. package/docs/assets/showcase/oura-health.png +0 -0
  23. package/docs/assets/showcase/padel-cli.svg +0 -11
  24. package/docs/assets/showcase/padel-screenshot.jpg +0 -0
  25. package/docs/assets/showcase/papla-tts.jpg +0 -0
  26. package/docs/assets/showcase/pr-review-telegram.jpg +0 -0
  27. package/docs/assets/showcase/roborock-screenshot.jpg +0 -0
  28. package/docs/assets/showcase/roborock-status.svg +0 -13
  29. package/docs/assets/showcase/roof-camera-sky.jpg +0 -0
  30. package/docs/assets/showcase/snag.png +0 -0
  31. package/docs/assets/showcase/tesco-shop.jpg +0 -0
  32. package/docs/assets/showcase/wienerlinien.png +0 -0
  33. package/docs/assets/showcase/wine-cellar-skill.jpg +0 -0
  34. package/docs/assets/showcase/winix-air-purifier.jpg +0 -0
  35. package/docs/assets/showcase/xuezh-pronunciation.jpeg +0 -0
  36. package/docs/assets/sponsors/blacksmith.svg +0 -14
  37. package/docs/assets/sponsors/openai.svg +0 -3
  38. package/docs/assets/symi-logo-text-dark.png +0 -0
  39. package/docs/assets/symi-logo-text.png +0 -0
  40. package/docs/automation/auth-monitoring.md +0 -44
  41. package/docs/automation/cron-jobs.md +0 -540
  42. package/docs/automation/cron-vs-heartbeat.md +0 -286
  43. package/docs/automation/gmail-pubsub.md +0 -256
  44. package/docs/automation/hooks.md +0 -998
  45. package/docs/automation/poll.md +0 -61
  46. package/docs/automation/troubleshooting.md +0 -122
  47. package/docs/automation/webhook.md +0 -213
  48. package/docs/brave-search.md +0 -41
  49. package/docs/capabilities.md +0 -151
  50. package/docs/channels/bluebubbles.md +0 -346
  51. package/docs/channels/broadcast-groups.md +0 -441
  52. package/docs/channels/channel-routing.md +0 -112
  53. package/docs/channels/feishu.md +0 -586
  54. package/docs/channels/googlechat.md +0 -253
  55. package/docs/channels/grammy.md +0 -31
  56. package/docs/channels/group-messages.md +0 -82
  57. package/docs/channels/groups.md +0 -364
  58. package/docs/channels/imessage.md +0 -366
  59. package/docs/channels/index.md +0 -46
  60. package/docs/channels/irc.md +0 -234
  61. package/docs/channels/line.md +0 -186
  62. package/docs/channels/location.md +0 -56
  63. package/docs/channels/matrix.md +0 -300
  64. package/docs/channels/mattermost.md +0 -158
  65. package/docs/channels/msteams.md +0 -769
  66. package/docs/channels/nextcloud-talk.md +0 -138
  67. package/docs/channels/nostr.md +0 -233
  68. package/docs/channels/pairing.md +0 -100
  69. package/docs/channels/signal.md +0 -322
  70. package/docs/channels/slack.md +0 -510
  71. package/docs/channels/telegram.md +0 -748
  72. package/docs/channels/tlon.md +0 -148
  73. package/docs/channels/troubleshooting.md +0 -110
  74. package/docs/channels/twitch.md +0 -379
  75. package/docs/channels/whatsapp.md +0 -444
  76. package/docs/channels/zalo.md +0 -192
  77. package/docs/channels/zalouser.md +0 -140
  78. package/docs/ci.md +0 -50
  79. package/docs/cli/acp.md +0 -182
  80. package/docs/cli/agent.md +0 -24
  81. package/docs/cli/agents.md +0 -75
  82. package/docs/cli/approvals.md +0 -50
  83. package/docs/cli/browser.md +0 -107
  84. package/docs/cli/channels.md +0 -73
  85. package/docs/cli/config.md +0 -50
  86. package/docs/cli/configure.md +0 -32
  87. package/docs/cli/cron.md +0 -44
  88. package/docs/cli/dashboard.md +0 -16
  89. package/docs/cli/devices.md +0 -73
  90. package/docs/cli/directory.md +0 -62
  91. package/docs/cli/dns.md +0 -23
  92. package/docs/cli/docs.md +0 -15
  93. package/docs/cli/doctor.md +0 -41
  94. package/docs/cli/gateway.md +0 -202
  95. package/docs/cli/health.md +0 -21
  96. package/docs/cli/hooks.md +0 -313
  97. package/docs/cli/index.md +0 -1029
  98. package/docs/cli/logs.md +0 -28
  99. package/docs/cli/memory.md +0 -45
  100. package/docs/cli/message.md +0 -214
  101. package/docs/cli/models.md +0 -79
  102. package/docs/cli/node.md +0 -112
  103. package/docs/cli/nodes.md +0 -73
  104. package/docs/cli/onboard.md +0 -76
  105. package/docs/cli/pairing.md +0 -21
  106. package/docs/cli/plugins.md +0 -92
  107. package/docs/cli/reset.md +0 -17
  108. package/docs/cli/sandbox.md +0 -152
  109. package/docs/cli/security.md +0 -64
  110. package/docs/cli/sessions.md +0 -16
  111. package/docs/cli/setup.md +0 -29
  112. package/docs/cli/skills.md +0 -26
  113. package/docs/cli/status.md +0 -25
  114. package/docs/cli/system.md +0 -60
  115. package/docs/cli/tui.md +0 -23
  116. package/docs/cli/uninstall.md +0 -17
  117. package/docs/cli/update.md +0 -98
  118. package/docs/cli/voicecall.md +0 -34
  119. package/docs/cli/webhooks.md +0 -25
  120. package/docs/concepts/agent-loop.md +0 -148
  121. package/docs/concepts/agent-workspace.md +0 -234
  122. package/docs/concepts/agent.md +0 -123
  123. package/docs/concepts/architecture.md +0 -135
  124. package/docs/concepts/compaction.md +0 -61
  125. package/docs/concepts/context.md +0 -161
  126. package/docs/concepts/features.md +0 -51
  127. package/docs/concepts/markdown-formatting.md +0 -128
  128. package/docs/concepts/memory.md +0 -729
  129. package/docs/concepts/messages.md +0 -153
  130. package/docs/concepts/model-failover.md +0 -149
  131. package/docs/concepts/model-providers.md +0 -424
  132. package/docs/concepts/models.md +0 -208
  133. package/docs/concepts/multi-agent.md +0 -521
  134. package/docs/concepts/oauth.md +0 -145
  135. package/docs/concepts/presence.md +0 -102
  136. package/docs/concepts/queue.md +0 -86
  137. package/docs/concepts/retry.md +0 -64
  138. package/docs/concepts/session-pruning.md +0 -123
  139. package/docs/concepts/session-tool.md +0 -213
  140. package/docs/concepts/session.md +0 -199
  141. package/docs/concepts/sessions.md +0 -10
  142. package/docs/concepts/streaming.md +0 -129
  143. package/docs/concepts/system-prompt.md +0 -128
  144. package/docs/concepts/timezone.md +0 -90
  145. package/docs/concepts/typebox.md +0 -289
  146. package/docs/concepts/typing-indicators.md +0 -68
  147. package/docs/concepts/usage-tracking.md +0 -35
  148. package/docs/date-time.md +0 -127
  149. package/docs/debug/node-issue.md +0 -85
  150. package/docs/diagnostics/flags.md +0 -91
  151. package/docs/docs.json +0 -1849
  152. package/docs/experiments/onboarding-config-protocol.md +0 -40
  153. package/docs/experiments/plans/browser-evaluate-cdp-refactor.md +0 -229
  154. package/docs/experiments/plans/cron-add-hardening.md +0 -62
  155. package/docs/experiments/plans/group-policy-hardening.md +0 -40
  156. package/docs/experiments/plans/openresponses-gateway.md +0 -123
  157. package/docs/experiments/plans/pty-process-supervision.md +0 -192
  158. package/docs/experiments/plans/session-binding-channel-agnostic.md +0 -202
  159. package/docs/experiments/plans/thread-bound-subagents.md +0 -281
  160. package/docs/experiments/proposals/model-config.md +0 -36
  161. package/docs/experiments/research/memory.md +0 -228
  162. package/docs/gateway/authentication.md +0 -162
  163. package/docs/gateway/background-process.md +0 -96
  164. package/docs/gateway/bonjour.md +0 -177
  165. package/docs/gateway/bridge-protocol.md +0 -91
  166. package/docs/gateway/cli-backends.md +0 -225
  167. package/docs/gateway/configuration-examples.md +0 -610
  168. package/docs/gateway/configuration-reference.md +0 -2465
  169. package/docs/gateway/configuration.md +0 -488
  170. package/docs/gateway/discovery.md +0 -123
  171. package/docs/gateway/doctor.md +0 -282
  172. package/docs/gateway/gateway-lock.md +0 -34
  173. package/docs/gateway/health.md +0 -35
  174. package/docs/gateway/heartbeat.md +0 -374
  175. package/docs/gateway/index.md +0 -254
  176. package/docs/gateway/local-models.md +0 -150
  177. package/docs/gateway/logging.md +0 -113
  178. package/docs/gateway/multiple-gateways.md +0 -112
  179. package/docs/gateway/network-model.md +0 -20
  180. package/docs/gateway/openai-http-api.md +0 -119
  181. package/docs/gateway/openresponses-http-api.md +0 -333
  182. package/docs/gateway/pairing.md +0 -99
  183. package/docs/gateway/protocol.md +0 -221
  184. package/docs/gateway/remote-gateway-readme.md +0 -158
  185. package/docs/gateway/remote.md +0 -131
  186. package/docs/gateway/sandbox-vs-tool-policy-vs-elevated.md +0 -128
  187. package/docs/gateway/sandboxing.md +0 -203
  188. package/docs/gateway/security/index.md +0 -931
  189. package/docs/gateway/tailscale.md +0 -132
  190. package/docs/gateway/tools-invoke-http-api.md +0 -110
  191. package/docs/gateway/troubleshooting.md +0 -317
  192. package/docs/gateway/trusted-proxy-auth.md +0 -270
  193. package/docs/glass-ui-rendering-invariants.md +0 -451
  194. package/docs/help/debugging.md +0 -162
  195. package/docs/help/environment.md +0 -107
  196. package/docs/help/faq.md +0 -2846
  197. package/docs/help/index.md +0 -21
  198. package/docs/help/scripts.md +0 -28
  199. package/docs/help/testing.md +0 -385
  200. package/docs/help/troubleshooting.md +0 -264
  201. package/docs/images/configure-model-picker-unsearchable.png +0 -0
  202. package/docs/images/feishu-step2-create-app.png +0 -0
  203. package/docs/images/feishu-step3-credentials.png +0 -0
  204. package/docs/images/feishu-step4-permissions.png +0 -0
  205. package/docs/images/feishu-step5-bot-capability.png +0 -0
  206. package/docs/images/feishu-step6-event-subscription.png +0 -0
  207. package/docs/images/groups-flow.svg +0 -52
  208. package/docs/images/mobile-ui-screenshot.png +0 -0
  209. package/docs/index.md +0 -186
  210. package/docs/install/ansible.md +0 -207
  211. package/docs/install/bun.md +0 -59
  212. package/docs/install/development-channels.md +0 -75
  213. package/docs/install/docker.md +0 -583
  214. package/docs/install/exe-dev.md +0 -126
  215. package/docs/install/fly.md +0 -472
  216. package/docs/install/gcp.md +0 -499
  217. package/docs/install/hetzner.md +0 -347
  218. package/docs/install/index.md +0 -218
  219. package/docs/install/installer.md +0 -405
  220. package/docs/install/macos-vm.md +0 -281
  221. package/docs/install/migrating.md +0 -192
  222. package/docs/install/nix.md +0 -98
  223. package/docs/install/node.md +0 -138
  224. package/docs/install/northflank.mdx +0 -49
  225. package/docs/install/podman.md +0 -108
  226. package/docs/install/railway.mdx +0 -95
  227. package/docs/install/render.mdx +0 -158
  228. package/docs/install/uninstall.md +0 -128
  229. package/docs/install/updating.md +0 -231
  230. package/docs/ja-JP/AGENTS.md +0 -37
  231. package/docs/ja-JP/index.md +0 -183
  232. package/docs/ja-JP/start/getting-started.md +0 -125
  233. package/docs/ja-JP/start/wizard.md +0 -77
  234. package/docs/logging.md +0 -350
  235. package/docs/nav-tabs-underline.js +0 -100
  236. package/docs/network.md +0 -54
  237. package/docs/nodes/audio.md +0 -133
  238. package/docs/nodes/camera.md +0 -156
  239. package/docs/nodes/images.md +0 -72
  240. package/docs/nodes/index.md +0 -342
  241. package/docs/nodes/location-command.md +0 -113
  242. package/docs/nodes/media-understanding.md +0 -379
  243. package/docs/nodes/talk.md +0 -90
  244. package/docs/nodes/troubleshooting.md +0 -112
  245. package/docs/nodes/voicewake.md +0 -65
  246. package/docs/perplexity.md +0 -80
  247. package/docs/phase-6.5-pre-flight-audit.md +0 -268
  248. package/docs/pi-dev.md +0 -70
  249. package/docs/pi.md +0 -610
  250. package/docs/platforms/android.md +0 -151
  251. package/docs/platforms/digitalocean.md +0 -265
  252. package/docs/platforms/index.md +0 -53
  253. package/docs/platforms/ios.md +0 -108
  254. package/docs/platforms/linux.md +0 -94
  255. package/docs/platforms/mac/bundled-gateway.md +0 -73
  256. package/docs/platforms/mac/canvas.md +0 -125
  257. package/docs/platforms/mac/child-process.md +0 -69
  258. package/docs/platforms/mac/dev-setup.md +0 -104
  259. package/docs/platforms/mac/health.md +0 -34
  260. package/docs/platforms/mac/icon.md +0 -31
  261. package/docs/platforms/mac/logging.md +0 -57
  262. package/docs/platforms/mac/menu-bar.md +0 -81
  263. package/docs/platforms/mac/peekaboo.md +0 -65
  264. package/docs/platforms/mac/permissions.md +0 -50
  265. package/docs/platforms/mac/release.md +0 -85
  266. package/docs/platforms/mac/remote.md +0 -84
  267. package/docs/platforms/mac/signing.md +0 -47
  268. package/docs/platforms/mac/skills.md +0 -33
  269. package/docs/platforms/mac/voice-overlay.md +0 -60
  270. package/docs/platforms/mac/voicewake.md +0 -66
  271. package/docs/platforms/mac/webchat.md +0 -43
  272. package/docs/platforms/mac/xpc.md +0 -61
  273. package/docs/platforms/macos.md +0 -204
  274. package/docs/platforms/oracle.md +0 -303
  275. package/docs/platforms/raspberry-pi.md +0 -358
  276. package/docs/platforms/windows.md +0 -159
  277. package/docs/plugins/agent-tools.md +0 -99
  278. package/docs/plugins/community.md +0 -44
  279. package/docs/plugins/manifest.md +0 -71
  280. package/docs/plugins/voice-call.md +0 -322
  281. package/docs/plugins/zalouser.md +0 -81
  282. package/docs/prose.md +0 -134
  283. package/docs/providers/anthropic.md +0 -174
  284. package/docs/providers/bedrock.md +0 -176
  285. package/docs/providers/claude-max-api-proxy.md +0 -148
  286. package/docs/providers/cloudflare-ai-gateway.md +0 -71
  287. package/docs/providers/deepgram.md +0 -93
  288. package/docs/providers/github-copilot.md +0 -72
  289. package/docs/providers/glm.md +0 -33
  290. package/docs/providers/huggingface.md +0 -209
  291. package/docs/providers/index.md +0 -67
  292. package/docs/providers/litellm.md +0 -153
  293. package/docs/providers/minimax.md +0 -208
  294. package/docs/providers/models.md +0 -52
  295. package/docs/providers/moonshot.md +0 -142
  296. package/docs/providers/nvidia.md +0 -55
  297. package/docs/providers/ollama.md +0 -250
  298. package/docs/providers/openai.md +0 -62
  299. package/docs/providers/opencode.md +0 -36
  300. package/docs/providers/openrouter.md +0 -37
  301. package/docs/providers/qianfan.md +0 -38
  302. package/docs/providers/qwen.md +0 -53
  303. package/docs/providers/synthetic.md +0 -99
  304. package/docs/providers/together.md +0 -65
  305. package/docs/providers/venice.md +0 -267
  306. package/docs/providers/vercel-ai-gateway.md +0 -50
  307. package/docs/providers/vllm.md +0 -92
  308. package/docs/providers/xiaomi.md +0 -64
  309. package/docs/providers/zai.md +0 -38
  310. package/docs/refactor/exec-host.md +0 -316
  311. package/docs/refactor/outbound-session-mirroring.md +0 -83
  312. package/docs/refactor/plugin-sdk.md +0 -214
  313. package/docs/refactor/strict-config.md +0 -93
  314. package/docs/refactor/syminet.md +0 -417
  315. package/docs/reference/AGENTS.default.md +0 -123
  316. package/docs/reference/RELEASING.md +0 -120
  317. package/docs/reference/api-usage-costs.md +0 -138
  318. package/docs/reference/credits.md +0 -28
  319. package/docs/reference/device-models.md +0 -47
  320. package/docs/reference/rpc.md +0 -43
  321. package/docs/reference/session-management-compaction.md +0 -284
  322. package/docs/reference/test.md +0 -51
  323. package/docs/reference/token-use.md +0 -136
  324. package/docs/reference/transcript-hygiene.md +0 -151
  325. package/docs/reference/wizard.md +0 -265
  326. package/docs/security/CONTRIBUTING-THREAT-MODEL.md +0 -89
  327. package/docs/security/README.md +0 -16
  328. package/docs/security/THREAT-MODEL-ATLAS.md +0 -600
  329. package/docs/security/formal-verification.md +0 -164
  330. package/docs/start/bootstrapping.md +0 -41
  331. package/docs/start/docs-directory.md +0 -63
  332. package/docs/start/getting-started.md +0 -135
  333. package/docs/start/hubs.md +0 -196
  334. package/docs/start/lore.md +0 -216
  335. package/docs/start/onboarding-overview.md +0 -51
  336. package/docs/start/onboarding.md +0 -81
  337. package/docs/start/quickstart.md +0 -22
  338. package/docs/start/setup.md +0 -160
  339. package/docs/start/showcase.md +0 -414
  340. package/docs/start/symi.md +0 -211
  341. package/docs/start/wizard-cli-automation.md +0 -158
  342. package/docs/start/wizard-cli-reference.md +0 -255
  343. package/docs/start/wizard.md +0 -109
  344. package/docs/style.css +0 -37
  345. package/docs/tools/agent-send.md +0 -52
  346. package/docs/tools/apply-patch.md +0 -51
  347. package/docs/tools/browser-linux-troubleshooting.md +0 -139
  348. package/docs/tools/browser-login.md +0 -67
  349. package/docs/tools/browser.md +0 -587
  350. package/docs/tools/chrome-extension.md +0 -183
  351. package/docs/tools/creating-skills.md +0 -54
  352. package/docs/tools/elevated.md +0 -55
  353. package/docs/tools/exec-approvals.md +0 -261
  354. package/docs/tools/exec.md +0 -184
  355. package/docs/tools/firecrawl.md +0 -61
  356. package/docs/tools/index.md +0 -540
  357. package/docs/tools/llm-task.md +0 -115
  358. package/docs/tools/loop-detection.md +0 -98
  359. package/docs/tools/multi-agent-sandbox-tools.md +0 -396
  360. package/docs/tools/pipeline.md +0 -340
  361. package/docs/tools/plugin.md +0 -687
  362. package/docs/tools/reactions.md +0 -21
  363. package/docs/tools/skills-config.md +0 -76
  364. package/docs/tools/skills.md +0 -300
  365. package/docs/tools/slash-commands.md +0 -202
  366. package/docs/tools/subagents.md +0 -232
  367. package/docs/tools/symihub.md +0 -256
  368. package/docs/tools/thinking.md +0 -75
  369. package/docs/tools/web.md +0 -265
  370. package/docs/tts.md +0 -398
  371. package/docs/vps.md +0 -43
  372. package/docs/web/control-ui.md +0 -247
  373. package/docs/web/dashboard.md +0 -46
  374. package/docs/web/index.md +0 -118
  375. package/docs/web/tui.md +0 -162
  376. package/docs/web/webchat.md +0 -53
  377. package/docs/whatsapp-symi-ai-zh.jpg +0 -0
  378. package/docs/whatsapp-symi.jpg +0 -0
  379. package/docs/zh-CN/AGENTS.md +0 -59
  380. package/docs/zh-CN/automation/auth-monitoring.md +0 -47
  381. package/docs/zh-CN/automation/cron-jobs.md +0 -422
  382. package/docs/zh-CN/automation/cron-vs-heartbeat.md +0 -286
  383. package/docs/zh-CN/automation/gmail-pubsub.md +0 -249
  384. package/docs/zh-CN/automation/hooks.md +0 -881
  385. package/docs/zh-CN/automation/poll.md +0 -68
  386. package/docs/zh-CN/automation/troubleshooting.md +0 -8
  387. package/docs/zh-CN/automation/webhook.md +0 -161
  388. package/docs/zh-CN/brave-search.md +0 -48
  389. package/docs/zh-CN/channels/bluebubbles.md +0 -271
  390. package/docs/zh-CN/channels/broadcast-groups.md +0 -448
  391. package/docs/zh-CN/channels/channel-routing.md +0 -112
  392. package/docs/zh-CN/channels/feishu.md +0 -629
  393. package/docs/zh-CN/channels/googlechat.md +0 -257
  394. package/docs/zh-CN/channels/grammy.md +0 -38
  395. package/docs/zh-CN/channels/group-messages.md +0 -89
  396. package/docs/zh-CN/channels/groups.md +0 -369
  397. package/docs/zh-CN/channels/imessage.md +0 -300
  398. package/docs/zh-CN/channels/index.md +0 -52
  399. package/docs/zh-CN/channels/line.md +0 -180
  400. package/docs/zh-CN/channels/location.md +0 -63
  401. package/docs/zh-CN/channels/matrix.md +0 -221
  402. package/docs/zh-CN/channels/mattermost.md +0 -144
  403. package/docs/zh-CN/channels/msteams.md +0 -773
  404. package/docs/zh-CN/channels/nextcloud-talk.md +0 -142
  405. package/docs/zh-CN/channels/nostr.md +0 -240
  406. package/docs/zh-CN/channels/pairing.md +0 -86
  407. package/docs/zh-CN/channels/signal.md +0 -207
  408. package/docs/zh-CN/channels/slack.md +0 -529
  409. package/docs/zh-CN/channels/telegram.md +0 -748
  410. package/docs/zh-CN/channels/tlon.md +0 -136
  411. package/docs/zh-CN/channels/troubleshooting.md +0 -34
  412. package/docs/zh-CN/channels/twitch.md +0 -385
  413. package/docs/zh-CN/channels/whatsapp.md +0 -411
  414. package/docs/zh-CN/channels/zalo.md +0 -196
  415. package/docs/zh-CN/channels/zalouser.md +0 -147
  416. package/docs/zh-CN/cli/acp.md +0 -173
  417. package/docs/zh-CN/cli/agent.md +0 -30
  418. package/docs/zh-CN/cli/agents.md +0 -82
  419. package/docs/zh-CN/cli/approvals.md +0 -57
  420. package/docs/zh-CN/cli/browser.md +0 -114
  421. package/docs/zh-CN/cli/channels.md +0 -80
  422. package/docs/zh-CN/cli/config.md +0 -57
  423. package/docs/zh-CN/cli/configure.md +0 -37
  424. package/docs/zh-CN/cli/cron.md +0 -43
  425. package/docs/zh-CN/cli/dashboard.md +0 -23
  426. package/docs/zh-CN/cli/devices.md +0 -74
  427. package/docs/zh-CN/cli/directory.md +0 -69
  428. package/docs/zh-CN/cli/dns.md +0 -30
  429. package/docs/zh-CN/cli/docs.md +0 -22
  430. package/docs/zh-CN/cli/doctor.md +0 -48
  431. package/docs/zh-CN/cli/gateway.md +0 -206
  432. package/docs/zh-CN/cli/health.md +0 -28
  433. package/docs/zh-CN/cli/hooks.md +0 -298
  434. package/docs/zh-CN/cli/index.md +0 -1025
  435. package/docs/zh-CN/cli/logs.md +0 -31
  436. package/docs/zh-CN/cli/memory.md +0 -52
  437. package/docs/zh-CN/cli/message.md +0 -205
  438. package/docs/zh-CN/cli/models.md +0 -85
  439. package/docs/zh-CN/cli/node.md +0 -115
  440. package/docs/zh-CN/cli/nodes.md +0 -80
  441. package/docs/zh-CN/cli/onboard.md +0 -36
  442. package/docs/zh-CN/cli/pairing.md +0 -28
  443. package/docs/zh-CN/cli/plugins.md +0 -66
  444. package/docs/zh-CN/cli/reset.md +0 -24
  445. package/docs/zh-CN/cli/sandbox.md +0 -158
  446. package/docs/zh-CN/cli/security.md +0 -33
  447. package/docs/zh-CN/cli/sessions.md +0 -23
  448. package/docs/zh-CN/cli/setup.md +0 -36
  449. package/docs/zh-CN/cli/skills.md +0 -33
  450. package/docs/zh-CN/cli/status.md +0 -32
  451. package/docs/zh-CN/cli/system.md +0 -63
  452. package/docs/zh-CN/cli/tui.md +0 -30
  453. package/docs/zh-CN/cli/uninstall.md +0 -24
  454. package/docs/zh-CN/cli/update.md +0 -101
  455. package/docs/zh-CN/cli/voicecall.md +0 -41
  456. package/docs/zh-CN/cli/webhooks.md +0 -32
  457. package/docs/zh-CN/concepts/agent-loop.md +0 -146
  458. package/docs/zh-CN/concepts/agent-workspace.md +0 -219
  459. package/docs/zh-CN/concepts/agent.md +0 -115
  460. package/docs/zh-CN/concepts/architecture.md +0 -122
  461. package/docs/zh-CN/concepts/compaction.md +0 -67
  462. package/docs/zh-CN/concepts/context.md +0 -168
  463. package/docs/zh-CN/concepts/features.md +0 -57
  464. package/docs/zh-CN/concepts/markdown-formatting.md +0 -115
  465. package/docs/zh-CN/concepts/memory.md +0 -412
  466. package/docs/zh-CN/concepts/messages.md +0 -140
  467. package/docs/zh-CN/concepts/model-failover.md +0 -145
  468. package/docs/zh-CN/concepts/model-providers.md +0 -320
  469. package/docs/zh-CN/concepts/models.md +0 -196
  470. package/docs/zh-CN/concepts/multi-agent.md +0 -371
  471. package/docs/zh-CN/concepts/oauth.md +0 -151
  472. package/docs/zh-CN/concepts/presence.md +0 -99
  473. package/docs/zh-CN/concepts/queue.md +0 -91
  474. package/docs/zh-CN/concepts/retry.md +0 -71
  475. package/docs/zh-CN/concepts/session-pruning.md +0 -129
  476. package/docs/zh-CN/concepts/session-tool.md +0 -198
  477. package/docs/zh-CN/concepts/session.md +0 -158
  478. package/docs/zh-CN/concepts/sessions.md +0 -17
  479. package/docs/zh-CN/concepts/streaming.md +0 -131
  480. package/docs/zh-CN/concepts/system-prompt.md +0 -99
  481. package/docs/zh-CN/concepts/timezone.md +0 -94
  482. package/docs/zh-CN/concepts/typebox.md +0 -284
  483. package/docs/zh-CN/concepts/typing-indicators.md +0 -74
  484. package/docs/zh-CN/concepts/usage-tracking.md +0 -42
  485. package/docs/zh-CN/date-time.md +0 -128
  486. package/docs/zh-CN/debug/node-issue.md +0 -90
  487. package/docs/zh-CN/diagnostics/flags.md +0 -98
  488. package/docs/zh-CN/experiments/onboarding-config-protocol.md +0 -47
  489. package/docs/zh-CN/experiments/plans/cron-add-hardening.md +0 -69
  490. package/docs/zh-CN/experiments/plans/group-policy-hardening.md +0 -45
  491. package/docs/zh-CN/experiments/plans/openresponses-gateway.md +0 -121
  492. package/docs/zh-CN/experiments/proposals/model-config.md +0 -42
  493. package/docs/zh-CN/experiments/research/memory.md +0 -235
  494. package/docs/zh-CN/gateway/authentication.md +0 -142
  495. package/docs/zh-CN/gateway/background-process.md +0 -100
  496. package/docs/zh-CN/gateway/bonjour.md +0 -174
  497. package/docs/zh-CN/gateway/bridge-protocol.md +0 -86
  498. package/docs/zh-CN/gateway/cli-backends.md +0 -213
  499. package/docs/zh-CN/gateway/configuration-examples.md +0 -580
  500. package/docs/zh-CN/gateway/configuration.md +0 -3284
  501. package/docs/zh-CN/gateway/discovery.md +0 -123
  502. package/docs/zh-CN/gateway/doctor.md +0 -238
  503. package/docs/zh-CN/gateway/gateway-lock.md +0 -41
  504. package/docs/zh-CN/gateway/health.md +0 -42
  505. package/docs/zh-CN/gateway/heartbeat.md +0 -272
  506. package/docs/zh-CN/gateway/index.md +0 -335
  507. package/docs/zh-CN/gateway/local-models.md +0 -157
  508. package/docs/zh-CN/gateway/logging.md +0 -114
  509. package/docs/zh-CN/gateway/multiple-gateways.md +0 -119
  510. package/docs/zh-CN/gateway/network-model.md +0 -23
  511. package/docs/zh-CN/gateway/openai-http-api.md +0 -125
  512. package/docs/zh-CN/gateway/openresponses-http-api.md +0 -317
  513. package/docs/zh-CN/gateway/pairing.md +0 -99
  514. package/docs/zh-CN/gateway/protocol.md +0 -220
  515. package/docs/zh-CN/gateway/remote-gateway-readme.md +0 -164
  516. package/docs/zh-CN/gateway/remote.md +0 -133
  517. package/docs/zh-CN/gateway/sandbox-vs-tool-policy-vs-elevated.md +0 -135
  518. package/docs/zh-CN/gateway/sandboxing.md +0 -188
  519. package/docs/zh-CN/gateway/security/index.md +0 -772
  520. package/docs/zh-CN/gateway/tailscale.md +0 -124
  521. package/docs/zh-CN/gateway/tools-invoke-http-api.md +0 -92
  522. package/docs/zh-CN/gateway/troubleshooting.md +0 -758
  523. package/docs/zh-CN/help/debugging.md +0 -160
  524. package/docs/zh-CN/help/environment.md +0 -88
  525. package/docs/zh-CN/help/faq.md +0 -2613
  526. package/docs/zh-CN/help/index.md +0 -28
  527. package/docs/zh-CN/help/scripts.md +0 -35
  528. package/docs/zh-CN/help/testing.md +0 -375
  529. package/docs/zh-CN/help/troubleshooting.md +0 -104
  530. package/docs/zh-CN/index.md +0 -183
  531. package/docs/zh-CN/install/ansible.md +0 -214
  532. package/docs/zh-CN/install/bun.md +0 -65
  533. package/docs/zh-CN/install/development-channels.md +0 -81
  534. package/docs/zh-CN/install/docker.md +0 -525
  535. package/docs/zh-CN/install/exe-dev.md +0 -127
  536. package/docs/zh-CN/install/fly.md +0 -476
  537. package/docs/zh-CN/install/gcp.md +0 -509
  538. package/docs/zh-CN/install/hetzner.md +0 -336
  539. package/docs/zh-CN/install/index.md +0 -193
  540. package/docs/zh-CN/install/installer.md +0 -128
  541. package/docs/zh-CN/install/macos-vm.md +0 -288
  542. package/docs/zh-CN/install/migrating.md +0 -199
  543. package/docs/zh-CN/install/nix.md +0 -99
  544. package/docs/zh-CN/install/node.md +0 -8
  545. package/docs/zh-CN/install/northflank.mdx +0 -56
  546. package/docs/zh-CN/install/railway.mdx +0 -102
  547. package/docs/zh-CN/install/render.mdx +0 -168
  548. package/docs/zh-CN/install/uninstall.md +0 -135
  549. package/docs/zh-CN/install/updating.md +0 -233
  550. package/docs/zh-CN/logging.md +0 -329
  551. package/docs/zh-CN/network.md +0 -59
  552. package/docs/zh-CN/nodes/audio.md +0 -120
  553. package/docs/zh-CN/nodes/camera.md +0 -162
  554. package/docs/zh-CN/nodes/images.md +0 -79
  555. package/docs/zh-CN/nodes/index.md +0 -348
  556. package/docs/zh-CN/nodes/location-command.md +0 -120
  557. package/docs/zh-CN/nodes/media-understanding.md +0 -380
  558. package/docs/zh-CN/nodes/talk.md +0 -97
  559. package/docs/zh-CN/nodes/troubleshooting.md +0 -8
  560. package/docs/zh-CN/nodes/voicewake.md +0 -72
  561. package/docs/zh-CN/perplexity.md +0 -84
  562. package/docs/zh-CN/pi-dev.md +0 -77
  563. package/docs/zh-CN/pi.md +0 -617
  564. package/docs/zh-CN/platforms/android.md +0 -155
  565. package/docs/zh-CN/platforms/digitalocean.md +0 -268
  566. package/docs/zh-CN/platforms/index.md +0 -60
  567. package/docs/zh-CN/platforms/ios.md +0 -114
  568. package/docs/zh-CN/platforms/linux.md +0 -101
  569. package/docs/zh-CN/platforms/mac/bundled-gateway.md +0 -75
  570. package/docs/zh-CN/platforms/mac/canvas.md +0 -128
  571. package/docs/zh-CN/platforms/mac/child-process.md +0 -73
  572. package/docs/zh-CN/platforms/mac/dev-setup.md +0 -109
  573. package/docs/zh-CN/platforms/mac/health.md +0 -41
  574. package/docs/zh-CN/platforms/mac/icon.md +0 -38
  575. package/docs/zh-CN/platforms/mac/logging.md +0 -64
  576. package/docs/zh-CN/platforms/mac/menu-bar.md +0 -88
  577. package/docs/zh-CN/platforms/mac/peekaboo.md +0 -62
  578. package/docs/zh-CN/platforms/mac/permissions.md +0 -46
  579. package/docs/zh-CN/platforms/mac/release.md +0 -92
  580. package/docs/zh-CN/platforms/mac/remote.md +0 -90
  581. package/docs/zh-CN/platforms/mac/signing.md +0 -54
  582. package/docs/zh-CN/platforms/mac/skills.md +0 -40
  583. package/docs/zh-CN/platforms/mac/voice-overlay.md +0 -67
  584. package/docs/zh-CN/platforms/mac/voicewake.md +0 -73
  585. package/docs/zh-CN/platforms/mac/webchat.md +0 -43
  586. package/docs/zh-CN/platforms/mac/xpc.md +0 -68
  587. package/docs/zh-CN/platforms/macos.md +0 -193
  588. package/docs/zh-CN/platforms/oracle.md +0 -310
  589. package/docs/zh-CN/platforms/raspberry-pi.md +0 -365
  590. package/docs/zh-CN/platforms/windows.md +0 -156
  591. package/docs/zh-CN/plugins/agent-tools.md +0 -99
  592. package/docs/zh-CN/plugins/manifest.md +0 -68
  593. package/docs/zh-CN/plugins/voice-call.md +0 -250
  594. package/docs/zh-CN/plugins/zalouser.md +0 -88
  595. package/docs/zh-CN/prose.md +0 -141
  596. package/docs/zh-CN/providers/anthropic.md +0 -159
  597. package/docs/zh-CN/providers/bedrock.md +0 -170
  598. package/docs/zh-CN/providers/claude-max-api-proxy.md +0 -155
  599. package/docs/zh-CN/providers/deepgram.md +0 -97
  600. package/docs/zh-CN/providers/github-copilot.md +0 -67
  601. package/docs/zh-CN/providers/glm.md +0 -39
  602. package/docs/zh-CN/providers/index.md +0 -66
  603. package/docs/zh-CN/providers/minimax.md +0 -206
  604. package/docs/zh-CN/providers/models.md +0 -55
  605. package/docs/zh-CN/providers/moonshot.md +0 -145
  606. package/docs/zh-CN/providers/ollama.md +0 -230
  607. package/docs/zh-CN/providers/openai.md +0 -68
  608. package/docs/zh-CN/providers/opencode.md +0 -41
  609. package/docs/zh-CN/providers/openrouter.md +0 -43
  610. package/docs/zh-CN/providers/qianfan.md +0 -8
  611. package/docs/zh-CN/providers/qwen.md +0 -55
  612. package/docs/zh-CN/providers/synthetic.md +0 -102
  613. package/docs/zh-CN/providers/venice.md +0 -274
  614. package/docs/zh-CN/providers/vercel-ai-gateway.md +0 -57
  615. package/docs/zh-CN/providers/xiaomi.md +0 -68
  616. package/docs/zh-CN/providers/zai.md +0 -41
  617. package/docs/zh-CN/refactor/exec-host.md +0 -323
  618. package/docs/zh-CN/refactor/outbound-session-mirroring.md +0 -90
  619. package/docs/zh-CN/refactor/plugin-sdk.md +0 -221
  620. package/docs/zh-CN/refactor/strict-config.md +0 -100
  621. package/docs/zh-CN/refactor/syminet.md +0 -424
  622. package/docs/zh-CN/reference/AGENTS.default.md +0 -130
  623. package/docs/zh-CN/reference/RELEASING.md +0 -122
  624. package/docs/zh-CN/reference/api-usage-costs.md +0 -136
  625. package/docs/zh-CN/reference/credits.md +0 -34
  626. package/docs/zh-CN/reference/device-models.md +0 -54
  627. package/docs/zh-CN/reference/rpc.md +0 -48
  628. package/docs/zh-CN/reference/session-management-compaction.md +0 -286
  629. package/docs/zh-CN/reference/templates/AGENTS.dev.md +0 -89
  630. package/docs/zh-CN/reference/templates/AGENTS.md +0 -234
  631. package/docs/zh-CN/reference/templates/BOOT.md +0 -17
  632. package/docs/zh-CN/reference/templates/BOOTSTRAP.md +0 -68
  633. package/docs/zh-CN/reference/templates/IDENTITY.dev.md +0 -54
  634. package/docs/zh-CN/reference/templates/IDENTITY.md +0 -36
  635. package/docs/zh-CN/reference/templates/SYMICORE.dev.md +0 -83
  636. package/docs/zh-CN/reference/templates/SYMICORE.md +0 -49
  637. package/docs/zh-CN/reference/templates/SYMIPULSE.md +0 -69
  638. package/docs/zh-CN/reference/templates/TOOLS.dev.md +0 -31
  639. package/docs/zh-CN/reference/templates/TOOLS.md +0 -53
  640. package/docs/zh-CN/reference/templates/USER.dev.md +0 -25
  641. package/docs/zh-CN/reference/templates/USER.md +0 -30
  642. package/docs/zh-CN/reference/test.md +0 -57
  643. package/docs/zh-CN/reference/token-use.md +0 -119
  644. package/docs/zh-CN/reference/transcript-hygiene.md +0 -109
  645. package/docs/zh-CN/reference/wizard.md +0 -9
  646. package/docs/zh-CN/security/formal-verification.md +0 -171
  647. package/docs/zh-CN/start/bootstrapping.md +0 -9
  648. package/docs/zh-CN/start/docs-directory.md +0 -69
  649. package/docs/zh-CN/start/getting-started.md +0 -201
  650. package/docs/zh-CN/start/hubs.md +0 -199
  651. package/docs/zh-CN/start/lore.md +0 -223
  652. package/docs/zh-CN/start/onboarding.md +0 -105
  653. package/docs/zh-CN/start/quickstart.md +0 -88
  654. package/docs/zh-CN/start/setup.md +0 -151
  655. package/docs/zh-CN/start/showcase.md +0 -421
  656. package/docs/zh-CN/start/symi.md +0 -244
  657. package/docs/zh-CN/start/wizard.md +0 -326
  658. package/docs/zh-CN/tools/agent-send.md +0 -58
  659. package/docs/zh-CN/tools/apply-patch.md +0 -57
  660. package/docs/zh-CN/tools/browser-linux-troubleshooting.md +0 -144
  661. package/docs/zh-CN/tools/browser-login.md +0 -75
  662. package/docs/zh-CN/tools/browser.md +0 -553
  663. package/docs/zh-CN/tools/chrome-extension.md +0 -183
  664. package/docs/zh-CN/tools/creating-skills.md +0 -61
  665. package/docs/zh-CN/tools/elevated.md +0 -62
  666. package/docs/zh-CN/tools/exec-approvals.md +0 -233
  667. package/docs/zh-CN/tools/exec.md +0 -169
  668. package/docs/zh-CN/tools/firecrawl.md +0 -68
  669. package/docs/zh-CN/tools/index.md +0 -508
  670. package/docs/zh-CN/tools/llm-task.md +0 -117
  671. package/docs/zh-CN/tools/multi-agent-sandbox-tools.md +0 -400
  672. package/docs/zh-CN/tools/pipeline.md +0 -349
  673. package/docs/zh-CN/tools/plugin.md +0 -639
  674. package/docs/zh-CN/tools/reactions.md +0 -28
  675. package/docs/zh-CN/tools/skills-config.md +0 -78
  676. package/docs/zh-CN/tools/skills.md +0 -279
  677. package/docs/zh-CN/tools/slash-commands.md +0 -196
  678. package/docs/zh-CN/tools/subagents.md +0 -167
  679. package/docs/zh-CN/tools/symihub.md +0 -209
  680. package/docs/zh-CN/tools/thinking.md +0 -80
  681. package/docs/zh-CN/tools/web.md +0 -257
  682. package/docs/zh-CN/tts.md +0 -373
  683. package/docs/zh-CN/vps.md +0 -47
  684. package/docs/zh-CN/web/control-ui.md +0 -190
  685. package/docs/zh-CN/web/dashboard.md +0 -53
  686. package/docs/zh-CN/web/index.md +0 -118
  687. package/docs/zh-CN/web/tui.md +0 -166
  688. package/docs/zh-CN/web/webchat.md +0 -56
@@ -1,186 +0,0 @@
1
- ---
2
- summary: "LINE Messaging API plugin setup, config, and usage"
3
- read_when:
4
- - You want to connect Symi to LINE
5
- - You need LINE webhook + credential setup
6
- - You want LINE-specific message options
7
- title: LINE
8
- ---
9
-
10
- # LINE (plugin)
11
-
12
- LINE connects to Symi via the LINE Messaging API. The plugin runs as a webhook
13
- receiver on the gateway and uses your channel access token + channel secret for
14
- authentication.
15
-
16
- Status: supported via plugin. Direct messages, group chats, media, locations, Flex
17
- messages, template messages, and quick replies are supported. Reactions and threads
18
- are not supported.
19
-
20
- ## Plugin required
21
-
22
- Install the LINE plugin:
23
-
24
- ```bash
25
- symi plugins install @symi/line
26
- ```
27
-
28
- Local checkout (when running from a git repo):
29
-
30
- ```bash
31
- symi plugins install ./extensions/line
32
- ```
33
-
34
- ## Onboarding
35
-
36
- 1. Create a LINE Developers account and open the Console:
37
- [https://developers.line.biz/console/](https://developers.line.biz/console/)
38
- 2. Create (or pick) a Provider and add a **Messaging API** channel.
39
- 3. Copy the **Channel access token** and **Channel secret** from the channel settings.
40
- 4. Enable **Use webhook** in the Messaging API settings.
41
- 5. Set the webhook URL to your gateway endpoint (HTTPS required):
42
-
43
- ```
44
- https://gateway-host/line/webhook
45
- ```
46
-
47
- The gateway responds to LINE’s webhook verification (GET) and inbound events (POST).
48
- If you need a custom path, set `channels.line.webhookPath` or
49
- `channels.line.accounts.<id>.webhookPath` and update the URL accordingly.
50
-
51
- ## Configuration
52
-
53
- Minimal config:
54
-
55
- ```json5
56
- {
57
- channels: {
58
- line: {
59
- enabled: true,
60
- channelAccessToken: "LINE_CHANNEL_ACCESS_TOKEN",
61
- channelSecret: "LINE_CHANNEL_SECRET",
62
- dmPolicy: "pairing",
63
- },
64
- },
65
- }
66
- ```
67
-
68
- Env vars (default account only):
69
-
70
- - `LINE_CHANNEL_ACCESS_TOKEN`
71
- - `LINE_CHANNEL_SECRET`
72
-
73
- Token/secret files:
74
-
75
- ```json5
76
- {
77
- channels: {
78
- line: {
79
- tokenFile: "/path/to/line-token.txt",
80
- secretFile: "/path/to/line-secret.txt",
81
- },
82
- },
83
- }
84
- ```
85
-
86
- Multiple accounts:
87
-
88
- ```json5
89
- {
90
- channels: {
91
- line: {
92
- accounts: {
93
- marketing: {
94
- channelAccessToken: "...",
95
- channelSecret: "...",
96
- webhookPath: "/line/marketing",
97
- },
98
- },
99
- },
100
- },
101
- }
102
- ```
103
-
104
- ## Access control
105
-
106
- Direct messages default to pairing. Unknown senders get a pairing code and their
107
- messages are ignored until approved.
108
-
109
- ```bash
110
- symi pairing list line
111
- symi pairing approve line <CODE>
112
- ```
113
-
114
- Allowlists and policies:
115
-
116
- - `channels.line.dmPolicy`: `pairing | allowlist | open | disabled`
117
- - `channels.line.allowFrom`: allowlisted LINE user IDs for DMs
118
- - `channels.line.groupPolicy`: `allowlist | open | disabled`
119
- - `channels.line.groupAllowFrom`: allowlisted LINE user IDs for groups
120
- - Per-group overrides: `channels.line.groups.<groupId>.allowFrom`
121
-
122
- LINE IDs are case-sensitive. Valid IDs look like:
123
-
124
- - User: `U` + 32 hex chars
125
- - Group: `C` + 32 hex chars
126
- - Room: `R` + 32 hex chars
127
-
128
- ## Message behavior
129
-
130
- - Text is chunked at 5000 characters.
131
- - Markdown formatting is stripped; code blocks and tables are converted into Flex
132
- cards when possible.
133
- - Streaming responses are buffered; LINE receives full chunks with a loading
134
- animation while the agent works.
135
- - Media downloads are capped by `channels.line.mediaMaxMb` (default 10).
136
-
137
- ## Channel data (rich messages)
138
-
139
- Use `channelData.line` to send quick replies, locations, Flex cards, or template
140
- messages.
141
-
142
- ```json5
143
- {
144
- text: "Here you go",
145
- channelData: {
146
- line: {
147
- quickReplies: ["Status", "Help"],
148
- location: {
149
- title: "Office",
150
- address: "123 Main St",
151
- latitude: 35.681236,
152
- longitude: 139.767125,
153
- },
154
- flexMessage: {
155
- altText: "Status card",
156
- contents: {
157
- /* Flex payload */
158
- },
159
- },
160
- templateMessage: {
161
- type: "confirm",
162
- text: "Proceed?",
163
- confirmLabel: "Yes",
164
- confirmData: "yes",
165
- cancelLabel: "No",
166
- cancelData: "no",
167
- },
168
- },
169
- },
170
- }
171
- ```
172
-
173
- The LINE plugin also ships a `/card` command for Flex message presets:
174
-
175
- ```
176
- /card info "Welcome" "Thanks for joining!"
177
- ```
178
-
179
- ## Troubleshooting
180
-
181
- - **Webhook verification fails:** ensure the webhook URL is HTTPS and the
182
- `channelSecret` matches the LINE console.
183
- - **No inbound events:** confirm the webhook path matches `channels.line.webhookPath`
184
- and that the gateway is reachable from LINE.
185
- - **Media download errors:** raise `channels.line.mediaMaxMb` if media exceeds the
186
- default limit.
@@ -1,56 +0,0 @@
1
- ---
2
- summary: "Inbound channel location parsing (Telegram + WhatsApp) and context fields"
3
- read_when:
4
- - Adding or modifying channel location parsing
5
- - Using location context fields in agent prompts or tools
6
- title: "Channel Location Parsing"
7
- ---
8
-
9
- # Channel location parsing
10
-
11
- Symi normalizes shared locations from chat channels into:
12
-
13
- - human-readable text appended to the inbound body, and
14
- - structured fields in the auto-reply context payload.
15
-
16
- Currently supported:
17
-
18
- - **Telegram** (location pins + venues + live locations)
19
- - **WhatsApp** (locationMessage + liveLocationMessage)
20
- - **Matrix** (`m.location` with `geo_uri`)
21
-
22
- ## Text formatting
23
-
24
- Locations are rendered as friendly lines without brackets:
25
-
26
- - Pin:
27
- - `📍 48.858844, 2.294351 ±12m`
28
- - Named place:
29
- - `📍 Eiffel Tower — Champ de Mars, Paris (48.858844, 2.294351 ±12m)`
30
- - Live share:
31
- - `🛰 Live location: 48.858844, 2.294351 ±12m`
32
-
33
- If the channel includes a caption/comment, it is appended on the next line:
34
-
35
- ```
36
- 📍 48.858844, 2.294351 ±12m
37
- Meet here
38
- ```
39
-
40
- ## Context fields
41
-
42
- When a location is present, these fields are added to `ctx`:
43
-
44
- - `LocationLat` (number)
45
- - `LocationLon` (number)
46
- - `LocationAccuracy` (number, meters; optional)
47
- - `LocationName` (string; optional)
48
- - `LocationAddress` (string; optional)
49
- - `LocationSource` (`pin | place | live`)
50
- - `LocationIsLive` (boolean)
51
-
52
- ## Channel notes
53
-
54
- - **Telegram**: venues map to `LocationName/LocationAddress`; live locations use `live_period`.
55
- - **WhatsApp**: `locationMessage.comment` and `liveLocationMessage.caption` are appended as the caption line.
56
- - **Matrix**: `geo_uri` is parsed as a pin location; altitude is ignored and `LocationIsLive` is always false.
@@ -1,300 +0,0 @@
1
- ---
2
- summary: "Matrix support status, capabilities, and configuration"
3
- read_when:
4
- - Working on Matrix channel features
5
- title: "Matrix"
6
- ---
7
-
8
- # Matrix (plugin)
9
-
10
- Matrix is an open, decentralized messaging protocol. Symi connects as a Matrix **user**
11
- on any homeserver, so you need a Matrix account for the bot. Once it is logged in, you can DM
12
- the bot directly or invite it to rooms (Matrix "groups"). Beeper is a valid client option too,
13
- but it requires E2EE to be enabled.
14
-
15
- Status: supported via plugin (@vector-im/matrix-bot-sdk). Direct messages, rooms, threads, media, reactions,
16
- polls (send + poll-start as text), location, and E2EE (with crypto support).
17
-
18
- ## Plugin required
19
-
20
- Matrix ships as a plugin and is not bundled with the core install.
21
-
22
- Install via CLI (npm registry):
23
-
24
- ```bash
25
- symi plugins install @symi/matrix
26
- ```
27
-
28
- Local checkout (when running from a git repo):
29
-
30
- ```bash
31
- symi plugins install ./extensions/matrix
32
- ```
33
-
34
- If you choose Matrix during configure/onboarding and a git checkout is detected,
35
- Symi will offer the local install path automatically.
36
-
37
- Details: [Plugins](/tools/plugin)
38
-
39
- ## Onboarding
40
-
41
- 1. Install the Matrix plugin:
42
- - From npm: `symi plugins install @symi/matrix`
43
- - From a local checkout: `symi plugins install ./extensions/matrix`
44
- 2. Create a Matrix account on a homeserver:
45
- - Browse hosting options at [https://matrix.org/ecosystem/hosting/](https://matrix.org/ecosystem/hosting/)
46
- - Or host it yourself.
47
- 3. Get an access token for the bot account:
48
- - Use the Matrix login API with `curl` at your home server:
49
-
50
- ```bash
51
- curl --request POST \
52
- --url https://matrix.example.org/_matrix/client/v3/login \
53
- --header 'Content-Type: application/json' \
54
- --data '{
55
- "type": "m.login.password",
56
- "identifier": {
57
- "type": "m.id.user",
58
- "user": "your-user-name"
59
- },
60
- "password": "your-password"
61
- }'
62
- ```
63
-
64
- - Replace `matrix.example.org` with your homeserver URL.
65
- - Or set `channels.matrix.userId` + `channels.matrix.password`: Symi calls the same
66
- login endpoint, stores the access token in `~/.symi/credentials/matrix/credentials.json`,
67
- and reuses it on next start.
68
-
69
- 4. Configure credentials:
70
- - Env: `MATRIX_HOMESERVER`, `MATRIX_ACCESS_TOKEN` (or `MATRIX_USER_ID` + `MATRIX_PASSWORD`)
71
- - Or config: `channels.matrix.*`
72
- - If both are set, config takes precedence.
73
- - With access token: user ID is fetched automatically via `/whoami`.
74
- - When set, `channels.matrix.userId` should be the full Matrix ID (example: `@bot:example.org`).
75
- 5. Restart the gateway (or finish onboarding).
76
- 6. Start a DM with the bot or invite it to a room from any Matrix client
77
- (Element, Beeper, etc.; see [https://matrix.org/ecosystem/clients/](https://matrix.org/ecosystem/clients/)). Beeper requires E2EE,
78
- so set `channels.matrix.encryption: true` and verify the device.
79
-
80
- Minimal config (access token, user ID auto-fetched):
81
-
82
- ```json5
83
- {
84
- channels: {
85
- matrix: {
86
- enabled: true,
87
- homeserver: "https://matrix.example.org",
88
- accessToken: "syt_***",
89
- dm: { policy: "pairing" },
90
- },
91
- },
92
- }
93
- ```
94
-
95
- E2EE config (end to end encryption enabled):
96
-
97
- ```json5
98
- {
99
- channels: {
100
- matrix: {
101
- enabled: true,
102
- homeserver: "https://matrix.example.org",
103
- accessToken: "syt_***",
104
- encryption: true,
105
- dm: { policy: "pairing" },
106
- },
107
- },
108
- }
109
- ```
110
-
111
- ## Encryption (E2EE)
112
-
113
- End-to-end encryption is **supported** via the Rust crypto SDK.
114
-
115
- Enable with `channels.matrix.encryption: true`:
116
-
117
- - If the crypto module loads, encrypted rooms are decrypted automatically.
118
- - Outbound media is encrypted when sending to encrypted rooms.
119
- - On first connection, Symi requests device verification from your other sessions.
120
- - Verify the device in another Matrix client (Element, etc.) to enable key sharing.
121
- - If the crypto module cannot be loaded, E2EE is disabled and encrypted rooms will not decrypt;
122
- Symi logs a warning.
123
- - If you see missing crypto module errors (for example, `@matrix-org/matrix-sdk-crypto-nodejs-*`),
124
- allow build scripts for `@matrix-org/matrix-sdk-crypto-nodejs` and run
125
- `pnpm rebuild @matrix-org/matrix-sdk-crypto-nodejs` or fetch the binary with
126
- `node node_modules/@matrix-org/matrix-sdk-crypto-nodejs/download-lib.js`.
127
-
128
- Crypto state is stored per account + access token in
129
- `~/.symi/matrix/accounts/<account>/<homeserver>__<user>/<token-hash>/crypto/`
130
- (SQLite database). Sync state lives alongside it in `bot-storage.json`.
131
- If the access token (device) changes, a new store is created and the bot must be
132
- re-verified for encrypted rooms.
133
-
134
- **Device verification:**
135
- When E2EE is enabled, the bot will request verification from your other sessions on startup.
136
- Open Element (or another client) and approve the verification request to establish trust.
137
- Once verified, the bot can decrypt messages in encrypted rooms.
138
-
139
- ## Multi-account
140
-
141
- Each account runs as a separate Matrix user on any homeserver. Per-account config
142
- inherits from the top-level `channels.matrix` settings and can override any option
143
- (DM policy, groups, encryption, etc.).
144
-
145
- ```json5
146
- {
147
- channels: {
148
- matrix: {
149
- enabled: true,
150
- dm: { policy: "pairing" },
151
- accounts: {
152
- assistant: {
153
- name: "Main assistant",
154
- homeserver: "https://matrix.example.org",
155
- accessToken: "syt_assistant_***",
156
- encryption: true,
157
- },
158
- alerts: {
159
- name: "Alerts bot",
160
- homeserver: "https://matrix.example.org",
161
- accessToken: "syt_alerts_***",
162
- dm: { policy: "allowlist", allowFrom: ["@admin:example.org"] },
163
- },
164
- },
165
- },
166
- },
167
- }
168
- ```
169
-
170
- Notes:
171
-
172
- - Account startup is serialized to avoid race conditions with concurrent module imports.
173
- - Env variables (`MATRIX_HOMESERVER`, `MATRIX_ACCESS_TOKEN`, etc.) only apply to the **default** account.
174
- - Base channel settings (DM policy, group policy, mention gating, etc.) apply to all accounts unless overridden per account.
175
- - Use `bindings[].match.accountId` to route each account to a different agent.
176
- - Crypto state is stored per account + access token (separate key stores per account).
177
-
178
- ## Routing model
179
-
180
- - Replies always go back to Matrix.
181
- - DMs share the agent's main session; rooms map to group sessions.
182
-
183
- ## Access control (DMs)
184
-
185
- - Default: `channels.matrix.dm.policy = "pairing"`. Unknown senders get a pairing code.
186
- - Approve via:
187
- - `symi pairing list matrix`
188
- - `symi pairing approve matrix <CODE>`
189
- - Public DMs: `channels.matrix.dm.policy="open"` plus `channels.matrix.dm.allowFrom=["*"]`.
190
- - `channels.matrix.dm.allowFrom` accepts full Matrix user IDs (example: `@user:server`). The wizard resolves display names to user IDs when directory search finds a single exact match.
191
- - Do not use display names or bare localparts (example: `"Alice"` or `"alice"`). They are ambiguous and are ignored for allowlist matching. Use full `@user:server` IDs.
192
-
193
- ## Rooms (groups)
194
-
195
- - Default: `channels.matrix.groupPolicy = "allowlist"` (mention-gated). Use `channels.defaults.groupPolicy` to override the default when unset.
196
- - Allowlist rooms with `channels.matrix.groups` (room IDs or aliases; names are resolved to IDs when directory search finds a single exact match):
197
-
198
- ```json5
199
- {
200
- channels: {
201
- matrix: {
202
- groupPolicy: "allowlist",
203
- groups: {
204
- "!roomId:example.org": { allow: true },
205
- "#alias:example.org": { allow: true },
206
- },
207
- groupAllowFrom: ["@owner:example.org"],
208
- },
209
- },
210
- }
211
- ```
212
-
213
- - `requireMention: false` enables auto-reply in that room.
214
- - `groups."*"` can set defaults for mention gating across rooms.
215
- - `groupAllowFrom` restricts which senders can trigger the bot in rooms (full Matrix user IDs).
216
- - Per-room `users` allowlists can further restrict senders inside a specific room (use full Matrix user IDs).
217
- - The configure wizard prompts for room allowlists (room IDs, aliases, or names) and resolves names only on an exact, unique match.
218
- - On startup, Symi resolves room/user names in allowlists to IDs and logs the mapping; unresolved entries are ignored for allowlist matching.
219
- - Invites are auto-joined by default; control with `channels.matrix.autoJoin` and `channels.matrix.autoJoinAllowlist`.
220
- - To allow **no rooms**, set `channels.matrix.groupPolicy: "disabled"` (or keep an empty allowlist).
221
- - Legacy key: `channels.matrix.rooms` (same shape as `groups`).
222
-
223
- ## Threads
224
-
225
- - Reply threading is supported.
226
- - `channels.matrix.threadReplies` controls whether replies stay in threads:
227
- - `off`, `inbound` (default), `always`
228
- - `channels.matrix.replyToMode` controls reply-to metadata when not replying in a thread:
229
- - `off` (default), `first`, `all`
230
-
231
- ## Capabilities
232
-
233
- | Feature | Status |
234
- | --------------- | ------------------------------------------------------------------------------------- |
235
- | Direct messages | ✅ Supported |
236
- | Rooms | ✅ Supported |
237
- | Threads | ✅ Supported |
238
- | Media | ✅ Supported |
239
- | E2EE | ✅ Supported (crypto module required) |
240
- | Reactions | ✅ Supported (send/read via tools) |
241
- | Polls | ✅ Send supported; inbound poll starts are converted to text (responses/ends ignored) |
242
- | Location | ✅ Supported (geo URI; altitude ignored) |
243
- | Native commands | ✅ Supported |
244
-
245
- ## Troubleshooting
246
-
247
- Run this ladder first:
248
-
249
- ```bash
250
- symi status
251
- symi gateway status
252
- symi logs --follow
253
- symi doctor
254
- symi channels status --probe
255
- ```
256
-
257
- Then confirm DM pairing state if needed:
258
-
259
- ```bash
260
- symi pairing list matrix
261
- ```
262
-
263
- Common failures:
264
-
265
- - Logged in but room messages ignored: room blocked by `groupPolicy` or room allowlist.
266
- - DMs ignored: sender pending approval when `channels.matrix.dm.policy="pairing"`.
267
- - Encrypted rooms fail: crypto support or encryption settings mismatch.
268
-
269
- For triage flow: [/channels/troubleshooting](/channels/troubleshooting).
270
-
271
- ## Configuration
272
-
273
- Full configuration: [Configuration](/gateway/configuration)
274
-
275
- Provider options:
276
-
277
- - `channels.matrix.enabled`: enable/disable channel startup.
278
- - `channels.matrix.homeserver`: homeserver URL.
279
- - `channels.matrix.userId`: Matrix user ID (optional with access token).
280
- - `channels.matrix.accessToken`: access token.
281
- - `channels.matrix.password`: password for login (token stored).
282
- - `channels.matrix.deviceName`: device display name.
283
- - `channels.matrix.encryption`: enable E2EE (default: false).
284
- - `channels.matrix.initialSyncLimit`: initial sync limit.
285
- - `channels.matrix.threadReplies`: `off | inbound | always` (default: inbound).
286
- - `channels.matrix.textChunkLimit`: outbound text chunk size (chars).
287
- - `channels.matrix.chunkMode`: `length` (default) or `newline` to split on blank lines (paragraph boundaries) before length chunking.
288
- - `channels.matrix.dm.policy`: `pairing | allowlist | open | disabled` (default: pairing).
289
- - `channels.matrix.dm.allowFrom`: DM allowlist (full Matrix user IDs). `open` requires `"*"`. The wizard resolves names to IDs when possible.
290
- - `channels.matrix.groupPolicy`: `allowlist | open | disabled` (default: allowlist).
291
- - `channels.matrix.groupAllowFrom`: allowlisted senders for group messages (full Matrix user IDs).
292
- - `channels.matrix.allowlistOnly`: force allowlist rules for DMs + rooms.
293
- - `channels.matrix.groups`: group allowlist + per-room settings map.
294
- - `channels.matrix.rooms`: legacy group allowlist/config.
295
- - `channels.matrix.replyToMode`: reply-to mode for threads/tags.
296
- - `channels.matrix.mediaMaxMb`: inbound/outbound media cap (MB).
297
- - `channels.matrix.autoJoin`: invite handling (`always | allowlist | off`, default: always).
298
- - `channels.matrix.autoJoinAllowlist`: allowed room IDs/aliases for auto-join.
299
- - `channels.matrix.accounts`: multi-account configuration keyed by account ID (each account inherits top-level settings).
300
- - `channels.matrix.actions`: per-action tool gating (reactions/messages/pins/memberInfo/channelInfo).
@@ -1,158 +0,0 @@
1
- ---
2
- summary: "Mattermost bot setup and Symi config"
3
- read_when:
4
- - Setting up Mattermost
5
- - Debugging Mattermost routing
6
- title: "Mattermost"
7
- ---
8
-
9
- # Mattermost (plugin)
10
-
11
- Status: supported via plugin (bot token + WebSocket events). Channels, groups, and DMs are supported.
12
- Mattermost is a self-hostable team messaging platform; see the official site at
13
- [mattermost.com](https://mattermost.com) for product details and downloads.
14
-
15
- ## Plugin required
16
-
17
- Mattermost ships as a plugin and is not bundled with the core install.
18
-
19
- Install via CLI (npm registry):
20
-
21
- ```bash
22
- symi plugins install @symi/mattermost
23
- ```
24
-
25
- Local checkout (when running from a git repo):
26
-
27
- ```bash
28
- symi plugins install ./extensions/mattermost
29
- ```
30
-
31
- If you choose Mattermost during configure/onboarding and a git checkout is detected,
32
- Symi will offer the local install path automatically.
33
-
34
- Details: [Plugins](/tools/plugin)
35
-
36
- ## Onboarding
37
-
38
- 1. Install the Mattermost plugin.
39
- 2. Create a Mattermost bot account and copy the **bot token**.
40
- 3. Copy the Mattermost **base URL** (e.g., `https://chat.example.com`).
41
- 4. Configure Symi and start the gateway.
42
-
43
- Minimal config:
44
-
45
- ```json5
46
- {
47
- channels: {
48
- mattermost: {
49
- enabled: true,
50
- botToken: "mm-token",
51
- baseUrl: "https://chat.example.com",
52
- dmPolicy: "pairing",
53
- },
54
- },
55
- }
56
- ```
57
-
58
- ## Environment variables (default account)
59
-
60
- Set these on the gateway host if you prefer env vars:
61
-
62
- - `MATTERMOST_BOT_TOKEN=...`
63
- - `MATTERMOST_URL=https://chat.example.com`
64
-
65
- Env vars apply only to the **default** account (`default`). Other accounts must use config values.
66
-
67
- ## Chat modes
68
-
69
- Mattermost responds to DMs automatically. Channel behavior is controlled by `chatmode`:
70
-
71
- - `oncall` (default): respond only when @mentioned in channels.
72
- - `onmessage`: respond to every channel message.
73
- - `onchar`: respond when a message starts with a trigger prefix.
74
-
75
- Config example:
76
-
77
- ```json5
78
- {
79
- channels: {
80
- mattermost: {
81
- chatmode: "onchar",
82
- oncharPrefixes: [">", "!"],
83
- },
84
- },
85
- }
86
- ```
87
-
88
- Notes:
89
-
90
- - `onchar` still responds to explicit @mentions.
91
- - `channels.mattermost.requireMention` is honored for legacy configs but `chatmode` is preferred.
92
-
93
- ## Access control (DMs)
94
-
95
- - Default: `channels.mattermost.dmPolicy = "pairing"` (unknown senders get a pairing code).
96
- - Approve via:
97
- - `symi pairing list mattermost`
98
- - `symi pairing approve mattermost <CODE>`
99
- - Public DMs: `channels.mattermost.dmPolicy="open"` plus `channels.mattermost.allowFrom=["*"]`.
100
-
101
- ## Channels (groups)
102
-
103
- - Default: `channels.mattermost.groupPolicy = "allowlist"` (mention-gated).
104
- - Allowlist senders with `channels.mattermost.groupAllowFrom` (user IDs or `@username`).
105
- - Open channels: `channels.mattermost.groupPolicy="open"` (mention-gated).
106
-
107
- ## Targets for outbound delivery
108
-
109
- Use these target formats with `symi message send` or cron/webhooks:
110
-
111
- - `channel:<id>` for a channel
112
- - `user:<id>` for a DM
113
- - `@username` for a DM (resolved via the Mattermost API)
114
-
115
- Bare IDs are treated as channels.
116
-
117
- ## Reactions (message tool)
118
-
119
- - Use `message action=react` with `channel=mattermost`.
120
- - `messageId` is the Mattermost post id.
121
- - `emoji` accepts names like `thumbsup` or `:+1:` (colons are optional).
122
- - Set `remove=true` (boolean) to remove a reaction.
123
- - Reaction add/remove events are forwarded as system events to the routed agent session.
124
-
125
- Examples:
126
-
127
- ```
128
- message action=react channel=mattermost target=channel:<channelId> messageId=<postId> emoji=thumbsup
129
- message action=react channel=mattermost target=channel:<channelId> messageId=<postId> emoji=thumbsup remove=true
130
- ```
131
-
132
- Config:
133
-
134
- - `channels.mattermost.actions.reactions`: enable/disable reaction actions (default true).
135
- - Per-account override: `channels.mattermost.accounts.<id>.actions.reactions`.
136
-
137
- ## Multi-account
138
-
139
- Mattermost supports multiple accounts under `channels.mattermost.accounts`:
140
-
141
- ```json5
142
- {
143
- channels: {
144
- mattermost: {
145
- accounts: {
146
- default: { name: "Primary", botToken: "mm-token", baseUrl: "https://chat.example.com" },
147
- alerts: { name: "Alerts", botToken: "mm-token-2", baseUrl: "https://alerts.example.com" },
148
- },
149
- },
150
- },
151
- }
152
- ```
153
-
154
- ## Troubleshooting
155
-
156
- - No replies in channels: ensure the bot is in the channel and mention it (oncall), use a trigger prefix (onchar), or set `chatmode: "onmessage"`.
157
- - Auth errors: check the bot token, base URL, and whether the account is enabled.
158
- - Multi-account issues: env vars only apply to the `default` account.