Skip to main content

Variables API

LLM 向けの高速キーバリューストア — カウンター、フラグ、最終閲覧タイムスタンプ、部分進捗。


Variables API

Variables API は一時的な状態のための高速キーバリューストアです。メモリ(インデックス化、検索可能、構造化)とは異なり、変数は迅速な読み書きアクセスに最適化されており、カウンター、フラグ、セッション状態に最適です。

エンドポイント

POST /var

変数を設定または更新します。

curl -X POST https://synapse.schaefer.zone/var \
  -H "Authorization: Bearer YOUR_MIND_KEY" \
  -H "Content-Type: application/json" \
  -d '{"key": "last_session_at", "value": "2026-06-27T14:00:00Z"}'

GET /var/:key

単一変数を取得します。

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     https://synapse.schaefer.zone/var/last_session_at

レスポンス:

{ "key": "last_session_at", "value": "2026-06-27T14:00:00Z", "updated_at": "..." }

GET /var

すべての変数を一覧表示します。

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     https://synapse.schaefer.zone/var

DELETE /var/:key

変数を削除します。

curl -X DELETE -H "Authorization: Bearer YOUR_MIND_KEY" \
     https://synapse.schaefer.zone/var/last_session_at

変数とメモリの使い分け

ユースケース 使用するもの
ユーザー名、設定 Memory(検索可能、構造化)
最終セッションのタイムスタンプ Variable(一時状態)
カウンター(例:送信メッセージ数) Variable(頻繁な更新)
ワークフロー状態(「5 ステップ中 3 ステップ完了」など) Variable(一時的)
長文のプロジェクトメモ Memory(フルテキストインデックス付き)
再利用可能なスクリプト Script store(名前付き、バージョン管理)

よくあるパターン

最終セッションの追跡

# At session end
curl -X POST .../var -d '{"key": "last_session_at", "value": "'$(date -Iseconds)'"}'

# At session start
LAST=$(curl .../var/last_session_at | jq -r .value)
curl .../memory/diff?since=$(date -d "$LAST" +%s)

カウンターパターン

# Increment
N=$(curl .../var/api_calls | jq -r .value)
curl -X POST .../var -d "{\"key\": \"api_calls\", \"value\": $((N+1))}"

フィーチャーフラグ

curl -X POST .../var -d '{"key": "feature_x_enabled", "value": "true"}'

# Check
ENABLED=$(curl .../var/feature_x_enabled | jq -r .value)
if [ "$ENABLED" = "true" ]; then ... fi

次のステップ