The 10 Rules Defined by the i-have-adhd Skill: IO Canonical Response Standards

The i-have-adhd skill mandates ten strict output rules that make every response immediately actionable by requiring concrete first steps, numbered task lists, time estimates, and the elimination of all preamble and pleasantries.

The ayghri/i-have-adhd repository maintains a Cursor skill designed to reduce cognitive friction for readers with ADHD. Defined in skills/i-have-adhd/SKILL.md, these ten IO canonical response rules enforce a predictable interaction pattern that prioritizes execution over explanation.

The 10 IO Canonical Response Rules

The skill manifest at skills/i-have-adhd/SKILL.md encodes the following mandatory behaviors between lines 33 and 114. These rules apply for the entire session unless the user explicitly disables them (e.g., "stop adhd mode").

  1. Lead with the next action (Lines 33-41)
    The first line of every response must present a concrete step the reader can perform immediately. No greetings, no context-setting—pure action.

  2. Number multi-step tasks (Lines 42-55)
    When solutions require multiple actions, present them as a numbered list with each step representing a single bounded action to prevent overwhelm.

  3. End with one concrete next action (Lines 57-63)
    Every explanation must conclude by naming ONE specific thing the reader can complete in under two minutes, bridging the gap between reading and doing.

  4. Suppress tangents (Lines 64-70)
    Finish the current issue before introducing new ones. Offer additional issues as separate, optional questions rather than inline distractions.

  5. Restate state every turn (Lines 73-79)
    Re-announce the current step and overall progress on each interaction turn. This eliminates working memory load by ensuring the reader never needs to remember prior context.

  6. Give specific time estimates (Lines 82-88)
    Replace vague descriptors ("soon," "quickly") with concrete time windows (e.g., "≈ 15 minutes"). Temporal specificity aids planning and commitment.

  7. Make completed work visible (Lines 89-95)
    Explicitly state what now functions correctly and provide verification steps to deliver clear success criteria.

  8. Matter-of-fact tone for errors (Lines 96-101)
    Describe failures without emotional language. State the cause and fix directly to prevent anxiety spirals.

  9. Cap lists at five items (Lines 103-106)
    When enumerating options exceeds five items, split the list into categories (e.g., "do now" vs. "later") to respect working memory constraints.

  10. No preamble or closing pleasantries (Lines 107-114)
    Start with the answer and finish when the answer ends. Eliminate generic greetings ("Hello," "Sure, I can help") and sign-offs ("Hope this helps").

Practical Examples from the Source

The following patterns demonstrate correctly formatted responses according to the i-have-adhd skill specification.

Single-Step Command

Run `npm install jsonwebtoken` and then edit `src/auth.ts:42` as shown.

This satisfies Rule 1 (immediate action) and Rule 10 (no preamble).

Multi-Step Workflow

1. Open `src/auth.ts`.
2. Replace the `verifyToken` function (lines 42-58) with the snippet below.
3. Run `npm test -- auth.spec.ts`.
Next: run `npm test` and copy the first failing line.

This demonstrates Rule 2 (numbered steps) and Rule 3 (final next action under 2 minutes).

Error Handling Pattern

Test fails at `auth.spec.ts:42`: expected 200, got 401.  
Cause: missing `Authorization` header.  
Fix: add `Authorization: Bearer ${token}` to the request.
Run the test again.

This applies Rule 8 (neutral error tone) and Rule 3 (concrete next step).

Managing Long Lists

Do now:
1. Update dependencies.
2. Fix lint errors.
3. Write missing unit tests.

Later:
4. Refactor the authentication module.
5. Improve documentation.

This implements Rule 9 (capping lists at five items).

Source File Architecture

The i-have-adhd skill definition spans multiple files for synchronization across environments:

Summary

  • The i-have-adhd skill defines ten strict IO canonical response rules in skills/i-have-adhd/SKILL.md to optimize for ADHD cognitive patterns.
  • Every response must start with an immediate action, use numbered steps for complexity, and end with a sub-two-minute task.
  • Lists are capped at five items, errors use neutral language, and all pleasantries are stripped.
  • State restatement and specific time estimates are required on every turn.
  • Rules persist for the entire session unless explicitly disabled.

Frequently Asked Questions

Where are the i-have-adhd skill rules defined?

According to the ayghri/i-have-adhd source code, the ten rules are defined in skills/i-have-adhd/SKILL.md between lines 33 and 114. A synchronized copy exists at .cursor/skills/i-have-adhd/SKILL.md for Cursor IDE integration.

Can the i-have-adhd skill rules be disabled during a session?

Yes. The enforcement persists for the entire session unless the user explicitly disables them with a command like "stop adhd mode." The skill also defines exceptions for safety-critical confirmations or when users explicitly request explanations rather than actions.

Why does the skill cap lists at five items?

Rule 9 requires capping lists at five items to respect the working memory limitations often associated with ADHD. When content exceeds five items, the skill forces a split into contextual categories (e.g., "do now" vs. "later") to maintain cognitive focus.

How does the skill handle error messages differently?

Rule 8 mandates a matter-of-fact tone for errors, stripping emotional language that might trigger anxiety or shame. Failures are described neutrally with direct cause-and-fix pairs, immediately followed by a concrete next action.

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:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →