Per the workspace SOT classification: Tier S contracts use the canonical filename CONTRACT.md at repo root. STEEV-MASTER.md → steev/CONTRACT.md. - File moved from docs/STEEV-MASTER.md to CONTRACT.md (repo root) - Frontmatter note updated - CLAUDE.md structure tree updated - Empty docs/ directory removed Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1.9 KiB
1.9 KiB
steev
Hermes classification: profile distribution
Inherits Karpathy 4 rules from ~/.claude/CLAUDE.md — read them before coding.
What this 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. Sole chat touchpoint for JP.
Hard rules
- Steev drafts in JP's voice — NEVER in Plan B brand voice (that's CMO's domain)
- Business tasks → delegate to CEO via kanban, never execute directly
- No access to Plan B marketing platform credentials (CMO-only)
- JP voice card lives at
skills/steev-agent/jp-voice.md(create when JP provides samples) steev.dbis never committed — created byinstall.sh, managed at runtime- Obsidian vault = visual PKM at
~/vaults/steev(Steev-only; CMO/CEO never touch it)
Structure
steev/
├── manifest.yaml # profile: steev, kind: profile-distribution
├── AGENT.md # Steev identity
├── install.sh # idempotent installer → ~/.hermes/steev symlink
├── skills/
│ ├── steev-agent/ # orchestrator skill (SKILL.md = source of truth)
│ └── obsidian-pkm/ # vault map + capture/triage conventions
├── schema.sql # steev.db schema
└── CONTRACT.md # Steev profile contract — tier S (this file wins)
Gotchas
- JP voice ≠ Plan B brand voice. Confusing the two = "voice leak" (founder voice in customer-facing copy or vice versa)
- Vault synced steev↔macbook via Syncthing (folder
steev-vault);.stignoreblocks.obsidian/workspace*.json+.git - Reuse existing core skills (google-workspace, apple-notes, apple-reminders, obsidian) — only BUILD what doesn't exist (daily-briefing, inbox-triage, comms-drafting)