設定リファレンス
kanade サービスは、TOML ファイル、環境変数、またはレジストリパスから読み込まれる構造化された設定に依存しています。
1. エージェント設定
エージェントは KANADE_AGENT_CONFIG 環境変数を介して設定を検索し、存在しない場合はネイティブパスにフォールバックします。
開発用設定 (configs/agent.dev.toml)
# 開発用設定スキーマ
[agent]
id = "dev-pc"
nats_url = "nats://localhost:4223"
data_dir = "target/dev-data/agent"
[log]
level = "debug"
file = "target/dev-data/agent/logs/agent.log"
設定パラメータ
| フィールド | 型 | 説明 | 環境変数による上書き |
|---|---|---|---|
agent.id | String | ユニークなハードウェア識別子 (pc_id)。 | KANADE_DEV_AGENT_ID (テンプレート化) |
agent.nats_url | String | NATS ブローカー of ネットワークアドレス。 | KANADE_NATS_URL |
agent.data_dir | Path | 送信トレイのスクリプト、状態データベース、およびローカルの補完データをキャッシュするルートパス。 | KANADE_AGENT_DATA_DIR |
log.level | String | ログ出力レベルの冗長度 (error, warn, info, debug, trace)。 | RUST_LOG |
log.file | Path | ローリングログの書き出し先ファイルパス。 | - |
2. バックエンド設定
バックエンドの調整レイヤーは KANADE_BACKEND_CONFIG で指定されたファイルから設定を取得し、指定がない場合はデフォルトの構造体を登録します。
開発用設定 (configs/backend.dev.toml)
[backend]
listen_addr = "127.0.0.1:8081"
nats_url = "nats://localhost:4223"
database_url = "sqlite://target/dev-data/backend/state.db"
[auth]
# 認証設定
設定パラメータ
| フィールド | 型 | 説明 | 環境変数による上書き |
|---|---|---|---|
backend.listen_addr | String | HTTP/WebSocket トラフィック用のネットワークバインド文字列。 | KANADE_BIND_ADDR |
backend.nats_url | String | 対象とする NATS ブローカーの URL。 | KANADE_NATS_URL |
backend.database_url | String | SQLite データベースへの接続文字列。 | DATABASE_URL |
auth.disable | Boolean | オペレーターのトークン検証を無効にするには true を設定します (開発環境でのみ有効)。 | KANADE_AUTH_DISABLE |
3. Windows レジストリ統合
本番環境では、セキュリティに敏感なトークン(NATS クライアントトークンや管理用 API ベアラートークンなど)は、プレーンテキストファイルではなく、保護された Windows レジストリに保存されます。
キーパス
- エージェント設定:
HKLM:\SOFTWARE\Kanade\agent - バックエンド設定:
HKLM:\SOFTWARE\Kanade\backend
これらのレジストリパスはローカルの ACL 設定で保護されており、SYSTEM および指定されたオペレーターにのみ読み取り権限が厳密に制限されます。