From f4e85890e7a52b91aacf27ee0fbf62ed0aecc654 Mon Sep 17 00:00:00 2001 From: James Date: Wed, 8 Apr 2026 14:40:56 -0400 Subject: [PATCH] Update Part 10: Persona-based agent names - Sarah (vault), Charles (CLI), Maria (crypto), James (extensions) - Emma (central), Arthur (architecture), Victoria (security) - Each with specialty and voice characteristics - Session format: name-YYYYMMDD-NNN - Release notes read like a team roster --- CLAVITOR-PRINCIPLES.md | 46 ++++++++++++++++++++++++------------------ 1 file changed, 26 insertions(+), 20 deletions(-) diff --git a/CLAVITOR-PRINCIPLES.md b/CLAVITOR-PRINCIPLES.md index 44b5b1a..d5d2c5f 100644 --- a/CLAVITOR-PRINCIPLES.md +++ b/CLAVITOR-PRINCIPLES.md @@ -1289,7 +1289,7 @@ trail of AI decision-making. ```bash # Agent does the work -1. git checkout -b agent/rate-limit-defense-20250408 +1. git checkout -b sarah/rate-limit-defense-20250408 2. [make changes per CLAVITOR-PRINCIPLES.md] 3. git commit -m "api: add per-agent rate limiting and lockdown @@ -1298,9 +1298,9 @@ Implements Threat A defense per CLAVITOR-PRINCIPLES.md Part 2. - Two-strike lockdown within 2h window - Locked state persisted in encrypted agent record -Author: vault-agent <20250408-001>" -4. git push -u origin agent/rate-limit-defense-20250408 -5. gh pr create --title "Agent: Threat A rate limiting" \ +Author: Sarah " +4. git push -u origin sarah/rate-limit-defense-20250408 +5. gh pr create --title "Sarah: Add per-agent rate limiting" \ --body "$(cat <<'EOF' ## Summary Implements harvester defense per Cardinal Rule #4. @@ -1338,9 +1338,9 @@ Create `.github/PULL_REQUEST_TEMPLATE/agent_pr_template.md`: ```markdown ## Agent Identity -- Agent name: -- Session ID: -- Model: +- Agent name: +- Session ID: +- Model: - Principles reviewed: CLAVITOR-PRINCIPLES.md v - Daily checks: @@ -1370,26 +1370,32 @@ Create `.github/PULL_REQUEST_TEMPLATE/agent_pr_template.md`: ### Agent naming convention -Use **functional names** based on domain, not model names: +Agents have **persona names** — like team members, not tools. This makes git history +readable and creates consistent ownership. -| Subproject | Agent name | Git signature | -|------------|-----------|---------------| -| `clavis-vault` | `vault-agent` | `vault-agent ` | -| `clavis-cli` | `cli-agent` | `cli-agent ` | -| `clavis-chrome/firefox/safari` | `extension-agent` | `extension-agent ` | -| `clavis-crypto` | `crypto-agent` | `crypto-agent ` | -| `clavitor.ai/admin` | `central-agent` | `central-agent ` | -| Cross-cutting / architecture | `architect-agent` | `architect-agent ` | -| Security reviews | `security-agent` | `security-agent ` | +| Name | Domain | Specialty | Voice | +|------|--------|-----------|-------| +| **Sarah** | `clavis-vault` | Core vault, API, middleware | Precise, security-focused | +| **Charles** | `clavis-cli` | C CLI, embedded JS, tooling | Systems-level, thorough | +| **Maria** | `clavis-crypto` | Cryptography, primitives | Rigorous, mathematical | +| **James** | `clavis-chrome/firefox/safari` | Browser extensions, UX | User-focused, detail-oriented | +| **Emma** | `clavitor.ai/admin` | Central, Paddle, POP sync | Business logic, reliability | +| **Arthur** | Architecture | Cross-cutting design, principles | Strategic, big-picture | +| **Victoria** | Security reviews | Threat model, audits, hardening | Skeptical, uncompromising | -**Why:** Release notes show "vault-agent added rate limiting" not "Claude added rate limiting." The domain matters, the model doesn't. +**Why persona names:** +- Release notes read like a team: "Sarah added rate limiting, Charles fixed CLI build" +- You learn who to expect for what: "Maria is touching crypto → extra review needed" +- Natural language: "Ask Sarah to look at the vault middleware" **Commit signature format:** ``` -Author: vault-agent <20250408-001> -Author: cli-agent <20250408-003> +Author: Sarah +Author: Charles ``` +**Session ID format:** `name-YYYYMMDD-NNN` (001, 002... for multiple sessions/day) + **Human review points:** Even agent-authored PRs require human approval before merge: