Forking and Maintaining a Custom Version of the i-have-adhd Skill

To fork and maintain a custom i-have-adhd skill, clone the repository, modify the rule set in SKILL.md, update the plugin.json manifest with your own name and description, and install your fork using your agent's standard plugin command.

The i-have-adhd skill is a declarative Agent Skill that reshapes AI-generated output for readers with ADHD. Because it contains no runtime code—only a rule set and metadata—forking and customizing it requires no complex build steps or dependency management. This guide walks through the exact files you need to change and how to deploy your custom version.

Understanding the Skill's Declarative Architecture

Before modifying anything, recognize that the skill operates entirely through text-based configuration files. The host agent (Claude Code, Gemini CLI, Copilot, etc.) loads these files and applies the rules to its own output generation.

The five files that matter for forking:

File Purpose What You Might Change
plugin.json Skill metadata and entry point Name, description, version, author
skills/i-have-adhd/SKILL.md Complete rule set for output formatting Rules, tone, structure constraints
INSTALL.md Installation instructions per harness URLs pointing to your fork
hooks/hooks.json Claude Code SessionStart hook Paths for always-on mode
skills/i-have-adhd/agents/*.toml Agent-specific configurations Command routes, trigger phrases

The skill contains no executable code. Changes to SKILL.md directly alter how the AI formats responses when your skill is active.

Step 1: Fork and Rename

Create your fork on GitHub, then clone it locally:

git clone https://github.com/YOUR_USERNAME/YOUR-FORK-NAME.git
cd YOUR-FORK-NAME

Immediately update plugin.json to reflect your ownership. The original manifest in the ayghri repository contains:

{
  "name": "i-have-adhd",
  "description": "A skill that helps AI assistants communicate in an ADHD-friendly format",
  "version": "1.0.0",
  "author": "ayghri",
  "entry": "skills/i-have-adhd/SKILL.md",
  "invoke": "/i-have-adhd",
  "auto_invoke": false
}

Change name, description, author, and optionally invoke to your preferences:

{
  "name": "focus-mode",
  "description": "Custom ADHD-friendly formatting with project-specific task breakdowns",
  "version": "1.0.0",
  "author": "YOUR_USERNAME",
  "entry": "skills/focus-mode/SKILL.md",
  "invoke": "/focus",
  "auto_invoke": false
}

Step 2: Customize the Rule Set in SKILL.md

The original SKILL.md enforces 10 rules including "Lead with the next action," "Number all steps," and "Give concrete time estimates." Located at skills/i-have-adhd/SKILL.md, this file is where you exert complete control over output formatting.

Common customizations include:

  • Adjusting rule priority – Reorder rules so the most critical constraint appears first
  • Adding domain-specific rules – Include constraints relevant to your workflow (e.g., "Always include a file path with every code suggestion")
  • Modifying tone directives – Change "no preambles" to "maximum 5-word preamble" if your use case permits brief context
  • Localization – Translate rules for non-English teams while maintaining structural constraints

The file uses standard Markdown with imperative rule statements. The host agent parses these as behavioral instructions for response generation.

Example excerpt from original SKILL.md:


# ADHD-Friendly Output Rules

When this skill is active, format every response according to these rules:

1. **Lead with the next action** – The very first line must be a concrete, executable instruction
2. **Number all steps** – Every task decomposition must use 1. 2. 3. format
3. **Give concrete time estimates** – Every step must include a duration (e.g., "2 minutes", "30 seconds")
...

Your modified version might read:


# Focus Mode Output Rules

When /focus is active, apply these constraints:

1. **Lead with the file path and action** – First line: `path/to/file: action to take`
2. **Number all steps** – Use 1. 2. 3. format with sub-steps as 1a. 1b.
3. **Include checkpoint estimates** – End each step with [2 min] or [checkpoint: tests pass]
4. **No explanatory paragraphs** – Use bullet facts only; move all reasoning to collapsible details
...

Step 3: Update Installation Documentation

The original INSTALL.md contains platform-specific commands that reference ayghri/i-have-adhd. You must update every URL and plugin reference.

Original Claude Code section:

claude plugin marketplace add ayghri/i-have-adhd
claude plugin install i-have-adhd@i-have-adhd

# Activate in a session

/i-have-adhd

Your fork's version:

claude plugin marketplace add YOUR_USERNAME/YOUR-FORK-NAME
claude plugin install focus-mode@focus-mode

# Activate in a session

/focus

For direct URL installs (Antigravity, Gemini CLI), replace all github.com/ayghri/i-have-adhd references with your fork's URL.

Step 4: Adjust Agent-Specific Configurations

The skills/i-have-adhd/agents/ directory contains harness-specific files. The most important is gemini.toml, which defines a command route for Gemini CLI:


# Original gemini.toml

name = "i-have-adhd"
description = "Enable ADHD-friendly formatting"
command = "/i-have-adhd"

Update to match your renamed skill:

name = "focus-mode"
description = "Enable project-specific focus formatting"
command = "/focus"

The agents/openai.yaml exists as a placeholder—populate it if you use OpenAI-based agents that support YAML skill definitions.

Step 5: Configure Always-On Mode (Optional)

The original repository supports "always-on" activation through Claude Code's SessionStart hook. In hooks/hooks.json:

{
  "hooks": [
    {
      "event": "SessionStart",
      "condition": "file_exists('~/.claude/.i-have-adhd-always')",
      "action": "load_skill('i-have-adhd')"
    }
  ]
}

Update the skill reference and flag file path:

{
  "hooks": [
    {
      "event": "SessionStart",
      "condition": "file_exists('~/.claude/.focus-mode-always')",
      "action": "load_skill('focus-mode')"
    }
  ]
}

Document this in your INSTALL.md with the new flag filename.

Step 6: Test Your Fork

Install your custom skill in a fresh environment before publishing:


# Antigravity test

agy plugin install https://github.com/YOUR_USERNAME/YOUR-FORK-NAME

# Verify invocation

/ YOUR_INVOKE_COMMAND  # should load your skill

Trigger several responses to confirm your modified rules take effect. Pay special attention to:

  • Whether your renamed invoke command is recognized
  • If rule ordering affects output as intended
  • That installation URLs resolve correctly

Versioning and Maintenance Strategy

Because the skill has no dependencies, maintenance is straightforward:

  1. Semantic versioning in plugin.json – Increment version for any rule changes
  2. Git tags – Tag releases to match plugin.json versions
  3. Changelog – Add a CHANGELOG.md tracking rule additions, removals, or reorderings
  4. Upstream sync – If the original ayghri/i-have-adhd updates, merge useful changes into your SKILL.md

Monitor the original repository for improvements to the underlying skill specification that might affect how agents parse your rules.

Summary

  • Forking requires only text file edits – no build system, no dependencies, no runtime code
  • Modify plugin.json first – establish your skill's identity and entry point
  • Edit SKILL.md for behavioral changes – this single file controls all output formatting
  • Update all URLs in INSTALL.md and agent configs – installation must point to your repository
  • Test across supported harnesses – each agent (Claude Code, Gemini, Copilot) loads skills slightly differently
  • Version explicitlyplugin.json version and Git tags should stay synchronized

Frequently Asked Questions

Does forking the i-have-adhd skill require any programming knowledge?

No. The skill contains no code—only Markdown and JSON configuration files. You only need to understand the rule structure in SKILL.md to customize output formatting. Basic Git knowledge for forking and pushing changes is sufficient.

Can I run my fork alongside the original i-have-adhd skill?

Generally no. Most agents register skills by name, and conflicting invoke commands (/i-have-adhd) will collide. Rename your skill in plugin.json (both name and invoke fields) and use distinct trigger phrases like /focus or /quick-mode to avoid conflicts.

How do I distribute my custom skill to my team?

Host your fork on GitHub or any git repository, then point team members to the raw installation URL. Update INSTALL.md with your organization's specific commands. For internal distribution, consider a private repository with token-based access or an internal package registry if your agent supports it.

Will updates to Claude Code or Gemini CLI break my custom skill?

Unlikely. The Agent Skills specification is designed to be stable. The skill format—plugin.json manifest pointing to a Markdown rule file—has no runtime dependencies on host agent versions. However, always test your skill after major agent updates to verify rule parsing remains consistent.

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 →