OpenCode ワーキングメモリ(opencode-working-memory)
概要
OpenCode Working Memory プラグインは、OpenCode エージェント向けに設計された四層メモリ管理システムです。目的は、長期に残すべき「コア」情報と、対話やセッション中だけ必要なワーキングメモリを明確に分離し、過去の不要データを自動で削減(スマートプルーニング)しつつ、メモリ使用量(トークンや保存容量)を監視して動的に対応することです。本プラグインを導入することで、エージェントのコンテキスト損失を防ぎ、同じミスの繰り返しや情報過剰による性能低下を抑制できます。TypeScript ベースで NPM に配布され、MIT ライセンスの下で利用可能です。
リポジトリの統計情報
- スター数: 7
- フォーク数: 0
- ウォッチャー数: 7
- コミット数: 13
- ファイル数: 8
- メインの言語: TypeScript
主な特徴
- 四層アーキテクチャ:永続コア、セッションワーキング、スマートプルーニング、メモリ圧力監視の4つで情報を役割別に管理。
- 各層は用途に応じて保存・参照ポリシーが異なり、長期知識と短期コンテキストを分離します。
- スマートプルーニング:重要度や再利用頻度に基づく不要情報の自動削除でメモリ肥大を回避。
- 単純な時系列削除ではなく、重要度や参照履歴を考慮したヒューリスティックを想定。
- メモリ圧力監視:トークン上限や保存容量を監視して、閾値到達時にプルーニングや圧縮をトリガー。
- リアルタイムでメモリ状態を監視し、エージェントの性能劣化を未然に防ぎます。
- TypeScript + NPM 配布:型安全な実装とパッケージ管理、MIT ライセンスで導入と拡張が容易。
技術的なポイント
本プラグインは「四層メモリ」概念をエンジニアリングで実現することに注力しています。各層の役割は次の通りです。まず永続的コアメモリは、ユーザーのプロファイルやドメイン知識など長期保持すべき情報を格納します。次にセッションワーキングメモリは、会話履歴や直近のタスク文脈など短期で有用な情報を保持し、セッション終了で消去または要約してコアへ昇格します。スマートプルーニングは、保存データに対して「重要度」「最終参照日時」「参照頻度」「生成元の信頼度」などの指標を算出し、スコアの低いデータを段階的に削除・圧縮します。最後にメモリ圧力監視は、使用トークン数やストレージ容量を定量的に監視し、事前定義の閾値でプルーニングや要約処理を自動実行します。
実装面では TypeScript を採用しており、型定義によりプラグイン API の安全な利用が可能です。README と NPM バッジから、このプロジェクトはパッケージ公開を意図しており、OpenCode のエージェントライフサイクル(初期化、対話ループ、終了時処理)にフックする形で統合される設計と推察されます。永続層のストレージは外部 DB(ベクターデータベースや JSON ストア)への接続を許容する拡張点があると考えられ、埋め込みや検索で RT(retrieval)を効かせる実装が可能です。スマートプルーニングはルールベースの他に学習ベース(重要性予測)と組み合わせることができ、メモリ圧力への対処は「要約→削除」「古い発話を削除して要点のみ残す」など複数戦略をサポートすることで柔軟性を出します。MIT ライセンスの採用で商用利用やフォークがしやすく、ドキュメント(docs)や AGENTS.md に統合手順やエージェント設計の指針が置かれている点も導入の助けになります。
プロジェクトの構成
主要なファイルとディレクトリ:
- .gitignore: file
- AGENTS.md: file — エージェントとの統合方法や設計ガイドが記載されていると推測されます。
- LICENSE: file — MIT ライセンス。
- README.md: file — インストール、概要、使用例、バッジ等の基本情報。
- docs: dir — 追加のドキュメント、設計メモや API 仕様が置かれている想定。
- package.json / src (想定): TypeScript パッケージとしての設定やソースコード(リポジトリ内に TypeScript が主要言語であることから存在が想定されます)。
- その他: NPM に公開されていることを示すバッジや、設定ファイル類(tsconfig 等)が含まれる可能性があります。
…他 3 ファイル
まとめ
エージェントの短期・長期記憶を明確に分離し、実用的な自動プルーニングと圧力管理を提供する実用的なプラグインです。
リポジトリ情報:
- 名前: opencode-working-memory
- 説明: Four-tier memory architecture for OpenCode AI agents: persistent core memory, session working memory, smart pruning, and pressure monitoring
- スター数: 7
- 言語: TypeScript
- URL: https://github.com/sdwolf4103/opencode-working-memory
- オーナー: sdwolf4103
- アバター: https://avatars.githubusercontent.com/u/145098241?v=4
READMEの抜粋:
OpenCode Working Memory Plugin
Advanced four-tier memory architecture that keeps your AI agent sharp, focused, and never forgets what matters.
Stop losing context across compactions. Stop watching your agent repeat the same mistakes. This plugin gives your OpenCode agent a profess…