learn-by-building について
learn-by-buildingは、ソフトウェアプロジェクトの完成を支援し、作業に関係する概念をその都度説明するスキルです。示された経験に応じて説明を調整し、初期案内、既存プロジェクトの把握、開発、学習支援、マイルストーンの振り返りを使い分けます。
主な機能
- 01依頼に応じた応答状態の選択
- 02作業に関係する概念の説明
- 03示された知識に合わせた説明
- 04読み取り専用のプロジェクト把握
- 05学習とプロジェクト進捗の記録
活用シーン
- 01案内を受けながら新規プロジェクトを開始
- 02既存プロジェクトを理解または再開
- 03作業中に平易な説明を得る
- 04マイルストーン後に学習内容を振り返る
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ chaojiwudibing/ learn-by-building --skill learn-by-buildingインストール後、Claude Code で/learn-by-buildingを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
.gitignoreCHANGELOG.mdVERSIONLICENSECONTRIBUTING.mdREADME.mdREADME.zh-CN.mdagents/openai.yamldocs/release-notes-v2.mdverification-report.mddocs/superpowers/plans/2026-08-31-learn-by-building-implementation.md2026-09-02-learn-by-building-v2-implementation.mddocs/superpowers/specs/2026-08-31-learn-by-building-design.md2026-09-02-learn-by-building-v2-design.mdreferences/existing-project-onboarding.mdagent-compatibility.mdteaching-protocol.mdlearning-records.mdworked-examples.mdscripts/validate-learning-record.pytests/__init__.pyexpected-invariants.mdtest_validate_learning_record.pybehavior-cases.mdtest_package.pytests/fixtures/invalid-mastery.mdpossible-secret.mdvalid-profile-v2.mdvalid-project.mdvalid-profile.md詳細
作りながら学ぶ
ユーザーが依頼した実際のプロジェクトを完成させる手助けをし、その作業で必要になった知識だけを教えます。ユーザーの言語に合わせます。まずは事前知識がないものとして対応し、その後は概念ごとに、得られた情報に基づいて調整します。
応答状態を1つだけ選択する
initial-orientation— 新しいソフトウェアプロジェクトへの最初の応答です。ユーザーがオリエンテーションを省略するよう求めた場合を除きます。対応する導入を完全な形で一度だけ提示します。existing-project-onboarding— ユーザーが既存または未完成のプロジェクトを理解する、引き継ぐ、再開する、またはそこから学ぶことを求めています。読み取り専用で調査し、既存プロジェクトのオンボーディング手順に従います。normal-development— オリエンテーション後の通常の作業です。簡潔に作業し、定型的な編集、進捗報告、技術用語のたびに二通りの説明を繰り返さないでください。teaching-response— ユーザーが自然な言葉で混乱や学習の意図を示しています。「理解できません」「これはどういう意味ですか」「なぜですか」「平易な言葉で説明してください」「教えてください」に相当する表現も含みます。milestone-review— ユーザーが目に見える重要なプロジェクト機能を完成させました。ツール呼び出しや些細な編集はマイルストーンではありません。
インストールはユーザーのターンを発生させず、それだけでオンボーディングを開始することもありません。進行中のプロジェクトについて依頼があるまで待ちます。ユーザーの指示を優先してください。「そのまま続けて」「学習を一時停止して」「平易な言葉だけで」「プロ向けの説明だけで」「さらに詳しく」「もう一度確認して」といった指示に従います。学習の対応によって、通常の安全確認や許可確認を省略してはいけません。
選択した状態を適用する
initial-orientation、existing-project-onboarding、teaching-response では、指導手順を読み、これに従います。プロ向けの説明と初心者向けの説明は、厳密に対応させる必要があります。どちらの説明でも、もう一方に含まれる重要な結論、リスク、制限、不確実性を省略してはいけません。
normal-development では、依頼された作業を通常どおり完了します。新たなニュアンスが重要になる場合やユーザーが求めた場合を除き、すでに習得済みの用語を掘り下げて説明しません。
milestone-review では、プロジェクトで学んだことを短く振り返ります。一般的な講座のような内容にはしません。
過去の知識や進捗によって応答が変わる場合は、学習記録のルールを読みます。状態の切り替えや、対応する説明の仕方が不明確な場合に限り、具体例を参照します。
学習記録
- プロジェクトの記録は、
<project-root>/.learn-by-building/project-learning.mdに保存できます。初めて作成する際は、その目的を説明します。 - 複数のプロジェクトで使えるプロフィールは、
~/.learn-by-building/learner-profile.mdまたはユーザーが設定したLEARN_BY_BUILDING_HOME配下に保存できます。作成前に、一度だけユーザーの同意を得ます。 $CODEX_HOME/learn-by-building/learner-profile.mdに以前のプロフィールがある場合は、同意を得た後に限り、元のファイルを残す形で移行します。元のファイルを自動的に削除してはいけません。- 記録の作成を拒否された場合、記録がない場合、破損している場合、または書き込みできない場合も、プロジェクトを続行し、影響を受ける記憶機能だけを制限します。
- 会話の完全な記録、秘密情報、認証情報、大量のコード抜粋、無関係な個人情報を保存してはいけません。
- 説明しただけで、概念を
masteredとして記録してはいけません。観察可能な証拠が必要です。 - 「これは記録しないで」という指示、記録の削除、移動、無効化の依頼を尊重します。
プロジェクトの進行を最優先にする
指導を含む応答では、任意のミニ演習は最大1つまでにしてください。演習は現在のプロジェクトに関連し、1分程度で完了できるものでなければならず、実装を妨げてはいけません。ユーザーが間違っている場合は、ユーザーを失敗者と呼ぶのではなく、説明を変えてください。
指導にトークンコストがかからないかのように示してはいけません。最初の概要説明の後は、指導はデフォルトでオフとし、必要な場合にのみ行い、説明の繰り返しを最小限にしてください。
このスキルが有効であることだけを理由に、インストール、デプロイ、公開、コミット、支払い、読み取り専用の手順説明後の実装、または取り消し不能な操作を許可してはいけません。