メインコンテンツまでスキップ

プロファイルとスコープの解決

プロファイルは、企業、チーム、個人のコンテキストごとにグローバルメモリのルートを分離します。クライアント、企業、個人のメモリが境界を越えて漏洩するのを防ぎます。

プロファイルの作成と切り替え

engram profile create personal --global-path ~/Documents/engram-personal --use
engram profile use company --workspace
engram profile merge personal company --dry-run

解決の順序

プロファイルの解決順序は以下の通りです:

  1. 明示的な --profile または ENGRAM_PROFILE
  2. ワークスペースの default_profile
  3. アクティブなユーザープロファイル

ユーザーのデフォルトがプロファイル A のまま、ワークスペース W がプロファイル B に固定されている場合、W に対する通常ロード、MCP ロード、およびエージェントフックの注入は、プロファイル B のグローバルメモリを読み取り、プロファイル A は決して読み取りません。ワークスペースのデフォルトと異なる明示的なプロファイルを指定すると、そのプロファイルのグローバルメモリが使用され、そのコマンドに対するワークスペースメモリは無効になります。

プロファイルを使用するタイミング

  • クライアントのリポジトリに絶対に含めてはならない個人メモリ
  • 個人のリポジトリに絶対に含めてはならない企業のメモリ
  • 複数の案件にまたがって活動するコンサルタントのためのクライアント分離メモリ
  • 個々の実験に混入してはならないチーム共有メモリ

SQLite 設定 DB へのフォールバック

Engram の SQLite 設定 DB は、ワークスペース/プロファイル管理のための最適化です。DB をオープンまたは初期化できない場合、通常の読み取り/書き込みコマンドは JSON 設定のスナップショットにフォールバックします。DB 固有のコマンドは、通常のメモリ使用をブロックする代わりに SQLite が利用不可であることを報告します。

次のステップ