memtext
利用場面:コンテキストのオフロード、セッション間での永続的なメモリ保持、意思決定の保存、履歴照会、プロジェクトメモリ管理。トリガー:「memtext」「context storage」「save context」「remember」「memory」「persistent context」。非対応:単一セッションのタスク、永続化が不要な場合。
description の原文を見る
Use when: context offloading, persistent memory across sessions, storing decisions, querying history, project memory management. Triggers: 'memtext', 'context storage', 'save context', 'remember', 'memory', 'persistent context'. NOT for: single-session tasks, when no persistence needed.
SKILL.md 本文
Memtext
AIエージェント向けコンテキストオフロード - セッション間の永続的メモリ。このスキルはファイルシステムベースのコンテキストストレージとフルテキスト検索機能を備えたSQLiteバックアップメモリの両方を提供します。
このスキルを使用する場面
このスキルは以下の場合に使用します:
- エージェントコンテキストを将来のセッション用に保存する
- 決定事項とアーキテクチャの選択肢を保存する
- 過去のコンテキストをクエリする
- セッション間でプロジェクトメモリを管理する
- プロジェクトコンテキストで新しいエージェントをオンボーディングする
以下の場合は、このスキルを使用しないでください:
- 単一セッションのみのタスク
- 永続化が必要ない場合
- プロジェクトが既にメモリシステムを持っている場合
入力フォーマット
context_request:
action: string # "init"、"save"、"query"、"log"、"add"、"list"、"migrate"、"synthesize"
text: string # 保存/クエリするコンテキストテキスト
tags: array # 組織化用のオプショナルタグ
type: string # エントリ型: decision、pattern、note、error、convention、memory
importance: int # 1-5 の重要度レベル
limit: int # クエリの最大結果数
session: string # ログ用のセッション識別子
scan: bool # プロジェクトをスキャン
all: bool # すべてのログを処理(最近のみではなく)
出力フォーマット
context_result:
status: "success" | "error" | "not_found"
message: string
entry_id: int # add 操作用
results: array # query 操作用
new_memories: int # synthesize 操作用
機能
1. コンテキストストレージの初期化
memtext init
以下を作成します:
.context/ディレクトリidentity.md- プロジェクト目的、スタック、規約decisions.md- アーキテクチャ決定事項session-logs/- 日次セッションノートmemtext.db- フルテキスト検索用のFTS5を備えたSQLite.gitignoreの自動更新
2. コンテキストを保存
memtext save "ACID準拠のためにPostgreSQLを選択しました" --tags database architecture
タイムスタンプとタグを含めて decisions.md に保存します。
3. コンテキストをクエリ
memtext query database --limit 10
正規表現を使用してすべてのマークダウンファイルを検索します。ファイルソース付きの一致行を返します。
4. セッションログ
memtext log "JWT リフレッシュの認証バグを修正" --session bugfix
.context/session-logs/YYYY-MM-DD.md に日次セッションログを作成します。
5. SQLiteストレージ
# 構造化エントリを追加
memtext add "API決定事項" --content "今はGraphQLではなくRESTを使用" --type decision --tags api,rest --importance 3
# エントリを一覧表示
memtext list --type decision --limit 20
高速検索用のフルテキスト検索(FTS5)を備えたSQLiteを使用します。
6. メモリの統合
# ログから @memory マーカーをスキャン
memtext synthesize
# すべてのログを処理
memtext synthesize --all
# 手動統合
memtext synthesize --text "タイトル: コンテンツ (@tags: t1, t2)"
ログから @memory マーカーを構造化メモリに抽出します。
7. プロジェクトレジストリ
# 登録されたプロジェクトを一覧表示
memtext projects
# .context を含むプロジェクトをスキャン
memtext projects --scan
~/.config/memtext/projects.db でのクロスプロジェクト追跡。
8. マイグレーション
memtext migrate
v0.1.x ファイルシステムコンテキストをSQLiteデータベースにマイグレーションします。
エントリ型
| 型 | 説明 |
|---|---|
| decision | アーキテクチャ決定事項 |
| pattern | 発見された再利用可能なパターン |
| note | 一般的なノート |
| error | エラーと対処方法 |
| convention | プロジェクト規約 |
| memory | 統合された高価値メモリ |
設定
.context/- コンテキストストレージディレクトリ(カスタマイズ可能).context/memtext.db- SQLiteデータベース~/.config/memtext/projects.db- グローバルプロジェクトレジストリ
統合
- 回答する前に: 関連する以前の決定事項についてコンテキストをクエリ
- 決定後:
memtext saveで記録 - セッション終了時:
memtext logで要約 - 定期的:
memtext synthesizeでメモリを抽出
依存関係
- Python 3.10以上
- 標準ライブラリ: pathlib、re、datetime
- SQLite(組み込み)
- オプション: ruff(リント)
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- SpectreDeath
- ライセンス
- MIT
- 最終更新
- 2026/4/25
Source: https://github.com/SpectreDeath/Semantic-Memory-Engine / ライセンス: MIT