Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

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

Cerrado
#6,483 1 comentario 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Ya se ha fusionado un pull request relacionado.

  • #6640 de @kyle-sexton — fusionado

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
48/100
Tipo de issue
Documentación
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
json, markdown, yaml

Línea de trabajo

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.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

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

Lenguaje dominante
Shell
Estrellas
22
Forks
2
Merge medio
5 h 15 min
PR fusionados (30 d)
833

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de melodic-software/claude-code-plugins

Todos los issues de melodic-software/claude-code-plugins

Issues similares

Más issues de Shell/Bash

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.