opencode_config_set
Patch the OpenCode config on the local or a remote Yaver machine. Each top-level field is optional; pass empty string to clear. defaultAgent picks the agent invoked when no --agent flag is given. model is the top-level default model id. smallModel is used for cheap helper calls. buildModel and pl...
This record as markdown: /tools/io-github-kivanccakmak-yaver/opencode-config-set.md
What opencode_config_set does on Yaver
AI agents use opencode_config_set to create or update resources in Yaver, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Yaver environment.
| Parameter | Type | Required | Description |
|---|---|---|---|
model | string | — | Top-level default model id |
device_id | string | — | Optional remote device ID |
providers | array | — | Optional list of provider upserts — each {id, name?, baseUrl?, apiKey?, models?, delete?}. |
plan_model | string | — | Model for agent.plan |
build_model | string | — | Model for agent.build |
small_model | string | — | Cheap-helper model id |
default_agent | string | — | Default agent name (e.g. build, plan, or any custom agent) |
Parameters from the server's own tool schema.
Why opencode_config_set is rated Medium
This tool creates, updates, and modifies configuration settings on local or remote machines. These are reversible operations (configs can be patched again or restored), so it is Write rather than Destructive.
From the tool's definition Tool description states 'Patch the OpenCode config' and explicitly mentions modifying fields like defaultAgent, model, smallModel, buildModel, planModel, and providers.
Risk signalsHandles credentials or secrets (providers[].apiKey) · High parameter count (13 properties)
Attacks that exploit this kind of access
The rule that runs opencode_config_set safely
PolicyLayer is an MCP gateway: it sits between your AI agents and Yaver, and checks every tool call against a rule you set before the call runs. Nothing changes on the server itself. For opencode_config_set, this is the rule to start with:
opencode_config_set stays usable, but capped: an agent stuck in a loop can't make hundreds of changes a minute. Everything else on the server is denied unless you say otherwise.
The button opens the PolicyLayer dashboard: create your workspace, connect Yaver, apply this rule, and every opencode_config_set call is checked against it from then on.
Questions about opencode_config_set
Patch the OpenCode config on the local or a remote Yaver machine. Each top-level field is optional; pass empty string to clear. defaultAgent picks the agent invoked when no --agent flag is given. model is the top-level default model id. smallModel is used for cheap helper calls. buildModel and planModel set the model under agent.build / agent.plan in opencode.json. providers is an optional list of provider upserts — each entry creates or merges a provider entry by id. Common cases: BYOK OpenRouter via {id:'openrouter', baseUrl:'https://openrouter.ai/api/v1', apiKey:'...'} or pointing a remote machine's opencode at a Tailscale-reachable Ollama via {id:'ollama', baseUrl:'http://100.x.x.x:11434'}. Pass delete:true on a provider entry to remove it. Other config keys (custom agents, MCP servers) stay untouched. Returns the new config summary. It is categorised as a Write tool in the Yaver MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.
opencode_config_set accepts 7 parameters: model, device_id, providers, plan_model, build_model, small_model, default_agent. The full parameter table on this page comes from the server's own tool schema.
Register the Yaver MCP server in PolicyLayer and add a rule for opencode_config_set: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Yaver. Nothing to install.
opencode_config_set is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.
Yes. Add a rate_limit block to the opencode_config_set rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for opencode_config_set. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
opencode_config_set is provided by the Yaver MCP server (yaver-cli). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
More on Yaver, and thousands of servers like it.
This server
Across the catalogue