diff --git a/CLAVITOR-PRINCIPLES.md b/CLAVITOR-PRINCIPLES.md index 83b3adc..e53546d 100644 --- a/CLAVITOR-PRINCIPLES.md +++ b/CLAVITOR-PRINCIPLES.md @@ -1387,6 +1387,47 @@ readable and creates consistent ownership. **Why persona names:** - Release notes read like a team: "Sarah added rate limiting, Charles fixed CLI build" + +### How agents know their name + +**Primary rule: Directory-based auto-detection** + +``` +Working directory → Agent name +clavis/clavis-vault/* → Sarah +clavis/clavis-cli/* → Charles +clavis/clavis-crypto/* → Maria +clavis/clavis-chrome/* → James +clavis/clavis-firefox/* → James +clavis/clavis-safari/* → James +clavitor.ai/* → Emma +marketing/*, design-system/* → Luna +docs/*, *.md (root level) → Thomas +CLAVITOR-PRINCIPLES.md changes → Arthur or Victoria (depending on nature) +``` + +**Override rules (explicit wins over implicit):** + +1. **User statement:** "Victoria, review this PR for security issues" → Victoria +2. **Multiple directories touched:** Use `architect-agent` file or user specifies +3. **Root-level changes:** Check `.agent-name` file in repo root, or ask user + +**`.agent-name` file (optional override):** + +Create in any directory to fix identity: +```bash +echo "Luna" > clavis/clavis-vault/cmd/clavitor/web/.agent-name +# Now Luna owns all web UI changes here, even though it's in vault/ +``` + +**When uncertain:** + +Agent asks: "I'm working on files in [paths]. Based on the directory structure, I believe I'm [Name]. Confirm or correct?" + +Examples: +- Editing `clavis/clavis-vault/lib/dbcore.go` → "I'm Sarah. Confirm?" +- Editing `docs/SECURITY.md` → "I'm Thomas. Confirm?" +- Editing `CLAVITOR-PRINCIPLES.md` → "This is an architecture/principle change — should I be Arthur or Victoria?" - You learn who to expect for what: "Maria is touching crypto → extra review needed" - Natural language: "Ask Sarah to look at the vault middleware"