@symerian/symi 3.0.20 → 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 (737) hide show
  1. package/dist/{audio-preflight-BaCdNfrk.js → audio-preflight-D7BVT-ls.js} +4 -4
  2. package/dist/build-info.json +3 -3
  3. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  4. package/dist/{chrome-UfmVM0xR.js → chrome-B5CO2vB5.js} +7 -7
  5. package/dist/{deliver-BqXdac6W.js → deliver-CrwjsDwv.js} +1 -1
  6. package/dist/extensionAPI.js +7 -7
  7. package/dist/{image-DIWsXYcW.js → image-Csu7WcLW.js} +1 -1
  8. package/dist/{manager-DW3SxcPr.js → manager-BkkVjTO8.js} +1 -1
  9. package/dist/{pi-embedded-BNch0U5F.js → pi-embedded-Dhp64z5l.js} +16 -16
  10. package/dist/{pi-embedded-helpers-IkHl02JF.js → pi-embedded-helpers-840E4hop.js} +4 -4
  11. package/dist/{pw-ai-nMkA-oDJ.js → pw-ai-CBgJf_RR.js} +1 -1
  12. package/dist/{runner-DNEC58JI.js → runner-BbFKo1ne.js} +1 -1
  13. package/dist/{synthesis-BWAr0sZ9.js → synthesis-DoEM0E8_.js} +7 -7
  14. package/dist/{web-7a-m_UxL.js → web-BYXJn-Ps.js} +7 -7
  15. package/package.json +1 -1
  16. package/docs/.i18n/README.md +0 -31
  17. package/docs/.i18n/glossary.ja-JP.json +0 -14
  18. package/docs/.i18n/glossary.zh-CN.json +0 -210
  19. package/docs/.i18n/ja-JP.tm.jsonl +0 -0
  20. package/docs/.i18n/zh-CN.tm.jsonl +0 -1303
  21. package/docs/CNAME +0 -1
  22. package/docs/assets/install-script.svg +0 -1
  23. package/docs/assets/macos-onboarding/01-macos-warning.jpeg +0 -0
  24. package/docs/assets/macos-onboarding/02-local-networks.jpeg +0 -0
  25. package/docs/assets/macos-onboarding/03-security-notice.png +0 -0
  26. package/docs/assets/macos-onboarding/04-choose-gateway.png +0 -0
  27. package/docs/assets/macos-onboarding/05-permissions.png +0 -0
  28. package/docs/assets/pixel-symi.svg +0 -60
  29. package/docs/assets/showcase/agents-ui.jpg +0 -0
  30. package/docs/assets/showcase/bambu-cli.png +0 -0
  31. package/docs/assets/showcase/codexmonitor.png +0 -0
  32. package/docs/assets/showcase/gohome-grafana.png +0 -0
  33. package/docs/assets/showcase/ios-testflight.jpg +0 -0
  34. package/docs/assets/showcase/oura-health.png +0 -0
  35. package/docs/assets/showcase/padel-cli.svg +0 -11
  36. package/docs/assets/showcase/padel-screenshot.jpg +0 -0
  37. package/docs/assets/showcase/papla-tts.jpg +0 -0
  38. package/docs/assets/showcase/pr-review-telegram.jpg +0 -0
  39. package/docs/assets/showcase/roborock-screenshot.jpg +0 -0
  40. package/docs/assets/showcase/roborock-status.svg +0 -13
  41. package/docs/assets/showcase/roof-camera-sky.jpg +0 -0
  42. package/docs/assets/showcase/snag.png +0 -0
  43. package/docs/assets/showcase/tesco-shop.jpg +0 -0
  44. package/docs/assets/showcase/wienerlinien.png +0 -0
  45. package/docs/assets/showcase/wine-cellar-skill.jpg +0 -0
  46. package/docs/assets/showcase/winix-air-purifier.jpg +0 -0
  47. package/docs/assets/showcase/xuezh-pronunciation.jpeg +0 -0
  48. package/docs/assets/sponsors/blacksmith.svg +0 -14
  49. package/docs/assets/sponsors/openai.svg +0 -3
  50. package/docs/assets/symi-logo-text-dark.png +0 -0
  51. package/docs/assets/symi-logo-text.png +0 -0
  52. package/docs/automation/auth-monitoring.md +0 -44
  53. package/docs/automation/cron-jobs.md +0 -540
  54. package/docs/automation/cron-vs-heartbeat.md +0 -286
  55. package/docs/automation/gmail-pubsub.md +0 -256
  56. package/docs/automation/hooks.md +0 -998
  57. package/docs/automation/poll.md +0 -61
  58. package/docs/automation/troubleshooting.md +0 -122
  59. package/docs/automation/webhook.md +0 -213
  60. package/docs/brave-search.md +0 -41
  61. package/docs/capabilities.md +0 -151
  62. package/docs/channels/bluebubbles.md +0 -346
  63. package/docs/channels/broadcast-groups.md +0 -441
  64. package/docs/channels/channel-routing.md +0 -112
  65. package/docs/channels/feishu.md +0 -586
  66. package/docs/channels/googlechat.md +0 -253
  67. package/docs/channels/grammy.md +0 -31
  68. package/docs/channels/group-messages.md +0 -82
  69. package/docs/channels/groups.md +0 -364
  70. package/docs/channels/imessage.md +0 -366
  71. package/docs/channels/index.md +0 -46
  72. package/docs/channels/irc.md +0 -234
  73. package/docs/channels/line.md +0 -186
  74. package/docs/channels/location.md +0 -56
  75. package/docs/channels/matrix.md +0 -300
  76. package/docs/channels/mattermost.md +0 -158
  77. package/docs/channels/msteams.md +0 -769
  78. package/docs/channels/nextcloud-talk.md +0 -138
  79. package/docs/channels/nostr.md +0 -233
  80. package/docs/channels/pairing.md +0 -100
  81. package/docs/channels/signal.md +0 -322
  82. package/docs/channels/slack.md +0 -510
  83. package/docs/channels/telegram.md +0 -748
  84. package/docs/channels/tlon.md +0 -148
  85. package/docs/channels/troubleshooting.md +0 -110
  86. package/docs/channels/twitch.md +0 -379
  87. package/docs/channels/whatsapp.md +0 -444
  88. package/docs/channels/zalo.md +0 -192
  89. package/docs/channels/zalouser.md +0 -140
  90. package/docs/ci.md +0 -50
  91. package/docs/cli/acp.md +0 -182
  92. package/docs/cli/agent.md +0 -24
  93. package/docs/cli/agents.md +0 -75
  94. package/docs/cli/approvals.md +0 -50
  95. package/docs/cli/browser.md +0 -107
  96. package/docs/cli/channels.md +0 -73
  97. package/docs/cli/config.md +0 -50
  98. package/docs/cli/configure.md +0 -32
  99. package/docs/cli/cron.md +0 -44
  100. package/docs/cli/dashboard.md +0 -16
  101. package/docs/cli/devices.md +0 -73
  102. package/docs/cli/directory.md +0 -62
  103. package/docs/cli/dns.md +0 -23
  104. package/docs/cli/docs.md +0 -15
  105. package/docs/cli/doctor.md +0 -41
  106. package/docs/cli/gateway.md +0 -202
  107. package/docs/cli/health.md +0 -21
  108. package/docs/cli/hooks.md +0 -313
  109. package/docs/cli/index.md +0 -1029
  110. package/docs/cli/logs.md +0 -28
  111. package/docs/cli/memory.md +0 -45
  112. package/docs/cli/message.md +0 -214
  113. package/docs/cli/models.md +0 -79
  114. package/docs/cli/node.md +0 -112
  115. package/docs/cli/nodes.md +0 -73
  116. package/docs/cli/onboard.md +0 -76
  117. package/docs/cli/pairing.md +0 -21
  118. package/docs/cli/plugins.md +0 -92
  119. package/docs/cli/reset.md +0 -17
  120. package/docs/cli/sandbox.md +0 -152
  121. package/docs/cli/security.md +0 -64
  122. package/docs/cli/sessions.md +0 -16
  123. package/docs/cli/setup.md +0 -29
  124. package/docs/cli/skills.md +0 -26
  125. package/docs/cli/status.md +0 -25
  126. package/docs/cli/system.md +0 -60
  127. package/docs/cli/tui.md +0 -23
  128. package/docs/cli/uninstall.md +0 -17
  129. package/docs/cli/update.md +0 -98
  130. package/docs/cli/voicecall.md +0 -34
  131. package/docs/cli/webhooks.md +0 -25
  132. package/docs/concepts/agent-loop.md +0 -148
  133. package/docs/concepts/agent-workspace.md +0 -234
  134. package/docs/concepts/agent.md +0 -123
  135. package/docs/concepts/architecture.md +0 -135
  136. package/docs/concepts/compaction.md +0 -61
  137. package/docs/concepts/context.md +0 -161
  138. package/docs/concepts/features.md +0 -51
  139. package/docs/concepts/markdown-formatting.md +0 -128
  140. package/docs/concepts/memory.md +0 -729
  141. package/docs/concepts/messages.md +0 -153
  142. package/docs/concepts/model-failover.md +0 -149
  143. package/docs/concepts/model-providers.md +0 -424
  144. package/docs/concepts/models.md +0 -208
  145. package/docs/concepts/multi-agent.md +0 -521
  146. package/docs/concepts/oauth.md +0 -145
  147. package/docs/concepts/presence.md +0 -102
  148. package/docs/concepts/queue.md +0 -86
  149. package/docs/concepts/retry.md +0 -64
  150. package/docs/concepts/session-pruning.md +0 -123
  151. package/docs/concepts/session-tool.md +0 -213
  152. package/docs/concepts/session.md +0 -199
  153. package/docs/concepts/sessions.md +0 -10
  154. package/docs/concepts/streaming.md +0 -129
  155. package/docs/concepts/system-prompt.md +0 -128
  156. package/docs/concepts/timezone.md +0 -90
  157. package/docs/concepts/typebox.md +0 -289
  158. package/docs/concepts/typing-indicators.md +0 -68
  159. package/docs/concepts/usage-tracking.md +0 -35
  160. package/docs/date-time.md +0 -127
  161. package/docs/debug/node-issue.md +0 -85
  162. package/docs/diagnostics/flags.md +0 -91
  163. package/docs/docs.json +0 -1849
  164. package/docs/experiments/onboarding-config-protocol.md +0 -40
  165. package/docs/experiments/plans/browser-evaluate-cdp-refactor.md +0 -229
  166. package/docs/experiments/plans/cron-add-hardening.md +0 -62
  167. package/docs/experiments/plans/group-policy-hardening.md +0 -40
  168. package/docs/experiments/plans/openresponses-gateway.md +0 -123
  169. package/docs/experiments/plans/pty-process-supervision.md +0 -192
  170. package/docs/experiments/plans/session-binding-channel-agnostic.md +0 -202
  171. package/docs/experiments/plans/thread-bound-subagents.md +0 -281
  172. package/docs/experiments/proposals/model-config.md +0 -36
  173. package/docs/experiments/research/memory.md +0 -228
  174. package/docs/gateway/authentication.md +0 -162
  175. package/docs/gateway/background-process.md +0 -96
  176. package/docs/gateway/bonjour.md +0 -177
  177. package/docs/gateway/bridge-protocol.md +0 -91
  178. package/docs/gateway/cli-backends.md +0 -225
  179. package/docs/gateway/configuration-examples.md +0 -610
  180. package/docs/gateway/configuration-reference.md +0 -2465
  181. package/docs/gateway/configuration.md +0 -488
  182. package/docs/gateway/discovery.md +0 -123
  183. package/docs/gateway/doctor.md +0 -282
  184. package/docs/gateway/gateway-lock.md +0 -34
  185. package/docs/gateway/health.md +0 -35
  186. package/docs/gateway/heartbeat.md +0 -374
  187. package/docs/gateway/index.md +0 -254
  188. package/docs/gateway/local-models.md +0 -150
  189. package/docs/gateway/logging.md +0 -113
  190. package/docs/gateway/multiple-gateways.md +0 -112
  191. package/docs/gateway/network-model.md +0 -20
  192. package/docs/gateway/openai-http-api.md +0 -119
  193. package/docs/gateway/openresponses-http-api.md +0 -333
  194. package/docs/gateway/pairing.md +0 -99
  195. package/docs/gateway/protocol.md +0 -221
  196. package/docs/gateway/remote-gateway-readme.md +0 -158
  197. package/docs/gateway/remote.md +0 -131
  198. package/docs/gateway/sandbox-vs-tool-policy-vs-elevated.md +0 -128
  199. package/docs/gateway/sandboxing.md +0 -203
  200. package/docs/gateway/security/index.md +0 -931
  201. package/docs/gateway/tailscale.md +0 -132
  202. package/docs/gateway/tools-invoke-http-api.md +0 -110
  203. package/docs/gateway/troubleshooting.md +0 -317
  204. package/docs/gateway/trusted-proxy-auth.md +0 -270
  205. package/docs/glass-ui-rendering-invariants.md +0 -451
  206. package/docs/help/debugging.md +0 -162
  207. package/docs/help/environment.md +0 -107
  208. package/docs/help/faq.md +0 -2846
  209. package/docs/help/index.md +0 -21
  210. package/docs/help/scripts.md +0 -28
  211. package/docs/help/testing.md +0 -385
  212. package/docs/help/troubleshooting.md +0 -264
  213. package/docs/images/configure-model-picker-unsearchable.png +0 -0
  214. package/docs/images/feishu-step2-create-app.png +0 -0
  215. package/docs/images/feishu-step3-credentials.png +0 -0
  216. package/docs/images/feishu-step4-permissions.png +0 -0
  217. package/docs/images/feishu-step5-bot-capability.png +0 -0
  218. package/docs/images/feishu-step6-event-subscription.png +0 -0
  219. package/docs/images/groups-flow.svg +0 -52
  220. package/docs/images/mobile-ui-screenshot.png +0 -0
  221. package/docs/index.md +0 -186
  222. package/docs/install/ansible.md +0 -207
  223. package/docs/install/bun.md +0 -59
  224. package/docs/install/development-channels.md +0 -75
  225. package/docs/install/docker.md +0 -583
  226. package/docs/install/exe-dev.md +0 -126
  227. package/docs/install/fly.md +0 -472
  228. package/docs/install/gcp.md +0 -499
  229. package/docs/install/hetzner.md +0 -347
  230. package/docs/install/index.md +0 -218
  231. package/docs/install/installer.md +0 -405
  232. package/docs/install/macos-vm.md +0 -281
  233. package/docs/install/migrating.md +0 -192
  234. package/docs/install/nix.md +0 -98
  235. package/docs/install/node.md +0 -138
  236. package/docs/install/northflank.mdx +0 -49
  237. package/docs/install/podman.md +0 -108
  238. package/docs/install/railway.mdx +0 -95
  239. package/docs/install/render.mdx +0 -158
  240. package/docs/install/uninstall.md +0 -128
  241. package/docs/install/updating.md +0 -231
  242. package/docs/ja-JP/AGENTS.md +0 -37
  243. package/docs/ja-JP/index.md +0 -183
  244. package/docs/ja-JP/start/getting-started.md +0 -125
  245. package/docs/ja-JP/start/wizard.md +0 -77
  246. package/docs/logging.md +0 -350
  247. package/docs/nav-tabs-underline.js +0 -100
  248. package/docs/network.md +0 -54
  249. package/docs/nodes/audio.md +0 -133
  250. package/docs/nodes/camera.md +0 -156
  251. package/docs/nodes/images.md +0 -72
  252. package/docs/nodes/index.md +0 -342
  253. package/docs/nodes/location-command.md +0 -113
  254. package/docs/nodes/media-understanding.md +0 -379
  255. package/docs/nodes/talk.md +0 -90
  256. package/docs/nodes/troubleshooting.md +0 -112
  257. package/docs/nodes/voicewake.md +0 -65
  258. package/docs/perplexity.md +0 -80
  259. package/docs/phase-6.5-pre-flight-audit.md +0 -268
  260. package/docs/pi-dev.md +0 -70
  261. package/docs/pi.md +0 -610
  262. package/docs/platforms/android.md +0 -151
  263. package/docs/platforms/digitalocean.md +0 -265
  264. package/docs/platforms/index.md +0 -53
  265. package/docs/platforms/ios.md +0 -108
  266. package/docs/platforms/linux.md +0 -94
  267. package/docs/platforms/mac/bundled-gateway.md +0 -73
  268. package/docs/platforms/mac/canvas.md +0 -125
  269. package/docs/platforms/mac/child-process.md +0 -69
  270. package/docs/platforms/mac/dev-setup.md +0 -104
  271. package/docs/platforms/mac/health.md +0 -34
  272. package/docs/platforms/mac/icon.md +0 -31
  273. package/docs/platforms/mac/logging.md +0 -57
  274. package/docs/platforms/mac/menu-bar.md +0 -81
  275. package/docs/platforms/mac/peekaboo.md +0 -65
  276. package/docs/platforms/mac/permissions.md +0 -50
  277. package/docs/platforms/mac/release.md +0 -85
  278. package/docs/platforms/mac/remote.md +0 -84
  279. package/docs/platforms/mac/signing.md +0 -47
  280. package/docs/platforms/mac/skills.md +0 -33
  281. package/docs/platforms/mac/voice-overlay.md +0 -60
  282. package/docs/platforms/mac/voicewake.md +0 -66
  283. package/docs/platforms/mac/webchat.md +0 -43
  284. package/docs/platforms/mac/xpc.md +0 -61
  285. package/docs/platforms/macos.md +0 -204
  286. package/docs/platforms/oracle.md +0 -303
  287. package/docs/platforms/raspberry-pi.md +0 -358
  288. package/docs/platforms/windows.md +0 -159
  289. package/docs/plugins/agent-tools.md +0 -99
  290. package/docs/plugins/community.md +0 -44
  291. package/docs/plugins/manifest.md +0 -71
  292. package/docs/plugins/voice-call.md +0 -322
  293. package/docs/plugins/zalouser.md +0 -81
  294. package/docs/prose.md +0 -134
  295. package/docs/providers/anthropic.md +0 -174
  296. package/docs/providers/bedrock.md +0 -176
  297. package/docs/providers/claude-max-api-proxy.md +0 -148
  298. package/docs/providers/cloudflare-ai-gateway.md +0 -71
  299. package/docs/providers/deepgram.md +0 -93
  300. package/docs/providers/github-copilot.md +0 -72
  301. package/docs/providers/glm.md +0 -33
  302. package/docs/providers/huggingface.md +0 -209
  303. package/docs/providers/index.md +0 -67
  304. package/docs/providers/litellm.md +0 -153
  305. package/docs/providers/minimax.md +0 -208
  306. package/docs/providers/models.md +0 -52
  307. package/docs/providers/moonshot.md +0 -142
  308. package/docs/providers/nvidia.md +0 -55
  309. package/docs/providers/ollama.md +0 -250
  310. package/docs/providers/openai.md +0 -62
  311. package/docs/providers/opencode.md +0 -36
  312. package/docs/providers/openrouter.md +0 -37
  313. package/docs/providers/qianfan.md +0 -38
  314. package/docs/providers/qwen.md +0 -53
  315. package/docs/providers/synthetic.md +0 -99
  316. package/docs/providers/together.md +0 -65
  317. package/docs/providers/venice.md +0 -267
  318. package/docs/providers/vercel-ai-gateway.md +0 -50
  319. package/docs/providers/vllm.md +0 -92
  320. package/docs/providers/xiaomi.md +0 -64
  321. package/docs/providers/zai.md +0 -38
  322. package/docs/refactor/exec-host.md +0 -316
  323. package/docs/refactor/outbound-session-mirroring.md +0 -83
  324. package/docs/refactor/plugin-sdk.md +0 -214
  325. package/docs/refactor/strict-config.md +0 -93
  326. package/docs/refactor/syminet.md +0 -417
  327. package/docs/reference/AGENTS.default.md +0 -123
  328. package/docs/reference/RELEASING.md +0 -120
  329. package/docs/reference/api-usage-costs.md +0 -138
  330. package/docs/reference/credits.md +0 -28
  331. package/docs/reference/device-models.md +0 -47
  332. package/docs/reference/rpc.md +0 -43
  333. package/docs/reference/session-management-compaction.md +0 -284
  334. package/docs/reference/test.md +0 -51
  335. package/docs/reference/token-use.md +0 -136
  336. package/docs/reference/transcript-hygiene.md +0 -151
  337. package/docs/reference/wizard.md +0 -265
  338. package/docs/security/CONTRIBUTING-THREAT-MODEL.md +0 -89
  339. package/docs/security/README.md +0 -16
  340. package/docs/security/THREAT-MODEL-ATLAS.md +0 -600
  341. package/docs/security/formal-verification.md +0 -164
  342. package/docs/start/bootstrapping.md +0 -41
  343. package/docs/start/docs-directory.md +0 -63
  344. package/docs/start/getting-started.md +0 -135
  345. package/docs/start/hubs.md +0 -196
  346. package/docs/start/lore.md +0 -216
  347. package/docs/start/onboarding-overview.md +0 -51
  348. package/docs/start/onboarding.md +0 -81
  349. package/docs/start/quickstart.md +0 -22
  350. package/docs/start/setup.md +0 -160
  351. package/docs/start/showcase.md +0 -414
  352. package/docs/start/symi.md +0 -211
  353. package/docs/start/wizard-cli-automation.md +0 -158
  354. package/docs/start/wizard-cli-reference.md +0 -255
  355. package/docs/start/wizard.md +0 -109
  356. package/docs/style.css +0 -37
  357. package/docs/tools/agent-send.md +0 -52
  358. package/docs/tools/apply-patch.md +0 -51
  359. package/docs/tools/browser-linux-troubleshooting.md +0 -139
  360. package/docs/tools/browser-login.md +0 -67
  361. package/docs/tools/browser.md +0 -587
  362. package/docs/tools/chrome-extension.md +0 -183
  363. package/docs/tools/creating-skills.md +0 -54
  364. package/docs/tools/elevated.md +0 -55
  365. package/docs/tools/exec-approvals.md +0 -261
  366. package/docs/tools/exec.md +0 -184
  367. package/docs/tools/firecrawl.md +0 -61
  368. package/docs/tools/index.md +0 -540
  369. package/docs/tools/llm-task.md +0 -115
  370. package/docs/tools/loop-detection.md +0 -98
  371. package/docs/tools/multi-agent-sandbox-tools.md +0 -396
  372. package/docs/tools/pipeline.md +0 -340
  373. package/docs/tools/plugin.md +0 -687
  374. package/docs/tools/reactions.md +0 -21
  375. package/docs/tools/skills-config.md +0 -76
  376. package/docs/tools/skills.md +0 -300
  377. package/docs/tools/slash-commands.md +0 -202
  378. package/docs/tools/subagents.md +0 -232
  379. package/docs/tools/symihub.md +0 -256
  380. package/docs/tools/thinking.md +0 -75
  381. package/docs/tools/web.md +0 -265
  382. package/docs/tts.md +0 -398
  383. package/docs/vps.md +0 -43
  384. package/docs/web/control-ui.md +0 -247
  385. package/docs/web/dashboard.md +0 -46
  386. package/docs/web/index.md +0 -118
  387. package/docs/web/tui.md +0 -162
  388. package/docs/web/webchat.md +0 -53
  389. package/docs/whatsapp-symi-ai-zh.jpg +0 -0
  390. package/docs/whatsapp-symi.jpg +0 -0
  391. package/docs/zh-CN/AGENTS.md +0 -59
  392. package/docs/zh-CN/automation/auth-monitoring.md +0 -47
  393. package/docs/zh-CN/automation/cron-jobs.md +0 -422
  394. package/docs/zh-CN/automation/cron-vs-heartbeat.md +0 -286
  395. package/docs/zh-CN/automation/gmail-pubsub.md +0 -249
  396. package/docs/zh-CN/automation/hooks.md +0 -881
  397. package/docs/zh-CN/automation/poll.md +0 -68
  398. package/docs/zh-CN/automation/troubleshooting.md +0 -8
  399. package/docs/zh-CN/automation/webhook.md +0 -161
  400. package/docs/zh-CN/brave-search.md +0 -48
  401. package/docs/zh-CN/channels/bluebubbles.md +0 -271
  402. package/docs/zh-CN/channels/broadcast-groups.md +0 -448
  403. package/docs/zh-CN/channels/channel-routing.md +0 -112
  404. package/docs/zh-CN/channels/feishu.md +0 -629
  405. package/docs/zh-CN/channels/googlechat.md +0 -257
  406. package/docs/zh-CN/channels/grammy.md +0 -38
  407. package/docs/zh-CN/channels/group-messages.md +0 -89
  408. package/docs/zh-CN/channels/groups.md +0 -369
  409. package/docs/zh-CN/channels/imessage.md +0 -300
  410. package/docs/zh-CN/channels/index.md +0 -52
  411. package/docs/zh-CN/channels/line.md +0 -180
  412. package/docs/zh-CN/channels/location.md +0 -63
  413. package/docs/zh-CN/channels/matrix.md +0 -221
  414. package/docs/zh-CN/channels/mattermost.md +0 -144
  415. package/docs/zh-CN/channels/msteams.md +0 -773
  416. package/docs/zh-CN/channels/nextcloud-talk.md +0 -142
  417. package/docs/zh-CN/channels/nostr.md +0 -240
  418. package/docs/zh-CN/channels/pairing.md +0 -86
  419. package/docs/zh-CN/channels/signal.md +0 -207
  420. package/docs/zh-CN/channels/slack.md +0 -529
  421. package/docs/zh-CN/channels/telegram.md +0 -748
  422. package/docs/zh-CN/channels/tlon.md +0 -136
  423. package/docs/zh-CN/channels/troubleshooting.md +0 -34
  424. package/docs/zh-CN/channels/twitch.md +0 -385
  425. package/docs/zh-CN/channels/whatsapp.md +0 -411
  426. package/docs/zh-CN/channels/zalo.md +0 -196
  427. package/docs/zh-CN/channels/zalouser.md +0 -147
  428. package/docs/zh-CN/cli/acp.md +0 -173
  429. package/docs/zh-CN/cli/agent.md +0 -30
  430. package/docs/zh-CN/cli/agents.md +0 -82
  431. package/docs/zh-CN/cli/approvals.md +0 -57
  432. package/docs/zh-CN/cli/browser.md +0 -114
  433. package/docs/zh-CN/cli/channels.md +0 -80
  434. package/docs/zh-CN/cli/config.md +0 -57
  435. package/docs/zh-CN/cli/configure.md +0 -37
  436. package/docs/zh-CN/cli/cron.md +0 -43
  437. package/docs/zh-CN/cli/dashboard.md +0 -23
  438. package/docs/zh-CN/cli/devices.md +0 -74
  439. package/docs/zh-CN/cli/directory.md +0 -69
  440. package/docs/zh-CN/cli/dns.md +0 -30
  441. package/docs/zh-CN/cli/docs.md +0 -22
  442. package/docs/zh-CN/cli/doctor.md +0 -48
  443. package/docs/zh-CN/cli/gateway.md +0 -206
  444. package/docs/zh-CN/cli/health.md +0 -28
  445. package/docs/zh-CN/cli/hooks.md +0 -298
  446. package/docs/zh-CN/cli/index.md +0 -1025
  447. package/docs/zh-CN/cli/logs.md +0 -31
  448. package/docs/zh-CN/cli/memory.md +0 -52
  449. package/docs/zh-CN/cli/message.md +0 -205
  450. package/docs/zh-CN/cli/models.md +0 -85
  451. package/docs/zh-CN/cli/node.md +0 -115
  452. package/docs/zh-CN/cli/nodes.md +0 -80
  453. package/docs/zh-CN/cli/onboard.md +0 -36
  454. package/docs/zh-CN/cli/pairing.md +0 -28
  455. package/docs/zh-CN/cli/plugins.md +0 -66
  456. package/docs/zh-CN/cli/reset.md +0 -24
  457. package/docs/zh-CN/cli/sandbox.md +0 -158
  458. package/docs/zh-CN/cli/security.md +0 -33
  459. package/docs/zh-CN/cli/sessions.md +0 -23
  460. package/docs/zh-CN/cli/setup.md +0 -36
  461. package/docs/zh-CN/cli/skills.md +0 -33
  462. package/docs/zh-CN/cli/status.md +0 -32
  463. package/docs/zh-CN/cli/system.md +0 -63
  464. package/docs/zh-CN/cli/tui.md +0 -30
  465. package/docs/zh-CN/cli/uninstall.md +0 -24
  466. package/docs/zh-CN/cli/update.md +0 -101
  467. package/docs/zh-CN/cli/voicecall.md +0 -41
  468. package/docs/zh-CN/cli/webhooks.md +0 -32
  469. package/docs/zh-CN/concepts/agent-loop.md +0 -146
  470. package/docs/zh-CN/concepts/agent-workspace.md +0 -219
  471. package/docs/zh-CN/concepts/agent.md +0 -115
  472. package/docs/zh-CN/concepts/architecture.md +0 -122
  473. package/docs/zh-CN/concepts/compaction.md +0 -67
  474. package/docs/zh-CN/concepts/context.md +0 -168
  475. package/docs/zh-CN/concepts/features.md +0 -57
  476. package/docs/zh-CN/concepts/markdown-formatting.md +0 -115
  477. package/docs/zh-CN/concepts/memory.md +0 -412
  478. package/docs/zh-CN/concepts/messages.md +0 -140
  479. package/docs/zh-CN/concepts/model-failover.md +0 -145
  480. package/docs/zh-CN/concepts/model-providers.md +0 -320
  481. package/docs/zh-CN/concepts/models.md +0 -196
  482. package/docs/zh-CN/concepts/multi-agent.md +0 -371
  483. package/docs/zh-CN/concepts/oauth.md +0 -151
  484. package/docs/zh-CN/concepts/presence.md +0 -99
  485. package/docs/zh-CN/concepts/queue.md +0 -91
  486. package/docs/zh-CN/concepts/retry.md +0 -71
  487. package/docs/zh-CN/concepts/session-pruning.md +0 -129
  488. package/docs/zh-CN/concepts/session-tool.md +0 -198
  489. package/docs/zh-CN/concepts/session.md +0 -158
  490. package/docs/zh-CN/concepts/sessions.md +0 -17
  491. package/docs/zh-CN/concepts/streaming.md +0 -131
  492. package/docs/zh-CN/concepts/system-prompt.md +0 -99
  493. package/docs/zh-CN/concepts/timezone.md +0 -94
  494. package/docs/zh-CN/concepts/typebox.md +0 -284
  495. package/docs/zh-CN/concepts/typing-indicators.md +0 -74
  496. package/docs/zh-CN/concepts/usage-tracking.md +0 -42
  497. package/docs/zh-CN/date-time.md +0 -128
  498. package/docs/zh-CN/debug/node-issue.md +0 -90
  499. package/docs/zh-CN/diagnostics/flags.md +0 -98
  500. package/docs/zh-CN/experiments/onboarding-config-protocol.md +0 -47
  501. package/docs/zh-CN/experiments/plans/cron-add-hardening.md +0 -69
  502. package/docs/zh-CN/experiments/plans/group-policy-hardening.md +0 -45
  503. package/docs/zh-CN/experiments/plans/openresponses-gateway.md +0 -121
  504. package/docs/zh-CN/experiments/proposals/model-config.md +0 -42
  505. package/docs/zh-CN/experiments/research/memory.md +0 -235
  506. package/docs/zh-CN/gateway/authentication.md +0 -142
  507. package/docs/zh-CN/gateway/background-process.md +0 -100
  508. package/docs/zh-CN/gateway/bonjour.md +0 -174
  509. package/docs/zh-CN/gateway/bridge-protocol.md +0 -86
  510. package/docs/zh-CN/gateway/cli-backends.md +0 -213
  511. package/docs/zh-CN/gateway/configuration-examples.md +0 -580
  512. package/docs/zh-CN/gateway/configuration.md +0 -3284
  513. package/docs/zh-CN/gateway/discovery.md +0 -123
  514. package/docs/zh-CN/gateway/doctor.md +0 -238
  515. package/docs/zh-CN/gateway/gateway-lock.md +0 -41
  516. package/docs/zh-CN/gateway/health.md +0 -42
  517. package/docs/zh-CN/gateway/heartbeat.md +0 -272
  518. package/docs/zh-CN/gateway/index.md +0 -335
  519. package/docs/zh-CN/gateway/local-models.md +0 -157
  520. package/docs/zh-CN/gateway/logging.md +0 -114
  521. package/docs/zh-CN/gateway/multiple-gateways.md +0 -119
  522. package/docs/zh-CN/gateway/network-model.md +0 -23
  523. package/docs/zh-CN/gateway/openai-http-api.md +0 -125
  524. package/docs/zh-CN/gateway/openresponses-http-api.md +0 -317
  525. package/docs/zh-CN/gateway/pairing.md +0 -99
  526. package/docs/zh-CN/gateway/protocol.md +0 -220
  527. package/docs/zh-CN/gateway/remote-gateway-readme.md +0 -164
  528. package/docs/zh-CN/gateway/remote.md +0 -133
  529. package/docs/zh-CN/gateway/sandbox-vs-tool-policy-vs-elevated.md +0 -135
  530. package/docs/zh-CN/gateway/sandboxing.md +0 -188
  531. package/docs/zh-CN/gateway/security/index.md +0 -772
  532. package/docs/zh-CN/gateway/tailscale.md +0 -124
  533. package/docs/zh-CN/gateway/tools-invoke-http-api.md +0 -92
  534. package/docs/zh-CN/gateway/troubleshooting.md +0 -758
  535. package/docs/zh-CN/help/debugging.md +0 -160
  536. package/docs/zh-CN/help/environment.md +0 -88
  537. package/docs/zh-CN/help/faq.md +0 -2613
  538. package/docs/zh-CN/help/index.md +0 -28
  539. package/docs/zh-CN/help/scripts.md +0 -35
  540. package/docs/zh-CN/help/testing.md +0 -375
  541. package/docs/zh-CN/help/troubleshooting.md +0 -104
  542. package/docs/zh-CN/index.md +0 -183
  543. package/docs/zh-CN/install/ansible.md +0 -214
  544. package/docs/zh-CN/install/bun.md +0 -65
  545. package/docs/zh-CN/install/development-channels.md +0 -81
  546. package/docs/zh-CN/install/docker.md +0 -525
  547. package/docs/zh-CN/install/exe-dev.md +0 -127
  548. package/docs/zh-CN/install/fly.md +0 -476
  549. package/docs/zh-CN/install/gcp.md +0 -509
  550. package/docs/zh-CN/install/hetzner.md +0 -336
  551. package/docs/zh-CN/install/index.md +0 -193
  552. package/docs/zh-CN/install/installer.md +0 -128
  553. package/docs/zh-CN/install/macos-vm.md +0 -288
  554. package/docs/zh-CN/install/migrating.md +0 -199
  555. package/docs/zh-CN/install/nix.md +0 -99
  556. package/docs/zh-CN/install/node.md +0 -8
  557. package/docs/zh-CN/install/northflank.mdx +0 -56
  558. package/docs/zh-CN/install/railway.mdx +0 -102
  559. package/docs/zh-CN/install/render.mdx +0 -168
  560. package/docs/zh-CN/install/uninstall.md +0 -135
  561. package/docs/zh-CN/install/updating.md +0 -233
  562. package/docs/zh-CN/logging.md +0 -329
  563. package/docs/zh-CN/network.md +0 -59
  564. package/docs/zh-CN/nodes/audio.md +0 -120
  565. package/docs/zh-CN/nodes/camera.md +0 -162
  566. package/docs/zh-CN/nodes/images.md +0 -79
  567. package/docs/zh-CN/nodes/index.md +0 -348
  568. package/docs/zh-CN/nodes/location-command.md +0 -120
  569. package/docs/zh-CN/nodes/media-understanding.md +0 -380
  570. package/docs/zh-CN/nodes/talk.md +0 -97
  571. package/docs/zh-CN/nodes/troubleshooting.md +0 -8
  572. package/docs/zh-CN/nodes/voicewake.md +0 -72
  573. package/docs/zh-CN/perplexity.md +0 -84
  574. package/docs/zh-CN/pi-dev.md +0 -77
  575. package/docs/zh-CN/pi.md +0 -617
  576. package/docs/zh-CN/platforms/android.md +0 -155
  577. package/docs/zh-CN/platforms/digitalocean.md +0 -268
  578. package/docs/zh-CN/platforms/index.md +0 -60
  579. package/docs/zh-CN/platforms/ios.md +0 -114
  580. package/docs/zh-CN/platforms/linux.md +0 -101
  581. package/docs/zh-CN/platforms/mac/bundled-gateway.md +0 -75
  582. package/docs/zh-CN/platforms/mac/canvas.md +0 -128
  583. package/docs/zh-CN/platforms/mac/child-process.md +0 -73
  584. package/docs/zh-CN/platforms/mac/dev-setup.md +0 -109
  585. package/docs/zh-CN/platforms/mac/health.md +0 -41
  586. package/docs/zh-CN/platforms/mac/icon.md +0 -38
  587. package/docs/zh-CN/platforms/mac/logging.md +0 -64
  588. package/docs/zh-CN/platforms/mac/menu-bar.md +0 -88
  589. package/docs/zh-CN/platforms/mac/peekaboo.md +0 -62
  590. package/docs/zh-CN/platforms/mac/permissions.md +0 -46
  591. package/docs/zh-CN/platforms/mac/release.md +0 -92
  592. package/docs/zh-CN/platforms/mac/remote.md +0 -90
  593. package/docs/zh-CN/platforms/mac/signing.md +0 -54
  594. package/docs/zh-CN/platforms/mac/skills.md +0 -40
  595. package/docs/zh-CN/platforms/mac/voice-overlay.md +0 -67
  596. package/docs/zh-CN/platforms/mac/voicewake.md +0 -73
  597. package/docs/zh-CN/platforms/mac/webchat.md +0 -43
  598. package/docs/zh-CN/platforms/mac/xpc.md +0 -68
  599. package/docs/zh-CN/platforms/macos.md +0 -193
  600. package/docs/zh-CN/platforms/oracle.md +0 -310
  601. package/docs/zh-CN/platforms/raspberry-pi.md +0 -365
  602. package/docs/zh-CN/platforms/windows.md +0 -156
  603. package/docs/zh-CN/plugins/agent-tools.md +0 -99
  604. package/docs/zh-CN/plugins/manifest.md +0 -68
  605. package/docs/zh-CN/plugins/voice-call.md +0 -250
  606. package/docs/zh-CN/plugins/zalouser.md +0 -88
  607. package/docs/zh-CN/prose.md +0 -141
  608. package/docs/zh-CN/providers/anthropic.md +0 -159
  609. package/docs/zh-CN/providers/bedrock.md +0 -170
  610. package/docs/zh-CN/providers/claude-max-api-proxy.md +0 -155
  611. package/docs/zh-CN/providers/deepgram.md +0 -97
  612. package/docs/zh-CN/providers/github-copilot.md +0 -67
  613. package/docs/zh-CN/providers/glm.md +0 -39
  614. package/docs/zh-CN/providers/index.md +0 -66
  615. package/docs/zh-CN/providers/minimax.md +0 -206
  616. package/docs/zh-CN/providers/models.md +0 -55
  617. package/docs/zh-CN/providers/moonshot.md +0 -145
  618. package/docs/zh-CN/providers/ollama.md +0 -230
  619. package/docs/zh-CN/providers/openai.md +0 -68
  620. package/docs/zh-CN/providers/opencode.md +0 -41
  621. package/docs/zh-CN/providers/openrouter.md +0 -43
  622. package/docs/zh-CN/providers/qianfan.md +0 -8
  623. package/docs/zh-CN/providers/qwen.md +0 -55
  624. package/docs/zh-CN/providers/synthetic.md +0 -102
  625. package/docs/zh-CN/providers/venice.md +0 -274
  626. package/docs/zh-CN/providers/vercel-ai-gateway.md +0 -57
  627. package/docs/zh-CN/providers/xiaomi.md +0 -68
  628. package/docs/zh-CN/providers/zai.md +0 -41
  629. package/docs/zh-CN/refactor/exec-host.md +0 -323
  630. package/docs/zh-CN/refactor/outbound-session-mirroring.md +0 -90
  631. package/docs/zh-CN/refactor/plugin-sdk.md +0 -221
  632. package/docs/zh-CN/refactor/strict-config.md +0 -100
  633. package/docs/zh-CN/refactor/syminet.md +0 -424
  634. package/docs/zh-CN/reference/AGENTS.default.md +0 -130
  635. package/docs/zh-CN/reference/RELEASING.md +0 -122
  636. package/docs/zh-CN/reference/api-usage-costs.md +0 -136
  637. package/docs/zh-CN/reference/credits.md +0 -34
  638. package/docs/zh-CN/reference/device-models.md +0 -54
  639. package/docs/zh-CN/reference/rpc.md +0 -48
  640. package/docs/zh-CN/reference/session-management-compaction.md +0 -286
  641. package/docs/zh-CN/reference/templates/AGENTS.dev.md +0 -89
  642. package/docs/zh-CN/reference/templates/AGENTS.md +0 -234
  643. package/docs/zh-CN/reference/templates/BOOT.md +0 -17
  644. package/docs/zh-CN/reference/templates/BOOTSTRAP.md +0 -68
  645. package/docs/zh-CN/reference/templates/IDENTITY.dev.md +0 -54
  646. package/docs/zh-CN/reference/templates/IDENTITY.md +0 -36
  647. package/docs/zh-CN/reference/templates/SYMICORE.dev.md +0 -83
  648. package/docs/zh-CN/reference/templates/SYMICORE.md +0 -49
  649. package/docs/zh-CN/reference/templates/SYMIPULSE.md +0 -69
  650. package/docs/zh-CN/reference/templates/TOOLS.dev.md +0 -31
  651. package/docs/zh-CN/reference/templates/TOOLS.md +0 -53
  652. package/docs/zh-CN/reference/templates/USER.dev.md +0 -25
  653. package/docs/zh-CN/reference/templates/USER.md +0 -30
  654. package/docs/zh-CN/reference/test.md +0 -57
  655. package/docs/zh-CN/reference/token-use.md +0 -119
  656. package/docs/zh-CN/reference/transcript-hygiene.md +0 -109
  657. package/docs/zh-CN/reference/wizard.md +0 -9
  658. package/docs/zh-CN/security/formal-verification.md +0 -171
  659. package/docs/zh-CN/start/bootstrapping.md +0 -9
  660. package/docs/zh-CN/start/docs-directory.md +0 -69
  661. package/docs/zh-CN/start/getting-started.md +0 -201
  662. package/docs/zh-CN/start/hubs.md +0 -199
  663. package/docs/zh-CN/start/lore.md +0 -223
  664. package/docs/zh-CN/start/onboarding.md +0 -105
  665. package/docs/zh-CN/start/quickstart.md +0 -88
  666. package/docs/zh-CN/start/setup.md +0 -151
  667. package/docs/zh-CN/start/showcase.md +0 -421
  668. package/docs/zh-CN/start/symi.md +0 -244
  669. package/docs/zh-CN/start/wizard.md +0 -326
  670. package/docs/zh-CN/tools/agent-send.md +0 -58
  671. package/docs/zh-CN/tools/apply-patch.md +0 -57
  672. package/docs/zh-CN/tools/browser-linux-troubleshooting.md +0 -144
  673. package/docs/zh-CN/tools/browser-login.md +0 -75
  674. package/docs/zh-CN/tools/browser.md +0 -553
  675. package/docs/zh-CN/tools/chrome-extension.md +0 -183
  676. package/docs/zh-CN/tools/creating-skills.md +0 -61
  677. package/docs/zh-CN/tools/elevated.md +0 -62
  678. package/docs/zh-CN/tools/exec-approvals.md +0 -233
  679. package/docs/zh-CN/tools/exec.md +0 -169
  680. package/docs/zh-CN/tools/firecrawl.md +0 -68
  681. package/docs/zh-CN/tools/index.md +0 -508
  682. package/docs/zh-CN/tools/llm-task.md +0 -117
  683. package/docs/zh-CN/tools/multi-agent-sandbox-tools.md +0 -400
  684. package/docs/zh-CN/tools/pipeline.md +0 -349
  685. package/docs/zh-CN/tools/plugin.md +0 -639
  686. package/docs/zh-CN/tools/reactions.md +0 -28
  687. package/docs/zh-CN/tools/skills-config.md +0 -78
  688. package/docs/zh-CN/tools/skills.md +0 -279
  689. package/docs/zh-CN/tools/slash-commands.md +0 -196
  690. package/docs/zh-CN/tools/subagents.md +0 -167
  691. package/docs/zh-CN/tools/symihub.md +0 -209
  692. package/docs/zh-CN/tools/thinking.md +0 -80
  693. package/docs/zh-CN/tools/web.md +0 -257
  694. package/docs/zh-CN/tts.md +0 -373
  695. package/docs/zh-CN/vps.md +0 -47
  696. package/docs/zh-CN/web/control-ui.md +0 -190
  697. package/docs/zh-CN/web/dashboard.md +0 -53
  698. package/docs/zh-CN/web/index.md +0 -118
  699. package/docs/zh-CN/web/tui.md +0 -166
  700. package/docs/zh-CN/web/webchat.md +0 -56
  701. package/extensions/imessage/index.ts +0 -17
  702. package/extensions/imessage/node_modules/.bin/symi +0 -21
  703. package/extensions/imessage/package.json +0 -15
  704. package/extensions/imessage/src/channel.outbound.test.ts +0 -66
  705. package/extensions/imessage/src/channel.ts +0 -298
  706. package/extensions/imessage/src/runtime.ts +0 -14
  707. package/extensions/imessage/symi.plugin.json +0 -9
  708. package/extensions/line/index.ts +0 -19
  709. package/extensions/line/node_modules/.bin/symi +0 -21
  710. package/extensions/line/package.json +0 -30
  711. package/extensions/line/src/card-command.ts +0 -344
  712. package/extensions/line/src/channel.logout.test.ts +0 -133
  713. package/extensions/line/src/channel.sendPayload.test.ts +0 -312
  714. package/extensions/line/src/channel.startup.test.ts +0 -133
  715. package/extensions/line/src/channel.ts +0 -801
  716. package/extensions/line/src/runtime.ts +0 -14
  717. package/extensions/line/symi.plugin.json +0 -9
  718. package/extensions/signal/index.ts +0 -17
  719. package/extensions/signal/node_modules/.bin/symi +0 -21
  720. package/extensions/signal/package.json +0 -15
  721. package/extensions/signal/src/channel.ts +0 -302
  722. package/extensions/signal/src/runtime.ts +0 -14
  723. package/extensions/signal/symi.plugin.json +0 -9
  724. package/extensions/telegram/index.ts +0 -17
  725. package/extensions/telegram/node_modules/.bin/symi +0 -21
  726. package/extensions/telegram/package.json +0 -15
  727. package/extensions/telegram/src/channel.test.ts +0 -125
  728. package/extensions/telegram/src/channel.ts +0 -560
  729. package/extensions/telegram/src/runtime.ts +0 -14
  730. package/extensions/telegram/symi.plugin.json +0 -9
  731. package/extensions/whatsapp/index.ts +0 -17
  732. package/extensions/whatsapp/node_modules/.bin/symi +0 -21
  733. package/extensions/whatsapp/package.json +0 -15
  734. package/extensions/whatsapp/src/channel.ts +0 -465
  735. package/extensions/whatsapp/src/resolve-target.test.ts +0 -170
  736. package/extensions/whatsapp/src/runtime.ts +0 -14
  737. package/extensions/whatsapp/symi.plugin.json +0 -9
