What kind of AI ruler are you? Analyze your Claude Code governance patterns.
Project description
Suzerain
"The suzerain rules even where there are other kings. There is no territory outside his claim."
You are the suzerain. The AI executes, but you rule.
Suzerain analyzes how you govern AI coding assistants—your patterns of trust, rejection, and deliberation—and classifies your style into historical archetypes.
Quick Start
pip install suzerain
suzerain analyze
What You Get
╔═══════════════════════════════════════════════════════╗
║ SUZERAIN ║
║ ║
║ "The suzerain rules even where there are other ║
║ kings. There is no territory outside his claim." ║
╚═══════════════════════════════════════════════════════╝
Your recent pattern: STRATEGIST
Empirical cluster: Power User (Cautious)
┌─ YOUR GOVERNANCE STYLE ───────────────────────────────┐
│ The Discrimination Game
│
│ You rule differently depending on the stakes. Safe
│ operations flow through unchallenged; risky operations
│ face scrutiny. Same AI, different trust levels based
│ on consequences.
└────────────────────────────────────────────────────────┘
┌─ YOUR BOTTLENECK ────────────────────────────────────┐
│ Decision overhead on edge cases
│
│ Your selective trust is efficient for clear-cut cases.
│ The bottleneck is ambiguous commands—things that might
│ be risky. You may over-deliberate on medium-risk
│ operations.
└────────────────────────────────────────────────────────┘
┌─ RAW NUMBERS ─────────────────────────────────────────┐
│ Total tool calls: 6,654
│ Bash commands: 3006 (1685 accepted, 1321 rejected)
│ Sessions: 73
│ Days of data: 27
│ Mean decision time: 7659ms
└────────────────────────────────────────────────────────┘
┌─ DERIVED METRICS ─────────────────────────────────────┐
│ Bash acceptance: 56% ← the main signal
│ Snap judgments: 63% (< 500ms)
│ Risk delta: +31% (safe vs risky gap)
│ Sophistication: 0.75
│ Caution: 0.80
└────────────────────────────────────────────────────────┘
┌─ PROMPTING APPROACHES ────────────────────────────────┐
│ Framework: You're already discriminating by risk...
│
│ Prompt to try:
│ "When I reject a command, tell me why it might
│ have seemed risky and whether that risk was real.
│ Help me calibrate."
│
│ CLAUDE.md suggestion:
│ Add to CLAUDE.md: 'Explain the risk level
│ (none/low/medium/high) before suggesting commands
│ that modify files or state.'
└────────────────────────────────────────────────────────┘
┌─ TRY THIS ────────────────────────────────────────────┐
│ Track your rejections for a week. Are they catching
│ real risks or just unfamiliar patterns? Adjust your
│ threshold accordingly.
└────────────────────────────────────────────────────────┘
Based on 73 sessions, 6,654 tool calls, 27 days
● Higher confidence: pattern appears stable
─────────────────────────────────────────────────────────
You are the suzerain. The AI executes, but you rule.
These patterns describe how you exercise your claim—
not who you are. The game changes when you do.
The Six Archetypes
| Archetype | Governance Style | Bottleneck | Historical Parallel |
|---|---|---|---|
| Delegator | Accept everything, fast | Errors surface downstream | Mongol Horde |
| Autocrat | Review all, approve all | Review time without filtering | Roman Emperor |
| Strategist | Selective by risk | Decision overhead on edge cases | Napoleon |
| Deliberator | Slow, thorough | Decision latency on everything | Athenian Assembly |
| Council | Orchestrates agents | Coordination overhead | Venetian Republic |
| Constitutionalist | Consistent patterns | Rule rigidity | Constitutional systems |
How It Works
Suzerain parses your Claude Code logs (~/.claude/projects/) and extracts:
- Tool acceptance/rejection rates
- Decision timing (snap judgments vs deliberation)
- Tool diversity and sophistication signals
Key finding: Bash acceptance is THE discriminating feature. All other tools have ~100% acceptance rate—governance happens at the Bash prompt.
Commands
suzerain analyze # Analyze your governance style
suzerain analyze --verbose # Full metrics breakdown
suzerain analyze --export # Export to JSON
suzerain share --preview # See what would be shared
suzerain share --confirm # Share anonymized metrics (opt-in)
Privacy
- Local-first: All analysis runs on your machine
- Opt-in only: Nothing shared without explicit consent
- Bucketed data: Counts are bucketed, rates rounded to reduce fingerprinting
- Transparent: Preview exactly what would be shared before opting in
See docs/PRIVACY.md for full disclosure on what we collect and why.
Epistemic Status
This tool is hypothesis-generating, not validated:
- Based on n=1 real user + 11 simulated personas
- Thresholds are heuristic, not empirically derived
- Patterns describe recent behavior, not personality
- We need more data—your participation helps
See docs/METHODOLOGY.md for honest disclosure.
Contributing
We need diverse user data to validate the archetypes:
suzerain share --preview # See what would be shared
suzerain share --confirm # Help improve the research
License
MIT
"What kind of ruler are you today?"
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file suzerain-0.4.0.tar.gz.
File metadata
- Download URL: suzerain-0.4.0.tar.gz
- Upload date:
- Size: 22.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9a7cd82010b6182bb64a263f7c57af250672e7744f5484a402d1ef3cd3bdcec7
|
|
| MD5 |
cfe7f130655d3b18dba9c20edd96c6fd
|
|
| BLAKE2b-256 |
339fcf60bcb65a34de1d6ffd4834be754023f315d72a9dee9658a048a056d147
|
File details
Details for the file suzerain-0.4.0-py3-none-any.whl.
File metadata
- Download URL: suzerain-0.4.0-py3-none-any.whl
- Upload date:
- Size: 22.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c53935c9090034cf2b2d9a225096af22033b98e645145456f5479f453cd58e32
|
|
| MD5 |
22b6953f6481cb3c38812bd709aa4801
|
|
| BLAKE2b-256 |
6809b6952044dfc5bb072c36e5a369b2fca010ebf5f3fef1ca324202f7187d11
|