How to Stop ADHD Mode and Return to Normal Mode in i-have-adhd
Type stop adhd mode or normal mode in your chat to immediately deactivate the skill and restore default output formatting.
The i-have-adhd skill transforms how AI assistants communicate—adding concise, structured, dopamine-friendly formatting once activated. However, the skill persists for your entire session until you explicitly exit. This guide explains exactly how to stop ADHD mode across all supported runtimes, including permanent deactivation through flag file removal.
What "Stopping ADHD Mode" Actually Does
According to the source code in skills/i-have-adhd/SKILL.md, the skill follows a strict rule: "Turn them off only when the reader says 'stop adhd mode' or 'normal mode'"【/cache/repos/github.com/ayghri/i-have-adhd/main/skills/i-have-adhd/SKILL.md#L19-L20】. When triggered, the model:
- Acknowledges your request in a single line
- Stops appending ADHD formatting rules to subsequent messages
- Reverts to the assistant's default conversational style
The deactivation is session-scoped by default—meaning the skill remains available for reactivation without reinstallation.
Runtime-Specific Exit Commands
Different AI runtimes implement i-have-adhd with slight variations in activation, but the exit condition remains consistent.
Claude Code
Activation occurs through a SessionStart hook that injects rules when you type /i-have-adhd.
/i-have-adhd # activate
... # (ADHD-formatted responses)
stop adhd mode # deactivate for current session
The hook in hooks/always-on.mjs stops appending rules immediately upon detecting your exit phrase.
OpenCode
The plugin at .opencode/plugins/i-have-adhd.mjs registers the command and checks for persistent activation.
# Enable always-on mode (creates flag file)
touch ~/.config/opencode/.i-have-adhd-always
# Use the skill
/i-have-adhd
# Exit methods:
stop adhd mode # session-only deactivation
rm ~/.config/opencode/.i-have-adhd-always # permanent disable
As noted in .opencode/command/i-have-adhd.md, the rules persist until you say "stop adhd mode"【/cache/repos/github.com/ayghri/i-have-adhd/main/.opencode/command/i-have-adhd.md#L8】.
Pi
The TypeScript extension extensions/i-have-adhd.ts checks both a flag file and configuration option.
# Enable via extension
i-have-adhd on
# Working in ADHD mode...
stop adhd mode # disables for current session
# Permanent deactivation:
rm ~/.pi/agent/.i-have-adhd-always
The session-level choice overrides any always-on flag, giving you temporary control without affecting persistent settings.
Codex
Uses a shell-style invocation with $ prefix.
$i-have-adhd # activate
... # (ADHD mode active)
stop adhd mode # deactivate
normal mode # alternative exit phrase
Gemini / Qwen
Standard slash command interface with identical exit behavior.
/i-have-adhd # activate
stop adhd mode # deactivate
normal mode # alternative exit phrase
Permanently Disabling Always-On Mode
Some runtimes support persistent activation via hidden flag files. The INSTALL.md documents the flag-file mechanism across all supported platforms【/cache/repos/github.com/ayghri/i-have-adhd/main/INSTALL.md#L111-L119】.
| Runtime | Flag File Location | Removal Command |
|---|---|---|
| OpenCode | ~/.config/opencode/.i-have-adhd-always |
rm ~/.config/opencode/.i-have-adhd-always |
| Pi | ~/.pi/agent/.i-have-adhd-always |
rm ~/.pi/agent/.i-have-adhd-always |
Deleting these files prevents automatic skill injection on new sessions while preserving the ability to manually activate with /i-have-adhd.
Verification: Confirming Deactivation
After issuing stop adhd mode, verify success by observing:
- Response length: Default mode produces longer, narrative responses; ADHD mode uses concise bullet points and headers
- Formatting: ADHD mode enforces structured output with
###headers and-lists; normal mode uses paragraphs - Tone: Default assistants use conversational phrasing; ADHD mode is direct and action-oriented
If formatting persists, check for always-on flag files as described above.
Summary
- Immediate exit: Type
stop adhd modeornormal modein any supported runtime - Session scope: Deactivation applies only to current conversation unless flag files exist
- Permanent disable: Remove hidden
.i-have-adhd-alwaysfiles from your config directory - Core rule location: Exit behavior defined in
skills/i-have-adhd/SKILL.mdwith runtime implementations inhooks/,extensions/, and.opencode/plugins/
Frequently Asked Questions
Why doesn't "stop adhd mode" work immediately?
If the skill remains active after your command, you've likely enabled always-on mode through a flag file. Check ~/.config/opencode/.i-have-adhd-always (OpenCode) or ~/.pi/agent/.i-have-adhd-always (Pi) and delete if present. The session-only command cannot override persistent filesystem flags.
Can I reactivate ADHD mode after stopping it?
Yes. Simply re-enter your runtime's activation command (/i-have-adhd, $i-have-adhd, etc.). Stopping the skill is fully reversible and requires no reinstallation.
What's the difference between "stop adhd mode" and "normal mode"?
Functionally, nothing. Both phrases trigger identical deactivation logic per skills/i-have-adhd/SKILL.md. The alternatives exist to accommodate natural language variation—you can use whichever feels more intuitive.
Does stopping ADHD mode affect other AI assistants?
No. The skill operates per-session and per-runtime. Stopping it in Claude Code doesn't affect Pi, OpenCode, or any other interface. Each runtime maintains independent state unless you've manually synchronized flag files across systems.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →