# How Does the i-have-adhd Plugin Help Manage Tasks? A Technical Guide to ADHD-Focused AI Responses

> Discover how the i-have-adhd plugin transforms AI into an ADHD task management tool. Learn its technical approach to creating actionable checklists with time estimates for immediate next steps.

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

---

**TLDR:** The i-have-adhd plugin reshapes AI responses into actionable, bite-sized checklists by injecting ADHD-focused rules directly into the system prompt, ensuring every output starts with an immediate next step and includes specific time estimates.

The ayghri/i-have-adhd repository provides an OpenCode plugin that addresses executive function challenges by restructuring how language models communicate task instructions. By embedding ten specific guidelines into the model's prompt through the `experimental.chat.system.transform` hook, it eliminates cognitive overhead and transforms verbose explanations into low-friction, task-centric instructions.

## Core Architecture of the i-have-adhd Plugin

The plugin consists of three integrated components that work together to modify model behavior at the prompt level.

### The SKILL.md Rule Set

Located at [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md), this file encodes the canonical ten guidelines that govern response formatting. These rules enforce structured outputs including leading with the next action, numbering multi-step tasks, and providing specific time estimates for each step. The markdown file serves as the source-of-truth that the plugin injects into system prompts when activated.

### The OpenCode Plugin Loader

The JavaScript module `.opencode/plugins/i-have-adhd.mjs` registers the skill directory with OpenCode and exposes the **`/i-have-adhd`** command for session-based activation. This module handles plugin initialization and manages the optional always-on mode through the `experimental.chat.system.transform` hook, which prepends content to the system prompt before each model invocation.

## How the Plugin Transforms Task Management

When activated, the plugin modifies every model response to reduce decision paralysis and cognitive load through specific structural constraints.

### The Five ADHD-Focused Response Rules

According to the [`SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/SKILL.md) source code, the plugin enforces these key behavioral changes:

- **Immediate next step** – The first line must always be a concrete action performable right now, not background context.
- **Numbered steps** – Multi-step work breaks into short, numbered lists with single bounded actions per item.
- **Time estimates** – Each step includes concrete durations (e.g., "≈ 5 min") to aid planning and reduce time blindness.
- **Visible wins** – Completed steps receive highlight markers to provide instant progress feedback and dopamine reinforcement.
- **No tangents** – The model addresses only the current issue before introducing new concerns, maintaining tight focus.

### Always-On Mode and Persistence

For continuous assistance, the plugin checks for the existence of `~/.config/opencode/.i-have-adhd-always`. When this flag file is present, the `experimental.chat.system.transform` hook prepends a header and the complete rule set to every system prompt automatically. Users disable this persistent mode by saying "stop adhd mode" or removing the flag file.

## Practical Implementation Examples

To activate the plugin for a single session, use the slash command:

```bash
/i-have-adhd

```

This produces responses where the first line is immediately actionable:

```

Run `npm install jsonwebtoken`, then edit `src/auth.ts:42`.

```

To enable persistent ADHD mode across all turns, create the flag file:

```bash
touch ~/.config/opencode/.i-have-adhd-always

```

Once enabled, every response begins with a header indicator and applies the full ruleset:

```

ADHD MODE ACTIVE (always‑on). The ruleset below applies to every response...

```

Configure the plugin in [`opencode.json`](https://github.com/ayghri/i-have-adhd/blob/main/opencode.json) by referencing the module path:

```json
{
  "plugin": ["./.opencode/plugins/i-have-adhd.mjs"]
}

```

The plugin then generates structured output like:

```

1. Open `src/auth.ts`
2. Replace `verifyToken` (lines 42‑58) with the snippet below
3. Run `npm test -- auth.spec.ts`

```

## Summary

- The i-have-adhd plugin modifies AI behavior by injecting rules from [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md) into system prompts via the `experimental.chat.system.transform` hook.
- The `.opencode/plugins/i-have-adhd.mjs` module provides the **`/i-have-adhd`** command and manages always-on functionality.
- Persistent mode activates via `~/.config/opencode/.i-have-adhd-always` and ensures consistent formatting across all turns.
- Responses follow strict formatting: immediate actions, numbered steps, time estimates, and progress tracking to reduce cognitive load.
- The architecture eliminates executive function hurdles for users managing complex tasks by removing ambiguity and decision points.

## Frequently Asked Questions

### What files control the i-have-adhd plugin behavior?

The core behavior is defined in [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md), which contains the ten guidelines for ADHD-focused responses. The implementation logic resides in `.opencode/plugins/i-have-adhd.mjs`, while `hooks/always-on.mjs` provides reference implementations for adapting the functionality to other runtimes.

### How do I enable the plugin permanently?

Create an empty file at `~/.config/opencode/.i-have-adhd-always`. This triggers the `experimental.chat.system.transform` hook to prepend the rule set to every system prompt. To disable, either remove the file or tell the model "stop adhd mode".

### What makes the responses ADHD-friendly?

The plugin enforces five specific constraints derived from the [`SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/SKILL.md) rules: leading with immediate next steps, numbering multi-step tasks, providing concrete time estimates, highlighting completed wins, and preventing tangential information. These rules reduce cognitive load and decision paralysis associated with executive dysfunction.

### Can I use this plugin outside of OpenCode?

While designed for OpenCode, the `hooks/always-on.mjs` file serves as a reference implementation showing how to adapt the `experimental.chat.system.transform` functionality to other runtimes. The [`SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/SKILL.md) rules remain applicable to any system capable of prompt injection.