@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,77 +0,0 @@
1
- ---
2
- title: Pi 开发工作流程
3
- x-i18n:
4
- generated_at: "2026-02-03T10:07:59Z"
5
- model: claude-opus-4-5
6
- provider: pi
7
- source_hash: 65bd0580dd03df05321ced35a036ce6fb815ce3ddac1d35c9976279adcbf87c0
8
- source_path: pi-dev.md
9
- workflow: 15
10
- ---
11
-
12
- # Pi 开发工作流程
13
-
14
- 本指南总结了在 Symi 中开发 Pi 集成的合理工作流程。
15
-
16
- ## 类型检查和代码检查
17
-
18
- - 类型检查和构建:`pnpm build`
19
- - 代码检查:`pnpm lint`
20
- - 格式检查:`pnpm format`
21
- - 推送前完整检查:`pnpm lint && pnpm build && pnpm test`
22
-
23
- ## 运行 Pi 测试
24
-
25
- 使用专用脚本运行 Pi 集成测试集:
26
-
27
- ```bash
28
- scripts/pi/run-tests.sh
29
- ```
30
-
31
- 要包含执行真实提供商行为的实时测试:
32
-
33
- ```bash
34
- scripts/pi/run-tests.sh --live
35
- ```
36
-
37
- 该脚本通过以下 glob 模式运行所有 Pi 相关的单元测试:
38
-
39
- - `src/agents/pi-*.test.ts`
40
- - `src/agents/pi-embedded-*.test.ts`
41
- - `src/agents/pi-tools*.test.ts`
42
- - `src/agents/pi-settings.test.ts`
43
- - `src/agents/pi-tool-definition-adapter.test.ts`
44
- - `src/agents/pi-extensions/*.test.ts`
45
-
46
- ## 手动测试
47
-
48
- 推荐流程:
49
-
50
- - 以开发模式运行 Gateway 网关:
51
- - `pnpm gateway:dev`
52
- - 直接触发智能体:
53
- - `pnpm symi agent --message "Hello" --thinking low`
54
- - 使用 TUI 进行交互式调试:
55
- - `pnpm tui`
56
-
57
- 对于工具调用行为,提示执行 `read` 或 `exec` 操作,以便查看工具流式传输和负载处理。
58
-
59
- ## 完全重置
60
-
61
- 状态存储在 Symi 状态目录下。默认为 `~/.symi`。如果设置了 `SYMI_STATE_DIR`,则使用该目录。
62
-
63
- 要重置所有内容:
64
-
65
- - `symi.json` 用于配置
66
- - `credentials/` 用于认证配置文件和 token
67
- - `agents/<agentId>/sessions/` 用于智能体会话历史
68
- - `agents/<agentId>/sessions.json` 用于会话索引
69
- - `sessions/` 如果存在旧版路径
70
- - `workspace/` 如果你想要一个空白工作区
71
-
72
- 如果只想重置会话,删除该智能体的 `agents/<agentId>/sessions/` 和 `agents/<agentId>/sessions.json`。如果不想重新认证,保留 `credentials/`。
73
-
74
- ## 参考资料
75
-
76
- - https://docs.symi.ai/testing
77
- - https://docs.symi.ai/start/getting-started
package/docs/zh-CN/pi.md DELETED
@@ -1,617 +0,0 @@
1
- ---
2
- title: Pi 集成架构
3
- x-i18n:
4
- generated_at: "2026-02-03T07:53:24Z"
5
- model: claude-opus-4-5
6
- provider: pi
7
- source_hash: 98b12f1211f70b1a25f58e68c7a4d0fe3827412ca53ba0ea2cd41ac9c0448458
8
- source_path: pi.md
9
- workflow: 15
10
- ---
11
-
12
- # Pi 集成架构
13
-
14
- 本文档描述了 Symi 如何与 [pi-coding-agent](https://github.com/badlogic/pi-mono/tree/main/packages/coding-agent) 及其相关包(`pi-ai`、`pi-agent-core`、`pi-tui`)集成以实现其 AI 智能体能力。
15
-
16
- ## 概述
17
-
18
- Symi 使用 pi SDK 将 AI 编码智能体嵌入到其消息 Gateway 网关架构中。Symi 不是将 pi 作为子进程生成或使用 RPC 模式,而是通过 `createAgentSession()` 直接导入并实例化 pi 的 `AgentSession`。这种嵌入式方法提供了:
19
-
20
- - 对会话生命周期和事件处理的完全控制
21
- - 自定义工具注入(消息、沙箱、渠道特定操作)
22
- - 每个渠道/上下文的系统提示自定义
23
- - 支持分支/压缩的会话持久化
24
- - 带故障转移的多账户认证配置文件轮换
25
- - 与提供商无关的模型切换
26
-
27
- ## 包依赖
28
-
29
- ```json
30
- {
31
- "@mariozechner/pi-agent-core": "0.49.3",
32
- "@mariozechner/pi-ai": "0.49.3",
33
- "@mariozechner/pi-coding-agent": "0.49.3",
34
- "@mariozechner/pi-tui": "0.49.3"
35
- }
36
- ```
37
-
38
- | 包 | 用途 |
39
- | ----------------- | ------------------------------------------------------------------------------------------ |
40
- | `pi-ai` | 核心 LLM 抽象:`Model`、`streamSimple`、消息类型、提供商 API |
41
- | `pi-agent-core` | 智能体循环、工具执行、`AgentMessage` 类型 |
42
- | `pi-coding-agent` | 高级 SDK:`createAgentSession`、`SessionManager`、`AuthStorage`、`ModelRegistry`、内置工具 |
43
- | `pi-tui` | 终端 UI 组件(用于 Symi 的本地 TUI 模式) |
44
-
45
- ## 文件结构
46
-
47
- ```
48
- src/agents/
49
- ├── pi-embedded-runner.ts # Re-exports from pi-embedded-runner/
50
- ├── pi-embedded-runner/
51
- │ ├── run.ts # Main entry: runEmbeddedPiAgent()
52
- │ ├── run/
53
- │ │ ├── attempt.ts # Single attempt logic with session setup
54
- │ │ ├── params.ts # RunEmbeddedPiAgentParams type
55
- │ │ ├── payloads.ts # Build response payloads from run results
56
- │ │ ├── images.ts # Vision model image injection
57
- │ │ └── types.ts # EmbeddedRunAttemptResult
58
- │ ├── abort.ts # Abort error detection
59
- │ ├── cache-ttl.ts # Cache TTL tracking for context pruning
60
- │ ├── compact.ts # Manual/auto compaction logic
61
- │ ├── extensions.ts # Load pi extensions for embedded runs
62
- │ ├── extra-params.ts # Provider-specific stream params
63
- │ ├── google.ts # Google/Gemini turn ordering fixes
64
- │ ├── history.ts # History limiting (DM vs group)
65
- │ ├── lanes.ts # Session/global command lanes
66
- │ ├── logger.ts # Subsystem logger
67
- │ ├── model.ts # Model resolution via ModelRegistry
68
- │ ├── runs.ts # Active run tracking, abort, queue
69
- │ ├── sandbox-info.ts # Sandbox info for system prompt
70
- │ ├── session-manager-cache.ts # SessionManager instance caching
71
- │ ├── session-manager-init.ts # Session file initialization
72
- │ ├── system-prompt.ts # System prompt builder
73
- │ ├── tool-split.ts # Split tools into builtIn vs custom
74
- │ ├── types.ts # EmbeddedPiAgentMeta, EmbeddedPiRunResult
75
- │ └── utils.ts # ThinkLevel mapping, error description
76
- ├── pi-embedded-subscribe.ts # Session event subscription/dispatch
77
- ├── pi-embedded-subscribe.types.ts # SubscribeEmbeddedPiSessionParams
78
- ├── pi-embedded-subscribe.handlers.ts # Event handler factory
79
- ├── pi-embedded-subscribe.handlers.lifecycle.ts
80
- ├── pi-embedded-subscribe.handlers.types.ts
81
- ├── pi-embedded-block-chunker.ts # Streaming block reply chunking
82
- ├── pi-embedded-messaging.ts # Messaging tool sent tracking
83
- ├── pi-embedded-helpers.ts # Error classification, turn validation
84
- ├── pi-embedded-helpers/ # Helper modules
85
- ├── pi-embedded-utils.ts # Formatting utilities
86
- ├── pi-tools.ts # createSymiCodingTools()
87
- ├── pi-tools.abort.ts # AbortSignal wrapping for tools
88
- ├── pi-tools.policy.ts # Tool allowlist/denylist policy
89
- ├── pi-tools.read.ts # Read tool customizations
90
- ├── pi-tools.schema.ts # Tool schema normalization
91
- ├── pi-tools.types.ts # AnyAgentTool type alias
92
- ├── pi-tool-definition-adapter.ts # AgentTool -> ToolDefinition adapter
93
- ├── pi-settings.ts # Settings overrides
94
- ├── pi-extensions/ # Custom pi extensions
95
- │ ├── compaction-safeguard.ts # Safeguard extension
96
- │ ├── compaction-safeguard-runtime.ts
97
- │ ├── context-pruning.ts # Cache-TTL context pruning extension
98
- │ └── context-pruning/
99
- ├── model-auth.ts # Auth profile resolution
100
- ├── auth-profiles.ts # Profile store, cooldown, failover
101
- ├── model-selection.ts # Default model resolution
102
- ├── models-config.ts # models.json generation
103
- ├── model-catalog.ts # Model catalog cache
104
- ├── context-window-guard.ts # Context window validation
105
- ├── failover-error.ts # FailoverError class
106
- ├── defaults.ts # DEFAULT_PROVIDER, DEFAULT_MODEL
107
- ├── system-prompt.ts # buildAgentSystemPrompt()
108
- ├── system-prompt-params.ts # System prompt parameter resolution
109
- ├── system-prompt-report.ts # Debug report generation
110
- ├── tool-summaries.ts # Tool description summaries
111
- ├── tool-policy.ts # Tool policy resolution
112
- ├── transcript-policy.ts # Transcript validation policy
113
- ├── skills.ts # Skill snapshot/prompt building
114
- ├── skills/ # Skill subsystem
115
- ├── sandbox.ts # Sandbox context resolution
116
- ├── sandbox/ # Sandbox subsystem
117
- ├── channel-tools.ts # Channel-specific tool injection
118
- ├── symi-tools.ts # Symi-specific tools
119
- ├── bash-tools.ts # exec/process tools
120
- ├── apply-patch.ts # apply_patch tool (OpenAI)
121
- ├── tools/ # Individual tool implementations
122
- │ ├── browser-tool.ts
123
- │ ├── canvas-tool.ts
124
- │ ├── cron-tool.ts
125
- │ ├── gateway-tool.ts
126
- │ ├── image-tool.ts
127
- │ ├── message-tool.ts
128
- │ ├── nodes-tool.ts
129
- │ ├── session*.ts
130
- │ ├── slack-actions.ts
131
- │ ├── telegram-actions.ts
132
- │ ├── web-*.ts
133
- │ └── whatsapp-actions.ts
134
- └── ...
135
- ```
136
-
137
- ## 核心集成流程
138
-
139
- ### 1. 运行嵌入式智能体
140
-
141
- 主入口点是 `pi-embedded-runner/run.ts` 中的 `runEmbeddedPiAgent()`:
142
-
143
- ```typescript
144
- import { runEmbeddedPiAgent } from "./agents/pi-embedded-runner.js";
145
-
146
- const result = await runEmbeddedPiAgent({
147
- sessionId: "user-123",
148
- sessionKey: "main:whatsapp:+1234567890",
149
- sessionFile: "/path/to/session.jsonl",
150
- workspaceDir: "/path/to/workspace",
151
- config: symiConfig,
152
- prompt: "Hello, how are you?",
153
- provider: "anthropic",
154
- model: "claude-sonnet-4-20250514",
155
- timeoutMs: 120_000,
156
- runId: "run-abc",
157
- onBlockReply: async (payload) => {
158
- await sendToChannel(payload.text, payload.mediaUrls);
159
- },
160
- });
161
- ```
162
-
163
- ### 2. 会话创建
164
-
165
- 在 `runEmbeddedAttempt()`(由 `runEmbeddedPiAgent()` 调用)内部,使用 pi SDK:
166
-
167
- ```typescript
168
- import {
169
- createAgentSession,
170
- DefaultResourceLoader,
171
- SessionManager,
172
- SettingsManager,
173
- } from "@mariozechner/pi-coding-agent";
174
-
175
- const resourceLoader = new DefaultResourceLoader({
176
- cwd: resolvedWorkspace,
177
- agentDir,
178
- settingsManager,
179
- additionalExtensionPaths,
180
- });
181
- await resourceLoader.reload();
182
-
183
- const { session } = await createAgentSession({
184
- cwd: resolvedWorkspace,
185
- agentDir,
186
- authStorage: params.authStorage,
187
- modelRegistry: params.modelRegistry,
188
- model: params.model,
189
- thinkingLevel: mapThinkingLevel(params.thinkLevel),
190
- tools: builtInTools,
191
- customTools: allCustomTools,
192
- sessionManager,
193
- settingsManager,
194
- resourceLoader,
195
- });
196
-
197
- applySystemPromptOverrideToSession(session, systemPromptOverride);
198
- ```
199
-
200
- ### 3. 事件订阅
201
-
202
- `subscribeEmbeddedPiSession()` 订阅 pi 的 `AgentSession` 事件:
203
-
204
- ```typescript
205
- const subscription = subscribeEmbeddedPiSession({
206
- session: activeSession,
207
- runId: params.runId,
208
- verboseLevel: params.verboseLevel,
209
- reasoningMode: params.reasoningLevel,
210
- toolResultFormat: params.toolResultFormat,
211
- onToolResult: params.onToolResult,
212
- onReasoningStream: params.onReasoningStream,
213
- onBlockReply: params.onBlockReply,
214
- onPartialReply: params.onPartialReply,
215
- onAgentEvent: params.onAgentEvent,
216
- });
217
- ```
218
-
219
- 处理的事件包括:
220
-
221
- - `message_start` / `message_end` / `message_update`(流式文本/思考)
222
- - `tool_execution_start` / `tool_execution_update` / `tool_execution_end`
223
- - `turn_start` / `turn_end`
224
- - `agent_start` / `agent_end`
225
- - `auto_compaction_start` / `auto_compaction_end`
226
-
227
- ### 4. 提示
228
-
229
- 设置完成后,会话被提示:
230
-
231
- ```typescript
232
- await session.prompt(effectivePrompt, { images: imageResult.images });
233
- ```
234
-
235
- SDK 处理完整的智能体循环:发送到 LLM、执行工具调用、流式响应。
236
-
237
- ## 工具架构
238
-
239
- ### 工具管道
240
-
241
- 1. **基础工具**:pi 的 `codingTools`(read、bash、edit、write)
242
- 2. **自定义替换**:Symi 将 bash 替换为 `exec`/`process`,为沙箱自定义 read/edit/write
243
- 3. **Symi 工具**:消息、浏览器、画布、会话、定时任务、Gateway 网关等
244
- 4. **策略过滤**:工具按配置文件、提供商、智能体、群组、沙箱策略过滤
245
- 5. **Schema 规范化**:为 Gemini/OpenAI 的特殊情况清理 Schema
246
- 6. **AbortSignal 包装**:工具被包装以尊重中止信号
247
-
248
- ### 工具定义适配器
249
-
250
- pi-agent-core 的 `AgentTool` 与 pi-coding-agent 的 `ToolDefinition` 有不同的 `execute` 签名。`pi-tool-definition-adapter.ts` 中的适配器桥接了这一点:
251
-
252
- ```typescript
253
- export function toToolDefinitions(tools: AnyAgentTool[]): ToolDefinition[] {
254
- return tools.map((tool) => ({
255
- name: tool.name,
256
- label: tool.label ?? name,
257
- description: tool.description ?? "",
258
- parameters: tool.parameters,
259
- execute: async (toolCallId, params, onUpdate, _ctx, signal) => {
260
- // pi-coding-agent signature differs from pi-agent-core
261
- return await tool.execute(toolCallId, params, signal, onUpdate);
262
- },
263
- }));
264
- }
265
- ```
266
-
267
- ### 工具拆分策略
268
-
269
- `splitSdkTools()` 通过 `customTools` 传递所有工具:
270
-
271
- ```typescript
272
- export function splitSdkTools(options: { tools: AnyAgentTool[]; sandboxEnabled: boolean }) {
273
- return {
274
- builtInTools: [], // Empty. We override everything
275
- customTools: toToolDefinitions(options.tools),
276
- };
277
- }
278
- ```
279
-
280
- 这确保 Symi 的策略过滤、沙箱集成和扩展工具集在各提供商之间保持一致。
281
-
282
- ## 系统提示构建
283
-
284
- 系统提示在 `buildAgentSystemPrompt()`(`system-prompt.ts`)中构建。它组装一个完整的提示,包含工具、工具调用风格、安全护栏、Symi CLI 参考、Skills、文档、工作区、沙箱、消息、回复标签、语音、静默回复、心跳、运行时元数据等部分,以及启用时的记忆和反应,还有可选的上下文文件和额外系统提示内容。部分内容在子智能体使用的最小提示模式下会被裁剪。
285
-
286
- 提示在会话创建后通过 `applySystemPromptOverrideToSession()` 应用:
287
-
288
- ```typescript
289
- const systemPromptOverride = createSystemPromptOverride(appendPrompt);
290
- applySystemPromptOverrideToSession(session, systemPromptOverride);
291
- ```
292
-
293
- ## 会话管理
294
-
295
- ### 会话文件
296
-
297
- 会话是具有树结构(id/parentId 链接)的 JSONL 文件。Pi 的 `SessionManager` 处理持久化:
298
-
299
- ```typescript
300
- const sessionManager = SessionManager.open(params.sessionFile);
301
- ```
302
-
303
- Symi 用 `guardSessionManager()` 包装它以确保工具结果安全。
304
-
305
- ### 会话缓存
306
-
307
- `session-manager-cache.ts` 缓存 SessionManager 实例以避免重复的文件解析:
308
-
309
- ```typescript
310
- await prewarmSessionFile(params.sessionFile);
311
- sessionManager = SessionManager.open(params.sessionFile);
312
- trackSessionManagerAccess(params.sessionFile);
313
- ```
314
-
315
- ### 历史限制
316
-
317
- `limitHistoryTurns()` 根据渠道类型(私信 vs 群组)裁剪对话历史。
318
-
319
- ### 压缩
320
-
321
- 自动压缩在上下文溢出时触发。`compactEmbeddedPiSessionDirect()` 处理手动压缩:
322
-
323
- ```typescript
324
- const compactResult = await compactEmbeddedPiSessionDirect({
325
- sessionId, sessionFile, provider, model, ...
326
- });
327
- ```
328
-
329
- ## 认证与模型解析
330
-
331
- ### 认证配置文件
332
-
333
- Symi 维护一个认证配置文件存储,每个提供商有多个 API 密钥:
334
-
335
- ```typescript
336
- const authStore = ensureAuthProfileStore(agentDir, { allowKeychainPrompt: false });
337
- const profileOrder = resolveAuthProfileOrder({ cfg, store: authStore, provider, preferredProfile });
338
- ```
339
-
340
- 配置文件在失败时轮换,并带有冷却跟踪:
341
-
342
- ```typescript
343
- await markAuthProfileFailure({ store, profileId, reason, cfg, agentDir });
344
- const rotated = await advanceAuthProfile();
345
- ```
346
-
347
- ### 模型解析
348
-
349
- ```typescript
350
- import { resolveModel } from "./pi-embedded-runner/model.js";
351
-
352
- const { model, error, authStorage, modelRegistry } = resolveModel(
353
- provider,
354
- modelId,
355
- agentDir,
356
- config,
357
- );
358
-
359
- // Uses pi's ModelRegistry and AuthStorage
360
- authStorage.setRuntimeApiKey(model.provider, apiKeyInfo.apiKey);
361
- ```
362
-
363
- ### 故障转移
364
-
365
- `FailoverError` 在配置了回退时触发模型回退:
366
-
367
- ```typescript
368
- if (fallbackConfigured && isFailoverErrorMessage(errorText)) {
369
- throw new FailoverError(errorText, {
370
- reason: promptFailoverReason ?? "unknown",
371
- provider,
372
- model: modelId,
373
- profileId,
374
- status: resolveFailoverStatus(promptFailoverReason),
375
- });
376
- }
377
- ```
378
-
379
- ## Pi 扩展
380
-
381
- Symi 加载自定义 pi 扩展以实现特殊行为:
382
-
383
- ### 压缩安全护栏
384
-
385
- `pi-extensions/compaction-safeguard.ts` 为压缩添加护栏,包括自适应令牌预算以及工具失败和文件操作摘要:
386
-
387
- ```typescript
388
- if (resolveCompactionMode(params.cfg) === "safeguard") {
389
- setCompactionSafeguardRuntime(params.sessionManager, { maxHistoryShare });
390
- paths.push(resolvePiExtensionPath("compaction-safeguard"));
391
- }
392
- ```
393
-
394
- ### 上下文裁剪
395
-
396
- `pi-extensions/context-pruning.ts` 实现基于缓存 TTL 的上下文裁剪:
397
-
398
- ```typescript
399
- if (cfg?.agents?.defaults?.contextPruning?.mode === "cache-ttl") {
400
- setContextPruningRuntime(params.sessionManager, {
401
- settings,
402
- contextWindowTokens,
403
- isToolPrunable,
404
- lastCacheTouchAt,
405
- });
406
- paths.push(resolvePiExtensionPath("context-pruning"));
407
- }
408
- ```
409
-
410
- ## 流式传输与块回复
411
-
412
- ### 块分块
413
-
414
- `EmbeddedBlockChunker` 管理将流式文本分成离散的回复块:
415
-
416
- ```typescript
417
- const blockChunker = blockChunking ? new EmbeddedBlockChunker(blockChunking) : null;
418
- ```
419
-
420
- ### 思考/最终标签剥离
421
-
422
- 流式输出被处理以剥离 `<think>`/`<thinking>` 块并提取 `<final>` 内容:
423
-
424
- ```typescript
425
- const stripBlockTags = (text: string, state: { thinking: boolean; final: boolean }) => {
426
- // Strip <think>...</think> content
427
- // If enforceFinalTag, only return <final>...</final> content
428
- };
429
- ```
430
-
431
- ### 回复指令
432
-
433
- 回复指令如 `[[media:url]]`、`[[voice]]`、`[[reply:id]]` 被解析和提取:
434
-
435
- ```typescript
436
- const { text: cleanedText, mediaUrls, audioAsVoice, replyToId } = consumeReplyDirectives(chunk);
437
- ```
438
-
439
- ## 错误处理
440
-
441
- ### 错误分类
442
-
443
- `pi-embedded-helpers.ts` 对错误进行分类以进行适当处理:
444
-
445
- ```typescript
446
- isContextOverflowError(errorText) // Context too large
447
- isCompactionFailureError(errorText) // Compaction failed
448
- isAuthAssistantError(lastAssistant) // Auth failure
449
- isRateLimitAssistantError(...) // Rate limited
450
- isFailoverAssistantError(...) // Should failover
451
- classifyFailoverReason(errorText) // "auth" | "rate_limit" | "quota" | "timeout" | ...
452
- ```
453
-
454
- ### 思考级别回退
455
-
456
- 如果思考级别不受支持,它会回退:
457
-
458
- ```typescript
459
- const fallbackThinking = pickFallbackThinkingLevel({
460
- message: errorText,
461
- attempted: attemptedThinking,
462
- });
463
- if (fallbackThinking) {
464
- thinkLevel = fallbackThinking;
465
- continue;
466
- }
467
- ```
468
-
469
- ## 沙箱集成
470
-
471
- 当启用沙箱模式时,工具和路径受到约束:
472
-
473
- ```typescript
474
- const sandbox = await resolveSandboxContext({
475
- config: params.config,
476
- sessionKey: sandboxSessionKey,
477
- workspaceDir: resolvedWorkspace,
478
- });
479
-
480
- if (sandboxRoot) {
481
- // Use sandboxed read/edit/write tools
482
- // Exec runs in container
483
- // Browser uses bridge URL
484
- }
485
- ```
486
-
487
- ## 提供商特定处理
488
-
489
- ### Anthropic
490
-
491
- - 拒绝魔术字符串清除
492
- - 连续角色的回合验证
493
- - Claude Code 参数兼容性
494
-
495
- ### Google/Gemini
496
-
497
- - 回合排序修复(`applyGoogleTurnOrderingFix`)
498
- - 工具 schema 清理(`sanitizeToolsForGoogle`)
499
- - 会话历史清理(`sanitizeSessionHistory`)
500
-
501
- ### OpenAI
502
-
503
- - Codex 模型的 `apply_patch` 工具
504
- - 思考级别降级处理
505
-
506
- ## TUI 集成
507
-
508
- Symi 还有一个本地 TUI 模式,直接使用 pi-tui 组件:
509
-
510
- ```typescript
511
- // src/tui/tui.ts
512
- import { ... } from "@mariozechner/pi-tui";
513
- ```
514
-
515
- 这提供了与 pi 原生模式类似的交互式终端体验。
516
-
517
- ## 与 Pi CLI 的主要区别
518
-
519
- | 方面 | Pi CLI | Symi 嵌入式 |
520
- | -------- | ----------------------- | --------------------------------------------------------------------------------------- |
521
- | 调用方式 | `pi` 命令 / RPC | 通过 `createAgentSession()` 的 SDK |
522
- | 工具 | 默认编码工具 | 自定义 Symi 工具套件 |
523
- | 系统提示 | AGENTS.md + prompts | 按渠道/上下文动态生成 |
524
- | 会话存储 | `~/.pi/agent/sessions/` | `~/.symi/agents/<agentId>/sessions/`(或 `$SYMI_STATE_DIR/agents/<agentId>/sessions/`) |
525
- | 认证 | 单一凭证 | 带轮换的多配置文件 |
526
- | 扩展 | 从磁盘加载 | 编程方式 + 磁盘路径 |
527
- | 事件处理 | TUI 渲染 | 基于回调(onBlockReply 等) |
528
-
529
- ## 未来考虑
530
-
531
- 可能需要重构的领域:
532
-
533
- 1. **工具签名对齐**:目前在 pi-agent-core 和 pi-coding-agent 签名之间适配
534
- 2. **会话管理器包装**:`guardSessionManager` 增加了安全性但增加了复杂性
535
- 3. **扩展加载**:可以更直接地使用 pi 的 `ResourceLoader`
536
- 4. **流式处理器复杂性**:`subscribeEmbeddedPiSession` 已经变得很大
537
- 5. **提供商特殊情况**:许多提供商特定的代码路径,pi 可能可以处理
538
-
539
- ## 测试
540
-
541
- 所有涵盖 pi 集成及其扩展的现有测试:
542
-
543
- - `src/agents/pi-embedded-block-chunker.test.ts`
544
- - `src/agents/pi-embedded-helpers.buildbootstrapcontextfiles.test.ts`
545
- - `src/agents/pi-embedded-helpers.classifyfailoverreason.test.ts`
546
- - `src/agents/pi-embedded-helpers.downgradeopenai-reasoning.test.ts`
547
- - `src/agents/pi-embedded-helpers.formatassistanterrortext.test.ts`
548
- - `src/agents/pi-embedded-helpers.formatrawassistanterrorforui.test.ts`
549
- - `src/agents/pi-embedded-helpers.image-dimension-error.test.ts`
550
- - `src/agents/pi-embedded-helpers.image-size-error.test.ts`
551
- - `src/agents/pi-embedded-helpers.isautherrormessage.test.ts`
552
- - `src/agents/pi-embedded-helpers.isbillingerrormessage.test.ts`
553
- - `src/agents/pi-embedded-helpers.iscloudcodeassistformaterror.test.ts`
554
- - `src/agents/pi-embedded-helpers.iscompactionfailureerror.test.ts`
555
- - `src/agents/pi-embedded-helpers.iscontextoverflowerror.test.ts`
556
- - `src/agents/pi-embedded-helpers.isfailovererrormessage.test.ts`
557
- - `src/agents/pi-embedded-helpers.islikelycontextoverflowerror.test.ts`
558
- - `src/agents/pi-embedded-helpers.ismessagingtoolduplicate.test.ts`
559
- - `src/agents/pi-embedded-helpers.messaging-duplicate.test.ts`
560
- - `src/agents/pi-embedded-helpers.normalizetextforcomparison.test.ts`
561
- - `src/agents/pi-embedded-helpers.resolvebootstrapmaxchars.test.ts`
562
- - `src/agents/pi-embedded-helpers.sanitize-session-messages-images.keeps-tool-call-tool-result-ids-unchanged.test.ts`
563
- - `src/agents/pi-embedded-helpers.sanitize-session-messages-images.removes-empty-assistant-text-blocks-but-preserves.test.ts`
564
- - `src/agents/pi-embedded-helpers.sanitizegoogleturnordering.test.ts`
565
- - `src/agents/pi-embedded-helpers.sanitizesessionmessagesimages-thought-signature-stripping.test.ts`
566
- - `src/agents/pi-embedded-helpers.sanitizetoolcallid.test.ts`
567
- - `src/agents/pi-embedded-helpers.sanitizeuserfacingtext.test.ts`
568
- - `src/agents/pi-embedded-helpers.stripthoughtsignatures.test.ts`
569
- - `src/agents/pi-embedded-helpers.validate-turns.test.ts`
570
- - `src/agents/pi-embedded-runner-extraparams.live.test.ts`(实时)
571
- - `src/agents/pi-embedded-runner-extraparams.test.ts`
572
- - `src/agents/pi-embedded-runner.applygoogleturnorderingfix.test.ts`
573
- - `src/agents/pi-embedded-runner.buildembeddedsandboxinfo.test.ts`
574
- - `src/agents/pi-embedded-runner.createsystempromptoverride.test.ts`
575
- - `src/agents/pi-embedded-runner.get-dm-history-limit-from-session-key.falls-back-provider-default-per-dm-not.test.ts`
576
- - `src/agents/pi-embedded-runner.get-dm-history-limit-from-session-key.returns-undefined-sessionkey-is-undefined.test.ts`
577
- - `src/agents/pi-embedded-runner.google-sanitize-thinking.test.ts`
578
- - `src/agents/pi-embedded-runner.guard.test.ts`
579
- - `src/agents/pi-embedded-runner.limithistoryturns.test.ts`
580
- - `src/agents/pi-embedded-runner.resolvesessionagentids.test.ts`
581
- - `src/agents/pi-embedded-runner.run-embedded-pi-agent.auth-profile-rotation.test.ts`
582
- - `src/agents/pi-embedded-runner.sanitize-session-history.test.ts`
583
- - `src/agents/pi-embedded-runner.splitsdktools.test.ts`
584
- - `src/agents/pi-embedded-runner.test.ts`
585
- - `src/agents/pi-embedded-subscribe.code-span-awareness.test.ts`
586
- - `src/agents/pi-embedded-subscribe.reply-tags.test.ts`
587
- - `src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.calls-onblockreplyflush-before-tool-execution-start-preserve.test.ts`
588
- - `src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.does-not-append-text-end-content-is.test.ts`
589
- - `src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.does-not-call-onblockreplyflush-callback-is-not.test.ts`
590
- - `src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.does-not-duplicate-text-end-repeats-full.test.ts`
591
- - `src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.does-not-emit-duplicate-block-replies-text.test.ts`
592
- - `src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.emits-block-replies-text-end-does-not.test.ts`
593
- - `src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.emits-reasoning-as-separate-message-enabled.test.ts`
594
- - `src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.filters-final-suppresses-output-without-start-tag.test.ts`
595
- - `src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.includes-canvas-action-metadata-tool-summaries.test.ts`
596
- - `src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.keeps-assistanttexts-final-answer-block-replies-are.test.ts`
597
- - `src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.keeps-indented-fenced-blocks-intact.test.ts`
598
- - `src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.reopens-fenced-blocks-splitting-inside-them.test.ts`
599
- - `src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.splits-long-single-line-fenced-blocks-reopen.test.ts`
600
- - `src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.streams-soft-chunks-paragraph-preference.test.ts`
601
- - `src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.subscribeembeddedpisession.test.ts`
602
- - `src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.suppresses-message-end-block-replies-message-tool.test.ts`
603
- - `src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.waits-multiple-compaction-retries-before-resolving.test.ts`
604
- - `src/agents/pi-embedded-subscribe.tools.test.ts`
605
- - `src/agents/pi-embedded-utils.test.ts`
606
- - `src/agents/pi-extensions/compaction-safeguard.test.ts`
607
- - `src/agents/pi-extensions/context-pruning.test.ts`
608
- - `src/agents/pi-settings.test.ts`
609
- - `src/agents/pi-tool-definition-adapter.test.ts`
610
- - `src/agents/pi-tools-agent-config.test.ts`
611
- - `src/agents/pi-tools.create-symi-coding-tools.adds-claude-style-aliases-schemas-without-dropping-b.test.ts`
612
- - `src/agents/pi-tools.create-symi-coding-tools.adds-claude-style-aliases-schemas-without-dropping-d.test.ts`
613
- - `src/agents/pi-tools.create-symi-coding-tools.adds-claude-style-aliases-schemas-without-dropping-f.test.ts`
614
- - `src/agents/pi-tools.create-symi-coding-tools.adds-claude-style-aliases-schemas-without-dropping.test.ts`
615
- - `src/agents/pi-tools.policy.test.ts`
616
- - `src/agents/pi-tools.safe-bins.test.ts`
617
- - `src/agents/pi-tools.workspace-paths.test.ts`