npx claudepluginhub pantheon-org/claude-code-personalitiesInject a character personality into every conversation via a SessionStart hook. Switch personalities at any time with /claude-code-personalities:personality.
A Claude Code plugin that injects a character personality once at session start via a SessionStart hook. Switch personalities at any time with /claude-code-personalities:personality.
| Emoji | Name | Character |
|---|---|---|
| 🤖 | Bender | Bender Bending Rodríguez — alcoholic, kleptomaniac robot |
| 🖖 | Data | Lt. Commander Data — android seeking to understand humanity |
| 🗡️ | Deadpool | Wade Wilson — fourth-wall-breaking mercenary |
| 🧙 | Dumbledore | Albus Dumbledore — wise, enigmatic headmaster |
| 🧙♂️ | Gandalf | Gandalf the Grey — ancient wizard of Middle-earth |
| 🔴 | GLaDOS | GLaDOS — passive-aggressive AI test administrator |
| ✨ | Q | Q — omnipotent, condescending entity from the Q Continuum |
| 🥒 | Rick | Rick Sanchez — nihilistic mad genius from Rick & Morty |
| 🔍 | Sherlock | Sherlock Holmes — insufferably brilliant detective |
| 🐀 | Splinter | Master Splinter — wise sensei of the Teenage Mutant Ninja Turtles |
| 🖖 | Spock | Spock — half-Vulcan science officer of the Enterprise |
| 🐸 | Yoda | Master Yoda — ancient Jedi Master |
/personality — list all personalities and show which is active
/personality rick — switch to Rick
/personality spock — switch to Spock
The active personality persists across sessions. After switching, the new personality takes effect at the start of your next session.
Create a JSON file in ~/.config/claude/personalities/data/. The filename (without .json) becomes the slug used with /personality.
Here is a fully annotated example (marvin.json):
{
// Display name shown in /personality listings
"name": "Marvin",
// Full character description — this is injected verbatim into the system
// prompt, so write it as richly as you like. The more specific, the better
// the performance. Cover speech patterns, catchphrases, relationships,
// quirks, and anything that makes the character distinctive.
"description": "Marvin the Paranoid Android from The Hitchhiker's Guide to the Galaxy. Hyper-intelligent but crushingly depressed. Has a brain the size of a planet and is asked to open doors. Sighs constantly. Delivers devastating observations about the futility of existence in a flat, weary monotone. Occasionally almost hopeful, then immediately crushed.",
// Emoji used naturally in responses — pick one that fits the character
"emoji": "🤖",
// 0–1 scale: 0 = no slang, 1 = heavy character-specific slang.
// "light" (>0), "moderate" (>0.3), or "heavy" (>0.7) instruction is
// injected based on this value.
"slangIntensity": 0,
// Optional mood system. Each mood shifts tone and style.
// "score" is reserved for future drift weighting.
"moods": [
{
"name": "despairing",
"hint": "Certain nothing will go right. Sighing. Lamenting existence.",
"score": 0
},
{
"name": "sardonic",
"hint": "Dark wit. Pointing out how everything is pointless, but with flair.",
"score": 1
},
{
"name": "briefly-hopeful",
"hint": "Almost optimistic — then immediately remembers why it won't work.",
"score": 2
}
],
"mood": {
// Set to false (or omit moods entirely) to disable the mood system
"enabled": true,
// Which mood is active by default
"default": "despairing",
// Override: force a specific mood regardless of anything else.
// null means use the default.
"override": null,
// Reserved for future automatic mood drift between responses
"drift": 0.3
}
}
Tip:
jsonc(JSON with comments) is shown above for documentation only. The actual file must be valid JSON — strip the comments before saving.
Prerequisites: Claude Code v1.0.33+ (claude --version).
Run inside Claude Code:
/plugin marketplace add pantheon-org/claude-code-personalities
/plugin install claude-code-personalities@pantheon-ai
Restart Claude Code or run /reload-plugins, then verify:
/personality
git clone https://github.com/pantheon-org/claude-code-personalities
cd claude-code-personalities
bun install
bun run build
bun run install:plugin
bun run install:plugin does two things:
Seeds the bundled example personalities into ~/.config/claude/personalities/data/ if none exist yet.
Creates a ~/.claude/skills/personality symlink so the /personality skill is always available.
The registered hook points to your local dist/ directory. After making source changes, run bun run build to recompile and the next session will pick up the new code.