@@ -1,73 +0,0 @@
1
- ---
2
- summary: "Gateway runtime on macOS (external launchd service)"
3
- read_when:
4
- - Packaging Symi.app
5
- - Debugging the macOS gateway launchd service
6
- - Installing the gateway CLI for macOS
7
- title: "Gateway on macOS"
8
- ---
9
-
10
- # Gateway on macOS (external launchd)
11
-
12
- Symi.app no longer bundles Node/Bun or the Gateway runtime. The macOS app
13
- expects an **external** `symi` CLI install, does not spawn the Gateway as a
14
- child process, and manages a per‑user launchd service to keep the Gateway
15
- running (or attaches to an existing local Gateway if one is already running).
16
-
17
- ## Install the CLI (required for local mode)
18
-
19
- You need Node 22+ on the Mac, then install `symi` globally:
20
-
21
- ```bash
22
- npm install -g @symerian/symi@<version>
23
- ```
24
-
25
- The macOS app’s **Install CLI** button runs the same flow via npm/pnpm (bun not recommended for Gateway runtime).
26
-
27
- ## Launchd (Gateway as LaunchAgent)
28
-
29
- Label:
30
-
31
- - `bot.molt.gateway` (or `bot.molt.<profile>`; legacy `com.symi.*` may remain)
32
-
33
- Plist location (per‑user):
34
-
35
- - `~/Library/LaunchAgents/bot.molt.gateway.plist`
36
- (or `~/Library/LaunchAgents/bot.molt.<profile>.plist`)
37
-
38
- Manager:
39
-
40
- - The macOS app owns LaunchAgent install/update in Local mode.
41
- - The CLI can also install it: `symi gateway install`.
42
-
43
- Behavior:
44
-
45
- - “Symi Active” enables/disables the LaunchAgent.
46
- - App quit does **not** stop the gateway (launchd keeps it alive).
47
- - If a Gateway is already running on the configured port, the app attaches to
48
- it instead of starting a new one.
49
-
50
- Logging:
51
-
52
- - launchd stdout/err: `/tmp/symi/symi-gateway.log`
53
-
54
- ## Version compatibility
55
-
56
- The macOS app checks the gateway version against its own version. If they’re
57
- incompatible, update the global CLI to match the app version.
58
-
59
- ## Smoke check
60
-
61
- ```bash
62
- symi --version
63
-
64
- SYMI_SKIP_CHANNELS=1 \
65
- SYMI_SKIP_CANVAS_HOST=1 \
66
- symi gateway --port 18999 --bind loopback
67
- ```
68
-
69
- Then:
70
-
71
- ```bash
72
- symi gateway call health --url ws://127.0.0.1:18999 --timeout 3000
73
- ```
@@ -1,125 +0,0 @@
1
- ---
2
- summary: "Agent-controlled Canvas panel embedded via WKWebView + custom URL scheme"
3
- read_when:
4
- - Implementing the macOS Canvas panel
5
- - Adding agent controls for visual workspace
6
- - Debugging WKWebView canvas loads
7
- title: "Canvas"
8
- ---
9
-
10
- # Canvas (macOS app)
11
-
12
- The macOS app embeds an agent‑controlled **Canvas panel** using `WKWebView`. It
13
- is a lightweight visual workspace for HTML/CSS/JS, A2UI, and small interactive
14
- UI surfaces.
15
-
16
- ## Where Canvas lives
17
-
18
- Canvas state is stored under Application Support:
19
-
20
- - `~/Library/Application Support/Symi/canvas/<session>/...`
21
-
22
- The Canvas panel serves those files via a **custom URL scheme**:
23
-
24
- - `symi-canvas://<session>/<path>`
25
-
26
- Examples:
27
-
28
- - `symi-canvas://main/` → `<canvasRoot>/main/index.html`
29
- - `symi-canvas://main/assets/app.css` → `<canvasRoot>/main/assets/app.css`
30
- - `symi-canvas://main/widgets/todo/` → `<canvasRoot>/main/widgets/todo/index.html`
31
-
32
- If no `index.html` exists at the root, the app shows a **built‑in scaffold page**.
33
-
34
- ## Panel behavior
35
-
36
- - Borderless, resizable panel anchored near the menu bar (or mouse cursor).
37
- - Remembers size/position per session.
38
- - Auto‑reloads when local canvas files change.
39
- - Only one Canvas panel is visible at a time (session is switched as needed).
40
-
41
- Canvas can be disabled from Settings → **Allow Canvas**. When disabled, canvas
42
- node commands return `CANVAS_DISABLED`.
43
-
44
- ## Agent API surface
45
-
46
- Canvas is exposed via the **Gateway WebSocket**, so the agent can:
47
-
48
- - show/hide the panel
49
- - navigate to a path or URL
50
- - evaluate JavaScript
51
- - capture a snapshot image
52
-
53
- CLI examples:
54
-
55
- ```bash
56
- symi nodes canvas present --node <id>
57
- symi nodes canvas navigate --node <id> --url "/"
58
- symi nodes canvas eval --node <id> --js "document.title"
59
- symi nodes canvas snapshot --node <id>
60
- ```
61
-
62
- Notes:
63
-
64
- - `canvas.navigate` accepts **local canvas paths**, `http(s)` URLs, and `file://` URLs.
65
- - If you pass `"/"`, the Canvas shows the local scaffold or `index.html`.
66
-
67
- ## A2UI in Canvas
68
-
69
- A2UI is hosted by the Gateway canvas host and rendered inside the Canvas panel.
70
- When the Gateway advertises a Canvas host, the macOS app auto‑navigates to the
71
- A2UI host page on first open.
72
-
73
- Default A2UI host URL:
74
-
75
- ```
76
- http://<gateway-host>:18789/__symi__/a2ui/
77
- ```
78
-
79
- ### A2UI commands (v0.8)
80
-
81
- Canvas currently accepts **A2UI v0.8** server→client messages:
82
-
83
- - `beginRendering`
84
- - `surfaceUpdate`
85
- - `dataModelUpdate`
86
- - `deleteSurface`
87
-
88
- `createSurface` (v0.9) is not supported.
89
-
90
- CLI example:
91
-
92
- ```bash
93
- cat > /tmp/a2ui-v0.8.jsonl <<'EOFA2'
94
- {"surfaceUpdate":{"surfaceId":"main","components":[{"id":"root","component":{"Column":{"children":{"explicitList":["title","content"]}}}},{"id":"title","component":{"Text":{"text":{"literalString":"Canvas (A2UI v0.8)"},"usageHint":"h1"}}},{"id":"content","component":{"Text":{"text":{"literalString":"If you can read this, A2UI push works."},"usageHint":"body"}}}]}}
95
- {"beginRendering":{"surfaceId":"main","root":"root"}}
96
- EOFA2
97
-
98
- symi nodes canvas a2ui push --jsonl /tmp/a2ui-v0.8.jsonl --node <id>
99
- ```
100
-
101
- Quick smoke:
102
-
103
- ```bash
104
- symi nodes canvas a2ui push --node <id> --text "Hello from A2UI"
105
- ```
106
-
107
- ## Triggering agent runs from Canvas
108
-
109
- Canvas can trigger new agent runs via deep links:
110
-
111
- - `symi://agent?...`
112
-
113
- Example (in JS):
114
-
115
- ```js
116
- window.location.href = "symi://agent?message=Review%20this%20design";
117
- ```
118
-
119
- The app prompts for confirmation unless a valid key is provided.
120
-
121
- ## Security notes
122
-
123
- - Canvas scheme blocks directory traversal; files must live under the session root.
124
- - Local Canvas content uses a custom scheme (no loopback server required).
125
- - External `http(s)` URLs are allowed only when explicitly navigated.
@@ -1,69 +0,0 @@
1
- ---
2
- summary: "Gateway lifecycle on macOS (launchd)"
3
- read_when:
4
- - Integrating the mac app with the gateway lifecycle
5
- title: "Gateway Lifecycle"
6
- ---
7
-
8
- # Gateway lifecycle on macOS
9
-
10
- The macOS app **manages the Gateway via launchd** by default and does not spawn
11
- the Gateway as a child process. It first tries to attach to an already‑running
12
- Gateway on the configured port; if none is reachable, it enables the launchd
13
- service via the external `symi` CLI (no embedded runtime). This gives you
14
- reliable auto‑start at login and restart on crashes.
15
-
16
- Child‑process mode (Gateway spawned directly by the app) is **not in use** today.
17
- If you need tighter coupling to the UI, run the Gateway manually in a terminal.
18
-
19
- ## Default behavior (launchd)
20
-
21
- - The app installs a per‑user LaunchAgent labeled `bot.molt.gateway`
22
- (or `bot.molt.<profile>` when using `--profile`/`SYMI_PROFILE`; legacy `com.symi.*` is supported).
23
- - When Local mode is enabled, the app ensures the LaunchAgent is loaded and
24
- starts the Gateway if needed.
25
- - Logs are written to the launchd gateway log path (visible in Debug Settings).
26
-
27
- Common commands:
28
-
29
- ```bash
30
- launchctl kickstart -k gui/$UID/bot.molt.gateway
31
- launchctl bootout gui/$UID/bot.molt.gateway
32
- ```
33
-
34
- Replace the label with `bot.molt.<profile>` when running a named profile.
35
-
36
- ## Unsigned dev builds
37
-
38
- `scripts/restart-mac.sh --no-sign` is for fast local builds when you don’t have
39
- signing keys. To prevent launchd from pointing at an unsigned relay binary, it:
40
-
41
- - Writes `~/.symi/disable-launchagent`.
42
-
43
- Signed runs of `scripts/restart-mac.sh` clear this override if the marker is
44
- present. To reset manually:
45
-
46
- ```bash
47
- rm ~/.symi/disable-launchagent
48
- ```
49
-
50
- ## Attach-only mode
51
-
52
- To force the macOS app to **never install or manage launchd**, launch it with
53
- `--attach-only` (or `--no-launchd`). This sets `~/.symi/disable-launchagent`,
54
- so the app only attaches to an already running Gateway. You can toggle the same
55
- behavior in Debug Settings.
56
-
57
- ## Remote mode
58
-
59
- Remote mode never starts a local Gateway. The app uses an SSH tunnel to the
60
- remote host and connects over that tunnel.
61
-
62
- ## Why we prefer launchd
63
-
64
- - Auto‑start at login.
65
- - Built‑in restart/KeepAlive semantics.
66
- - Predictable logs and supervision.
67
-
68
- If a true child‑process mode is ever needed again, it should be documented as a
69
- separate, explicit dev‑only mode.
@@ -1,104 +0,0 @@
1
- ---
2
- summary: "Setup guide for developers working on the Symi macOS app"
3
- read_when:
4
- - Setting up the macOS development environment
5
- title: "macOS Dev Setup"
6
- ---
7
-
8
- # macOS Developer Setup
9
-
10
- This guide covers the necessary steps to build and run the Symi macOS application from source.
11
-
12
- ## Prerequisites
13
-
14
- Before building the app, ensure you have the following installed:
15
-
16
- 1. **Xcode 26.2+**: Required for Swift development.
17
- 2. **Node.js 22+ & pnpm**: Required for the gateway, CLI, and packaging scripts.
18
-
19
- ## 1. Install Dependencies
20
-
21
- Install the project-wide dependencies:
22
-
23
- ```bash
24
- pnpm install
25
- ```
26
-
27
- ## 2. Build and Package the App
28
-
29
- To build the macOS app and package it into `dist/Symi.app`, run:
30
-
31
- ```bash
32
- ./scripts/package-mac-app.sh
33
- ```
34
-
35
- If you don't have an Apple Developer ID certificate, the script will automatically use **ad-hoc signing** (`-`).
36
-
37
- For dev run modes, signing flags, and Team ID troubleshooting, see the macOS app README:
38
- [https://github.com/symi/symi/blob/main/apps/macos/README.md](https://github.com/symi/symi/blob/main/apps/macos/README.md)
39
-
40
- > **Note**: Ad-hoc signed apps may trigger security prompts. If the app crashes immediately with "Abort trap 6", see the [Troubleshooting](#troubleshooting) section.
41
-
42
- ## 3. Install the CLI
43
-
44
- The macOS app expects a global `symi` CLI install to manage background tasks.
45
-
46
- **To install it (recommended):**
47
-
48
- 1. Open the Symi app.
49
- 2. Go to the **General** settings tab.
50
- 3. Click **"Install CLI"**.
51
-
52
- Alternatively, install it manually:
53
-
54
- ```bash
55
- npm install -g @symerian/symi@<version>
56
- ```
57
-
58
- ## Troubleshooting
59
-
60
- ### Build Fails: Toolchain or SDK Mismatch
61
-
62
- The macOS app build expects the latest macOS SDK and Swift 6.2 toolchain.
63
-
64
- **System dependencies (required):**
65
-
66
- - **Latest macOS version available in Software Update** (required by Xcode 26.2 SDKs)
67
- - **Xcode 26.2** (Swift 6.2 toolchain)
68
-
69
- **Checks:**
70
-
71
- ```bash
72
- xcodebuild -version
73
- xcrun swift --version
74
- ```
75
-
76
- If versions don’t match, update macOS/Xcode and re-run the build.
77
-
78
- ### App Crashes on Permission Grant
79
-
80
- If the app crashes when you try to allow **Speech Recognition** or **Microphone** access, it may be due to a corrupted TCC cache or signature mismatch.
81
-
82
- **Fix:**
83
-
84
- 1. Reset the TCC permissions:
85
-
86
- ```bash
87
- tccutil reset All bot.molt.mac.debug
88
- ```
89
-
90
- 2. If that fails, change the `BUNDLE_ID` temporarily in [`scripts/package-mac-app.sh`](https://github.com/symi/symi/blob/main/scripts/package-mac-app.sh) to force a "clean slate" from macOS.
91
-
92
- ### Gateway "Starting..." indefinitely
93
-
94
- If the gateway status stays on "Starting...", check if a zombie process is holding the port:
95
-
96
- ```bash
97
- symi gateway status
98
- symi gateway stop
99
-
100
- # If you’re not using a LaunchAgent (dev mode / manual runs), find the listener:
101
- lsof -nP -iTCP:18789 -sTCP:LISTEN
102
- ```
103
-
104
- If a manual run is holding the port, stop that process (Ctrl+C). As a last resort, kill the PID you found above.
@@ -1,34 +0,0 @@
1
- ---
2
- summary: "How the macOS app reports gateway/Baileys health states"
3
- read_when:
4
- - Debugging mac app health indicators
5
- title: "Health Checks"
6
- ---
7
-
8
- # Health Checks on macOS
9
-
10
- How to see whether the linked channel is healthy from the menu bar app.
11
-
12
- ## Menu bar
13
-
14
- - Status dot now reflects Baileys health:
15
- - Green: linked + socket opened recently.
16
- - Orange: connecting/retrying.
17
- - Red: logged out or probe failed.
18
- - Secondary line reads "linked · auth 12m" or shows the failure reason.
19
- - "Run Health Check" menu item triggers an on-demand probe.
20
-
21
- ## Settings
22
-
23
- - General tab gains a Health card showing: linked auth age, session-store path/count, last check time, last error/status code, and buttons for Run Health Check / Reveal Logs.
24
- - Uses a cached snapshot so the UI loads instantly and falls back gracefully when offline.
25
- - **Channels tab** surfaces channel status + controls for WhatsApp/Telegram (login QR, logout, probe, last disconnect/error).
26
-
27
- ## How the probe works
28
-
29
- - App runs `symi health --json` via `ShellExecutor` every ~60s and on demand. The probe loads creds and reports status without sending messages.
30
- - Cache the last good snapshot and the last error separately to avoid flicker; show the timestamp of each.
31
-
32
- ## When in doubt
33
-
34
- - You can still use the CLI flow in [Gateway health](/gateway/health) (`symi status`, `symi status --deep`, `symi health --json`) and tail `/tmp/symi/symi-*.log` for `web-heartbeat` / `web-reconnect`.
@@ -1,31 +0,0 @@
1
- ---
2
- summary: "Menu bar icon states and animations for Symi on macOS"
3
- read_when:
4
- - Changing menu bar icon behavior
5
- title: "Menu Bar Icon"
6
- ---
7
-
8
- # Menu Bar Icon States
9
-
10
- Author: steipete · Updated: 2025-12-06 · Scope: macOS app (`apps/macos`)
11
-
12
- - **Idle:** Normal icon animation (blink, occasional wiggle).
13
- - **Paused:** Status item uses `appearsDisabled`; no motion.
14
- - **Voice trigger (big ears):** Voice wake detector calls `AppState.triggerVoiceEars(ttl: nil)` when the wake word is heard, keeping `earBoostActive=true` while the utterance is captured. Ears scale up (1.9x), get circular ear holes for readability, then drop via `stopVoiceEars()` after 1s of silence. Only fired from the in-app voice pipeline.
15
- - **Working (agent running):** `AppState.isWorking=true` drives a “tail/leg scurry” micro-motion: faster leg wiggle and slight offset while work is in-flight. Currently toggled around WebChat agent runs; add the same toggle around other long tasks when you wire them.
16
-
17
- Wiring points
18
-
19
- - Voice wake: runtime/tester call `AppState.triggerVoiceEars(ttl: nil)` on trigger and `stopVoiceEars()` after 1s of silence to match the capture window.
20
- - Agent activity: set `AppStateStore.shared.setWorking(true/false)` around work spans (already done in WebChat agent call). Keep spans short and reset in `defer` blocks to avoid stuck animations.
21
-
22
- Shapes & sizes
23
-
24
- - Base icon drawn in `CritterIconRenderer.makeIcon(blink:legWiggle:earWiggle:earScale:earHoles:)`.
25
- - Ear scale defaults to `1.0`; voice boost sets `earScale=1.9` and toggles `earHoles=true` without changing overall frame (18×18 pt template image rendered into a 36×36 px Retina backing store).
26
- - Scurry uses leg wiggle up to ~1.0 with a small horizontal jiggle; it’s additive to any existing idle wiggle.
27
-
28
- Behavioral notes
29
-
30
- - No external CLI/broker toggle for ears/working; keep it internal to the app’s own signals to avoid accidental flapping.
31
- - Keep TTLs short (&lt;10s) so the icon returns to baseline quickly if a job hangs.
@@ -1,57 +0,0 @@
1
- ---
2
- summary: "Symi logging: rolling diagnostics file log + unified log privacy flags"
3
- read_when:
4
- - Capturing macOS logs or investigating private data logging
5
- - Debugging voice wake/session lifecycle issues
6
- title: "macOS Logging"
7
- ---
8
-
9
- # Logging (macOS)
10
-
11
- ## Rolling diagnostics file log (Debug pane)
12
-
13
- Symi routes macOS app logs through swift-log (unified logging by default) and can write a local, rotating file log to disk when you need a durable capture.
14
-
15
- - Verbosity: **Debug pane → Logs → App logging → Verbosity**
16
- - Enable: **Debug pane → Logs → App logging → “Write rolling diagnostics log (JSONL)”**
17
- - Location: `~/Library/Logs/Symi/diagnostics.jsonl` (rotates automatically; old files are suffixed with `.1`, `.2`, …)
18
- - Clear: **Debug pane → Logs → App logging → “Clear”**
19
-
20
- Notes:
21
-
22
- - This is **off by default**. Enable only while actively debugging.
23
- - Treat the file as sensitive; don’t share it without review.
24
-
25
- ## Unified logging private data on macOS
26
-
27
- Unified logging redacts most payloads unless a subsystem opts into `privacy -off`. Per Peter's write-up on macOS [logging privacy shenanigans](https://steipete.me/posts/2025/logging-privacy-shenanigans) (2025) this is controlled by a plist in `/Library/Preferences/Logging/Subsystems/` keyed by the subsystem name. Only new log entries pick up the flag, so enable it before reproducing an issue.
28
-
29
- ## Enable for Symi (`bot.molt`)
30
-
31
- - Write the plist to a temp file first, then install it atomically as root:
32
-
33
- ```bash
34
- cat <<'EOF' >/tmp/bot.molt.plist
35
- <?xml version="1.0" encoding="UTF-8"?>
36
- <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
37
- <plist version="1.0">
38
- <dict>
39
- <key>DEFAULT-OPTIONS</key>
40
- <dict>
41
- <key>Enable-Private-Data</key>
42
- <true/>
43
- </dict>
44
- </dict>
45
- </plist>
46
- EOF
47
- sudo install -m 644 -o root -g wheel /tmp/bot.molt.plist /Library/Preferences/Logging/Subsystems/bot.molt.plist
48
- ```
49
-
50
- - No reboot is required; logd notices the file quickly, but only new log lines will include private payloads.
51
- - View the richer output with the existing helper, e.g. `./scripts/symilog.sh --category WebChat --last 5m`.
52
-
53
- ## Disable after debugging
54
-
55
- - Remove the override: `sudo rm /Library/Preferences/Logging/Subsystems/bot.molt.plist`.
56
- - Optionally run `sudo log config --reload` to force logd to drop the override immediately.
57
- - Remember this surface can include phone numbers and message bodies; keep the plist in place only while you actively need the extra detail.
@@ -1,81 +0,0 @@
1
- ---
2
- summary: "Menu bar status logic and what is surfaced to users"
3
- read_when:
4
- - Tweaking mac menu UI or status logic
5
- title: "Menu Bar"
6
- ---
7
-
8
- # Menu Bar Status Logic
9
-
10
- ## What is shown
11
-
12
- - We surface the current agent work state in the menu bar icon and in the first status row of the menu.
13
- - Health status is hidden while work is active; it returns when all sessions are idle.
14
- - The “Nodes” block in the menu lists **devices** only (paired nodes via `node.list`), not client/presence entries.
15
- - A “Usage” section appears under Context when provider usage snapshots are available.
16
-
17
- ## State model
18
-
19
- - Sessions: events arrive with `runId` (per-run) plus `sessionKey` in the payload. The “main” session is the key `main`; if absent, we fall back to the most recently updated session.
20
- - Priority: main always wins. If main is active, its state is shown immediately. If main is idle, the most recently active non‑main session is shown. We do not flip‑flop mid‑activity; we only switch when the current session goes idle or main becomes active.
21
- - Activity kinds:
22
- - `job`: high‑level command execution (`state: started|streaming|done|error`).
23
- - `tool`: `phase: start|result` with `toolName` and `meta/args`.
24
-
25
- ## IconState enum (Swift)
26
-
27
- - `idle`
28
- - `workingMain(ActivityKind)`
29
- - `workingOther(ActivityKind)`
30
- - `overridden(ActivityKind)` (debug override)
31
-
32
- ### ActivityKind → glyph
33
-
34
- - `exec` → 💻
35
- - `read` → 📄
36
- - `write` → ✍️
37
- - `edit` → 📝
38
- - `attach` → 📎
39
- - default → 🛠️
40
-
41
- ### Visual mapping
42
-
43
- - `idle`: normal critter.
44
- - `workingMain`: badge with glyph, full tint, leg “working” animation.
45
- - `workingOther`: badge with glyph, muted tint, no scurry.
46
- - `overridden`: uses the chosen glyph/tint regardless of activity.
47
-
48
- ## Status row text (menu)
49
-
50
- - While work is active: `<Session role> · <activity label>`
51
- - Examples: `Main · exec: pnpm test`, `Other · read: apps/macos/Sources/Symi/AppState.swift`.
52
- - When idle: falls back to the health summary.
53
-
54
- ## Event ingestion
55
-
56
- - Source: control‑channel `agent` events (`ControlChannel.handleAgentEvent`).
57
- - Parsed fields:
58
- - `stream: "job"` with `data.state` for start/stop.
59
- - `stream: "tool"` with `data.phase`, `name`, optional `meta`/`args`.
60
- - Labels:
61
- - `exec`: first line of `args.command`.
62
- - `read`/`write`: shortened path.
63
- - `edit`: path plus inferred change kind from `meta`/diff counts.
64
- - fallback: tool name.
65
-
66
- ## Debug override
67
-
68
- - Settings ▸ Debug ▸ “Icon override” picker:
69
- - `System (auto)` (default)
70
- - `Working: main` (per tool kind)
71
- - `Working: other` (per tool kind)
72
- - `Idle`
73
- - Stored via `@AppStorage("iconOverride")`; mapped to `IconState.overridden`.
74
-
75
- ## Testing checklist
76
-
77
- - Trigger main session job: verify icon switches immediately and status row shows main label.
78
- - Trigger non‑main session job while main idle: icon/status shows non‑main; stays stable until it finishes.
79
- - Start main while other active: icon flips to main instantly.
80
- - Rapid tool bursts: ensure badge does not flicker (TTL grace on tool results).
81
- - Health row reappears once all sessions idle.
@@ -1,65 +0,0 @@
1
- ---
2
- summary: "PeekabooBridge integration for macOS UI automation"
3
- read_when:
4
- - Hosting PeekabooBridge in Symi.app
5
- - Integrating Peekaboo via Swift Package Manager
6
- - Changing PeekabooBridge protocol/paths
7
- title: "Peekaboo Bridge"
8
- ---
9
-
10
- # Peekaboo Bridge (macOS UI automation)
11
-
12
- Symi can host **PeekabooBridge** as a local, permission‑aware UI automation
13
- broker. This lets the `peekaboo` CLI drive UI automation while reusing the
14
- macOS app’s TCC permissions.
15
-
16
- ## What this is (and isn’t)
17
-
18
- - **Host**: Symi.app can act as a PeekabooBridge host.
19
- - **Client**: use the `peekaboo` CLI (no separate `symi ui ...` surface).
20
- - **UI**: visual overlays stay in Peekaboo.app; Symi is a thin broker host.
21
-
22
- ## Enable the bridge
23
-
24
- In the macOS app:
25
-
26
- - Settings → **Enable Peekaboo Bridge**
27
-
28
- When enabled, Symi starts a local UNIX socket server. If disabled, the host
29
- is stopped and `peekaboo` will fall back to other available hosts.
30
-
31
- ## Client discovery order
32
-
33
- Peekaboo clients typically try hosts in this order:
34
-
35
- 1. Peekaboo.app (full UX)
36
- 2. Claude.app (if installed)
37
- 3. Symi.app (thin broker)
38
-
39
- Use `peekaboo bridge status --verbose` to see which host is active and which
40
- socket path is in use. You can override with:
41
-
42
- ```bash
43
- export PEEKABOO_BRIDGE_SOCKET=/path/to/bridge.sock
44
- ```
45
-
46
- ## Security & permissions
47
-
48
- - The bridge validates **caller code signatures**; an allowlist of TeamIDs is
49
- enforced (Peekaboo host TeamID + Symi app TeamID).
50
- - Requests time out after ~10 seconds.
51
- - If required permissions are missing, the bridge returns a clear error message
52
- rather than launching System Settings.
53
-
54
- ## Snapshot behavior (automation)
55
-
56
- Snapshots are stored in memory and expire automatically after a short window.
57
- If you need longer retention, re‑capture from the client.
58
-
59
- ## Troubleshooting
60
-
61
- - If `peekaboo` reports “bridge client is not authorized”, ensure the client is
62
- properly signed or run the host with `PEEKABOO_ALLOW_UNSIGNED_SOCKET_CLIENTS=1`
63
- in **debug** mode only.
64
- - If no hosts are found, open one of the host apps (Peekaboo.app or Symi.app)
65
- and confirm permissions are granted.