Configuration¶
Aesop reads ~/.config/aesop-agentic/config.toml by default. Set AESOP_CONFIG or pass the global option before the command:
Archive and Interface Settings¶
repo_root = "~/Aesop"
data_root = "~/Aesop/data"
state_root = "~/.local/state/aesop-agentic"
interval_hours = 8
check_interval_seconds = 900
notify = true
parse_after_collect = true
ui_mode = "browser"
terminal_app = "Terminal"
[sources]
enabled = ["codex", "claude_code", "chatgpt"]
# Optional additional roots supplement the built-in locations.
pi_session_roots = ["~/Agent Sessions/Pi"]
orca_roots = ["~/Library/Application Support/Orca Development"]
Top-level settings must precede [sources] and [[destinations]] tables. Use one [sources] table and preserve the full list of sources you want enabled when editing it.
| Setting | Meaning |
|---|---|
repo_root |
Workspace for relative data paths and automatic imports/<source>/ inboxes. It need not be a Git repository. |
data_root |
Raw artifacts, rendered documents, and manifests. The older collection_root spelling remains supported. |
state_root |
Local runtime state, including browser profiles; keep separate from backups. |
interval_hours |
Minimum hours between scheduled collection attempts; default 8. |
check_interval_seconds |
LaunchAgent check interval; default 900, minimum 60. |
parse_after_collect |
Render supported artifacts during the full run pipeline; default true. |
notify |
Allow native notifications; authorization is requested separately. |
ui_mode |
desktop, browser, or terminal. Setup currently defaults to desktop; choose browser for the PyPI-only installation. |
terminal_app |
Terminal, iTerm2, or Warp for launches into another terminal. |
Paths expand ~ and environment variables. Relative paths resolve against repo_root. The background service does not inherit your interactive shell environment; prefer explicit paths.
Backup Destinations¶
No destinations means no backup copies. Setup adds an iCloud destination; review it before your first full run.
Destinations run in separate workers with bounded transfer and verification time. A worker stops after timeout_seconds overall or stall_timeout_seconds without reported progress (local mirrors report every file; rclone and Git LFS send a heartbeat). Only whole-destination failures are retried, at most twice; timeouts and partial mirrors are recorded and resumed on the next run. Local mirrors keep a small record in state_root/mirrors/ so unchanged files, including iCloud placeholders, are checked without reading them. Use dedicated mirror locations and review permissions before copying sensitive transcripts.