mcpField
R
rem-sleep

rem-sleep

github.com/stewnightエージェントワークフロー339 回インストール39 週間前に更新
リポジトリ

rem-sleep について

rem-sleepは、OpenClawやClaude Codeなど、セッションログとメモリファイルを使うAIエージェント向けのメモリ整理ワークフローです。情報の統合と整理のモードで、重要な経験を長期メモリにまとめます。

主な機能

  1. 01セッションログから重要情報を抽出
  2. 02経験を長期メモリファイルに統合
  3. 03古い項目、重複、冗長な記述を整理
  4. 04consolidate、defrag、fullの各モード
  5. 05手動または定期的な実行

活用シーン

  1. 01最近のセッションから決定や教訓を定期的に整理
  2. 02MEMORY.mdの古い項目や重複を整理
  3. 03エージェントの再起動前に長期メモリを整備

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/stewnight/rem-sleep-skill --skill rem-sleep

インストール後、Claude Code で/rem-sleepを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

LICENSE
README.md
scripts/
gather-sessions.sh

詳細

REM Sleep - AI エージェントのための記憶の統合

生物のレム睡眠と同じように、このスキルは生の経験(セッションログ)を処理し、長期記憶へと統合します。

対応環境: OpenClaw、Claude Code、またはセッションログとメモリファイルを備えた任意のエージェント。

課題

  • セッションログが蓄積し、読み返すコストが高くなります
  • 重要な洞察が雑多な情報に埋もれます
  • 「心に留めておく」というだけでは、コンテキストの圧縮後に残りません
  • 書き留めておかない限り、再起動後は一からやり直すことになります

解決策

定期的な「睡眠サイクル」で、次の処理を行います。

  1. セッションログを検索し、重要なパターンを探します
  2. 記憶する価値のある情報を抽出します
  3. 長期的に保持できるメモリファイルへ統合します

モード

1. 統合

最近のセッションログを処理 → 重要な出来事を抽出 → MEMORY.mdを更新

2. デフラグ

MEMORY.mdを見直す → 古くなった情報や最新でない項目を削除 → 重複を統合 → 圧縮

3. 全体実行

統合を実行した後、デフラグも実行します。


統合のワークフロー

ステップ1:最近のセッションを収集する

オプションA:grep/jqを使用する(追加ソフトウェア不要)

# OpenClaw session logs location
SESSIONS_DIR="$HOME/.openclaw/agents/main/sessions"

# Search for patterns in recent sessions
grep -r "decision\|learned\|important\|remember\|TODO" "$SESSIONS_DIR" --include="*.jsonl" | head -100

# Parse JSONL and search content
find "$SESSIONS_DIR" -name "*.jsonl" -mtime -3 -exec cat {} \; | \
  jq -r 'select(.content) | .content' 2>/dev/null | \
  grep -i "decision\|learned\|important"

オプションB:Repo Promptを使用する(インストール済みの場合)

# More powerful semantic search
rp -e 'search "decision" --context-lines 2'
rp -e 'search "learned" --context-lines 2'
rp -e 'search "important" --context-lines 2'

オプションC:memory_searchを使用する(OpenClaw組み込み)

エージェントにmemory_searchツールがある場合は、それを使ってメモリファイルを意味的に検索します。

memory_search("decisions made this week")
memory_search("lessons learned")
ステップ2:統合候補を特定する

検索結果から、次の項目を探します。

  • 決定事項 — 選択、好み、結論
  • 学んだ事実 — 人、プロジェクト、システムに関する新しい情報
  • 教訓 — うまくいったこと/いかなかったこと、避けるべき間違い
  • TODO/約束事項 — 約束したことや計画したこと
  • 人間関係に関する背景情報 — 人とのやり取りや、その人の好み
ステップ3:メモリファイルを更新する

2階層のシステム:

  1. 日次ファイル(memory/YYYY-MM-DD.md):生の出来事、具体的な詳細
  2. MEMORY.md:長期的に保持する価値のある、整理された永続的な知識

統合プロンプト:

これらのセッションの抜粋を確認してください。長期的に記憶すべき重要な情報を抽出してください。決定事項、人やプロジェクトに関する事実、学んだ教訓、好みに重点を置いてください。MEMORY.mdに適した箇条書き形式にしてください。


デフラグのワークフロー

ステップ1:現在のメモリを分析する

MEMORY.mdを読み、次の項目を特定します。

  • 古くなった項目 — 古い情報、完了済みのTODO、古い日付
  • 重複 — 異なるセクションで繰り返されている同じ情報
  • 矛盾 — 食い違う情報
  • 冗長な記述 — 圧縮できるほど冗長な項目
ステップ2:問題を分類する
STALE: [entry] — reason it's outdated
DUPLICATE: [entry A] ≈ [entry B]
INCONSISTENT: [entry A] vs [entry B]
BLOAT: [verbose entry] → [compressed version]
ステップ3:修正を適用する
  • 古くなった項目を削除します(確信が持てない場合はアーカイブセクションに移動します)
  • 重複を統合し、信頼できる単一の項目にまとめます
  • 矛盾を解消します(必要に応じてセッションログを確認します)
  • 冗長な記述を圧縮します
ステップ4:再構成する

MEMORY.mdを論理的なセクションに整理します。

  • [User]について
  • 自分のセットアップ
  • プロジェクト
  • 人々
  • 好み
  • 学んだ教訓

スケジュール設定

推奨頻度:

  • 統合:数日ごと、または忙しい期間の後
  • デフラグ:毎週、または隔週
  • 全体実行:毎月の大掃除

実行方法:

  • 手動:「REM sleepを実行」/「自分の記憶を統合して」
  • ハートビート:定期実行のためにHEARTBEAT.mdに追加
  • Cron:営業時間外に独立したジョブをスケジュール

クイックリファレンス

# Native search (no dependencies)
grep -r "pattern" ~/.openclaw/agents/main/sessions --include="*.jsonl"

# With Repo Prompt
rp -e 'search "PATTERN" --context-lines 2'

# Helper script (if using Repo Prompt)
./scripts/gather-sessions.sh [days_back]

ファイル構成

rem-sleep/
├── SKILL.md          # This file
├── README.md         # GitHub readme
└── scripts/
    └── gather-sessions.sh   # Helper script (requires Repo Prompt)

注意事項

  • セッションログはJSONL形式で、内容はJSONにラップされています
  • 古くなっているか確信が持てない場合は、保持してください(慎重な方針)
  • MEMORY.mdはメインセッションで読み込まれるため、焦点を絞り、関連性の高い内容を保ってください
  • このスキルはワークフローであり、実行ファイルではありません。自分の環境に合わせて調整してください

貢献

プルリクエストを歓迎します。改善案:

  • 「記憶する価値のある情報」を判断するための、より優れたヒューリスティック
  • 代替の検索方法
  • さまざまなプラットフォーム向けの自動化スクリプト
  • 意味検索のためのベクトルDBとの統合

GitHub: https://github.com/stewnight/rem-sleep-skill

コメント