# Structure of the anthropics/claude-plugins-community Repository: A Complete Guide

> Understand the anthropics/claude-plugins-community repository structure. Explore plugin directories, JSON metadata, Markdown skills, and the central marketplace index.

- Repository: [Anthropic/claude-plugins-community](https://github.com/anthropics/claude-plugins-community)
- Tags: getting-started
- Published: 2026-09-04

---

**The anthropics/claude-plugins-community repository follows a standardized plugin architecture where each community-contributed plugin resides in its own directory containing JSON metadata files and Markdown skill definitions, aggregated into a central marketplace.json index.**

This read-only mirror hosts the community-contributed Claude plugin marketplace, organizing plugin definitions and documentation into a predictable hierarchy that Claude Code consumes for installation and execution. Understanding the structure of the anthropics/claude-plugins-community repository enables developers to contribute new skills and helps users navigate the available automation capabilities.

## Top-Level Repository Layout

The repository root contains three distinct organizational layers: configuration files, individual plugin packages, and continuous integration infrastructure.

### Root Configuration Files

The repository root declares the marketplace scope through two primary documents. The [`README.md`](https://github.com/anthropics/claude-plugins-community/blob/main/README.md) provides introductory overview and usage instructions for consumers. The [`.claude-plugin/marketplace.json`](https://github.com/anthropics/claude-plugins-community/blob/main/.claude-plugin/marketplace.json) serves as the consolidated, auto-generated registry listing every available community plugin—this file updates nightly via internal pipelines and acts as the authoritative index Claude Code queries during plugin discovery.

### Plugin Directories

Each top-level directory (excluding hidden paths) represents a discrete plugin package. Current community offerings include:

- **tres-finance-plugin/** – Finance automation tools for ledger linking and invoice matching
- **testdino/** – Quality assurance utilities for test session management
- **quickdesign/** – Video design pipelines and model references
- **eli5/** – Simplified explanation generators using the "Explain-like-I'm-5" pattern

These directories follow identical internal scaffolding to ensure consistent parsing by the Claude CLI.

## Internal Plugin Structure

Every plugin directory implements a mandatory three-tier structure to separate metadata, executable skills, and documentation.

### Metadata Layer (.claude-plugin/)

The `.claude-plugin/` subdirectory contains two JSON descriptors:

- [`plugin.json`](https://github.com/anthropics/claude-plugins-community/blob/main/plugin.json) – Defines plugin metadata including name, description, version, and entry points
- [`marketplace.json`](https://github.com/anthropics/claude-plugins-community/blob/main/marketplace.json) – Contains the marketplace-specific entry for that individual plugin

In [`tres-finance-plugin/.claude-plugin/plugin.json`](https://github.com/anthropics/claude-plugins-community/blob/main/tres-finance-plugin/.claude-plugin/plugin.json), for example, the file declares the plugin's capabilities and dependency requirements that the Claude CLI validates before installation.

### Skill Definitions (skills/)

The `skills/` directory contains subfolders named after specific capabilities. Each skill folder includes a [`SKILL.md`](https://github.com/anthropics/claude-plugins-community/blob/main/SKILL.md) file—the human-readable instruction set Claude uses to execute the automation.

For the finance plugin, paths like [`tres-finance-plugin/skills/tres-ledger-link/SKILL.md`](https://github.com/anthropics/claude-plugins-community/blob/main/tres-finance-plugin/skills/tres-ledger-link/SKILL.md) and [`tres-finance-plugin/skills/tres-invoice-bill-matching/SKILL.md`](https://github.com/anthropics/claude-plugins-community/blob/main/tres-finance-plugin/skills/tres-invoice-bill-matching/SKILL.md) define the natural language triggers and procedural logic for ledger automation.

### Optional Documentation

Plugins may include a top-level [`README.md`](https://github.com/anthropics/claude-plugins-community/blob/main/README.md) for extended documentation, though this remains optional for marketplace functionality.

## Marketplace Aggregation and CI Validation

The repository maintains data integrity through automated pipelines that validate plugin definitions before aggregation into the master index.

### The marketplace.json Index

The [`.claude-plugin/marketplace.json`](https://github.com/anthropics/claude-plugins-community/blob/main/.claude-plugin/marketplace.json) at the repository root functions as the single source of truth for the Claude Code plugin manager. A nightly internal pipeline traverses each plugin's [`.claude-plugin/plugin.json`](https://github.com/anthropics/claude-plugins-community/blob/main/.claude-plugin/plugin.json), extracts metadata, and synthesizes entries into this consolidated file. When users search for available plugins, Claude Code queries this specific JSON file to present installation options.

### GitHub Actions Validation Pipeline

The [`.github/workflows/validate-plugins.yml`](https://github.com/anthropics/claude-plugins-community/blob/main/.github/workflows/validate-plugins.yml) workflow executes on pull requests and scheduled intervals to enforce repository invariants. This pipeline invokes scripts located in `.github/actions/validate-plugins/`—including [`test-invariants.sh`](https://github.com/anthropics/claude-plugins-community/blob/main/test-invariants.sh)—to perform three critical checks:

1. Verify JSON schema compliance across all [`plugin.json`](https://github.com/anthropics/claude-plugins-community/blob/main/plugin.json) and [`marketplace.json`](https://github.com/anthropics/claude-plugins-community/blob/main/marketplace.json) files
2. Ensure each [`SKILL.md`](https://github.com/anthropics/claude-plugins-community/blob/main/SKILL.md) contains required documentation sections (description, parameters, examples)
3. Detect manual modifications to the auto-generated root [`marketplace.json`](https://github.com/anthropics/claude-plugins-community/blob/main/marketplace.json) that should be reverted

Validation failures block merges, ensuring only properly structured plugins enter the marketplace.

## Installation and Usage Workflow

The repository structure directly supports the Claude Code CLI installation flow, mapping file paths to runtime behavior.

### Adding the Community Marketplace

Users first register the repository as a marketplace source. This command updates the local Claude Code configuration to recognize the community index:

```bash
claude plugin marketplace add anthropics/claude-plugins-community

```

The CLI fetches the current state of [`.claude-plugin/marketplace.json`](https://github.com/anthropics/claude-plugins-community/blob/main/.claude-plugin/marketplace.json) and caches it locally for offline browsing.

### Installing Individual Plugins

Once the marketplace is registered, install specific plugins by referencing their directory name:

```bash
claude plugin install tres-finance-plugin@claude-community

```

During execution, the CLI:

1. Queries `tres-finance-plugin` in the cached [`marketplace.json`](https://github.com/anthropics/claude-plugins-community/blob/main/marketplace.json)
2. Downloads the plugin files from the corresponding directory
3. Registers skill definitions found in `skills/` subdirectories
4. Loads the [`SKILL.md`](https://github.com/anthropics/claude-plugins-community/blob/main/SKILL.md) files into the conversation context

After installation, natural language requests like "Generate a ledger entry for a $1200 invoice from Acme Corp" trigger the `tres-ledger-link` skill defined in [`tres-finance-plugin/skills/tres-ledger-link/SKILL.md`](https://github.com/anthropics/claude-plugins-community/blob/main/tres-finance-plugin/skills/tres-ledger-link/SKILL.md).

## Summary

- The anthropics/claude-plugins-community repository organizes plugins into top-level directories, each containing `.claude-plugin/` metadata and `skills/` definitions
- The [`.claude-plugin/marketplace.json`](https://github.com/anthropics/claude-plugins-community/blob/main/.claude-plugin/marketplace.json) root file serves as the auto-generated master index consumed by Claude Code
- Individual plugins require [`plugin.json`](https://github.com/anthropics/claude-plugins-community/blob/main/plugin.json) for metadata and [`SKILL.md`](https://github.com/anthropics/claude-plugins-community/blob/main/SKILL.md) files for executable skill definitions
- GitHub Actions workflows in [`.github/workflows/validate-plugins.yml`](https://github.com/anthropics/claude-plugins-community/blob/main/.github/workflows/validate-plugins.yml) enforce schema compliance and prevent invalid marketplace modifications
- Installation flows map directly to this directory structure, with the CLI parsing JSON descriptors to register capabilities

## Frequently Asked Questions

### What files are required for a plugin to appear in the Claude marketplace?

A valid plugin requires three components: [`.claude-plugin/plugin.json`](https://github.com/anthropics/claude-plugins-community/blob/main/.claude-plugin/plugin.json) containing metadata and entry points, [`.claude-plugin/marketplace.json`](https://github.com/anthropics/claude-plugins-community/blob/main/.claude-plugin/marketplace.json) for marketplace registration, and at least one [`SKILL.md`](https://github.com/anthropics/claude-plugins-community/blob/main/SKILL.md) file within a `skills/` subdirectory. The GitHub Actions validation pipeline will reject pull requests missing any of these structural elements.

### How does Claude Code know which skills are available in a plugin?

Claude Code discovers skills by scanning the `skills/` directory within each installed plugin. Each subfolder's [`SKILL.md`](https://github.com/anthropics/claude-plugins-community/blob/main/SKILL.md) file contains the natural language instructions and parameter schemas that define how Claude should execute that specific capability. The `tres-finance-plugin`, for instance, exposes multiple distinct skills through separate folders like `tres-ledger-link/` and `tres-invoice-bill-matching/`.

### Can I manually edit the top-level marketplace.json file?

No. The root [`.claude-plugin/marketplace.json`](https://github.com/anthropics/claude-plugins-community/blob/main/.claude-plugin/marketplace.json) is auto-generated nightly from individual plugin descriptors. The [`.github/actions/validate-plugins/test-invariants.sh`](https://github.com/anthropics/claude-plugins-community/blob/main/.github/actions/validate-plugins/test-invariants.sh) script specifically detects manual changes to this file and will fail the CI check if modifications are detected. Contributors should instead update their local [`.claude-plugin/plugin.json`](https://github.com/anthropics/claude-plugins-community/blob/main/.claude-plugin/plugin.json) files, allowing the aggregation pipeline to regenerate the master index.

### What validation checks run when I submit a new plugin?

The [`.github/workflows/validate-plugins.yml`](https://github.com/anthropics/claude-plugins-community/blob/main/.github/workflows/validate-plugins.yml) pipeline executes schema validation against [`plugin.json`](https://github.com/anthropics/claude-plugins-community/blob/main/plugin.json) files, verifies that [`SKILL.md`](https://github.com/anthropics/claude-plugins-community/blob/main/SKILL.md) documents include mandatory sections (description, usage examples, parameters), and runs [`test-invariants.sh`](https://github.com/anthropics/claude-plugins-community/blob/main/test-invariants.sh) to ensure directory naming consistency. These checks prevent malformed plugins from breaking the marketplace indexing process or the Claude Code installation flow.