How to Configure ADHD Mode to Be Enabled by Default in i-have-adhd
Set defaultEnabled: true in your runtime's configuration file or plugin settings to automatically activate ADHD mode for every new session.
The ayghri/i-have-adhd repository provides an ADHD-friendly formatting mode that restructures LLM responses for better readability and actionability. By default, this mode must be toggled manually per session, but the codebase supports persistent configuration across Pi, Kimi, and OpenCode runtimes. The following steps show exactly how to enable ADHD mode by default for each platform.
Pi Runtime: Config File or CLI Flag
The Pi extension stores its settings in ~/.pi/extensions/i-have-adhd.json and checks a defaultEnabled boolean at session initialization in extensions/i-have-adhd.ts.
Method 1: Direct Config File Edit
Create or modify the extension configuration:
nano ~/.pi/extensions/i-have-adhd.json
Add the following JSON structure:
{
"defaultEnabled": true,
"persist": true
}
Save and exit. The persist flag ensures the setting survives Pi restarts.
Method 2: CLI Configuration Command
Use Pi's built-in config setter without manual file editing:
pi config set i-have-adhd.defaultEnabled true
Both methods achieve the same result: new Pi sessions will automatically display ● ADHD ON in the footer. To verify, start a fresh session with pi and confirm the indicator appears.
Kimi Runtime: Plugin Settings UI
Kimi persists default settings in browser local storage through its plugin management interface.
- Open any Kimi session and type
/plugins - Select I Have ADHD from the plugin list
- Click the gear icon (or press
Ras documented inREADME.md) - Toggle "Enable by default" to the on position
- Press
Dat any time to disable the default without uninstalling
The change takes effect immediately for subsequent sessions. No filesystem access is required since Kimi runs entirely in-browser.
OpenCode Runtime: Plugin Module Export
OpenCode plugins load from .opencode/plugins/i-have-adhd.mjs and respect an exported defaultEnabled constant.
Modify the plugin entry point:
// .opencode/plugins/i-have-adhd.mjs
export const defaultEnabled = true;
export async function onLoad(context) {
if (defaultEnabled) {
await context.enableAdhdMode();
}
}
After saving, reload the plugin with opencode reload or restart the host application. The onLoad hook executes automatically for each new session context when defaultEnabled is true.
Alternative: Always-On Hook for Cross-Runtime Enforcement
For environments where native default settings are unavailable, the repository provides hooks/always-on.mjs. This hook intercepts session initialization regardless of platform-specific configuration:
// hooks/always-on.mjs — forces ADHD mode on every session
import { enableAdhdMode } from '../extensions/i-have-adhd.js';
export function onSessionStart(context) {
// Bypasses all defaultEnabled checks; unconditionally enables
context.state.adhdMode = true;
enableAdhdMode(context);
}
Install this hook by copying or symlinking it into your runtime's hooks directory. This approach overrides individual user preferences—use only when mandatory organization-wide enablement is required.
Verification Steps
After applying any configuration method above:
- Completely terminate your runtime (close browser tab, kill Pi process, or stop OpenCode host)
- Start a fresh session
- Check for the
● ADHD ONindicator in the status bar or footer - Send any test prompt and confirm responses follow the 10 ADHD-friendly rules defined in
skills/i-have-adhd/SKILL.md
Summary
- Pi users: Set
defaultEnabled: truein~/.pi/extensions/i-have-adhd.jsonor runpi config set i-have-adhd.defaultEnabled true - Kimi users: Enable via
/plugins→ I Have ADHD → toggle Enable by default (or pressR) - OpenCode users: Export
defaultEnabled = truefrom.opencode/plugins/i-have-adhd.mjs - Forced enablement: Deploy
hooks/always-on.mjsto bypass all conditional checks
Each method leverages the same underlying session initialization logic found in extensions/i-have-adhd.ts, ensuring consistent behavior across supported runtimes.
Frequently Asked Questions
What file controls ADHD mode default settings in Pi?
The Pi extension reads ~/.pi/extensions/i-have-adhd.json at session start. If this file doesn't exist, the extension creates it with defaultEnabled: false. Manually editing this JSON or using pi config set both modify this same file.
Does enabling ADHD mode by default affect existing saved sessions?
No. The defaultEnabled flag only applies to new sessions initialized after configuration. Existing session state is preserved unless you explicitly reset the runtime or clear local storage (Kimi) or delete the Pi extensions directory.
Can I temporarily disable ADHD mode when it's enabled by default?
Yes. All runtimes respect runtime toggle commands. In Pi and OpenCode, say or type "stop adhd mode" or "normal mode" as documented in SKILL.md. In Kimi, press D from the plugin panel to disable for the current session without changing the default setting.
Is the always-on hook compatible with all runtimes?
Partially. The hooks/always-on.mjs module uses standard JavaScript exports that work with Pi and OpenCode. Kimi's browser-based architecture doesn't support filesystem hooks, so Kimi users must use the plugin UI method. For server-side or self-hosted Kimi instances, contact your administrator to inject the equivalent setting at deployment time.
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 →