You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
NEVER commit without running locally first and confirming it works
Run npx tsx src/cli.ts report and npx tsx src/cli.ts today to verify changes before any commit
For dashboard changes: run the interactive TUI and visually confirm rendering
For new features: test the happy path AND edge cases (empty data, missing config, pipe mode)
Code Quality
Clean, minimal code. No dead code, no commented-out blocks, no TODO placeholders
No emoji anywhere in the codebase
No em dashes. Use hyphens or rewrite the sentence
No AI slop: no "streamline", "leverage", "robust", "seamless" in user-facing text
No unnecessary abstractions. Three similar lines > premature helper function
No magic numbers. Extract layout offsets, column widths, thresholds, timeouts, and any value used in a calculation into a named const at module scope. Inline literals are only OK for universally understood constants (0, 1, 100 for percent). If a number appears in a formula like pw - bw - 31, the 31 must be a named constant.
Accuracy
Every user-facing number (cost, tokens, calls) must be verified against real data
LiteLLM pricing model names must match exactly. No guessing model IDs
Date range calculations must be tested with edge cases (month boundaries, billing day > days in month)
Style
TypeScript strict mode. No any types
No comments unless the WHY is non-obvious
Imports: node builtins first, then deps, then local (separated by blank line)
Single quotes, no semicolons inconsistency (follow existing: no trailing semicolons in most files)
Git
Branching (strict)
NEVER commit directly to main. All work happens on branches