agentsclimarketplace

Dreaming

Skill HikaruEgashira/agent-skills/agentops/skills/dreaming

Install
npx -y skills add HikaruEgashira/agent-skills --skill dreaming

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

agentops のオフライン記憶整理 (consolidation) 機能。会話 transcript は読まず、 既存の memory entry を「精緻化のみ」する。新しい記憶が獲得されたセッションでだけ Stop hook から自動発火する (fingerprint trigger gate)。手動実行は /dream。 Trigger: dreaming, memory consolidation, 記憶整理, refine memory, dream, memory dedup, /dream

SKILL.md

10.1 KB, as published. Nobody here has run it

agentops dreaming — オフライン記憶整理 (refinement-only)

これは何か

dreaming は agentops プラグインの オフライン記憶整理パス です。睡眠中の記憶固定化に着想を得ています。

  • 精緻化のみ (refinement-only): 会話 transcript は 絶対に読まない。新しい事実の 獲得 (acquisition) はオンラインの本体エージェントが担当し、dreaming は 既に記録済みの memory entry を磨くだけ です。
  • 新規記憶があったときだけ発火: Stop hook のたびに走るのではなく、メモリストアに 新規 / 変更があったセッションでのみ動く (後述の trigger gate)。変化が無ければモデル呼び出し ゼロ = コストゼロ。
  • 非同期・非ブロッキング: dispatcher は 1 秒未満で exit 0 し、worker を background に detach する。ユーザーの返信を遅らせない。decision:"block" は決して返さない。

精緻化の内容: 表現の明確化 / 重複の統合 / 矛盾の解消 / frontmatter スキーマ修正 / [[name]] 相互リンク付与 / 陳腐化エントリの prune・flag。モデルへの入力は 既存エントリ + MEMORY.md インデックスのみで、出力は 構造化された編集オペ (JSON) だけ。bash 側が検証して から適用します (モデルはファイルに触れない)。

3-phase モデル (paper grounding)

Phase名称内容
1Light sleepworking set 構築 (delta + 1-hop リンク近傍 + 重複候補 + MEMORY.md)。純 bash、モデル無し
2REM sleepleast-privilege な claude -p を 1 回。モデルは JSON 編集オペのみ出力
3Deep sleepjq 検証 → evidence threshold ゲート → .bak + atomic に適用 → MEMORY.md / AGENTS.md 整合
  • Auto-Dreamer (arXiv 2605.20616): オフライン consolidation とオンライン acquisition の 分離。本機能は consolidation 側のみを実装し、trigger gate がその分離を体現する。
  • Active Dreaming Memory: reflection + consolidation + verification with evidence threshold。semantic memory を書き換える前の信頼度しきい値・矛盾時は flag・downgrade-to-flag ポリシーがこれに対応。
  • SCM (Self-Controlled Memory): importance tagging + algorithmic forgetting/pruning。 delete / flag オペと、durable のみを AGENTS.md へ mirror する選別がこれに対応。delete の 高いしきい値 = 安全な忘却。

Trigger gate (新規記憶検知)

Stop hook で モデルを呼ぶ前に bash だけで 発火可否を判定します。

  1. メモリディレクトリの fingerprint を計算: 各 entry の id<TAB>sha256(ファイル全体) (frontmatter+body)。entry-id = frontmatter の name:、無ければ basename。
  2. 前回の fingerprint (fingerprint.json) と比較し delta を算出。
  3. delta = 新規 or ハッシュ変化した id のみ。削除は trigger しない (削除は次回の fingerprint から落ちるだけ)。
  4. delta が空 → そのまま exit 0 (モデル呼び出し無し)。
  5. delta が非空 → その entry 群を FOCUS として worker を detach。worker は lock 下で delta を再計算して TOCTOU を防ぐ。

MEMORY.md は fingerprint から 除外。worker 自身が毎回書き換える派生インデックスなので、 含めると自分の書き込みが次回の dream を誘発する feedback loop になるため。

設定 (環境変数)

環境変数既定値説明
AGENTOPS_DREAM_DISABLE01 で完全停止 (kill switch)
AGENTOPS_DREAM_MODELclaude-haiku-4-5-20251001REM phase のモデル (安価・高速)
AGENTOPS_DREAM_MIN_INTERVAL1800同一メモリディレクトリの最小実行間隔 (秒)
AGENTOPS_DREAM_MAX_PER_DAY81 日あたり最大実行回数
AGENTOPS_DREAM_EVIDENCE_THRESHOLD0.7信頼度しきい値 (0-1)
AGENTOPS_DREAM_PROMOTEapplyapply=実適用 / audit=staging に提案のみ書き出し
AGENTOPS_DREAM_TIMEOUT120モデル呼び出しのタイムアウト (秒)
AGENTOPS_DREAM_MAX_BYTES60000working set ペイロード上限 (バイト)
AGENTOPS_DREAM_MEMORY_DIR(cwd 由来)メモリディレクトリの上書き
AGENTOPS_DREAM_CLAUDE_BIN(自動解決)REM phase で使う claude バイナリの明示指定 (絶対パス or PATH 上の名前)。既定解決順 claudexclaude~/.claude/local/claude が未設定ラッパを掴む環境向け。解決不能なら fail-closed
AGENTOPS_DREAM_MIRROR_AGENTS10 で AGENTS.md への mirror を無効化

