mcpField
L
lvtd-skills-router

lvtd-skills-router

github.com/lvtd-llcエージェントワークフロー161 回インストール7 週間前に更新
リポジトリ

lvtd-skills-router について

lvtd-skills-routerは、タスクに必要なLVTDスキルを絞り込むエージェントスキルです。領域や目的、必要な根拠に基づき、利用可能な場合は生成済みレジストリのメタデータを使って選定します。

主な機能

  1. 01領域と目的に基づくタスク振り分け
  2. 02スキルとプラグインのメタデータ検索
  3. 03具体的な主スキルを優先
  4. 04レジストリデータをカタログとして使用

活用シーン

  1. 01具体的なタスクに合うスキルの検索
  2. 02ワークフローに補完的なスキルを選定
  3. 03インストール済みプラグイン情報による振り分け

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/lvtd-llc/skills --skill lvtd-skills-router

インストール後、Claude Code で/lvtd-skills-routerを入力して読み込まれたか確認します。

詳細

LVTD スキルルーター

ユーザーの問題に役立つ、最小限の LVTD スキルセットを選ぶには、このスキルを使用します。分野、求める結果、必要な根拠に基づいて振り分けます。優先するスキルは1つにし、同じワークフロー内の別の懸念事項を扱う場合に限り、補助スキルを追加します。

信頼できる情報源

このリポジトリ内で作業する場合、このスキルに静的なカタログを手作業で管理しないでください。生成されたメタデータを使用します。

  1. dist/registry.json が存在しないか、古くなっている場合は、npm run build:registry を実行します。
  2. dist/registry.json を読み込みます。
  3. 各スキルの name、description、category、tags、および hosts.codex.plugin または hosts.claudeCode.plugin を使用します。
  4. hosts.*.plugin の値がないスキルは、直接インストールするスキルとして扱います。

生成されたレジストリを利用できない場合は、skills/*/SKILL.md のソースフロントマターと、scripts/marketplace-utils.mjs のプラグイン分類ルールを確認します。このリポジトリ外でインストール済みのプラグインを使用する場合は、現在のクライアントで利用できるインストール済みスキルとプラグインのメタデータから振り分けます。

振り分けのワークフロー

  1. ユーザーの具体的なタスクを1つのフレーズで言い換えます。
  2. タスクに関連するスキル名、説明、タグ、プラグイン名を検索します。
  3. 現在の依頼を説明が直接カバーする、最も具体的なスキルを選びます。
  4. 複数のスキルが該当する場合は、ユーザーの実際の作業に最も近いものを優先します。戦略より実装、広範な計画より診断、フレームワークが判明している場合はフレームワーク非依存よりフレームワーク固有のスキルを選びます。
  5. ユーザーがインストールするものを尋ねた場合、または該当するスキルを現在のクライアントで利用できない場合に限り、マーケットプレイスのプラグイン名を伝えます。
  6. ユーザーが助言ではなく作業を依頼した場合は、選択したスキルを使って作業を続けます。

便利なレジストリクエリ

現在のマーケットプレイスプラグインと、含まれるスキルを一覧表示します。

node --input-type=module -e '
import { readFile } from "node:fs/promises";
const registry = JSON.parse(await readFile("dist/registry.json", "utf8"));
const plugins = new Map();
const direct = [];
for (const skill of registry.skills) {
  const plugin = skill.hosts?.codex?.plugin || skill.hosts?.claudeCode?.plugin;
  if (!plugin) {
    direct.push(skill.name);
    continue;
  }
  plugins.set(plugin, [...(plugins.get(plugin) || []), skill.name]);
}
for (const [plugin, skills] of [...plugins.entries()].sort()) {
  console.log(`${plugin}: ${skills.sort().join(", ")}`);
}
if (direct.length) {
  console.log(`direct-install: ${direct.sort().join(", ")}`);
}
'

キーワードで候補スキルを検索します。

node --input-type=module -e '
import { readFile } from "node:fs/promises";
const query = process.argv.slice(1).join(" ").toLowerCase();
const registry = JSON.parse(await readFile("dist/registry.json", "utf8"));
for (const skill of registry.skills) {
  const haystack = [
    skill.name,
    skill.displayName,
    skill.description,
    skill.category,
    ...(skill.tags || []),
  ].join(" ").toLowerCase();
  if (haystack.includes(query)) {
    const plugin = skill.hosts?.codex?.plugin || "direct-install";
    console.log(`${skill.name} (${plugin}) - ${skill.description}`);
  }
}
' "calibredb"

判断に迷った場合

  • Django 固有の htmx 作業では、django-htmx を選びます。フレームワーク非依存のパターンや、より詳しい htmx の仕組みには htmx-* スキルを使います。
  • Rust のゲーム開発では、依頼が明確にゲーム関連の場合、一般的な Rust スキルより rust-game-* または Bevy/bracket/roguelike のスキルを優先します。
  • Traction に基づく SEO チャネルテストでは、traction-seo-content を選びます。より広範な SEO 戦略、ロードマップ、テクニカル SEO、リンク構築には seo を使います。
  • 実験の設計、分析、プラットフォーム戦略、長期的な測定には practical-ab-testing を選びます。成長チャネルのテストには traction を使います。
  • 開発者向けドキュメントの調査、計画、執筆、サンプル、図表、情報アーキテクチャ、保守には developer-docs を使います。
  • 製品ページ、料金ページ、ローンチページ、ソーシャルプレビュー、または共有されやすさの監査には、make-product-viral を選びます。
  • Calibre ライブラリの CLI 作業には、calibredb を選びます。
  • フレームワーク固有のスキルがない場合、テストスイートのアーキテクチャにはフレームワーク非依存の tdd プラグインスキルを選びます。

避けること

  • 候補を眺めるためだけに、候補スキルをすべて読み込まないでください。まずメタデータから振り分けます。
  • 具体的に適合するスキルが明らかになったら、振り分けを続けないでください。
  • 長期的に有用な判断基準を除き、プラグイン名やスキル一覧をこのファイルにコピーしないでください。カタログの信頼できる情報源は、生成されたレジストリデータです。

コメント