@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.
- package/dist/{audio-preflight-BaCdNfrk.js → audio-preflight-D7BVT-ls.js} +4 -4
- package/dist/build-info.json +3 -3
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{chrome-UfmVM0xR.js → chrome-B5CO2vB5.js} +7 -7
- package/dist/{deliver-BqXdac6W.js → deliver-CrwjsDwv.js} +1 -1
- package/dist/extensionAPI.js +7 -7
- package/dist/{image-DIWsXYcW.js → image-Csu7WcLW.js} +1 -1
- package/dist/{manager-DW3SxcPr.js → manager-BkkVjTO8.js} +1 -1
- package/dist/{pi-embedded-BNch0U5F.js → pi-embedded-Dhp64z5l.js} +16 -16
- package/dist/{pi-embedded-helpers-IkHl02JF.js → pi-embedded-helpers-840E4hop.js} +4 -4
- package/dist/{pw-ai-nMkA-oDJ.js → pw-ai-CBgJf_RR.js} +1 -1
- package/dist/{runner-DNEC58JI.js → runner-BbFKo1ne.js} +1 -1
- package/dist/{synthesis-BWAr0sZ9.js → synthesis-DoEM0E8_.js} +7 -7
- package/dist/{web-7a-m_UxL.js → web-BYXJn-Ps.js} +7 -7
- 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
- package/extensions/imessage/index.ts +0 -17
- package/extensions/imessage/node_modules/.bin/symi +0 -21
- package/extensions/imessage/package.json +0 -15
- package/extensions/imessage/src/channel.outbound.test.ts +0 -66
- package/extensions/imessage/src/channel.ts +0 -298
- package/extensions/imessage/src/runtime.ts +0 -14
- package/extensions/imessage/symi.plugin.json +0 -9
- package/extensions/line/index.ts +0 -19
- package/extensions/line/node_modules/.bin/symi +0 -21
- package/extensions/line/package.json +0 -30
- package/extensions/line/src/card-command.ts +0 -344
- package/extensions/line/src/channel.logout.test.ts +0 -133
- package/extensions/line/src/channel.sendPayload.test.ts +0 -312
- package/extensions/line/src/channel.startup.test.ts +0 -133
- package/extensions/line/src/channel.ts +0 -801
- package/extensions/line/src/runtime.ts +0 -14
- package/extensions/line/symi.plugin.json +0 -9
- package/extensions/signal/index.ts +0 -17
- package/extensions/signal/node_modules/.bin/symi +0 -21
- package/extensions/signal/package.json +0 -15
- package/extensions/signal/src/channel.ts +0 -302
- package/extensions/signal/src/runtime.ts +0 -14
- package/extensions/signal/symi.plugin.json +0 -9
- package/extensions/telegram/index.ts +0 -17
- package/extensions/telegram/node_modules/.bin/symi +0 -21
- package/extensions/telegram/package.json +0 -15
- package/extensions/telegram/src/channel.test.ts +0 -125
- package/extensions/telegram/src/channel.ts +0 -560
- package/extensions/telegram/src/runtime.ts +0 -14
- package/extensions/telegram/symi.plugin.json +0 -9
- package/extensions/whatsapp/index.ts +0 -17
- package/extensions/whatsapp/node_modules/.bin/symi +0 -21
- package/extensions/whatsapp/package.json +0 -15
- package/extensions/whatsapp/src/channel.ts +0 -465
- package/extensions/whatsapp/src/resolve-target.test.ts +0 -170
- package/extensions/whatsapp/src/runtime.ts +0 -14
- package/extensions/whatsapp/symi.plugin.json +0 -9
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
summary: "Skills config schema and examples"
|
|
3
|
-
read_when:
|
|
4
|
-
- Adding or modifying skills config
|
|
5
|
-
- Adjusting bundled allowlist or install behavior
|
|
6
|
-
title: "Skills Config"
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
# Skills Config
|
|
10
|
-
|
|
11
|
-
All skills-related configuration lives under `skills` in `~/.symi/symi.json`.
|
|
12
|
-
|
|
13
|
-
```json5
|
|
14
|
-
{
|
|
15
|
-
skills: {
|
|
16
|
-
allowBundled: ["gemini", "peekaboo"],
|
|
17
|
-
load: {
|
|
18
|
-
extraDirs: ["~/Projects/agent-scripts/skills", "~/Projects/oss/some-skill-pack/skills"],
|
|
19
|
-
watch: true,
|
|
20
|
-
watchDebounceMs: 250,
|
|
21
|
-
},
|
|
22
|
-
install: {
|
|
23
|
-
preferBrew: true,
|
|
24
|
-
nodeManager: "npm", // npm | pnpm | yarn | bun (Gateway runtime still Node; bun not recommended)
|
|
25
|
-
},
|
|
26
|
-
entries: {
|
|
27
|
-
"nano-banana-pro": {
|
|
28
|
-
enabled: true,
|
|
29
|
-
apiKey: "GEMINI_KEY_HERE",
|
|
30
|
-
env: {
|
|
31
|
-
GEMINI_API_KEY: "GEMINI_KEY_HERE",
|
|
32
|
-
},
|
|
33
|
-
},
|
|
34
|
-
peekaboo: { enabled: true },
|
|
35
|
-
sag: { enabled: false },
|
|
36
|
-
},
|
|
37
|
-
},
|
|
38
|
-
}
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
## Fields
|
|
42
|
-
|
|
43
|
-
- `allowBundled`: optional allowlist for **bundled** skills only. When set, only
|
|
44
|
-
bundled skills in the list are eligible (managed/workspace skills unaffected).
|
|
45
|
-
- `load.extraDirs`: additional skill directories to scan (lowest precedence).
|
|
46
|
-
- `load.watch`: watch skill folders and refresh the skills snapshot (default: true).
|
|
47
|
-
- `load.watchDebounceMs`: debounce for skill watcher events in milliseconds (default: 250).
|
|
48
|
-
- `install.preferBrew`: prefer brew installers when available (default: true).
|
|
49
|
-
- `install.nodeManager`: node installer preference (`npm` | `pnpm` | `yarn` | `bun`, default: npm).
|
|
50
|
-
This only affects **skill installs**; the Gateway runtime should still be Node
|
|
51
|
-
(Bun not recommended for WhatsApp/Telegram).
|
|
52
|
-
- `entries.<skillKey>`: per-skill overrides.
|
|
53
|
-
|
|
54
|
-
Per-skill fields:
|
|
55
|
-
|
|
56
|
-
- `enabled`: set `false` to disable a skill even if it’s bundled/installed.
|
|
57
|
-
- `env`: environment variables injected for the agent run (only if not already set).
|
|
58
|
-
- `apiKey`: optional convenience for skills that declare a primary env var.
|
|
59
|
-
|
|
60
|
-
## Notes
|
|
61
|
-
|
|
62
|
-
- Keys under `entries` map to the skill name by default. If a skill defines
|
|
63
|
-
`metadata.symi.skillKey`, use that key instead.
|
|
64
|
-
- Changes to skills are picked up on the next agent turn when the watcher is enabled.
|
|
65
|
-
|
|
66
|
-
### Sandboxed skills + env vars
|
|
67
|
-
|
|
68
|
-
When a session is **sandboxed**, skill processes run inside Docker. The sandbox
|
|
69
|
-
does **not** inherit the host `process.env`.
|
|
70
|
-
|
|
71
|
-
Use one of:
|
|
72
|
-
|
|
73
|
-
- `agents.defaults.sandbox.docker.env` (or per-agent `agents.list[].sandbox.docker.env`)
|
|
74
|
-
- bake the env into your custom sandbox image
|
|
75
|
-
|
|
76
|
-
Global `env` and `skills.entries.<skill>.env/apiKey` apply to **host** runs only.
|
package/docs/tools/skills.md
DELETED
|
@@ -1,300 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
summary: "Skills: managed vs workspace, gating rules, and config/env wiring"
|
|
3
|
-
read_when:
|
|
4
|
-
- Adding or modifying skills
|
|
5
|
-
- Changing skill gating or load rules
|
|
6
|
-
title: "Skills"
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
# Skills (Symi)
|
|
10
|
-
|
|
11
|
-
Symi uses **[AgentSkills](https://agentskills.io)-compatible** skill folders to teach the agent how to use tools. Each skill is a directory containing a `SKILL.md` with YAML frontmatter and instructions. Symi loads **bundled skills** plus optional local overrides, and filters them at load time based on environment, config, and binary presence.
|
|
12
|
-
|
|
13
|
-
## Locations and precedence
|
|
14
|
-
|
|
15
|
-
Skills are loaded from **three** places:
|
|
16
|
-
|
|
17
|
-
1. **Bundled skills**: shipped with the install (npm package or Symi.app)
|
|
18
|
-
2. **Managed/local skills**: `~/.symi/skills`
|
|
19
|
-
3. **Workspace skills**: `<workspace>/skills`
|
|
20
|
-
|
|
21
|
-
If a skill name conflicts, precedence is:
|
|
22
|
-
|
|
23
|
-
`<workspace>/skills` (highest) → `~/.symi/skills` → bundled skills (lowest)
|
|
24
|
-
|
|
25
|
-
Additionally, you can configure extra skill folders (lowest precedence) via
|
|
26
|
-
`skills.load.extraDirs` in `~/.symi/symi.json`.
|
|
27
|
-
|
|
28
|
-
## Per-agent vs shared skills
|
|
29
|
-
|
|
30
|
-
In **multi-agent** setups, each agent has its own workspace. That means:
|
|
31
|
-
|
|
32
|
-
- **Per-agent skills** live in `<workspace>/skills` for that agent only.
|
|
33
|
-
- **Shared skills** live in `~/.symi/skills` (managed/local) and are visible
|
|
34
|
-
to **all agents** on the same machine.
|
|
35
|
-
- **Shared folders** can also be added via `skills.load.extraDirs` (lowest
|
|
36
|
-
precedence) if you want a common skills pack used by multiple agents.
|
|
37
|
-
|
|
38
|
-
If the same skill name exists in more than one place, the usual precedence
|
|
39
|
-
applies: workspace wins, then managed/local, then bundled.
|
|
40
|
-
|
|
41
|
-
## Plugins + skills
|
|
42
|
-
|
|
43
|
-
Plugins can ship their own skills by listing `skills` directories in
|
|
44
|
-
`symi.plugin.json` (paths relative to the plugin root). Plugin skills load
|
|
45
|
-
when the plugin is enabled and participate in the normal skill precedence rules.
|
|
46
|
-
You can gate them via `metadata.symi.requires.config` on the plugin’s config
|
|
47
|
-
entry. See [Plugins](/tools/plugin) for discovery/config and [Tools](/tools) for the
|
|
48
|
-
tool surface those skills teach.
|
|
49
|
-
|
|
50
|
-
## SymiHub (install + sync)
|
|
51
|
-
|
|
52
|
-
SymiHub is the public skills registry for Symi. Browse at
|
|
53
|
-
[https://symihub.com](https://symihub.com). Use it to discover, install, update, and back up skills.
|
|
54
|
-
Full guide: [SymiHub](/tools/symihub).
|
|
55
|
-
|
|
56
|
-
Common flows:
|
|
57
|
-
|
|
58
|
-
- Install a skill into your workspace:
|
|
59
|
-
- `symihub install <skill-slug>`
|
|
60
|
-
- Update all installed skills:
|
|
61
|
-
- `symihub update --all`
|
|
62
|
-
- Sync (scan + publish updates):
|
|
63
|
-
- `symihub sync --all`
|
|
64
|
-
|
|
65
|
-
By default, `symihub` installs into `./skills` under your current working
|
|
66
|
-
directory (or falls back to the configured Symi workspace). Symi picks
|
|
67
|
-
that up as `<workspace>/skills` on the next session.
|
|
68
|
-
|
|
69
|
-
## Security notes
|
|
70
|
-
|
|
71
|
-
- Treat third-party skills as **untrusted code**. Read them before enabling.
|
|
72
|
-
- Prefer sandboxed runs for untrusted inputs and risky tools. See [Sandboxing](/gateway/sandboxing).
|
|
73
|
-
- `skills.entries.*.env` and `skills.entries.*.apiKey` inject secrets into the **host** process
|
|
74
|
-
for that agent turn (not the sandbox). Keep secrets out of prompts and logs.
|
|
75
|
-
- For a broader threat model and checklists, see [Security](/gateway/security).
|
|
76
|
-
|
|
77
|
-
## Format (AgentSkills + Pi-compatible)
|
|
78
|
-
|
|
79
|
-
`SKILL.md` must include at least:
|
|
80
|
-
|
|
81
|
-
```markdown
|
|
82
|
-
---
|
|
83
|
-
name: nano-banana-pro
|
|
84
|
-
description: Generate or edit images via Gemini 3 Pro Image
|
|
85
|
-
---
|
|
86
|
-
```
|
|
87
|
-
|
|
88
|
-
Notes:
|
|
89
|
-
|
|
90
|
-
- We follow the AgentSkills spec for layout/intent.
|
|
91
|
-
- The parser used by the embedded agent supports **single-line** frontmatter keys only.
|
|
92
|
-
- `metadata` should be a **single-line JSON object**.
|
|
93
|
-
- Use `{baseDir}` in instructions to reference the skill folder path.
|
|
94
|
-
- Optional frontmatter keys:
|
|
95
|
-
- `homepage` — URL surfaced as “Website” in the macOS Skills UI (also supported via `metadata.symi.homepage`).
|
|
96
|
-
- `user-invocable` — `true|false` (default: `true`). When `true`, the skill is exposed as a user slash command.
|
|
97
|
-
- `disable-model-invocation` — `true|false` (default: `false`). When `true`, the skill is excluded from the model prompt (still available via user invocation).
|
|
98
|
-
- `command-dispatch` — `tool` (optional). When set to `tool`, the slash command bypasses the model and dispatches directly to a tool.
|
|
99
|
-
- `command-tool` — tool name to invoke when `command-dispatch: tool` is set.
|
|
100
|
-
- `command-arg-mode` — `raw` (default). For tool dispatch, forwards the raw args string to the tool (no core parsing).
|
|
101
|
-
|
|
102
|
-
The tool is invoked with params:
|
|
103
|
-
`{ command: "<raw args>", commandName: "<slash command>", skillName: "<skill name>" }`.
|
|
104
|
-
|
|
105
|
-
## Gating (load-time filters)
|
|
106
|
-
|
|
107
|
-
Symi **filters skills at load time** using `metadata` (single-line JSON):
|
|
108
|
-
|
|
109
|
-
```markdown
|
|
110
|
-
---
|
|
111
|
-
name: nano-banana-pro
|
|
112
|
-
description: Generate or edit images via Gemini 3 Pro Image
|
|
113
|
-
metadata:
|
|
114
|
-
{
|
|
115
|
-
"symi":
|
|
116
|
-
{
|
|
117
|
-
"requires": { "bins": ["uv"], "env": ["GEMINI_API_KEY"], "config": ["browser.enabled"] },
|
|
118
|
-
"primaryEnv": "GEMINI_API_KEY",
|
|
119
|
-
},
|
|
120
|
-
}
|
|
121
|
-
---
|
|
122
|
-
```
|
|
123
|
-
|
|
124
|
-
Fields under `metadata.symi`:
|
|
125
|
-
|
|
126
|
-
- `always: true` — always include the skill (skip other gates).
|
|
127
|
-
- `emoji` — optional emoji used by the macOS Skills UI.
|
|
128
|
-
- `homepage` — optional URL shown as “Website” in the macOS Skills UI.
|
|
129
|
-
- `os` — optional list of platforms (`darwin`, `linux`, `win32`). If set, the skill is only eligible on those OSes.
|
|
130
|
-
- `requires.bins` — list; each must exist on `PATH`.
|
|
131
|
-
- `requires.anyBins` — list; at least one must exist on `PATH`.
|
|
132
|
-
- `requires.env` — list; env var must exist **or** be provided in config.
|
|
133
|
-
- `requires.config` — list of `symi.json` paths that must be truthy.
|
|
134
|
-
- `primaryEnv` — env var name associated with `skills.entries.<name>.apiKey`.
|
|
135
|
-
- `install` — optional array of installer specs used by the macOS Skills UI (brew/node/go/uv/download).
|
|
136
|
-
|
|
137
|
-
Note on sandboxing:
|
|
138
|
-
|
|
139
|
-
- `requires.bins` is checked on the **host** at skill load time.
|
|
140
|
-
- If an agent is sandboxed, the binary must also exist **inside the container**.
|
|
141
|
-
Install it via `agents.defaults.sandbox.docker.setupCommand` (or a custom image).
|
|
142
|
-
`setupCommand` runs once after the container is created.
|
|
143
|
-
Package installs also require network egress, a writable root FS, and a root user in the sandbox.
|
|
144
|
-
Example: the `summarize` skill (`skills/summarize/SKILL.md`) needs the `summarize` CLI
|
|
145
|
-
in the sandbox container to run there.
|
|
146
|
-
|
|
147
|
-
Installer example:
|
|
148
|
-
|
|
149
|
-
```markdown
|
|
150
|
-
---
|
|
151
|
-
name: gemini
|
|
152
|
-
description: Use Gemini CLI for coding assistance and Google search lookups.
|
|
153
|
-
metadata:
|
|
154
|
-
{
|
|
155
|
-
"symi":
|
|
156
|
-
{
|
|
157
|
-
"emoji": "♊️",
|
|
158
|
-
"requires": { "bins": ["gemini"] },
|
|
159
|
-
"install":
|
|
160
|
-
[
|
|
161
|
-
{
|
|
162
|
-
"id": "brew",
|
|
163
|
-
"kind": "brew",
|
|
164
|
-
"formula": "gemini-cli",
|
|
165
|
-
"bins": ["gemini"],
|
|
166
|
-
"label": "Install Gemini CLI (brew)",
|
|
167
|
-
},
|
|
168
|
-
],
|
|
169
|
-
},
|
|
170
|
-
}
|
|
171
|
-
---
|
|
172
|
-
```
|
|
173
|
-
|
|
174
|
-
Notes:
|
|
175
|
-
|
|
176
|
-
- If multiple installers are listed, the gateway picks a **single** preferred option (brew when available, otherwise node).
|
|
177
|
-
- If all installers are `download`, Symi lists each entry so you can see the available artifacts.
|
|
178
|
-
- Installer specs can include `os: ["darwin"|"linux"|"win32"]` to filter options by platform.
|
|
179
|
-
- Node installs honor `skills.install.nodeManager` in `symi.json` (default: npm; options: npm/pnpm/yarn/bun).
|
|
180
|
-
This only affects **skill installs**; the Gateway runtime should still be Node
|
|
181
|
-
(Bun is not recommended for WhatsApp/Telegram).
|
|
182
|
-
- Go installs: if `go` is missing and `brew` is available, the gateway installs Go via Homebrew first and sets `GOBIN` to Homebrew’s `bin` when possible.
|
|
183
|
-
- Download installs: `url` (required), `archive` (`tar.gz` | `tar.bz2` | `zip`), `extract` (default: auto when archive detected), `stripComponents`, `targetDir` (default: `~/.symi/tools/<skillKey>`).
|
|
184
|
-
|
|
185
|
-
If no `metadata.symi` is present, the skill is always eligible (unless
|
|
186
|
-
disabled in config or blocked by `skills.allowBundled` for bundled skills).
|
|
187
|
-
|
|
188
|
-
## Config overrides (`~/.symi/symi.json`)
|
|
189
|
-
|
|
190
|
-
Bundled/managed skills can be toggled and supplied with env values:
|
|
191
|
-
|
|
192
|
-
```json5
|
|
193
|
-
{
|
|
194
|
-
skills: {
|
|
195
|
-
entries: {
|
|
196
|
-
"nano-banana-pro": {
|
|
197
|
-
enabled: true,
|
|
198
|
-
apiKey: "GEMINI_KEY_HERE",
|
|
199
|
-
env: {
|
|
200
|
-
GEMINI_API_KEY: "GEMINI_KEY_HERE",
|
|
201
|
-
},
|
|
202
|
-
config: {
|
|
203
|
-
endpoint: "https://example.invalid",
|
|
204
|
-
model: "nano-pro",
|
|
205
|
-
},
|
|
206
|
-
},
|
|
207
|
-
peekaboo: { enabled: true },
|
|
208
|
-
sag: { enabled: false },
|
|
209
|
-
},
|
|
210
|
-
},
|
|
211
|
-
}
|
|
212
|
-
```
|
|
213
|
-
|
|
214
|
-
Note: if the skill name contains hyphens, quote the key (JSON5 allows quoted keys).
|
|
215
|
-
|
|
216
|
-
Config keys match the **skill name** by default. If a skill defines
|
|
217
|
-
`metadata.symi.skillKey`, use that key under `skills.entries`.
|
|
218
|
-
|
|
219
|
-
Rules:
|
|
220
|
-
|
|
221
|
-
- `enabled: false` disables the skill even if it’s bundled/installed.
|
|
222
|
-
- `env`: injected **only if** the variable isn’t already set in the process.
|
|
223
|
-
- `apiKey`: convenience for skills that declare `metadata.symi.primaryEnv`.
|
|
224
|
-
- `config`: optional bag for custom per-skill fields; custom keys must live here.
|
|
225
|
-
- `allowBundled`: optional allowlist for **bundled** skills only. If set, only
|
|
226
|
-
bundled skills in the list are eligible (managed/workspace skills unaffected).
|
|
227
|
-
|
|
228
|
-
## Environment injection (per agent run)
|
|
229
|
-
|
|
230
|
-
When an agent run starts, Symi:
|
|
231
|
-
|
|
232
|
-
1. Reads skill metadata.
|
|
233
|
-
2. Applies any `skills.entries.<key>.env` or `skills.entries.<key>.apiKey` to
|
|
234
|
-
`process.env`.
|
|
235
|
-
3. Builds the system prompt with **eligible** skills.
|
|
236
|
-
4. Restores the original environment after the run ends.
|
|
237
|
-
|
|
238
|
-
This is **scoped to the agent run**, not a global shell environment.
|
|
239
|
-
|
|
240
|
-
## Session snapshot (performance)
|
|
241
|
-
|
|
242
|
-
Symi snapshots the eligible skills **when a session starts** and reuses that list for subsequent turns in the same session. Changes to skills or config take effect on the next new session.
|
|
243
|
-
|
|
244
|
-
Skills can also refresh mid-session when the skills watcher is enabled or when a new eligible remote node appears (see below). Think of this as a **hot reload**: the refreshed list is picked up on the next agent turn.
|
|
245
|
-
|
|
246
|
-
## Remote macOS nodes (Linux gateway)
|
|
247
|
-
|
|
248
|
-
If the Gateway is running on Linux but a **macOS node** is connected **with `system.run` allowed** (Exec approvals security not set to `deny`), Symi can treat macOS-only skills as eligible when the required binaries are present on that node. The agent should execute those skills via the `nodes` tool (typically `nodes.run`).
|
|
249
|
-
|
|
250
|
-
This relies on the node reporting its command support and on a bin probe via `system.run`. If the macOS node goes offline later, the skills remain visible; invocations may fail until the node reconnects.
|
|
251
|
-
|
|
252
|
-
## Skills watcher (auto-refresh)
|
|
253
|
-
|
|
254
|
-
By default, Symi watches skill folders and bumps the skills snapshot when `SKILL.md` files change. Configure this under `skills.load`:
|
|
255
|
-
|
|
256
|
-
```json5
|
|
257
|
-
{
|
|
258
|
-
skills: {
|
|
259
|
-
load: {
|
|
260
|
-
watch: true,
|
|
261
|
-
watchDebounceMs: 250,
|
|
262
|
-
},
|
|
263
|
-
},
|
|
264
|
-
}
|
|
265
|
-
```
|
|
266
|
-
|
|
267
|
-
## Token impact (skills list)
|
|
268
|
-
|
|
269
|
-
When skills are eligible, Symi injects a compact XML list of available skills into the system prompt (via `formatSkillsForPrompt` in `pi-coding-agent`). The cost is deterministic:
|
|
270
|
-
|
|
271
|
-
- **Base overhead (only when ≥1 skill):** 195 characters.
|
|
272
|
-
- **Per skill:** 97 characters + the length of the XML-escaped `<name>`, `<description>`, and `<location>` values.
|
|
273
|
-
|
|
274
|
-
Formula (characters):
|
|
275
|
-
|
|
276
|
-
```
|
|
277
|
-
total = 195 + Σ (97 + len(name_escaped) + len(description_escaped) + len(location_escaped))
|
|
278
|
-
```
|
|
279
|
-
|
|
280
|
-
Notes:
|
|
281
|
-
|
|
282
|
-
- XML escaping expands `& < > " '` into entities (`&`, `<`, etc.), increasing length.
|
|
283
|
-
- Token counts vary by model tokenizer. A rough OpenAI-style estimate is ~4 chars/token, so **97 chars ≈ 24 tokens** per skill plus your actual field lengths.
|
|
284
|
-
|
|
285
|
-
## Managed skills lifecycle
|
|
286
|
-
|
|
287
|
-
Symi ships a baseline set of skills as **bundled skills** as part of the
|
|
288
|
-
install (npm package or Symi.app). `~/.symi/skills` exists for local
|
|
289
|
-
overrides (for example, pinning/patching a skill without changing the bundled
|
|
290
|
-
copy). Workspace skills are user-owned and override both on name conflicts.
|
|
291
|
-
|
|
292
|
-
## Config reference
|
|
293
|
-
|
|
294
|
-
See [Skills config](/tools/skills-config) for the full configuration schema.
|
|
295
|
-
|
|
296
|
-
## Looking for more skills?
|
|
297
|
-
|
|
298
|
-
Browse [https://symihub.com](https://symihub.com).
|
|
299
|
-
|
|
300
|
-
---
|
|
@@ -1,202 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
summary: "Slash commands: text vs native, config, and supported commands"
|
|
3
|
-
read_when:
|
|
4
|
-
- Using or configuring chat commands
|
|
5
|
-
- Debugging command routing or permissions
|
|
6
|
-
title: "Slash Commands"
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
# Slash commands
|
|
10
|
-
|
|
11
|
-
Commands are handled by the Gateway. Most commands must be sent as a **standalone** message that starts with `/`.
|
|
12
|
-
The host-only bash chat command uses `! <cmd>` (with `/bash <cmd>` as an alias).
|
|
13
|
-
|
|
14
|
-
There are two related systems:
|
|
15
|
-
|
|
16
|
-
- **Commands**: standalone `/...` messages.
|
|
17
|
-
- **Directives**: `/think`, `/verbose`, `/reasoning`, `/elevated`, `/exec`, `/model`, `/queue`.
|
|
18
|
-
- Directives are stripped from the message before the model sees it.
|
|
19
|
-
- In normal chat messages (not directive-only), they are treated as “inline hints” and do **not** persist session settings.
|
|
20
|
-
- In directive-only messages (the message contains only directives), they persist to the session and reply with an acknowledgement.
|
|
21
|
-
- Directives are only applied for **authorized senders**. If `commands.allowFrom` is set, it is the only
|
|
22
|
-
allowlist used; otherwise authorization comes from channel allowlists/pairing plus `commands.useAccessGroups`.
|
|
23
|
-
Unauthorized senders see directives treated as plain text.
|
|
24
|
-
|
|
25
|
-
There are also a few **inline shortcuts** (allowlisted/authorized senders only): `/help`, `/commands`, `/status`, `/whoami` (`/id`).
|
|
26
|
-
They run immediately, are stripped before the model sees the message, and the remaining text continues through the normal flow.
|
|
27
|
-
|
|
28
|
-
## Config
|
|
29
|
-
|
|
30
|
-
```json5
|
|
31
|
-
{
|
|
32
|
-
commands: {
|
|
33
|
-
native: "auto",
|
|
34
|
-
nativeSkills: "auto",
|
|
35
|
-
text: true,
|
|
36
|
-
bash: false,
|
|
37
|
-
bashForegroundMs: 2000,
|
|
38
|
-
config: false,
|
|
39
|
-
debug: false,
|
|
40
|
-
restart: false,
|
|
41
|
-
allowFrom: {
|
|
42
|
-
"*": ["user1"],
|
|
43
|
-
},
|
|
44
|
-
useAccessGroups: true,
|
|
45
|
-
},
|
|
46
|
-
}
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
- `commands.text` (default `true`) enables parsing `/...` in chat messages.
|
|
50
|
-
- On surfaces without native commands (WhatsApp/WebChat/Signal/iMessage/Google Chat/MS Teams), text commands still work even if you set this to `false`.
|
|
51
|
-
- `commands.native` (default `"auto"`) registers native commands.
|
|
52
|
-
- `commands.nativeSkills` (default `"auto"`) registers **skill** commands natively when supported.
|
|
53
|
-
- `commands.bash` (default `false`) enables `! <cmd>` to run host shell commands (`/bash <cmd>` is an alias; requires `tools.elevated` allowlists).
|
|
54
|
-
- `commands.bashForegroundMs` (default `2000`) controls how long bash waits before switching to background mode (`0` backgrounds immediately).
|
|
55
|
-
- `commands.config` (default `false`) enables `/config` (reads/writes `symi.json`).
|
|
56
|
-
- `commands.debug` (default `false`) enables `/debug` (runtime-only overrides).
|
|
57
|
-
- `commands.allowFrom` (optional) sets a per-provider allowlist for command authorization. When configured, it is the
|
|
58
|
-
only authorization source for commands and directives (channel allowlists/pairing and `commands.useAccessGroups`
|
|
59
|
-
are ignored). Use `"*"` for a global default; provider-specific keys override it.
|
|
60
|
-
- `commands.useAccessGroups` (default `true`) enforces allowlists/policies for commands when `commands.allowFrom` is not set.
|
|
61
|
-
|
|
62
|
-
## Command list
|
|
63
|
-
|
|
64
|
-
Text + native (when enabled):
|
|
65
|
-
|
|
66
|
-
- `/help`
|
|
67
|
-
- `/commands`
|
|
68
|
-
- `/skill <name> [input]` (run a skill by name)
|
|
69
|
-
- `/status` (show current status; includes provider usage/quota for the current model provider when available)
|
|
70
|
-
- `/allowlist` (list/add/remove allowlist entries)
|
|
71
|
-
- `/approve <id> allow-once|allow-always|deny` (resolve exec approval prompts)
|
|
72
|
-
- `/context [list|detail|json]` (explain “context”; `detail` shows per-file + per-tool + per-skill + system prompt size)
|
|
73
|
-
- `/export-session [path]` (alias: `/export`) (export current session to HTML with full system prompt)
|
|
74
|
-
- `/whoami` (show your sender id; alias: `/id`)
|
|
75
|
-
- `/session ttl <duration|off>` (manage session-level settings, such as TTL)
|
|
76
|
-
- `/subagents list|kill|log|info|send|steer|spawn` (inspect, control, or spawn sub-agent runs for the current session)
|
|
77
|
-
- `/agents` (list thread-bound agents for this session)
|
|
78
|
-
- `/kill <id|#|all>` (immediately abort one or all running sub-agents for this session; no confirmation message)
|
|
79
|
-
- `/steer <id|#> <message>` (steer a running sub-agent immediately: in-run when possible, otherwise abort current work and restart on the steer message)
|
|
80
|
-
- `/tell <id|#> <message>` (alias for `/steer`)
|
|
81
|
-
- `/config show|get|set|unset` (persist config to disk, owner-only; requires `commands.config: true`)
|
|
82
|
-
- `/debug show|set|unset|reset` (runtime overrides, owner-only; requires `commands.debug: true`)
|
|
83
|
-
- `/usage off|tokens|full|cost` (per-response usage footer or local cost summary)
|
|
84
|
-
- `/tts off|always|inbound|tagged|status|provider|limit|summary|audio` (control TTS; see [/tts](/tts))
|
|
85
|
-
- `/stop`
|
|
86
|
-
- `/restart`
|
|
87
|
-
- `/dock-telegram` (alias: `/dock_telegram`) (switch replies to Telegram)
|
|
88
|
-
- `/dock-slack` (alias: `/dock_slack`) (switch replies to Slack)
|
|
89
|
-
- `/activation mention|always` (groups only)
|
|
90
|
-
- `/send on|off|inherit` (owner-only)
|
|
91
|
-
- `/reset` or `/new [model]` (optional model hint; remainder is passed through)
|
|
92
|
-
- `/think <off|minimal|low|medium|high|xhigh>` (dynamic choices by model/provider; aliases: `/thinking`, `/t`)
|
|
93
|
-
- `/verbose on|full|off` (alias: `/v`)
|
|
94
|
-
- `/reasoning on|off|stream` (alias: `/reason`; when on, sends a separate message prefixed `Reasoning:`; `stream` = Telegram draft only)
|
|
95
|
-
- `/elevated on|off|ask|full` (alias: `/elev`; `full` skips exec approvals)
|
|
96
|
-
- `/exec host=<sandbox|gateway|node> security=<deny|allowlist|full> ask=<off|on-miss|always> node=<id>` (send `/exec` to show current)
|
|
97
|
-
- `/model <name>` (alias: `/models`; or `/<alias>` from `agents.defaults.models.*.alias`)
|
|
98
|
-
- `/queue <mode>` (plus options like `debounce:2s cap:25 drop:summarize`; send `/queue` to see current settings)
|
|
99
|
-
- `/bash <command>` (host-only; alias for `! <command>`; requires `commands.bash: true` + `tools.elevated` allowlists)
|
|
100
|
-
|
|
101
|
-
Text-only:
|
|
102
|
-
|
|
103
|
-
- `/compact [instructions]` (see [/concepts/compaction](/concepts/compaction))
|
|
104
|
-
- `! <command>` (host-only; one at a time; use `!poll` + `!stop` for long-running jobs)
|
|
105
|
-
- `!poll` (check output / status; accepts optional `sessionId`; `/bash poll` also works)
|
|
106
|
-
- `!stop` (stop the running bash job; accepts optional `sessionId`; `/bash stop` also works)
|
|
107
|
-
|
|
108
|
-
Notes:
|
|
109
|
-
|
|
110
|
-
- Commands accept an optional `:` between the command and args (e.g. `/think: high`, `/send: on`, `/help:`).
|
|
111
|
-
- `/new <model>` accepts a model alias, `provider/model`, or a provider name (fuzzy match); if no match, the text is treated as the message body.
|
|
112
|
-
- For full provider usage breakdown, use `symi status --usage`.
|
|
113
|
-
- `/allowlist add|remove` requires `commands.config=true` and honors channel `configWrites`.
|
|
114
|
-
- `/usage` controls the per-response usage footer; `/usage cost` prints a local cost summary from Symi session logs.
|
|
115
|
-
- `/restart` is enabled by default; set `commands.restart: false` to disable it.
|
|
116
|
-
- `/verbose` is meant for debugging and extra visibility; keep it **off** in normal use.
|
|
117
|
-
- `/reasoning` (and `/verbose`) are risky in group settings: they may reveal internal reasoning or tool output you did not intend to expose. Prefer leaving them off, especially in group chats.
|
|
118
|
-
- **Fast path:** command-only messages from allowlisted senders are handled immediately (bypass queue + model).
|
|
119
|
-
- **Group mention gating:** command-only messages from allowlisted senders bypass mention requirements.
|
|
120
|
-
- **Inline shortcuts (allowlisted senders only):** certain commands also work when embedded in a normal message and are stripped before the model sees the remaining text.
|
|
121
|
-
- Example: `hey /status` triggers a status reply, and the remaining text continues through the normal flow.
|
|
122
|
-
- Currently: `/help`, `/commands`, `/status`, `/whoami` (`/id`).
|
|
123
|
-
- Unauthorized command-only messages are silently ignored, and inline `/...` tokens are treated as plain text.
|
|
124
|
-
- **Skill commands:** `user-invocable` skills are exposed as slash commands. Names are sanitized to `a-z0-9_` (max 32 chars); collisions get numeric suffixes (e.g. `_2`).
|
|
125
|
-
- `/skill <name> [input]` runs a skill by name (useful when native command limits prevent per-skill commands).
|
|
126
|
-
- By default, skill commands are forwarded to the model as a normal request.
|
|
127
|
-
- Skills may optionally declare `command-dispatch: tool` to route the command directly to a tool (deterministic, no model).
|
|
128
|
-
- Example: `/prose` (OpenProse plugin) — see [OpenProse](/prose).
|
|
129
|
-
|
|
130
|
-
## Usage surfaces (what shows where)
|
|
131
|
-
|
|
132
|
-
- **Provider usage/quota** (example: “Claude 80% left”) shows up in `/status` for the current model provider when usage tracking is enabled.
|
|
133
|
-
- **Per-response tokens/cost** is controlled by `/usage off|tokens|full` (appended to normal replies).
|
|
134
|
-
- `/model status` is about **models/auth/endpoints**, not usage.
|
|
135
|
-
|
|
136
|
-
## Model selection (`/model`)
|
|
137
|
-
|
|
138
|
-
`/model` is implemented as a directive.
|
|
139
|
-
|
|
140
|
-
Examples:
|
|
141
|
-
|
|
142
|
-
```
|
|
143
|
-
/model
|
|
144
|
-
/model list
|
|
145
|
-
/model 3
|
|
146
|
-
/model openai/gpt-5.2
|
|
147
|
-
/model opus@anthropic:default
|
|
148
|
-
/model status
|
|
149
|
-
```
|
|
150
|
-
|
|
151
|
-
Notes:
|
|
152
|
-
|
|
153
|
-
- `/model` and `/model list` show a compact, numbered picker (model family + available providers).
|
|
154
|
-
- `/model <#>` selects from that picker (and prefers the current provider when possible).
|
|
155
|
-
- `/model status` shows the detailed view, including configured provider endpoint (`baseUrl`) and API mode (`api`) when available.
|
|
156
|
-
|
|
157
|
-
## Debug overrides
|
|
158
|
-
|
|
159
|
-
`/debug` lets you set **runtime-only** config overrides (memory, not disk). Owner-only. Disabled by default; enable with `commands.debug: true`.
|
|
160
|
-
|
|
161
|
-
Examples:
|
|
162
|
-
|
|
163
|
-
```
|
|
164
|
-
/debug show
|
|
165
|
-
/debug set messages.responsePrefix="[symi]"
|
|
166
|
-
/debug set channels.whatsapp.allowFrom=["+1555","+4477"]
|
|
167
|
-
/debug unset messages.responsePrefix
|
|
168
|
-
/debug reset
|
|
169
|
-
```
|
|
170
|
-
|
|
171
|
-
Notes:
|
|
172
|
-
|
|
173
|
-
- Overrides apply immediately to new config reads, but do **not** write to `symi.json`.
|
|
174
|
-
- Use `/debug reset` to clear all overrides and return to the on-disk config.
|
|
175
|
-
|
|
176
|
-
## Config updates
|
|
177
|
-
|
|
178
|
-
`/config` writes to your on-disk config (`symi.json`). Owner-only. Disabled by default; enable with `commands.config: true`.
|
|
179
|
-
|
|
180
|
-
Examples:
|
|
181
|
-
|
|
182
|
-
```
|
|
183
|
-
/config show
|
|
184
|
-
/config show messages.responsePrefix
|
|
185
|
-
/config get messages.responsePrefix
|
|
186
|
-
/config set messages.responsePrefix="[symi]"
|
|
187
|
-
/config unset messages.responsePrefix
|
|
188
|
-
```
|
|
189
|
-
|
|
190
|
-
Notes:
|
|
191
|
-
|
|
192
|
-
- Config is validated before write; invalid changes are rejected.
|
|
193
|
-
- `/config` updates persist across restarts.
|
|
194
|
-
|
|
195
|
-
## Surface notes
|
|
196
|
-
|
|
197
|
-
- **Text commands** run in the normal chat session (DMs share `main`, groups have their own session).
|
|
198
|
-
- **Native commands** use isolated sessions:
|
|
199
|
-
- Slack: `agent:<agentId>:slack:slash:<userId>` (prefix configurable via `channels.slack.slashCommand.sessionPrefix`)
|
|
200
|
-
- Telegram: `telegram:slash:<userId>` (targets the chat session via `CommandTargetSessionKey`)
|
|
201
|
-
- **`/stop`** targets the active chat session so it can abort the current run.
|
|
202
|
-
- **Slack:** `channels.slack.slashCommand` is still supported for a single `/symi`-style command. If you enable `commands.native`, you must create one Slack slash command per built-in command (same names as `/help`). Command argument menus for Slack are delivered as ephemeral Block Kit buttons.
|