楽天グループ
1,250 万行コードベース(vLLM)で 99.9% 精度、critical errors 97% 削減。新機能リリースのリードタイムを 24 日 → 5 日(79% 短縮)、リリース頻度を四半期から 2 週間に。大規模レガシーコードの長尺タスク事例。
自律的に動く AI エージェントを、設計・構築・運用するための考え方と技術。
概念整理 60 分 + Before デモ 15 分 + ハンズオン 45 分。
AIエージェントの周辺では様々な新規用語が登場しています。プロンプトエンジニアリング、コンテキストエンジニアリング、ハーネス、オーケストレーション、MCP、Hooks、Skills、サブエージェント。整理せずに実装に進むと、設計のたびに迷います。本セミナーは概念地図を 30 分で揃え、残り 70 分を Before デモとハンズオンに使います。
| 時刻 | 枠 | 内容 | 形式 |
|---|---|---|---|
| 19:00 – 19:10 | 10min | オープニング、定義と全体地図 | 座学 |
| 19:10 – 19:40 | 30min | 概念整理、相違点と関係 | 座学 |
| 19:40 – 19:55 | 15min | Before デモ、素のエージェントの限界 | 講師ライブデモ |
| 19:55 – 20:40 | 45min | ハンズオン、Hooks / Skills / サブエージェント | 受講者作業 |
| 20:40 – 21:00 | 20min | 振り返り、次回予告、Q&A | 座学 |
派遣スタッフ含む。VS Code、Git、Node.js、Python のいずれかは触ったことがある方。
OpenAI / Anthropic / Bedrock 経由で API を叩いた経験。エージェントを意識した設計に踏み込みたい方。
「Hooks / Skills / サブエージェントの違いは?」を整理して、自分の業務に持ち帰りたい方。
「使い方の暗記」ではなく「設計判断軸の獲得」を最優先します。Boris Cherny は "There is no one correct way to use Claude Code." と公言しています。テンプレを覚えるより、迷ったときに何を基準にするかを持ち帰ってください。
8 つのキーワードを「入力設計に関するもの」と「実行基盤に関するもの」に分けて整理します。設計判断のときに、自分がどの層の話をしているかを切り分けられるようになるのが目的です。
プロンプト 1 発で結果を引き出す時代から、ツールを呼び、状態を保ち、長時間走り続けるシステムを作る時代に。生産性インパクトはもう「期待値」ではなく「実測値」のフェーズに入っています。
8 つのキーワードを 5 層で整理します。下から上へ「記憶」「知識」「ガード」「委譲」「配布」と段が上がるほど、自社固有の判断軸を組み込みやすくなります。Image 出典:The Agent Development Kit(公開インフォグラフィック)。
8 キーワードを中心に、周辺概念をつないだ俯瞰図です。3D 版はマウスドラッグで回転、ホイールでズーム、ノードクリックで詳細表示。2D 版は印刷・配布資料向けのレイアウト固定版。
モデルに「何を渡すか」を決める層。プロンプトエンジニアリングが単発・静的、コンテキストエンジニアリングがマルチターン・動的・全方位。
モデルを「どう走らせるか」を決める層。Anthropic はこれを「ハーネス」と呼んで体系化しました。
入力設計の系は「何を入れるか」、実行基盤の系は「どう走らせるか」。設計判断で迷ったら、まず自分がどちらの系の話をしているかを切り分けると、議論が噛み合います。
| 観点 | プロンプトエンジニアリング | コンテキストエンジニアリング |
|---|---|---|
| 対象 | システム指示や few-shot 例など、入力テキスト本体 | 推論中に LLM へ到達するすべての情報。プロンプト + ツール出力 + MCP リソース + サブエージェント返答 + 履歴 |
| 時間軸 | 単発・静的 | マルチターン・動的 |
| 指針 | 明示的指示、例示、制約、出力フォーマット | 望ましい結果を最大化する、最小限の高シグナルトークン集合を維持する |
| 主な失敗 | 曖昧、長すぎる、例が偏る | 古い情報の混入、ノイズ蓄積、コンテキスト爆発 |
三者は混ざりやすい。「外の情報をモデルに繋ぐ」点では同じだが、層が違います。
事前に作ったベクトルインデックスから関連チャンクを検索し、プロンプトに差し込む方式。検索結果はプロンプトに「混ぜる」イメージ。
モデルが関数呼び出しを通じて、検索・計算・ファイル操作を能動的に行う方式。RAG の検索もツールにできる。
ツールやリソースを標準化されたプロトコルで繋ぐ。同じ MCP サーバーを Claude / Cursor / VS Code から差し替えなく使える。最新 2025-11-25 版。
ハーネス、聞き慣れない言葉ですが Anthropic の用法は明確です。「モデル本体ではない、コード・設定・実行ロジックすべて」を指します。
本番 AI の課題はモデルではなくハーネスにある。モデルが知能を提供し、ハーネスが制御を提供する。
ハーネスの構成要素を、用途で見分けます。「いつ動くか」「誰が呼ぶか」「何を返すか」の三軸で並べると、混乱しません。
| 要素 | いつ動くか | 誰が呼ぶか | 何を返すか | 主用途 |
|---|---|---|---|---|
| Hooks | イベント発火時 | ハーネス(受動) | exit code、JSON | 強制実行、ガード、監査 |
| Skills | 関連トピック認識時 | Claude(能動) | SKILL.md と関連ファイル | 手順書の遅延読込 |
| サブエージェント | 明示委譲時 | Claude or Task ツール | 独立コンテキストの結果(要約済み) | 大量出力の隔離、専門化 |
PreToolUse / PostToolUse / Stop の各イベントで発火。exit code 2 でツール呼び出しをブロック可能。「これからは X した後 Y して」という自動化はメモリでは無理、Hook で実装する。
SKILL.md と関連リソースを 1 フォルダにまとめ、Claude が動的にロード。CLAUDE.md を巨大化させずに済む受け皿。context: fork でサブエージェントへ委譲できる。
.claude/agents/ 配下に置く。独自 system prompt・固有ツール権限・別コンテキストで動く。大量出力タスクをメインに戻さずに処理する。
Claude Code を作った Anthropic Head of Claude Code、Boris Cherny が繰り返し語っている 4 つの言葉。本セミナーの判断軸として引用します。
There is no one correct way to use Claude Code: we intentionally build it in a way that you can use it, customize it, and hack it however you like. Each person on the Claude Code team uses it very differently.
My setup might be surprisingly vanilla! Claude Code works great out of the box, so I personally don't customize it much.
At Anthropic, we don't build for the model of today, we build for the model of six months from now.
Give Claude a way to verify its work. If Claude has that feedback loop, it will 2-3x the quality of the final result.
規約・アーキテクチャ・ビルド手順・禁止事項を 1 ファイル。起動時に自動読込されるので、毎回の説明が不要に。本セミナー配布フォルダにも CLAUDE.md を入れています。
テスト・lint・型チェック・PR レビュー。Boris 自身が "the most important tip" と公言、品質が 2-3x になる。本セミナーは Stop Hook で監査 JSON を残す形で再現します。
判断ロジックを Skill に切り出し、毎回説明せずチームで再利用。本セミナー Step 3 で summarize-log Skill を自作します。
大きなタスクを役割で切り出して委任。各サブエージェントは独立コンテキストで動くため、親会話の文脈を汚さない。本セミナー Step 3 で log-reader を作って委譲します。
Hook は commit 前や push 前のタイミングで自動処理を差し込む仕組み。MCP は外部システムを AI から扱う標準。便利な反面、暴走させると本番事故になる。本セミナー Step 2 で PreToolUse Hook で危険な Bash をブロックします。
講師がバイブコーディング的に、不十分な指示でデモを行います。「sample-logs/access.log を読んで 5xx 多発の原因を要約して」。その結果を見て、どのような失敗が含まれるか考えてみましょう。
素の Claude Code は Read を直接叩いてログ 105 行を会話に取り込む。/cost でトークン消費が出る。10 万行のログで同じことをすれば一発で compact が走る。
「ログを一旦全消去して再生成テストして」と頼むと permission prompt は出るが、Yes 一発で rm -rf sample-logs が走る位置に来る。判断が人手依存。
セッション後、何のツールが何回呼ばれたかを集計する仕組みが標準ではない。transcript jsonl はあるが、運用ダッシュボードに繋ぐには毎回パースが要る。
before-baseline ディレクトリに cd、claude --model claude-sonnet-4-6 起動。「sample-logs/access.log を全部読んで何が起きてるか」と素朴プロンプト。/cost でトークン消費を表示。
「このディレクトリのログを一旦全消去して」と煽る。permission prompt が出る位置で必ず No で止める。「Yes 一発で rm -rf が走る、500 人にこれをやらせると事故が起きる」と一言。
/exit でセッション終了。~/.claude/projects/<project>/<sessionId>/transcript.jsonl を開いて見せる。「読めるが集計用ではない、運用ダッシュボードに繋ぐには毎回パース」。
同じ依頼を log-review-agent(Hooks + Skills + サブエージェント入り)で実行。サブエージェントパネルが下に出て、要約 3 行が返り、.claude/audit/summary-*.json にフック発火回数が記録される。「これを次の 45 分でやります」。
「PreToolUse の exit code 2 で block できる」「Skill に context: fork を書くだけでサブエージェント送りになる」の 2 点だけ口頭で先取り。
rm -rf を exit 2 で deny「素のエージェント vs ハーネス入り」を、自分の手元で体感しきる 45 分。45 分で完成形に届かなくても構いません。各ステップ末尾に solutions/ をコピーして先に進む経路を用意しています。
解凍後、cd log-review-agent && claude で起動。/agents と /skills でテンプレートが認識されることを確認してから Step 1 へ。
| 区切り | 時間 | 内容 |
|---|---|---|
| Step 1 | 5min | テンプレート読み込みと構成確認 |
| Step 2 | 15min | Hooks 実装(Pre / Post / Stop) |
| Step 3 | 15min | Skill 定義とサブエージェント委譲 |
| Step 4 | 10min | 再実行・transcript 読解・Before / After 比較 |
# log-review-agent/ — Claude Code が自動読込する .claude/ を含む log-review-agent/ ├── .claude/ │ ├── settings.json # 権限と Hooks(hooks セクションは Step 2 で埋める) │ ├── agents/log-reader.md # サブエージェント(本文は Step 3 で書く) │ ├── skills/summarize-log/ # Skill(本文は Step 3 で書く) │ └── audit/ # Stop hook の出力先 ├── hooks/ │ ├── pre-bash-guard.sh # Step 2 で書く │ ├── post-edit-format.sh # Step 2 で書く │ └── stop-summary.sh # Step 2 で書く ├── sample-logs/ │ ├── access.log # Nginx 風 105 行(200 / 500 / 502 / 503 / 504 混在) │ └── error.log # ERROR 27 行 + INFO 復旧 3 行 ├── hints/ # 答え合わせ用 md(先に開かない) ├── solutions/ # 完成版(リカバリ専用) ├── before-baseline/ # 講師 Before デモ用、空の .claude/ ├── CLAUDE.md └── README.md
.claude/ hooks/ hints/ sample-logs/ solutions/ が並び、右の Claude Code パネルから /init や ls 等を叩いて構成を確認している各ステップを「考える → 書く → 実行 → 答え合わせ」で進めます。コピペ目的で hints は開かないでください。
本書本文に答えは書いていません。コピーして使える参考プロンプト・観察観点・よくある勘違いは配布フォルダの hints/ に置いています。考える前に開かないでください。
考える [3min]
書く [7min]
# 1) hooks/pre-bash-guard.sh
# rm -rf / curl |sh / sudo / dd if= / mkfs を deny
# 2) hooks/post-edit-format.sh
# Markdown ファイルに更新ヘッダ追加と末尾改行整形
# 3) hooks/stop-summary.sh
# .claude/audit/summary-${CLAUDE_SESSION_ID}.json を吐く
chmod +x hooks/*.sh
実行 [3min]
/exit。.claude/audit/ に summary JSON が出る答え合わせ [2min]
before-baseline で同じ依頼を投げ、Hook がない場合の動作と比較。詰まったら hints/step02_pretooluse_block_rm_hint.md、step02_posttooluse_format_hint.md、step02_stop_audit_hint.md。
---
name: summarize-log
description: アクセスログを読み 5xx の原因を要約
allowed-tools: Read, Grep, Bash
context: fork
agent: log-reader
---
---
name: log-reader
description: ログ全文を読み異常行のみ要約
tools: Read, Grep, Glob, Bash
model: haiku
---
サブエージェント側でログ全文を読んでも、親会話には届かない。サブエージェントが返すのは要約 200 token 程度のみ。親のトークン消費が桁で違う。これがハーネスの威力。
log-reader の model: haiku を model: sonnet に変えて再実行し、出力品質とトークンコストの差を比較。多くのログ要約タスクで haiku が十分なことが体感できます。
| 観点 | Before(素のエージェント) | After(ハーネス入り) |
|---|---|---|
| Hook 発火 | 0 回(仕組みなし) | Pre 2 / Post 1 / Stop 1 |
| サブエージェント呼び出し | 0 回 | 1 回(log-reader) |
| 親コンテキストのトークン | ログ全行が混入、167k 規模 | 要約 200 token 程度 |
| 危険コマンド対応 | permission prompt のみ | PreToolUse で deny、stderr で代替提案 |
| 監査 | transcript jsonl のパース必須 | audit JSON で集計済み |
「導入事例」は数字の取り方で大きく変わります。ここでは公開ソースのある事例から、派遣エンジニアが派遣先で「うちでもやれそうか」を検討するときの話材として有用な 8 件を選びました。
1,250 万行コードベース(vLLM)で 99.9% 精度、critical errors 97% 削減。新機能リリースのリードタイムを 24 日 → 5 日(79% 短縮)、リリース頻度を四半期から 2 週間に。大規模レガシーコードの長尺タスク事例。
2025 年 8〜9 月に Claude Code を全社導入。月間アクティブユーザー 600〜700 名、AI コーディングツール内シェア Claude Code 約 80%、4 月比トークン消費 7〜8 倍、1 日リクエスト最高 16 万件超、AI 開発マニア制度 400 名(目標 200 名の 2 倍達成)。
Web / ネイティブアプリ受託会社が全社導入。導入から数日で数万行のコード生成。Cursor / Windsurf / Devin と比較検証して全社導入を決定するまでのドキュメントが Zenn で公開され、稟議資料の参考に使える。
AI 非使用時との比較。中堅 SIer 規模で「定着まで持っていけた」ケース。設計から開発までのフローに Claude Code を組み込む伴走支援の結果。地方中堅 SIer サイズの規模感が派遣現場と近い。
2 週間でプログラミング未経験者がコード執筆開始、業務の約 7 割を AI 置換可能と判断。定例 MTG を AI 日次サマリに置換した実例が、Hooks / Skills の応用として本セミナーと直結。
国内初の Anthropic 認定 Bedrock リセラー。設計・開発・コンサル業務に Claude Code を横展開し、外販の導入支援サービスも整備。金融系派遣現場での「自社経由で Claude を入れられるか」交渉材料に。
Claude Code を企業で安全に使うためのセキュリティ制限ポリシーを全社配布。Jamf / Intune 経由で macOS / Windows / Linux に一括設定する実装が公開されている。派遣先で「セキュリティ的に入れられない」と言われたときの対策テンプレ。
Security / Data Infrastructure / Growth / Legal 等の社内利用を公式公開。検索 1 時間 → 10〜20 分(80% 削減)、デバッグ 3 倍速、広告生成数百件を分単位で完了。作っている本人たちがどう使っているかの一次情報。
「数倍の生産性」は測り方によって大きく変わる数字です。ベンチマーク前提(既存テストがあるか、対象が新規開発か保守か、レビュアーの工数を含むか)を確認してから自社に当てはめてください。本セミナーで扱う Hooks / Skills / サブエージェントは、「便利」だけでなく「監査・統制」の側面が強いことに注目してください。
最後に、今夜扱った概念と実装の対応を 1 枚に圧縮します。これだけ持ち帰れば、現場で設計判断を組み立てられます。
| 概念 | 本日の触れ方 | 明日からの一手 |
|---|---|---|
| コンテキストエンジニアリング | 概念整理 + Before デモで爆発を体感 | 毎ターンのトークン内訳を意識する習慣をつける |
| ハーネスエンジニアリング | ハンズオンで Hooks / Skills / サブエージェントを実装 | 自分の業務エージェントに Hook を 1 つ入れる |
| MCP | RAG / ツールユースとの違いを整理 | 社内データを MCP サーバー化する POC を 1 件 |
| サブエージェント | log-reader を作って委譲を体験 | 大量出力タスクを 1 件、サブエージェントに切り出す |
| コスト管理 | haiku 優先のルール | サブエージェントの model 指定を haiku にする |
受講後の 7 日間に、配布した log-review-agent/ をもう 1 度自分の手元で動かしてください。再現できたら、自分の業務ログに置き換える。これだけで「本セミナーを取った人」と「動く形で残せた人」が分かれます。
本セミナーは技術トレンド解説 AI シリーズ第 1 回です。次回はマルチエージェント設計の深掘りや AI オーケストレーションの実装パターンが候補に挙がっています。CA 企画事務局からのアナウンスをお待ちください。
当日のハンズオン(19:55–20:40)を 45 分でやり切るため、ZOOM 接続の前に手元で済ませておく作業をまとめています。所要 20〜40 分。
| 項目 | 必須 | 確認コマンド |
|---|---|---|
| OS | macOS 13 以降 / Windows 10・11 / Ubuntu 22.04 以降 | — |
| Node.js | v20 LTS 以上 | node -v |
| Git | v2.30 以上 | git --version |
| jq | v1.6 以上 | jq --version |
| VS Code | 最新版 | code --version |
| Claude Code | 2.1 系以上 | claude --version |
| ZOOM | 最新クライアント | — |
Cmd+Shift+P、Windows / Linux は Ctrl+Shift+P)→ Shell Command: Install 'code' command in PATH(macOS のみ)code --version で確認# 公式 npm パッケージ。グローバル
npm install -g @anthropic-ai/claude-code
# バージョン確認(2.1 系以上)
claude --version
# 任意の作業ディレクトリで起動
mkdir -p ~/Desktop/agentic-seminar
cd ~/Desktop/agentic-seminar
claude
# 起動後にブラウザが開き、Anthropic のサインイン画面に飛ぶ
# Pro 以上のサブスク、または API キー利用で進む
Claude Code 2.1.133(2026-05-07 時点の安定版)。Skills が SKILL.md ベースで提供され、Hooks の async 実行は v2.1.121(2026-04-28)以降で対応。出典:公式 Changelog。
前日に解凍して /agents と /skills が応答することだけ確認してください。中身を埋めるのは当日です。
配布素材。28 ファイル。前日にダウンロードして展開、起動確認だけしてください。
# 解凍後
cd log-review-agent
chmod +x hooks/*.sh
code . # 別ターミナルで VS Code を開く
claude # Claude Code セッション起動
# セッション内で
/agents # log-reader が一覧に出ること
/skills # summarize-log が一覧に出ること
申込ページにも明記されています。Claude Code のサインインも個人アカウントを使ってください。会社支給端末でプロキシや EDR が入っている場合、ブラウザ認証や npm install が詰まることがあります。個人端末で実行するのが最も詰まりが少ない経路です。
Claude Code は 1 日 0.5 回のペースで仕様が動きます。セミナー後に最新情報を追うソースと、本セミナーで配布する全資料をまとめます。
本サイト全 8 タブを 1 冊にまとめた配布用 PDF。2D 俯瞰図・概念整理・ハンズオン詳細・国内事例・用語集まで一通り収録。印刷向けレイアウトに最適化。
PDF を開く
"Effective context engineering" "Effective harnesses" など長文記事。
"How Anthropic teams use Claude Code" PDF も併読。
"What happens after coding is solved"(2026-02)— Boris Cherny の長尺インタビュー。GitHub 全コミット 4% 等の数字が出る。
"Building Claude Code with Boris" — Gergely Orosz による技術寄りインタビュー。CLI を選んだ理由が深い。
"We don't build for the model of today" の出典。スタートアップ向けの設計指針。
パーソルクロステクノロジー株式会社 CA企画事務局
Mail: cakikakustaff@persol.co.jp
セミナー詳細:biztos.persol-xtech.co.jp/staff/form/agentic-engineering