【ITニュース解説】Day 00: Learn AI agents by building one, in 30 days
2026年10月14日に「Dev.to」が公開したITニュース「Day 00: Learn AI agents by building one, in 30 days」について初心者にもわかりやすく解説しています。
ITニュース概要
30日間でAIエージェントをゼロから手作りする学習パス。フレームワークに頼らず、その仕組みを深く理解しながら、未知のコードベースを解析する「cartographer」を完成させる。毎日具体的なコードと解説を提供し、費用はかからない。システムエンジニアを目指す初心者も実践を通じてAIエージェント開発の本質を学べる。
ITニュース解説
AIエージェントは、近年注目を集めている技術分野の一つだが、その本質的な仕組みを理解することは容易ではない。多くの解説記事やチュートリアルは、特定のフレームワークやライブラリを使ってAIエージェントを構築する手順を紹介するものがほとんどだ。しかし、そうした情報だけでは、エージェントが「なぜ、どのように動作しているのか」という根本的な部分が見えにくく、結果として表面的な知識しか得られないことが多い。
システムエンジニアを目指す初心者が、いざ「AIエージェントを作ってみて」と言われた時に、何から手をつければ良いのか途方に暮れてしまうのは、まさにこのためだ。フレームワークを使えば、数行のコードで「何かすごいこと」が実現できるかもしれないが、その裏側でエージェントがどのように思考し、判断し、行動しているのかは、ブラックボックスのままだ。特に、エージェントが直面するループ処理や意思決定、大規模運用時の問題対処といった核心的な部分はフレームワークの内部に隠れてしまい、理解する機会がないのが現状である。
このシリーズは、そうしたギャップを埋めることを目的としている。30日間という期間をかけて、AIエージェントの各概念を一日一つずつ、まずは手作業で構築することから始める。フレームワークに触れる前に、エージェントの核となるループ処理を自分自身で書き上げ、その上で初めてフレームワークを導入する。そうすることで、フレームワークがどのような役割を果たし、自分の代わりに何をしてくれているのかを明確に理解できるようになるだろう。
この学習シリーズでは、ただ30個の異なるデモを構築するのではなく、一つの実用的なツールを完成させることを目標としている。そのツールは「cartographer(カルタグラファー)」と名付けられたエージェントだ。cartographerは、あなたがこれまで見たことのない未知のコードベースを分析し、そのシステム全体を理解するための「オンボーディングマップ」を作成する。具体的には、プログラムの実行がどこから始まるのか、システムの中核を担うファイルはどれか、あるデータがどのように処理されるかを示すデータパス、そして初めて変更を加えるべき場所などを提示してくれる。これは、新しいチームやプロジェクトに加わった際、コードベースの全体像を把握するために何週間も費やすという、多くのエンジニアが経験する苦労を解消するツールとなる。
cartographerを構築する最大の理由は、それが「抵抗する」ツールである点にある。一般的なチュートリアルで使われるおもちゃのようなデモでは、エージェントが壁にぶつかることがないため、特定の概念がなぜ必要なのかという必然性を学ぶ機会がない。しかし、cartographerは違う。中規模のオープンソースプロジェクトのコードベースは、大規模言語モデル(LLM)が一度に処理できるテキスト量(トークン)をはるかに超える。どんなに賢いプロンプトや大きなコンテキストウィンドウを持つモデルを使っても、全てのコードを一度に読み込むことは不可能だ。この「コードベースが一度に収まらない」という厳然たる制約が、エージェントの設計におけるあらゆる概念を必然性へと転換させる。
例えば、この制約があるからこそ、コードベースの一部を読み込むための「ツール呼び出し」が不可欠となる。必要な情報だけを効率的に探し出す「情報検索(Retrieval)」は、単に「追加すべき機能」ではなく、エージェントがタスクを遂行するための生命線となる。そして、モデルの利用にはコストがかかるため、「コスト制御」は単なるオプションではなく、計算に基づいて判断しなければならない要素となるのだ。このように、各概念が必要となる瞬間に学ぶことで、知識がより深く定着する。
さらに、cartographerには「正しい答えがある」という利点もある。よく知っているコードベースに対してcartographerを実行すれば、生成されたマップが正しいかどうかを自分で確認できる。これにより、Day 25で行われるエージェントの評価は、客観的なデータに基づいた真の評価が可能となる。
この30日間の学習は、以下の週ごとのテーマで進められる。
第1週では、モデルを直接呼び出すところから始める。SDKやエージェントライブラリを一切使わず、約40行のPythonコードでHTTPを介して、エージェントの基本的なループ処理を実装する。モデルからの応答が途中で切れていないかを確認する方法、会話履歴を手作業で構築する方法、設計判断の基礎となるトークン計算、モデルに定型化されたデータ形式で応答させる方法、そしてツール呼び出しが実際にどのように機能するかを具体的に理解する。週末までには、動作するエージェントが手に入り、同時にその欠点も明確になるだろう。
第2週では、MCP(Multi-Client Protocol)について学ぶ。これは、作成したエージェントが単一のスクリプト内に閉じ込められることなく、様々なエディタやクライアントと通信できるようにするためのプロトコルだ。このプロトコルの最新バージョンを学び、実用的なサーバーを構築する。エージェントが自身で書かれていないコードを読み込む際に生じるセキュリティ上の問題にも対処する。
第3週では、LangGraphというフレームワークを導入し、なぜ単純なシーケンシャルな「ループ」だけでは不十分なのかを理解する。コードベースの読解は、一方向のパイプラインではなく、理解できない場合に「戻る」というサイクル的な思考が必要となる。LangGraphは、このような複雑なサイクルを表現するのに適している。また、この週では、何千ものファイルをスキャン中にクラッシュしても処理を継続できる耐障害性や、何か重大な行動を起こす前に人間に確認を求める機能など、スクリプトを本格的なソフトウェアへと昇華させるための重要な要素を追加する。
第4週では、エージェントが実用的なものとなるための後半部分に焦点を当てる。「メモリ」を実際には3つの独立した問題として捉え直す。情報検索(Retrieval)は、エージェントが自ら選択して使用するツールとして実装される。エージェントのパフォーマンスを客観的に測定できるよう、既知の正しい回答を持つ評価セットを構築し、「改善したのか、悪化したのか」という疑問に明確な答えを出せるようにする。さらに、トレーシング、コストルーティング、そして本番環境でエージェントが破綻する可能性のある7つの方法など、多くのチュートリアルが省略しがちな、より実践的で重要な側面を探求する。
この学習シリーズは、毎日、その日の概念を説明する解説記事と、具体的な構築手順を示す開発者ノートの二部構成で提供される。開発者ノートには、どのフォルダにどのファイルを作成し、どのようなコードを記述し、各行がどのような意味を持つのかが詳細に記載されている。
学習を進める上では、Python 3.12とターミナルが必要だ。毎日約1時間の学習時間を確保することが推奨される。エージェントが使用するモデルへのAPI呼び出しは、OpenAI互換のエンドポイントを介して無料枠のモデルに対して実行されるため、費用は発生しない。AIエージェントの経験が全くない初心者でも問題なく参加できるが、Pythonコードを読解できる程度の基本的なプログラミングスキルは前提となる。もしエージェントの概念自体が初めてであれば、「あらゆるAIエージェントを説明する6つのアイデア」という事前資料を読むことで、モデル呼び出し、トークン、コンテキストウィンドウ、モデルが記憶を持たない理由、ツール呼び出し、そしてエージェントを構成するループといった基本的な概念を約15分で理解できる。
このシリーズは、「まだ構築されていないものは説明しない」という原則に基づいている。解説記事が公開される前にコードがまず提供され、もし途中でうまくいかないことがあれば、その「うまくいかなかったこと」自体が解説のテーマとなる。30日間で難しいものを構築する過程は、常に成功ばかりではないため、多くの失敗談も共有されるだろう。また、精度の主張など、数値に関するあらゆる記述は、Day 25の評価結果に基づき、その評価方法も公開される。
このシリーズを通じて、あなたはAIエージェントがどのように動作し、なぜ特定の技術が必要なのかという本質的な理解を深め、フレームワークの裏側で何が起こっているかを明確に把握できるようになるだろう。