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
14
1.8k
AIのメモリー
社内勉強会向け
watany
July 23, 2025
Tweet
Share
More Decks by watany
See All by watany
ロボットのための工場に灯りは要らない
watany
10
2.9k
Agentic Coding 実践ワークショップ
watany
54
34k
たかが特別な時間の終わり / It's Only the End of Special Time
watany
37
11k
まだ間に合う! 2025年のhono/ssg事情
watany
4
980
AIエージェントが書くのなら直接CloudFormationを書かせればいいじゃないですか何故AWS CDKを使う必要があるのさ
watany
26
12k
Coding Agentに値札を付けろ
watany
3
1.1k
Vibe Codingをせずに Clineを使っている
watany
19
8k
ミリしらMCP勉強会
watany
4
1.2k
RemovalPoliciesのことを知ろう!
watany
2
350
Other Decks in Programming
See All in Programming
Claude Codeセッション現状確認 2026福岡 / fukuoka-aicoding-00-beacon
monochromegane
4
420
RAGでハマりがちな"Excelの罠"を、データの構造化で突破する
harumiweb
9
2.8k
LangChain4jとは一味違うLangChain4j-CDI
kazumura
1
180
Claude Codeログ基盤の構築
giginet
PRO
7
3.3k
ふつうの Rubyist、ちいさなデバイス、大きな一年
bash0c7
0
950
ベクトル検索のフィルタを用いた機械学習モデルとの統合 / python-meetup-fukuoka-06-vector-attr
monochromegane
2
420
S3ストレージクラスの「見える」「ある」「使える」は全部違う ─ 体験から見た、仕様の深淵を覗く
ya_ma23
0
510
最初からAWS CDKで技術検証してもいいんじゃない?
akihisaikeda
4
150
nilとは何か 〜interfaceの構造とnil!=nilから理解する〜
kuro_kurorrr
3
1.9k
Kubernetesでセルフホストが簡単なNewSQLを求めて / Seeking a NewSQL Database That's Simple to Self-Host on Kubernetes
nnaka2992
0
110
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
300
API Platformを活用したPHPによる本格的なWeb API開発 / api-platform-book-intro
ttskch
1
140
Featured
See All Featured
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.2k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
76
Balancing Empowerment & Direction
lara
5
940
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
190
Building Applications with DynamoDB
mza
96
7k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
72
Code Review Best Practice
trishagee
74
20k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
140
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
Docker and Python
trallard
47
3.8k
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無し)がわざわざある理由を考えよう
おわり 名曲は色褪せない