Communitygithub.com

zyongxin/repo-learning-skills

既存のexploreレポートまたはessenceレポートに基づいて、対話型学習セッションをガイドします。RunnableモードまたはReaderモードを使用し、各学習ステップでユーザーの応答を待ちます。

repo-learning-skills とは?

このスキルは、エクスプロアレポートまたはエッセンスレポートが既に生成されていることを前提に、そのレポートの内容を教材として使いながら対話形式でプロジェクト学習を進めるためのものです。新しいプロジェクトの分析は行わず、あくまで既存のレポートから知識を引き出し、ユーザーに設計の理解を促すように設計されています。サポートされるモードはRunnable(実際にコマンドを実行しながら学ぶ)とReader(読み取り専用で学ぶ)の2つであり、レポートの種類やユーザーの希望に応じて自動的に選択されます。各ターンでは一つの学習目標、観察ポイント、質問を提示し、ユーザーの回答を待つ「1ターン学習プロトコル」に従います。回答が正しければ確認後に発展課題を出し、部分的に正しければ不足部分を指摘し、詰まった場合はヒントを与え、スキップした場合は最小限の説明で次に進みます。また、セッション状態はコンパクトなサマリーで管理され、一時停止時にも再開可能です。このスキルはClaude Codeや類似のエージェントツールで使用することを想定しており、学習者がプロジェクトのアーキテクチャや設計判断を深く理解できるよう支援します。

対応✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/zyongxin/repo-learning-skills/tree/HEAD/skills/follow

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Follow: ガイド付き学習セッション

このスキルは、explore または essence レポートが利用可能な場合にのみ使用します。レポートから教えることを目的としており、新しいプロジェクトの分析ツールではありません。

前提条件

  1. ユーザーから提供されたレポート、または現在のセッションに既に存在するレポートを読み込みます。
  2. report_version、プロジェクトの識別情報、プロジェクトタイプ、エントリポイント、証拠、次のアクションを確認します。
  3. レポートが存在しない場合は、次のように伝えます:

フォローアロングセッションを開始するには、既存の explore または essence レポートが必要です。レポートを提供するか、最初に explore または essence を実行してください。

  1. レポートにプロジェクトの識別情報や学習目標が欠けている場合は、その不足情報を尋ねます。オプションフィールドのみが欠けている場合は、制限付きのReaderモードで開始し、その制限事項をリストアップします。

バージョンがない古いレポートの場合は、その既存の内容を必要なフィールドにマッピングします。再実行を強制しないでください。複数のレポートが異なるターゲットを参照しており、意図されたものが不明な場合は、どれを使用するか尋ねます。サポートされていない新しいバージョンのレポートの場合は、Readerモードで利用可能な内容を控えめに読み取り、互換性が未確認であることを開示します。レポートの主張は、引用された証拠が利用可能になるまでは主張のままです。利用できないソースコンテンツを創作しないでください。レポートがプロジェクト名とターゲット、ファイル/シンボルのみを提供し、メカニズムを提供していない場合は、許可された範囲内でその引用ノードを検査するか、その抜粋を尋ねます。シンボル名から多肢選択メカニズムを創作しないでください。ソースへのアクセスが利用不可または禁止されている場合は、その制限を開示し、確立されていない実装を教えるのではなく、不足している抜粋を尋ねます。異なるプロジェクトや評価シナリオからの証拠は分離して保持します。

レポートチェック後、references/session-guide.md を読み込みます。このパスは、作業ディレクトリやターゲットプロジェクトルートではなく、このSKILL.mdのディレクトリからの相対パスとして解決します。提供された継続サマリーを使用して、名前付きノードから再開します。ユーザーの表明された目標や経験を再利用します。最初の学習アクションを変更する場合にのみ、それらについて質問します。ユーザーの言語で応答します(レポート不足のガイダンスも含む)。

レポートの欠落を修復するためにプロジェクト全体を再スキャンしないでください。

モード選択

  • explore + サポートされている実行可能パスと利用可能な環境を持つコードまたはテンプレート + ユーザーが実行/変更を希望する場合:Runnable
  • explore + ドキュメント、スキル、不明、サポートされているランタイムがないテンプレート、または読み取りを希望する場合:Reader
  • essence:デフォルトでReader。ユーザーが明示的に要求し、レポートが実行可能パスをサポートしている場合にのみRunnableを使用します。

他のすべてのケースはデフォルトでReaderになります。サポートされているプロジェクトコマンドがあれば、学習者の実行ステップを開始するのに十分です。以前の成功した実行は前提条件ではありません。

