Profiles
Docs/Use/Profiles
docs-site/use/profiles.md

A profile is a named bundle of settings: a model, extensions, MCP servers, skills, permissions, consent and environment. Two profiles from one binary are two different agents.

Without any configuration, every session runs the default profile, which is empty.

Write one

[profile.review]
model = "claude-sonnet-4-5"
extensions = ["git", "mcp.github"]       # MCP servers are named by their id, mcp.<name>
skills = ["review-checklist"]
consent = "once"
env = { GITHUB_TOKEN = "$GITHUB_TOKEN" } # references; the process environment wins

[profile.review.permissions]
read = true
write = false
  • extensions lists extension ids. An MCP server declared as [mcp_servers.github] is the extension mcp.github. A profile that names mcp.* ids runs only those servers.
  • env is a table of environment variables the session's processes get. A literal value is allowed only in the user layer.
  • permissions takes five shorthands: read, write, net, spawn, creds. true allows, false denies.
  • [profile.default] gives the default profile content.

Use one

HowEffect
orrery --profile reviewThis run.
[profiles] default = "review"Every run without --profile.
/profile use review in the TUIWrites profiles.default in your user layer.

Order: --profile, then [profiles] default, then default. A name that does not exist fails and says which profiles exist.

Inspect

orrery profile list          # every profile, default first; the one in use is marked
orrery profile show review   # its model, extensions, skills and env (values masked)

In the TUI, /profile lists them, and /profile new, /profile edit <name> and /profile use <name> write them. A change to the extensions, MCP servers or skills applies from the next turn.