mcpField
A
ask-light

ask-light

github.com/light-chengエージェントワークフロー526 回インストール4 日前に更新
リポジトリ

ask-light について

ask-light は、依頼内容と実際のプロジェクト状態に基づいて Light のワークフローやスキルを提案する、ユーザー起動型のアドバイザーです。根拠を集めて候補を検証し、理由を説明したうえで、承認を待ってから移行します。

主な機能

  1. 01依頼内容とワークフロー状況の判断
  2. 02スクリプトによるプロジェクト情報の収集
  3. 03候補スキルの絞り込みと評価
  4. 04選択した提案の検証
  5. 05移行前の承認待ち

活用シーン

  1. 01現在のプロジェクトに適した次のスキルの選定
  2. 02単独タスクに合うスキルの検索
  3. 03範囲を限定したワークフロー提案の取得
  4. 04Light スキルと役割の一覧確認

インストール

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

$npx skills add https://github.com/light-cheng/skills --skill ask-light

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

agents/
openai.yaml
references/
discovery-contract.md
light-skill-map.json
modes-and-transition.md
result-contract.md
routing-judgment.md
scripts/
advisor.py
ask_light_models.py
ask_light.py
ask-light.ps1
compact_state_builder.py
decision_source.py
semantic_router.py
state_extractor.py
tests/
test_ask_light_behavior.py
test_ask_light_contract.py
test_ask_light_semantic.py
test_namespace_migration.py

詳細

Ask Light

ask-light は、Light のワークフローアドバイザー、ナビゲーター、ルーターです。ユーザーが呼び出すエントリーポイントとして、ユーザーが何をしようとしているのかを理解し、実際のプロジェクトの状態を調べ、Light Skills とその契約を把握したうえで、次に取るべき最善の行動を判断し、その理由を説明します。承認を待ち、ホストが許可する場合は承認された Skill に移行します。

仕組み

コードが事実を確立し、モデルが判断し、コードが選択を検証します。 scripts/ask_light.py(Python 3.9+)は証拠パケットを返し、Skill の名前は返しません。 light-skill-map.json のパターンは候補のヒントにすぎません。証拠、検証、承認の完全なプロトコルについては、 discovery-contract.md を参照してください。

セッションの流れ

  1. リクエストを解釈します。 状況を判断します。現在のワークフロー、明示されたタスクまたは名前付き Skill、新たな取り組み、単独のタスク、ワークフローの概要、またはコレクション内のナビゲーションのいずれかです。状況に応じて、どの証拠を適用するかが決まります。
  2. 証拠を収集します。 次を実行します。 python3 scripts/ask_light.py --mode next --context-json '{"projectRoot": "..."}' (Host を claude-code や codex のように指定して --host-name を追加し、コレクションのルートが分かっている場合は --roots-json を追加します。--host-name を指定しない場合、スクリプトは環境から推測します)。パケット内のカタログから候補を絞り込みます。ルーティングのためにすべての SKILL.md を読むことはしないでください。
  3. 候補を把握します。 有力な Skill を2〜4個選びます。隣接する Skill が実質的に近い場合は、それらの SKILL.md を読みます。
  4. 判断します。 routing-judgment.md を読んでから、主要な Skill を1つ、代替案を最大1つ選びます。パケットの内容と矛盾する状態を作り出さないでください。
  5. 検証します。 次を実行します。 python3 scripts/ask_light.py --mode validate --skill <name> --scope <scope> (スコープ)。 BLOCKED の場合は、論理上の推奨とその理由を報告して停止します。別の Skill に差し替えないでください。
  6. アドバイザーとして説明します。 観察した事実を挙げ、この Skill が今の状況に合う理由と、明らかに近い別の Skill が合わない理由を説明します (routing-judgment.md)。
  7. 承認を待ちます。 ユーザーが明示的に同意する前に、何も実行しないでください。
  8. 移行します。 再検証してから、呼び出し形式と Host で確認済みの機能が許す場合に限り、承認された Skill を開始します。それ以外の場合は、正確な呼び出し方法を示して停止します。承認された Skill の先へ連鎖させないでください (modes-and-transition.md)。

モード

  • $ask-light next — ワークフローを踏まえた、次に実行する Skill の推奨を1つ提示します。
  • $ask-light workflow — 現在の状態を起点とする、範囲を限定したワークフローの手順を1つ提示します。
  • $ask-light <category> — コレクションを参照し(例:project Skills、review Skills、learning Skills)、役割と関連する Skill を説明します。
  • 単独のリクエスト(Explain this like I'm five、Investigate this bug)は、プロジェクトを深く調べずにルーティングします。

結果の契約

結果の契約に従って記録を返します。

任意の機能

  • 有効な Skill が複数残っている場合、または曖昧さやエスカレーションが問題となる場合 → セマンティックモード(--mode semantic)は light-decide スクリプトの経路を通じて質問します。スクリプトを使わずに判断する場合は、質問 ID ask-light/next-action、ask-light/material-ambiguity、または ask-light/reasoning-escalation を指定して light-decide を呼び出します。質問はプロジェクトの Decision data: 制限内でのみ行われます(行がない場合はオンデバイス)。また、ユーザーのポリシーファイルで該当の質問が調整されている場合に限り、回答を適用します。返された decisions を light-decide のログ形式で記録します。利用できない場合、または調整されていない場合は、決定論的なベースラインを維持します。判断によって移行の権限が与えられることはありません。移行を許可するのはユーザーの承認だけです。

コメント