How the Pre-send Checklist Enforces Output Shape in the i-have-adhd Skill

The pre-send checklist enforces a strict action-first, fluff-free output shape by systematically removing preambles, closing questions, sidebars, hedging adverbs, and idioms before verifying that the first line is a concrete action and the last line states what happened and what to do next.

The ayghri/i-have-adhd repository defines a specialized skill designed to optimize AI responses for readers with ADHD. At the core of this optimization is the pre-send checklist defined in skills/i-have-adhd/SKILL.md, which acts as a deterministic filter applied to every response before it reaches the user.

The Five Cleanup Rules of the Pre-send Checklist

Located under the Pre-send check section in skills/i-have-adhd/SKILL.md (lines 30-48), the checklist executes five specific deletion steps to prune distracting content:

  • Delete the opening announcement – Removes phrases like "I'm going to…", "Let me…", or "Sure!" (lines 34-36). This guarantees the first line is a concrete action rather than a preamble.

  • Delete the closing question/recap – Strips endings such as "Anything else?" or "Hope that helped" (lines 40-42). This ensures the last line tells the reader exactly what just happened and what to do next.

  • Delete "by the way" sidebars – Eliminates any off-topic asides (lines 43-44) to keep the response focused on a single task and prevent memory overload.

  • Delete hedging adverbs – Removes vague modifiers like "perhaps", "might", or "could possibly" unless they carry real uncertainty (lines 45-46). This eliminates language that obscures concrete next steps.

  • Delete idioms/figurative phrases – Replaces expressions like "circle back" or "get the ball rolling" (lines 47-48) with literal actions, ensuring the reader can act immediately without deciphering metaphors.

Verification Logic: Ensuring Action-First and Action-Last Structure

After the cleanup phase, the pre-send checklist validates the remaining content against two strict conditions before allowing the response to emit:

  1. What to do next – The final line must present an actionable instruction that requires no additional context.
  2. What just happened – The reader must understand the outcome of the preceding steps from the text.

If either condition fails, the harness loops back for further trimming. This verification loop guarantees every output conforms to the ADHD-focused design: action-first, concise, and free of distracting fluff.

Runtime Implementation

The enforcement mechanism relies on three key files that define, mirror, and operationalize the checklist:

  • skills/i-have-adhd/SKILL.md – Contains the canonical skill definition, including the pre-send checklist rules that shape output structure.

  • .cursor/skills/i-have-adhd/SKILL.md – A mirror of the canonical skill for Cursor runtime, synchronized with the main skill file to ensure consistent behavior across environments.

  • hooks/always-on.mjs – The runtime hook that invokes the skill and applies the pre-send checklist filtering logic before emitting any response.

Before and After: A Practical Example

The following example demonstrates how the pre-send checklist transforms a typical conversational response into an ADHD-optimized instruction set.

Before applying the checklist:

Let me show you how to fix the bug.

1. Open src/auth.ts
2. Replace verifyToken with the snippet below
3. Run npm test

By the way, you might also want to update your dependencies.
Anything else?

After the checklist runs:

Open `src/auth.ts`, replace `verifyToken` with the snippet below, then run `npm test`.

Step 3 of 3 done: tests run. Next: verify the login flow works.

The transformed output starts with a concrete action, ends with a clear next step, and contains no preambles, sidebars, hedges, or idioms.

Summary

  • The pre-send checklist lives in skills/i-have-adhd/SKILL.md and executes five specific deletion steps before any response is sent.
  • It removes opening announcements, closing questions, sidebars, hedging adverbs, and figurative idioms to eliminate cognitive load.
  • The checklist verifies that the first line is a concrete action and the last line states what happened and what to do next.
  • Runtime enforcement occurs through hooks/always-on.mjs, with configuration mirrored in .cursor/skills/i-have-adhd/SKILL.md.
  • This systematic pruning ensures every response follows an action-first, fluff-free structure optimized for ADHD readers.

Frequently Asked Questions

Where is the pre-send checklist defined in the repository?

The pre-send checklist is defined in skills/i-have-adhd/SKILL.md under the Pre-send check section, specifically between lines 30 and 48. A synchronized copy exists at .cursor/skills/i-have-adhd/SKILL.md for Cursor IDE integration, and the runtime hook hooks/always-on.mjs implements the actual enforcement logic.

Why does the checklist remove hedging adverbs like "perhaps" and "might"?

The checklist targets hedging adverbs (lines 45-46) because vague language introduces uncertainty that obscures concrete next steps. Unless the uncertainty carries meaningful information about risk or probability, these modifiers add cognitive friction that interferes with immediate action—something the ADHD-optimized format specifically avoids.

What happens if the response fails the final verification check?

If the response fails to satisfy the two conditions—stating what just happened and what to do next—the harness loops back for additional trimming. The response is not emitted until both the first line presents a concrete action and the last line provides a clear, context-free next step.

How does the pre-send checklist differ from standard prompt engineering?

Unlike standard prompt engineering which relies on model behavior during generation, the pre-send checklist acts as a deterministic post-processing filter. It systematically removes specific structural elements (preambles, sidebars, idioms) and verifies output shape according to hard rules defined in the skill specification, guaranteeing consistency regardless of the model's initial output.

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 →