memory-capture について
memory-captureは、セッションメモリの保存やアイデアの記録を行うエージェントスキルです。セッションの圧縮か、タグやコンテキスト付きのメモ作成に振り分け、core_memoryで保存します。
主な機能
- 01セッション圧縮とクイックメモの振り分け
- 02復元用のセッションメモリ構造化
- 03タグとコンテキスト付きメモの記録
- 04core_memory経由でのインポート保存
活用シーン
- 01後で復元できるようセッション情報を保存
- 02コードに関するアイデアをすばやく記録
- 03タグでメモを分類
- 04メモをコードや機能のコンテキストに関連付け
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ catlog22/ claude-code-workflow --skill memory-captureインストール後、Claude Code で/memory-captureを入力して読み込まれたか確認します。
同梱ファイルphases/01-compact.mdphases/02-tips.md
詳細
メモリキャプチャスキル
2 つの実行モードに振り分ける、統合メモリキャプチャスキルです:
- Compact:セッション全体のメモリを構造化テキストに圧縮し、復元できるようにします
- Tips:アイデア、スニペット、知見をすばやくメモします
アーキテクチャの概要
┌─────────────────────────────────────────────────────┐
│ Memory Capture (Router) │
│ → Parse input → Detect mode → Route to phase │
└───────────────┬─────────────────────────────────────┘
│
┌───────┴───────┐
↓ ↓
┌───────────┐ ┌───────────┐
│ Compact │ │ Tips │
│ (Phase1) │ │ (Phase2) │
│ Full │ │ Quick │
│ Session │ │ Note │
└─────┬─────┘ └─────┬─────┘
│ │
└───────┬───────┘
↓
┌───────────────┐
│ core_memory │
│ (import) │
└───────────────┘
実行フロー
ステップ 1:入力を解析して振り分ける
ユーザー入力から実行モードを検出します:
自動振り分けルール(優先順位順):
| シグナル | 振り分け先 | 例 |
|---|---|---|
| キーワード:compact、session、压缩、recovery、保存会话 | → Compact | "compact current session" |
| キーワード:tip、note、记录、快速 | → Tips | "记录一个想法" |
--tag または --context フラグがある | → Tips | "note content" --tag bug |
| 短いテキスト(100 文字未満)で、セッション関連キーワードがない | → Tips | "Remember to use Redis" |
| 曖昧、または引数がない | → AskUserQuestion | /memory-capture |
曖昧な場合は、AskUserQuestion を使用します:
Question: "选择记忆捕获模式"
Options:
1. Compact - 压缩当前完整会话记忆(用于会话恢复)
2. Tips - 快速记录一条笔记/想法/提示
ステップ 2:選択したフェーズを実行する
振り分け結果に基づいて、対応するフェーズを読み込み、実行します:
- Compact モード → 参照:phases/01-compact.md
- Tips モード → 参照:phases/02-tips.md
フェーズ参照ドキュメント(フェーズの実行時に必要に応じて読み込みます):
| モード | ドキュメント | 目的 |
|---|---|---|
| Compact | phases/01-compact.md | セッション全体のメモリを圧縮し、構造化してエクスポートします |
| Tips | phases/02-tips.md | タグとコンテキストを付けて、手早くメモを取ります |
ステップ 3:core_memory 経由で保存する
どちらのフェーズも、同じ保存方法を使用します:
mcp__ccw-tools__core_memory({
operation: "import",
text: structuredText // Generated by the selected phase
})
基本ルール
- フェーズの単独実行:1 回の呼び出しにつき、実行するフェーズは 1 つだけです。両方を実行してはいけません
- 内容に忠実に:フェーズファイルには実行の詳細がすべて記載されています。記載どおりに実行してください
- 絶対パス:出力に含めるすべてのファイルパスは絶対パスにしてください
- 要約しない:Compact モードではプラン全体を省略せずに保持します。短縮してはいけません
- 速度を優先:Tips モードでは、分析のオーバーヘッドを最小限に抑えてすばやく処理してください
入力処理
Compact モードの入力
- 任意:「セッションの説明」を補足コンテキストとして指定できます
- 例:
/memory-capture compactまたは/memory-capture "completed auth module"
Tips モードの入力
- 必須:
<note content>- ヒントやメモのテキスト - 任意:分類用の
--tag <tag1,tag2> - 任意:関連するコードや機能を参照するための
--context <context> - 例:
/memory-capture tip "Use Redis for rate limiting" --tag config
データフロー
User Input
│
├─ [compact detected] → Read phases/01-compact.md
│ → Analyze session → Generate structured text
│ → core_memory import → Report Recovery ID
│
└─ [tips detected] → Read phases/02-tips.md
→ Parse args → Gather context → Generate tip text
→ core_memory import → Confirm with ID + tags
エラー処理
| エラー | 対応 |
|---|---|
| core_memory のインポートに失敗 | 1 回再試行し、その後エラーを報告して、手動保存用の構造化テキストを提示します |
| セッションコンテキストがない(Compact) | ユーザーに警告し、利用可能な情報を使って生成します |
| メモの内容が空(Tips) | AskUserQuestion 経由で内容を入力するようユーザーに求めます |
| 振り分けが曖昧 | AskUserQuestion を既定とします。推測してはいけません |
コメント
Markdown 対応