Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

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

クローズ
#6,483 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

関連するプルリクエストがすでにマージされています。

  • #6640 @kyle-sexton による — マージ済み

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
48/100
issue の種類
ドキュメント
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
json, markdown, yaml
領域
documentation

調査の方向性

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.

索引モデルが issue の本文から書いたものです。

説明

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

主要言語
Shell
スター
22
フォーク
2
平均マージ
5時間 15分
マージ済み PR(30日)
833

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

melodic-software/claude-code-plugins のほかの issue

melodic-software/claude-code-plugins の issue をすべて見る

似ている issue

Shell/Bash の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。