allowedTools controls the optional tools available to an agent. It is an allowlist, but two groups have special defaults:
vault_get,vault_list,register_outcome,http_fetch, andhttp_downloadare always registered. Vault tools are kept for legacy agent-scoped secrets; use Connections for new external API keys and integrations.- If
allowedToolsis omitted or empty, Polpo also registers the baseline coding tools:read,write,edit,bash,glob,grep, andls. - If
allowedToolsis non-empty, include every coding tool the agent still needs. Optional tool categories and custom tools are never enabled implicitly.
Built-in catalog
Connections add explicit GitHub, Slack, Google Drive, remote MCP, channel, and API-key-backed tools. Project custom tools are enabled by their exact snake-case name.
Wildcards
The runtime expands these category wildcards:Runtime tool router
Large tool palettes can be exposed progressively. When the runtime tool router is active, the model receives a small set of router tools instead of every schema upfront:tool_listandtool_searchdiscover available tools.tool_readloads one exact tool schema on demand.tool_callexecutes the selected tool with JSON arguments.
allowedTools remains the source of truth. The router can only discover and
execute tools already granted to the agent; it does not expand permissions or
expose secrets. Hosts can configure this with POLPO_TOOL_ROUTER=auto|on|off,
POLPO_TOOL_ROUTER_THRESHOLD, and POLPO_TOOL_ROUTER_DIRECT_TOOLS.
Audio providers
Audio tools use the model configured on the agent.audio_transcribe reads
transcribe_model; audio_speak reads tts_model. Both fields use the
provider/model format.
OpenAI, Deepgram, and ElevenLabs audio models call the provider directly and
require the matching provider credential. Prefer managed routing or Connections
where available; legacy direct-provider paths can still use the agent vault.
edge/edge-tts runs in the agent sandbox and does not require a key. Audio
traffic does not currently use the managed Model Gateway.
For US English, start with deepgram/nova-3 for transcription and
deepgram/aura-2-thalia-en for speech. Add a deepgram provider credential
once; both tools reuse it.
Filesystem access
allowedPaths restricts filesystem tools to selected paths. Relative paths resolve from the agent working directory; in Polpo Cloud that directory is /home/daytona/project/workspace.
allowedPaths is omitted, access defaults to the workspace. Paths do not grant tools: the agent still needs the corresponding entries in allowedTools.