Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Deployment の 先にある AI Agent 基盤 - kagent vNext、Ag...
Search
Masaya Aoyama (@amsy810)
September 16, 2026
Technology
180
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Deployment の 先にある AI Agent 基盤 - kagent vNext、Agent Substrate、Hermes から読み解く Agent Runtime の現在地 / k8s-matsuri-2-ai-agent-platform-amsy810
Masaya Aoyama (@amsy810)
September 16, 2026
More Decks by Masaya Aoyama (@amsy810)
See All by Masaya Aoyama (@amsy810)
Keynote: Cloud Native Darwinism: Continuous Evolution of Platforms for Competitive Edge - KubeCon + CloudNativeCon Japan 2025 / kubecon-japan-2025-amsy810-keynote
masayaaoyama
0
110
KubeCon + CloudNativeCon EU 2025 Overview / k8sjp-70-kubecon-cncon-eu-2025-overview
masayaaoyama
0
210
KubeCon + CloudNativeCon NA 2024 Overviewat Kubernetes Meetup Tokyo #68 / amsy810_k8sjp68
masayaaoyama
0
560
Cloud Nativeを支える要素技術・プロダクト・プラクティスの歩み / infrastudy-returns-01-amsy810
masayaaoyama
4
900
KubeCon + CloudNativeCon EU 2024 Overview / k8sjp64-kubecon-overview
masayaaoyama
0
440
KubeCon + CloudNativeCon NA 2023 Sessions for Site Reliability Engineers / amsy810-srett08
masayaaoyama
2
950
KubeCon + CloudNativeCon NA 2023 Overview+Recap for Gateway API Cloud Native Community Japan Kickoff meetup / amsy810_cncj1
masayaaoyama
0
2.2k
Kubernetes as a Service の利用者を支える機能 - Platform Engineering Meetup #1 / pfem01-amsy810-k8s
masayaaoyama
1
3k
Kubernetes基盤を自律的に支えるController化の実装Tips / forkwell-202303-amsy810-k8s
masayaaoyama
7
4k
Other Decks in Technology
See All in Technology
アプリをもっと"iOSアプリっぽく"する小さな工夫 / Small Touches That Make Your App Feel More Like an iOS App
matsuji
1
750
2026-09-10 【Snowflake World Tour Tokyo 2026】dbt Core と Snowflake で実現する多層的なデータガバナンス / Multi-Layered Data Governance Powered by dbt Core and Snowflake
civitaspo
0
360
Screen Lens - 今見てる画面を翻訳する
komagata
0
260
アプリログインとWeb認証基盤をつなぐ ASWebAuthenticationSession 作法
shimastripe
1
270
Claude in Chrome 入門 / Introduction to Claude in Chrome
cielo1985
0
650
AIエージェントの自己改善をどう設計するか / How to Design Self-Improvement for AI Agents
22mi
20
10k
事業課題から技術的負債に向き合う
sansantech
PRO
1
500
TinyGo 開発サイクルを高速化する:Go で作るエミュレータ入門
zozotech
PRO
1
660
コーディングエージェントでM5Stack系の開発を少し試した時の話 / M5 Japan Tour 2026 Autumn 東京
you
PRO
0
180
AI時代だからこそ、スケールしないことをやろう
yutashigemura
1
160
「図書館」という名前のままでいいのか -Code4Lib JAPANカンファレンス2026 アンカンファレンス報告- / Code4Lib JAPAN Conference 2026: Unconference Report
ykiyota
0
170
GoにおけるFFIのこれまでとこれから
goccy
5
2.5k
Featured
See All Featured
Designing Powerful Visuals for Engaging Learning
tmiket
1
540
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
700
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.1k
The Cost Of JavaScript in 2023
addyosmani
55
10k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
240
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
230
Music & Morning Musume
bryan
47
7.4k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
270
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
480
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
500
Transcript
Deployment の 先にある AI Agent 基盤 kagent vNext、Agent Substrate、Hermes から読み解く
Agent Runtime の現在地 Kubernetes 祭 #2 2026/9/16 Masaya Aoyama(@amsy810) CyberAgent
青山真也 X: @amsy810 + 3-shake 技術顧問 + SAKURA Internet Research
Center – 客員研究員 + PLAID + CREATIONLINE - 技術アドバイザ TechLead & Product Owner Co-Chair Organizer CNCF Ambassador Publications
今回話す内容は、現在開発中の内容を含みます。 1 できるだけ最新のコードベースを元に紹介していますが、 情報の齟齬があった場合はご了承ください。 1 p.5
本日の資料は初の試みで、 最初に Claude Code に生成させた上で、 1手作業で修正して作成しました AIっぽさがあるとか、いつもより分かりづらいとか コメントがあれば DM か懇親会で教えてください!
1 p.5
1 kagent の概要(おさらい) kagent の概要と現行リリースの各種リソースの紹介 2 Agent を取り巻くサンドボックス技術 Agent Substrate
/ SIG Agent Sandbox 3 kagent の今後の API v2 kagent vNext:Harness と AgentTemplate 1 p.5
1 kagent の概要(おさらい) kagent の概要と現行リリースの各種リソースの紹介 1 p.5
kagentとは? • kagent は Kubernetes 向けの「AI Agent」を構築/実行するためのフレームワーク • MCP を基盤としたアーキテクチャを通じて、他のクラウドネイティブツールと統合
• 作成された AI Agent は A2A Protocol に対応し、相互連携可能 1 p.6
release版のCRD関係図 Agent は ModelConfig・MCPServer/RemoteMCPServer リソースを利用して Agent を起動 Agent .spec.modelConfig Deployment
+ Service で動く ModelConfig provider / model / APIキーSecret .spec.tools[].mcpServer MCPServer toolの供給元(MCP) RemoteMCPServer .spec.tools[].agent toolの供給元(MCP) Agent agent-as-tool(A2Aで呼び出し) kagentのCRD(Agent 関連) kagentのCRD(その他) SubstrateのCRD 参照なし・残骸 1 p.6
release版のCRD関係図 Agent は ModelConfig・MCPServer/RemoteMCPServer リソースを利用して Agent を起動 Agent .spec.modelConfig Deployment
+ Service で動く ModelConfig provider / model / APIキーSecret .spec.tools[].mcpServer MCPServer toolの供給元(MCP) kind: ModelConfig metadata: .spec.tools[].agent name: openai-gpt-5 spec: provider: OpenAI openAI: {} model: gpt-5 apiKeySecret: openai-gpt-5 apiKeySecretKey: OPENAI_API_KEY kagentのCRD(Agent 関連) kagentのCRD(その他) SubstrateのCRD 参照なし・残骸 kind: MCPServer RemoteMCPServer metadata: toolの供給元(MCP) name: mcp-website-fetcher spec: deployment: Agent cmd: uvx agent-as-tool(A2Aで呼び出し) args: - mcp-server-fetch port: 3000 image: node:24 stdioTransport: {} transportType: stdio 1 p.6
release版のCRD関係図 Agent は ModelConfig・MCPServer/RemoteMCPServer リソースを利用して Agent を起動 Agent .spec.modelConfig Deployment
+ Service で動く ModelConfig provider / model / APIキーSecret .spec.tools[].mcpServer kind: Agent metadata: name: k8s-agent spec: declarative: modelConfig: openai-gpt-5 systemMessage: | You're a helpful agent for k8s tools: {...} a2aConfig: {...} MCPServer toolの供給元(MCP) RemoteMCPServer .spec.tools[].agent toolの供給元(MCP) Agent agent-as-tool(A2Aで呼び出し) kagentのCRD(Agent 関連) kagentのCRD(その他) SubstrateのCRD 参照なし・残骸 1 p.6
2 Agent を取り巻くサンドボックス技術 Agent Substrate / SIG Agent Sandbox 1
p.5
Agent を取り巻くサンドボックス技術の概要 AI Agent が Deployment でただ実行されている状態 ランタイムが安全ではない・ワークロードのユニーク性がない・起動し続けると集約率が悪い・etc サンドボックス:Agent を安全な環境で高効率で実行するための技術
観点 Agent Substrate(agent-substrate/substrate) Agent Sandbox(kubernetes-sigs/agent-sandbox) 一言で Actor(sandbox 内の1プロセスとその状態)を snapshot で止めて起 こす専用 runtime。1会話 = 1 Actor Sandbox CRD = Pod 1つ Kubernetes 標準の道具だけで組む sandbox orchestrator 開発元・貢献者 Google(GKE チーム発) Google、Solo.io、NVIDIA、Microsoft などが貢献 Google 主導の Kubernetes SIG Apps subproject 初公開 2026-05-13 初 commit(v0.0.0) → 2026-05-20 Google Cloud ブログで発表(Google I/O 週) 2025-08-12 repo 作成 → 2025-11-11 KubeCon NA(Atlanta)で v0.1.0 で発表 最新版・成熟度 v0.1.0(2026-09-10) v1.0.2(2026-09-10) suspend / resume は beta。GKE 版は GA(2026-05-20) 財団・ライセンス CNCF Sandbox 申請中 AAIF 外。Apache-2.0、Google CLA Kubernetes(CNCF Graduated)の SIG Apps subproject。 AAIF 外。Apache-2.0、Kubernetes CLA 採用例 kagent(CNCF Sandbox) Google の Agent Executor(ax) OpenHands / NVIDIA NeMo Gym / LangChain DeepAgents の integration。LangChain・Lovable が利用と報道 AAIF = Agentic AI Foundation(Linux Foundation 傘下、2025-12-09 設立) p.4
Agent Substrate の全体像 Kubernetesの上に、Actorのための小さなcontrol planeとdata planeを展開する control plane(ate-system ns) atenet-router
client(kagent) Envoy + ext_proc。ate-target-acto rを読む ResumeActo r ate-api-server PostgreSQL gRP C API・scheduler Acto r等の状態 atecontroller Wo rkerPo ol → Deployment、Wo rker PodをAPIに登録 転送 data plane(各 Node) Worker Pod(1 Podに1 Actor) atunnel :443 mTLS ingress / :15001 egress Actor gVisor(runsc) or microVM ateom sandboxを起動・ checkpoint Run / Restore atelet(DaemonSet) image取得・snapshot送受信 uplo ad / do wnloa d snapshot storage(GCS / S3) 休眠中のActo rのmemory / DurableDir 3 p.19
Actorのライフサイクル — 「止める」に2種類ある Pause は node に snapshot を残して速く戻る。Suspend は
object storage へ上げて Worker を完全に返す RESUMING 空きWorkerへrestore ResumeActor 同じnodeへ速く復帰 起動完了 SUSPENDED RUNNING Workerなし。snapshotは storage Workerを1つ占有 upload完了 SUSPENDING checkpoint → upload Pause PAUSED PauseActor Workerは返す。snapshotはnodeに残 る SuspendActor uploadして本当に休眠 Suspend • node-local の FULL snapshot(memory込み) • object storage へ upload(FULL か DATA) • 同じnodeで最速で復帰。HITL待ちで使う • どのWorkerでも復帰可能 • Worker自体は占有を解除する • Workerを完全に返す 3 p.20
多数のActorを少数のWorkerで回す — 時間多重化 同時に動くのは replicas 個だけ。残りは休眠し、必要なときに空きWorkerへ復帰する A1 A2 A3 A4
A5 A6 RUNNING SUSPENDED SUSPENDED RUNNING SUSPENDED SUSPENDED 新しいmessage atenet-router → ate-api-server(scheduler) 「空いているWorkerはどれか」を決めて割り当てる Worker 1 Worker 2 Worker 3 A1 が占有 空き → A3 を restore A4 が占有 空きWorkerが無いとき ate-api は ResourceExhausted を返し、router が request を「park」して再試行する(既定 budget 5秒、最大1024件)。超えると 503。同 じActorへの複数requestは1つの復帰を待つ 4 p.27
Agent Sandbox の全体像 — Sandbox は Pod と 1:1 Kubernetes標準の道具だけで組む。全部がCRDで、kubectlで見える
SandboxTemplate client / SDK po dTemplate + policy Go / Python / MCP server • 隔離はRuntimeClass (gVisor / Kata)に委譲 • controllerはPodを作るだけ Replicas分を事前に起動 SandboxWarmPool 起動済みSandboxのプール adopt X-Sandbox-ID SandboxClaim 利用者はこれを作る → poolからadopt (所有権移転) • v1.0.2 / API v1beta1 sandbox-router he aderでPo dへ転送 Sandbox operatingMode: Running|Suspended 1:1 Pod + PVC + headless Service Pod の中身: app :8888 / sandboxd :8080 REST(files)・:9090 gRPC(process) suspend = Pod を削除して PVC / Service を保持。resume = podTemplate から Pod を再作成。プロセスのメモリは残らない。 3 p.21
2つのサンドボックス環境を比べる Agent Substrate:多機能なサンドボックス環境(完全なsuspend、時間方向にWorker上に詰め込む) Agent Sandbox:Kubernetes-native に作られているサンドボックス環境 観点 Agent Substrate SIG
Agent Sandbox 実行単位 Actor(ate-api の資源)を Worker Pod 内で実行 Sandbox CR = Pod 1つ Podあたり 同時に1 Actor。時間をずらして多重化 1 Sandbox : 1 Pod(複数化は計画中) suspendで残るもの memory + rootfs差分 + DurableDir(FULL) PVC と Service のみ。memory は消える resume元 自分の snapshot / Pause から復帰 podTemplate から Pod を再作成 warm capacity WorkerPool(起動済み Worker Pod) SandboxWarmPool(起動済み Sandbox) control plane 3 CRD + 専用 gRPC API + PostgreSQL 全て CRD(etcd)+ controller 到達方法 atenet-router のみ。exec / SSH なし sandbox-router / DNS / kubectl exec 隔離 gVisor / microVM 内蔵(Templateで選択) RuntimeClass に委譲(gVisor / Kata) 3 p.22
どちらを選ぶか — 優先するものが違う 「待っている間の状態を残したい」か「Kubernetesの道具だけで済ませたい」か Agent Substrate 向き Agent Sandbox 向き
会話の途中状態を安く長く保ちたい Kubernetes標準の運用に乗せたい • idle中のAgentが多く、memoryごと休眠してコスト減 • 承認待ち(HITL)でプロセスを凍結、 承認後に同じ状態から続行可能 • 普通のPodSpec・RuntimeClass・GPU・sidecarを そのまま利用可能 • 1 Workerを多数のActorで時間多重化したい (1 Actor = 1 会話) • warm poolから即座にsandboxを取り、 ファイルだけPVCに残せばよい • 代償: 第2のcontrol plane(ate-api + PostgreSQL)と snapshot bucke が必要 • 代償: suspendでprocess memoryは消える (resumeは新しいPodの起動) • 代償: exec不可 • 代償: 1 Pod = 1 Sandbox • kubectl / RBAC / GitOps / HPA(KEDA) で運用したい • 代償: authz未実装・snapshot GC未実装 kagentはSubstrateをベースに利用 「Pause / Suspend」と「Worker 上で複数Actor(会話)集約」がしたかったため 3 p.23
kagentのCRD SubstrateのCRD Agent Substrate によるサンドボックス環境での起動 Agent はサンドボックス環境で起動することが可能 kind: SandboxAgent metadata:
name: k8s-agent spec: substrate: workerPoolRef: name: my-worker-pool declarative: {} Agent Deployment + Service で動く 同じspec SandboxAgent 1 session = 1 Actor workerPoolRef WorkerPool ate.dev/v1alpha1(Substrate側のCRD) workerPoolRef AgentHarness OpenClaw / Hermes をACPで動かす kind: WorkerPool metadata: name: default-worker-pool spec: ateomImage: ateom-gvisor:v0.0.9 replicas: 3 sandboxClass: gvisor kind: AgentHarness metadata: name: openclaw-agent spec: substrate: workerPoolRef: name: my-worker-pool backend: hermes modelConfigRef: openai-gpt-5 1 p.6
3 kagent の今後の API v2 kagent vNext:Harness と AgentTemplate 1
p.5
前提: 「release版」と「main」はAPIが別物 kagent は現在 API v2 プロジェクトとして大規模な刷新中 release版 v0.10.1(2026-09-08) API
v2 - main(未release) API version kagent.dev/v1alpha2 (+v1alpha1) kagent.dev/v1alpha3 Agentを定義するCRD Agent / SandboxAgent / AgentHarness AgentTemplate + Harness 会話1つの実体 Deployment、またはsession単位のActor AgentInstance (CRDではなくDB上のgRPCリソース) Substrate 任意、fork v0.0.9 必須、fork v0.0.29 release/v0.10.x ブランチは2026-08-11に分岐。それ以降にmainへ入った新API群はv0.10.xには含まれない p.4
API v2 の CRD 関係図 — 設定の層 Agentの定義が Harness(どう走らせるか)と AgentTemplate(何をするか)の2つに分かれた
Harness(HOW) AgentTemplate(WHAT) adapter / image / env / substrate model / prompt / tools / skills ModelConfig spec.modelConfig.name RemoteMCPServer tools[].mcp.server WorkerPool Secret skills / plugins の source Substrate CRD credentialRef OCI image / Git com mit / S3 o bje ct Harness が持つもの(走らせ方) AgentTemplate が持つもの(振る舞い) kagent | codex | claude | byo のどれか1つ(CEL排他) AgentHarness で実装されていた hermes/openclaw は将来実装 modelConfig / systemPrompt / promptTemplate workload.image は digest(@sha256:)固定が必須 tools[]: MCP tool(requireApproval可)/ 他template substrate.workerPoolRef + snapshotPolicy.location skills / plugins(不変なsourceを指定) 1 p.8
Thank you for your attention. X: @amsy810