書籍『作って学ぶAIエージェント』技術レビューのご案内(Member 向け)
現在執筆中の書籍『作って学ぶAIエージェント』について、
原稿テキスト段階での技術レビューを実施します。
目的
本レビューの目的は主に以下です。
- 技術的に致命的な誤りの検出
- 説明の前提不足や誤解を招く表現の指摘
- 現行ツール・APIとの不整合の確認
あわせて、書籍の構成・内容に対する要望や改善提案も受け付けます。
(これは必須ではなく、可能な範囲で構いません)
やってもらいたいこと
- 書籍の内容を読み、必要に応じてサンプルコードを実際に動かす
- 動作しない箇所、分かりづらい点、前提が不足している点があれば報告する
- 内容や構成について要望・違和感があれば共有する
レビューの深さや範囲は参加者に委ねます。
※ 技術レビューにあたって発生する API 利用料金等は、恐れ入りますが各自のご負担となります。
レビュー自体は原稿(Markdown/コード)を読む形でも十分に行っていただけます。
進め方
- レビュー用に期間限定の Private GitHub Repository を用意しました
- 対象は原稿テキスト(Markdown/コード含む)です
- フィードバックは Google フォーム から送信してください
- 記名・匿名どちらでも可
書籍の構成(目次)
# 作って学ぶAIエージェント:TypeScriptとLLMで切り拓くAI時代のエンジニアリング
## 概要
本書では、シンプルなAIエージェントをTypeScriptを用いて実装し、LLMがどのようにツールを使い、タスクを自律的に遂行するのかを理解していきます。ファイルの読み書きやコマンド実行といったツールの実装から始め、思考ループの構築、そしてGitHub Actionsと連携してプルリクエストを自動作成するエージェントを完成させます。
## 目次
### 第1部:AIエージェント開発の全体像を掴む
#### 第1章: AIエージェントが拓く新しい開発スタイル
- 1.1 AIエージェントの台頭と開発手法の変化
- 1.2 AIエージェントを学ぶ意義
- 1.3 本書のゴール──3つのコンポーネントで作るAIエージェント
- 1.4 本書の学習アプローチ
- 1.5 AIエージェントの構成要素──ツールと思考ループ
- 1.6 本書の学習ロードマップ
#### 第2章: 開発環境とLLM APIの基礎
- 2.1 TypeScriptを採用する理由
- 2.2 Bunを採用する理由
- 2.3 Dev Containerを採用する理由
- 2.4 LLM APIの基礎
- 2.5 開発環境のセットアップ
- 2.6 本書で使用するモデル
- 2.7 ハンズオン(d1):最初のAPIコール
### 第2部:エージェントの「身体」を作る
#### 第3章: LLM APIへの抽象化レイヤーを実装する
- 3.1 抽象化レイヤーの必要性
- 3.2 型定義──統一インタフェースの設計
- 3.3 プロバイダー層の実装
- 3.4 ハンズオン(d2):generateText関数の実装
- 3.5 ハンズオン(d3):マルチプロバイダー対応のテスト
- 3.6 プロバイダー間の差異吸収の整理
#### 第4章: エージェントの「手足」となるツールを実装する
- 4.1 ローカル環境でのコマンド実行の危険性
- 4.2 ツールが必要となる背景
- 4.3 ツールの基本構造
- 4.4 ハンズオン(d4):ファイルの読み書きツール(readFile、writeFile、editFile)の実装
- 4.5 ハンズオン(d5):コマンド実行ツール(execCommand)の実装
- 4.6 ツールの統合
- 4.7 補足:さらなる安全性強化へ──アプリケーションとOSによる二層の防御
#### 第5章: エージェントの「頭脳」となる思考ループを実装する
- 5.1 なぜ思考ループが必要なのか
- 5.2 最小のエージェント──1往復の会話
- 5.3 繰り返しを追加する──会話のループ
- 5.4 ハンズオン(d6):ツール実行を統合する
- 5.5 承認ポリシー──ツール実行前の確認機構
- 5.6 エラーハンドリング──executeToolの内部拡張
- 5.7 その他の安全性の考慮
- 5.8 Agentクラス(再利用可能な設計)
- 5.9 デバッグとテスト
### 第3部:AIエージェントを完成させ、実用化する
#### 第6章: コーディングエージェントを組み立てる
- 6.1 Nano Codeに明確な指示を与える
- 6.2 ハンズオン(d7):CLIで動くNano Codeの実装
- 6.3 実行例と出力
- 6.4 思考過程の可視化
- 6.5 ハンズオン(d8):コンテキスト管理の実装
#### 第7章: GitHub Actionsで開発ワークフローを自動化する
- 7.1 最小構成で動かす
- 7.2 Secretsと権限
- 7.3 Git操作ツール
- 7.4 GitHub CLIによるプルリクエスト作成
- 7.5 手動トリガーでの動作確認
- 7.6 Issueイベントへの接続
- 7.7 状況を認識して行動を変える──再実行への対応
- 7.8 完全なソースコード
### 第4部:より賢く、安全なエージェントへ
#### 第8章: エージェントの性能と安全性を高めるサンドボックス
- 8.1 なぜ多層防御が必要なのか
- 8.2 ハンズオン(d10):アプリケーション制御を実装する
- 8.3 ハンズオン(d11):プロセス隔離を実装する
- 8.4 攻撃が無力化されることを確認する
#### 第9章: AIエージェント開発のこれから
- 9.1 本書の振り返りと到達点
- 9.2 Nano Codeの拡張可能性
- 9.3 開発の前提が書き換わる
- 9.4 エンジニアの役割の変化
- 9.5 チームとプロセスの再設計
- 9.6 トレードオフとエンジニアの責任
- 9.7 技術変化への対応
- 9.8 実装から運用へ
### Appendix
#### Appendix A: LLM Streaming APIの実装と設計
#### Appendix B: Responses API対応スケジュール
- レビュー期間:現在 〜 1/7 頃(約1週間)
- 年始に比較的時間が取れる方向けの想定です
※参加可能な範囲・タイミングで問題ありません
献本について
- 金銭的な謝礼はありません
- レビュー参加者には、完成後に献本をお渡しする予定です
参加方法
こちらをご確認ください
👉
- 書籍『作って学ぶAIエージェント』技術レビュー(参加受付)でGitHubアカウントを申請をいただき
- 確認後、https://github.com/lai-so/gihyo-build-ai-agent へこちらから招待します
技術的観点でのチェックにご協力いただける方は、無理のない範囲でご参加ください。