1.9 KiB
Intent: Session Hygiene Extension
Motivation
Working in pi across long sessions, it's easy to lose track of what's changed. You finish a session with dozens of uncommitted files, unclear what goes with what, and the commit history becomes a mess of grab-bag commits. The problem isn't catastrophic — nothing is lost — but it erodes organization over time.
Need
Ambient awareness of git state while working, so commits happen naturally at good moments rather than as panicked cleanup at session end.
Use-Cases
-
Mid-session glance: You're deep in a refactor, glance at the footer, see "14 files" — mental note that there's a chunk of work building up. You might commit now, or keep going. Either way, you're aware.
-
Natural stopping point: You finish a logical unit of work. The footer reminds you there's uncommitted work. You run
/commit, get a suggested message based on what we discussed, and commit cleanly. -
Session end: You're about to close pi. Footer shows dirty state. You either commit, stash, or consciously leave it — but you're not surprised by 48 files later.
Success Criteria
- Footer widget shows uncommitted file count for current repo at all times
/commitcommand triggers guided flow with auto-drafted commit message from conversation context- User never feels nagged, blocked, or guilty — just informed
- Commits end up logical and well-messaged because awareness came early
Constraints
- Single repo only (the one we're in)
- Must work as a pi extension (TypeScript, pi extension API)
- No external dependencies beyond git
Anti-Goals
- No auto-commit: Never commit without explicit user action
- No blocking prompts: Never interrupt flow with modal dialogs
- No guilt mechanics: No "you should commit" nudges, red warnings, or escalating alerts
- No multi-repo tracking: Don't watch repos outside current working directory
- No push: This is about local commits only