Skip to main content

Configuration

Config fields

FieldTypeDefaultDescription
enabledbooltrueWhether partio is active
strategystring"manual-commit"Capture strategy
agentstring"claude-code"Name of the AI agent being tracked
log_levelstring"info"Log verbosity: debug, info, warn, error
strategy_options.push_sessionsbooltruePush checkpoint branch on git push

Default settings.json

Created by partio enable:
{
  "enabled": true,
  "strategy": "manual-commit",
  "agent": "claude-code",
  "log_level": "info",
  "strategy_options": {
    "push_sessions": true
  }
}

File locations

partio loads configuration from multiple sources, merged in order (later sources override earlier ones):
PriorityLocationDescription
1 (lowest)Built-in defaultsHard-coded in the binary
2~/.config/partio/settings.jsonGlobal/user-level config
3<repo>/.partio/settings.jsonRepo-level config (committed)
4<repo>/.partio/settings.local.jsonRepo-level local overrides (git-ignored)
5 (highest)Environment variablesRuntime overrides
Only fields actually present in a config file override the accumulated config. Unknown fields are ignored.

Environment variables

VariableOverridesAccepts
PARTIO_ENABLEDenabledtrue, 1 (case-insensitive) for enabled; anything else for disabled
PARTIO_STRATEGYstrategyStrategy name (e.g., manual-commit)
PARTIO_LOG_LEVELlog_leveldebug, info, warn, error
PARTIO_AGENTagentAgent name (e.g., claude-code)

Examples

Disable auto-push of sessions

If you don’t want checkpoint data to be pushed automatically:
.partio/settings.json
{
  "strategy_options": {
    "push_sessions": false
  }
}

Enable debug logging for a single command

partio --log-level debug status

Temporarily disable partio

PARTIO_ENABLED=false git commit -m "Skip partio for this commit"

Per-machine overrides

Use .partio/settings.local.json for settings that shouldn’t be committed (this file is automatically git-ignored):
.partio/settings.local.json
{
  "log_level": "debug"
}