← GLM Rate Proxy コスト最適化 →

14 SSOT — 個人ナレッジベースを使いこなす


SSOTとは?

SSOT = Single Source of Truth(真実の単一情報源)

個人の判断・決定・知見・設計判断をすべて集約する知識ベースです。AI駆動開発では、Claude Codeがセッションをまたいで同じ判断を再現できるよう、SSOTを「長期記憶」として活用します。

なぜSSOTが必要か


3つの基本スキル(使い分け早見表)

SSOT運用は3つのスキルで完結します:

スキル いつ使う? トリガー例
ssot-record 作業内容・決定を記録したい 「記録して」「保存して」「メモして」
ssot-search 過去の情報を探したい 「SSOTから探して: キーワード」「SSOT検索」
ssot-check SSOTが古いか確認したい 「SSOT整理して」「乖離を直して」「00_SYSTEM更新して」

使い分けフロー

「いま何をしたい?」
    │
    ├─ 記録したい → ssot-record
    │              └ 内容を分析→振り分け→自動記録
    │
    ├─ 探したい  → ssot-search
    │              └ 全文検索+意味的検索で関連文書5件表示
    │
    └─ 確認したい → ssot-check
                   └ 00★SYSTEM/の設定と実態を照合・修正提案

各スキルの詳細

📝 ssot-record(記録)

トリガーワード:

やること:

  1. 内容をGLMが分析
  2. 機密レベル・想定寿命・削除可能性・検索優先度から保管場所を判定
  3. 01_DECISIONS/または適切な場所に保存
  4. _INDEX.md追記・日記追記・ガイド転記まで一括実行

詳細は: ssot-guide 03 SSOT - SSOTレコード


🔍 ssot-search(検索)

トリガーワード:

やること:

  1. ripgrep全文検索(~0.5秒)
  2. sentence-transformersでrerank(~1秒)
  3. 関連文書を上位5件表示

詳細:

概要

「SSOTから探して: glm-rate-proxy」と話しかけると、1,900件超のMarkdownファイルを横断検索して関連ドキュメントを5件表示するスキルです。

あなた: SSOTから探して: MiniMaxのフォールバック設定

Claude: 🔍 SSOT検索: 「MiniMax フォールバック 設定」— 5件ヒット
  1. 📋 DECISIONS  01_DECISIONS/claude-code/2026-05-11_...
  2. 📅 DAILY      10_DAILY/2026-05-11.md
  ...

アーキテクチャ

ユーザーの質問
    │
    ▼
① ripgrep 全文検索(~0.5秒)
   ├─ フェーズ1: フレーズ完全一致
   └─ フェーズ2: ヒット不足 → トークンOR検索(日本語対応)
    │
    ▼
② sentence-transformers rerank(~1秒)
   all-MiniLM-L6-v2 でコサイン類似度を計算
    │
    ▼
③ 上位5件を層別表示
   📋 DECISIONS / 📅 DAILY / 🔧 SYSTEM / 💼 CAREER ...

キーワード検索と意味的検索の違い

キーワード検索のみ ハイブリッド(本構成)
「glm-rate-proxy」 ◎ ヒット ◎ ヒット
「プロキシ レートリミット」 ◯ 部分ヒット ◎ ヒット
「429エラーの対処」→「glm-rate-proxy」 ✗ ミス ◎ ヒット

セットアップ

# ripgrep インストール
sudo apt-get install -y ripgrep

# Python venv 作成
sudo apt-get install -y python3.12-venv
python3 -m venv ~/.claude/venv/ssot-search
~/.claude/venv/ssot-search/bin/pip install sentence-transformers

注意: Python 3.12以降はシステムへの直接 pip install がブロックされます(PEP 668)。必ずvenvを使うこと。

使い方

SSOTから探して: <キーワード>
SSOT検索: <キーワード>
/ssot-search <キーワード>

:

SSOTから探して: glm-rate-proxy の設定
SSOTから探して: openclaw-stack 設計方針
SSOTから探して: Zenn記事 LLMルーティング
SSOTから探して: MiniMax フォールバック

日本語クエリのコツ

スペース区切りでキーワードを並べると精度が上がります:

# よりよい
SSOTから探して: MiniMax フォールバック 設定

# 動くが精度が落ちる場合も
SSOTから探して: MiniMaxのフォールバック設定方法

内部動作の詳細

# 1. ripgrep でフレーズ検索
hits = rg_search(query, ssot_dir, max_files=80)

# 2. 不足時はトークンOR検索で補完
if len(hits) < 80:
    tokens = _tokenize(query)  # 助詞・英数字境界で分割
    hits += rg_search("|".join(tokens), ...)

# 3. sentence-transformers でrerank
results = rerank(query, hits, top_n=5)

トラブルシューティング

💡 やさしい補足


🔧 ssot-check(整合性)

トリガーワード:

やること:

  1. 00★SYSTEM/配下の設定ファイルと実態を照合
  2. 乖離があれば自動修正 or 修正提案
  3. 対話モードでの深掘り検証

チェック対象:

乖離パターン:

詳細は: ssot-guide 03 SSOT - SSOTチェック


特性カタログ(保管場所の分類基準)

SSOTには9つの保管場所があります。00★SYSTEM/ は最重要で、SSOT全体の構造・ルール・自動化の正典がここに集約されています。内容を分析して適切な場所に振り分けます。

場所 機密レベル 想定寿命 検索優先度 用途
00★SYSTEM/ 長期 最重要:全体マップ・共通ルール・自動化・設定の正典(禁止操作リスト・Hook設定含む)
01_DECISIONS/<project> 長期 決定ログ・技術詳細・なぜそうしたか
10_DAILY/YYYY-MM-DD 短期 日次サマリー・セッションログ
30_RESEARCH/ 中期 低〜中 参考資料・調査結果
バックログ.md 中期 未完了タスク・WIP構想
20_PUBLISHING/ 短期 外部公開コンテンツ
プロジェクト固有 プロジェクト依存 短期〜中期 低〜中 プロジェクト固有のドキュメント
メモリ 短期 セッション中のコンテキスト(APIキー等機密含む可能性)
feedback_*.md 中期 低〜中 ユーザー指摘・好みのパターン

判定基準: 機密レベル × 想定寿命 × 削除可能性 × 検索優先度

詳細は: ssot-guide 03 SSOT - 特性カタログ


💡 やさしい補足(初心者向け)