Agent Skills by ALSEL
汎用ソフトウェア開発⭐ リポ 10品質スコア 65/100

memory

単一のJSONLファイルを使用したファイルベースの長期メモリで、追記専用の書き込みと、bash + jqを活用した最近のウィンドウ検索が可能です。

description の原文を見る

a file-based long-term memory using a single JSONL file, with append-only writes and recent-window search via bash + jq.

SKILL.md 本文

ユーザーが明示的に要求していない場合でも、セッション間でメモリから恩恵を受ける可能性があるすべてのユーザープロンプトに対して、このスキルを積極的に使用してください。

目標

  • memory_write と memory_search の 2 つのツールを提供します。
  • メモリはディスク上の単一の追記専用 JSONL ファイルに保存されます。
  • 書き込みは常に 1 行に 1 つの有効な JSON オブジェクトを追記する必要があります(JSONL)。
  • 読み込みは末尾からのテール ウィンドウを経由した検索で最新のエントリを優先し、必要な場合のみウィンドウを拡張してください。

ストレージ

  • ファイルパス、デフォルト MEMORY_FILE=~/.codex/memory.jsonl(見つからない場合は作成)。
  • 各行は 1 つの JSON オブジェクトで、最低限以下を含みます:
    • ts: ISO8601 タイムスタンプ
    • type: 文字列(例: "note"、"fact"、"task"、"todo")
    • content: 文字列(生テキスト)
    • tags: オプションの文字列配列
    • meta: オプションのオブジェクト
  • 既存の行を上書きしないでください。追記専用です。

クイックスタート

memory_write(input)

  • 入力: {type, content, tags?, meta?}
  • 正しいエスケープで有効な JSON を生成する必要があります。JSON 文字列を手作業で構築しないでください。
  • jq を使用して安全に文字列化/エスケープしてから追記します: jq -cn --arg ts "$(date -u '+%Y-%m-%dT%H:%M:%SZ')" --arg type "$type" --arg content "$content"
    --argjson tags "$tags_json_or_null" --argjson meta "$meta_json_or_null"
    '{ts:$ts,type:$type,content:$content,tags:$tags,meta:$meta}' >> memory.jsonl
  • tags/meta が提供されていない場合は、null を書き込むか、フィールドを省略します(1 つの一貫したアプローチを選択してください)。

memory_search(query)

  • 入力: {q: string, limit: int=20, window_lines: int=50000, mode: "rg"|"jq"|"hybrid"="hybrid"}
  • デフォルト動作(ハイブリッド):
    1. tail -n window_lines memory.jsonl
    2. クエリ文字列を rg で検索(デフォルトでは q をリテラル部分文字列として処理。q が /.../ で始まる場合はオプションで正規表現をサポート)
    3. マッチからの行を jq で解析/検証(不正形式の行は無視)
    4. 最新の結果を最初に返します(テール ウィンドウは最新であるため、ウィンドウ内の元の順序を保持するか、必要に応じて逆順)
  • 結果が limit より少ない場合は、ウィンドウ幅を指数関数的に拡張します(例: *4)。最大値(例: 1,000,000 行)まで拡張してから停止します。
  • 出力: {results: [json objects], truncated: bool, used_window_lines: int}

実行可能スクリプト

このスキルには 2 つのインターフェースのための実行可能なリファレンス実装が含まれています:

  • memory/scripts/memory_write(stdin から JSON を読み込み、1 JSONL 行を追記、JSON 結果を出力)
  • memory/scripts/memory_search(stdin から JSON を読み込み、最近のウィンドウを検索、JSON 結果を出力)

例:

printf '%s' '{"type":"note","content":"User prefers Python.","tags":["preference"]}' | memory/scripts/memory_write
printf '%s' '{"q":"Python","limit":5}' | memory/scripts/memory_search

CLI 要件

  • 標準 Unix ツールに依存します: bash、touch、tail、rg(ripgrep)、jq。
  • フォールバックを提供します: rg がない場合は grep を使用、jq がない場合は明確なエラーで失敗します。
  • 任意のユーザーテキストでコマンドを安全にしてください(適切なクォーティング)。
  • スキルが生のテキスト ログではなく、構造化 JSON をエージェントに返すようにしてください。

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
Hongyu-yu
リポジトリ
Hongyu-yu/matsci-ai-skills
ライセンス
MIT
最終更新
2026/2/9

Source: https://github.com/Hongyu-yu/matsci-ai-skills / ライセンス: MIT

本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: Hongyu-yu · Hongyu-yu/matsci-ai-skills · ライセンス: MIT