Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

docs: add a routing-as-data convention for plugins that route to installed tools

Chiusa
#6,483 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Una pull request collegata è già stata integrata.

  • #6640 di @kyle-sexton — integrata

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
48/100
Tipo di issue
Documentazione
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
json, markdown, yaml
Ambito
documentation

Direzione di ricerca

Start in docs/conventions/ — read the existing config-cascade convention and the related customization-home issue #5906 (whose superseding ADR must be cited), then inspect user-interface's routing.json for the shape being generalized. Draft the new convention doc covering route rows, detection, team customization, degradation and adoption, plus the JSON Schema with additionalProperties: false. Done means the doc lands, the config-cascade policy-floor clause is updated, and user-interface detect ids move to the <self> placeholder; cross-check against #6306, #6302 and #6298 for what each adopter expects.

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

Descrizione

needs-human needs-triage

Problem

Plugins that route to other installed skills, plugins, MCP servers and tools keep their routes as data. user-interface already does (its routing.json), and user-experience (#6306) and the DX plugin (#6302) will too. No convention owns that shape, so each plugin would invent its own. The plugin philosophy asks for an owner doc before a second adopter of a pattern.

Proposed scope

A convention doc under docs/conventions/ that owns:

  • Route rows: a versioned file with a note and a schema with additionalProperties: false. Ranks run 1..n per group, and the project is an implicit rank 0, never a row. kind is one of skill, plugin, mcp or tool, and detect is kept separate from id. account is none, key, login or paid. status is confirmed, unconfirmed or deferred: a deferred route is never used, an unconfirmed one is disclosed when used, and an account-bound row is never unconfirmed. Each row carries as_of and an https pointer.
  • Detection: by plugin or skill name, never by marketplace id. A plugin's own entries use a <self> placeholder resolved at run time. Installed and reachable are each true, false or null, with a reason when unreadable. A plugin disabled for the project counts as absent. Tests run on fixtures.
  • Team customization: a team's repo holds docs/conventions/<plugin>.yaml beside docs/conventions/<plugin>.md, and becomes a docs/conventions/<plugin>/ folder only when the plugin needs more files. Routing is one key in that file, and it can re-rank, add or disable routes and set a deny floor. The JSON Schema ships inside the plugin. Nothing goes under .claude/. Per-user values use plugin userConfig. This follows the customization home set in #5906, and the doc cites #5906's superseding ADR.
  • Degradation: if the team file is missing, malformed or unreadable, the plugin uses its built-in routes, names the skipped file, says that team overrides and the deny floor were not applied, and suggests setup.
  • Adoption: user-interface moves its detect ids to <self>, and user-experience and the DX plugin adopt the doc.

The config-cascade convention's policy-floor clause (dedicated file, team layer included) is updated in this PR or in #5906, whichever merges first.

Out of scope

  • The superseding ADR and moving other plugins' .claude/<name> configs (#5906).
  • Each plugin's own routes.

Related

  • #6306 (user-experience)
  • #6302 (DX)
  • #6298 (user-interface)
  • #5906 (customization home)

🤖 Generated with Claude Code

Lingua principale
Shell
Stelle
22
Fork
2
Merge medio
5h 18m
PR unite (30g)
869

Preparare l'ambiente

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.

Altre issue di melodic-software/claude-code-plugins

Tutte le issue di melodic-software/claude-code-plugins

Issue simili

Altre issue su Shell/Bash

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.