plugin marketplace add fails entirely if any single plugin description exceeds 1024 chars
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 52/100
Línea de trabajo
Start by reproducing copilot plugin marketplace add Rippling/claude-marketplace with the referenced marketplace.json, then inspect the marketplace-add validation path. The fix should prevent one overlong description from making all 672 entries unusable, or make the validation error identify the plugin; verify that the marketplace can be added and that invalid entries are handled as intended.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Environment
- Copilot CLI:
1.0.88 - OS: macOS
Problem
copilot plugin marketplace add <owner>/<repo> performs strict Zod validation
of marketplace.json and rejects the entire marketplace if any plugin
entry has a description longer than 1024 characters. There is no partial
load, warning-and-skip, or truncation — a single non-conformant plugin entry
makes the whole marketplace (hundreds of otherwise-valid plugins) unusable.
This may be related to/duplicate work for #3494 (SKILL.md description >1024
chars silently dropped from skills.list()), but the failure mode here is the
opposite and arguably worse: instead of silently dropping the SKILL.md entry
in an installed plugin, the CLI hard-fails to add an entire marketplace
because of a handful of over-length description fields in marketplace.json.
Reproducer
$ copilot plugin marketplace add Rippling/claude-marketplace
Failed to add marketplace: Error: Request plugins.marketplaces.add failed with message: Invalid marketplace.json: plugins.27.description: String must contain at most 1024 character(s), plugins.89.description: String must contain at most 1024 character(s), plugins.147.description: String must contain at most 1024 character(s), plugins.171.description: String must contain at most 1024 character(s), plugins.394.description: String must contain at most 1024 character(s), plugins.406.description: String must contain at most 1024 character(s), plugins.417.description: String must contain at most 1024 character(s), plugins.439.description: String must contain at most 1024 character(s), plugins.580.description: String must contain at most 1024 character(s), plugins.610.description: String must contain at most 1024 character(s)
The referenced marketplace.json has 672 plugin entries; 10 of them have
description fields between 1084 and 6103 characters (one is nearly 6x the
cap). Trimming just those 10 descriptions to ≤1024 chars allows the
marketplace to be added successfully — every other field/entry is otherwise
valid.
Impact
- A single contributor adding an overlong description (easy to do
accidentally, e.g. via generated/templated descriptions) blocks marketplace
adoption for the entire org, not just their plugin. - The error message lists the offending indices but not plugin names, making
it hard to locate/fix the entries without manually indexing into the JSON
array. - There's no
--force/lenient mode to add the marketplace while skipping or
truncating invalid entries.
Suggested fix
- Validate per-plugin-entry and skip/warn on individual invalid entries
(matching the description in #3494) instead of failing the whole
marketplace add, OR - Include the plugin
name/id(not just array index) in the validation
error so it's actionable, and/or - Document the 1024-char
descriptioncap formarketplace.jsonplugin
entries (currently not called out anywhere in
https://docs.github.com/copilot/how-tos/copilot-cli/customize-copilot/plugins-marketplace).
- Lenguaje dominante
- Shell
- Estrellas
- 11.2k
- Forks
- 1.9k
- Merge medio
- 17 h 6 min
- PR fusionados (30 d)
- 5
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de github/copilot-cli
-
area:sessions
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
github/copilot-cli#4996 ·
Los mantenedores suelen responder en 1 día
-
triage
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
github/copilot-cli#4963 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
github/copilot-cli#4932 ·
Los mantenedores suelen responder en 1 día
-
triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
github/copilot-cli#4909 ·
Los mantenedores suelen responder en 1 día
-
triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
github/copilot-cli#4906 ·
Los mantenedores suelen responder en 1 día
Todos los issues de github/copilot-cli
Issues similares
-
Feature Needs Triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
project-chip/certification-tool#1154 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
beehive-lab/TornadoVM#1151 ·
Los mantenedores suelen responder en 1 día
-
writing-plans: user-facing text that describes app behaviour should cite the code it describesAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
obra/superpowers#2433 ·
Los mantenedores suelen responder en 5 días
-
area/release kind/bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
kubernetes-sigs/kueue#16455 · 1 comentario ·
Los mantenedores suelen responder en 1 día