Skip to content

Reference

Everything you can set, and every file the plugin keeps, in one place.

Commands

/vibesenpai:insightsopens the pane: findings, fixes with Apply, and the health of the history pass and the model reads
/vibesenpai:judgeon or off for the model reads; with no argument, their status
/vibesenpai:reportwrites your history as one HTML file and opens it

/plugin disable vibesenpai stops everything, hooks included.

Settings

None are required. Apart from /vibesenpai:judge on|off, settings live in the config file or in the environment Claude Code runs in.

If a setting is given in more than one place, the environment variable wins over the config file, and the config file over the default.

settingenvironmentconfig file keydefault
transcript sourcesVIBESENPAI_SOURCES, separated by , or :sources (a list)~/.claude/projects (under CLAUDE_CONFIG_DIR when that is set) and ~/.codex/sessions
the store’s locationVIBESENPAI_ARCHIVEarchive$XDG_DATA_HOME/vibesenpai, else ~/.local/share/vibesenpai
free-check presetVIBESENPAI_PRESETpresetcore
muted free checksVIBESENPAI_MUTE, separated by , or :mute (a list)none
config fileVIBESENPAI_CONFIG$XDG_CONFIG_HOME/vibesenpai/config.json, else ~/.config/vibesenpai/config.json

Only Claude Code transcripts are read: there is no parser for files under ~/.codex/sessions.

The config file is JSON. To turn on Repeated call:

{ "preset": "standard" }

To keep a free check from running:

{ "mute": ["edit_retry"] }

An unknown preset, or a mute name that is not a free check, is reported as a warning. It is never silently ignored.

Presets and mute

A preset decides which free checks run. It does not affect the model reads.

checkcore (default)standardall
Edit retry (edit_retry)yesyesyes
Repeated call (redundant_call)yesyes

all is the same as standard today. Cache rebuilds are not part of a preset; they are shown whenever one happened.

mute takes free-check names (edit_retry, redundant_call). A muted check is not computed, counted or mentioned.

Environment only

variableeffect
VIBESENPAI_DISABLE=1every hook returns before doing anything. Nothing runs
VIBESENPAI_COLOR1 forces colour in text output, 0 turns it off
NO_COLORturns colour off, unless VIBESENPAI_COLOR=1

Without either, colour is on only when the output is a terminal.

Model-read settings

Kept in judge-settings.json in the store. Until a setting has been written, the defaults apply. /vibesenpai:judge on and off set enabled; the others have no slash command.

keydefaultwhat
enabledtruewhether the model reads run
modelhaikuthe model passed to claude -p --model
dailyTokens2000000tokens, in and out, the automatic reads may use per local day
catchUp200past sessions read once, newest first
cadence50new turns before a live session is read again
maxBatchTokens60000a batch larger than this is split
concurrency3batches sent at once
lookbacktruea misread intent, a constraint violation or an other finding must cite where the expectation was set before the agent acted

Files

Everything lives in the store (the archive setting), ~/.local/share/vibesenpai by default. Transcripts are never copied into it; they are read where Claude Code keeps them, under ~/.claude/projects.

fileholdsif you delete it
store.dbmodel findings and their quotes; how far each session has been read; tokens and dollars spent; your answers; when each fix was requested and first seen loadedyou lose the most. Model findings come back only by reading again, which spends tokens again, and only for transcripts Claude Code still keeps. The 200-session catch-up starts over. Hidden findings reappear. Fix history comes back only from transcripts still kept
standing.jsonyour history from the free checksnothing: the next history pass rebuilds it
finding-fixes.jsoneach model finding’s own fixnothing: the next history pass rebuilds it
judge-settings.jsonthe model-read settings abovethe defaults return, including enabled: true: model reads you turned off come back on
disclosedthat the one-time notice was shownthe notice is shown again
last-session-startwhen the last session startedthe next session-start summary shows no “new since your last session” count
jobs/each background job’s last run, failures and holdthe record starts fresh; a hold on the model reads is released
reports/the HTML reports you wrotethose files
index.jsonan optional transcript indexnothing: it is safe to delete

Claude Code deletes old transcripts after a while, and nothing here is a copy of one. So there is no history beyond what Claude Code still keeps.

The JSON files and reports are written to a temporary name and then renamed, so a crash leaves the old version whole.