~/.octop/ (or whatever path you set with OCTOP_HOME). The directory and its default contents are created automatically on the first run.
Directory layout
env is dotenv format and is applied before config.json loads. Use it when process environment is hard to set (for example a Docker volume) without editing Compose. The web UI Environments page and some tools also read and write this file.
config.json
Human-editable server settings. Edit directly and restart to apply changes. See Config File for the full field reference.
octop.db
SQLite database holding all control-plane data — users, agents, providers, sessions, and audit records.
secrets/
Auto-generated cryptographic material. Do not edit manually. Rotate with the
octop admin command.agents/
One subdirectory per agent, containing that agent’s LangGraph checkpoint state, uploaded attachments, and skill configs.
Rotate the JWT secret
Octop generates~/.octop/secrets/jwt_secret on first start and uses it to sign every access token. Rotate it with:
Move the data directory
SetOCTOP_HOME to any absolute path to store all Octop data elsewhere — useful for mounting a dedicated volume or placing data on faster storage:
~/.octop/ to the new path, then set OCTOP_HOME before restarting.
For persistent overrides, add the
export OCTOP_HOME=… line to your shell profile (e.g. ~/.bashrc or ~/.zshrc), or set it in the environment block of your systemd unit or launchd plist.Back up and restore
Everything Octop needs is in~/.octop/, which makes backups straightforward. Use octop backup create / octop backup restore — see Backup commands.

