# How to Disable ADHD Mode in i-have-adhd: 3 Methods Explained

> Easily disable ADHD mode in i-have-adhd with three simple methods. Stop automatic reactivation and return to normal mode quickly.

- Repository: [Ayoub Ghriss/i-have-adhd](https://github.com/ayghri/i-have-adhd)
- Tags: how-to-guide
- Published: 2026-09-11

---

**To disable ADHD mode in `i-have-adhd`, type "stop adhd mode" or "normal mode" in the chat, run the `/i-have-adhd off` command, or remove the `.i-have-adhd-always` flag file to prevent automatic reactivation.**

The `ayghri/i-have-adhd` repository injects ADHD-friendly formatting rules into your model context to improve readability and focus. When you need to return to standard response formatting, the extension provides multiple ways to disable ADHD mode both temporarily and permanently.

## What Is ADHD Mode in i-have-adhd?

ADHD mode is a context injection system defined in [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md) that modifies how the model structures its outputs. When active, the extension inserts specific formatting rules into the conversation context that emphasize brevity, structure, and clarity. The mode persists for the duration of the session unless explicitly disabled.

The core logic resides in [`extensions/i-have-adhd.ts`](https://github.com/ayghri/i-have-adhd/blob/main/extensions/i-have-adhd.ts), where the extension monitors user input for stop phrases and manages the enabled state through the `setEnabled` helper function.

## How to Disable ADHD Mode for the Current Session

You can temporarily disable ADHD mode using natural language commands or explicit toggle commands.

### Method 1: Use Stop Phrases (Natural Language)

The simplest way to disable ADHD mode is to type one of the recognized stop phrases. According to line 27 in [`extensions/i-have-adhd.ts`](https://github.com/ayghri/i-have-adhd/blob/main/extensions/i-have-adhd.ts), the `STOP_PHRASES` Set contains:

```typescript
new Set(["stop adhd mode", "normal mode"])

```

When the extension detects either phrase in your input, it immediately withdraws the injected rules and updates the UI status indicator. Simply type:

```markdown
stop adhd mode

```

Or alternatively:

```markdown
normal mode

```

### Method 2: Use the Toggle Command

For explicit control, use the `/i-have-adhd` slash command. Lines 90-100 of [`extensions/i-have-adhd.ts`](https://github.com/ayghri/i-have-adhd/blob/main/extensions/i-have-adhd.ts) implement the command handler that accepts optional arguments:

- `/i-have-adhd off` – Explicitly disables the mode
- `/i-have-adhd disable` – Alternative explicit disable command
- `/i-have-adhd` – Toggles the current state (on becomes off, off becomes on)

When you pass "off" or "disable" as an argument, the extension calls `setEnabled(false)`, which lines 73-78 show updates the internal state, modifies the UI status badge, and removes the rule injection.

## How to Permanently Disable ADHD Mode

If ADHD mode reactivates automatically when you start new sessions, the extension is configured to always-on mode.

### Remove the Always-On Flag File

The repository checks for a hidden flag file `.i-have-adhd-always` on startup. If this file exists in your project root, the mode re-enables automatically via the hooks in `hooks/always-on.mjs`. To permanently disable automatic activation:

```bash
rm .i-have-adhd-always

```

### Update the Configuration File

Alternatively, edit the [`i-have-adhd.json`](https://github.com/ayghri/i-have-adhd/blob/main/i-have-adhd.json) configuration file and set the `alwaysOn` property to `false`:

```json
{
  "alwaysOn": false
}

```

This prevents the `hooks/always-on.mjs` hook from re-injecting the rules at the start of each session.

## Technical Implementation Details

When you disable ADHD mode, the extension sends a `DISABLED_MESSAGE_TYPE` entry containing the notice "ADHD MODE OFF… " as defined on line 31 of [`extensions/i-have-adhd.ts`](https://github.com/ayghri/i-have-adhd/blob/main/extensions/i-have-adhd.ts). The `setEnabled` function clears the status badge (removing the `● ADHD ON` indicator) and withdraws the context rules defined in [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md).

The OpenCode plugin wrapper at `.opencode/plugins/i-have-adhd.mjs` implements identical stop-phrase logic, ensuring consistent behavior across different interfaces.

## Summary

- **Type "stop adhd mode" or "normal mode"** to disable the mode immediately using natural language detection via the `STOP_PHRASES` Set in [`extensions/i-have-adhd.ts`](https://github.com/ayghri/i-have-adhd/blob/main/extensions/i-have-adhd.ts).
- **Run `/i-have-adhd off`** to explicitly toggle the mode off using the command handler on lines 90-100.
- **Delete `.i-have-adhd-always`** or set `alwaysOn: false` in [`i-have-adhd.json`](https://github.com/ayghri/i-have-adhd/blob/main/i-have-adhd.json) to prevent automatic reactivation when starting new sessions.

## Frequently Asked Questions

### What happens when I disable ADHD mode?

The extension calls `setEnabled(false)` in [`extensions/i-have-adhd.ts`](https://github.com/ayghri/i-have-adhd/blob/main/extensions/i-have-adhd.ts), which removes the injected formatting rules from the conversation context, clears the UI status badge displaying `● ADHD ON`, and sends a `DISABLED_MESSAGE_TYPE` notification confirming the change. The model immediately resumes its default response style without the ADHD-friendly formatting constraints.

### Can I re-enable ADHD mode after disabling it?

Yes. You can re-enable ADHD mode by typing `/i-have-adhd on`, `/i-have-adhd enable`, or simply `/i-have-adhd` to toggle the state back to enabled. If the `.i-have-adhd-always` flag file exists, the mode will also reactivate automatically the next time you start a session.

### Why does ADHD mode turn back on automatically?

Automatic reactivation occurs when the `.i-have-adhd-always` flag file exists in your project directory or when `alwaysOn` is set to `true` in [`i-have-adhd.json`](https://github.com/ayghri/i-have-adhd/blob/main/i-have-adhd.json). The `hooks/always-on.mjs` hook checks for these configurations at session start and re-injects the rules defined in [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md) automatically.

### Where are the ADHD-friendly rules defined?

The formatting rules injected during ADHD mode are defined in [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md). These rules specify output requirements such as structured formatting, concise paragraphs, and clear section headers that help users with ADHD process information more effectively.