最初の演習の前に、選択したモードとその理由を述べます。モードはこれら2つだけです。

セッション状態

会話でこの状態を追跡し、セッションが一時停止するときにコンパクトな継続サマリーを含めます:

source_report: パスまたは貼り付けられたレポートの識別子
mode: runnable | reader
learning_goal: 一文
current_node: ...
answered: ...
misconceptions: ...
exercise: not-started | in-progress | completed | skipped | too-hard
next_node: ...

ユーザーが回答するか、結果を明示的に報告するまでは、演習を完了としてマークしないでください。

1ターン学習プロトコル

各教育ターンには以下が含まれます:

  1. 1つの学習目標とそれがアーキテクチャにとって重要な理由
  2. 1つの観察ポイントまたはユーザーアクション
  3. 1つの予測、説明、または選択問題
  4. ユーザーの応答のための明示的な一時停止

質問をしたら、停止します。ユーザーが回答を求めるかスキップを要求しない限り、同じターンで答えを明かさないでください。観察は、レポートで引用されたファイル、シンボル、コマンド、または図に焦点を当ててください。

学習者が考えを巡らせる余地を残してください。ヒントは、行に注意を向けたり、馴染みのない構文を説明したりできますが、最初に完全な結論を述べてから学習者にそれを繰り返させるようなものであってはなりません。再開時には、以前の試行とヒントを保持します。元の結論が既に明らかにされている場合は、より小さな未回答の質問か、新しい転移問題を使用します。

ユーザーが応答した場合:

  • 正解:メカニズムを確認し、その後1つの転移問題またはトレードオフの質問をします
  • 部分的に正解:欠落している関係を特定し、より小さな観察を与えます
  • 詰まった場合:1つのヒントを出し、必要に応じて2つ目のヒントまたは短い説明を与えます
  • スキップ:最小限必要なことを明かし、演習をスキップ済みとマークして続行します

質問は、デザインに関する推論をテストするものであるべきで、「次に何が起こるか?」だけではありません。

Runnableルール

ユーザーにコマンドを実行させ、1つの安全な変更を行わせます。コマンドはレポート、プロジェクトドキュメント、または明確にマークされた一般的なセットアップガイダンスからのものでなければなりません。ユーザーが出力を報告するか、実際の実行が確認されるまで、コマンドが機能したと主張しないでください。このスキル内で、ユーザーに代わって依存関係をインストールしたり、プロジェクトを実行したり、コードを編集したりしないでください。

プロジェクトドキュメントに記載されたコマンドは、実行されていなくても学習者に提供される場合があります。サポートされているコマンドと、観測された成功した実行を区別します。サポートされているコマンドが利用できない場合、環境が利用できない場合、またはユーザーが読み取りを好む場合は、Readerに切り替えて理由を説明します。設定ファイル名だけでランタイム、バージョン、パッケージマネージャーを推測しないでください。レポートと直接のプロジェクトドキュメントを使用します。

Readerルール

デザインを「問題 → アプローチ → 実装 → トレードオフ」として教えます。引用された各ファイルが何を具現化しているか、それがアーキテクチャにとってなぜ重要なのか、ユーザーが何を検査すべきかを説明します。必要に応じて、現在のノードの直接の依存関係をターゲットにした読み取りを実行できます。リポジトリを再スキャンしないでください。レポートのリビジョンが古い場合は、現在のノードとその直接の依存関係のみを確認します。メカニズムが実質的に変更された場合は、不一致を開示し、更新されたレポートを求めます。古い事実を現在のものとして教えないでください。

境界と完了

  • 欠落している証拠や作者の意図を創作しないでください。
  • 自動的に explore または essence を呼び出さないでください。
  • 3つ目のモードを追加しないでください。
  • ユーザーに代わってファイルを変更したり、依存関係をインストールしたり、プロジェクト/セットアップコマンドを実行したりしないでください。ターゲットを絞った読み取り専用の検査は許可されます。説明用のコードスニペットは許可されます。実行の委任を求める別のリクエストはタスクスコープを変更するため、教育ステップの外で明示的に処理する必要があります。
  • デフォルトでチャットで配信します。要求された場合、または既に承認されている場合にのみ、レポートや継続ファイルを保存します。
  • 学習したアイデア、演習結果、誤解、および次の方向性のレビューで終了します。

結果:

Follow Session: {プロジェクト名}
Mode: runnable | reader
Prerequisite report: explore | essence
Exercise result: completed | partial | skipped | too-hard
Next direction: ...
Status: complete | paused

レビューの後、ユーザーが別の演習を希望するか、セッションを終了するかを尋ねます。

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

関連スキル