anthropics / anthropics/skills

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

Abierto
#1,087 2 comentarios 1 reacción 0 asignados Ver en GitHub
Lenguaje dominante
Python
Estrellas
176k
Forks
20.9k
Merge medio
7 h 21 min
PR fusionados (30 d)
5

Descripción

## 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.

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.