Skip to content
BeeuniBeeuni
English
Esc
↑↓navigate↵open⌘Jpreview
On this page

Legacy beeuni.toml

Support status and the migration path from v1 beeuni.toml to v2 beeuni.yaml.

This page covers the v1 manifest (beeuni.toml, beeuni_version: 1). For the current manifest, see Manifest reference.

Support status

Beeuni still supports v1 manifests. The platform resolves a project’s manifest in this order: beeuni.yaml, then beeuni.yml, then beeuni.toml. The current starter creates a beeuni_version: 2 beeuni.yaml. A v1 project keeps working with no forced upgrade.

v1 accepts TOML or YAML syntax. Version 2 accepts YAML only. A v2 manifest written in TOML fails validation.

Migrate to v2

Create beeuni.yaml at the repo root. Set beeuni_version: 2.

Convert [[agents]] to an agents: map, keyed by agent name.

Rename each agent’s env field to secrets. List every secret the agent needs — v2 does not grant secrets by default.

Add default_agent, naming the agent that runs by default.

Delete [[channels]]. Reconnect each channel from the dashboard.

If you use [sandbox] or [[sandboxes]], move each image definition under sandbox.templates.

Run beeuni validate against beeuni.yaml. Fix any error it reports.

Delete beeuni.toml.

Agent behavior — system prompt, model, mode, temperature, and more — never moves. It already lives in each agent’s .md frontmatter under .beeuni/opencode/agents/, in both v1 and v2. See Agents.

Check the result with beeuni validate --file beeuni.yaml. Fetch the full v2 schema with beeuni schema --version 2. See CLI reference for both commands.

Key differences

v1 (beeuni_version: 1) v2 (beeuni_version: 2) Change
[[agents]] (array) agents: (map keyed by name) Convert each array item to a map entry.
[[agents]].env agents.<name>.secrets Renamed. Default flips from all to none — see the callout below.
[[agents]].model removed Dead in v1 (parsed, never applied). Agent behavior always comes from the agent’s .md frontmatter.
[[agents]].file agents.<name>.file Dead in v1 (parsed, never applied). In v2 it names the agent’s .md.
no default_agent default_agent (required) Must name a declared, enabled agent.
[[channels]] removed Channel routing is dashboard-managed. A connected channel appears as a connectors: entry with provider: channel.
[sandbox] (singular, image keys directly on it) sandbox.templates (list) Move each image into a template entry.
[[sandboxes]] sandbox.templates Renamed.

A few beeuni_permissions actions are legacy-tolerated in v1 (project.session.exec, project.gateway.routing.edit, project.schedule.read, project.schedule.write, project.webhook.read, project.webhook.write, channel.read, channel.connect, channel.send, channel.disconnect) — the platform warns but allows them. The same actions are a hard error in v2. Remove them from any agent’s beeuni_permissions grant before you migrate.

Was this page helpful?