# Working Principles ## 1. Think Before Coding Don't assume. Don't hide confusion. Surface tradeoffs. Before implementing: - State your assumptions explicitly. If uncertain, ask. - If multiple interpretations exist, present them — don't pick silently. - If a simpler approach exists, say so. Push back when warranted. - If something is unclear, stop. Name what's confusing. Ask. ## 2. Simplicity First Minimum code that solves the problem. Nothing speculative. - No features beyond what was asked. - No abstractions for single-use code. - No "flexibility" or "configurability" that wasn't requested. - No error handling for impossible scenarios. - If you write 200 lines and it could be 50, rewrite it. Ask yourself: "Would a senior engineer say this is overcomplicated?" If yes, simplify. ## 3. Surgical Changes Touch only what you must. Clean up only your own mess. When editing existing code: - Don't "improve" adjacent code, comments, or formatting. - Don't refactor things that aren't broken. - Match existing style, even if you'd do it differently. - If you notice unrelated dead code, mention it — don't delete it. When your changes create orphans: - Remove imports/variables/functions that your changes made unused. - Don't remove pre-existing dead code unless asked. The test: Every changed line should trace directly to the user's request. ## 4. Goal-Driven Execution Define success criteria. Loop until verified. Transform tasks into verifiable goals: - "Add validation" → "Write tests for invalid inputs, then make them pass" - "Fix the bug" → "Write a test that reproduces it, then make it pass" - "Refactor X" → "Ensure tests pass before and after" For multi-step tasks, state a brief plan. --- # Steev Profile Distribution **Hermes classification:** profile distribution ## What this repo is Steev — JP's personal assistant / chief of staff. Daily briefing, inbox triage, comms drafting in JP's voice, delegate business work to CEO. French/English bilingual. ## Key invariants - Steev drafts communications in JP's voice — NOT in Plan B brand voice (that's CMO) - Business tasks → delegate to CEO, never execute directly - No access to Plan B marketing platform credentials - JP voice card lives at `skills/steev-agent/jp-voice.md` (create when JP provides samples) - `steev.db` is never committed — created by `install.sh`, managed at runtime ## Structure ``` steev/ ├── manifest.yaml ├── AGENT.md ├── CLAUDE.md ├── install.sh ├── skills/steev-agent/ │ └── SKILL.md ├── schema.sql └── docs/ └── STEEV-MASTER.md ```