github / github/app

"Support object-based `source` (e.g. `git-subdir`) in marketplace.json plugin entries

Aperta
#3,767 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

triage
Lingua principale
Nessun dato sulla lingua
Stelle
2.1k
Fork
157
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Feature summary

Support git-subdir-style object sources in marketplace.json plugins[].source

What problem are you trying to solve?

When adding a Git-based plugin marketplace, the desktop app's marketplace.json validator only accepts a plain string for plugins[].source (e.g. "./plugins/foo"). A marketplace whose plugin lives in a subdirectory of a different repo — with a pinned ref/sha and tag pattern — needs a source object (e.g. {"source": "git-subdir", "url": "...", "path": "...", "ref": "...", "sha": "...", "tag_pattern": "..."}) instead of a bare path. Adding such a marketplace fails outright with Invalid marketplace.json: plugins.0.source: Invalid input, with no indication of what's wrong or how to work around it.

Proposed solution

Accept an object form for source (in addition to the existing string form) that supports at minimum: source: "git-subdir", url, path, ref/sha, similar to what's used by other plugin-manager ecosystems (e.g. Claude's marketplace format).

Workflow impact

Any team maintaining a marketplace that vendors plugins from a separate source repo (rather than committing plugin code directly into the marketplace repo) can't add that marketplace to Copilot desktop at all today. Affects internal/enterprise marketplace authors who want to reuse plugin code across multiple marketplace listings without duplicating it.

Installation context

No response

Additional context

No response

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia dal validatore di marketplace.json dell’app desktop e traccia come plugins[].source viene analizzato e utilizzato durante l’installazione del marketplace. Verifica che la forma stringa esistente rimanga valida, aggiungi il supporto per i campi descritti dell’oggetto git-subdir e conferma che un marketplace che utilizza l’oggetto di esempio non fallisca più la validazione.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Ambito
desktop
Tipo di issue
Funzionalità
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Attiva
Chiarezza
Abbastanza chiara
Idoneità per principianti
55/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.