Skip to main content

Configuration

Config fields

Default settings.json

Created by partio enable:

File locations

partio loads configuration from multiple sources, merged in order (later sources override earlier ones): Only fields actually present in a config file override the accumulated config. Unknown fields are ignored.

Environment variables

Choosing the agent

partio supports multiple AI coding agents — currently Claude Code and Codex. When agent is empty (the default), partio auto-detects whichever supported agent is running when you commit. Set agent (or PARTIO_AGENT) only when you want to pin a specific agent — for example, if you run more than one and want partio to prefer a particular one:
.partio/settings.json
If the pinned agent isn’t running at commit time, partio falls back to auto-detection.

Commit linking

When you commit with an AI session active, partio links that commit to the session and creates a checkpoint. The commit_linking setting controls whether it asks first: With ask, the prompt accepts:
  • Y (default) — link this commit to the session
  • n — skip linking for this commit only
  • a — always link from now on (persists commit_linking: always to .partio/settings.json)
In non-interactive environments (no TTY — CI, scripted commits), partio auto-links without prompting.

Secret redaction

Before any session data is written to the checkpoint branch, partio runs a two-layer secret redaction pass over all user-visible text fields (prompt, context, diff, JSONL transcript, and plan):
  1. Pattern-based detection — gitleaks-compatible regular expressions detect common secret formats including AWS access keys, GitHub personal access tokens, Slack tokens, Stripe keys, Google API keys, npm/PyPI tokens, and generic api_key=… / Bearer … assignments. Matched secrets are replaced with [REDACTED].
  2. Entropy-based detection — any whitespace-delimited token that is at least entropy_min_length characters long and has a Shannon entropy ≥ entropy_threshold bits/char is also replaced with [REDACTED]. This catches high-entropy strings that match no known pattern, while leaving short version strings, commit hashes, URLs, and natural-language words intact.
Redaction is enabled by default and tuned via the redact block:
.partio/settings.json
Redaction is a best-effort safety net, not a substitute for proper secret management (environment variables, secret managers). The git diff captured in a checkpoint may still contain other sensitive data depending on your code.

Examples

Disable auto-push of sessions

If you don’t want checkpoint data to be pushed automatically:
.partio/settings.json

Enable debug logging for a single command

Temporarily disable partio

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