Skip to main content

Configuration

Anyy configuration belongs to a Profile. Each Profile has its own model routes, channels, tools, schedules, credentials, workspace, and state.

ChangeRecommended surface
Initial setupanyy setup
Models and credentialsDashboard → Models or anyy setup model
ChannelsDashboard → Channels or anyy setup channel
Image, video, and speech routesDashboard → Models or the corresponding Tools page
Web searchDashboard → Tools → Web Search
Roles, skills, MCP, and cronTheir Dashboard section
Inspect the resolved configurationanyy config

anyy config is read-only. It reports the resolved Profile, paths, provider/model selection, and credential-reference health without printing secret values.

Use the supported editor

Dashboard and setup commands validate changes, protect credentials, and reload the live runtime where supported. Direct YAML editing is useful for advanced recovery, but it skips those guided checks.

Profile Layout​

The active Profile home contains the canonical user data for that Profile. Important paths include:

PathPurpose
config.yamlSettings and credential references; MCP value fields retain entered strings
secrets/Anyy-managed secret material
state.dbSessions, messages, jobs, audit, and other durable state
memory/USER.mdDurable user facts and preferences
memory/MEMORY.mdDurable assistant memory
objects/Content-addressed durable payloads referenced by canonical state
workspace/Context files and user-produced working files
skills/Installed Profile-local skills
roles/Profile-local Role definitions

Do not treat workspace/ as a security boundary. A tool still follows operating-system permissions and execution limits.

Which Profile Is Active?​

anyy status
anyy config

To inspect another named Profile:

anyy --profile work config

Commands that accept --home PATH can target an explicit Profile directory. Avoid mixing --profile, --profile-root, and ad-hoc --home values unless you are deliberately diagnosing path resolution.

Thinking Configuration and Migration​

The Profile's global thinking preference lives in main_model.inference; optional exact-target overrides live in the root model_thinking_levels map:

main_model:
provider_id: your-provider
model: your-model
inference:
enabled: true
# Leave level omitted to keep the global level unset.
model_thinking_levels:
"your-provider/your-model": high

Use your configured provider/model IDs. Map keys split at the first /; both sides must be nonempty. Validation does not normalize keys, and lookup is exact. An unregistered model key may be saved for later use. Values are named Pi levels: off, minimal, low, medium, high, xhigh, or max; runtime snapshots trim value whitespace. An empty map value is invalid.

Global enabled defaults to true. With enabled true or omitted, an omitted level means unset; enabled: false explicitly requests off, even without a level. Named off is also valid. The selected model clamps the request; inference.effective_level is read-only and is not a YAML setting. See selection priority.

When upgrading an old configuration to v0.1.107:

  • Remove the retired prompt_program.inference_level key, even if empty. Null and other typed values are also rejected. Move its intended global preference to main_model.inference, or an exact-model preference to model_thinking_levels.
  • Remove prompt_program.render_profile whenever present, even if null or empty. It has no replacement selector or must-high requirement.
  • Replace product provider_default values with a named Pi level. For a global level, removing level preserves unset; for a map entry, choose a named value or remove the entry.

JSON/YAML and product model APIs reject retired input explicitly; there is no alias or silent conversion to medium. Anyy does not silently rewrite these retired values; migrate them explicitly. Public prompt_program settings retain only resource_class. Native low-level omitted inference remains valid.

Retry and Model Interfaces​

Session retries, provider SDK retries, fallback, and virtual-model callbacks have separate controls; retry.enabled is not a switch for all retry behavior. See Provider Protocols and Model Interfaces for typed providers[].models[] records, sampling fields, and exact retry/httpIdleTimeoutMs settings.

MCP configuration​

Profile-wide MCP definitions remain under mcp.client.servers in config.yaml. The Profile's canonical Workspace may also contain .anyy/mcp.json (currently <ProfileHome>/workspace/.anyy/mcp.json). Full project definitions replace same-name Profile definitions; partial entries override only enabled state, exposure and the complete ordered tool-exposure rules. See Profile and project configuration for the file format and value expressions.

Enabled/exposure settings save to the selected definition or existing project override and affect only that server. Description, tool overrides, transport and credential edits through Profile commands remain raw Profile edits. CLI settings and Profile options must be submitted separately. enable/disable --project creates an enabled-only override for an unoverridden Profile server. add/remove --local edits only native project definitions, preserving the Profile definition and independent credentials; those file edits take effect after the next startup or idle Session reload.

anyy mcp reload reconnects a server using loaded values; it does not reread files. Startup and the existing idle session.reload RPC reread the Profile/project configuration. See the MCP guide for value expressions, exposure rules, and OAuth authentication.

Credentials​

Anyy-managed credentials use references rather than the secret value in configuration. Explicit supported credential operations in Dashboard and setup write keys under the Profile's secrets/ directory with restricted permissions. Ordinary MCP value writes preserve their entered strings and expressions; they do not automatically create managed secrets. See MCP values.

Replace, clear, connect, or disconnect credentials through the same feature surface that created them. Never paste secrets into chat prompts, screenshots, shell history, or support bundles.

Applying Changes​

Many Dashboard and setup operations reload the affected runtime after a successful write. Channel changes can also be applied explicitly:

anyy channel reload

If a change is saved but behavior has not changed, check:

anyy status
anyy doctor
anyy gateway status

Restart the Gateway only when the feature's remediation asks for it or a live reload cannot complete.

v0.1.107 rejects these old MCP settings. Remove or migrate them in manually maintained configuration:

  • mcp.client.enabled: use each server's enabled setting.
  • mcp.client.session_idle_ttl_ms: retired; tool catalogs refresh on notifications and explicit operations.
  • Server connect_timeout_ms: use the existing call_timeout_ms for each initialization, discovery, or tool request.
  • tools.include, tools.exclude, and tools.trusted: use exposure and toolExposure; tools.resources and tools.prompts are also retired.

There is no new request_timeout_ms configuration key. See MCP Servers for complete formats and migration.

Back Up Before Manual Editing​

anyy backup create

The default omits the managed secrets/ directory and supported mcp/oauth/ storage; --include-secrets additionally includes those stores. Canonical configuration and Workspace files are still captured, so inline credentials already in them may enter even a default archive. Backups are not guaranteed to be fully redacted. Protect every archive as private data, and include the managed secret stores only when it will be protected like a credential store. See Backup & Restore.

Troubleshooting​

SymptomCheck
A setting appears unchangedConfirm the active Profile and inspect anyy config
Gateway still uses old valuesRun the relevant reload action, then inspect anyy status
Configuration validation failsUse the Dashboard form or setup wizard to identify the invalid field
Credential is configured but unresolvedReplace it from the owning Models, Tools, or Channels page
Hand-edited YAML prevents startupRestore the last valid file or restore a backup into a new Profile