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
Cursorで重要コンテキストを 保持してコーディングする
Search
pianopia
May 06, 2025
0
3
Cursorで重要コンテキストを 保持してコーディングする
CursorでClineのMemory Bank的なメモリを実現しつつ、最適な方法としてのTipsをまとめています。
pianopia
May 06, 2025
Tweet
Share
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
The Cost Of JavaScript in 2023
addyosmani
55
9.1k
Why Our Code Smells
bkeepers
PRO
340
57k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6k
A better future with KSS
kneath
239
18k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
950
Transcript
Cursorで重要コンテキストを 保持してコーディングする 〜 Memory Bank 実装をするときの改善Tips 〜
Cline の Memory Bank 機能とは? CursorのようなAIアシスタントは、セッション間で記憶を本質的に保持しないため、 Memory Bankは開発者が包括的なプロジェクトコンテキスト、進捗履歴、アーキテクチャ 上の意思決定、主要な技術仕様を文書化し維持するための構造化された知識リポジトリと して機能します。
プロジェクトのアーキテクチャや設計意思決定に関する重要なコンテキ ストを保持 コードや機能の進化を文書化 プロジェクト固有の慣習や要件を維持 AIがより一貫性のある、コンテキストに即したサポートを提供できるようにする
Memory Bankを実装する利点 コンテキストメモリーの節約 回答精度の向上 セッション間の情報保持 副次的に仕様の整理が実現 複数プロジェクト間の情報共有 Memory Bankを実装することで、プロジェクトの知識が蓄積され、AIアシスタントとの協業がより効率的になります。これにより、開発チーム全体の生産性が向上し、 プロジェクトの一貫性が保たれます。
Cursor に Memory Bank 代替を入れる Memory Bankのディレクトリ構造を作成す る プロジェクトルートにmemory-bank/ディレクトリを作成し、必要なMarkdownファイルを整理します。 Cursorルールを設定す
る .cursor/rules/ディレクトリにcore.mdcとmemory-bank.mdcファイルを作成し、AIの動作ルールを定義します。 Memory Bankファイルを初期化する プロジェクト概要、アーキテクチャ、コンポーネントなどの基本テンプレートを作成します。 CursorがMemory Bankを使用するようにトレーニングする Cursorに明示的な指示を与え、Memory Bankファイルを読み込むよう促します。 定期的に維持し更新する 重要な変更後にMemory Bankを更新し、正確性を確保するために定期的にレビューします。
全部モノレポで管理しよう(再掲) これらを一つのワークスペースとして管理することで サービス仕様を複数箇所に記述せずに済みます ワークスペース例(Web + Native(iOS / Android)+ API) WebとAPIは
bun workspaces によって 相互に呼び出しつつ、DB設定を切り出すのも ありだと思います その他にも... デプロイはそれぞれ別のDockerfile.apiや Dockerfile.webを作成すればOK
個人的なおすすめ Memory Bank 構成 設定ごとにファイルを分けると、 参照するためにより多くの会話リクエストを行ってしまう 1ファイルでセクションごとに 定義を分けてMarkdownで見出しをつけることで、 LLMが認識・検索しやすくなります
+αの設定Tips 1. 定期的に Memory Bank を見にいくように指示を記載 2. 重要なサービス仕様を見つけた場合、Memory Bank に追記するように記載
3. その他設定のところに、なるべく具体的に採用技術を記載する (できればLLMに何も指定しなくても出力する方向性に従う) システムプロンプトに以下を設定しよう
最後に:設定して良かったこと 1. API、WEB、Native ごとに仕様ファイルを記述する必要がない (ドキュメントが統一できた。モノレポの利点かも。) 1. LLMが無駄なアクションをすることが少なくなった 1. 実装方針や履歴が1箇所に保持されることでコンテキストが失われづら くなった
Thank you for listening ! ご清聴ありがとうございました!