reference

CLI and configuration

Every command, every setting, and where each one is stored.

Commands

pheebs init [--global] [--cursor|--codex] [--no-otel]   # any flag skips the prompts
pheebs doctor [--global] [--cursor|--codex]
pheebs config <list | get <key> | set <key> <value> | unset <key>>
pheebs insights [--days <n>] [--json]
pheebs hook <event_name> [--trigger-type <type>]
pheebs hook-cursor <event_name>
pheebs hook-codex <event_name>
CommandWhat it does
init Interactive setup for Claude Code, Cursor and Codex in the current repo: pick agents and scope, set the endpoint and token, choose OTel
init --global Write to user-level config instead of project-local, so the hooks apply to every repo, without prompting
init --cursor Configure Cursor hooks only, without prompting
init --codex Configure Codex hooks only, without prompting
init --no-otel Skip OpenTelemetry configuration
doctor Verify hooks, the endpoint, and your token status. Add --global to check user-level config
config list Show every setting and where it comes from
config set <key> <value> Set base-url, auto-update, classify, or token
config unset <key> Reset a setting to its default, or clear the token
insights Render your own report from the backend's /insights, in the terminal
insights --days <n> Narrow the window, 1 to 365. The default is whatever the backend uses, usually 30 days
insights --json Print the raw /insights payload, for scripting
hook <event> Handle a Claude Code hook event. Called by hooks, not by you
hook-cursor <event> Handle a Cursor hook event
hook-codex <event> Handle a Codex hook event

Settings

Settings live in ~/.pheebs/config.json. The token is stored separately in ~/.pheebs/.token, mode 0600.

pheebs config list                 # show every setting and where it comes from
pheebs config set base-url <url>   # point at a different backend endpoint
pheebs config set auto-update off  # disable the once-a-day background self-update
pheebs config set classify off     # stop sending prompts to the intent classifier
pheebs config set token <token>    # store and validate your Pheebs API token
pheebs config unset <key>          # reset a setting, or clear the token
SettingDefaultDescription
base-url unset (local-only)The backend endpoint. Unset means nothing is sent.
auto-update onThe once-a-day background self-update
classify onSend prompts to the backend intent classifier
token unsetYour Pheebs API token, for identity and auth

Environment variables

Two working-directory settings are environment variables rather than persisted config:

VariableDefaultDescription
PHEEBS_CODEBASE_ID Auto-detected from git remoteOverride the org/repo identifier
PHEEBS_LOG_PATH ~/.pheebs/logs/Where local JSONL logs go

Where things live

PathHolds
~/.pheebs/config.json Settings
~/.pheebs/.token Your API token, mode 0600
~/.pheebs/logs/ Daily JSONL files, one per codebase
.claude/settings.local.json Claude Code hooks and the OTel env block for the current repo, the default
~/.claude/settings.json The same, user-level, after init --global