Configuration

Configuration

CostDog works out of the box with zero configuration. But you can customize it if you want.

Environment Variables

COSTDOG_DATA_DIR

Custom path for the SQLite database. Default: ~/.costdog/

CODEX_HOME

Custom path for Codex sessions. Default: ~/.codex/

COSTDOG_PORT

Port for the web panel. Default: 3456

Data Storage

CostDog stores all data in a local SQLite database:

~/.costdog/costdog.sqlite

You can query this database directly using any SQLite client. The schema includes:

CREATE TABLE sessions (
  session_id TEXT,
  source TEXT,
  start_time TEXT,
  model TEXT,
  input_tokens INTEGER,
  output_tokens INTEGER,
  cache_read_tokens INTEGER,
  cost REAL,
  disk_write_bytes INTEGER,
  PRIMARY KEY (session_id, source)
);

CREATE TABLE alerts (
  id INTEGER PRIMARY KEY AUTOINCREMENT,
  level TEXT,
  message TEXT,
  timestamp TEXT,
  dismissed INTEGER DEFAULT 0
);

Auto-Refresh

CostDog automatically scans for new sessions every 30 seconds. This is currently not configurable. The widget updates in real-time via Tauri events.