@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,148 +0,0 @@
1
- ---
2
- summary: "Agent loop lifecycle, streams, and wait semantics"
3
- read_when:
4
- - You need an exact walkthrough of the agent loop or lifecycle events
5
- title: "Agent Loop"
6
- ---
7
-
8
- # Agent Loop (Symi)
9
-
10
- An agentic loop is the full “real” run of an agent: intake → context assembly → model inference →
11
- tool execution → streaming replies → persistence. It’s the authoritative path that turns a message
12
- into actions and a final reply, while keeping session state consistent.
13
-
14
- In Symi, a loop is a single, serialized run per session that emits lifecycle and stream events
15
- as the model thinks, calls tools, and streams output. This doc explains how that authentic loop is
16
- wired end-to-end.
17
-
18
- ## Entry points
19
-
20
- - Gateway RPC: `agent` and `agent.wait`.
21
- - CLI: `agent` command.
22
-
23
- ## How it works (high-level)
24
-
25
- 1. `agent` RPC validates params, resolves session (sessionKey/sessionId), persists session metadata, returns `{ runId, acceptedAt }` immediately.
26
- 2. `agentCommand` runs the agent:
27
- - resolves model + thinking/verbose defaults
28
- - loads skills snapshot
29
- - calls `runEmbeddedPiAgent` (pi-agent-core runtime)
30
- - emits **lifecycle end/error** if the embedded loop does not emit one
31
- 3. `runEmbeddedPiAgent`:
32
- - serializes runs via per-session + global queues
33
- - resolves model + auth profile and builds the pi session
34
- - subscribes to pi events and streams assistant/tool deltas
35
- - enforces timeout -> aborts run if exceeded
36
- - returns payloads + usage metadata
37
- 4. `subscribeEmbeddedPiSession` bridges pi-agent-core events to Symi `agent` stream:
38
- - tool events => `stream: "tool"`
39
- - assistant deltas => `stream: "assistant"`
40
- - lifecycle events => `stream: "lifecycle"` (`phase: "start" | "end" | "error"`)
41
- 5. `agent.wait` uses `waitForAgentJob`:
42
- - waits for **lifecycle end/error** for `runId`
43
- - returns `{ status: ok|error|timeout, startedAt, endedAt, error? }`
44
-
45
- ## Queueing + concurrency
46
-
47
- - Runs are serialized per session key (session lane) and optionally through a global lane.
48
- - This prevents tool/session races and keeps session history consistent.
49
- - Messaging channels can choose queue modes (collect/steer/followup) that feed this lane system.
50
- See [Command Queue](/concepts/queue).
51
-
52
- ## Session + workspace preparation
53
-
54
- - Workspace is resolved and created; sandboxed runs may redirect to a sandbox workspace root.
55
- - Skills are loaded (or reused from a snapshot) and injected into env and prompt.
56
- - Bootstrap/context files are resolved and injected into the system prompt report.
57
- - A session write lock is acquired; `SessionManager` is opened and prepared before streaming.
58
-
59
- ## Prompt assembly + system prompt
60
-
61
- - System prompt is built from Symi’s base prompt, skills prompt, bootstrap context, and per-run overrides.
62
- - Model-specific limits and compaction reserve tokens are enforced.
63
- - See [System prompt](/concepts/system-prompt) for what the model sees.
64
-
65
- ## Hook points (where you can intercept)
66
-
67
- Symi has two hook systems:
68
-
69
- - **Internal hooks** (Gateway hooks): event-driven scripts for commands and lifecycle events.
70
- - **Plugin hooks**: extension points inside the agent/tool lifecycle and gateway pipeline.
71
-
72
- ### Internal hooks (Gateway hooks)
73
-
74
- - **`agent:bootstrap`**: runs while building bootstrap files before the system prompt is finalized.
75
- Use this to add/remove bootstrap context files.
76
- - **Command hooks**: `/new`, `/reset`, `/stop`, and other command events (see Hooks doc).
77
-
78
- See [Hooks](/automation/hooks) for setup and examples.
79
-
80
- ### Plugin hooks (agent + gateway lifecycle)
81
-
82
- These run inside the agent loop or gateway pipeline:
83
-
84
- - **`before_model_resolve`**: runs pre-session (no `messages`) to deterministically override provider/model before model resolution.
85
- - **`before_prompt_build`**: runs after session load (with `messages`) to inject `prependContext`/`systemPrompt` before prompt submission.
86
- - **`before_agent_start`**: legacy compatibility hook that may run in either phase; prefer the explicit hooks above.
87
- - **`agent_end`**: inspect the final message list and run metadata after completion.
88
- - **`before_compaction` / `after_compaction`**: observe or annotate compaction cycles.
89
- - **`before_tool_call` / `after_tool_call`**: intercept tool params/results.
90
- - **`tool_result_persist`**: synchronously transform tool results before they are written to the session transcript.
91
- - **`message_received` / `message_sending` / `message_sent`**: inbound + outbound message hooks.
92
- - **`session_start` / `session_end`**: session lifecycle boundaries.
93
- - **`gateway_start` / `gateway_stop`**: gateway lifecycle events.
94
-
95
- See [Plugins](/tools/plugin#plugin-hooks) for the hook API and registration details.
96
-
97
- ## Streaming + partial replies
98
-
99
- - Assistant deltas are streamed from pi-agent-core and emitted as `assistant` events.
100
- - Block streaming can emit partial replies either on `text_end` or `message_end`.
101
- - Reasoning streaming can be emitted as a separate stream or as block replies.
102
- - See [Streaming](/concepts/streaming) for chunking and block reply behavior.
103
-
104
- ## Tool execution + messaging tools
105
-
106
- - Tool start/update/end events are emitted on the `tool` stream.
107
- - Tool results are sanitized for size and image payloads before logging/emitting.
108
- - Messaging tool sends are tracked to suppress duplicate assistant confirmations.
109
-
110
- ## Reply shaping + suppression
111
-
112
- - Final payloads are assembled from:
113
- - assistant text (and optional reasoning)
114
- - inline tool summaries (when verbose + allowed)
115
- - assistant error text when the model errors
116
- - `NO_REPLY` is treated as a silent token and filtered from outgoing payloads.
117
- - Messaging tool duplicates are removed from the final payload list.
118
- - If no renderable payloads remain and a tool errored, a fallback tool error reply is emitted
119
- (unless a messaging tool already sent a user-visible reply).
120
-
121
- ## Compaction + retries
122
-
123
- - Auto-compaction emits `compaction` stream events and can trigger a retry.
124
- - On retry, in-memory buffers and tool summaries are reset to avoid duplicate output.
125
- - See [Compaction](/concepts/compaction) for the compaction pipeline.
126
-
127
- ## Event streams (today)
128
-
129
- - `lifecycle`: emitted by `subscribeEmbeddedPiSession` (and as a fallback by `agentCommand`)
130
- - `assistant`: streamed deltas from pi-agent-core
131
- - `tool`: streamed tool events from pi-agent-core
132
-
133
- ## Chat channel handling
134
-
135
- - Assistant deltas are buffered into chat `delta` messages.
136
- - A chat `final` is emitted on **lifecycle end/error**.
137
-
138
- ## Timeouts
139
-
140
- - `agent.wait` default: 30s (just the wait). `timeoutMs` param overrides.
141
- - Agent runtime: `agents.defaults.timeoutSeconds` default 600s; enforced in `runEmbeddedPiAgent` abort timer.
142
-
143
- ## Where things can end early
144
-
145
- - Agent timeout (abort)
146
- - AbortSignal (cancel)
147
- - Gateway disconnect or RPC timeout
148
- - `agent.wait` timeout (wait-only, does not stop agent)
@@ -1,234 +0,0 @@
1
- ---
2
- summary: "Agent workspace: location, layout, and backup strategy"
3
- read_when:
4
- - You need to explain the agent workspace or its file layout
5
- - You want to back up or migrate an agent workspace
6
- title: "Agent Workspace"
7
- ---
8
-
9
- # Agent workspace
10
-
11
- The workspace is the agent's home. It is the only working directory used for
12
- file tools and for workspace context. Keep it private and treat it as memory.
13
-
14
- This is separate from `~/.symi/`, which stores config, credentials, and
15
- sessions.
16
-
17
- **Important:** the workspace is the **default cwd**, not a hard sandbox. Tools
18
- resolve relative paths against the workspace, but absolute paths can still reach
19
- elsewhere on the host unless sandboxing is enabled. If you need isolation, use
20
- [`agents.defaults.sandbox`](/gateway/sandboxing) (and/or per‑agent sandbox config).
21
- When sandboxing is enabled and `workspaceAccess` is not `"rw"`, tools operate
22
- inside a sandbox workspace under `~/.symi/sandboxes`, not your host workspace.
23
-
24
- ## Default location
25
-
26
- - Default: `~/.symi/workspace`
27
- - If `SYMI_PROFILE` is set and not `"default"`, the default becomes
28
- `~/.symi/workspace-<profile>`.
29
- - Override in `~/.symi/symi.json`:
30
-
31
- ```json5
32
- {
33
- agent: {
34
- workspace: "~/.symi/workspace",
35
- },
36
- }
37
- ```
38
-
39
- `symi onboard`, `symi configure`, or `symi setup` will create the
40
- workspace and seed the bootstrap files if they are missing.
41
-
42
- If you already manage the workspace files yourself, you can disable bootstrap
43
- file creation:
44
-
45
- ```json5
46
- { agent: { skipBootstrap: true } }
47
- ```
48
-
49
- ## Extra workspace folders
50
-
51
- Older installs may have created `~/symi`. Keeping multiple workspace
52
- directories around can cause confusing auth or state drift, because only one
53
- workspace is active at a time.
54
-
55
- **Recommendation:** keep a single active workspace. If you no longer use the
56
- extra folders, archive or move them to Trash (for example `trash ~/symi`).
57
- If you intentionally keep multiple workspaces, make sure
58
- `agents.defaults.workspace` points to the active one.
59
-
60
- `symi doctor` warns when it detects extra workspace directories.
61
-
62
- ## Workspace file map (what each file means)
63
-
64
- These are the standard files Symi expects inside the workspace:
65
-
66
- - `AGENTS.md`
67
- - Operating instructions for the agent and how it should use memory.
68
- - Loaded at the start of every session.
69
- - Good place for rules, priorities, and "how to behave" details.
70
-
71
- - `SYMICORE.md`
72
- - Persona, tone, and boundaries.
73
- - Loaded every session.
74
-
75
- - `USER.md`
76
- - Who the user is and how to address them.
77
- - Loaded every session.
78
-
79
- - `IDENTITY.md`
80
- - The agent's name, vibe, and emoji.
81
- - Created/updated during the bootstrap ritual.
82
-
83
- - `TOOLS.md`
84
- - Notes about your local tools and conventions.
85
- - Does not control tool availability; it is only guidance.
86
-
87
- - `SYMIPULSE.md`
88
- - Optional tiny checklist for heartbeat runs.
89
- - Keep it short to avoid token burn.
90
-
91
- - `BOOT.md`
92
- - Optional startup checklist executed on gateway restart when internal hooks are enabled.
93
- - Keep it short; use the message tool for outbound sends.
94
-
95
- - `BOOTSTRAP.md`
96
- - One-time first-run ritual.
97
- - Only created for a brand-new workspace.
98
- - Delete it after the ritual is complete.
99
-
100
- - `memory/YYYY-MM-DD.md`
101
- - Daily memory log (one file per day).
102
- - Recommended to read today + yesterday on session start.
103
-
104
- - `MEMORY.md` (optional)
105
- - Curated long-term memory.
106
- - Only load in the main, private session (not shared/group contexts).
107
-
108
- See [Memory](/concepts/memory) for the workflow and automatic memory flush.
109
-
110
- - `skills/` (optional)
111
- - Workspace-specific skills.
112
- - Overrides managed/bundled skills when names collide.
113
-
114
- - `canvas/` (optional)
115
- - Canvas UI files for node displays (for example `canvas/index.html`).
116
-
117
- If any bootstrap file is missing, Symi injects a "missing file" marker into
118
- the session and continues. Large bootstrap files are truncated when injected;
119
- adjust limits with `agents.defaults.bootstrapMaxChars` (default: 20000) and
120
- `agents.defaults.bootstrapTotalMaxChars` (default: 150000).
121
- `symi setup` can recreate missing defaults without overwriting existing
122
- files.
123
-
124
- ## What is NOT in the workspace
125
-
126
- These live under `~/.symi/` and should NOT be committed to the workspace repo:
127
-
128
- - `~/.symi/symi.json` (config)
129
- - `~/.symi/credentials/` (OAuth tokens, API keys)
130
- - `~/.symi/agents/<agentId>/sessions/` (session transcripts + metadata)
131
- - `~/.symi/skills/` (managed skills)
132
-
133
- If you need to migrate sessions or config, copy them separately and keep them
134
- out of version control.
135
-
136
- ## Git backup (recommended, private)
137
-
138
- Treat the workspace as private memory. Put it in a **private** git repo so it is
139
- backed up and recoverable.
140
-
141
- Run these steps on the machine where the Gateway runs (that is where the
142
- workspace lives).
143
-
144
- ### 1) Initialize the repo
145
-
146
- If git is installed, brand-new workspaces are initialized automatically. If this
147
- workspace is not already a repo, run:
148
-
149
- ```bash
150
- cd ~/.symi/workspace
151
- git init
152
- git add AGENTS.md SYMICORE.md TOOLS.md IDENTITY.md USER.md SYMIPULSE.md memory/
153
- git commit -m "Add agent workspace"
154
- ```
155
-
156
- ### 2) Add a private remote (beginner-friendly options)
157
-
158
- Option A: GitHub web UI
159
-
160
- 1. Create a new **private** repository on GitHub.
161
- 2. Do not initialize with a README (avoids merge conflicts).
162
- 3. Copy the HTTPS remote URL.
163
- 4. Add the remote and push:
164
-
165
- ```bash
166
- git branch -M main
167
- git remote add origin <https-url>
168
- git push -u origin main
169
- ```
170
-
171
- Option B: GitHub CLI (`gh`)
172
-
173
- ```bash
174
- gh auth login
175
- gh repo create symi-workspace --private --source . --remote origin --push
176
- ```
177
-
178
- Option C: GitLab web UI
179
-
180
- 1. Create a new **private** repository on GitLab.
181
- 2. Do not initialize with a README (avoids merge conflicts).
182
- 3. Copy the HTTPS remote URL.
183
- 4. Add the remote and push:
184
-
185
- ```bash
186
- git branch -M main
187
- git remote add origin <https-url>
188
- git push -u origin main
189
- ```
190
-
191
- ### 3) Ongoing updates
192
-
193
- ```bash
194
- git status
195
- git add .
196
- git commit -m "Update memory"
197
- git push
198
- ```
199
-
200
- ## Do not commit secrets
201
-
202
- Even in a private repo, avoid storing secrets in the workspace:
203
-
204
- - API keys, OAuth tokens, passwords, or private credentials.
205
- - Anything under `~/.symi/`.
206
- - Raw dumps of chats or sensitive attachments.
207
-
208
- If you must store sensitive references, use placeholders and keep the real
209
- secret elsewhere (password manager, environment variables, or `~/.symi/`).
210
-
211
- Suggested `.gitignore` starter:
212
-
213
- ```gitignore
214
- .DS_Store
215
- .env
216
- **/*.key
217
- **/*.pem
218
- **/secrets*
219
- ```
220
-
221
- ## Moving the workspace to a new machine
222
-
223
- 1. Clone the repo to the desired path (default `~/.symi/workspace`).
224
- 2. Set `agents.defaults.workspace` to that path in `~/.symi/symi.json`.
225
- 3. Run `symi setup --workspace <path>` to seed any missing files.
226
- 4. If you need sessions, copy `~/.symi/agents/<agentId>/sessions/` from the
227
- old machine separately.
228
-
229
- ## Advanced notes
230
-
231
- - Multi-agent routing can use different workspaces per agent. See
232
- [Channel routing](/channels/channel-routing) for routing configuration.
233
- - If `agents.defaults.sandbox` is enabled, non-main sessions can use per-session sandbox
234
- workspaces under `agents.defaults.sandbox.workspaceRoot`.
@@ -1,123 +0,0 @@
1
- ---
2
- summary: "Agent runtime (embedded pi-mono), workspace contract, and session bootstrap"
3
- read_when:
4
- - Changing agent runtime, workspace bootstrap, or session behavior
5
- title: "Agent Runtime"
6
- ---
7
-
8
- # Agent Runtime 🤖
9
-
10
- Symi runs a single embedded agent runtime derived from **pi-mono**.
11
-
12
- ## Workspace (required)
13
-
14
- Symi uses a single agent workspace directory (`agents.defaults.workspace`) as the agent’s **only** working directory (`cwd`) for tools and context.
15
-
16
- Recommended: use `symi setup` to create `~/.symi/symi.json` if missing and initialize the workspace files.
17
-
18
- Full workspace layout + backup guide: [Agent workspace](/concepts/agent-workspace)
19
-
20
- If `agents.defaults.sandbox` is enabled, non-main sessions can override this with
21
- per-session workspaces under `agents.defaults.sandbox.workspaceRoot` (see
22
- [Gateway configuration](/gateway/configuration)).
23
-
24
- ## Bootstrap files (injected)
25
-
26
- Inside `agents.defaults.workspace`, Symi expects these user-editable files:
27
-
28
- - `AGENTS.md` — operating instructions + “memory”
29
- - `SYMICORE.md` — persona, boundaries, tone
30
- - `TOOLS.md` — user-maintained tool notes (e.g. `imsg`, `sag`, conventions)
31
- - `BOOTSTRAP.md` — one-time first-run ritual (deleted after completion)
32
- - `IDENTITY.md` — agent name/vibe/emoji
33
- - `USER.md` — user profile + preferred address
34
-
35
- On the first turn of a new session, Symi injects the contents of these files directly into the agent context.
36
-
37
- Blank files are skipped. Large files are trimmed and truncated with a marker so prompts stay lean (read the file for full content).
38
-
39
- If a file is missing, Symi injects a single “missing file” marker line (and `symi setup` will create a safe default template).
40
-
41
- `BOOTSTRAP.md` is only created for a **brand new workspace** (no other bootstrap files present). If you delete it after completing the ritual, it should not be recreated on later restarts.
42
-
43
- To disable bootstrap file creation entirely (for pre-seeded workspaces), set:
44
-
45
- ```json5
46
- { agent: { skipBootstrap: true } }
47
- ```
48
-
49
- ## Built-in tools
50
-
51
- Core tools (read/exec/edit/write and related system tools) are always available,
52
- subject to tool policy. `apply_patch` is optional and gated by
53
- `tools.exec.applyPatch`. `TOOLS.md` does **not** control which tools exist; it’s
54
- guidance for how _you_ want them used.
55
-
56
- ## Skills
57
-
58
- Symi loads skills from three locations (workspace wins on name conflict):
59
-
60
- - Bundled (shipped with the install)
61
- - Managed/local: `~/.symi/skills`
62
- - Workspace: `<workspace>/skills`
63
-
64
- Skills can be gated by config/env (see `skills` in [Gateway configuration](/gateway/configuration)).
65
-
66
- ## pi-mono integration
67
-
68
- Symi reuses pieces of the pi-mono codebase (models/tools), but **session management, discovery, and tool wiring are Symi-owned**.
69
-
70
- - No pi-coding agent runtime.
71
- - No `~/.pi/agent` or `<workspace>/.pi` settings are consulted.
72
-
73
- ## Sessions
74
-
75
- Session transcripts are stored as JSONL at:
76
-
77
- - `~/.symi/agents/<agentId>/sessions/<SessionId>.jsonl`
78
-
79
- The session ID is stable and chosen by Symi.
80
- Legacy Pi/Tau session folders are **not** read.
81
-
82
- ## Steering while streaming
83
-
84
- When queue mode is `steer`, inbound messages are injected into the current run.
85
- The queue is checked **after each tool call**; if a queued message is present,
86
- remaining tool calls from the current assistant message are skipped (error tool
87
- results with "Skipped due to queued user message."), then the queued user
88
- message is injected before the next assistant response.
89
-
90
- When queue mode is `followup` or `collect`, inbound messages are held until the
91
- current turn ends, then a new agent turn starts with the queued payloads. See
92
- [Queue](/concepts/queue) for mode + debounce/cap behavior.
93
-
94
- Block streaming sends completed assistant blocks as soon as they finish; it is
95
- **off by default** (`agents.defaults.blockStreamingDefault: "off"`).
96
- Tune the boundary via `agents.defaults.blockStreamingBreak` (`text_end` vs `message_end`; defaults to text_end).
97
- Control soft block chunking with `agents.defaults.blockStreamingChunk` (defaults to
98
- 800–1200 chars; prefers paragraph breaks, then newlines; sentences last).
99
- Coalesce streamed chunks with `agents.defaults.blockStreamingCoalesce` to reduce
100
- single-line spam (idle-based merging before send). Non-Telegram channels require
101
- explicit `*.blockStreaming: true` to enable block replies.
102
- Verbose tool summaries are emitted at tool start (no debounce); Control UI
103
- streams tool output via agent events when available.
104
- More details: [Streaming + chunking](/concepts/streaming).
105
-
106
- ## Model refs
107
-
108
- Model refs in config (for example `agents.defaults.model` and `agents.defaults.models`) are parsed by splitting on the **first** `/`.
109
-
110
- - Use `provider/model` when configuring models.
111
- - If the model ID itself contains `/` (OpenRouter-style), include the provider prefix (example: `openrouter/moonshotai/kimi-k2`).
112
- - If you omit the provider, Symi treats the input as an alias or a model for the **default provider** (only works when there is no `/` in the model ID).
113
-
114
- ## Configuration (minimal)
115
-
116
- At minimum, set:
117
-
118
- - `agents.defaults.workspace`
119
- - `channels.whatsapp.allowFrom` (strongly recommended)
120
-
121
- ---
122
-
123
- _Next: [Group Chats](/channels/group-messages)_ 🦞
@@ -1,135 +0,0 @@
1
- ---
2
- summary: "WebSocket gateway architecture, components, and client flows"
3
- read_when:
4
- - Working on gateway protocol, clients, or transports
5
- title: "Gateway Architecture"
6
- ---
7
-
8
- # Gateway architecture
9
-
10
- Last updated: 2026-01-22
11
-
12
- ## Overview
13
-
14
- - A single long‑lived **Gateway** owns all messaging surfaces (WhatsApp via
15
- - Control-plane clients (macOS app, CLI, web UI, automations) connect to the
16
- Gateway over **WebSocket** on the configured bind host (default
17
- `127.0.0.1:18789`).
18
- - **Nodes** (macOS/iOS/Android/headless) also connect over **WebSocket**, but
19
- declare `role: node` with explicit caps/commands.
20
- - One Gateway per host; it is the only place that opens a WhatsApp session.
21
- - The **canvas host** is served by the Gateway HTTP server under:
22
- - `/__symi__/canvas/` (agent-editable HTML/CSS/JS)
23
- - `/__symi__/a2ui/` (A2UI host)
24
- It uses the same port as the Gateway (default `18789`).
25
-
26
- ## Components and flows
27
-
28
- ### Gateway (daemon)
29
-
30
- - Maintains provider connections.
31
- - Exposes a typed WS API (requests, responses, server‑push events).
32
- - Validates inbound frames against JSON Schema.
33
- - Emits events like `agent`, `chat`, `presence`, `health`, `heartbeat`, `cron`.
34
-
35
- ### Clients (mac app / CLI / web admin)
36
-
37
- - One WS connection per client.
38
- - Send requests (`health`, `status`, `send`, `agent`, `system-presence`).
39
- - Subscribe to events (`tick`, `agent`, `presence`, `shutdown`).
40
-
41
- ### Nodes (macOS / iOS / Android / headless)
42
-
43
- - Connect to the **same WS server** with `role: node`.
44
- - Provide a device identity in `connect`; pairing is **device‑based** (role `node`) and
45
- approval lives in the device pairing store.
46
- - Expose commands like `canvas.*`, `camera.*`, `screen.record`, `location.get`.
47
-
48
- Protocol details:
49
-
50
- - [Gateway protocol](/gateway/protocol)
51
-
52
- ### WebChat
53
-
54
- - Static UI that uses the Gateway WS API for chat history and sends.
55
- - In remote setups, connects through the same SSH/Tailscale tunnel as other
56
- clients.
57
-
58
- ## Connection lifecycle (single client)
59
-
60
- ```mermaid
61
- sequenceDiagram
62
- participant Client
63
- participant Gateway
64
-
65
- Client->>Gateway: req:connect
66
- Gateway-->>Client: res (ok)
67
- Note right of Gateway: or res error + close
68
- Note left of Client: payload=hello-ok<br>snapshot: presence + health
69
-
70
- Gateway-->>Client: event:presence
71
- Gateway-->>Client: event:tick
72
-
73
- Client->>Gateway: req:agent
74
- Gateway-->>Client: res:agent<br>ack {runId, status:"accepted"}
75
- Gateway-->>Client: event:agent<br>(streaming)
76
- Gateway-->>Client: res:agent<br>final {runId, status, summary}
77
- ```
78
-
79
- ## Wire protocol (summary)
80
-
81
- - Transport: WebSocket, text frames with JSON payloads.
82
- - First frame **must** be `connect`.
83
- - After handshake:
84
- - Requests: `{type:"req", id, method, params}` → `{type:"res", id, ok, payload|error}`
85
- - Events: `{type:"event", event, payload, seq?, stateVersion?}`
86
- - If `SYMI_GATEWAY_TOKEN` (or `--token`) is set, `connect.params.auth.token`
87
- must match or the socket closes.
88
- - Idempotency keys are required for side‑effecting methods (`send`, `agent`) to
89
- safely retry; the server keeps a short‑lived dedupe cache.
90
- - Nodes must include `role: "node"` plus caps/commands/permissions in `connect`.
91
-
92
- ## Pairing + local trust
93
-
94
- - All WS clients (operators + nodes) include a **device identity** on `connect`.
95
- - New device IDs require pairing approval; the Gateway issues a **device token**
96
- for subsequent connects.
97
- - **Local** connects (loopback or the gateway host’s own tailnet address) can be
98
- auto‑approved to keep same‑host UX smooth.
99
- - **Non‑local** connects must sign the `connect.challenge` nonce and require
100
- explicit approval.
101
- - Gateway auth (`gateway.auth.*`) still applies to **all** connections, local or
102
- remote.
103
-
104
- Details: [Gateway protocol](/gateway/protocol), [Pairing](/channels/pairing),
105
- [Security](/gateway/security).
106
-
107
- ## Protocol typing and codegen
108
-
109
- - TypeBox schemas define the protocol.
110
- - JSON Schema is generated from those schemas.
111
- - Swift models are generated from the JSON Schema.
112
-
113
- ## Remote access
114
-
115
- - Preferred: Tailscale or VPN.
116
- - Alternative: SSH tunnel
117
-
118
- ```bash
119
- ssh -N -L 18789:127.0.0.1:18789 user@host
120
- ```
121
-
122
- - The same handshake + auth token apply over the tunnel.
123
- - TLS + optional pinning can be enabled for WS in remote setups.
124
-
125
- ## Operations snapshot
126
-
127
- - Start: `symi gateway` (foreground, logs to stdout).
128
- - Health: `health` over WS (also included in `hello-ok`).
129
- - Supervision: launchd/systemd for auto‑restart.
130
-
131
- ## Invariants
132
-
133
- - Exactly one Gateway controls a single Baileys session per host.
134
- - Handshake is mandatory; any non‑JSON or non‑connect first frame is a hard close.
135
- - Events are not replayed; clients must refresh on gaps.