# Plugin Manifests for Claude Code and Codex in the i-have-adhd Repository

> Explore the plugin manifests for Claude Code and Codex in the i-have-adhd repository. Discover identity, version 0.2.0, and runtime capabilities for each environment.

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

---

**The `ayghri/i-have-adhd` repository defines separate JSON manifests at [`.claude-plugin/plugin.json`](https://github.com/ayghri/i-have-adhd/blob/main/.claude-plugin/plugin.json) and [`.codex-plugin/plugin.json`](https://github.com/ayghri/i-have-adhd/blob/main/.codex-plugin/plugin.json) that declare the plugin's identity, version 0.2.0, author information, and runtime-specific capabilities for Claude Code and Codex environments.**

The i-have-adhd project exposes its functionality through two distinct plugin manifest files tailored to each AI coding assistant runtime. These configuration files serve as the single source of truth for plugin registration, with each runtime automatically discovering and loading its respective manifest during initialization.

## Claude Code Plugin Manifest Structure

The Claude Code runtime uses a minimal manifest located at [`.claude-plugin/plugin.json`](https://github.com/ayghri/i-have-adhd/blob/main/.claude-plugin/plugin.json). This file contains the essential metadata required for the plugin to be recognized, deferring extended UI details to a companion configuration.

- **Name**: `"i-have-adhd"`
- **Version**: `"0.2.0"`
- **Author**: `"Ayoub G."`
- **Dependencies**: Relies on [`.claude-plugin/marketplace.json`](https://github.com/ayghri/i-have-adhd/blob/main/.claude-plugin/marketplace.json) for additional UI metadata and marketplace presentation

The Claude Code runtime automatically reads this file during plugin discovery. No manual registration code is required; the runtime parses the JSON data directly to register the plugin and handle basic initialization.

## Codex Plugin Manifest Structure

The Codex manifest at [`.codex-plugin/plugin.json`](https://github.com/ayghri/i-have-adhd/blob/main/.codex-plugin/plugin.json) provides a comprehensive configuration schema required by the Codex plugin system. Unlike the Claude Code version, this file contains complete UI branding specifications and skill path declarations.

Key fields include:

- **Metadata**: `homepage`, `repository`, `license`, and `keywords` arrays
- **Skills Path**: Points to `"./skills/"` to locate the canonical skill files
- **Interface Object**: Defines `displayName`, `longDescription`, `category`, `capabilities`, `defaultPrompt`, and branding assets including `color` values and icon references
- **Skill Reference**: Links to [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md) for the detailed capability description

This richer structure enables the Codex marketplace to render the plugin with proper visual branding, categorized placement, and pre-configured prompt templates.

## Comparing Claude Code and Codex Manifest Capabilities

While both manifests share common identity metadata—specifically the plugin name `"i-have-adhd"`, version `"0.2.0"`, and author `"Ayoub G."`—they differ significantly in scope and structure:

**[`.claude-plugin/plugin.json`](https://github.com/ayghri/i-have-adhd/blob/main/.claude-plugin/plugin.json)** provides minimal registration data and depends on external marketplace configuration for UI presentation.

**[`.codex-plugin/plugin.json`](https://github.com/ayghri/i-have-adhd/blob/main/.codex-plugin/plugin.json)** embeds complete interface definitions, including the skills directory location, detailed descriptions, category classifications, and visual branding elements required for marketplace rendering.

## Accessing Manifest Data Programmatically

You can read and utilize these manifests in your own tooling by loading the JSON files directly or using the Codex SDK for runtime registration.

### Reading the Codex Manifest with Node.js

```javascript
import fs from 'fs';
import path from 'path';

const codexManifestPath = path.resolve('.codex-plugin', 'plugin.json');
const manifest = JSON.parse(fs.readFileSync(codexManifestPath, 'utf-8'));

console.log(`Plugin ${manifest.name} v${manifest.version}`);
console.log(`Description: ${manifest.interface.longDescription}`);

```

### Registering via the Codex SDK

```javascript
import { registerPlugin } from '@codex/plugin-sdk';

// Path is relative to the repository root
registerPlugin('./.codex-plugin/plugin.json');

```

### Automatic Loading in Claude Code

Claude Code requires no manual registration; the runtime automatically discovers and loads [`.claude-plugin/plugin.json`](https://github.com/ayghri/i-have-adhd/blob/main/.claude-plugin/plugin.json) when the plugin is installed or activated.

## Summary

- The **i-have-adhd** repository maintains two separate manifest files: [`.claude-plugin/plugin.json`](https://github.com/ayghri/i-have-adhd/blob/main/.claude-plugin/plugin.json) for Claude Code and [`.codex-plugin/plugin.json`](https://github.com/ayghri/i-have-adhd/blob/main/.codex-plugin/plugin.json) for Codex.
- Both files declare identical core metadata: plugin name `"i-have-adhd"`, version `"0.2.0"`, and author `"Ayoub G."`.
- The **Claude Code** manifest is minimal and pairs with [`marketplace.json`](https://github.com/ayghri/i-have-adhd/blob/main/marketplace.json) for UI metadata.
- The **Codex** manifest includes rich interface definitions, skills paths (`"./skills/"`), and branding specifications required for marketplace rendering.
- Runtime updates are automatic: modifying these files updates the plugin's registration on the next load without requiring code changes.

## Frequently Asked Questions

### What is the purpose of the plugin.json file in Claude Code?

The [`.claude-plugin/plugin.json`](https://github.com/ayghri/i-have-adhd/blob/main/.claude-plugin/plugin.json) file serves as the minimal registration descriptor for the Claude Code runtime. It provides essential identity metadata including the plugin name, version, and author. The file is intentionally lightweight because Claude Code derives extended UI information from the associated [`marketplace.json`](https://github.com/ayghri/i-have-adhd/blob/main/marketplace.json) file located in the same directory.

### How does the Codex manifest differ from the Claude Code manifest?

The Codex manifest at [`.codex-plugin/plugin.json`](https://github.com/ayghri/i-have-adhd/blob/main/.codex-plugin/plugin.json) contains significantly more configuration than its Claude Code counterpart. It includes the `homepage`, `repository`, `license`, and `keywords` fields, plus a detailed `interface` object that defines display names, descriptions, categories, capabilities, default prompts, and visual branding elements. It also explicitly declares the skills path (`"./skills/"`) to locate the plugin's functional capabilities.

### Where are the skill files located in the i-have-adhd repository?

The skill files are located in the `skills/i-have-adhd/` directory, with the canonical description stored at [`skills/i-have-adhd/SKILL.md`](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md). The Codex manifest explicitly references this location through the `"./skills/"` path declaration in its configuration, while the Claude Code runtime discovers skills through its own convention-based resolution mechanism.

### Do I need to manually register these manifests with the runtimes?

No manual registration is required for either runtime. Claude Code automatically discovers and parses [`.claude-plugin/plugin.json`](https://github.com/ayghri/i-have-adhd/blob/main/.claude-plugin/plugin.json) during plugin initialization. For Codex, while you can programmatically register the plugin using `registerPlugin()` from the `@codex/plugin-sdk`, the runtime also automatically loads the manifest when the plugin is installed according to Codex's standard directory conventions.