# How to Verify i-have-ADHD Installation Across Different Platforms

> Verify i-have-ADHD installation on any platform by running the correct list command or checking for wrapper files. Ensure your skill is registered correctly for seamless use.

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

---

**You can verify i-have-ADHD installation by running your runtime's specific list command—such as `claude plugin list`, `npx skills list`, or `agy plugin list`—to confirm the skill appears in the registry, or by confirming the presence of wrapper files that point to the canonical [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md) definition.**

The i-have-ADHD repository maintains a single 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), but each supported runtime implements its own plugin or extension wrapper to load it. Because installation methods vary by platform—from npm packages to editor extensions to CLI plugins—verification requires using platform-specific commands that query the runtime's registry or filesystem as documented in [`INSTALL.md`](https://github.com/ayghri/i-have-adhd/blob/main/INSTALL.md).

## Platform-Specific Verification Methods

### Claude Code, Codex, and GitHub Copilot

For AI coding assistants that use plugin registries, verification involves listing installed skills and filtering for the package name.

**Claude Code** uses a local plugin manifest stored in [`.claude-plugin/plugin.json`](https://github.com/ayghri/i-have-adhd/blob/main/.claude-plugin/plugin.json) and hook definitions in [`hooks/hooks.json`](https://github.com/ayghri/i-have-adhd/blob/main/hooks/hooks.json). Run:

```bash
claude plugin list

```

**Codex** follows a similar pattern with its own registry:

```bash
codex plugin list

```

**GitHub Copilot** and generic harnesses (Cursor, Amp) use the `npx skills` CLI. Check local installation with:

```bash
npx skills list | grep i-have-adhd

```

For global installations, append the `-g` flag:

```bash
npx skills ls -g | grep i-have-adhd

```

### Gemini CLI

Gemini CLI supports two installation routes, each with distinct verification methods.

For the **command route**, verify the TOML file exists in your Gemini commands directory:

```bash
ls ~/.gemini/commands | grep i-have-adhd.toml

```

For the **extension route**, query the extension registry:

```bash
gemini extensions list | grep i-have-adhd

```

### Antigravity and Hermes

These CLI runtimes maintain their own plugin registries.

**Antigravity** (`agy`) stores plugin metadata and exposes it via:

```bash
agy plugin list

```

**Hermes** uses a dedicated skills subcommand:

```bash
hermes skills list | grep i-have-adhd

```

### Pi and Oh My Pi (OMP)

The Pi runtime requires both registry verification and runtime confirmation.

First, verify the package is registered:

```bash
pi list | grep i-have-adhd

```

Then, in an active Pi session, type `/i-have-adhd` and confirm the footer displays **● ADHD ON**. This indicates the skill defined in [`extensions/i-have-adhd.ts`](https://github.com/ayghri/i-have-adhd/blob/main/extensions/i-have-adhd.ts) is actively toggling the ADHD mode. Oh My Pi reuses Pi's extension system, so the same `pi list` verification applies.

### OpenCode and Zed

These editor-based runtimes verify through UI elements or command palettes.

**OpenCode** loads the plugin via `.opencode/plugins/i-have-adhd.mjs`. Press `/,` to open the command palette and look for `i-have-adhd` in the command list.

**Zed** scans the skills folder defined in [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md). Open the Skills manager or type `/` to see if `i-have-adhd` appears in the autocomplete.

### Qwen Code and Kimi Code

**Qwen Code** uses a traditional extension model with a [`plugin.json`](https://github.com/ayghri/i-have-adhd/blob/main/plugin.json) manifest. Verify with:

```bash
qwen extensions list | grep i-have-adhd

```

Then start a session and run the `/skills` command to confirm it appears in the active skill list.

**Kimi Code** has no explicit CLI verification command. Instead, start a session and type `/skill:i-have-adhd`; the skill should appear in the autocomplete list if installed correctly.

## What the Verification Commands Check

All verification methods ultimately confirm the presence of a **thin wrapper** that points to the same canonical definition. The [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md) file serves as the single source of truth for the skill's behavior rules.

When you run `claude plugin list` or `npx skills list`, you are querying the runtime's registry for these wrapper manifests:

- [`.claude-plugin/plugin.json`](https://github.com/ayghri/i-have-adhd/blob/main/.claude-plugin/plugin.json) for Claude Code
- [`hooks/hooks.json`](https://github.com/ayghri/i-have-adhd/blob/main/hooks/hooks.json) for always-on behavior in supported runtimes
- `.opencode/plugins/i-have-adhd.mjs` for OpenCode
- [`plugin.json`](https://github.com/ayghri/i-have-adhd/blob/main/plugin.json) for Qwen Code

If the wrapper is present, the runtime can invoke the skill. If missing, the skill definition in [`SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/SKILL.md) remains unreachable.

## Summary

- **Query the registry**: Use platform-specific list commands like `agy plugin list`, `claude plugin list`, or `npx skills list` to verify the skill appears in your runtime's plugin registry.
- **Check wrapper files**: Confirm thin wrapper files exist (e.g., [`.claude-plugin/plugin.json`](https://github.com/ayghri/i-have-adhd/blob/main/.claude-plugin/plugin.json), `.opencode/plugins/i-have-adhd.mjs`) that point to [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md).
- **Test runtime activation**: For platforms like Pi, verify the registry entry with `pi list`, then activate the skill in-session to confirm **● ADHD ON** appears in the footer.
- **Distinguish routes**: Gemini CLI users must verify either the TOML file in `~/.gemini/commands` (command route) or the extension registry (extension route).

## Frequently Asked Questions

### How do I verify i-have-adhd is installed globally versus locally?

For runtimes using the `npx skills` interface (GitHub Copilot, Cursor, Amp), append the `-g` flag to check global installation: `npx skills ls -g | grep i-have-adhd`. Without the flag, the command checks only the local project scope. Editor-specific extensions like Zed or OpenCode typically install globally to the editor's configuration directory.

### What is the difference between the command route and extension route for Gemini CLI verification?

The **command route** installs [`i-have-adhd.toml`](https://github.com/ayghri/i-have-adhd/blob/main/i-have-adhd.toml) directly into `~/.gemini/commands`, making the skill available as a native command; verify this with `ls ~/.gemini/commands`. The **extension route** installs the skill as a managed extension; verify this with `gemini extensions list`. Both routes ultimately load the same [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md) definition, but the wrapper mechanism differs.

### Why does Pi show "● ADHD ON" when other platforms don't display verification status?

Pi's runtime specifically implements a visual indicator in the session footer to show when the skill-defined environment is active. While other platforms like Hermes or Antigravity silently load the skill from [`extensions/i-have-adhd.ts`](https://github.com/ayghri/i-have-adhd/blob/main/extensions/i-have-adhd.ts), Pi exposes the toggle state visually. This is a runtime-specific UX feature, not a difference in installation verification.

### Can I verify installation by checking source files instead of using CLI commands?

Yes. You can verify installation by confirming the presence of wrapper files that reference [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md). Check for [`.claude-plugin/plugin.json`](https://github.com/ayghri/i-have-adhd/blob/main/.claude-plugin/plugin.json) (Claude), [`plugin.json`](https://github.com/ayghri/i-have-adhd/blob/main/plugin.json) (Qwen), `.opencode/plugins/i-have-adhd.mjs` (OpenCode), or [`i-have-adhd.toml`](https://github.com/ayghri/i-have-adhd/blob/main/i-have-adhd.toml) in `~/.gemini/commands` (Gemini). If these files exist and contain valid paths to the skill definition, the installation is correct regardless of CLI output.