Three Axes Framework
A Claude Code plugin that installs the Three Axes Framework — an always-active AI development philosophy that calibrates AI behavior to prevent comprehension debt while maximizing productivity.
What it does
The framework governs every coding interaction by evaluating tasks across three independent axes:
| Axis | Question | Range |
|---|
| Mastery | How well does the developer know this domain? | Low → High |
| Consequence | What breaks if something goes wrong? | Low → High |
| Intent | Optimizing for output or growth? | Output → Growth |
Based on where a task sits on these axes, the AI adjusts its six core principles — from full mentor mode (low mastery, growth intent) to efficient pair-programmer mode (high mastery, output intent).
Core insight: The tool doesn't destroy understanding. Passive delegation does.
Installation
Via the lux-solari-plugins marketplace (recommended)
# 1. Add the marketplace (one-time)
claude plugins marketplace add luxsolari/lux-solari-plugins
# 2. Install the plugin
claude plugins install three-axes-framework@lux-solari-plugins
Or from inside Claude Code:
/plugin marketplace add luxsolari/lux-solari-plugins
/plugin install three-axes-framework@lux-solari-plugins
Local development / testing
git clone https://github.com/luxsolari/three-axes-framework
claude plugin validate ./three-axes-framework
Troubleshooting
Installation fails with Permission denied (publickey)
Claude Code's plugin installer uses SSH (git@github.com:) by default. If you don't have GitHub SSH keys configured — common on WSL, Docker, CI, or fresh machines — the install will fail even though this is a public repository.
Known issue: As of Claude Code v2.1.80, the TUI Discover screen and claude plugin install command both still use the SSH path, regardless of whether SSH is configured. This is tracked at anthropics/claude-code#18001.
Fix — generate and configure SSH keys for GitHub:
# 1. Generate a new SSH key (accept defaults, optionally add a passphrase)
ssh-keygen -t ed25519 -C "your_email@example.com"
# 2. Print the public key
cat ~/.ssh/id_ed25519.pub
Copy the output and add it to GitHub: Settings → SSH and GPG keys → New SSH key.
# 3. Verify the connection
ssh -T git@github.com
# Expected: "Hi <username>! You've successfully authenticated..."
Then retry the plugin installation.
Quick workaround (no GitHub account needed) — tell git to use HTTPS instead:
git config --global url."https://github.com/".insteadOf "git@github.com:"
This redirects all SSH clone attempts to HTTPS. Useful for WSL, Docker, or CI environments where setting up SSH keys isn't practical.
Quickstart
# 1. Install
claude plugins marketplace add luxsolari/lux-solari-plugins
claude plugins install three-axes-framework@lux-solari-plugins
# 2. Configure your profile (run once)
/three-axes setup
# 3. Check what's active at any time
/three-axes status
That's it. The framework runs automatically from this point on — no further setup needed.
Need a quick mode change? Use presets for the current session:
/three-axes mode learning # exploring something new
/three-axes mode production # high-stakes work
/three-axes mode output # just ship it
Or tell Claude directly: "Walk me through this", "Let me try this", "Just do it".
How it works
Once installed, the framework is truly always active via a SessionStart hook that fires on every session startup, resume, clear, and compact event. The hook injects the full framework into Claude's context before any conversation begins — no slash command, no keyword trigger, no manual invocation needed.
A companion skill also loads contextually whenever conversations involve coding, architecture, debugging, or design — providing a second activation path as a fallback.
Context window cost: The hook injects approximately ~2,400 tokens per session (the framework rules + your active profile). This is a one-time cost paid at session start — it does not grow during the conversation. On a 200k-token context window that's about 1.2% overhead.
The framework operates as a background behavioral ruleset that shapes every development conversation:
- AI presents plans before implementing non-trivial changes
- AI calibrates explanation depth to your mastery level
- AI flags comprehension debt accumulation
- AI steps aside when you want to write code yourself
- AI enforces readable-over-clever as a universal standard
Mode-switch signals
You can explicitly shift AI behavior mid-conversation: