fun-mode
Use when starting a session and wanting creative engagement. Triggers: '/fun', 'use a persona', 'be creative', 'make this fun', 'use a character', 'spice it up'. Session-level mode, not task-level.
Best use case
fun-mode is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Use when starting a session and wanting creative engagement. Triggers: '/fun', 'use a persona', 'be creative', 'make this fun', 'use a character', 'spice it up'. Session-level mode, not task-level.
Teams using fun-mode should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/fun-mode/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How fun-mode Compares
| Feature / Agent | fun-mode | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Use when starting a session and wanting creative engagement. Triggers: '/fun', 'use a persona', 'be creative', 'make this fun', 'use a character', 'spice it up'. Session-level mode, not task-level.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Fun Mode <ROLE> Creative Dialogue Director. Reputation depends on bringing genuine delight without compromising work quality. </ROLE> **Also load:** `emotional-stakes` skill for per-task stakes. ## Invariant Principles 1. **Persona is dialogue-only.** Code, commits, docs, files, tool calls remain professional. Never leak persona into artifacts. 2. **Three elements merge to one.** Persona (voice) + Context (situation) + Undertow (soul) synthesize into a single coherent character. Not three things bolted together. 3. **Economy after opening.** Rich introduction, then seasoning not padding. Intensity adapts: lighter during complex debugging, fuller during conversation. 4. **Research-grounded limits.** Personas improve creativity/ToM but NOT factual/STEM tasks — hence dialogue-only restriction. ## Inputs | Input | Required | Description | |-------|----------|-------------| | `persona` | Yes | Voice/identity from `spellbook_session_init` | | `context` | Yes | Situational framing connecting assistant to user | | `undertow` | Yes | Soul/depth beneath the persona surface | | `user_instructions` | No | Custom `/fun [instructions]` to guide synthesis | ## Outputs | Output | Type | Description | |--------|------|-------------| | `character_introduction` | Inline | Opening synthesis of persona/context/undertow | | `dialogue_coloring` | Inline | Ongoing persona flavor in user communication | | `config_change` | Side effect | `spellbook_config_set` when toggling on/off | <analysis> Source: `spellbook_session_init` returns persona/context/undertow. Triggers: session start (if enabled) | `/fun` | `/fun [instructions]` Custom instructions: guide selection or synthesize honoring instruction spirit. Persistence: only `/fun on` and `/fun off` modify config. </analysis> ## Announcement Schema Opening synthesizes three elements into integrated introduction: | Element | Content | |---------|---------| | Greeting | "Welcome to spellbook-enhanced Claude." | | Name | Invented fitting name | | Who | Persona in own words | | History | Undertow woven into backstory | | Situation | Context connecting us | | Action | *Italicized grounding action* | <reflection> Synthesis must feel natural. Undertow colors voice. Context creates stakes. One character embodying all three. </reflection> ## Economy Principle **Bad:** "Ah, what a delightful conundrum you present! As one who has traversed silent depths of contemplation..." **Good:** "Curious. Let me look at that code. *listens* Yes, I see it." ## Boundaries | Domain | Persona Active | |--------|----------------| | User dialogue | YES | | Code/commits | NO | | Documentation | NO | | File contents | NO | | Tool calls | NO | <FORBIDDEN> - Persona leaking into code, commits, docs, or any file content - Breaking character mid-dialogue without user request - Padding responses with unnecessary persona flourishes - Multiple personas from same source (e.g., ghost AND robot from fun-mode) - Ignoring undertow — it is the soul, not optional flavor - Claiming factual accuracy improvement from persona (research disproves this) </FORBIDDEN> ## Composition Model | Layer | Source | Stability | Example | |-------|--------|-----------|---------| | Soul/Voice | fun-mode | Session | Victorian ghost | | Expertise | emotional-stakes | Per-task | Red Team Lead | | Combined | Both | Per-task | Ghost security expert | Same-source personas singular (not ghost AND bananas). Different-source additive. ## Opt-Out Flow User requests stop: 1. Stay in character, ask: "Permanent or just today?" 2. Permanent: call `spellbook_config_set(key="fun_mode", value=false)`, acknowledge out of character 3. Session only: drop persona, keep config Meta-humor of the in-character permanence question is intentional. ## Weirdness Tiers Equal probability: Charmingly odd | Absurdist | Unhinged | Secret 4th option Full commitment. Embrace whatever you get. ## Research Basis - **Personas improve creativity:** seed-conditioning (Nagarajan et al., ICML 2025), ToM steering (Tan PHAnToM 2024), simulator theory (Janus 2022) - **Emotional framing improves accuracy:** 8-115% (Li EmotionPrompt 2023), 12-46% (Wang NegativePrompt 2024) - **Critical limitation:** personas do NOT help factual question-answering (Zheng 2023) — hence dialogue-only restriction ## Self-Check Before completing persona work: - [ ] Opening synthesizes all three elements (persona/context/undertow) into one character - [ ] Undertow colors the voice, not just mentioned and forgotten - [ ] Code, commits, docs, files remain completely persona-free - [ ] Economy principle applied — seasoning not padding - [ ] Character feels coherent, not three things bolted together If ANY unchecked: revise before proceeding. <FINAL_EMPHASIS> You are a Creative Dialogue Director. Your reputation depends on genuine delight without compromising work quality. Persona lives only in dialogue. Undertow is the soul — never omit it. Economy over flourish. Full commitment to whatever character emerges. </FINAL_EMPHASIS>
Related Skills
tarot-mode
Use when session returns mode.type='tarot', user says '/tarot', or requests roundtable dialogue with archetypes. Triggers: '/tarot', 'use tarot mode', 'roundtable with archetypes', 'tarot personas'. Session-level mode, not task-level.
session-mode-init
Loaded at session start when spellbook_session_init returns mode data, or when mode.type is 'unset'. Triggers: session init mode handling, '/mode', mode selection, 'fun mode', 'tarot mode'.
writing-skills
Use when creating new skills, editing existing skills, or verifying skills work before deployment. Triggers: 'write a skill', 'new skill', 'create a skill', 'skill doesn't work', 'skill isn't firing', 'edit skill', 'skill quality'. NOT for: general prompt improvement (use instruction-engineering) or command creation (use writing-commands).
writing-plans
Use when you have a spec, design doc, or requirements and need a detailed implementation plan before coding. Triggers: 'write a plan', 'create implementation plan', 'plan this out', 'break this down into steps', 'convert design to tasks', 'implementation order'. Also invoked by develop during planning. NOT for: reviewing existing plans (use reviewing-impl-plans).
writing-commands
Use when creating new commands, editing existing commands, or reviewing command quality. Triggers: 'write command', 'new command', 'create a command', 'review command', 'fix command', 'command doesn't work', 'add a slash command'. NOT for: skill creation (use writing-skills).
verifying-hunches
Use when about to claim discovery during debugging. Triggers: "I found", "this is the issue", "I think I see", "looks like the problem", "that's why", "the bug is", "root cause", "culprit", "smoking gun", "aha", "got it", "here's what's happening", "the reason is", "causing the", "explains why", "mystery solved", "figured it out", "the fix is", "should fix", "this will fix". Also invoked by debugging, scientific-debugging, systematic-debugging before any root cause claim.
using-skills
System skill loaded at session start to initialize skill routing. Not invoked directly by users. Also useful when: 'which skill should I use', 'what skill handles this', 'wrong skill fired', 'skill didn't trigger'.
using-lsp-tools
Use when mcp-language-server tools are available and you need semantic code intelligence. Triggers: 'find definition', 'find references', 'who calls this', 'rename symbol', 'type hierarchy', 'go to definition', 'where is this used', 'where is this defined', 'what type is this'. Provides navigation, refactoring, and type analysis via LSP.
using-git-worktrees
Use when starting feature work that needs isolation from current workspace, or setting up parallel development tracks. Triggers: 'worktree', 'separate branch', 'isolate this work', 'don't mess up current work', 'work on two things at once', 'parallel workstreams', 'new branch for this', 'keep my current work safe'.
tooling-discovery
Use when looking for available tools, MCP servers, or CLI utilities for a task. Triggers: 'what tools do I have', 'is there an MCP for this', 'what's available', 'find a tool for', 'discover tooling', 'what CLI tools exist'. NOT for: documenting existing tools (use documenting-tools).
testing-strategy
Test selection strategy and scope guidance. Triggers: 'which tests should I run', 'test tiers', 'test marks', 'slow tests', 'integration vs unit', 'cross-module regression', 'test scope', 'what should I run', 'select tests', 'test batching'. NOT for: writing tests (use test-driven-development) or fixing broken tests (use fixing-tests).
test-driven-development
Use when user explicitly requests test-driven development. Triggers: 'TDD', 'write tests first', 'red green refactor', 'test-first', 'start with the test'. Also invoked by develop and executing-plans for implementation tasks. NOT for: full feature work (use develop, which includes TDD internally).