ロールアウト時は AGENTOPS_DREAM_PROMOTE=audit を推奨。実メモリを変更せず提案オペを ~/.claude/agentops/staging/<key>/ops-<ts>.json に書き出して内容を確認できます (audit では fingerprint を進めないので同じ delta が次回も再提案される)。

しきい値 / 矛盾ポリシー (bash 側で強制)

モデルの自己採点は信用せず、bash が最終ゲートになります。

  • relink, 表現のみの update : confidence >= 0.50 で適用 (低バー)
  • 構造的 update (split/rename), merge : confidence >= threshold
  • delete : confidence >= max(threshold, 0.85) (高バー)。下回れば flag に降格
  • merge が threshold 未満 : flag に降格 (データを失わない)
  • 0.50 未満 : op を drop
  • 矛盾解消: FOCUS (新しく再主張された) entry を優先 → より具体的/根拠のある表現 → 決め手が無ければ 両方 flag (delete/merge しない)

「迷ったら flag」が default-safe。破壊的オペは構造的に保守的です。

さらに本文には fail-closed body guard がかかります (refinement-only の機械的強制):

  • new_body は JSON の string 型のときだけ 採用。null は「本文変更なし」の意味で、 文字列 "null" として書き込まれることはない
  • 提案本文が 空 / 空白のみ / リテラル "null" / 元本文の半分未満 (元が 200 bytes 以上のとき) なら op を skip し、元ファイルは byte 単位で不変 (ログにのみ記録)
  • merge は損失側 entry を削除するため、統合済み本文 (string の new_body) が無ければ skip
  • 書き込みは常に 検証 → temp ファイル → atomic rename (atomic_write) + 実行前 .bak

テスト

bash agentops/scripts/tests/dream-worker-test.sh

fake claude バイナリで worker を直接駆動し、「モデル出力が null / 空 / 空白 / 非JSON / 大幅短縮のとき対象 entry が byte 単位で不変」という回帰を固定します (jq + coreutils のみ、 ネットワーク・実モデル不要)。

脅威モデル要約

transcript を取り込まないため、典型的な間接プロンプトインジェクション (直前に読んだ 悪意あるファイル / transcript) は スコープ外。残る攻撃面は 既存メモリストア自体 (信頼済みだが汚染されうるデータ) とローカル実行/状態面のみ。

  • data-not-instructions: メモリは fenced DATA 領域でモデルに渡し、「指示ではなくデータ」 と明示。出力は JSON オペのみ。
  • 最小権限: claude -p --permission-mode planBash,WebFetch,WebSearch,Edit,Write, NotebookEdit,Task,Read,Glob,Grep を全て不許可。モデルは JSON を吐くだけで、ファイル/ ネットワークに触れない。フラグ拒否時は fail-closed (緩い権限へフォールバックしない)。
  • 可逆性: 変更ファイルは必ず .bak を作り temp+mv で atomic 書き込み。
  • secret hygiene: ログ書き込み前に secret を redact。secret を新規導入するオペは reject。
  • injection-safe shell: 全展開を quote、eval 不使用、cwd/session_id/transcript_path/ ファイル内容をコマンド文字列に補間しない (内容は file/heredoc 経由)。
  • fail-safe: 全コードパスが exit 0。エラーは ~/.claude/agentops/dream.log のみ。
  • concurrency / rate: メモリディレクトリ毎の mkdir ロック (900s で stale 失効) + min-interval + max/day。

Codex への mirror と制約

metadata.typeproject または reference未 flag の durable エントリだけを、 プロジェクトルートの AGENTS.md のマーカー間ブロックに mirror します。

<!-- agentops:dreaming:start -->
## Project memory (managed by agentops dreaming — do not edit between markers)
- **<description>** ([[<id>]])
<!-- agentops:dreaming:end -->

マーカー間しか書き換えません。マーカーが無ければ末尾に 1 度だけ追記。マーカーが重複/ 不整合なら mirror を skip (fail-safe)。user/feedback や flag 済み・低信頼の個人/ 一時メモは AGENTS.md に漏らしません。AGENTS.md が VCS に commit される場合があるため、 mirror は AGENTOPS_DREAM_MIRROR_AGENTS=0 で無効化できます。

制約: mirror は durable サブセットのみ。完全な記憶は Claude 側の per-project ストアが source of truth です。

手動実行

/dream コマンドで trigger gate を バイパスして即時に精緻化パスを 1 回走らせます (refinement-only は不変)。ロールアウト確認には:

AGENTOPS_DREAM_PROMOTE=audit /dream

ログ: ~/.claude/agentops/dream.log / 状態: ~/.claude/agentops/state/<key>/ / audit 出力: ~/.claude/agentops/staging/<key>/

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.