A context drift monitor for Pi coding agent. It watches for “we’re no longer working on the same thing” and nudges you only when confidence is high.
Design constraints (why it feels non-annoying):
- command:
/yo(short, memorable) - nudges only when confidence ≥ 95
- no editor injection / no autocomplete prefill
- clear, compact footer signal:
<glyph> yo
If you want more of this kind of “small, sharp” Pi tooling, star the repo.
Install with Pi, not npm:
pi install npm:pi-igotchuThen in Pi:
/reload
/yo status
Local dev install (from a checkout):
pi install -l <path-to-pi-igotchu>- check current drift:
/yo - show detailed status:
/yo status - see a report overlay:
/yo report - enable/disable:
/yo on//yo off - set gates:
- confidence gate:
/yo threshold 95(95–99) - drift gate:
/yo nudge 85(0–100)
- confidence gate:
<glyph> yo
✕ yodisabled/error○ yolow drift◔ yomild drift◑ yomedium drift◕ yohigh drift● yonudge-ready (drift high AND confidence ≥ threshold)
/yo(quick status)/yo status/yo report/yo on|off/yo threshold <95-99>/yo nudge <0-100>/yo model show|auto|pin <provider/model>/yo sync(write.igotchu.mdnow)/yo deep(manual deep analysis using your current chat model)/yo reset
Config file:
~/.pi/agent/igotchu.json
Common keys:
threshold(95–99): confidence gate for user-facing nudgesnudgeThreshold(0–100): drift gate for user-facing nudges
- config:
~/.pi/agent/igotchu.json - state:
~/.pi/agent/state/igotchu.json - project memory:
<repo>/.igotchu.md(includes a preserved user-notes block)
- Installed but
/yois unknown- run
/reload(or restart Pi)
- run
- No footer signal
- install a footer renderer (recommended:
pi-oneliner)
- install a footer renderer (recommended:
Local dev loop:
# in your checkout
pi install -l .Then:
/reload
/yo status
Footer integration tip (recommended with pi-oneliner):
- status key:
yo - value format:
<glyph> yo
Example (oneliner allowlist):
{
"status": {
"right": {
"mode": "allowlist",
"allow": ["yo"]
}
}
}Release checklist:
- update
CHANGELOG.md - bump version:
npm version patch npm publish
MIT