@symerian/symi 3.0.21 → 3.0.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/build-info.json +3 -3
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/package.json +1 -1
- package/docs/.i18n/README.md +0 -31
- package/docs/.i18n/glossary.ja-JP.json +0 -14
- package/docs/.i18n/glossary.zh-CN.json +0 -210
- package/docs/.i18n/ja-JP.tm.jsonl +0 -0
- package/docs/.i18n/zh-CN.tm.jsonl +0 -1303
- package/docs/CNAME +0 -1
- package/docs/assets/install-script.svg +0 -1
- package/docs/assets/macos-onboarding/01-macos-warning.jpeg +0 -0
- package/docs/assets/macos-onboarding/02-local-networks.jpeg +0 -0
- package/docs/assets/macos-onboarding/03-security-notice.png +0 -0
- package/docs/assets/macos-onboarding/04-choose-gateway.png +0 -0
- package/docs/assets/macos-onboarding/05-permissions.png +0 -0
- package/docs/assets/pixel-symi.svg +0 -60
- package/docs/assets/showcase/agents-ui.jpg +0 -0
- package/docs/assets/showcase/bambu-cli.png +0 -0
- package/docs/assets/showcase/codexmonitor.png +0 -0
- package/docs/assets/showcase/gohome-grafana.png +0 -0
- package/docs/assets/showcase/ios-testflight.jpg +0 -0
- package/docs/assets/showcase/oura-health.png +0 -0
- package/docs/assets/showcase/padel-cli.svg +0 -11
- package/docs/assets/showcase/padel-screenshot.jpg +0 -0
- package/docs/assets/showcase/papla-tts.jpg +0 -0
- package/docs/assets/showcase/pr-review-telegram.jpg +0 -0
- package/docs/assets/showcase/roborock-screenshot.jpg +0 -0
- package/docs/assets/showcase/roborock-status.svg +0 -13
- package/docs/assets/showcase/roof-camera-sky.jpg +0 -0
- package/docs/assets/showcase/snag.png +0 -0
- package/docs/assets/showcase/tesco-shop.jpg +0 -0
- package/docs/assets/showcase/wienerlinien.png +0 -0
- package/docs/assets/showcase/wine-cellar-skill.jpg +0 -0
- package/docs/assets/showcase/winix-air-purifier.jpg +0 -0
- package/docs/assets/showcase/xuezh-pronunciation.jpeg +0 -0
- package/docs/assets/sponsors/blacksmith.svg +0 -14
- package/docs/assets/sponsors/openai.svg +0 -3
- package/docs/assets/symi-logo-text-dark.png +0 -0
- package/docs/assets/symi-logo-text.png +0 -0
- package/docs/automation/auth-monitoring.md +0 -44
- package/docs/automation/cron-jobs.md +0 -540
- package/docs/automation/cron-vs-heartbeat.md +0 -286
- package/docs/automation/gmail-pubsub.md +0 -256
- package/docs/automation/hooks.md +0 -998
- package/docs/automation/poll.md +0 -61
- package/docs/automation/troubleshooting.md +0 -122
- package/docs/automation/webhook.md +0 -213
- package/docs/brave-search.md +0 -41
- package/docs/capabilities.md +0 -151
- package/docs/channels/bluebubbles.md +0 -346
- package/docs/channels/broadcast-groups.md +0 -441
- package/docs/channels/channel-routing.md +0 -112
- package/docs/channels/feishu.md +0 -586
- package/docs/channels/googlechat.md +0 -253
- package/docs/channels/grammy.md +0 -31
- package/docs/channels/group-messages.md +0 -82
- package/docs/channels/groups.md +0 -364
- package/docs/channels/imessage.md +0 -366
- package/docs/channels/index.md +0 -46
- package/docs/channels/irc.md +0 -234
- package/docs/channels/line.md +0 -186
- package/docs/channels/location.md +0 -56
- package/docs/channels/matrix.md +0 -300
- package/docs/channels/mattermost.md +0 -158
- package/docs/channels/msteams.md +0 -769
- package/docs/channels/nextcloud-talk.md +0 -138
- package/docs/channels/nostr.md +0 -233
- package/docs/channels/pairing.md +0 -100
- package/docs/channels/signal.md +0 -322
- package/docs/channels/slack.md +0 -510
- package/docs/channels/telegram.md +0 -748
- package/docs/channels/tlon.md +0 -148
- package/docs/channels/troubleshooting.md +0 -110
- package/docs/channels/twitch.md +0 -379
- package/docs/channels/whatsapp.md +0 -444
- package/docs/channels/zalo.md +0 -192
- package/docs/channels/zalouser.md +0 -140
- package/docs/ci.md +0 -50
- package/docs/cli/acp.md +0 -182
- package/docs/cli/agent.md +0 -24
- package/docs/cli/agents.md +0 -75
- package/docs/cli/approvals.md +0 -50
- package/docs/cli/browser.md +0 -107
- package/docs/cli/channels.md +0 -73
- package/docs/cli/config.md +0 -50
- package/docs/cli/configure.md +0 -32
- package/docs/cli/cron.md +0 -44
- package/docs/cli/dashboard.md +0 -16
- package/docs/cli/devices.md +0 -73
- package/docs/cli/directory.md +0 -62
- package/docs/cli/dns.md +0 -23
- package/docs/cli/docs.md +0 -15
- package/docs/cli/doctor.md +0 -41
- package/docs/cli/gateway.md +0 -202
- package/docs/cli/health.md +0 -21
- package/docs/cli/hooks.md +0 -313
- package/docs/cli/index.md +0 -1029
- package/docs/cli/logs.md +0 -28
- package/docs/cli/memory.md +0 -45
- package/docs/cli/message.md +0 -214
- package/docs/cli/models.md +0 -79
- package/docs/cli/node.md +0 -112
- package/docs/cli/nodes.md +0 -73
- package/docs/cli/onboard.md +0 -76
- package/docs/cli/pairing.md +0 -21
- package/docs/cli/plugins.md +0 -92
- package/docs/cli/reset.md +0 -17
- package/docs/cli/sandbox.md +0 -152
- package/docs/cli/security.md +0 -64
- package/docs/cli/sessions.md +0 -16
- package/docs/cli/setup.md +0 -29
- package/docs/cli/skills.md +0 -26
- package/docs/cli/status.md +0 -25
- package/docs/cli/system.md +0 -60
- package/docs/cli/tui.md +0 -23
- package/docs/cli/uninstall.md +0 -17
- package/docs/cli/update.md +0 -98
- package/docs/cli/voicecall.md +0 -34
- package/docs/cli/webhooks.md +0 -25
- package/docs/concepts/agent-loop.md +0 -148
- package/docs/concepts/agent-workspace.md +0 -234
- package/docs/concepts/agent.md +0 -123
- package/docs/concepts/architecture.md +0 -135
- package/docs/concepts/compaction.md +0 -61
- package/docs/concepts/context.md +0 -161
- package/docs/concepts/features.md +0 -51
- package/docs/concepts/markdown-formatting.md +0 -128
- package/docs/concepts/memory.md +0 -729
- package/docs/concepts/messages.md +0 -153
- package/docs/concepts/model-failover.md +0 -149
- package/docs/concepts/model-providers.md +0 -424
- package/docs/concepts/models.md +0 -208
- package/docs/concepts/multi-agent.md +0 -521
- package/docs/concepts/oauth.md +0 -145
- package/docs/concepts/presence.md +0 -102
- package/docs/concepts/queue.md +0 -86
- package/docs/concepts/retry.md +0 -64
- package/docs/concepts/session-pruning.md +0 -123
- package/docs/concepts/session-tool.md +0 -213
- package/docs/concepts/session.md +0 -199
- package/docs/concepts/sessions.md +0 -10
- package/docs/concepts/streaming.md +0 -129
- package/docs/concepts/system-prompt.md +0 -128
- package/docs/concepts/timezone.md +0 -90
- package/docs/concepts/typebox.md +0 -289
- package/docs/concepts/typing-indicators.md +0 -68
- package/docs/concepts/usage-tracking.md +0 -35
- package/docs/date-time.md +0 -127
- package/docs/debug/node-issue.md +0 -85
- package/docs/diagnostics/flags.md +0 -91
- package/docs/docs.json +0 -1849
- package/docs/experiments/onboarding-config-protocol.md +0 -40
- package/docs/experiments/plans/browser-evaluate-cdp-refactor.md +0 -229
- package/docs/experiments/plans/cron-add-hardening.md +0 -62
- package/docs/experiments/plans/group-policy-hardening.md +0 -40
- package/docs/experiments/plans/openresponses-gateway.md +0 -123
- package/docs/experiments/plans/pty-process-supervision.md +0 -192
- package/docs/experiments/plans/session-binding-channel-agnostic.md +0 -202
- package/docs/experiments/plans/thread-bound-subagents.md +0 -281
- package/docs/experiments/proposals/model-config.md +0 -36
- package/docs/experiments/research/memory.md +0 -228
- package/docs/gateway/authentication.md +0 -162
- package/docs/gateway/background-process.md +0 -96
- package/docs/gateway/bonjour.md +0 -177
- package/docs/gateway/bridge-protocol.md +0 -91
- package/docs/gateway/cli-backends.md +0 -225
- package/docs/gateway/configuration-examples.md +0 -610
- package/docs/gateway/configuration-reference.md +0 -2465
- package/docs/gateway/configuration.md +0 -488
- package/docs/gateway/discovery.md +0 -123
- package/docs/gateway/doctor.md +0 -282
- package/docs/gateway/gateway-lock.md +0 -34
- package/docs/gateway/health.md +0 -35
- package/docs/gateway/heartbeat.md +0 -374
- package/docs/gateway/index.md +0 -254
- package/docs/gateway/local-models.md +0 -150
- package/docs/gateway/logging.md +0 -113
- package/docs/gateway/multiple-gateways.md +0 -112
- package/docs/gateway/network-model.md +0 -20
- package/docs/gateway/openai-http-api.md +0 -119
- package/docs/gateway/openresponses-http-api.md +0 -333
- package/docs/gateway/pairing.md +0 -99
- package/docs/gateway/protocol.md +0 -221
- package/docs/gateway/remote-gateway-readme.md +0 -158
- package/docs/gateway/remote.md +0 -131
- package/docs/gateway/sandbox-vs-tool-policy-vs-elevated.md +0 -128
- package/docs/gateway/sandboxing.md +0 -203
- package/docs/gateway/security/index.md +0 -931
- package/docs/gateway/tailscale.md +0 -132
- package/docs/gateway/tools-invoke-http-api.md +0 -110
- package/docs/gateway/troubleshooting.md +0 -317
- package/docs/gateway/trusted-proxy-auth.md +0 -270
- package/docs/glass-ui-rendering-invariants.md +0 -451
- package/docs/help/debugging.md +0 -162
- package/docs/help/environment.md +0 -107
- package/docs/help/faq.md +0 -2846
- package/docs/help/index.md +0 -21
- package/docs/help/scripts.md +0 -28
- package/docs/help/testing.md +0 -385
- package/docs/help/troubleshooting.md +0 -264
- package/docs/images/configure-model-picker-unsearchable.png +0 -0
- package/docs/images/feishu-step2-create-app.png +0 -0
- package/docs/images/feishu-step3-credentials.png +0 -0
- package/docs/images/feishu-step4-permissions.png +0 -0
- package/docs/images/feishu-step5-bot-capability.png +0 -0
- package/docs/images/feishu-step6-event-subscription.png +0 -0
- package/docs/images/groups-flow.svg +0 -52
- package/docs/images/mobile-ui-screenshot.png +0 -0
- package/docs/index.md +0 -186
- package/docs/install/ansible.md +0 -207
- package/docs/install/bun.md +0 -59
- package/docs/install/development-channels.md +0 -75
- package/docs/install/docker.md +0 -583
- package/docs/install/exe-dev.md +0 -126
- package/docs/install/fly.md +0 -472
- package/docs/install/gcp.md +0 -499
- package/docs/install/hetzner.md +0 -347
- package/docs/install/index.md +0 -218
- package/docs/install/installer.md +0 -405
- package/docs/install/macos-vm.md +0 -281
- package/docs/install/migrating.md +0 -192
- package/docs/install/nix.md +0 -98
- package/docs/install/node.md +0 -138
- package/docs/install/northflank.mdx +0 -49
- package/docs/install/podman.md +0 -108
- package/docs/install/railway.mdx +0 -95
- package/docs/install/render.mdx +0 -158
- package/docs/install/uninstall.md +0 -128
- package/docs/install/updating.md +0 -231
- package/docs/ja-JP/AGENTS.md +0 -37
- package/docs/ja-JP/index.md +0 -183
- package/docs/ja-JP/start/getting-started.md +0 -125
- package/docs/ja-JP/start/wizard.md +0 -77
- package/docs/logging.md +0 -350
- package/docs/nav-tabs-underline.js +0 -100
- package/docs/network.md +0 -54
- package/docs/nodes/audio.md +0 -133
- package/docs/nodes/camera.md +0 -156
- package/docs/nodes/images.md +0 -72
- package/docs/nodes/index.md +0 -342
- package/docs/nodes/location-command.md +0 -113
- package/docs/nodes/media-understanding.md +0 -379
- package/docs/nodes/talk.md +0 -90
- package/docs/nodes/troubleshooting.md +0 -112
- package/docs/nodes/voicewake.md +0 -65
- package/docs/perplexity.md +0 -80
- package/docs/phase-6.5-pre-flight-audit.md +0 -268
- package/docs/pi-dev.md +0 -70
- package/docs/pi.md +0 -610
- package/docs/platforms/android.md +0 -151
- package/docs/platforms/digitalocean.md +0 -265
- package/docs/platforms/index.md +0 -53
- package/docs/platforms/ios.md +0 -108
- package/docs/platforms/linux.md +0 -94
- package/docs/platforms/mac/bundled-gateway.md +0 -73
- package/docs/platforms/mac/canvas.md +0 -125
- package/docs/platforms/mac/child-process.md +0 -69
- package/docs/platforms/mac/dev-setup.md +0 -104
- package/docs/platforms/mac/health.md +0 -34
- package/docs/platforms/mac/icon.md +0 -31
- package/docs/platforms/mac/logging.md +0 -57
- package/docs/platforms/mac/menu-bar.md +0 -81
- package/docs/platforms/mac/peekaboo.md +0 -65
- package/docs/platforms/mac/permissions.md +0 -50
- package/docs/platforms/mac/release.md +0 -85
- package/docs/platforms/mac/remote.md +0 -84
- package/docs/platforms/mac/signing.md +0 -47
- package/docs/platforms/mac/skills.md +0 -33
- package/docs/platforms/mac/voice-overlay.md +0 -60
- package/docs/platforms/mac/voicewake.md +0 -66
- package/docs/platforms/mac/webchat.md +0 -43
- package/docs/platforms/mac/xpc.md +0 -61
- package/docs/platforms/macos.md +0 -204
- package/docs/platforms/oracle.md +0 -303
- package/docs/platforms/raspberry-pi.md +0 -358
- package/docs/platforms/windows.md +0 -159
- package/docs/plugins/agent-tools.md +0 -99
- package/docs/plugins/community.md +0 -44
- package/docs/plugins/manifest.md +0 -71
- package/docs/plugins/voice-call.md +0 -322
- package/docs/plugins/zalouser.md +0 -81
- package/docs/prose.md +0 -134
- package/docs/providers/anthropic.md +0 -174
- package/docs/providers/bedrock.md +0 -176
- package/docs/providers/claude-max-api-proxy.md +0 -148
- package/docs/providers/cloudflare-ai-gateway.md +0 -71
- package/docs/providers/deepgram.md +0 -93
- package/docs/providers/github-copilot.md +0 -72
- package/docs/providers/glm.md +0 -33
- package/docs/providers/huggingface.md +0 -209
- package/docs/providers/index.md +0 -67
- package/docs/providers/litellm.md +0 -153
- package/docs/providers/minimax.md +0 -208
- package/docs/providers/models.md +0 -52
- package/docs/providers/moonshot.md +0 -142
- package/docs/providers/nvidia.md +0 -55
- package/docs/providers/ollama.md +0 -250
- package/docs/providers/openai.md +0 -62
- package/docs/providers/opencode.md +0 -36
- package/docs/providers/openrouter.md +0 -37
- package/docs/providers/qianfan.md +0 -38
- package/docs/providers/qwen.md +0 -53
- package/docs/providers/synthetic.md +0 -99
- package/docs/providers/together.md +0 -65
- package/docs/providers/venice.md +0 -267
- package/docs/providers/vercel-ai-gateway.md +0 -50
- package/docs/providers/vllm.md +0 -92
- package/docs/providers/xiaomi.md +0 -64
- package/docs/providers/zai.md +0 -38
- package/docs/refactor/exec-host.md +0 -316
- package/docs/refactor/outbound-session-mirroring.md +0 -83
- package/docs/refactor/plugin-sdk.md +0 -214
- package/docs/refactor/strict-config.md +0 -93
- package/docs/refactor/syminet.md +0 -417
- package/docs/reference/AGENTS.default.md +0 -123
- package/docs/reference/RELEASING.md +0 -120
- package/docs/reference/api-usage-costs.md +0 -138
- package/docs/reference/credits.md +0 -28
- package/docs/reference/device-models.md +0 -47
- package/docs/reference/rpc.md +0 -43
- package/docs/reference/session-management-compaction.md +0 -284
- package/docs/reference/test.md +0 -51
- package/docs/reference/token-use.md +0 -136
- package/docs/reference/transcript-hygiene.md +0 -151
- package/docs/reference/wizard.md +0 -265
- package/docs/security/CONTRIBUTING-THREAT-MODEL.md +0 -89
- package/docs/security/README.md +0 -16
- package/docs/security/THREAT-MODEL-ATLAS.md +0 -600
- package/docs/security/formal-verification.md +0 -164
- package/docs/start/bootstrapping.md +0 -41
- package/docs/start/docs-directory.md +0 -63
- package/docs/start/getting-started.md +0 -135
- package/docs/start/hubs.md +0 -196
- package/docs/start/lore.md +0 -216
- package/docs/start/onboarding-overview.md +0 -51
- package/docs/start/onboarding.md +0 -81
- package/docs/start/quickstart.md +0 -22
- package/docs/start/setup.md +0 -160
- package/docs/start/showcase.md +0 -414
- package/docs/start/symi.md +0 -211
- package/docs/start/wizard-cli-automation.md +0 -158
- package/docs/start/wizard-cli-reference.md +0 -255
- package/docs/start/wizard.md +0 -109
- package/docs/style.css +0 -37
- package/docs/tools/agent-send.md +0 -52
- package/docs/tools/apply-patch.md +0 -51
- package/docs/tools/browser-linux-troubleshooting.md +0 -139
- package/docs/tools/browser-login.md +0 -67
- package/docs/tools/browser.md +0 -587
- package/docs/tools/chrome-extension.md +0 -183
- package/docs/tools/creating-skills.md +0 -54
- package/docs/tools/elevated.md +0 -55
- package/docs/tools/exec-approvals.md +0 -261
- package/docs/tools/exec.md +0 -184
- package/docs/tools/firecrawl.md +0 -61
- package/docs/tools/index.md +0 -540
- package/docs/tools/llm-task.md +0 -115
- package/docs/tools/loop-detection.md +0 -98
- package/docs/tools/multi-agent-sandbox-tools.md +0 -396
- package/docs/tools/pipeline.md +0 -340
- package/docs/tools/plugin.md +0 -687
- package/docs/tools/reactions.md +0 -21
- package/docs/tools/skills-config.md +0 -76
- package/docs/tools/skills.md +0 -300
- package/docs/tools/slash-commands.md +0 -202
- package/docs/tools/subagents.md +0 -232
- package/docs/tools/symihub.md +0 -256
- package/docs/tools/thinking.md +0 -75
- package/docs/tools/web.md +0 -265
- package/docs/tts.md +0 -398
- package/docs/vps.md +0 -43
- package/docs/web/control-ui.md +0 -247
- package/docs/web/dashboard.md +0 -46
- package/docs/web/index.md +0 -118
- package/docs/web/tui.md +0 -162
- package/docs/web/webchat.md +0 -53
- package/docs/whatsapp-symi-ai-zh.jpg +0 -0
- package/docs/whatsapp-symi.jpg +0 -0
- package/docs/zh-CN/AGENTS.md +0 -59
- package/docs/zh-CN/automation/auth-monitoring.md +0 -47
- package/docs/zh-CN/automation/cron-jobs.md +0 -422
- package/docs/zh-CN/automation/cron-vs-heartbeat.md +0 -286
- package/docs/zh-CN/automation/gmail-pubsub.md +0 -249
- package/docs/zh-CN/automation/hooks.md +0 -881
- package/docs/zh-CN/automation/poll.md +0 -68
- package/docs/zh-CN/automation/troubleshooting.md +0 -8
- package/docs/zh-CN/automation/webhook.md +0 -161
- package/docs/zh-CN/brave-search.md +0 -48
- package/docs/zh-CN/channels/bluebubbles.md +0 -271
- package/docs/zh-CN/channels/broadcast-groups.md +0 -448
- package/docs/zh-CN/channels/channel-routing.md +0 -112
- package/docs/zh-CN/channels/feishu.md +0 -629
- package/docs/zh-CN/channels/googlechat.md +0 -257
- package/docs/zh-CN/channels/grammy.md +0 -38
- package/docs/zh-CN/channels/group-messages.md +0 -89
- package/docs/zh-CN/channels/groups.md +0 -369
- package/docs/zh-CN/channels/imessage.md +0 -300
- package/docs/zh-CN/channels/index.md +0 -52
- package/docs/zh-CN/channels/line.md +0 -180
- package/docs/zh-CN/channels/location.md +0 -63
- package/docs/zh-CN/channels/matrix.md +0 -221
- package/docs/zh-CN/channels/mattermost.md +0 -144
- package/docs/zh-CN/channels/msteams.md +0 -773
- package/docs/zh-CN/channels/nextcloud-talk.md +0 -142
- package/docs/zh-CN/channels/nostr.md +0 -240
- package/docs/zh-CN/channels/pairing.md +0 -86
- package/docs/zh-CN/channels/signal.md +0 -207
- package/docs/zh-CN/channels/slack.md +0 -529
- package/docs/zh-CN/channels/telegram.md +0 -748
- package/docs/zh-CN/channels/tlon.md +0 -136
- package/docs/zh-CN/channels/troubleshooting.md +0 -34
- package/docs/zh-CN/channels/twitch.md +0 -385
- package/docs/zh-CN/channels/whatsapp.md +0 -411
- package/docs/zh-CN/channels/zalo.md +0 -196
- package/docs/zh-CN/channels/zalouser.md +0 -147
- package/docs/zh-CN/cli/acp.md +0 -173
- package/docs/zh-CN/cli/agent.md +0 -30
- package/docs/zh-CN/cli/agents.md +0 -82
- package/docs/zh-CN/cli/approvals.md +0 -57
- package/docs/zh-CN/cli/browser.md +0 -114
- package/docs/zh-CN/cli/channels.md +0 -80
- package/docs/zh-CN/cli/config.md +0 -57
- package/docs/zh-CN/cli/configure.md +0 -37
- package/docs/zh-CN/cli/cron.md +0 -43
- package/docs/zh-CN/cli/dashboard.md +0 -23
- package/docs/zh-CN/cli/devices.md +0 -74
- package/docs/zh-CN/cli/directory.md +0 -69
- package/docs/zh-CN/cli/dns.md +0 -30
- package/docs/zh-CN/cli/docs.md +0 -22
- package/docs/zh-CN/cli/doctor.md +0 -48
- package/docs/zh-CN/cli/gateway.md +0 -206
- package/docs/zh-CN/cli/health.md +0 -28
- package/docs/zh-CN/cli/hooks.md +0 -298
- package/docs/zh-CN/cli/index.md +0 -1025
- package/docs/zh-CN/cli/logs.md +0 -31
- package/docs/zh-CN/cli/memory.md +0 -52
- package/docs/zh-CN/cli/message.md +0 -205
- package/docs/zh-CN/cli/models.md +0 -85
- package/docs/zh-CN/cli/node.md +0 -115
- package/docs/zh-CN/cli/nodes.md +0 -80
- package/docs/zh-CN/cli/onboard.md +0 -36
- package/docs/zh-CN/cli/pairing.md +0 -28
- package/docs/zh-CN/cli/plugins.md +0 -66
- package/docs/zh-CN/cli/reset.md +0 -24
- package/docs/zh-CN/cli/sandbox.md +0 -158
- package/docs/zh-CN/cli/security.md +0 -33
- package/docs/zh-CN/cli/sessions.md +0 -23
- package/docs/zh-CN/cli/setup.md +0 -36
- package/docs/zh-CN/cli/skills.md +0 -33
- package/docs/zh-CN/cli/status.md +0 -32
- package/docs/zh-CN/cli/system.md +0 -63
- package/docs/zh-CN/cli/tui.md +0 -30
- package/docs/zh-CN/cli/uninstall.md +0 -24
- package/docs/zh-CN/cli/update.md +0 -101
- package/docs/zh-CN/cli/voicecall.md +0 -41
- package/docs/zh-CN/cli/webhooks.md +0 -32
- package/docs/zh-CN/concepts/agent-loop.md +0 -146
- package/docs/zh-CN/concepts/agent-workspace.md +0 -219
- package/docs/zh-CN/concepts/agent.md +0 -115
- package/docs/zh-CN/concepts/architecture.md +0 -122
- package/docs/zh-CN/concepts/compaction.md +0 -67
- package/docs/zh-CN/concepts/context.md +0 -168
- package/docs/zh-CN/concepts/features.md +0 -57
- package/docs/zh-CN/concepts/markdown-formatting.md +0 -115
- package/docs/zh-CN/concepts/memory.md +0 -412
- package/docs/zh-CN/concepts/messages.md +0 -140
- package/docs/zh-CN/concepts/model-failover.md +0 -145
- package/docs/zh-CN/concepts/model-providers.md +0 -320
- package/docs/zh-CN/concepts/models.md +0 -196
- package/docs/zh-CN/concepts/multi-agent.md +0 -371
- package/docs/zh-CN/concepts/oauth.md +0 -151
- package/docs/zh-CN/concepts/presence.md +0 -99
- package/docs/zh-CN/concepts/queue.md +0 -91
- package/docs/zh-CN/concepts/retry.md +0 -71
- package/docs/zh-CN/concepts/session-pruning.md +0 -129
- package/docs/zh-CN/concepts/session-tool.md +0 -198
- package/docs/zh-CN/concepts/session.md +0 -158
- package/docs/zh-CN/concepts/sessions.md +0 -17
- package/docs/zh-CN/concepts/streaming.md +0 -131
- package/docs/zh-CN/concepts/system-prompt.md +0 -99
- package/docs/zh-CN/concepts/timezone.md +0 -94
- package/docs/zh-CN/concepts/typebox.md +0 -284
- package/docs/zh-CN/concepts/typing-indicators.md +0 -74
- package/docs/zh-CN/concepts/usage-tracking.md +0 -42
- package/docs/zh-CN/date-time.md +0 -128
- package/docs/zh-CN/debug/node-issue.md +0 -90
- package/docs/zh-CN/diagnostics/flags.md +0 -98
- package/docs/zh-CN/experiments/onboarding-config-protocol.md +0 -47
- package/docs/zh-CN/experiments/plans/cron-add-hardening.md +0 -69
- package/docs/zh-CN/experiments/plans/group-policy-hardening.md +0 -45
- package/docs/zh-CN/experiments/plans/openresponses-gateway.md +0 -121
- package/docs/zh-CN/experiments/proposals/model-config.md +0 -42
- package/docs/zh-CN/experiments/research/memory.md +0 -235
- package/docs/zh-CN/gateway/authentication.md +0 -142
- package/docs/zh-CN/gateway/background-process.md +0 -100
- package/docs/zh-CN/gateway/bonjour.md +0 -174
- package/docs/zh-CN/gateway/bridge-protocol.md +0 -86
- package/docs/zh-CN/gateway/cli-backends.md +0 -213
- package/docs/zh-CN/gateway/configuration-examples.md +0 -580
- package/docs/zh-CN/gateway/configuration.md +0 -3284
- package/docs/zh-CN/gateway/discovery.md +0 -123
- package/docs/zh-CN/gateway/doctor.md +0 -238
- package/docs/zh-CN/gateway/gateway-lock.md +0 -41
- package/docs/zh-CN/gateway/health.md +0 -42
- package/docs/zh-CN/gateway/heartbeat.md +0 -272
- package/docs/zh-CN/gateway/index.md +0 -335
- package/docs/zh-CN/gateway/local-models.md +0 -157
- package/docs/zh-CN/gateway/logging.md +0 -114
- package/docs/zh-CN/gateway/multiple-gateways.md +0 -119
- package/docs/zh-CN/gateway/network-model.md +0 -23
- package/docs/zh-CN/gateway/openai-http-api.md +0 -125
- package/docs/zh-CN/gateway/openresponses-http-api.md +0 -317
- package/docs/zh-CN/gateway/pairing.md +0 -99
- package/docs/zh-CN/gateway/protocol.md +0 -220
- package/docs/zh-CN/gateway/remote-gateway-readme.md +0 -164
- package/docs/zh-CN/gateway/remote.md +0 -133
- package/docs/zh-CN/gateway/sandbox-vs-tool-policy-vs-elevated.md +0 -135
- package/docs/zh-CN/gateway/sandboxing.md +0 -188
- package/docs/zh-CN/gateway/security/index.md +0 -772
- package/docs/zh-CN/gateway/tailscale.md +0 -124
- package/docs/zh-CN/gateway/tools-invoke-http-api.md +0 -92
- package/docs/zh-CN/gateway/troubleshooting.md +0 -758
- package/docs/zh-CN/help/debugging.md +0 -160
- package/docs/zh-CN/help/environment.md +0 -88
- package/docs/zh-CN/help/faq.md +0 -2613
- package/docs/zh-CN/help/index.md +0 -28
- package/docs/zh-CN/help/scripts.md +0 -35
- package/docs/zh-CN/help/testing.md +0 -375
- package/docs/zh-CN/help/troubleshooting.md +0 -104
- package/docs/zh-CN/index.md +0 -183
- package/docs/zh-CN/install/ansible.md +0 -214
- package/docs/zh-CN/install/bun.md +0 -65
- package/docs/zh-CN/install/development-channels.md +0 -81
- package/docs/zh-CN/install/docker.md +0 -525
- package/docs/zh-CN/install/exe-dev.md +0 -127
- package/docs/zh-CN/install/fly.md +0 -476
- package/docs/zh-CN/install/gcp.md +0 -509
- package/docs/zh-CN/install/hetzner.md +0 -336
- package/docs/zh-CN/install/index.md +0 -193
- package/docs/zh-CN/install/installer.md +0 -128
- package/docs/zh-CN/install/macos-vm.md +0 -288
- package/docs/zh-CN/install/migrating.md +0 -199
- package/docs/zh-CN/install/nix.md +0 -99
- package/docs/zh-CN/install/node.md +0 -8
- package/docs/zh-CN/install/northflank.mdx +0 -56
- package/docs/zh-CN/install/railway.mdx +0 -102
- package/docs/zh-CN/install/render.mdx +0 -168
- package/docs/zh-CN/install/uninstall.md +0 -135
- package/docs/zh-CN/install/updating.md +0 -233
- package/docs/zh-CN/logging.md +0 -329
- package/docs/zh-CN/network.md +0 -59
- package/docs/zh-CN/nodes/audio.md +0 -120
- package/docs/zh-CN/nodes/camera.md +0 -162
- package/docs/zh-CN/nodes/images.md +0 -79
- package/docs/zh-CN/nodes/index.md +0 -348
- package/docs/zh-CN/nodes/location-command.md +0 -120
- package/docs/zh-CN/nodes/media-understanding.md +0 -380
- package/docs/zh-CN/nodes/talk.md +0 -97
- package/docs/zh-CN/nodes/troubleshooting.md +0 -8
- package/docs/zh-CN/nodes/voicewake.md +0 -72
- package/docs/zh-CN/perplexity.md +0 -84
- package/docs/zh-CN/pi-dev.md +0 -77
- package/docs/zh-CN/pi.md +0 -617
- package/docs/zh-CN/platforms/android.md +0 -155
- package/docs/zh-CN/platforms/digitalocean.md +0 -268
- package/docs/zh-CN/platforms/index.md +0 -60
- package/docs/zh-CN/platforms/ios.md +0 -114
- package/docs/zh-CN/platforms/linux.md +0 -101
- package/docs/zh-CN/platforms/mac/bundled-gateway.md +0 -75
- package/docs/zh-CN/platforms/mac/canvas.md +0 -128
- package/docs/zh-CN/platforms/mac/child-process.md +0 -73
- package/docs/zh-CN/platforms/mac/dev-setup.md +0 -109
- package/docs/zh-CN/platforms/mac/health.md +0 -41
- package/docs/zh-CN/platforms/mac/icon.md +0 -38
- package/docs/zh-CN/platforms/mac/logging.md +0 -64
- package/docs/zh-CN/platforms/mac/menu-bar.md +0 -88
- package/docs/zh-CN/platforms/mac/peekaboo.md +0 -62
- package/docs/zh-CN/platforms/mac/permissions.md +0 -46
- package/docs/zh-CN/platforms/mac/release.md +0 -92
- package/docs/zh-CN/platforms/mac/remote.md +0 -90
- package/docs/zh-CN/platforms/mac/signing.md +0 -54
- package/docs/zh-CN/platforms/mac/skills.md +0 -40
- package/docs/zh-CN/platforms/mac/voice-overlay.md +0 -67
- package/docs/zh-CN/platforms/mac/voicewake.md +0 -73
- package/docs/zh-CN/platforms/mac/webchat.md +0 -43
- package/docs/zh-CN/platforms/mac/xpc.md +0 -68
- package/docs/zh-CN/platforms/macos.md +0 -193
- package/docs/zh-CN/platforms/oracle.md +0 -310
- package/docs/zh-CN/platforms/raspberry-pi.md +0 -365
- package/docs/zh-CN/platforms/windows.md +0 -156
- package/docs/zh-CN/plugins/agent-tools.md +0 -99
- package/docs/zh-CN/plugins/manifest.md +0 -68
- package/docs/zh-CN/plugins/voice-call.md +0 -250
- package/docs/zh-CN/plugins/zalouser.md +0 -88
- package/docs/zh-CN/prose.md +0 -141
- package/docs/zh-CN/providers/anthropic.md +0 -159
- package/docs/zh-CN/providers/bedrock.md +0 -170
- package/docs/zh-CN/providers/claude-max-api-proxy.md +0 -155
- package/docs/zh-CN/providers/deepgram.md +0 -97
- package/docs/zh-CN/providers/github-copilot.md +0 -67
- package/docs/zh-CN/providers/glm.md +0 -39
- package/docs/zh-CN/providers/index.md +0 -66
- package/docs/zh-CN/providers/minimax.md +0 -206
- package/docs/zh-CN/providers/models.md +0 -55
- package/docs/zh-CN/providers/moonshot.md +0 -145
- package/docs/zh-CN/providers/ollama.md +0 -230
- package/docs/zh-CN/providers/openai.md +0 -68
- package/docs/zh-CN/providers/opencode.md +0 -41
- package/docs/zh-CN/providers/openrouter.md +0 -43
- package/docs/zh-CN/providers/qianfan.md +0 -8
- package/docs/zh-CN/providers/qwen.md +0 -55
- package/docs/zh-CN/providers/synthetic.md +0 -102
- package/docs/zh-CN/providers/venice.md +0 -274
- package/docs/zh-CN/providers/vercel-ai-gateway.md +0 -57
- package/docs/zh-CN/providers/xiaomi.md +0 -68
- package/docs/zh-CN/providers/zai.md +0 -41
- package/docs/zh-CN/refactor/exec-host.md +0 -323
- package/docs/zh-CN/refactor/outbound-session-mirroring.md +0 -90
- package/docs/zh-CN/refactor/plugin-sdk.md +0 -221
- package/docs/zh-CN/refactor/strict-config.md +0 -100
- package/docs/zh-CN/refactor/syminet.md +0 -424
- package/docs/zh-CN/reference/AGENTS.default.md +0 -130
- package/docs/zh-CN/reference/RELEASING.md +0 -122
- package/docs/zh-CN/reference/api-usage-costs.md +0 -136
- package/docs/zh-CN/reference/credits.md +0 -34
- package/docs/zh-CN/reference/device-models.md +0 -54
- package/docs/zh-CN/reference/rpc.md +0 -48
- package/docs/zh-CN/reference/session-management-compaction.md +0 -286
- package/docs/zh-CN/reference/templates/AGENTS.dev.md +0 -89
- package/docs/zh-CN/reference/templates/AGENTS.md +0 -234
- package/docs/zh-CN/reference/templates/BOOT.md +0 -17
- package/docs/zh-CN/reference/templates/BOOTSTRAP.md +0 -68
- package/docs/zh-CN/reference/templates/IDENTITY.dev.md +0 -54
- package/docs/zh-CN/reference/templates/IDENTITY.md +0 -36
- package/docs/zh-CN/reference/templates/SYMICORE.dev.md +0 -83
- package/docs/zh-CN/reference/templates/SYMICORE.md +0 -49
- package/docs/zh-CN/reference/templates/SYMIPULSE.md +0 -69
- package/docs/zh-CN/reference/templates/TOOLS.dev.md +0 -31
- package/docs/zh-CN/reference/templates/TOOLS.md +0 -53
- package/docs/zh-CN/reference/templates/USER.dev.md +0 -25
- package/docs/zh-CN/reference/templates/USER.md +0 -30
- package/docs/zh-CN/reference/test.md +0 -57
- package/docs/zh-CN/reference/token-use.md +0 -119
- package/docs/zh-CN/reference/transcript-hygiene.md +0 -109
- package/docs/zh-CN/reference/wizard.md +0 -9
- package/docs/zh-CN/security/formal-verification.md +0 -171
- package/docs/zh-CN/start/bootstrapping.md +0 -9
- package/docs/zh-CN/start/docs-directory.md +0 -69
- package/docs/zh-CN/start/getting-started.md +0 -201
- package/docs/zh-CN/start/hubs.md +0 -199
- package/docs/zh-CN/start/lore.md +0 -223
- package/docs/zh-CN/start/onboarding.md +0 -105
- package/docs/zh-CN/start/quickstart.md +0 -88
- package/docs/zh-CN/start/setup.md +0 -151
- package/docs/zh-CN/start/showcase.md +0 -421
- package/docs/zh-CN/start/symi.md +0 -244
- package/docs/zh-CN/start/wizard.md +0 -326
- package/docs/zh-CN/tools/agent-send.md +0 -58
- package/docs/zh-CN/tools/apply-patch.md +0 -57
- package/docs/zh-CN/tools/browser-linux-troubleshooting.md +0 -144
- package/docs/zh-CN/tools/browser-login.md +0 -75
- package/docs/zh-CN/tools/browser.md +0 -553
- package/docs/zh-CN/tools/chrome-extension.md +0 -183
- package/docs/zh-CN/tools/creating-skills.md +0 -61
- package/docs/zh-CN/tools/elevated.md +0 -62
- package/docs/zh-CN/tools/exec-approvals.md +0 -233
- package/docs/zh-CN/tools/exec.md +0 -169
- package/docs/zh-CN/tools/firecrawl.md +0 -68
- package/docs/zh-CN/tools/index.md +0 -508
- package/docs/zh-CN/tools/llm-task.md +0 -117
- package/docs/zh-CN/tools/multi-agent-sandbox-tools.md +0 -400
- package/docs/zh-CN/tools/pipeline.md +0 -349
- package/docs/zh-CN/tools/plugin.md +0 -639
- package/docs/zh-CN/tools/reactions.md +0 -28
- package/docs/zh-CN/tools/skills-config.md +0 -78
- package/docs/zh-CN/tools/skills.md +0 -279
- package/docs/zh-CN/tools/slash-commands.md +0 -196
- package/docs/zh-CN/tools/subagents.md +0 -167
- package/docs/zh-CN/tools/symihub.md +0 -209
- package/docs/zh-CN/tools/thinking.md +0 -80
- package/docs/zh-CN/tools/web.md +0 -257
- package/docs/zh-CN/tts.md +0 -373
- package/docs/zh-CN/vps.md +0 -47
- package/docs/zh-CN/web/control-ui.md +0 -190
- package/docs/zh-CN/web/dashboard.md +0 -53
- package/docs/zh-CN/web/index.md +0 -118
- package/docs/zh-CN/web/tui.md +0 -166
- package/docs/zh-CN/web/webchat.md +0 -56
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
read_when:
|
|
3
|
-
- 设计或实现配置验证行为
|
|
4
|
-
- 处理配置迁移或 doctor 工作流
|
|
5
|
-
- 处理插件配置 schema 或插件加载门控
|
|
6
|
-
summary: 严格配置验证 + 仅通过 doctor 进行迁移
|
|
7
|
-
title: 严格配置验证
|
|
8
|
-
x-i18n:
|
|
9
|
-
generated_at: "2026-02-03T10:08:51Z"
|
|
10
|
-
model: claude-opus-4-5
|
|
11
|
-
provider: pi
|
|
12
|
-
source_hash: 5bc7174a67d2234e763f21330d8fe3afebc23b2e5c728a04abcc648b453a91cc
|
|
13
|
-
source_path: refactor/strict-config.md
|
|
14
|
-
workflow: 15
|
|
15
|
-
---
|
|
16
|
-
|
|
17
|
-
# 严格配置验证(仅通过 doctor 进行迁移)
|
|
18
|
-
|
|
19
|
-
## 目标
|
|
20
|
-
|
|
21
|
-
- **在所有地方拒绝未知配置键**(根级 + 嵌套)。
|
|
22
|
-
- **拒绝没有 schema 的插件配置**;不加载该插件。
|
|
23
|
-
- **移除加载时的旧版自动迁移**;迁移仅通过 doctor 运行。
|
|
24
|
-
- **启动时自动运行 doctor(dry-run)**;如果无效,阻止非诊断命令。
|
|
25
|
-
|
|
26
|
-
## 非目标
|
|
27
|
-
|
|
28
|
-
- 加载时的向后兼容性(旧版键不会自动迁移)。
|
|
29
|
-
- 静默丢弃无法识别的键。
|
|
30
|
-
|
|
31
|
-
## 严格验证规则
|
|
32
|
-
|
|
33
|
-
- 配置必须在每个层级精确匹配 schema。
|
|
34
|
-
- 未知键是验证错误(根级或嵌套都不允许透传)。
|
|
35
|
-
- `plugins.entries.<id>.config` 必须由插件的 schema 验证。
|
|
36
|
-
- 如果插件缺少 schema,**拒绝插件加载**并显示清晰的错误。
|
|
37
|
-
- 未知的 `channels.<id>` 键是错误,除非插件清单声明了该渠道 id。
|
|
38
|
-
- 所有插件都需要插件清单(`symi.plugin.json`)。
|
|
39
|
-
|
|
40
|
-
## 插件 schema 强制执行
|
|
41
|
-
|
|
42
|
-
- 每个插件为其配置提供严格的 JSON Schema(内联在清单中)。
|
|
43
|
-
- 插件加载流程:
|
|
44
|
-
1. 解析插件清单 + schema(`symi.plugin.json`)。
|
|
45
|
-
2. 根据 schema 验证配置。
|
|
46
|
-
3. 如果缺少 schema 或配置无效:阻止插件加载,记录错误。
|
|
47
|
-
- 错误消息包括:
|
|
48
|
-
- 插件 id
|
|
49
|
-
- 原因(缺少 schema / 配置无效)
|
|
50
|
-
- 验证失败的路径
|
|
51
|
-
- 禁用的插件保留其配置,但 Doctor + 日志会显示警告。
|
|
52
|
-
|
|
53
|
-
## Doctor 流程
|
|
54
|
-
|
|
55
|
-
- 每次加载配置时都会运行 Doctor(默认 dry-run)。
|
|
56
|
-
- 如果配置无效:
|
|
57
|
-
- 打印摘要 + 可操作的错误。
|
|
58
|
-
- 指示:`symi doctor --fix`。
|
|
59
|
-
- `symi doctor --fix`:
|
|
60
|
-
- 应用迁移。
|
|
61
|
-
- 移除未知键。
|
|
62
|
-
- 写入更新后的配置。
|
|
63
|
-
|
|
64
|
-
## 命令门控(当配置无效时)
|
|
65
|
-
|
|
66
|
-
允许的命令(仅诊断):
|
|
67
|
-
|
|
68
|
-
- `symi doctor`
|
|
69
|
-
- `symi logs`
|
|
70
|
-
- `symi health`
|
|
71
|
-
- `symi help`
|
|
72
|
-
- `symi status`
|
|
73
|
-
- `symi gateway status`
|
|
74
|
-
|
|
75
|
-
其他所有命令必须硬失败并显示:"Config invalid. Run `symi doctor --fix`."
|
|
76
|
-
|
|
77
|
-
## 错误用户体验格式
|
|
78
|
-
|
|
79
|
-
- 单个摘要标题。
|
|
80
|
-
- 分组部分:
|
|
81
|
-
- 未知键(完整路径)
|
|
82
|
-
- 旧版键/需要迁移
|
|
83
|
-
- 插件加载失败(插件 id + 原因 + 路径)
|
|
84
|
-
|
|
85
|
-
## 实现接触点
|
|
86
|
-
|
|
87
|
-
- `src/config/zod-schema.ts`:移除根级透传;所有地方使用严格对象。
|
|
88
|
-
- `src/config/zod-schema.providers.ts`:确保严格的渠道 schema。
|
|
89
|
-
- `src/config/validation.ts`:未知键时失败;不应用旧版迁移。
|
|
90
|
-
- `src/config/io.ts`:移除旧版自动迁移;始终运行 doctor dry-run。
|
|
91
|
-
- `src/config/legacy*.ts`:将用法移至仅 doctor。
|
|
92
|
-
- `src/plugins/*`:添加 schema 注册表 + 门控。
|
|
93
|
-
- `src/cli` 中的 CLI 命令门控。
|
|
94
|
-
|
|
95
|
-
## 测试
|
|
96
|
-
|
|
97
|
-
- 未知键拒绝(根级 + 嵌套)。
|
|
98
|
-
- 插件缺少 schema → 插件加载被阻止并显示清晰错误。
|
|
99
|
-
- 无效配置 → Gateway 网关启动被阻止,诊断命令除外。
|
|
100
|
-
- Doctor dry-run 自动运行;`doctor --fix` 写入修正后的配置。
|
|
@@ -1,424 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
read_when:
|
|
3
|
-
- 规划节点 + 操作者客户端的统一网络协议
|
|
4
|
-
- 重新设计跨设备的审批、配对、TLS 和在线状态
|
|
5
|
-
summary: SymiNet 重构:统一网络协议、角色、认证、审批、身份
|
|
6
|
-
title: SymiNet 重构
|
|
7
|
-
x-i18n:
|
|
8
|
-
generated_at: "2026-02-03T07:55:03Z"
|
|
9
|
-
model: claude-opus-4-5
|
|
10
|
-
provider: pi
|
|
11
|
-
source_hash: 719b219c3b326479658fe6101c80d5273fc56eb3baf50be8535e0d1d2bb7987f
|
|
12
|
-
source_path: refactor/syminet.md
|
|
13
|
-
workflow: 15
|
|
14
|
-
---
|
|
15
|
-
|
|
16
|
-
# SymiNet 重构(协议 + 认证统一)
|
|
17
|
-
|
|
18
|
-
## 嗨
|
|
19
|
-
|
|
20
|
-
嗨 Peter — 方向很好;这将解锁更简单的用户体验 + 更强的安全性。
|
|
21
|
-
|
|
22
|
-
## 目的
|
|
23
|
-
|
|
24
|
-
单一、严谨的文档用于:
|
|
25
|
-
|
|
26
|
-
- 当前状态:协议、流程、信任边界。
|
|
27
|
-
- 痛点:审批、多跳路由、UI 重复。
|
|
28
|
-
- 提议的新状态:一个协议、作用域角色、统一的认证/配对、TLS 固定。
|
|
29
|
-
- 身份模型:稳定 ID + 可爱的别名。
|
|
30
|
-
- 迁移计划、风险、开放问题。
|
|
31
|
-
|
|
32
|
-
## 目标(来自讨论)
|
|
33
|
-
|
|
34
|
-
- 所有客户端使用一个协议(mac 应用、CLI、iOS、Android、无头节点)。
|
|
35
|
-
- 每个网络参与者都经过认证 + 配对。
|
|
36
|
-
- 角色清晰:节点 vs 操作者。
|
|
37
|
-
- 中央审批路由到用户所在位置。
|
|
38
|
-
- 所有远程流量使用 TLS 加密 + 可选固定。
|
|
39
|
-
- 最小化代码重复。
|
|
40
|
-
- 单台机器应该只显示一次(无 UI/节点重复条目)。
|
|
41
|
-
|
|
42
|
-
## 非目标(明确)
|
|
43
|
-
|
|
44
|
-
- 移除能力分离(仍需要最小权限)。
|
|
45
|
-
- 不经作用域检查就暴露完整的 Gateway 网关控制平面。
|
|
46
|
-
- 使认证依赖于人类标签(别名仍然是非安全性的)。
|
|
47
|
-
|
|
48
|
-
---
|
|
49
|
-
|
|
50
|
-
# 当前状态(现状)
|
|
51
|
-
|
|
52
|
-
## 两个协议
|
|
53
|
-
|
|
54
|
-
### 1) Gateway 网关 WebSocket(控制平面)
|
|
55
|
-
|
|
56
|
-
- 完整 API 表面:配置、渠道、模型、会话、智能体运行、日志、节点等。
|
|
57
|
-
- 默认绑定:loopback。通过 SSH/Tailscale 远程访问。
|
|
58
|
-
- 认证:通过 `connect` 的令牌/密码。
|
|
59
|
-
- 无 TLS 固定(依赖 loopback/隧道)。
|
|
60
|
-
- 代码:
|
|
61
|
-
- `src/gateway/server/ws-connection/message-handler.ts`
|
|
62
|
-
- `src/gateway/client.ts`
|
|
63
|
-
- `docs/gateway/protocol.md`
|
|
64
|
-
|
|
65
|
-
### 2) Bridge(节点传输)
|
|
66
|
-
|
|
67
|
-
- 窄允许列表表面,节点身份 + 配对。
|
|
68
|
-
- TCP 上的 JSONL;可选 TLS + 证书指纹固定。
|
|
69
|
-
- TLS 在设备发现 TXT 中公布指纹。
|
|
70
|
-
- 代码:
|
|
71
|
-
- `src/infra/bridge/server/connection.ts`
|
|
72
|
-
- `src/gateway/server-bridge.ts`
|
|
73
|
-
- `src/node-host/bridge-client.ts`
|
|
74
|
-
- `docs/gateway/bridge-protocol.md`
|
|
75
|
-
|
|
76
|
-
## 当前的控制平面客户端
|
|
77
|
-
|
|
78
|
-
- CLI → 通过 `callGateway`(`src/gateway/call.ts`)连接 Gateway 网关 WS。
|
|
79
|
-
- macOS 应用 UI → Gateway 网关 WS(`GatewayConnection`)。
|
|
80
|
-
- Web 控制 UI → Gateway 网关 WS。
|
|
81
|
-
- ACP → Gateway 网关 WS。
|
|
82
|
-
- 浏览器控制使用自己的 HTTP 控制服务器。
|
|
83
|
-
|
|
84
|
-
## 当前的节点
|
|
85
|
-
|
|
86
|
-
- macOS 应用在节点模式下连接到 Gateway 网关 bridge(`MacNodeBridgeSession`)。
|
|
87
|
-
- iOS/Android 应用连接到 Gateway 网关 bridge。
|
|
88
|
-
- 配对 + 每节点令牌存储在 Gateway 网关上。
|
|
89
|
-
|
|
90
|
-
## 当前审批流程(exec)
|
|
91
|
-
|
|
92
|
-
- 智能体通过 Gateway 网关使用 `system.run`。
|
|
93
|
-
- Gateway 网关通过 bridge 调用节点。
|
|
94
|
-
- 节点运行时决定审批。
|
|
95
|
-
- UI 提示由 mac 应用显示(当节点 == mac 应用时)。
|
|
96
|
-
- 节点向 Gateway 网关返回 `invoke-res`。
|
|
97
|
-
- 多跳,UI 绑定到节点主机。
|
|
98
|
-
|
|
99
|
-
## 当前的在线状态 + 身份
|
|
100
|
-
|
|
101
|
-
- 来自 WS 客户端的 Gateway 网关在线状态条目。
|
|
102
|
-
- 来自 bridge 的节点在线状态条目。
|
|
103
|
-
- mac 应用可能为同一台机器显示两个条目(UI + 节点)。
|
|
104
|
-
- 节点身份存储在配对存储中;UI 身份是分开的。
|
|
105
|
-
|
|
106
|
-
---
|
|
107
|
-
|
|
108
|
-
# 问题/痛点
|
|
109
|
-
|
|
110
|
-
- 需要维护两个协议栈(WS + Bridge)。
|
|
111
|
-
- 远程节点上的审批:提示出现在节点主机上,而不是用户所在位置。
|
|
112
|
-
- TLS 固定仅存在于 bridge;WS 依赖 SSH/Tailscale。
|
|
113
|
-
- 身份重复:同一台机器显示为多个实例。
|
|
114
|
-
- 角色模糊:UI + 节点 + CLI 能力没有明确分离。
|
|
115
|
-
|
|
116
|
-
---
|
|
117
|
-
|
|
118
|
-
# 提议的新状态(SymiNet)
|
|
119
|
-
|
|
120
|
-
## 一个协议,两个角色
|
|
121
|
-
|
|
122
|
-
带有角色 + 作用域的单一 WS 协议。
|
|
123
|
-
|
|
124
|
-
- **角色:node**(能力宿主)
|
|
125
|
-
- **角色:operator**(控制平面)
|
|
126
|
-
- 操作者的可选**作用域**:
|
|
127
|
-
- `operator.read`(状态 + 查看)
|
|
128
|
-
- `operator.write`(智能体运行、发送)
|
|
129
|
-
- `operator.admin`(配置、渠道、模型)
|
|
130
|
-
|
|
131
|
-
### 角色行为
|
|
132
|
-
|
|
133
|
-
**Node**
|
|
134
|
-
|
|
135
|
-
- 可以注册能力(`caps`、`commands`、permissions)。
|
|
136
|
-
- 可以接收 `invoke` 命令(`system.run`、`camera.*`、`canvas.*`、`screen.record` 等)。
|
|
137
|
-
- 可以发送事件:`voice.transcript`、`agent.request`、`chat.subscribe`。
|
|
138
|
-
- 不能调用配置/模型/渠道/会话/智能体控制平面 API。
|
|
139
|
-
|
|
140
|
-
**Operator**
|
|
141
|
-
|
|
142
|
-
- 完整控制平面 API,受作用域限制。
|
|
143
|
-
- 接收所有审批。
|
|
144
|
-
- 不直接执行 OS 操作;路由到节点。
|
|
145
|
-
|
|
146
|
-
### 关键规则
|
|
147
|
-
|
|
148
|
-
角色是按连接的,不是按设备。一个设备可以分别打开两个角色。
|
|
149
|
-
|
|
150
|
-
---
|
|
151
|
-
|
|
152
|
-
# 统一认证 + 配对
|
|
153
|
-
|
|
154
|
-
## 客户端身份
|
|
155
|
-
|
|
156
|
-
每个客户端提供:
|
|
157
|
-
|
|
158
|
-
- `deviceId`(稳定的,从设备密钥派生)。
|
|
159
|
-
- `displayName`(人类名称)。
|
|
160
|
-
- `role` + `scope` + `caps` + `commands`。
|
|
161
|
-
|
|
162
|
-
## 配对流程(统一)
|
|
163
|
-
|
|
164
|
-
- 客户端未认证连接。
|
|
165
|
-
- Gateway 网关为该 `deviceId` 创建**配对请求**。
|
|
166
|
-
- 操作者收到提示;批准/拒绝。
|
|
167
|
-
- Gateway 网关颁发绑定到以下内容的凭证:
|
|
168
|
-
- 设备公钥
|
|
169
|
-
- 角色
|
|
170
|
-
- 作用域
|
|
171
|
-
- 能力/命令
|
|
172
|
-
- 客户端持久化令牌,重新认证连接。
|
|
173
|
-
|
|
174
|
-
## 设备绑定认证(避免 bearer 令牌重放)
|
|
175
|
-
|
|
176
|
-
首选:设备密钥对。
|
|
177
|
-
|
|
178
|
-
- 设备一次性生成密钥对。
|
|
179
|
-
- `deviceId = fingerprint(publicKey)`。
|
|
180
|
-
- Gateway 网关发送 nonce;设备签名;Gateway 网关验证。
|
|
181
|
-
- 令牌颁发给公钥(所有权证明),而不是字符串。
|
|
182
|
-
|
|
183
|
-
替代方案:
|
|
184
|
-
|
|
185
|
-
- mTLS(客户端证书):最强,运维复杂度更高。
|
|
186
|
-
- 短期 bearer 令牌仅作为临时阶段(早期轮换 + 撤销)。
|
|
187
|
-
|
|
188
|
-
## 静默批准(SSH 启发式)
|
|
189
|
-
|
|
190
|
-
精确定义以避免薄弱环节。优选其一:
|
|
191
|
-
|
|
192
|
-
- **仅限本地**:当客户端通过 loopback/Unix socket 连接时自动配对。
|
|
193
|
-
- **通过 SSH 质询**:Gateway 网关颁发 nonce;客户端通过获取它来证明 SSH。
|
|
194
|
-
- **物理存在窗口**:在 Gateway 网关主机 UI 上本地批准后,允许在短窗口内(例如 10 分钟)自动配对。
|
|
195
|
-
|
|
196
|
-
始终记录 + 记录自动批准。
|
|
197
|
-
|
|
198
|
-
---
|
|
199
|
-
|
|
200
|
-
# TLS 无处不在(开发 + 生产)
|
|
201
|
-
|
|
202
|
-
## 复用现有 bridge TLS
|
|
203
|
-
|
|
204
|
-
使用当前 TLS 运行时 + 指纹固定:
|
|
205
|
-
|
|
206
|
-
- `src/infra/bridge/server/tls.ts`
|
|
207
|
-
- `src/node-host/bridge-client.ts` 中的指纹验证逻辑
|
|
208
|
-
|
|
209
|
-
## 应用于 WS
|
|
210
|
-
|
|
211
|
-
- WS 服务器使用相同的证书/密钥 + 指纹支持 TLS。
|
|
212
|
-
- WS 客户端可以固定指纹(可选)。
|
|
213
|
-
- 设备发现为所有端点公布 TLS + 指纹。
|
|
214
|
-
- 设备发现仅是定位器提示;永远不是信任锚。
|
|
215
|
-
|
|
216
|
-
## 为什么
|
|
217
|
-
|
|
218
|
-
- 减少对 SSH/Tailscale 的机密性依赖。
|
|
219
|
-
- 默认情况下使远程移动连接安全。
|
|
220
|
-
|
|
221
|
-
---
|
|
222
|
-
|
|
223
|
-
# 审批重新设计(集中化)
|
|
224
|
-
|
|
225
|
-
## 当前
|
|
226
|
-
|
|
227
|
-
审批发生在节点主机上(mac 应用节点运行时)。提示出现在节点运行的地方。
|
|
228
|
-
|
|
229
|
-
## 提议
|
|
230
|
-
|
|
231
|
-
审批是 **Gateway 网关托管的**,UI 传递给操作者客户端。
|
|
232
|
-
|
|
233
|
-
### 新流程
|
|
234
|
-
|
|
235
|
-
1. Gateway 网关接收 `system.run` 意图(智能体)。
|
|
236
|
-
2. Gateway 网关创建审批记录:`approval.requested`。
|
|
237
|
-
3. 操作者 UI 显示提示。
|
|
238
|
-
4. 审批决定发送到 Gateway 网关:`approval.resolve`。
|
|
239
|
-
5. 如果批准,Gateway 网关调用节点命令。
|
|
240
|
-
6. 节点执行,返回 `invoke-res`。
|
|
241
|
-
|
|
242
|
-
### 审批语义(加固)
|
|
243
|
-
|
|
244
|
-
- 广播到所有操作者;只有活跃的 UI 显示模态框(其他显示 toast)。
|
|
245
|
-
- 先解决者获胜;Gateway 网关拒绝后续解决为已结算。
|
|
246
|
-
- 默认超时:N 秒后拒绝(例如 60 秒),记录原因。
|
|
247
|
-
- 解决需要 `operator.approvals` 作用域。
|
|
248
|
-
|
|
249
|
-
## 好处
|
|
250
|
-
|
|
251
|
-
- 提示出现在用户所在位置(mac/手机)。
|
|
252
|
-
- 远程节点的一致审批。
|
|
253
|
-
- 节点运行时保持无头;无 UI 依赖。
|
|
254
|
-
|
|
255
|
-
---
|
|
256
|
-
|
|
257
|
-
# 角色清晰示例
|
|
258
|
-
|
|
259
|
-
## iPhone 应用
|
|
260
|
-
|
|
261
|
-
- **Node 角色**用于:麦克风、相机、语音聊天、位置、一键通话。
|
|
262
|
-
- 可选的 **operator.read** 用于状态和聊天视图。
|
|
263
|
-
- 可选的 **operator.write/admin** 仅在明确启用时。
|
|
264
|
-
|
|
265
|
-
## macOS 应用
|
|
266
|
-
|
|
267
|
-
- 默认是 Operator 角色(控制 UI)。
|
|
268
|
-
- 启用"Mac 节点"时是 Node 角色(system.run、屏幕、相机)。
|
|
269
|
-
- 两个连接使用相同的 deviceId → 合并的 UI 条目。
|
|
270
|
-
|
|
271
|
-
## CLI
|
|
272
|
-
|
|
273
|
-
- 始终是 Operator 角色。
|
|
274
|
-
- 作用域按子命令派生:
|
|
275
|
-
- `status`、`logs` → read
|
|
276
|
-
- `agent`、`message` → write
|
|
277
|
-
- `config`、`channels` → admin
|
|
278
|
-
- 审批 + 配对 → `operator.approvals` / `operator.pairing`
|
|
279
|
-
|
|
280
|
-
---
|
|
281
|
-
|
|
282
|
-
# 身份 + 别名
|
|
283
|
-
|
|
284
|
-
## 稳定 ID
|
|
285
|
-
|
|
286
|
-
认证必需;永不改变。
|
|
287
|
-
首选:
|
|
288
|
-
|
|
289
|
-
- 密钥对指纹(公钥哈希)。
|
|
290
|
-
|
|
291
|
-
## 可爱别名(龙虾主题)
|
|
292
|
-
|
|
293
|
-
仅人类标签。
|
|
294
|
-
|
|
295
|
-
- 示例:`scarlet-shell`、`saltwave`、`mantis-pinch`。
|
|
296
|
-
- 存储在 Gateway 网关注册表中,可编辑。
|
|
297
|
-
- 冲突处理:`-2`、`-3`。
|
|
298
|
-
|
|
299
|
-
## UI 分组
|
|
300
|
-
|
|
301
|
-
跨角色的相同 `deviceId` → 单个"实例"行:
|
|
302
|
-
|
|
303
|
-
- 徽章:`operator`、`node`。
|
|
304
|
-
- 显示能力 + 最后在线。
|
|
305
|
-
|
|
306
|
-
---
|
|
307
|
-
|
|
308
|
-
# 迁移策略
|
|
309
|
-
|
|
310
|
-
## 阶段 0:记录 + 对齐
|
|
311
|
-
|
|
312
|
-
- 发布此文档。
|
|
313
|
-
- 盘点所有协议调用 + 审批流程。
|
|
314
|
-
|
|
315
|
-
## 阶段 1:向 WS 添加角色/作用域
|
|
316
|
-
|
|
317
|
-
- 用 `role`、`scope`、`deviceId` 扩展 `connect` 参数。
|
|
318
|
-
- 为 node 角色添加允许列表限制。
|
|
319
|
-
|
|
320
|
-
## 阶段 2:Bridge 兼容性
|
|
321
|
-
|
|
322
|
-
- 保持 bridge 运行。
|
|
323
|
-
- 并行添加 WS node 支持。
|
|
324
|
-
- 通过配置标志限制功能。
|
|
325
|
-
|
|
326
|
-
## 阶段 3:中央审批
|
|
327
|
-
|
|
328
|
-
- 在 WS 中添加审批请求 + 解决事件。
|
|
329
|
-
- 更新 mac 应用 UI 以提示 + 响应。
|
|
330
|
-
- 节点运行时停止提示 UI。
|
|
331
|
-
|
|
332
|
-
## 阶段 4:TLS 统一
|
|
333
|
-
|
|
334
|
-
- 使用 bridge TLS 运行时为 WS 添加 TLS 配置。
|
|
335
|
-
- 向客户端添加固定。
|
|
336
|
-
|
|
337
|
-
## 阶段 5:弃用 bridge
|
|
338
|
-
|
|
339
|
-
- 将 iOS/Android/mac 节点迁移到 WS。
|
|
340
|
-
- 保持 bridge 作为后备;稳定后移除。
|
|
341
|
-
|
|
342
|
-
## 阶段 6:设备绑定认证
|
|
343
|
-
|
|
344
|
-
- 所有非本地连接都需要基于密钥的身份。
|
|
345
|
-
- 添加撤销 + 轮换 UI。
|
|
346
|
-
|
|
347
|
-
---
|
|
348
|
-
|
|
349
|
-
# 安全说明
|
|
350
|
-
|
|
351
|
-
- 角色/允许列表在 Gateway 网关边界强制执行。
|
|
352
|
-
- 没有客户端可以在没有 operator 作用域的情况下获得"完整"API。
|
|
353
|
-
- *所有*连接都需要配对。
|
|
354
|
-
- TLS + 固定减少移动设备的 MITM 风险。
|
|
355
|
-
- SSH 静默批准是便利措施;仍然记录 + 可撤销。
|
|
356
|
-
- 设备发现永远不是信任锚。
|
|
357
|
-
- 能力声明通过按平台/类型的服务器允许列表验证。
|
|
358
|
-
|
|
359
|
-
# 流式传输 + 大型负载(节点媒体)
|
|
360
|
-
|
|
361
|
-
WS 控制平面对于小消息没问题,但节点还做:
|
|
362
|
-
|
|
363
|
-
- 相机剪辑
|
|
364
|
-
- 屏幕录制
|
|
365
|
-
- 音频流
|
|
366
|
-
|
|
367
|
-
选项:
|
|
368
|
-
|
|
369
|
-
1. WS 二进制帧 + 分块 + 背压规则。
|
|
370
|
-
2. 单独的流式端点(仍然是 TLS + 认证)。
|
|
371
|
-
3. 对于媒体密集型命令保持 bridge 更长时间,最后迁移。
|
|
372
|
-
|
|
373
|
-
在实现前选择一个以避免漂移。
|
|
374
|
-
|
|
375
|
-
# 能力 + 命令策略
|
|
376
|
-
|
|
377
|
-
- 节点报告的 caps/commands 被视为**声明**。
|
|
378
|
-
- Gateway 网关强制执行每平台允许列表。
|
|
379
|
-
- 任何新命令都需要操作者批准或显式允许列表更改。
|
|
380
|
-
- 用时间戳审计更改。
|
|
381
|
-
|
|
382
|
-
# 审计 + 速率限制
|
|
383
|
-
|
|
384
|
-
- 记录:配对请求、批准/拒绝、令牌颁发/轮换/撤销。
|
|
385
|
-
- 速率限制配对垃圾和审批提示。
|
|
386
|
-
|
|
387
|
-
# 协议卫生
|
|
388
|
-
|
|
389
|
-
- 显式协议版本 + 错误代码。
|
|
390
|
-
- 重连规则 + 心跳策略。
|
|
391
|
-
- 在线状态 TTL 和最后在线语义。
|
|
392
|
-
|
|
393
|
-
---
|
|
394
|
-
|
|
395
|
-
# 开放问题
|
|
396
|
-
|
|
397
|
-
1. 同时运行两个角色的单个设备:令牌模型
|
|
398
|
-
- 建议每个角色单独的令牌(node vs operator)。
|
|
399
|
-
- 相同的 deviceId;不同的作用域;更清晰的撤销。
|
|
400
|
-
|
|
401
|
-
2. 操作者作用域粒度
|
|
402
|
-
- read/write/admin + approvals + pairing(最小可行)。
|
|
403
|
-
- 以后考虑每功能作用域。
|
|
404
|
-
|
|
405
|
-
3. 令牌轮换 + 撤销 UX
|
|
406
|
-
- 角色更改时自动轮换。
|
|
407
|
-
- 按 deviceId + 角色撤销的 UI。
|
|
408
|
-
|
|
409
|
-
4. 设备发现
|
|
410
|
-
- 扩展当前 Bonjour TXT 以包含 WS TLS 指纹 + 角色提示。
|
|
411
|
-
- 仅作为定位器提示处理。
|
|
412
|
-
|
|
413
|
-
5. 跨网络审批
|
|
414
|
-
- 广播到所有操作者客户端;活跃的 UI 显示模态框。
|
|
415
|
-
- 先响应者获胜;Gateway 网关强制原子性。
|
|
416
|
-
|
|
417
|
-
---
|
|
418
|
-
|
|
419
|
-
# 总结(TL;DR)
|
|
420
|
-
|
|
421
|
-
- 当前:WS 控制平面 + Bridge 节点传输。
|
|
422
|
-
- 痛点:审批 + 重复 + 两个栈。
|
|
423
|
-
- 提议:一个带有显式角色 + 作用域的 WS 协议,统一配对 + TLS 固定,Gateway 网关托管的审批,稳定设备 ID + 可爱别名。
|
|
424
|
-
- 结果:更简单的 UX,更强的安全性,更少的重复,更好的移动路由。
|
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
read_when:
|
|
3
|
-
- 启动新的 Symi 智能体会话
|
|
4
|
-
- 启用或审计默认 Skills
|
|
5
|
-
summary: 个人助手设置的默认 Symi 智能体指令和 Skills 列表
|
|
6
|
-
x-i18n:
|
|
7
|
-
generated_at: "2026-02-03T10:09:19Z"
|
|
8
|
-
model: claude-opus-4-5
|
|
9
|
-
provider: pi
|
|
10
|
-
source_hash: 20ec2b8d8fc03c16bbf0a75f011092e86382ca4182e8c0a4bc5f8ffd2be9c647
|
|
11
|
-
source_path: reference/AGENTS.default.md
|
|
12
|
-
workflow: 15
|
|
13
|
-
---
|
|
14
|
-
|
|
15
|
-
# AGENTS.md — Symi 个人助手(默认)
|
|
16
|
-
|
|
17
|
-
## 首次运行(推荐)
|
|
18
|
-
|
|
19
|
-
Symi 为智能体使用专用的工作区目录。默认:`~/.symi/workspace`(可通过 `agents.defaults.workspace` 配置)。
|
|
20
|
-
|
|
21
|
-
1. 创建工作区(如果尚不存在):
|
|
22
|
-
|
|
23
|
-
```bash
|
|
24
|
-
mkdir -p ~/.symi/workspace
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
2. 将默认工作区模板复制到工作区:
|
|
28
|
-
|
|
29
|
-
```bash
|
|
30
|
-
cp docs/reference/templates/AGENTS.md ~/.symi/workspace/AGENTS.md
|
|
31
|
-
cp docs/reference/templates/SYMICORE.md ~/.symi/workspace/SYMICORE.md
|
|
32
|
-
cp docs/reference/templates/TOOLS.md ~/.symi/workspace/TOOLS.md
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
3. 可选:如果你想要个人助手 Skills 列表,用此文件替换 AGENTS.md:
|
|
36
|
-
|
|
37
|
-
```bash
|
|
38
|
-
cp docs/reference/AGENTS.default.md ~/.symi/workspace/AGENTS.md
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
4. 可选:通过设置 `agents.defaults.workspace` 选择不同的工作区(支持 `~`):
|
|
42
|
-
|
|
43
|
-
```json5
|
|
44
|
-
{
|
|
45
|
-
agents: { defaults: { workspace: "~/.symi/workspace" } },
|
|
46
|
-
}
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
## 安全默认值
|
|
50
|
-
|
|
51
|
-
- 不要将目录或密钥转储到聊天中。
|
|
52
|
-
- 除非明确要求,否则不要运行破坏性命令。
|
|
53
|
-
- 不要向外部消息界面发送部分/流式回复(仅发送最终回复)。
|
|
54
|
-
|
|
55
|
-
## 会话开始(必需)
|
|
56
|
-
|
|
57
|
-
- 读取 `SYMICORE.md`、`USER.md`、`memory.md`,以及 `memory/` 中的今天和昨天的文件。
|
|
58
|
-
- 在回复之前完成此操作。
|
|
59
|
-
|
|
60
|
-
## Soul(必需)
|
|
61
|
-
|
|
62
|
-
- `SYMICORE.md` 定义身份、语气和边界。保持其更新。
|
|
63
|
-
- 如果你更改了 `SYMICORE.md`,告知用户。
|
|
64
|
-
- 你是每个会话的新实例;连续性存在于这些文件中。
|
|
65
|
-
|
|
66
|
-
## 共享空间(推荐)
|
|
67
|
-
|
|
68
|
-
- 你不是用户的代言人;在群聊或公共频道中要小心。
|
|
69
|
-
- 不要分享私人数据、联系信息或内部笔记。
|
|
70
|
-
|
|
71
|
-
## 记忆系统(推荐)
|
|
72
|
-
|
|
73
|
-
- 每日日志:`memory/YYYY-MM-DD.md`(如需要请创建 `memory/`)。
|
|
74
|
-
- 长期记忆:`memory.md` 用于持久的事实、偏好和决定。
|
|
75
|
-
- 会话开始时,读取今天 + 昨天 + `memory.md`(如果存在)。
|
|
76
|
-
- 捕获:决定、偏好、约束、待办事项。
|
|
77
|
-
- 除非明确要求,否则避免存储密钥。
|
|
78
|
-
|
|
79
|
-
## 工具和 Skills
|
|
80
|
-
|
|
81
|
-
- 工具存在于 Skills 中;需要时遵循每个 Skill 的 `SKILL.md`。
|
|
82
|
-
- 在 `TOOLS.md` 中保存环境特定的笔记(Skills 注意事项)。
|
|
83
|
-
|
|
84
|
-
## 备份提示(推荐)
|
|
85
|
-
|
|
86
|
-
如果你将此工作区视为 Symi 的"记忆",请将其设为 git 仓库(最好是私有的),这样 `AGENTS.md` 和你的记忆文件就会被备份。
|
|
87
|
-
|
|
88
|
-
```bash
|
|
89
|
-
cd ~/.symi/workspace
|
|
90
|
-
git init
|
|
91
|
-
git add AGENTS.md
|
|
92
|
-
git commit -m "Add Symi workspace"
|
|
93
|
-
# 可选:添加私有远程仓库 + push
|
|
94
|
-
```
|
|
95
|
-
|
|
96
|
-
## Symi 的功能
|
|
97
|
-
|
|
98
|
-
- 运行 WhatsApp Gateway 网关 + Pi 编程智能体,使助手可以读写聊天、获取上下文,并通过主机 Mac 运行 Skills。
|
|
99
|
-
- macOS 应用管理权限(屏幕录制、通知、麦克风)并通过其内置二进制文件暴露 `symi` CLI。
|
|
100
|
-
- 私聊默认折叠到智能体的 `main` 会话;群组保持隔离为 `agent:<agentId>:<channel>:group:<id>`(房间/频道:`agent:<agentId>:<channel>:channel:<id>`);心跳保持后台任务存活。
|
|
101
|
-
|
|
102
|
-
## 核心 Skills(在设置 → Skills 中启用)
|
|
103
|
-
|
|
104
|
-
- **mcporter** — 用于管理外部 Skill 后端的工具服务器运行时/CLI。
|
|
105
|
-
- **Peekaboo** — 快速 macOS 截图,可选 AI 视觉分析。
|
|
106
|
-
- **camsnap** — 从 RTSP/ONVIF 安防摄像头捕获帧、片段或运动警报。
|
|
107
|
-
- **oracle** — 支持 OpenAI 的智能体 CLI,具有会话回放和浏览器控制。
|
|
108
|
-
- **eightctl** — 从终端控制你的睡眠。
|
|
109
|
-
- **imsg** — 发送、读取、流式传输 iMessage 和短信。
|
|
110
|
-
- **wacli** — WhatsApp CLI:同步、搜索、发送。
|
|
111
|
-
- **gog** — Google Suite CLI:Gmail、日历、云端硬盘、通讯录。
|
|
112
|
-
- **spotify-player** — 终端 Spotify 客户端,用于搜索/排队/控制播放。
|
|
113
|
-
- **sag** — 具有 mac 风格 say UX 的 ElevenLabs 语音;默认流式输出到扬声器。
|
|
114
|
-
- **Sonos CLI** — 从脚本控制 Sonos 扬声器(发现/状态/播放/音量/分组)。
|
|
115
|
-
- **blucli** — 从脚本播放、分组和自动化 BluOS 播放器。
|
|
116
|
-
- **OpenHue CLI** — 用于场景和自动化的 Philips Hue 照明控制。
|
|
117
|
-
- **OpenAI Whisper** — 本地语音转文字,用于快速听写和语音邮件转录。
|
|
118
|
-
- **Gemini CLI** — 从终端使用 Google Gemini 模型进行快速问答。
|
|
119
|
-
- **bird** — X/Twitter CLI,无需浏览器即可发推、回复、阅读话题和搜索。
|
|
120
|
-
- **agent-tools** — 用于自动化和辅助脚本的实用工具包。
|
|
121
|
-
|
|
122
|
-
## 使用说明
|
|
123
|
-
|
|
124
|
-
- 脚本编写优先使用 `symi` CLI;mac 应用处理权限。
|
|
125
|
-
- 从 Skills 标签页运行安装;如果二进制文件已存在,它会隐藏按钮。
|
|
126
|
-
- 保持心跳启用,以便助手可以安排提醒、监控收件箱和触发摄像头捕获。
|
|
127
|
-
- Canvas UI 以全屏运行并带有原生叠加层。避免在左上/右上/底部边缘放置关键控件;在布局中添加显式边距,不要依赖安全区域内边距。
|
|
128
|
-
- 对于浏览器驱动的验证,使用带有 Symi 管理的 Chrome 配置文件的 `symi browser`(tabs/status/screenshot)。
|
|
129
|
-
- 对于 DOM 检查,使用 `symi browser eval|query|dom|snapshot`(需要机器输出时使用 `--json`/`--out`)。
|
|
130
|
-
- 对于交互,使用 `symi browser click|type|hover|drag|select|upload|press|wait|navigate|back|evaluate|run`(click/type 需要 snapshot 引用;CSS 选择器使用 `evaluate`)。
|