anthropics / anthropics/skills

document-skills plugin loads all skills from repo instead of only declared ones in marketplace.json

Ouverte
#1,087 2 commentaires 1 réaction 0 personnes assignées Voir sur GitHub
Langage dominant
Python
Étoiles
176k
Forks
20.8k
Merge moyen
7 h 21 min
PR mergées (30 j)
5

Description

## Description

When installing the `document-skills` plugin via `/plugin install document-skills@anthropic-agent-skills`, **all 17 skills** from the repository are loaded, instead of only the **4 skills** declared in `marketplace.json`.

## Expected Behavior

According to `.claude-plugin/marketplace.json`, the `document-skills` plugin declares only 4 skills:

```json
{
"name": "document-skills",
"skills": [
"./skills/xlsx",
"./skills/docx",
"./skills/pptx",
"./skills/pdf"
]
}
```

Only these 4 skills should be available after installation.

## Actual Behavior

After installation, 17 skills are loaded under the `document-skills` namespace, including skills from `example-skills` and `claude-api` plugins:

- **Expected (4):** `xlsx`, `docx`, `pptx`, `pdf`
- **Also loaded (13 extra):** `algorithmic-art`, `brand-guidelines`, `canvas-design`, `claude-api`, `doc-coauthoring`, `frontend-design`, `internal-comms`, `mcp-builder`, `skill-creator`, `slack-gif-creator`, `theme-factory`, `web-artifacts-builder`, `webapp-testing`

## Root Cause

The install mechanism clones/caches the entire repository at a commit hash. The cached directory contains all skills from the repo under `skills/`. The plugin loader appears to load all skill directories found in the source path, without filtering against the `skills` array declared in `marketplace.json`.

Cache path example:
```
~/.claude/plugins/cache/anthropic-agent-skills/document-skills/{commit}/skills/
```

This directory contains all 17 skill folders, not just the 4 declared for `document-skills`.

## Steps to Reproduce

1. Run `/plugin install document-skills@anthropic-agent-skills`
2. Run `/skills` to list available skills
3. Observe 17 skills instead of 4

## Suggested Fix

The plugin loader should filter skill directories using the `skills` array from the matching plugin entry in `marketplace.json`, rather than loading all directories found in the source path.

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.