Skip to content

State layout

Ódinn keeps mutable runtime state outside application source. The selected state directory is private and repaired toward owner-only permissions.

.odinn/
config.json
records.jsonl
audit.jsonl
db/odinn.sqlite
artifacts/
oauth/
browser-profile/
jobs/
improvements/
skills/

This is a conceptual map, not an exhaustive list of migration, lock, recovery, or signing-key files.

  • config.json — provider metadata, policy, feature flags, and runtime settings; no API keys.
  • records.jsonl — memory, project, session, goal, and improvement records.
  • audit.jsonl — policy decisions and execution activity.
  • db/odinn.sqlite — durable runs, steps, ledger events, snapshots, capabilities, and experimental evidence.
  • artifacts/ — content-addressed, redacted run evidence stored outside SQLite.
  • jobs/ and approval/recovery files — restart-safe execution state.
  • oauth/ — refreshable provider OAuth material.
  • browser-profile/ — the isolated Chromium profile.
  • improvements/ — configuration restore points for applied reliability tuning.
  • skills/ — managed Skills SDK packages and registry state.

The gateway bearer token, audit signing keys, cron registry, Agent SDK registry, and browser recovery journal also live under the state root.

  • Never commit state to source control.
  • Never post the directory in a bug report.
  • Stop the gateway before a full restore.
  • Use odinn state backup instead of ad hoc partial copying.
  • Keep backups encrypted or access-controlled.
  • Do not hand-edit signed audit records.

For the SQLite event model, see Event ledger. For recovery, see State, backup, and restore.