Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AIのメモリー
Search
watany
July 23, 2025
Programming
13
1.7k
AIのメモリー
社内勉強会向け
watany
July 23, 2025
Tweet
Share
More Decks by watany
See All by watany
たかが特別な時間の終わり / It's Only the End of Special Time
watany
36
9.7k
まだ間に合う! 2025年のhono/ssg事情
watany
3
900
AIエージェントが書くのなら直接CloudFormationを書かせればいいじゃないですか何故AWS CDKを使う必要があるのさ
watany
21
9.3k
Coding Agentに値札を付けろ
watany
3
1k
Vibe Codingをせずに Clineを使っている
watany
19
7.9k
ミリしらMCP勉強会
watany
4
1.1k
RemovalPoliciesのことを知ろう!
watany
2
290
エンジニアに許された特別な時間の終わり
watany
106
220k
AI Agent時代なのでAWSのLLMs.txtが欲しい!
watany
4
1.4k
Other Decks in Programming
See All in Programming
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
690
Go コードベースの構成と AI コンテキスト定義
andpad
0
160
dchart: charts from deck markup
ajstarks
3
960
実はマルチモーダルだった。ブラウザの組み込みAI🧠でWebの未来を感じてみよう #jsfes #gemini
n0bisuke2
3
1.4k
20251212 AI 時代的 Legacy Code 營救術 2025 WebConf
mouson
0
240
AI 駆動開発ライフサイクル(AI-DLC):ソフトウェアエンジニアリングの再構築 / AI-DLC Introduction
kanamasa
11
5.2k
AI Agent Tool のためのバックエンドアーキテクチャを考える #encraft
izumin5210
6
1.6k
疑似コードによるプロンプト記述、どのくらい正確に実行される?
kokuyouwind
0
160
[AtCoder Conference 2025] LLMを使った業務AHCの上⼿な解き⽅
terryu16
6
1k
これならできる!個人開発のすゝめ
tinykitten
PRO
0
150
AIエージェント、”どう作るか”で差は出るか? / AI Agents: Does the "How" Make a Difference?
rkaga
2
780
.NET Conf 2025 の興味のあるセッ ションを復習した / dotnet conf 2025 quick recap for backend engineer
tomohisa
0
110
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Context Engineering - Making Every Token Count
addyosmani
9
590
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
120
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
39
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
180
Amusing Abliteration
ianozsvald
0
86
A designer walks into a library…
pauljervisheath
210
24k
Rails Girls Zürich Keynote
gr2m
95
14k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.3k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
What's in a price? How to price your products and services
michaelherold
246
13k
Transcript
AI の メ モ リ ー
美しい人生よ
Coding Agent
Coding Agent コード補完やチャット応対を越えて、 自立したSoftware Engineerとして振舞う AI Agent ≒ SWE Agent
Coding Agent Cline Claude Code Windsurf Cursor kiro(New!)
疑問 Cline Claude Code Windsurf Cursor Q.この線は何? kiro(New!)
正解 Cline Claude Code Windsurf Cursor A.メモリの持ち⽅ kiro(New!)
AI の メ モ リ ー
Prompt Engineering LLMへのお願いの作法 Prompt 明瞭/明確/過不足のない/LLMを 最大限活躍させるプロンプト • System Prompt: モデルの
動作定義 • User Prompt: ユーザーか らのタスク、質問
Context Engineering LLMを関数とみなした時の入出力管理 RAG 外部データ/ドキュメント Memory 長期記憶 State/History 状態・会話履歴(短期記憶) Structured
Outputs 応答のフォーマット (JSON/Table…) Prompt 明瞭/明確/過不足のない/LLMを 最大限活躍させるプロンプト • System Prompt: モデルの 動作定義 • User Prompt: ユーザーか らのタスク、質問
Context Engineering 真面目な図 from 12-Factor Agents • Factor 3: Own
your context window Memory: • 長期記憶:セッション外の保管 ◦ 今日話すメモリはこちら
メモリがない時 Agent Human 機能①作って ええで。できましたわ Agent Human 機能②作って。 ①の高速版 ①ってなんスカ?
メモリがある時 Agent Human 機能①作って ええで。できましたわ Agent Human 機能②作って。 ①の高速版 ①ってなんだ?
(メモリを検 索して) ほえ~ できましたわ
LLMは忘れる • Context Window ◦ モデルが一度に処理できる入出力トークンの総量 ◦ チャットでは会話履歴をすべて送信する ◦ 溢れれば忘れる=短期記憶
• Coding Agentで何が困るか ◦ 「前回どこまでやった?」「方針は?」のインプットが都度必要になる ◦ 参照できるログ/メモリ/テキストが見つからないと一からやり直し • 何が必要か ◦ 短期記憶を補う長期記憶(Long-Term Memory=LTM) ◦ 別セッションになっても記憶を引き継げる「ふっかつのじゅもん」
Coding Agentのメモリー • Context Windowを越える為の”メモリー”(長期記憶) ◦ 例1:コードベースを埋め込み、インデックス化&ベクトル検索 ▪ ベクトルストアに入れて保存し、必要に応じて取り出す ◦
例2:コードベースをオンデマンドで取得 ▪ ローカルのファイルを読み込み、必要に応じて思い出す
メモリ管理は二種類の派閥が居る Cline Claude Code Windsurf Cursor kiro 1. コードべースをインデックス化 する
2. コードベースをインデック ス化しない
”コードをインデックス化しない理由 ”の例
インデックス化しないなら どうやって、どう置く?
メモリの置き方 Cline Claude Code kiro 僕はMemory Bank 僕はClaude.md 僕は仕様駆動開発
メモリの置き方 Cline 僕はMemory Bank
Memory Bank
Memory Bank戦略 このようにMarkdownでローカル保存して、プロンプトで管理方法を指示 ※注:Memory BankはCline組込ではなく任意
保存されたメモリの関係性(上から下に読んで思い出す) Memory Bank戦略
Memory Bankの更新タイミング 自動更新:3つのパターン 1. 新規パターンが発見される 2. 大きな変更の実施後 3. 文脈を明確にする必要があるとき 手動更新:明示的に「更新して」と要求
自動更新 - 詳しく こんな内容のプロンプト • 参考:Make Cline an AI Agent
That Never Forgets https://cline.bot/blog/memory-bank-how-to-make-cline-an-ai-agent-that-never-forgets
開発ドキュメントと重複しがち 個人的に思ってること Readme.mdと二重管理 docs/配下と二重管理 一つでまとまる
Memory Bankのアレンジ例 軽量Memory Bank(個人の見解です)
Memory Bankのアレンジ例 逆に大規模向けにアレンジしている例も • Cline Recursive Chain-of-Thought System (CRCT) https://github.com/RPG-fan/Cline-Recursive-Chain-of-Thought-Syst
em-CRCT-
メモリの置き方 Cline Claude Code kiro 僕はMemory Bank 僕はClaude.md 僕は仕様駆動開発
メモリの置き方 Claude Code 僕はClaude.md
Claude.md
Claude.md戦略 Single File, Simple Design https://docs.anthropic.com/ja/docs/claude-code/memory
これだけ? これだけや 「Claude Code: Best practices for agentic coding」の抜粋+Google翻訳 https://docs.anthropic.com/ja/docs/claude-code/memory
”一般的なワークフロー ”とは これらしい a. Explore, plan, code, commit ・関連ファイルを探索、立案、実装、コミットのサイクルを回す b.
Write tests, commit; code, iterate, commit ・いわゆるTest-driven development (TDD) c. Write code, screenshot result, iterate ・コードの結果をスクショして改善=フロントエンド用? https://docs.anthropic.com/ja/docs/claude-code/memory
再掲:軽量 Memory Bank 軽量Memory Bankと称した先ほどのは、実 はClaude Codeの戦略に寄せている 1. Readme.md(Claude.md)にプロジェク トのOverview
2. Progress.mdを使ったTodo/タスクリス ト型 3. 必要に応じて開発ドキュメント確認 • 専用のLTMは用意しない 4. ルールは別途.clinerules/
メモリの置き方 Cline Claude Code kiro 僕はMemory Bank 僕はClaude.md 僕はSteering+Spec
メモリの置き方 kiro 僕はSteering+Spec
Steering
Steering なんもわからん 要はClaude.mdを分割してる https://kiro.dev/docs/steering/をLLMで翻訳
メモリの置き方 kiro 僕はSteering+Spec
仕様駆動開発 ~Spec-Driven Development~
仕様駆動開発 ”仕様駆動開発”をSpecモードとして実装 (使わないVibeモードも選べる)
仕様駆動開発 なんもわからん https://kiro.dev/docs/specs/concepts/をLLMで翻訳
仕様駆動開発 完全に理解した 三行で分かるSpecモード 1. 仕様を決めてrequirements.mdへ 2. 設計を決めてdesign.mdへ 3. 実装計画tasks.mdに従い実装 一行でわかるSpecモード
”SDLCに沿ったVibe Coding用フレームワーク” ※SDLC = Software Development Life Cycle
Kiro (Steering & Spec)
Memory Bank vs Steering & Spec
Memory Bank vs Steering & Spec ワイの戦略にドキュメント を必須化してる? Plan+Memory Bankの
軽量版やな Context Engineering知らなくて もセミオートなことに価 値があるんや。 デジカメのオートフォー カスと一緒
おさらい - メモリの置き方 is いろいろ Cline Claude Code kiro 僕はMemory
Bank →記録して毎回読 み出す 僕はClaude.md →最小限の記憶で Context を奇麗に 僕はSteering + 仕様駆動開発 →SDLCに沿ったVibe Coding用 フレームワーク。メモリも兼務
“長期記憶の置き方 ”のベストプラクティスは? • 知らんしマジでわからん ◦ これも独自研究なので誰か教えてくれ • 今後課題になりそうなところ ◦ エージェント向けMemoryファイル
VS Git上のドキュメント ◦ エージェント向けMemoryファイル VS Git上のソースコード類 • 経験値+Web事例 ◦ 新規はガチガチに書いた方が手戻りなく一定以上の品質を作れる ◦ 既存・メンテナンスでは、書けば書くほどコンテキストに縛られ、かえって上手くいかないこ とも ▪ kiroにVibeモード(Spec無し)がわざわざある理由を考えよう
おわり 名曲は色褪せない