AIエージェントの黒箱を解体し、設計の筋道を追いたい開発者に向けた教材がGitHubで公開されています。
2026年7月5日、Dan Kornas氏がXで紹介した「Build Your Own OpenClaw」は、シンプルなチャットループから始めて18段階で軽量版のOpenClaw風エージェントを組み立てる学習用リポジトリです。各ステップにREADMEと実行可能なコードが揃っており、読むだけでなく手を動かして内部構造を理解できます。
この記事でわかること
- Build Your Own OpenClawが解決する学習上の課題
- 18段階の4フェーズ構成と各段階で扱う概念
- 本家OpenClawとの位置づけの違い
- 学習を始めるための前提条件と進め方
なぜ「使う」だけではエージェント設計が見えにくいのか
OpenClawは、自分のマシンやサーバー上で動かすパーソナルAIアシスタントのOSSフレームワークです。Gatewayと呼ばれる常駐プロセスがセッション管理やチャネル接続を担い、WhatsAppやTelegramなど多数のメッセージングサービスと連携します。GitHub上の本家リポジトリは38万超のスターを獲得しており、実運用向けの機能が急速に拡張されています。
一方で、フレームワークをそのまま導入すると「動くエージェント」は手に入りますが、ツール呼び出しのループやSkillsの読み込み、マルチエージェントの振り分けといった設計判断は内部に隠れます。ドキュメントを読んでも、なぜその層が必要なのかを体感しにくい、というのが初学者や実装者が抱えがちな壁です。
Build Your Own OpenClawは、この壁を「段階的に自作する」ことで越える教材として位置づけられています。作成者のczl9707氏は、2週間かけてエージェントを一から実装した経験をチュートリアル化したとHacker Newsで述べており、各ステップが1つの概念だけを追加する設計になっています(参考)。
Build Your Own OpenClawの概要
https://github.com/czl9707/build-your-own-openclaw
リポジトリはMITライセンスで公開され、言語はPythonです。2026年3月に作成され、執筆時点でGitHubスター数は約1,800、フォーク数は約310に達しています。公式サイトは build-your-own-openclaw.kiyo-n-zane.com で、完成形の参考実装として pickle-bot リポジトリも公開されています。
教材のゴールは、本家OpenClawの全機能を再現することではありません。チャット、ツール実行、Skills、会話の永続化、Webアクセス、イベント駆動、マルチエージェント、長期メモリまでを、最小限のコードで追体験する点に価値があります。LLMへの接続にはLiteLLMを使い、OpenAIやAnthropicなど複数プロバイダーを config.user.yaml で切り替えられます。
18段階・4フェーズの学習パス
全18ステップは、エージェントの成熟度に合わせて4つのフェーズに分かれています。
フェーズ1:単一エージェントの基礎(ステップ0〜6)
ステップ0のチャットループから出発します。ユーザー入力を受け取り、LLMにメッセージ履歴を渡して応答を返す、エージェントの最小単位です。続くステップ1でツール呼び出しを追加し、エージェントが外部アクションを取れるようにします。
ステップ2では SKILL.md 形式のSkillsを動的に読み込む仕組みを学びます。Skillsとは、Markdownで手順やドメイン知識を書き、必要なときだけエージェントに渡す拡張機能です。ステップ3で会話の永続化、ステップ4でスラッシュコマンドによるセッション操作、ステップ5でコンテキスト圧縮(compaction)、ステップ6でWeb検索・閲覧ツールを実装します。この時点で、チャット・ツール・記憶・Webアクセスを備えた単一エージェントが完成します。
フェーズ2:イベント駆動アーキテクチャ(ステップ7〜10)
CLIだけで動く構成から、スケールとマルチプラットフォーム対応へ移行します。ステップ7でイベント駆動にリファクタリングし、ステップ8で設定のホットリロード、ステップ9でスマートフォンなど外部チャネルからの接続、ステップ10でWebSocketによるプログラム連携を扱います。WebSocketサーバーはFastAPIで実装され、リアルタイム通信に特化した簡素な構成です。REST APIは意図的に省略されています(参考)。
フェーズ3:自律動作とマルチエージェント(ステップ11〜15)
ステップ11でジョブに応じたエージェント振り分け、ステップ12でcronによる定期実行(ハートビート)、ステップ13で多層プロンプト、ステップ14でエージェントからユーザーへの能動的な返信、ステップ15でエージェント同士の協調(agent dispatch)を学びます。ユーザーが寝ている間もタスクを回す自律性と、役割分担の設計がここで加わります。
フェーズ4:本番運用とスケール(ステップ16〜17)
最終段階では、ステップ16の同時実行制御とステップ17の長期メモリで信頼性を高めます。複数セッションが並行したときの競合回避と、セッションをまたいで知識を保持する仕組みが、実運用に近い課題として登場します。
本家OpenClawとの違い
本家OpenClawは、macOSやiOS向けの公式コンパニオンアプリ、20以上のチャネル連携、音声入出力、Canvas描画など、個人アシスタントとしての完成度を追求しています。Build Your Own OpenClawはその縮小版であり、ブラウザ操作やコーディングエージェント連携といった本家の難所はチュートリアルに含まれていません。作成者自身もHacker Newsで、未経験の領域が最も再現が難しかったとコメントしています(参考)。
逆に、教材側の強みは教育向けの段階設計です。各ディレクトリが独立したステップになっており、READMEでコンポーネントと設計判断の説明が付きます。GAP.mdには、参考実装pickle-botとの意図的な差分(テンプレート置換の省略、REST API非搭載など)が明記され、何を学ぶ対象にして何を削ったかが透明です。
類似の学習リポジトリに learn-openclaw もありますが、Build Your Own OpenClawはPythonとLiteLLMを軸に、本家の概念をより直接的に段階分割した点が特徴です。
学習を始める手順
前提として、Python実行環境とLLMプロバイダーのAPIキーが必要です。リポジトリをクローンしたら、次の設定から始めます。
cp default_workspace/config.example.yaml default_workspace/config.user.yaml
config.user.yaml にAPIキーを記入し、ステップ0のディレクトリへ移動して uv run my-bot chat を実行します。ステップごとにREADMEを読み、コードを動かし、次の段階へ進む流れです。料金はリポジトリ自体は無料(MIT)で、LLM APIの利用料のみ発生します。
Dan Kornas氏の投稿では、18段階の学習パス、ステップごとの実行可能コード、ツール・Skills・永続化・イベント駆動・マルチエージェント・長期メモリといったカバー範囲が紹介されています(参考)。エージェント開発の全体像を一度に飲み込むのではなく、1概念ずつ積み上げたい開発者に向いた教材と言えます。