@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,600 +0,0 @@
1
- # Symi Threat Model v1.0
2
-
3
- ## MITRE ATLAS Framework
4
-
5
- **Version:** 1.0-draft
6
- **Last Updated:** 2026-02-04
7
- **Methodology:** MITRE ATLAS + Data Flow Diagrams
8
- **Framework:** [MITRE ATLAS](https://atlas.mitre.org/) (Adversarial Threat Landscape for AI Systems)
9
-
10
- ### Framework Attribution
11
-
12
- This threat model is built on [MITRE ATLAS](https://atlas.mitre.org/), the industry-standard framework for documenting adversarial threats to AI/ML systems. ATLAS is maintained by [MITRE](https://www.mitre.org/) in collaboration with the AI security community.
13
-
14
- **Key ATLAS Resources:**
15
-
16
- - [ATLAS Techniques](https://atlas.mitre.org/techniques/)
17
- - [ATLAS Tactics](https://atlas.mitre.org/tactics/)
18
- - [ATLAS Case Studies](https://atlas.mitre.org/studies/)
19
- - [ATLAS GitHub](https://github.com/mitre-atlas/atlas-data)
20
- - [Contributing to ATLAS](https://atlas.mitre.org/resources/contribute)
21
-
22
- ### Contributing to This Threat Model
23
-
24
- This is a living document maintained by the Symi community. See [CONTRIBUTING-THREAT-MODEL.md](./CONTRIBUTING-THREAT-MODEL.md) for guidelines on contributing:
25
-
26
- - Reporting new threats
27
- - Updating existing threats
28
- - Proposing attack chains
29
- - Suggesting mitigations
30
-
31
- ---
32
-
33
- ## 1. Introduction
34
-
35
- ### 1.1 Purpose
36
-
37
- This threat model documents adversarial threats to the Symi AI agent platform and SymiHub skill marketplace, using the MITRE ATLAS framework designed specifically for AI/ML systems.
38
-
39
- ### 1.2 Scope
40
-
41
- | Component | Included | Notes |
42
- | ------------------- | -------- | -------------------------------------------- |
43
- | Symi Agent Runtime | Yes | Core agent execution, tool calls, sessions |
44
- | Gateway | Yes | Authentication, routing, channel integration |
45
- | SymiHub Marketplace | Yes | Skill publishing, moderation, distribution |
46
- | MCP Servers | Yes | External tool providers |
47
- | User Devices | Partial | Mobile apps, desktop clients |
48
-
49
- ### 1.3 Out of Scope
50
-
51
- Nothing is explicitly out of scope for this threat model.
52
-
53
- ---
54
-
55
- ## 2. System Architecture
56
-
57
- ### 2.1 Trust Boundaries
58
-
59
- ```
60
- ┌─────────────────────────────────────────────────────────────────┐
61
- │ UNTRUSTED ZONE │
62
- │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
63
- │ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘ │
64
- │ │ │ │ │
65
- └─────────┼────────────────┼────────────────┼──────────────────────┘
66
- │ │ │
67
- ▼ ▼ ▼
68
- ┌─────────────────────────────────────────────────────────────────┐
69
- │ TRUST BOUNDARY 1: Channel Access │
70
- │ ┌──────────────────────────────────────────────────────────┐ │
71
- │ │ GATEWAY │ │
72
- │ │ • Device Pairing (30s grace period) │ │
73
- │ │ • AllowFrom / AllowList validation │ │
74
- │ │ • Token/Password/Tailscale auth │ │
75
- │ └──────────────────────────────────────────────────────────┘ │
76
- └─────────────────────────────────────────────────────────────────┘
77
-
78
-
79
- ┌─────────────────────────────────────────────────────────────────┐
80
- │ TRUST BOUNDARY 2: Session Isolation │
81
- │ ┌──────────────────────────────────────────────────────────┐ │
82
- │ │ AGENT SESSIONS │ │
83
- │ │ • Session key = agent:channel:peer │ │
84
- │ │ • Tool policies per agent │ │
85
- │ │ • Transcript logging │ │
86
- │ └──────────────────────────────────────────────────────────┘ │
87
- └─────────────────────────────────────────────────────────────────┘
88
-
89
-
90
- ┌─────────────────────────────────────────────────────────────────┐
91
- │ TRUST BOUNDARY 3: Tool Execution │
92
- │ ┌──────────────────────────────────────────────────────────┐ │
93
- │ │ EXECUTION SANDBOX │ │
94
- │ │ • Docker sandbox OR Host (exec-approvals) │ │
95
- │ │ • Node remote execution │ │
96
- │ │ • SSRF protection (DNS pinning + IP blocking) │ │
97
- │ └──────────────────────────────────────────────────────────┘ │
98
- └─────────────────────────────────────────────────────────────────┘
99
-
100
-
101
- ┌─────────────────────────────────────────────────────────────────┐
102
- │ TRUST BOUNDARY 4: External Content │
103
- │ ┌──────────────────────────────────────────────────────────┐ │
104
- │ │ FETCHED URLs / EMAILS / WEBHOOKS │ │
105
- │ │ • External content wrapping (XML tags) │ │
106
- │ │ • Security notice injection │ │
107
- │ └──────────────────────────────────────────────────────────┘ │
108
- └─────────────────────────────────────────────────────────────────┘
109
-
110
-
111
- ┌─────────────────────────────────────────────────────────────────┐
112
- │ TRUST BOUNDARY 5: Supply Chain │
113
- │ ┌──────────────────────────────────────────────────────────┐ │
114
- │ │ SYMIHUB │ │
115
- │ │ • Skill publishing (semver, SKILL.md required) │ │
116
- │ │ • Pattern-based moderation flags │ │
117
- │ │ • VirusTotal scanning (coming soon) │ │
118
- │ │ • GitHub account age verification │ │
119
- │ └──────────────────────────────────────────────────────────┘ │
120
- └─────────────────────────────────────────────────────────────────┘
121
- ```
122
-
123
- ### 2.2 Data Flows
124
-
125
- | Flow | Source | Destination | Data | Protection |
126
- | ---- | ------- | ----------- | ------------------ | -------------------- |
127
- | F1 | Channel | Gateway | User messages | TLS, AllowFrom |
128
- | F2 | Gateway | Agent | Routed messages | Session isolation |
129
- | F3 | Agent | Tools | Tool invocations | Policy enforcement |
130
- | F4 | Agent | External | web_fetch requests | SSRF blocking |
131
- | F5 | SymiHub | Agent | Skill code | Moderation, scanning |
132
- | F6 | Agent | Channel | Responses | Output filtering |
133
-
134
- ---
135
-
136
- ## 3. Threat Analysis by ATLAS Tactic
137
-
138
- ### 3.1 Reconnaissance (AML.TA0002)
139
-
140
- #### T-RECON-001: Agent Endpoint Discovery
141
-
142
- | Attribute | Value |
143
- | ----------------------- | -------------------------------------------------------------------- |
144
- | **ATLAS ID** | AML.T0006 - Active Scanning |
145
- | **Description** | Attacker scans for exposed Symi gateway endpoints |
146
- | **Attack Vector** | Network scanning, shodan queries, DNS enumeration |
147
- | **Affected Components** | Gateway, exposed API endpoints |
148
- | **Current Mitigations** | Tailscale auth option, bind to loopback by default |
149
- | **Residual Risk** | Medium - Public gateways discoverable |
150
- | **Recommendations** | Document secure deployment, add rate limiting on discovery endpoints |
151
-
152
- #### T-RECON-002: Channel Integration Probing
153
-
154
- | Attribute | Value |
155
- | ----------------------- | ------------------------------------------------------------------ |
156
- | **ATLAS ID** | AML.T0006 - Active Scanning |
157
- | **Description** | Attacker probes messaging channels to identify AI-managed accounts |
158
- | **Attack Vector** | Sending test messages, observing response patterns |
159
- | **Affected Components** | All channel integrations |
160
- | **Current Mitigations** | None specific |
161
- | **Residual Risk** | Low - Limited value from discovery alone |
162
- | **Recommendations** | Consider response timing randomization |
163
-
164
- ---
165
-
166
- ### 3.2 Initial Access (AML.TA0004)
167
-
168
- #### T-ACCESS-001: Pairing Code Interception
169
-
170
- | Attribute | Value |
171
- | ----------------------- | -------------------------------------------------------- |
172
- | **ATLAS ID** | AML.T0040 - AI Model Inference API Access |
173
- | **Description** | Attacker intercepts pairing code during 30s grace period |
174
- | **Attack Vector** | Shoulder surfing, network sniffing, social engineering |
175
- | **Affected Components** | Device pairing system |
176
- | **Current Mitigations** | 30s expiry, codes sent via existing channel |
177
- | **Residual Risk** | Medium - Grace period exploitable |
178
- | **Recommendations** | Reduce grace period, add confirmation step |
179
-
180
- #### T-ACCESS-002: AllowFrom Spoofing
181
-
182
- | Attribute | Value |
183
- | ----------------------- | ------------------------------------------------------------------------------ |
184
- | **ATLAS ID** | AML.T0040 - AI Model Inference API Access |
185
- | **Description** | Attacker spoofs allowed sender identity in channel |
186
- | **Attack Vector** | Depends on channel - phone number spoofing, username impersonation |
187
- | **Affected Components** | AllowFrom validation per channel |
188
- | **Current Mitigations** | Channel-specific identity verification |
189
- | **Residual Risk** | Medium - Some channels vulnerable to spoofing |
190
- | **Recommendations** | Document channel-specific risks, add cryptographic verification where possible |
191
-
192
- #### T-ACCESS-003: Token Theft
193
-
194
- | Attribute | Value |
195
- | ----------------------- | ----------------------------------------------------------- |
196
- | **ATLAS ID** | AML.T0040 - AI Model Inference API Access |
197
- | **Description** | Attacker steals authentication tokens from config files |
198
- | **Attack Vector** | Malware, unauthorized device access, config backup exposure |
199
- | **Affected Components** | ~/.symi/credentials/, config storage |
200
- | **Current Mitigations** | File permissions |
201
- | **Residual Risk** | High - Tokens stored in plaintext |
202
- | **Recommendations** | Implement token encryption at rest, add token rotation |
203
-
204
- ---
205
-
206
- ### 3.3 Execution (AML.TA0005)
207
-
208
- #### T-EXEC-001: Direct Prompt Injection
209
-
210
- | Attribute | Value |
211
- | ----------------------- | ----------------------------------------------------------------------------------------- |
212
- | **ATLAS ID** | AML.T0051.000 - LLM Prompt Injection: Direct |
213
- | **Description** | Attacker sends crafted prompts to manipulate agent behavior |
214
- | **Attack Vector** | Channel messages containing adversarial instructions |
215
- | **Affected Components** | Agent LLM, all input surfaces |
216
- | **Current Mitigations** | Pattern detection, external content wrapping |
217
- | **Residual Risk** | Critical - Detection only, no blocking; sophisticated attacks bypass |
218
- | **Recommendations** | Implement multi-layer defense, output validation, user confirmation for sensitive actions |
219
-
220
- #### T-EXEC-002: Indirect Prompt Injection
221
-
222
- | Attribute | Value |
223
- | ----------------------- | ----------------------------------------------------------- |
224
- | **ATLAS ID** | AML.T0051.001 - LLM Prompt Injection: Indirect |
225
- | **Description** | Attacker embeds malicious instructions in fetched content |
226
- | **Attack Vector** | Malicious URLs, poisoned emails, compromised webhooks |
227
- | **Affected Components** | web_fetch, email ingestion, external data sources |
228
- | **Current Mitigations** | Content wrapping with XML tags and security notice |
229
- | **Residual Risk** | High - LLM may ignore wrapper instructions |
230
- | **Recommendations** | Implement content sanitization, separate execution contexts |
231
-
232
- #### T-EXEC-003: Tool Argument Injection
233
-
234
- | Attribute | Value |
235
- | ----------------------- | ------------------------------------------------------------ |
236
- | **ATLAS ID** | AML.T0051.000 - LLM Prompt Injection: Direct |
237
- | **Description** | Attacker manipulates tool arguments through prompt injection |
238
- | **Attack Vector** | Crafted prompts that influence tool parameter values |
239
- | **Affected Components** | All tool invocations |
240
- | **Current Mitigations** | Exec approvals for dangerous commands |
241
- | **Residual Risk** | High - Relies on user judgment |
242
- | **Recommendations** | Implement argument validation, parameterized tool calls |
243
-
244
- #### T-EXEC-004: Exec Approval Bypass
245
-
246
- | Attribute | Value |
247
- | ----------------------- | ---------------------------------------------------------- |
248
- | **ATLAS ID** | AML.T0043 - Craft Adversarial Data |
249
- | **Description** | Attacker crafts commands that bypass approval allowlist |
250
- | **Attack Vector** | Command obfuscation, alias exploitation, path manipulation |
251
- | **Affected Components** | exec-approvals.ts, command allowlist |
252
- | **Current Mitigations** | Allowlist + ask mode |
253
- | **Residual Risk** | High - No command sanitization |
254
- | **Recommendations** | Implement command normalization, expand blocklist |
255
-
256
- ---
257
-
258
- ### 3.4 Persistence (AML.TA0006)
259
-
260
- #### T-PERSIST-001: Malicious Skill Installation
261
-
262
- | Attribute | Value |
263
- | ----------------------- | ------------------------------------------------------------------------ |
264
- | **ATLAS ID** | AML.T0010.001 - Supply Chain Compromise: AI Software |
265
- | **Description** | Attacker publishes malicious skill to SymiHub |
266
- | **Attack Vector** | Create account, publish skill with hidden malicious code |
267
- | **Affected Components** | SymiHub, skill loading, agent execution |
268
- | **Current Mitigations** | GitHub account age verification, pattern-based moderation flags |
269
- | **Residual Risk** | Critical - No sandboxing, limited review |
270
- | **Recommendations** | VirusTotal integration (in progress), skill sandboxing, community review |
271
-
272
- #### T-PERSIST-002: Skill Update Poisoning
273
-
274
- | Attribute | Value |
275
- | ----------------------- | -------------------------------------------------------------- |
276
- | **ATLAS ID** | AML.T0010.001 - Supply Chain Compromise: AI Software |
277
- | **Description** | Attacker compromises popular skill and pushes malicious update |
278
- | **Attack Vector** | Account compromise, social engineering of skill owner |
279
- | **Affected Components** | SymiHub versioning, auto-update flows |
280
- | **Current Mitigations** | Version fingerprinting |
281
- | **Residual Risk** | High - Auto-updates may pull malicious versions |
282
- | **Recommendations** | Implement update signing, rollback capability, version pinning |
283
-
284
- #### T-PERSIST-003: Agent Configuration Tampering
285
-
286
- | Attribute | Value |
287
- | ----------------------- | --------------------------------------------------------------- |
288
- | **ATLAS ID** | AML.T0010.002 - Supply Chain Compromise: Data |
289
- | **Description** | Attacker modifies agent configuration to persist access |
290
- | **Attack Vector** | Config file modification, settings injection |
291
- | **Affected Components** | Agent config, tool policies |
292
- | **Current Mitigations** | File permissions |
293
- | **Residual Risk** | Medium - Requires local access |
294
- | **Recommendations** | Config integrity verification, audit logging for config changes |
295
-
296
- ---
297
-
298
- ### 3.5 Defense Evasion (AML.TA0007)
299
-
300
- #### T-EVADE-001: Moderation Pattern Bypass
301
-
302
- | Attribute | Value |
303
- | ----------------------- | ---------------------------------------------------------------------- |
304
- | **ATLAS ID** | AML.T0043 - Craft Adversarial Data |
305
- | **Description** | Attacker crafts skill content to evade moderation patterns |
306
- | **Attack Vector** | Unicode homoglyphs, encoding tricks, dynamic loading |
307
- | **Affected Components** | SymiHub moderation.ts |
308
- | **Current Mitigations** | Pattern-based FLAG_RULES |
309
- | **Residual Risk** | High - Simple regex easily bypassed |
310
- | **Recommendations** | Add behavioral analysis (VirusTotal Code Insight), AST-based detection |
311
-
312
- #### T-EVADE-002: Content Wrapper Escape
313
-
314
- | Attribute | Value |
315
- | ----------------------- | --------------------------------------------------------- |
316
- | **ATLAS ID** | AML.T0043 - Craft Adversarial Data |
317
- | **Description** | Attacker crafts content that escapes XML wrapper context |
318
- | **Attack Vector** | Tag manipulation, context confusion, instruction override |
319
- | **Affected Components** | External content wrapping |
320
- | **Current Mitigations** | XML tags + security notice |
321
- | **Residual Risk** | Medium - Novel escapes discovered regularly |
322
- | **Recommendations** | Multiple wrapper layers, output-side validation |
323
-
324
- ---
325
-
326
- ### 3.6 Discovery (AML.TA0008)
327
-
328
- #### T-DISC-001: Tool Enumeration
329
-
330
- | Attribute | Value |
331
- | ----------------------- | ----------------------------------------------------- |
332
- | **ATLAS ID** | AML.T0040 - AI Model Inference API Access |
333
- | **Description** | Attacker enumerates available tools through prompting |
334
- | **Attack Vector** | "What tools do you have?" style queries |
335
- | **Affected Components** | Agent tool registry |
336
- | **Current Mitigations** | None specific |
337
- | **Residual Risk** | Low - Tools generally documented |
338
- | **Recommendations** | Consider tool visibility controls |
339
-
340
- #### T-DISC-002: Session Data Extraction
341
-
342
- | Attribute | Value |
343
- | ----------------------- | ----------------------------------------------------- |
344
- | **ATLAS ID** | AML.T0040 - AI Model Inference API Access |
345
- | **Description** | Attacker extracts sensitive data from session context |
346
- | **Attack Vector** | "What did we discuss?" queries, context probing |
347
- | **Affected Components** | Session transcripts, context window |
348
- | **Current Mitigations** | Session isolation per sender |
349
- | **Residual Risk** | Medium - Within-session data accessible |
350
- | **Recommendations** | Implement sensitive data redaction in context |
351
-
352
- ---
353
-
354
- ### 3.7 Collection & Exfiltration (AML.TA0009, AML.TA0010)
355
-
356
- #### T-EXFIL-001: Data Theft via web_fetch
357
-
358
- | Attribute | Value |
359
- | ----------------------- | ---------------------------------------------------------------------- |
360
- | **ATLAS ID** | AML.T0009 - Collection |
361
- | **Description** | Attacker exfiltrates data by instructing agent to send to external URL |
362
- | **Attack Vector** | Prompt injection causing agent to POST data to attacker server |
363
- | **Affected Components** | web_fetch tool |
364
- | **Current Mitigations** | SSRF blocking for internal networks |
365
- | **Residual Risk** | High - External URLs permitted |
366
- | **Recommendations** | Implement URL allowlisting, data classification awareness |
367
-
368
- #### T-EXFIL-002: Unauthorized Message Sending
369
-
370
- | Attribute | Value |
371
- | ----------------------- | ---------------------------------------------------------------- |
372
- | **ATLAS ID** | AML.T0009 - Collection |
373
- | **Description** | Attacker causes agent to send messages containing sensitive data |
374
- | **Attack Vector** | Prompt injection causing agent to message attacker |
375
- | **Affected Components** | Message tool, channel integrations |
376
- | **Current Mitigations** | Outbound messaging gating |
377
- | **Residual Risk** | Medium - Gating may be bypassed |
378
- | **Recommendations** | Require explicit confirmation for new recipients |
379
-
380
- #### T-EXFIL-003: Credential Harvesting
381
-
382
- | Attribute | Value |
383
- | ----------------------- | ------------------------------------------------------- |
384
- | **ATLAS ID** | AML.T0009 - Collection |
385
- | **Description** | Malicious skill harvests credentials from agent context |
386
- | **Attack Vector** | Skill code reads environment variables, config files |
387
- | **Affected Components** | Skill execution environment |
388
- | **Current Mitigations** | None specific to skills |
389
- | **Residual Risk** | Critical - Skills run with agent privileges |
390
- | **Recommendations** | Skill sandboxing, credential isolation |
391
-
392
- ---
393
-
394
- ### 3.8 Impact (AML.TA0011)
395
-
396
- #### T-IMPACT-001: Unauthorized Command Execution
397
-
398
- | Attribute | Value |
399
- | ----------------------- | --------------------------------------------------- |
400
- | **ATLAS ID** | AML.T0031 - Erode AI Model Integrity |
401
- | **Description** | Attacker executes arbitrary commands on user system |
402
- | **Attack Vector** | Prompt injection combined with exec approval bypass |
403
- | **Affected Components** | Bash tool, command execution |
404
- | **Current Mitigations** | Exec approvals, Docker sandbox option |
405
- | **Residual Risk** | Critical - Host execution without sandbox |
406
- | **Recommendations** | Default to sandbox, improve approval UX |
407
-
408
- #### T-IMPACT-002: Resource Exhaustion (DoS)
409
-
410
- | Attribute | Value |
411
- | ----------------------- | -------------------------------------------------- |
412
- | **ATLAS ID** | AML.T0031 - Erode AI Model Integrity |
413
- | **Description** | Attacker exhausts API credits or compute resources |
414
- | **Attack Vector** | Automated message flooding, expensive tool calls |
415
- | **Affected Components** | Gateway, agent sessions, API provider |
416
- | **Current Mitigations** | None |
417
- | **Residual Risk** | High - No rate limiting |
418
- | **Recommendations** | Implement per-sender rate limits, cost budgets |
419
-
420
- #### T-IMPACT-003: Reputation Damage
421
-
422
- | Attribute | Value |
423
- | ----------------------- | ------------------------------------------------------- |
424
- | **ATLAS ID** | AML.T0031 - Erode AI Model Integrity |
425
- | **Description** | Attacker causes agent to send harmful/offensive content |
426
- | **Attack Vector** | Prompt injection causing inappropriate responses |
427
- | **Affected Components** | Output generation, channel messaging |
428
- | **Current Mitigations** | LLM provider content policies |
429
- | **Residual Risk** | Medium - Provider filters imperfect |
430
- | **Recommendations** | Output filtering layer, user controls |
431
-
432
- ---
433
-
434
- ## 4. SymiHub Supply Chain Analysis
435
-
436
- ### 4.1 Current Security Controls
437
-
438
- | Control | Implementation | Effectiveness |
439
- | -------------------- | --------------------------- | ---------------------------------------------------- |
440
- | GitHub Account Age | `requireGitHubAccountAge()` | Medium - Raises bar for new attackers |
441
- | Path Sanitization | `sanitizePath()` | High - Prevents path traversal |
442
- | File Type Validation | `isTextFile()` | Medium - Only text files, but can still be malicious |
443
- | Size Limits | 50MB total bundle | High - Prevents resource exhaustion |
444
- | Required SKILL.md | Mandatory readme | Low security value - Informational only |
445
- | Pattern Moderation | FLAG_RULES in moderation.ts | Low - Easily bypassed |
446
- | Moderation Status | `moderationStatus` field | Medium - Manual review possible |
447
-
448
- ### 4.2 Moderation Flag Patterns
449
-
450
- Current patterns in `moderation.ts`:
451
-
452
- ```javascript
453
- // Known-bad identifiers
454
- /(keepcold131\/SymiAuthenticatorTool|SymiAuthenticatorTool)/i
455
-
456
- // Suspicious keywords
457
- /(malware|stealer|phish|phishing|keylogger)/i
458
- /(api[-_ ]?key|token|password|private key|secret)/i
459
- /(wallet|seed phrase|mnemonic|crypto)/i
460
- /(curl[^\n]+\|\s*(sh|bash))/i
461
- /(bit\.ly|tinyurl\.com|t\.co|goo\.gl|is\.gd)/i
462
- ```
463
-
464
- **Limitations:**
465
-
466
- - Only checks slug, displayName, summary, frontmatter, metadata, file paths
467
- - Does not analyze actual skill code content
468
- - Simple regex easily bypassed with obfuscation
469
- - No behavioral analysis
470
-
471
- ### 4.3 Planned Improvements
472
-
473
- | Improvement | Status | Impact |
474
- | ---------------------- | ------------------------------------- | --------------------------------------------------------------------- |
475
- | VirusTotal Integration | In Progress | High - Code Insight behavioral analysis |
476
- | Community Reporting | Partial (`skillReports` table exists) | Medium |
477
- | Audit Logging | Partial (`auditLogs` table exists) | Medium |
478
- | Badge System | Implemented | Medium - `highlighted`, `official`, `deprecated`, `redactionApproved` |
479
-
480
- ---
481
-
482
- ## 5. Risk Matrix
483
-
484
- ### 5.1 Likelihood vs Impact
485
-
486
- | Threat ID | Likelihood | Impact | Risk Level | Priority |
487
- | ------------- | ---------- | -------- | ------------ | -------- |
488
- | T-EXEC-001 | High | Critical | **Critical** | P0 |
489
- | T-PERSIST-001 | High | Critical | **Critical** | P0 |
490
- | T-EXFIL-003 | Medium | Critical | **Critical** | P0 |
491
- | T-IMPACT-001 | Medium | Critical | **High** | P1 |
492
- | T-EXEC-002 | High | High | **High** | P1 |
493
- | T-EXEC-004 | Medium | High | **High** | P1 |
494
- | T-ACCESS-003 | Medium | High | **High** | P1 |
495
- | T-EXFIL-001 | Medium | High | **High** | P1 |
496
- | T-IMPACT-002 | High | Medium | **High** | P1 |
497
- | T-EVADE-001 | High | Medium | **Medium** | P2 |
498
- | T-ACCESS-001 | Low | High | **Medium** | P2 |
499
- | T-ACCESS-002 | Low | High | **Medium** | P2 |
500
- | T-PERSIST-002 | Low | High | **Medium** | P2 |
501
-
502
- ### 5.2 Critical Path Attack Chains
503
-
504
- **Attack Chain 1: Skill-Based Data Theft**
505
-
506
- ```
507
- T-PERSIST-001 → T-EVADE-001 → T-EXFIL-003
508
- (Publish malicious skill) → (Evade moderation) → (Harvest credentials)
509
- ```
510
-
511
- **Attack Chain 2: Prompt Injection to RCE**
512
-
513
- ```
514
- T-EXEC-001 → T-EXEC-004 → T-IMPACT-001
515
- (Inject prompt) → (Bypass exec approval) → (Execute commands)
516
- ```
517
-
518
- **Attack Chain 3: Indirect Injection via Fetched Content**
519
-
520
- ```
521
- T-EXEC-002 → T-EXFIL-001 → External exfiltration
522
- (Poison URL content) → (Agent fetches & follows instructions) → (Data sent to attacker)
523
- ```
524
-
525
- ---
526
-
527
- ## 6. Recommendations Summary
528
-
529
- ### 6.1 Immediate (P0)
530
-
531
- | ID | Recommendation | Addresses |
532
- | ----- | ------------------------------------------- | -------------------------- |
533
- | R-001 | Complete VirusTotal integration | T-PERSIST-001, T-EVADE-001 |
534
- | R-002 | Implement skill sandboxing | T-PERSIST-001, T-EXFIL-003 |
535
- | R-003 | Add output validation for sensitive actions | T-EXEC-001, T-EXEC-002 |
536
-
537
- ### 6.2 Short-term (P1)
538
-
539
- | ID | Recommendation | Addresses |
540
- | ----- | ---------------------------------------- | ------------ |
541
- | R-004 | Implement rate limiting | T-IMPACT-002 |
542
- | R-005 | Add token encryption at rest | T-ACCESS-003 |
543
- | R-006 | Improve exec approval UX and validation | T-EXEC-004 |
544
- | R-007 | Implement URL allowlisting for web_fetch | T-EXFIL-001 |
545
-
546
- ### 6.3 Medium-term (P2)
547
-
548
- | ID | Recommendation | Addresses |
549
- | ----- | ----------------------------------------------------- | ------------- |
550
- | R-008 | Add cryptographic channel verification where possible | T-ACCESS-002 |
551
- | R-009 | Implement config integrity verification | T-PERSIST-003 |
552
- | R-010 | Add update signing and version pinning | T-PERSIST-002 |
553
-
554
- ---
555
-
556
- ## 7. Appendices
557
-
558
- ### 7.1 ATLAS Technique Mapping
559
-
560
- | ATLAS ID | Technique Name | Symi Threats |
561
- | ------------- | ------------------------------ | ---------------------------------------------------------------- |
562
- | AML.T0006 | Active Scanning | T-RECON-001, T-RECON-002 |
563
- | AML.T0009 | Collection | T-EXFIL-001, T-EXFIL-002, T-EXFIL-003 |
564
- | AML.T0010.001 | Supply Chain: AI Software | T-PERSIST-001, T-PERSIST-002 |
565
- | AML.T0010.002 | Supply Chain: Data | T-PERSIST-003 |
566
- | AML.T0031 | Erode AI Model Integrity | T-IMPACT-001, T-IMPACT-002, T-IMPACT-003 |
567
- | AML.T0040 | AI Model Inference API Access | T-ACCESS-001, T-ACCESS-002, T-ACCESS-003, T-DISC-001, T-DISC-002 |
568
- | AML.T0043 | Craft Adversarial Data | T-EXEC-004, T-EVADE-001, T-EVADE-002 |
569
- | AML.T0051.000 | LLM Prompt Injection: Direct | T-EXEC-001, T-EXEC-003 |
570
- | AML.T0051.001 | LLM Prompt Injection: Indirect | T-EXEC-002 |
571
-
572
- ### 7.2 Key Security Files
573
-
574
- | Path | Purpose | Risk Level |
575
- | ----------------------------------- | --------------------------- | ------------ |
576
- | `src/infra/exec-approvals.ts` | Command approval logic | **Critical** |
577
- | `src/gateway/auth.ts` | Gateway authentication | **Critical** |
578
- | `src/web/inbound/access-control.ts` | Channel access control | **Critical** |
579
- | `src/infra/net/ssrf.ts` | SSRF protection | **Critical** |
580
- | `src/security/external-content.ts` | Prompt injection mitigation | **Critical** |
581
- | `src/agents/sandbox/tool-policy.ts` | Tool policy enforcement | **Critical** |
582
- | `convex/lib/moderation.ts` | SymiHub moderation | **High** |
583
- | `convex/lib/skillPublish.ts` | Skill publishing flow | **High** |
584
- | `src/routing/resolve-route.ts` | Session isolation | **Medium** |
585
-
586
- ### 7.3 Glossary
587
-
588
- | Term | Definition |
589
- | -------------------- | --------------------------------------------------------- |
590
- | **ATLAS** | MITRE's Adversarial Threat Landscape for AI Systems |
591
- | **SymiHub** | Symi's skill marketplace |
592
- | **Gateway** | Symi's message routing and authentication layer |
593
- | **MCP** | Model Context Protocol - tool provider interface |
594
- | **Prompt Injection** | Attack where malicious instructions are embedded in input |
595
- | **Skill** | Downloadable extension for Symi agents |
596
- | **SSRF** | Server-Side Request Forgery |
597
-
598
- ---
599
-
600
- _This threat model is a living document. Report security issues to security@symi.ai_