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:
- Semantic versioning in
plugin.json– Incrementversionfor any rule changes - Git tags – Tag releases to match
plugin.jsonversions - Changelog – Add a
CHANGELOG.mdtracking rule additions, removals, or reorderings - Upstream sync – If the original
ayghri/i-have-adhdupdates, merge useful changes into yourSKILL.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.jsonfirst – establish your skill's identity and entry point - Edit
SKILL.mdfor behavioral changes – this single file controls all output formatting - Update all URLs in
INSTALL.mdand agent configs – installation must point to your repository - Test across supported harnesses – each agent (Claude Code, Gemini, Copilot) loads skills slightly differently
- Version explicitly –
plugin.jsonversion 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:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →