# How i-have-adhd Caps Lists at 5 Items and Ranks Them

> Learn how i-have-adhd caps lists at 5 items and ranks options to reduce cognitive load. Discover the strategy behind its concise, prioritized recommendations for effective task management.

- Repository: [Ayoub Ghriss/i-have-adhd](https://github.com/ayghri/i-have-adhd)
- Tags: internals
- Published: 2026-08-26

---

**The i-have-adhd skill enforces a strict five-item limit on all generated lists and mandates ranked presentations of 2-4 options with recommendation-first ordering to minimize cognitive overload.**

The `ayghri/i-have-adhd` repository provides a specialized skill designed to optimize AI interactions for ADHD users. According to the canonical skill definition in [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md), the system implements specific list management constraints that prevent information overload while ensuring clear prioritization. These rules govern both the absolute length of enumerated content and the structural hierarchy of presented options.

## The Five-Item Cap Mechanism

The skill defines a hard constraint that limits any single list to **S = 5** items maximum. When content naturally exceeds this boundary, the system does not truncate arbitrarily but instead bifurcates the information into contextual subgroups.

### Source of the Constraint

In [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md) at line 105, the cap is explicitly defined with the directive: "If a list grows past **five**, split into 'do now' vs. 'later', or 'must' vs. 'nice to have'." This specification establishes five as the absolute ceiling for any displayed enumeration.

### Handling Overflow via Contextual Splitting

Rather than presenting an overwhelming monolithic block, the skill partitions excess items into binary distinctions. Valid splitting categories include:

- **Urgency-based segmentation**: "do now" versus "later"
- **Priority-based segmentation**: "must" versus "nice to have"

This approach preserves all information while maintaining the five-item constraint per display unit, allowing users to process information in cognitively manageable chunks.

## Ranked List Architecture

Beyond simple length constraints, the skill mandates qualitative ordering through strict ranking requirements. The system prioritizes structured hierarchy over comprehensive volume.

### The Ranking Philosophy

Line 105 of [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md) establishes the guiding heuristic: "**Five items ranked beats ten unranked.**" This rule ensures that users encounter the most critical option first without scanning through undifferentiated alternatives.

### Option Generation Standards

For explicit option requests, lines 125-126 of the skill file specify the exact format: responses must contain "**2 to 4 ranked options** with one-line trade-offs, recommendation first, not one path." This enforces both a maximum of four choices and strict ordering requirements:

- The top recommendation must occupy the initial position
- Each option requires a concise one-line trade-off description
- Unranked collections of any size are prohibited

## Implementation in Source Files

The list management logic resides primarily in the declarative skill definition, with supporting files handling runtime application and validation.

**[`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md)** serves as the canonical source of truth containing the specific line references (105, 125-126) that define the five-item cap and ranking requirements.

**[`.cursor/skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/.cursor/skills/i-have-adhd/SKILL.md)** maintains a Cursor-compatible mirror of the canonical rules, ensuring consistent behavior across different editor environments.

**[`scripts/check_context_compat.ts`](https://github.com/ayghri/i-have-adhd/blob/main/scripts/check_context_compat.ts)** provides validation utilities to verify that the skill's context handling—including list size constraints—functions correctly across different runtime scenarios.

## Practical Examples

Below are illustrations of how the capping and ranking rules apply in practice.

### Example: List Overflow Handling

When a request would generate more than five items, the system applies contextual splitting:

```python

# Simulated skill response generation

query = "List all tasks for the project"
raw_items = ["Code review", "Update docs", "Fix bug #1", "Fix bug #2", 
             "Meeting", "Deploy", "Test", "Refactor"]

# Skill application enforces 5-item cap via splitting

response = i_have_adhd.process(query, raw_items)
print(response)

```

**Typical Output:**

```markdown
**Do now**
- Code review
- Fix bug #1
- Meeting

**Later**
- Update docs
- Fix bug #2
- Deploy

```

### Example: Ranked Option Generation

For decision requests, the skill enforces 2-4 ranked options:

```python

# Request for options triggers ranking protocol

query = "How should I prioritize my morning?"
response = i_have_adhd.generate_options(query)
print(response)

```

**Typical Output:**

```markdown
**Recommended:** Start with the hardest task (willpower is highest).

**Other options:**
2. Start with email (feels productive but delays deep work).
3. Start with a break (risks momentum loss).

```

## Summary

- **Five-item maximum**: All lists are capped at five items per the rule defined at line 105 of [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md)
- **Contextual splitting**: Overflow content separates into "do now/later" or "must/nice to have" groupings
- **Ranked superiority**: Five ranked items are explicitly valued over ten unranked items
- **Option constraints**: Ranked lists contain 2-4 options with the recommendation placed first and one-line trade-offs for each
- **File location**: Primary rules reside in [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md) with additional implementation layers in the `.cursor` directory and validation scripts

## Frequently Asked Questions

### What happens if a user request requires more than five items?

The system splits the response into multiple categorized lists rather than displaying a single long enumeration. As specified in line 105 of [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md), it separates items into contextual groups such as "do now" versus "later" or "must" versus "nice to have," ensuring no single view exceeds five items.

### Why does the skill prioritize ranked lists over comprehensive coverage?

According to the heuristic defined in [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md), "five items ranked beats ten unranked." This prioritization reduces decision fatigue by presenting the most critical option first with clear trade-offs, rather than forcing users to scan through undifferentiated alternatives to determine importance.

### How many options should appear in a properly formatted ranked list?

The skill mandates exactly **2 to 4 ranked options** per lines 125-126 of the configuration file. This range provides sufficient variety for meaningful choice while preventing the paralysis associated with excessive alternatives. The top recommendation must appear first in the sequence.

### Where are these list management rules configured?

The canonical rules reside in [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md) within the repository root. This file contains the specific line references (105 for the five-item cap, 125-126 for ranking structure) that define the behavior, with runtime application potentially handled through [`extensions/i-have-adhd.ts`](https://github.com/ayghri/i-have-adhd/blob/main/extensions/i-have-adhd.ts) and validation via [`scripts/check_context_compat.ts`](https://github.com/ayghri/i-have-adhd/blob/main/scripts/check_context_compat.ts).