@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
package/docs/tools/index.md
DELETED
|
@@ -1,540 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
summary: "Agent tool surface for Symi (browser, canvas, nodes, message, cron) replacing legacy `symi-*` skills"
|
|
3
|
-
read_when:
|
|
4
|
-
- Adding or modifying agent tools
|
|
5
|
-
- Retiring or changing `symi-*` skills
|
|
6
|
-
title: "Tools"
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
# Tools (Symi)
|
|
10
|
-
|
|
11
|
-
Symi exposes **first-class agent tools** for browser, canvas, nodes, and cron.
|
|
12
|
-
These replace the old `symi-*` skills: the tools are typed, no shelling,
|
|
13
|
-
and the agent should rely on them directly.
|
|
14
|
-
|
|
15
|
-
## Disabling tools
|
|
16
|
-
|
|
17
|
-
You can globally allow/deny tools via `tools.allow` / `tools.deny` in `symi.json`
|
|
18
|
-
(deny wins). This prevents disallowed tools from being sent to model providers.
|
|
19
|
-
|
|
20
|
-
```json5
|
|
21
|
-
{
|
|
22
|
-
tools: { deny: ["browser"] },
|
|
23
|
-
}
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
Notes:
|
|
27
|
-
|
|
28
|
-
- Matching is case-insensitive.
|
|
29
|
-
- `*` wildcards are supported (`"*"` means all tools).
|
|
30
|
-
- If `tools.allow` only references unknown or unloaded plugin tool names, Symi logs a warning and ignores the allowlist so core tools stay available.
|
|
31
|
-
|
|
32
|
-
## Tool profiles (base allowlist)
|
|
33
|
-
|
|
34
|
-
`tools.profile` sets a **base tool allowlist** before `tools.allow`/`tools.deny`.
|
|
35
|
-
Per-agent override: `agents.list[].tools.profile`.
|
|
36
|
-
|
|
37
|
-
Profiles:
|
|
38
|
-
|
|
39
|
-
- `minimal`: `session_status` only
|
|
40
|
-
- `coding`: `group:fs`, `group:runtime`, `group:sessions`, `group:memory`, `image`
|
|
41
|
-
- `messaging`: `group:messaging`, `sessions_list`, `sessions_history`, `sessions_send`, `session_status`
|
|
42
|
-
- `full`: no restriction (same as unset)
|
|
43
|
-
|
|
44
|
-
```json5
|
|
45
|
-
{
|
|
46
|
-
tools: {
|
|
47
|
-
profile: "messaging",
|
|
48
|
-
},
|
|
49
|
-
}
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
Example (coding profile, but deny exec/process everywhere):
|
|
53
|
-
|
|
54
|
-
```json5
|
|
55
|
-
{
|
|
56
|
-
tools: {
|
|
57
|
-
profile: "coding",
|
|
58
|
-
deny: ["group:runtime"],
|
|
59
|
-
},
|
|
60
|
-
}
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
Example (global coding profile, messaging-only support agent):
|
|
64
|
-
|
|
65
|
-
```json5
|
|
66
|
-
{
|
|
67
|
-
tools: { profile: "coding" },
|
|
68
|
-
agents: {
|
|
69
|
-
list: [
|
|
70
|
-
{
|
|
71
|
-
id: "support",
|
|
72
|
-
tools: { profile: "messaging", allow: ["slack"] },
|
|
73
|
-
},
|
|
74
|
-
],
|
|
75
|
-
},
|
|
76
|
-
}
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
## Provider-specific tool policy
|
|
80
|
-
|
|
81
|
-
Use `tools.byProvider` to **further restrict** tools for specific providers
|
|
82
|
-
(or a single `provider/model`) without changing your global defaults.
|
|
83
|
-
Per-agent override: `agents.list[].tools.byProvider`.
|
|
84
|
-
|
|
85
|
-
This is applied **after** the base tool profile and **before** allow/deny lists,
|
|
86
|
-
so it can only narrow the tool set.
|
|
87
|
-
Provider keys accept either `provider` (e.g. `google-antigravity`) or
|
|
88
|
-
`provider/model` (e.g. `openai/gpt-5.2`).
|
|
89
|
-
|
|
90
|
-
Example (keep global coding profile, but minimal tools for Google Antigravity):
|
|
91
|
-
|
|
92
|
-
```json5
|
|
93
|
-
{
|
|
94
|
-
tools: {
|
|
95
|
-
profile: "coding",
|
|
96
|
-
byProvider: {
|
|
97
|
-
"google-antigravity": { profile: "minimal" },
|
|
98
|
-
},
|
|
99
|
-
},
|
|
100
|
-
}
|
|
101
|
-
```
|
|
102
|
-
|
|
103
|
-
Example (provider/model-specific allowlist for a flaky endpoint):
|
|
104
|
-
|
|
105
|
-
```json5
|
|
106
|
-
{
|
|
107
|
-
tools: {
|
|
108
|
-
allow: ["group:fs", "group:runtime", "sessions_list"],
|
|
109
|
-
byProvider: {
|
|
110
|
-
"openai/gpt-5.2": { allow: ["group:fs", "sessions_list"] },
|
|
111
|
-
},
|
|
112
|
-
},
|
|
113
|
-
}
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
Example (agent-specific override for a single provider):
|
|
117
|
-
|
|
118
|
-
```json5
|
|
119
|
-
{
|
|
120
|
-
agents: {
|
|
121
|
-
list: [
|
|
122
|
-
{
|
|
123
|
-
id: "support",
|
|
124
|
-
tools: {
|
|
125
|
-
byProvider: {
|
|
126
|
-
"google-antigravity": { allow: ["message", "sessions_list"] },
|
|
127
|
-
},
|
|
128
|
-
},
|
|
129
|
-
},
|
|
130
|
-
],
|
|
131
|
-
},
|
|
132
|
-
}
|
|
133
|
-
```
|
|
134
|
-
|
|
135
|
-
## Tool groups (shorthands)
|
|
136
|
-
|
|
137
|
-
Tool policies (global, agent, sandbox) support `group:*` entries that expand to multiple tools.
|
|
138
|
-
Use these in `tools.allow` / `tools.deny`.
|
|
139
|
-
|
|
140
|
-
Available groups:
|
|
141
|
-
|
|
142
|
-
- `group:runtime`: `exec`, `bash`, `process`
|
|
143
|
-
- `group:fs`: `read`, `write`, `edit`, `apply_patch`
|
|
144
|
-
- `group:sessions`: `sessions_list`, `sessions_history`, `sessions_send`, `sessions_spawn`, `session_status`
|
|
145
|
-
- `group:memory`: `memory_search`, `memory_get`
|
|
146
|
-
- `group:web`: `web_search`, `web_fetch`
|
|
147
|
-
- `group:ui`: `browser`, `canvas`
|
|
148
|
-
- `group:automation`: `cron`, `gateway`
|
|
149
|
-
- `group:messaging`: `message`
|
|
150
|
-
- `group:nodes`: `nodes`
|
|
151
|
-
- `group:symi`: all built-in Symi tools (excludes provider plugins)
|
|
152
|
-
|
|
153
|
-
Example (allow only file tools + browser):
|
|
154
|
-
|
|
155
|
-
```json5
|
|
156
|
-
{
|
|
157
|
-
tools: {
|
|
158
|
-
allow: ["group:fs", "browser"],
|
|
159
|
-
},
|
|
160
|
-
}
|
|
161
|
-
```
|
|
162
|
-
|
|
163
|
-
## Plugins + tools
|
|
164
|
-
|
|
165
|
-
Plugins can register **additional tools** (and CLI commands) beyond the core set.
|
|
166
|
-
See [Plugins](/tools/plugin) for install + config, and [Skills](/tools/skills) for how
|
|
167
|
-
tool usage guidance is injected into prompts. Some plugins ship their own skills
|
|
168
|
-
alongside tools (for example, the voice-call plugin).
|
|
169
|
-
|
|
170
|
-
Optional plugin tools:
|
|
171
|
-
|
|
172
|
-
- [Pipeline](/tools/pipeline): typed workflow runtime with resumable approvals (requires the Pipeline CLI on the gateway host).
|
|
173
|
-
- [LLM Task](/tools/llm-task): JSON-only LLM step for structured workflow output (optional schema validation).
|
|
174
|
-
|
|
175
|
-
## Tool inventory
|
|
176
|
-
|
|
177
|
-
### `apply_patch`
|
|
178
|
-
|
|
179
|
-
Apply structured patches across one or more files. Use for multi-hunk edits.
|
|
180
|
-
Experimental: enable via `tools.exec.applyPatch.enabled` (OpenAI models only).
|
|
181
|
-
`tools.exec.applyPatch.workspaceOnly` defaults to `true` (workspace-contained). Set it to `false` only if you intentionally want `apply_patch` to write/delete outside the workspace directory.
|
|
182
|
-
|
|
183
|
-
### `exec`
|
|
184
|
-
|
|
185
|
-
Run shell commands in the workspace.
|
|
186
|
-
|
|
187
|
-
Core parameters:
|
|
188
|
-
|
|
189
|
-
- `command` (required)
|
|
190
|
-
- `yieldMs` (auto-background after timeout, default 10000)
|
|
191
|
-
- `background` (immediate background)
|
|
192
|
-
- `timeout` (seconds; kills the process if exceeded, default 1800)
|
|
193
|
-
- `elevated` (bool; run on host if elevated mode is enabled/allowed; only changes behavior when the agent is sandboxed)
|
|
194
|
-
- `host` (`sandbox | gateway | node`)
|
|
195
|
-
- `security` (`deny | allowlist | full`)
|
|
196
|
-
- `ask` (`off | on-miss | always`)
|
|
197
|
-
- `node` (node id/name for `host=node`)
|
|
198
|
-
- Need a real TTY? Set `pty: true`.
|
|
199
|
-
|
|
200
|
-
Notes:
|
|
201
|
-
|
|
202
|
-
- Returns `status: "running"` with a `sessionId` when backgrounded.
|
|
203
|
-
- Use `process` to poll/log/write/kill/clear background sessions.
|
|
204
|
-
- If `process` is disallowed, `exec` runs synchronously and ignores `yieldMs`/`background`.
|
|
205
|
-
- `elevated` is gated by `tools.elevated` plus any `agents.list[].tools.elevated` override (both must allow) and is an alias for `host=gateway` + `security=full`.
|
|
206
|
-
- `elevated` only changes behavior when the agent is sandboxed (otherwise it’s a no-op).
|
|
207
|
-
- `host=node` can target a macOS companion app or a headless node host (`symi node run`).
|
|
208
|
-
- gateway/node approvals and allowlists: [Exec approvals](/tools/exec-approvals).
|
|
209
|
-
|
|
210
|
-
### `process`
|
|
211
|
-
|
|
212
|
-
Manage background exec sessions.
|
|
213
|
-
|
|
214
|
-
Core actions:
|
|
215
|
-
|
|
216
|
-
- `list`, `poll`, `log`, `write`, `kill`, `clear`, `remove`
|
|
217
|
-
|
|
218
|
-
Notes:
|
|
219
|
-
|
|
220
|
-
- `poll` returns new output and exit status when complete.
|
|
221
|
-
- `log` supports line-based `offset`/`limit` (omit `offset` to grab the last N lines).
|
|
222
|
-
- `process` is scoped per agent; sessions from other agents are not visible.
|
|
223
|
-
|
|
224
|
-
### `loop-detection` (tool-call loop guardrails)
|
|
225
|
-
|
|
226
|
-
Symi tracks recent tool-call history and blocks or warns when it detects repetitive no-progress loops.
|
|
227
|
-
Enable with `tools.loopDetection.enabled: true` (default is `false`).
|
|
228
|
-
|
|
229
|
-
```json5
|
|
230
|
-
{
|
|
231
|
-
tools: {
|
|
232
|
-
loopDetection: {
|
|
233
|
-
enabled: true,
|
|
234
|
-
warningThreshold: 10,
|
|
235
|
-
criticalThreshold: 20,
|
|
236
|
-
globalCircuitBreakerThreshold: 30,
|
|
237
|
-
historySize: 30,
|
|
238
|
-
detectors: {
|
|
239
|
-
genericRepeat: true,
|
|
240
|
-
knownPollNoProgress: true,
|
|
241
|
-
pingPong: true,
|
|
242
|
-
},
|
|
243
|
-
},
|
|
244
|
-
},
|
|
245
|
-
}
|
|
246
|
-
```
|
|
247
|
-
|
|
248
|
-
- `genericRepeat`: repeated same tool + same params call pattern.
|
|
249
|
-
- `knownPollNoProgress`: repeating poll-like tools with identical outputs.
|
|
250
|
-
- `pingPong`: alternating `A/B/A/B` no-progress patterns.
|
|
251
|
-
- Per-agent override: `agents.list[].tools.loopDetection`.
|
|
252
|
-
|
|
253
|
-
### `web_search`
|
|
254
|
-
|
|
255
|
-
Search the web using Brave Search API.
|
|
256
|
-
|
|
257
|
-
Core parameters:
|
|
258
|
-
|
|
259
|
-
- `query` (required)
|
|
260
|
-
- `count` (1–10; default from `tools.web.search.maxResults`)
|
|
261
|
-
|
|
262
|
-
Notes:
|
|
263
|
-
|
|
264
|
-
- Requires a Brave API key (recommended: `symi configure --section web`, or set `BRAVE_API_KEY`).
|
|
265
|
-
- Enable via `tools.web.search.enabled`.
|
|
266
|
-
- Responses are cached (default 15 min).
|
|
267
|
-
- See [Web tools](/tools/web) for setup.
|
|
268
|
-
|
|
269
|
-
### `web_fetch`
|
|
270
|
-
|
|
271
|
-
Fetch and extract readable content from a URL (HTML → markdown/text).
|
|
272
|
-
|
|
273
|
-
Core parameters:
|
|
274
|
-
|
|
275
|
-
- `url` (required)
|
|
276
|
-
- `extractMode` (`markdown` | `text`)
|
|
277
|
-
- `maxChars` (truncate long pages)
|
|
278
|
-
|
|
279
|
-
Notes:
|
|
280
|
-
|
|
281
|
-
- Enable via `tools.web.fetch.enabled`.
|
|
282
|
-
- `maxChars` is clamped by `tools.web.fetch.maxCharsCap` (default 50000).
|
|
283
|
-
- Responses are cached (default 15 min).
|
|
284
|
-
- For JS-heavy sites, prefer the browser tool.
|
|
285
|
-
- See [Web tools](/tools/web) for setup.
|
|
286
|
-
- See [Firecrawl](/tools/firecrawl) for the optional anti-bot fallback.
|
|
287
|
-
|
|
288
|
-
### `browser`
|
|
289
|
-
|
|
290
|
-
Control the dedicated Symi-managed browser.
|
|
291
|
-
|
|
292
|
-
Core actions:
|
|
293
|
-
|
|
294
|
-
- `status`, `start`, `stop`, `tabs`, `open`, `focus`, `close`
|
|
295
|
-
- `snapshot` (aria/ai)
|
|
296
|
-
- `screenshot` (returns image block + `MEDIA:<path>`)
|
|
297
|
-
- `act` (UI actions: click/type/press/hover/drag/select/fill/resize/wait/evaluate)
|
|
298
|
-
- `navigate`, `console`, `pdf`, `upload`, `dialog`
|
|
299
|
-
|
|
300
|
-
Profile management:
|
|
301
|
-
|
|
302
|
-
- `profiles` — list all browser profiles with status
|
|
303
|
-
- `create-profile` — create new profile with auto-allocated port (or `cdpUrl`)
|
|
304
|
-
- `delete-profile` — stop browser, delete user data, remove from config (local only)
|
|
305
|
-
- `reset-profile` — kill orphan process on profile's port (local only)
|
|
306
|
-
|
|
307
|
-
Common parameters:
|
|
308
|
-
|
|
309
|
-
- `profile` (optional; defaults to `browser.defaultProfile`)
|
|
310
|
-
- `target` (`sandbox` | `host` | `node`)
|
|
311
|
-
- `node` (optional; picks a specific node id/name)
|
|
312
|
-
Notes:
|
|
313
|
-
- Requires `browser.enabled=true` (default is `true`; set `false` to disable).
|
|
314
|
-
- All actions accept optional `profile` parameter for multi-instance support.
|
|
315
|
-
- When `profile` is omitted, uses `browser.defaultProfile` (defaults to "chrome").
|
|
316
|
-
- Profile names: lowercase alphanumeric + hyphens only (max 64 chars).
|
|
317
|
-
- Port range: 18800-18899 (~100 profiles max).
|
|
318
|
-
- Remote profiles are attach-only (no start/stop/reset).
|
|
319
|
-
- If a browser-capable node is connected, the tool may auto-route to it (unless you pin `target`).
|
|
320
|
-
- `snapshot` defaults to `ai` when Playwright is installed; use `aria` for the accessibility tree.
|
|
321
|
-
- `snapshot` also supports role-snapshot options (`interactive`, `compact`, `depth`, `selector`) which return refs like `e12`.
|
|
322
|
-
- `act` requires `ref` from `snapshot` (numeric `12` from AI snapshots, or `e12` from role snapshots); use `evaluate` for rare CSS selector needs.
|
|
323
|
-
- Avoid `act` → `wait` by default; use it only in exceptional cases (no reliable UI state to wait on).
|
|
324
|
-
- `upload` can optionally pass a `ref` to auto-click after arming.
|
|
325
|
-
- `upload` also supports `inputRef` (aria ref) or `element` (CSS selector) to set `<input type="file">` directly.
|
|
326
|
-
|
|
327
|
-
### `canvas`
|
|
328
|
-
|
|
329
|
-
Drive the node Canvas (present, eval, snapshot, A2UI).
|
|
330
|
-
|
|
331
|
-
Core actions:
|
|
332
|
-
|
|
333
|
-
- `present`, `hide`, `navigate`, `eval`
|
|
334
|
-
- `snapshot` (returns image block + `MEDIA:<path>`)
|
|
335
|
-
- `a2ui_push`, `a2ui_reset`
|
|
336
|
-
|
|
337
|
-
Notes:
|
|
338
|
-
|
|
339
|
-
- Uses gateway `node.invoke` under the hood.
|
|
340
|
-
- If no `node` is provided, the tool picks a default (single connected node or local mac node).
|
|
341
|
-
- A2UI is v0.8 only (no `createSurface`); the CLI rejects v0.9 JSONL with line errors.
|
|
342
|
-
- Quick smoke: `symi nodes canvas a2ui push --node <id> --text "Hello from A2UI"`.
|
|
343
|
-
|
|
344
|
-
### `nodes`
|
|
345
|
-
|
|
346
|
-
Discover and target paired nodes; send notifications; capture camera/screen.
|
|
347
|
-
|
|
348
|
-
Core actions:
|
|
349
|
-
|
|
350
|
-
- `status`, `describe`
|
|
351
|
-
- `pending`, `approve`, `reject` (pairing)
|
|
352
|
-
- `notify` (macOS `system.notify`)
|
|
353
|
-
- `run` (macOS `system.run`)
|
|
354
|
-
- `camera_snap`, `camera_clip`, `screen_record`
|
|
355
|
-
- `location_get`
|
|
356
|
-
|
|
357
|
-
Notes:
|
|
358
|
-
|
|
359
|
-
- Camera/screen commands require the node app to be foregrounded.
|
|
360
|
-
- Images return image blocks + `MEDIA:<path>`.
|
|
361
|
-
- Videos return `FILE:<path>` (mp4).
|
|
362
|
-
- Location returns a JSON payload (lat/lon/accuracy/timestamp).
|
|
363
|
-
- `run` params: `command` argv array; optional `cwd`, `env` (`KEY=VAL`), `commandTimeoutMs`, `invokeTimeoutMs`, `needsScreenRecording`.
|
|
364
|
-
|
|
365
|
-
Example (`run`):
|
|
366
|
-
|
|
367
|
-
```json
|
|
368
|
-
{
|
|
369
|
-
"action": "run",
|
|
370
|
-
"node": "office-mac",
|
|
371
|
-
"command": ["echo", "Hello"],
|
|
372
|
-
"env": ["FOO=bar"],
|
|
373
|
-
"commandTimeoutMs": 12000,
|
|
374
|
-
"invokeTimeoutMs": 45000,
|
|
375
|
-
"needsScreenRecording": false
|
|
376
|
-
}
|
|
377
|
-
```
|
|
378
|
-
|
|
379
|
-
### `image`
|
|
380
|
-
|
|
381
|
-
Analyze an image with the configured image model.
|
|
382
|
-
|
|
383
|
-
Core parameters:
|
|
384
|
-
|
|
385
|
-
- `image` (required path or URL)
|
|
386
|
-
- `prompt` (optional; defaults to "Describe the image.")
|
|
387
|
-
- `model` (optional override)
|
|
388
|
-
- `maxBytesMb` (optional size cap)
|
|
389
|
-
|
|
390
|
-
Notes:
|
|
391
|
-
|
|
392
|
-
- Only available when `agents.defaults.imageModel` is configured (primary or fallbacks), or when an implicit image model can be inferred from your default model + configured auth (best-effort pairing).
|
|
393
|
-
- Uses the image model directly (independent of the main chat model).
|
|
394
|
-
|
|
395
|
-
### `message`
|
|
396
|
-
|
|
397
|
-
Core actions:
|
|
398
|
-
|
|
399
|
-
- `send` (text + optional media; MS Teams also supports `card` for Adaptive Cards)
|
|
400
|
-
- `react` / `reactions` / `read` / `edit` / `delete`
|
|
401
|
-
- `pin` / `unpin` / `list-pins`
|
|
402
|
-
- `permissions`
|
|
403
|
-
- `thread-create` / `thread-list` / `thread-reply`
|
|
404
|
-
- `search`
|
|
405
|
-
- `sticker`
|
|
406
|
-
- `member-info` / `role-info`
|
|
407
|
-
- `emoji-list` / `emoji-upload` / `sticker-upload`
|
|
408
|
-
- `role-add` / `role-remove`
|
|
409
|
-
- `channel-info` / `channel-list`
|
|
410
|
-
- `voice-status`
|
|
411
|
-
- `event-list` / `event-create`
|
|
412
|
-
- `timeout` / `kick` / `ban`
|
|
413
|
-
|
|
414
|
-
Notes:
|
|
415
|
-
|
|
416
|
-
- `send` routes WhatsApp via the Gateway; other channels go direct.
|
|
417
|
-
- When a message tool call is bound to an active chat session, sends are constrained to that session’s target to avoid cross-context leaks.
|
|
418
|
-
|
|
419
|
-
### `cron`
|
|
420
|
-
|
|
421
|
-
Manage Gateway cron jobs and wakeups.
|
|
422
|
-
|
|
423
|
-
Core actions:
|
|
424
|
-
|
|
425
|
-
- `status`, `list`
|
|
426
|
-
- `add`, `update`, `remove`, `run`, `runs`
|
|
427
|
-
- `wake` (enqueue system event + optional immediate heartbeat)
|
|
428
|
-
|
|
429
|
-
Notes:
|
|
430
|
-
|
|
431
|
-
- `add` expects a full cron job object (same schema as `cron.add` RPC).
|
|
432
|
-
- `update` uses `{ jobId, patch }` (`id` accepted for compatibility).
|
|
433
|
-
|
|
434
|
-
### `gateway`
|
|
435
|
-
|
|
436
|
-
Restart or apply updates to the running Gateway process (in-place).
|
|
437
|
-
|
|
438
|
-
Core actions:
|
|
439
|
-
|
|
440
|
-
- `restart` (authorizes + sends `SIGUSR1` for in-process restart; `symi gateway` restart in-place)
|
|
441
|
-
- `config.get` / `config.schema`
|
|
442
|
-
- `config.apply` (validate + write config + restart + wake)
|
|
443
|
-
- `config.patch` (merge partial update + restart + wake)
|
|
444
|
-
- `update.run` (run update + restart + wake)
|
|
445
|
-
|
|
446
|
-
Notes:
|
|
447
|
-
|
|
448
|
-
- Use `delayMs` (defaults to 2000) to avoid interrupting an in-flight reply.
|
|
449
|
-
- `restart` is enabled by default; set `commands.restart: false` to disable it.
|
|
450
|
-
|
|
451
|
-
### `sessions_list` / `sessions_history` / `sessions_send` / `sessions_spawn` / `session_status`
|
|
452
|
-
|
|
453
|
-
List sessions, inspect transcript history, or send to another session.
|
|
454
|
-
|
|
455
|
-
Core parameters:
|
|
456
|
-
|
|
457
|
-
- `sessions_list`: `kinds?`, `limit?`, `activeMinutes?`, `messageLimit?` (0 = none)
|
|
458
|
-
- `sessions_history`: `sessionKey` (or `sessionId`), `limit?`, `includeTools?`
|
|
459
|
-
- `sessions_send`: `sessionKey` (or `sessionId`), `message`, `timeoutSeconds?` (0 = fire-and-forget)
|
|
460
|
-
- `sessions_spawn`: `task`, `label?`, `agentId?`, `model?`, `runTimeoutSeconds?`, `cleanup?`
|
|
461
|
-
- `session_status`: `sessionKey?` (default current; accepts `sessionId`), `model?` (`default` clears override)
|
|
462
|
-
|
|
463
|
-
Notes:
|
|
464
|
-
|
|
465
|
-
- `main` is the canonical direct-chat key; global/unknown are hidden.
|
|
466
|
-
- `messageLimit > 0` fetches last N messages per session (tool messages filtered).
|
|
467
|
-
- Session targeting is controlled by `tools.sessions.visibility` (default `tree`: current session + spawned subagent sessions). If you run a shared agent for multiple users, consider setting `tools.sessions.visibility: "self"` to prevent cross-session browsing.
|
|
468
|
-
- `sessions_send` waits for final completion when `timeoutSeconds > 0`.
|
|
469
|
-
- Delivery/announce happens after completion and is best-effort; `status: "ok"` confirms the agent run finished, not that the announce was delivered.
|
|
470
|
-
- `sessions_spawn` starts a sub-agent run and posts an announce reply back to the requester chat.
|
|
471
|
-
- Reply format includes `Status`, `Result`, and compact stats.
|
|
472
|
-
- `Result` is the assistant completion text; if missing, the latest `toolResult` is used as fallback.
|
|
473
|
-
- Manual completion-mode spawns send directly first, with queue fallback and retry on transient failures (`status: "ok"` means run finished, not that announce delivered).
|
|
474
|
-
- `sessions_spawn` is non-blocking and returns `status: "accepted"` immediately.
|
|
475
|
-
- `sessions_send` runs a reply‑back ping‑pong (reply `REPLY_SKIP` to stop; max turns via `session.agentToAgent.maxPingPongTurns`, 0–5).
|
|
476
|
-
- After the ping‑pong, the target agent runs an **announce step**; reply `ANNOUNCE_SKIP` to suppress the announcement.
|
|
477
|
-
- Sandbox clamp: when the current session is sandboxed and `agents.defaults.sandbox.sessionToolsVisibility: "spawned"`, Symi clamps `tools.sessions.visibility` to `tree`.
|
|
478
|
-
|
|
479
|
-
### `agents_list`
|
|
480
|
-
|
|
481
|
-
List agent ids that the current session may target with `sessions_spawn`.
|
|
482
|
-
|
|
483
|
-
Notes:
|
|
484
|
-
|
|
485
|
-
- Result is restricted to per-agent allowlists (`agents.list[].subagents.allowAgents`).
|
|
486
|
-
- When `["*"]` is configured, the tool includes all configured agents and marks `allowAny: true`.
|
|
487
|
-
|
|
488
|
-
## Parameters (common)
|
|
489
|
-
|
|
490
|
-
Gateway-backed tools (`canvas`, `nodes`, `cron`):
|
|
491
|
-
|
|
492
|
-
- `gatewayUrl` (default `ws://127.0.0.1:18789`)
|
|
493
|
-
- `gatewayToken` (if auth enabled)
|
|
494
|
-
- `timeoutMs`
|
|
495
|
-
|
|
496
|
-
Note: when `gatewayUrl` is set, include `gatewayToken` explicitly. Tools do not inherit config
|
|
497
|
-
or environment credentials for overrides, and missing explicit credentials is an error.
|
|
498
|
-
|
|
499
|
-
Browser tool:
|
|
500
|
-
|
|
501
|
-
- `profile` (optional; defaults to `browser.defaultProfile`)
|
|
502
|
-
- `target` (`sandbox` | `host` | `node`)
|
|
503
|
-
- `node` (optional; pin a specific node id/name)
|
|
504
|
-
|
|
505
|
-
## Recommended agent flows
|
|
506
|
-
|
|
507
|
-
Browser automation:
|
|
508
|
-
|
|
509
|
-
1. `browser` → `status` / `start`
|
|
510
|
-
2. `snapshot` (ai or aria)
|
|
511
|
-
3. `act` (click/type/press)
|
|
512
|
-
4. `screenshot` if you need visual confirmation
|
|
513
|
-
|
|
514
|
-
Canvas render:
|
|
515
|
-
|
|
516
|
-
1. `canvas` → `present`
|
|
517
|
-
2. `a2ui_push` (optional)
|
|
518
|
-
3. `snapshot`
|
|
519
|
-
|
|
520
|
-
Node targeting:
|
|
521
|
-
|
|
522
|
-
1. `nodes` → `status`
|
|
523
|
-
2. `describe` on the chosen node
|
|
524
|
-
3. `notify` / `run` / `camera_snap` / `screen_record`
|
|
525
|
-
|
|
526
|
-
## Safety
|
|
527
|
-
|
|
528
|
-
- Avoid direct `system.run`; use `nodes` → `run` only with explicit user consent.
|
|
529
|
-
- Respect user consent for camera/screen capture.
|
|
530
|
-
- Use `status/describe` to ensure permissions before invoking media commands.
|
|
531
|
-
|
|
532
|
-
## How tools are presented to the agent
|
|
533
|
-
|
|
534
|
-
Tools are exposed in two parallel channels:
|
|
535
|
-
|
|
536
|
-
1. **System prompt text**: a human-readable list + guidance.
|
|
537
|
-
2. **Tool schema**: the structured function definitions sent to the model API.
|
|
538
|
-
|
|
539
|
-
That means the agent sees both “what tools exist” and “how to call them.” If a tool
|
|
540
|
-
doesn’t appear in the system prompt or the schema, the model cannot call it.
|
package/docs/tools/llm-task.md
DELETED
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
summary: "JSON-only LLM tasks for workflows (optional plugin tool)"
|
|
3
|
-
read_when:
|
|
4
|
-
- You want a JSON-only LLM step inside workflows
|
|
5
|
-
- You need schema-validated LLM output for automation
|
|
6
|
-
title: "LLM Task"
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
# LLM Task
|
|
10
|
-
|
|
11
|
-
`llm-task` is an **optional plugin tool** that runs a JSON-only LLM task and
|
|
12
|
-
returns structured output (optionally validated against JSON Schema).
|
|
13
|
-
|
|
14
|
-
This is ideal for workflow engines like Pipeline: you can add a single LLM step
|
|
15
|
-
without writing custom Symi code for each workflow.
|
|
16
|
-
|
|
17
|
-
## Enable the plugin
|
|
18
|
-
|
|
19
|
-
1. Enable the plugin:
|
|
20
|
-
|
|
21
|
-
```json
|
|
22
|
-
{
|
|
23
|
-
"plugins": {
|
|
24
|
-
"entries": {
|
|
25
|
-
"llm-task": { "enabled": true }
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
2. Allowlist the tool (it is registered with `optional: true`):
|
|
32
|
-
|
|
33
|
-
```json
|
|
34
|
-
{
|
|
35
|
-
"agents": {
|
|
36
|
-
"list": [
|
|
37
|
-
{
|
|
38
|
-
"id": "main",
|
|
39
|
-
"tools": { "allow": ["llm-task"] }
|
|
40
|
-
}
|
|
41
|
-
]
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
## Config (optional)
|
|
47
|
-
|
|
48
|
-
```json
|
|
49
|
-
{
|
|
50
|
-
"plugins": {
|
|
51
|
-
"entries": {
|
|
52
|
-
"llm-task": {
|
|
53
|
-
"enabled": true,
|
|
54
|
-
"config": {
|
|
55
|
-
"defaultProvider": "openai-codex",
|
|
56
|
-
"defaultModel": "gpt-5.2",
|
|
57
|
-
"defaultAuthProfileId": "main",
|
|
58
|
-
"allowedModels": ["openai-codex/gpt-5.3-codex"],
|
|
59
|
-
"maxTokens": 800,
|
|
60
|
-
"timeoutMs": 30000
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
`allowedModels` is an allowlist of `provider/model` strings. If set, any request
|
|
69
|
-
outside the list is rejected.
|
|
70
|
-
|
|
71
|
-
## Tool parameters
|
|
72
|
-
|
|
73
|
-
- `prompt` (string, required)
|
|
74
|
-
- `input` (any, optional)
|
|
75
|
-
- `schema` (object, optional JSON Schema)
|
|
76
|
-
- `provider` (string, optional)
|
|
77
|
-
- `model` (string, optional)
|
|
78
|
-
- `authProfileId` (string, optional)
|
|
79
|
-
- `temperature` (number, optional)
|
|
80
|
-
- `maxTokens` (number, optional)
|
|
81
|
-
- `timeoutMs` (number, optional)
|
|
82
|
-
|
|
83
|
-
## Output
|
|
84
|
-
|
|
85
|
-
Returns `details.json` containing the parsed JSON (and validates against
|
|
86
|
-
`schema` when provided).
|
|
87
|
-
|
|
88
|
-
## Example: Pipeline workflow step
|
|
89
|
-
|
|
90
|
-
```pipeline
|
|
91
|
-
symi.invoke --tool llm-task --action json --args-json '{
|
|
92
|
-
"prompt": "Given the input email, return intent and draft.",
|
|
93
|
-
"input": {
|
|
94
|
-
"subject": "Hello",
|
|
95
|
-
"body": "Can you help?"
|
|
96
|
-
},
|
|
97
|
-
"schema": {
|
|
98
|
-
"type": "object",
|
|
99
|
-
"properties": {
|
|
100
|
-
"intent": { "type": "string" },
|
|
101
|
-
"draft": { "type": "string" }
|
|
102
|
-
},
|
|
103
|
-
"required": ["intent", "draft"],
|
|
104
|
-
"additionalProperties": false
|
|
105
|
-
}
|
|
106
|
-
}'
|
|
107
|
-
```
|
|
108
|
-
|
|
109
|
-
## Safety notes
|
|
110
|
-
|
|
111
|
-
- The tool is **JSON-only** and instructs the model to output only JSON (no
|
|
112
|
-
code fences, no commentary).
|
|
113
|
-
- No tools are exposed to the model for this run.
|
|
114
|
-
- Treat output as untrusted unless you validate with `schema`.
|
|
115
|
-
- Put approvals before any side-effecting step (send, post, exec).
|