ランタイムモデル
TUI、プロバイダー、ツール、メモリ、補助サービスの責任分担を確認します。
一つの対話プロセス
通常の q プロセスは選択中のワークスペースセッション一つを所有し、ターミナル UI、現在のモデルターン、アクティブなエージェント、対話のライフサイクルを調整します。
非公開のループバックエンドポイント上で管理対象 Gateway 子プロセスも監督します。プロバイダー設定は保存済みワークスペース状態とプロセス寿命を結び付けずに置き換えられます。
ワークスペースランタイム
ファイルツールのルートは q を起動したディレクトリです。読み取りと編集にはパス検証と古い内容のアンカーチェックを使います。シェルコマンドはワークスペースから開始しますが、OS サンドボックスではありません。
任意の LSP セッションもルートに制限され、モデルからは読み取り専用です。q は診断、hover、定義、参照、シンボルを提供し、サーバーからの編集要求は拒否します。
永続サービス
q は永続状態の責任を分離します。
| コンポーネント | 責任 |
|---|---|
| Workspace Memory | タスク履歴、レコード、ワークスペース検索インデックス |
| Global Library | 共有スキル、proposition、判定キュー |
| Loom | 大きなツール結果の不変キャプチャ |
| Usage サービス | トークンイベント、集計、アーカイブ、ダッシュボードデータ |
通常の q プロセスは必要に応じてこれらのサービスを確保します。単独コマンドで TUI と独立して実行し続けることもできます。
境界が重要な理由
複数の q プロセスは選択中のチャットセッションやライブのプロバイダー会話を共有せずに永続サービスを共有できます。プロセスロックは一つのセッションを所有し、同じワークスペースの別セッションは並行実行できます。
派生インデックスは交換可能です。JSON レコードが正本で、Bleve と HNSW データは再構築できます。