Repository navigation
v1.4.0
Added
-
Lean mode per agent. An agent with 5–10 enabled servers can receive 100+ tool definitions —
tens of thousands of context tokens paid on every session for schemas it mostly never uses. A new
per-agent Tool exposure toggle (Agents page, default Full) switches an agent to Lean: its
tools/listshrinks to a constant-size set of meta-tools —switchboard__search_tools(ranked
lexical search over its enabled catalog),switchboard__describe_tools(full descriptions with
input/output shapes rendered as compact TypeScript instead of JSON Schema), and
switchboard__call_tool(invoke any enabled tool by namespaced name) — so tools are discovered on
demand via search → describe → call. The switch matrix still governs what is searchable and
callable, typo'd names come back with suggestions, the Logs page attributes wrapped calls to the
real upstream tool, and toggling the mode updates live sessions immediately. -
Agents can register MCP servers themselves. Discovering a useful server used to mean relaying
its config to a human to paste into the UI. An agent granted the new manager role (a per-agent
toggle on the Agents page, off by default) getsswitchboard__add_server— paste the same
claude mcp add …line ormcpServersJSON found in a README and the server is created, enabled,
and its tools appear in the same live session — plusswitchboard__assign_server,
switchboard__list_agentsandswitchboard__server_statusto manage the matrix and self-debug.
Local stdio servers are the deliberate exception: they execute a command on your machine, so no
agent can create one directly, whatever its role. -
A request/approval queue keeps humans in the loop. Every agent (manager or not) gets
switchboard__request_server: it files the ask — with a pasted config or just a reason — and
returns immediately. Pending requests show as a badge in the UI with a review panel that renders
stdio commands in a "this will execute on your machine" warning block; approving one creates the
server through the same path as the UI and pushes the new tools into the requesting agent's
still-open session. Denials carry an optional note the agent reads back with
switchboard__request_status. Stored request configs are encrypted at rest like every other
secret, and a Settings toggle hides the request tools entirely if you'd rather agents couldn't
ask. Servers created by agents show an "added by" chip for provenance, and because meta-tool
calls are ordinary MCP requests, every management action lands in the request logs.
Changed
- Calls to a server an agent lacks now fail exactly like calls to a server that doesn't exist.
The two cases used to return different errors ("not enabled for this agent" vs "unknown server"),
which let any agent probe which server slugs were configured globally. Both now return the same
Unknown servererror, so the switch matrix no longer leaks the existence of servers it hides.
Fixed
- Request logs no longer attribute
switchboard__*meta-tool calls to a phantom "switchboard"
server. Management and request meta-tools were logged withswitchboardas their upstream
server — a server that doesn't exist — polluting the Logs page's server filter. They now log with
no upstream server, like the other switchboard-native rows.