設定リファレンス
ZeroClaw は TOML ファイルを通じて設定されます。特に記載がない限り、すべてのフィールドはオプションです。
| セクション | 説明 |
|---|---|
a2a | 将来の兄弟設定用の余地を残す A2A セクションラッパー。 |
acp | ACP(Agent Client Protocol)サーバー設定([acp] セクション)。 |
agents | このインストールでエイリアス設定されたエージェント。[agents.<alias>] 配下の各エントリ |
backup | バックアップツール設定 ([backup] セクション)。 |
browser | ブラウザ自動化設定 ([browser] セクション)。 |
browser_delegate | |
channels | トップレベルチャネル設定 ([channels] セクション)。 |
claude_code | Claude Code CLIツール設定 ([claude_code] セクション)。 |
claude_code_runner | Claude Codeタスクランナー設定 ([claude_code_runner] セクション)。 |
cloud_ops | 読み取り専用クラウド変換分析ツールを制御します。 |
codex_cli | Codex CLIツール設定 ([codex_cli] セクション)。 |
composio | Composio マネージドOAuthツール統合 ([composio] セクション)。 |
conversational_ai | 会話型AIエージェントビルダー設定 ([conversational_ai] セクション)。 |
cost | コスト追跡と予算強制設定 ([cost] セクション)。 |
cron | 宣言的 cron ジョブ([cron.<alias>])、エイリアスをキーとする。 |
data_retention | データ保持とパージ設定 ([data_retention] セクション)。 |
delegate | デフォルトのタイムアウト値のグローバルデリゲートツール設定。 |
embedding_routes | 埋め込みルーティングルール — hint:<name> を特定のものにルーティング |
enroll | 証明書登録エンドポイント([enroll])。 |
escalation | エスカレーションルーティングの設定([escalation] セクション)。 |
eval | エージェント評価ハーネス([eval])の設定。 |
file_download | スタンドアロンファイルダウンロードツールの設定([file_download])。 |
file_upload | スタンドアロンファイルアップロードツールの設定 ([file_upload])。 |
file_upload_bundle | スタンドアロンのマルチファイルバンドルアップロードツールの設定 |
gateway | ゲートウェイサーバー設定 ([gateway] セクション)。 |
gemini_cli | Gemini CLIツール設定 ([gemini_cli] セクション)。 |
google_workspace | Google Workspace CLI (gws) ツール設定 ([google_workspace] セクション)。 |
hardware | 物理世界とのインタラクション用のウィザード駆動型ハードウェア設定。 |
heartbeat | 定期的なヘルスピング用のハートビート設定 ([heartbeat] セクション)。 |
hooks | |
http_request | HTTPリクエストツール設定 ([http_request] セクション)。 |
image_gen | スタンドアロン画像生成ツール設定 ([image_gen])。 |
jira | Jira統合設定 ([jira])。 |
knowledge | 専門知識の取得と再利用のためのナレッジグラフ設定。 |
knowledge_bundles | 名前付きナレッジバンドル([knowledge_bundles.<alias>])。 |
link_enricher | インバウンドチャネルメッセージの自動リンク理解([link_enricher])。 |
linkedin | LinkedIn統合設定([linkedin]セクション)。 |
locale | ツール説明用のロケール(例:"en"、"zh-CN")。 |
mcp | 外部MCPクライアント設定([mcp]セクション)。 |
mcp_bundles | 名前付きMCPサーバーバンドル([mcp_bundles.<alias>])。 |
media_pipeline | 自動メディア理解パイプライン設定([media_pipeline])。 |
memory | メモリバックエンド設定 ([memory] セクション)。 |
microsoft365 | Microsoft Graph API経由のMicrosoft 365統合([microsoft365]セクション)。 |
model_routes | モデルルーティングルール — hint:<name> を特定のものにルーティング |
multimodal | マルチモーダル(画像)処理設定([multimodal]セクション)。 |
nodes | 動的ノード検出システムの設定([nodes])。 |
notion | Notion統合設定([notion])。 |
observability | 可観測性バックエンド設定([observability]セクション)。 |
onboard_state | マルチクライアントワークスペース分離設定。 |
opencode_cli | OpenCode CLIツール設定([opencode_cli]セクション)。 |
pacing | 低速/ローカルLLMワークロード用のペーシング制御([pacing]セクション)。 |
peer_groups | 名前付きピアグループ([peer_groups.<name>])。各エントリは |
peripherals | 周辺機器ボード統合設定([peripherals]セクション)。 |
pipeline | パイプラインツール設定([pipeline]セクション)。 |
plugins | プラグインシステム設定。 |
project_intel | プロジェクト配信インテリジェンス設定([project_intel]セクション)。 |
providers | 設定済みの各プロバイダーカテゴリ用のトップレベルラッパー。 |
proxy | アウトバウンドHTTP/HTTPS/SOCKS5トラフィック用のプロキシ設定([proxy]セクション)。 |
query_classification | 自動クエリ分類 — キーワード/パターンでユーザーメッセージを分類します。 |
relay | 指定リレー クライアント([relay])。 |
reliability | 信頼性と監督設定([reliability]セクション)。 |
risk_profiles | 名前付きのリスク/自律性プロファイル ([risk_profiles.<alias>])。 |
runtime | ランタイムアダプター設定([runtime]セクション)。 |
runtime_profiles | 名前付きランタイム/LLM実行プロファイル([runtime_profiles.<alias>])。 |
scheduler | 定期的なタスク実行用スケジューラー設定([scheduler]セクション)。 |
schema_version | 設定ファイルのスキーマバージョン。 |
secrets | シークレット暗号化設定 ([secrets] セクション)。 |
security | 監査ログ、OTP、非常停止、IAM/SSO、WebAuthn のセキュリティ設定、 |
security_ops | マネージドサイバーセキュリティサービス (MCSS) ダッシュボードエージェント設定 ([security_ops])。 |
shell_tool | シェルツール設定 ([shell_tool] セクション)。 |
skill_bundles | 名前付きスキルバンドル([skill_bundles.<alias>])。 |
skills | スキル読み込み設定 ([skills] セクション)。 |
sop | 標準操作手順エンジン設定 ([sop])。 |
storage | 永続ストレージ設定 ([storage] セクション)。 |
text_browser | テキストブラウザツール設定 ([text_browser] セクション)。 |
transcription | マルチプロバイダー対応の音声文字起こし設定。 |
trust | |
tts | Text-to-Speech サブシステムの構成([tts])。 |
tunnel | ゲートウェイを公開するためのトンネル設定 ([tunnel] セクション)。 |
verifiable_intent | Verifiable Intent (VI) クレデンシャルの発行と制約チェック |
web_fetch | Webフェッチツール設定 ([web_fetch] セクション)。 |
web_search | Web検索ツール設定 ([web_search] セクション)。 |
wss | WebSocket Secure (WSS) トランスポート (リモートの TUI からデーモンへの接続用) ([wss])。 |
a2a
将来の兄弟設定用の余地を残す A2A セクションラッパー。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
server | オブジェクト | — | 受信 A2A ディスカバリーサーバーの構成。 |
a2a.server
受信 A2A ディスカバリーサーバーの構成。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
bind | string? | — | カードエンドポイントURL用のオプションのアドバタイズのみホストオーバーライド。The |
enabled | ブール値 | false | インバウンドA2Aサーフェスのマスタースイッチ。デフォルト false: いいえ |
port | integer? | — | オプションのアドバタイズ専用ポートのオーバーライド。bind と対になる。None |
public_base_url | string | "" | エージェントカードのエンドポイントに示される、オペレーター指定のベース URL。 |
acp
ACP(Agent Client Protocol)サーバー設定([acp] セクション)。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
default_agent | string? | — | session/new で agentAlias が省略され、複数存在する場合に使用するエージェントエイリアス |
max_sessions | 整数 | 10 | 同時に実行できる ACP セッションの最大数。デフォルト: 10。 |
session_timeout_secs | 整数 | 3600 | この秒数の間アクティビティのないセッションのアイドルセッションタイムアウト(秒単位)。 |
agents
このインストールにおけるエイリアス付きエージェント。[agents.<alias>] 配下の各エントリは、独自のアイデンティティ、チャンネル、モデルプロバイダー、リスクプロファイル、ワークスペース、メモリスコープを持つ、ユーザー向けエージェント1つを表します。DelegateTool は、あるエージェントが別のエージェントにサブタスクを委任する際に、このマップを参照します。
agents.<alias>
エイリアス付きエージェントの設定。各 [agents.<alias>] TOML ブロックはこれらのいずれかにデシリアライズされます。DelegateTool は、名前付きの兄弟エージェントにサブタスクをディスパッチするために、ここにあるエントリを検索します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
a2a | オブジェクト | — | エージェントごとの A2A 公開および公開スキルの設定。 |
acp_enable_mcp | ブール値 | false | このエージェントが ACP を提供するときに、このエージェントの mcp_bundles ツールを初期化する |
channels | string[] | [] | このエージェントが処理するチャネルエイリアス(例: ["telegram.<alias>", "discord.<alias>"])。 |
classifier_provider | string | — | 設定済みの [providers.models.<type>.<alias>] エントリへの参照。 |
cron_jobs | string[] | [] | Cronジョブのエイリアス。各エントリは cron[key] を参照し、宣言的な |
delegate_same_risk_profile | ブール値 | true | このエージェントのリスクを共有するすべてのエージェントへの委任を自動許可 |
delegates | object[] | [] | 明示的デリゲート名簿: このエージェントが使用できる追加のエージェントエイリアス |
enabled | ブール値 | true | このエージェントが有効かどうか。定義を削除せずに無効にするには false に設定します。 |
identity | オブジェクト | — | アイデンティティ形式の設定 ([identity] セクション)。 |
knowledge_bundles | string[] | [] | ナレッジバンドルのエイリアス。追加的: エージェントはリストされたすべてを読み込みます |
mcp_bundles | string[] | [] | MCP バンドルエイリアス。各エントリは mcp_bundles[key] を参照します。名前付き |
memory | オブジェクト | — | エージェントごとのメモリバックエンドの選択とその永続化契約。 |
model_provider | string | — | 設定済みの [providers.models.<type>.<alias>] エントリへの参照。 |
precheck | オブジェクト | — | チャンネルごとの返信インテント事前チェック設定。 |
risk_profile | string | — | 設定済みの [risk_profiles.<type>.<alias>] エントリへの参照。 |
runtime_profile | string | — | 設定済みの [runtime_profiles.<type>.<alias>] エントリへの参照。 |
skill_bundles | string[] | [] | スキルバンドルのエイリアス。各エントリは次のように解決されます |
summary_provider | string | — | 設定済みの [providers.models.<type>.<alias>] エントリへの参照。 |
transcription_provider | string | — | 設定済みの [providers.transcription.<type>.<alias>] エントリへの参照。 |
tts_provider | string | — | 設定された [providers.tts.<type>.<alias>] エントリへの参照。 |
workspace | オブジェクト | — | エージェントごとのワークスペースおよびエージェント間アクセスの設定。 |
agents.<alias>.a2a
エージェントごとの A2A 公開および公開スキルの設定。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
exposed_skills | string[] | [] | このエイリアスに表示される解決済みスキル ID を選択するフィルター |
published | ブール値 | false | このエイリアスを検出可能なA2Aエージェントとして公開します。デフォルトはfalse: |
agents.<alias>.identity
アイデンティティ形式の設定 ([identity] セクション)。
"openclaw"(デフォルト)または "aieos" のアイデンティティドキュメントをサポートします。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
aieos_inline | string? | null | インライン AIEOS JSON(ファイルパスの代替) |
aieos_path | string? | null | AIEOS JSON ファイルへのパス(ワークスペースからの相対パス) |
format | string | "openclaw" | アイデンティティ形式: 「openclaw」(デフォルト)または「aieos」 |
agents.<alias>.memory
エージェントごとのメモリバックエンドの選択とその永続化契約。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
backend | table | — | エージェントが使用するメモリバックエンドを選択します。 |
agents.<alias>.precheck
チャンネルごとの返信インテント事前チェック設定。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | true | falseの場合、このエージェントではプリチェックが完全にスキップされ、すべて |
timeout_secs | 整数 | 5 | precheck LLM 呼び出しのハード上限(秒)。タイムアウト時に |
agents.<alias>.workspace
エージェントごとのワークスペースおよびエージェント間アクセスの設定。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
access | map | {} | エージェント間のワークスペース許可リスト。空のマップは兄弟へのアクセスを許可しません。 |
path | string? | — | オプションの明示的なワークスペースパス。None = から導出 |
read_memory_from | string[] | [] | エージェント間メモリの許可リスト。空のリストの場合、ローカルメモリへのアクセスのみが許可されます。 |
unrestricted_filesystem | ブール値 | false | エスケープハッチ: true の場合、エージェントはどこでも読み書きできます |
backup
バックアップツール設定 ([backup] セクション)。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
compress | ブール値 | true | バックアップアーカイブを圧縮します。 |
destination_dir | string | "state/backups" | バックアップアーカイブの出力ディレクトリ(ワークスペースルートからの相対パス)。 |
enabled | ブール値 | true | backupツールを有効にします。 |
encrypt | ブール値 | false | バックアップアーカイブを暗号化します(設定されたシークレットストアキーが必要です)。 |
include_dirs | string[] | ["config","memory","audit","knowledge"] | バックアップに含めるワークスペースサブディレクトリ。 |
max_keep | 整数 | 10 | 保持するバックアップの最大数(古いものは削除されます)。 |
schedule_cron | string? | null | スケジュール自動バックアップ用のオプションのcron式。 |
schedule_timezone | string? | null | schedule_cron用のIANAタイムゾーン。 |
browser
ブラウザ自動化設定 ([browser] セクション)。
browser_openツールとブラウザオートメーションバックエンドを制御します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
allowed_domains | string[] | ["*"] | browser_openで許可されるドメイン(完全一致またはサブドメイン一致) |
allowed_private_hosts | string[] | [] | SSRF保護をバイパスすることが許可されたプライベート/内部ホスト。 |
backend | string | "agent_browser" | ブラウザオートメーションバックエンド: “agent_browser” | “rust_native” | “computer_use” | “auto” |
computer_use | オブジェクト | — | コンピュータユース サイドカー設定([browser.computer_use]セクション)。 |
enabled | ブール値 | true | browser_openツールを有効にします(スクレイピングなしでシステムブラウザでURLを開きます) |
headed | bool? | null | agent_browser バックエンドのブラウザウィンドウを表示します。未設定の場合は AGENT_BROWSER_HEADED を継承します。 |
native_chrome_path | string? | null | rust-nativeバックエンド用のオプションのChrome/Chromiumの実行ファイルパス |
native_headless | ブール値 | true | rust-nativeバックエンド用のヘッドレスモード |
native_webdriver_url | string | "http://127.0.0.1:9515" | rust-nativeバックエンド用のWebDriverエンドポイントURL(例: http://127.0.0.1:9515) |
session_name | string? | null | ブラウザセッション名(エージェントブラウザオートメーション用) |
browser.computer_use
コンピュータユース サイドカー設定([browser.computer_use]セクション)。
OS レベルのマウス、キーボード、スクリーンショット操作をローカルサイドカーに委譲します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
allow_remote_endpoint | ブール値 | false | コンピュータユース サイドカー用のリモート/パブリックエンドポイントを許可します(デフォルト: false) |
api_key 🔑 | string? | null | コンピュータユース サイドカー用のオプションのベアラートークン |
endpoint | string | "http://127.0.0.1:8787/v1/actions" | コンピュータユースアクション用のサイドカーエンドポイント(OS レベルのマウス/キーボード/スクリーンショット) |
max_coordinate_x | integer? | null | 座標ベースのアクションのオプションのX軸境界 |
max_coordinate_y | integer? | null | 座標ベースのアクションのオプションのY軸境界 |
timeout_ms | 整数 | 15000 | アクションごとのリクエストタイムアウト(ミリ秒) |
window_allowlist | string[] | [] | サイドカーポリシーに転送されるオプションのウィンドウタイトル/プロセスアローリスト |
browser_delegate
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
allowed_domains | string[] | [] | |
blocked_domains | string[] | [] | |
chrome_profile_dir | string | "" | |
cli_binary | string | "claude" | |
enabled | ブール値 | false | |
task_timeout_secs | 整数 | 120 |
channels
トップレベルチャネル設定 ([channels] セクション)。
各チャネルタイプは、名前付きインスタンス(エイリアス)のキー付きテーブルです。[channels.telegram.default] が従来からの単一インスタンスのキーです。config.channels.telegram.get("default") を介してアクセスします。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
ack_reactions | ブール値 | true | 確認応答リアクションを追加するかどうか(受信時に👀、完了時に✅/⚠️ |
amqp | map | — | AMQP チャネルインスタンス ([channels.amqp.<alias>])。 |
bluesky | map | — | Bluesky チャンネルインスタンス([channels.bluesky.<alias>])。 |
clawdtalk | map | — | ClawdTalk音声チャンネルインスタンス([channels.clawdtalk.<alias>])。 |
cli | ブール値 | true | CLIインタラクティブチャネルを有効にします。デフォルト:true。 |
debounce_ms | 整数 | 0 | インバウンドメッセージのデバウンスウィンドウ(ミリ秒)。送信者が |
dingtalk | map | — | DingTalk チャネルインスタンス([channels.dingtalk.<alias>])。 |
discord | map | — | Discord ボットのチャンネルインスタンス([channels.discord.<alias>])。 |
email | map | — | メールチャネルのインスタンス([channels.email.<alias>])。 |
filesystem | map | — | Filesystem SOP リスナーインスタンス ([channels.filesystem.<alias>])。 |
git | map | — | Git-forge チャネルインスタンス ([channels.git.<alias>])。GitHub は |
gmail_push | map | — | Gmail Pub/Sub プッシュ通知チャネルインスタンス ([channels.gmail_push.<alias>])。 |
imessage | map | — | iMessage チャネルインスタンス([channels.imessage.<alias>]、macOS のみ)。 |
irc | map | — | IRC チャンネルインスタンス ([channels.irc.<alias>])。 |
lark | map | — | Lark チャンネルインスタンス([channels.lark.<alias>])。 |
line | map | — | LINE Messaging API チャネルインスタンス ([channels.line.<alias>])。 |
linq | map | — | Linq Partner API チャネルインスタンス([channels.linq.<alias>])。 |
matrix | map | — | Matrix チャンネルインスタンス ([channels.matrix.<alias>])。 |
mattermost | map | — | Mattermost ボットのチャンネルインスタンス([channels.mattermost.<alias>])。 |
max_concurrent_per_channel | 整数 | 4 | グローバルチャネルメッセージのインフライト予算に対するチャネルごとの乗数。 |
message_timeout_secs | 整数 | 300 | 単一チャネルメッセージ処理のベースタイムアウト(秒)(LLM + ツール)。 |
mochat | map | — | Mochat カスタマーサービスチャネルインスタンス([channels.mochat.<alias>])。 |
mqtt | map | — | MQTT チャネルインスタンス ([channels.mqtt.<alias>])。 |
nextcloud_talk | map | — | Nextcloud Talk ボットチャンネルインスタンス ([channels.nextcloud_talk.<alias>])。 |
nostr | map | — | |
plugin | map | — | WASM チャネルプラグインインスタンス([channels.plugin.<alias>])。 |
qq | map | — | QQ Official Botチャンネルのインスタンス([channels.qq.<alias>])。 |
reddit | map | — | Reddit チャンネルインスタンス([channels.reddit.<alias>])。 |
session_backend | string | "sqlite" | セッション永続化バックエンド: "jsonl" (レガシー) または "sqlite" (新規デフォルト)。 |
session_persistence | ブール値 | true | チャネル会話履歴をJSONLファイルに永続化し、セッションが存続するようにします |
session_ttl_hours | 整数 | 0 | この時間数より古いスタッシュセッションを自動アーカイブします。0 は無効化します。デフォルト: 0。 |
show_tool_calls | ブール値 | false | ツール呼び出し通知メッセージを送信するかどうか(例:🔧 web_search_tool: …) |
signal | map | — | Signalチャンネルのインスタンス([channels.signal.<alias>])。 |
slack | map | — | Slack ボットチャンネルインスタンス([channels.slack.<alias>])。 |
telegram | map | — | Telegram ボットチャネルインスタンス([channels.telegram.<alias>])。 |
twitch | map | — | Twitch チャットチャンネルインスタンス ([channels.twitch.<alias>])。 |
twitter | map | — | X/Twitter チャンネルインスタンス ([channels.twitter.<alias>])。 |
voice_call | map | — | ボイスコールチャネルインスタンス([channels.voice_call.<alias>])。 |
voice_duplex | map | — | 音声二重通信インスタンス([channels.voice_duplex.<alias>])。 |
voice_wake | map | — | 音声ウェイクワード検出チャンネルのインスタンス([channels.voice_wake.<alias>])。 |
webhook | map | — | Webhook チャネルインスタンス([channels.webhook.<alias>])。 |
wechat | map | — | WeChat 個人 iLink Bot チャネルインスタンス([channels.wechat.<alias>])。 |
wecom | map | — | WeCom(WeChat Enterprise)Bot Webhookチャネルインスタンス([channels.wecom.<alias>])。 |
wecom_ws | map | — | WeCom AI Bot WebSocket チャネルインスタンス([channels.wecom_ws.<alias>])。 |
whatsapp | map | — | WhatsApp チャネルインスタンス([channels.whatsapp.<alias>])。 |
claude_code
Claude Code CLIツール設定 ([claude_code] セクション)。
claude -p CLIにコーディングタスクを委譲します。認証はバイナリ独自のOAuthセッション(Max subscription)をデフォルトで使用します — env_passthroughにANTHROPIC_API_KEYが含まれない限り、APIキーは不要です。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
allowed_tools | string[] | ["Read","Edit","Bash","Write"] | サブプロセスが使用を許可されたClaude Codeツール |
enabled | ブール値 | false | claude_codeツールを有効化 |
env_passthrough | string[] | [] | claudeサブプロセスに渡される追加環境変数(例:APIキー課金用のANTHROPIC_API_KEY) |
max_output_bytes | 整数 | 2097152 | 最大出力サイズ(バイト単位、デフォルト:2MB) |
system_prompt | string? | null | Claude Code呼び出しに追加されるオプションのシステムプロンプト |
timeout_secs | 整数 | 600 | 最大実行時間(秒単位、コーディングタスクは長時間になる場合があります) |
claude_code_runner
Claude Codeタスクランナー設定 ([claude_code_runner] セクション)。
Claude CodeをtmuxセッションでHTTPフックと共に起動し、ツール実行イベントをZeroClawのゲートウェイにPOSTして戻し、進捗とSSHハンドオフリンク付きでSlackメッセージをその場で更新します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | false | claude_code_runnerツールを有効化 |
session_ttl | 整数 | 3600 | 自動クリーンアップ前のセッション有効期限(秒単位、デフォルト:3600) |
ssh_host | string? | null | セッションハンドオフリンク用のSSHホスト(例:“myhost.example.com”) |
tmux_prefix | string | "zc-claude-" | tmuxセッション名のプレフィックス(デフォルト:“zc-claude-”) |
cloud_ops
読み取り専用クラウド変換分析ツール(IaCレビュー、移行評価、コスト分析、アーキテクチャレビュー)を制御します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
cost_threshold_monthly_usd | number | 100.0 | コスト項目にフラグを付けるための月額USD閾値。デフォルト:100.0。 |
default_cloud | string | "aws" | 分析コンテキストのデフォルトクラウド model_provider。デフォルト: “aws”。 |
enabled | ブール値 | false | クラウド操作ツールを有効化。デフォルト:false。 |
iac_tools | string[] | ["terraform"] | レビュー対象のサポート対象IaCツール。デフォルト:[terraform]。 |
supported_clouds | string[] | ["aws","azure","gcp"] | サポートされているクラウド model_providers。デフォルト: [aws, azure, gcp]。 |
well_architected_frameworks | string[] | ["aws-waf"] | 確認対象のWell-Architected Frameworks。デフォルト: [aws-waf]。 |
codex_cli
Codex CLIツール設定 ([codex_cli] セクション)。
コーディングタスクを codex exec CLI に委譲します。認証はデフォルトでバイナリ自身のセッションを使用します。env_passthrough に OPENAI_API_KEY を含めない限り、API キーは不要です。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | false | codex_cliツールを有効化 |
env_passthrough | string[] | [] | codexサブプロセスに渡される追加の環境変数(例:OPENAI_API_KEY) |
extra_args | string[] | [] | プロンプトの前に codex exec に追加される追加の CLI 引数です。 |
max_output_bytes | 整数 | 2097152 | 最大出力サイズ(バイト単位、デフォルト:2MB) |
timeout_secs | 整数 | 600 | 最大実行時間(秒単位、コーディングタスクは長時間になる場合があります) |
composio
Composio マネージドOAuthツール統合 ([composio] セクション)。
Composioプラットフォーム経由で1000以上のOAuth接続ツールへのアクセスを提供します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
api_key 🔑 | string? | null | Composio APIキー(secrets.encrypt = trueの場合、暗号化して保存) |
enabled | ブール値 | false | 1000以上のOAuthツール向けComposio統合を有効化 |
entity_id | string | "default" | マルチユーザーセットアップのデフォルトエンティティID |
conversational_ai
会話型AIエージェントビルダー設定 ([conversational_ai] セクション)。
ステータス: 今後の使用のために予約されています。 この設定は解析されますが、ランタイムではまだ使用されていません。enabled = trueを設定するとスタートアップ警告が表示されます。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
analytics_enabled | ブール値 | false | 会話分析トラッキングを有効化。デフォルト: false(デフォルトでプライバシー重視)。 |
auto_detect_language | ブール値 | true | メッセージコンテンツからユーザー言語を自動検出。デフォルト: true。 |
conversation_timeout_secs | 整数 | 1800 | 会話タイムアウト(秒単位、無活動時)。デフォルト: 1800。 |
default_language | string | "en" | 会話のデフォルト言語(BCP-47タグ)。デフォルト: “en”。 |
enabled | ブール値 | false | 会話型AI機能を有効化。デフォルト: false。 |
escalation_confidence_threshold | number | 0.3 | この閾値未満のインテント信頼度がエスカレーションをトリガー。デフォルト: 0.3。 |
knowledge_base_tool | string? | null | 会話中のRAGベース知識ベース検索用のオプショナルツール名。 |
max_conversation_turns | 整数 | 50 | 自動終了前の最大会話ターン数。デフォルト: 50。 |
supported_languages | string[] | ["en","de","fr","it"] | 会話でサポートされている言語。デフォルト: [en, de, fr, it]。 |
cost
コスト追跡と予算強制設定 ([cost] セクション)。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
allow_override | ブール値 | false | --overrideフラグでリクエストが予算を超過することを許可(デフォルト: false) |
daily_limit_usd | number | 10.0 | 日次支出上限(USD単位、デフォルト: 10.00) |
enabled | ブール値 | true | コスト追跡を有効化(デフォルト: true) |
enforcement | オブジェクト | — | 予算上限に達した場合のコスト実施動作の設定。 |
monthly_limit_usd | number | 100.0 | 月次支出上限(USD単位、デフォルト: 100.00) |
rates | オブジェクト | — | [cost.rates] — トップレベルのレートシート名前空間。これは以下を反映します |
track_per_agent | ブール値 | true | 各コストエントリの記録時に、発生元のエージェントエイリアスを刻印します |
warn_at_percent | 整数 | 80 | 支出がこのパーセンテージの制限に達したときに警告します(デフォルト: 80) |
cost.enforcement
予算上限に達した場合のコスト実施動作の設定。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
mode | string | "warn" | 実行モード: “warn”、“block”、または “route_down”。 |
reserve_percent | 整数 | 10 | 重要な操作のためにバジェットのこのパーセンテージを予約します。 |
route_down_model | string? | null | バジェットを超過した場合にルーティングするモデルのヒント(“route_down” モードで使用)。 |
cost.rates
[cost.rates] — トップレベルのレートシート名前空間。[providers.*] の構造を反映しており、ここの各サブセクションは、対応する [providers.*] が設定するリソースと同じ種類のリソースを指します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
providers | オブジェクト | — | [cost.rates.providers.*] — プロバイダー形式のレートシート。各フィールド |
tools | map | {} | [cost.rates.tools.<name>] — ツールごとの呼び出し単位のレート |
cost.rates.providers
[cost.rates.providers.*] — プロバイダー形式のレートシート。ここの各フィールドは、末尾のエイリアスセグメントをレートが価格付けするリソースに置き換えたうえで、[providers.*] 上の対応するフィールドを反映します。内部の型付きラッパーは、プロバイダータイプごとのスロットレイアウトを保持し、ディスパッチを自前で行います(そのスロットリストが唯一の信頼できる情報源であり、[crate::providers] 内の for_each_*_provider_slot! マクロを介してプロバイダー側のカウンターパートと共有されます)。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
models | オブジェクト | — | [cost.rates.providers.models.<type>.<model>] — トークンコストのレート |
transcription | オブジェクト | — | cost.rates.providers.transcription.<type>.<model> |
tts | オブジェクト | — | cost.rates.providers.tts.<type>.<voice> |
cron
宣言的 cron ジョブ([cron.<alias>])、エイリアスをキーとする。
各エントリは、スケジューラー起動時にデータベースへ同期される名前付きのスケジュールジョブです。サブシステムのランタイム設定(有効化/無効化、キャッチアップ、実行履歴の保持)は [scheduler] で管理されます。
cron.<alias>
宣言的な cron ジョブ定義 ([cron.<alias>])。
Config.cron にエイリアスキーで格納されます。マップキーは安定したジョブ ID として機能します。スケジューラの起動時に source = "declarative" としてデータベースに同期され、CLI や API を通じて手続き的に作成されたジョブと区別されます。宣言的な設定は各同期時に優先されます。つまり、設定が変更されると、DB はそれに合わせて更新されます。手続き的なジョブが同期によって削除されることはありません。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
allowed_tools | string[]? | null | エージェントジョブ用ツール名のオプションの許可リスト。省略した場合、スケジューラ |
command | string? | null | 実行するシェルコマンド(job_type = "shell" の場合は必須)。 |
delivery | オブジェクト | — | 宣言的 cron ジョブのデリバリー設定。 |
enabled | ブール値 | true | ジョブが有効かどうか。デフォルト: true。 |
job_type | string | "shell" | ジョブタイプ: "shell" (デフォルト) または "agent"。 |
model | string? | null | エージェントジョブ用のモデルオーバーライド |
name | string? | null | 人間が読みやすい名前。 |
prompt | string? | null | エージェントプロンプト(job_type = "agent" の場合に必須)。 |
schedule | table | — | 宣言的な cron ジョブ用のスケジュールバリアント。 |
session_target | string? | null | セッションターゲット: "isolated"(デフォルト)または "main"。 |
shell_output_format | table | — | シェル cron ジョブの標準出力の形式。 |
uses_memory | ブール値 | true | このエージェントジョブの実行前にメモリコンテキストを呼び出して注入するかどうか。 |
cron.<alias>.delivery
宣言的 cron ジョブのデリバリー設定。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
best_effort | ブール値 | true | ベストエフォート配信。デフォルト: true。 |
channel | string? | null | 配信先のチャネルを、<type>.<alias> の形式で指定します(例: |
mode | string | "none" | 配信モード: "none" または "announce"。 |
thread_id | string? | — | アウトバウンド送信に引き継がれるオプションのスレッド/会話識別子。 |
to | string? | null | ターゲット/受信者の識別子。 |
data_retention
データ保持とパージ設定 ([data_retention] セクション)。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
categories | string[] | [] | 特定のデータカテゴリへの保持期間実行制限(空 = すべて)。 |
dry_run | ブール値 | false | 実際に削除せずに削除される内容をプレビューします。 |
enabled | ブール値 | false | data_management ツールを有効にします。 |
retention_days | 整数 | 90 | パージ対象となる前に保持するデータ日数。 |
delegate
デフォルトのタイムアウト値のグローバルデリゲートツール設定。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
agentic_timeout_secs | 整数 | 300 | エージェント型サブエージェント実行のデフォルトタイムアウト(秒)。 |
timeout_secs | 整数 | 120 | 非エージェント型サブエージェントの model_provider 呼び出しのデフォルトタイムアウト(秒)。 |
embedding_routes
Embedding-routing ルール — 埋め込みリクエストの hint:<name> を特定の model_provider + model の組み合わせにルーティングします。
enroll
証明書登録エンドポイント([enroll])。
専用で用途を厳密に限定したブートストラップ用エンドポイントで、certless クライアントが初回の証明書を取得するためにアクセスします。サーバー認証 TLS(デーモンが自身を証明し、クライアントはペアリング用の短い認証文字列を介して CA を確認します)に、ペアリングコードによるゲートを加えたものです。受け付ける操作は CSR の送信だけで、署名済み証明書、CA チェーン、リレープロファイルを返します。これは常に mTLS を使用する RPC プレーンのフォールバックではありません(そのプレーンは常に相互認証され、セキュリティを弱められる経路はありません)。独自の認証モデルを持つ、別個の最小限のエンドポイントです。CA はデーモンが管理するため、このエンドポイントはゲートウェイなしで動作します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
allow_unpaired_enrollment | string | "" | 将来の移行フロー用に予約されています。最初の FOSS リリースでは、いかなるものも拒否します。 |
bind | string | "0.0.0.0" | 登録エンドポイントがバインドするアドレス。 |
enabled | ブール値 | false | 登録エンドポイントを有効にします(デフォルト: false)。[wss] を有効にする必要があります |
port | 整数 | 9782 | 登録エンドポイントが待ち受けるポート。 |
escalation
エスカレーションルーティングの設定([escalation] セクション)。
escalate_to_human が高または重大な緊急度で呼び出されたときに、どのチャネルがアラート通知を受け取るかを制御します。チャネルは名前(例: "telegram"、"slack")で識別されます。アラートはベストエフォートで送信され、エスカレーションをブロックしません。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
alert_channels | string[] | [] | エスカレーションが high/critical のときに通知するチャンネル名(デフォルト: 空)。 |
eval
エージェント評価ハーネス([eval])の設定。zeroclaw eval コマンドで利用できます。[agent.eval](ループ内で応答品質を評価するスコアラー)とは異なります。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
mode | string | "replay" | --mode が省略された場合に使用されるデフォルトの実行モード (replay または live)。 |
suite_dir | string | "evals" | --suite が省略された場合に使用される *.json トレースフィクスチャのデフォルトディレクトリ。 |
file_download
スタンドアロンファイルダウンロードツールの設定([file_download])。
url が空でない値に設定されている場合、設定されたエンドポイントからファイルを GET し、エージェントのワークスペースファイルシステムに書き込む file_download ツールを登録します。LLM はドキュメント識別子とワークスペース相対の出力先パスのみを指定します。エンドポイント URL はこの設定からのみ取得され、モデルによって制御されることは決してありません。レスポンスのバイト列はディスクにストリーミングされ、モデルコンテキストに読み込まれることはありません。
url が None または空の場合、ツールは登録されません。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
headers 🔑 | map | {} | すべてのダウンロードリクエストに付加される静的なHTTPヘッダー — 通常は |
max_file_size_bytes | 整数 | 26214400 | ダウンロードの最大サイズ(バイト単位)。ストリーミング中に適用されます。転送 |
timeout_secs | 整数 | 120 | リクエストのタイムアウト(秒単位)。デフォルト: 120。 |
url | string? | null | ダウンロードエンドポイントの URL。これが None または空の場合、ツールは無効になります。 |
file_upload
スタンドアロンファイルアップロードツールの設定 ([file_upload])。
url が空でない値に設定されている場合、エージェントのローカルファイルシステムから設定されたエンドポイントへ multipart/form-data を使用してファイルを POST する file_upload ツールを登録します。LLM はファイルパスのみを提供し、ホストがバイトを読み取ってアップロードするため、ファイルの内容がモデルコンテキストに含まれることはありません。
url が None または空の場合、ツールは登録されません。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
field_name | string | "file" | ファイルパートのマルチパートフォームフィールド名。デフォルト: file。 |
headers 🔑 | map | {} | すべてのアップロードリクエストに付加される静的なHTTPヘッダー。同じ形状 |
max_file_size_bytes | 整数 | 26214400 | バイト単位の最大ファイルサイズ。これより大きいファイルは処理前に拒否されます |
method | string | "POST" | HTTPメソッド。POST(デフォルト)とPUTのみが受け付けられます。 |
timeout_secs | 整数 | 60 | リクエストのタイムアウト(秒)。デフォルト: 60。 |
url | string? | null | アップロードエンドポイントのURL。これがNoneまたは空の場合、ツールは無効になります。 |
file_upload_bundle
マルチファイルバンドルアップロードツールのスタンドアロン構成 ([file_upload_bundle])。
url が空でない値に設定されている場合、エージェントのローカルファイルシステムから N 個のファイルを、設定されたエンドポイントへ単一の multipart/form-data リクエストとして POST する file_upload_bundle ツールを登録します。LLM はファイルパスのみを提供し、ホストがバイト列を読み取ります。
url が None または空の場合、ツールは登録されません。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
field_name | string | "file" | すべてのファイルパートで再利用されるマルチパートフォームフィールド名。デフォルト: file。 |
headers 🔑 | map | {} | すべてのアップロードリクエストに付与される静的なHTTPヘッダー。 |
max_file_size_bytes | 整数 | 10485760 | ファイルごとの最大サイズ(バイト単位)。デフォルト: 10 MiB。 |
max_files | 整数 | 16 | 呼び出しごとの最大ファイル数。デフォルト: 16。 |
max_response_body_bytes | 整数 | 4096 | アップロードエンドポイントから読み取るレスポンスボディの最大バイト数。 |
max_total_size_bytes | 整数 | 33554432 | 1回の呼び出しにおける全ファイルの累積サイズの上限です。デフォルト: 32 MiB。 |
method | string | "POST" | HTTPメソッド。POST(デフォルト)とPUTのみが受け付けられます。 |
timeout_secs | 整数 | 120 | リクエストのタイムアウト(秒単位)。デフォルト: 120。 |
url | string? | null | アップロードエンドポイントのURL。これがNoneまたは空の場合、ツールは無効になります。 |
gateway
ゲートウェイサーバー設定 ([gateway] セクション)。
webhook およびペアリングエンドポイント用の HTTP ゲートウェイを制御します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
allow_public_bind | ブール値 | false | トンネルなしで localhost 以外へのバインディングを許可します(デフォルト: false) |
allow_remote_admin | ブール値 | false | 認証されたリモート呼び出し元が管理者向けエンドポイントを使用できるようにします |
allow_self_upgrade | ブール値 | false | zeroclaw update を使用したセルフアップグレード(バイナリの入れ替え)のトリガーを許可する |
check_updates | ブール値 | true | GitHub をポーリングして新しいリリースを確認し、「更新あり」インジケーターを表示する |
host | string | "127.0.0.1" | ゲートウェイホスト(デフォルト: 127.0.0.1) |
idempotency_max_keys | 整数 | 10000 | メモリに保持される最大の異なるべき等性キー数。 |
idempotency_ttl_secs | 整数 | 300 | webhook べき等性キーの TTL。 |
long_running_request_timeout_secs | 整数 | 600 | POST /api/cron/{id}/run の HTTP リクエストタイムアウト(秒)。これは |
pair_rate_limit_per_minute | 整数 | 10 | クライアントキーあたり 1 分間の最大 /pair リクエスト数。 |
paired_tokens 🔑 | string[] | [] | ペアリング済みベアラートークン(自動で管理され、ユーザーが編集しない) |
pairing_dashboard | オブジェクト | — | ペアリングダッシュボード設定([gateway.pairing_dashboard])。 |
path_prefix | string? | null | リバースプロキシデプロイメント用のオプション URL パスプレフィックス。 |
port | 整数 | 42617 | ゲートウェイポート(デフォルト: 42617) |
rate_limit_max_keys | 整数 | 10000 | ゲートウェイレート制限マップで追跡される最大の異なるクライアントキー数。 |
request_timeout_secs | 整数 | 30 | ゲートウェイルートの HTTP リクエストタイムアウト(秒)。ただし |
require_pairing | ブール値 | true | ペアリング前にリクエストを受け入れることを要求します (デフォルト: true) |
session_persistence | ブール値 | true | ゲートウェイ WebSocket チャット セッションを SQLite に永続化します。デフォルト: true。 |
session_ttl_hours | 整数 | 0 | N 時間以上前の古いゲートウェイ セッションを自動アーカイブします。0 = 無効。デフォルト: 0。 |
tls | オブジェクト | — | ゲートウェイ サーバーの TLS 設定 ([gateway.tls])。 |
trust_forwarded_headers | ブール値 | false | プロキシ転送クライアント IP ヘッダー (X-Forwarded-For、X-Real-IP) を信頼します。 |
web_dist_dir | string? | null | Webダッシュボードの dist ディレクトリへのパス。設定すると、ゲートウェイ |
webhook_rate_limit_per_minute | 整数 | 60 | クライアント キーあたり 1 分間の最大 /webhook リクエスト数。 |
webhook_secret 🔑 | string? | null | ゲートウェイの汎用 POST /webhook 用のオプションの共有シークレットおよび |
websocket_ping_interval_secs | 整数 | 30 | ダッシュボードチャットを維持するために、N 秒ごとに WebSocket ping フレームを送信します |
gateway.pairing_dashboard
ペアリングダッシュボード設定([gateway.pairing_dashboard])。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
code_length | 整数 | 8 | ペアリング コードの長さ (デフォルト: 8) |
code_ttl_secs | 整数 | 3600 | 保留中のペアリング コードの Time-to-live (秒単位) (デフォルト: 3600) |
lockout_secs | 整数 | 300 | 最大試行回数後のロックアウト期間 (秒単位) (デフォルト: 300) |
max_failed_attempts | 整数 | 5 | ロックアウト前の最大失敗ペアリング試行回数 (デフォルト: 5) |
max_pending_codes | 整数 | 3 | 最大同時保留中ペアリング コード数 (デフォルト: 3) |
gateway.tls
ゲートウェイ サーバーの TLS 設定 ([gateway.tls])。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
cert_path* | string | — | PEM エンコード済みサーバー証明書ファイルへのパス。 |
client_auth | オブジェクト | — | クライアント証明書認証 (mTLS) 設定 ([gateway.tls.client_auth])。 |
enabled | ブール値 | false | ゲートウェイの TLS を有効にします (デフォルト: false)。 |
key_path* | string | — | PEM エンコード済みサーバー秘密鍵ファイルへのパス。 |
gateway.tls.client_auth
クライアント証明書認証 (mTLS) 設定 ([gateway.tls.client_auth])。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
ca_cert_path | string | "" | クライアント証明書を検証するために使用される PEM エンコード済み CA 証明書へのパス。 |
crl_path | string | "" | 失効したフィンガープリントのリストへのオプションのパス(1 行に 1 つの SHA-256 16 進値)。A |
enabled | ブール値 | false | クライアント証明書検証を有効にします (デフォルト: false)。 |
pinned_certs | string[] | [] | 証明書ピニング用のオプション SHA-256 フィンガープリント。 |
require_client_cert | ブール値 | true | 有効なクライアント証明書を提示しない接続を拒否します (デフォルト: true)。 |
gemini_cli
Gemini CLIツール設定 ([gemini_cli] セクション)。
gemini -p CLI にコーディング タスクを委譲します。認証はバイナリ独自のセッションを使用します。env_passthrough に GOOGLE_API_KEY が含まれていない限り、API キーは不要です。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | false | gemini_cli ツールを有効にします |
env_passthrough | string[] | [] | gemini サブプロセスに渡される追加の環境変数 (例: GOOGLE_API_KEY) |
max_output_bytes | 整数 | 2097152 | 最大出力サイズ(バイト単位、デフォルト:2MB) |
timeout_secs | 整数 | 600 | 最大実行時間(秒単位、コーディングタスクは長時間になる場合があります) |
google_workspace
Google Workspace CLI (gws) ツール設定 ([google_workspace] セクション)。
デフォルト
enabled:false(ツールは明示的にオプトインされない限り登録されません)。allowed_services: 空のベクトル。デフォルト サービス セット全体へのアクセスを許可します:drive、sheets、gmail、calendar、docs、slides、tasks、people、chat、classroom、forms、keep、meet、events。allowed_operations: 空のベクトル。許可されたサービス セット下のすべてのリソース/メソッドを許可するレガシー動作を保持します。credentials_path:None(デフォルトgws認証情報検出を使用)。default_account:None(gwsアクティブ アカウントを使用)。rate_limit_per_minute:60。timeout_secs:30。audit_log:false。
互換性
[google_workspace] セクション全体を省略した設定は、GoogleWorkspaceConfig::default()(無効、すべてのデフォルト許可)として扱われます。このセクションを追加するのは完全にオプトインであり、他の設定セクションには影響しません。
ロールバック / マイグレーション
元に戻すには、設定ファイルから [google_workspace] セクションを削除します(または enabled = false に設定します)。データマイグレーションは不要です。ツールは単に登録が解除されます。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
allowed_operations | object[] | [] | エージェントがアクセスできるリソース/メソッドの組み合わせを制限します。 |
allowed_services | string[] | [] | エージェントがアクセスできる Google Workspace サービスを制限します。 |
audit_log | ブール値 | false | すべての gws 呼び出しの監査ログを有効にします(サービス、リソース、 |
credentials_path | string? | null | サービスアカウント JSON または OAuth クライアント認証情報ファイルへのパス。 |
default_account | string? | null | gws --account に渡すデフォルト Google アカウントメール。 |
enabled | ブール値 | false | google_workspace ツールを有効にします。デフォルト: false。 |
rate_limit_per_minute | 整数 | 60 | 1 分あたりに許可される gws API 呼び出しの最大数。デフォルト: 60。 |
timeout_secs | 整数 | 30 | コマンド実行タイムアウト(秒単位)。デフォルト: 30。 |
hardware
物理世界とのインタラクション用のウィザード駆動型ハードウェア設定。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
baud_rate | 整数 | 115200 | シリアルリンクでネゴシエートされるボーレート。115200 は一般的な Arduino / ESP32 ブートローダーのデフォルトと一致します。ファームウェアがより高速なレートを明示的にサポートしており、スループットが必要な場合は 230400 以上に引き上げてください。 |
enabled | ブール値 | false | GPIO ピン、USB 接続のマイクロコントローラー(Arduino、ESP32、Nucleo)、SWD/JTAG デバッグプローブといった物理ハードウェアの直接制御を有効にします。ソフトウェアのみで使用する場合はオフのままにしてください。適切なトランスポートを構成せずに有効にしても何も起こりません。 |
probe_target | string? | null | transport = probe 用のターゲットチップ識別子(例: STM32F401RE、nRF52840_xxAA)。フラッシュ/デバッグ操作のために probe-rs へそのまま渡されます。probe-rs が認識するチップと一致する必要があります。 |
serial_port | string? | null | serial トランスポート用の TTY パス — 例: Linux では /dev/ttyACM0、macOS では /dev/tty.usbmodem1、Windows では COM3。他のトランスポートでは無視されます。 |
transport | None | Native | Serial | Probe | — | ハードウェア トランスポート モード。 |
workspace_datasheets | ブール値 | false | ワークスペースから事前変換済みの .md および .txt データシートをインデックスして |
heartbeat
定期的なヘルスピング用のハートビート設定 ([heartbeat] セクション)。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
adaptive | ブール値 | false | 適応的な間隔を有効にします。エラー時はバックオフし、成功時は高速化します |
agent | string | "" | エージェントエイリアスが設定されると、ハートビートワーカーがそのエイリアスとして実行されます。必須 |
deadman_channel | string? | null | デッドマン スイッチ アラートのチャネル(例: telegram)。to にフォールバックします |
deadman_timeout_minutes | 整数 | 0 | デッドマン スイッチ タイムアウト(分単位)。ハートビート信号がティックしていない場合 |
deadman_to | string? | null | デッドマン スイッチ アラートの受信者。to にフォールバックします。 |
enabled | ブール値 | false | 定期的なハートビートpingを有効にします。デフォルト: false。有効にすると、 |
interval_minutes | 整数 | 30 | ハートビート ping 間隔(分単位)。最小: 1。デフォルト: 30。 |
load_session_context | ブール値 | false | 各ハートビート タスク実行前にチャネル セッション履歴を読み込みます |
max_interval_minutes | 整数 | 120 | 適応モードがバックオフするときの最大間隔(分単位)。デフォルト: 120。 |
max_run_history | 整数 | 100 | 保持するハートビート実行履歴レコードの最大数。デフォルト: 100。 |
message | string? | null | HEARTBEAT.md にタスクエントリがない場合のオプションのフォールバックタスクテキスト。 |
min_interval_minutes | 整数 | 5 | アダプティブモードが有効な場合の最小間隔(分単位)。デフォルト: 5。 |
target | string? | null | ハートビート出力のオプションの配信チャネル(例: telegram)。 |
task_timeout_secs | 整数 | 600 | 単一のエージェント呼び出しで許可される最大ウォールクロック秒数 |
to | string? | null | target が指定されている場合に必須のオプション配信受信者/チャット識別子 |
two_phase | ブール値 | true | 2段階ハートビートを有効化: フェーズ1はLLMに実行するかどうかを問い、フェーズ2 |
hooks
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
builtin | オブジェクト | — | |
enabled | ブール値 | true | ライフサイクルフック実行を有効化。 |
hooks.builtin
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
command_logger | ブール値 | false | command-loggerフックを有効化(監査用のツール呼び出しをログに記録)。 |
webhook_audit | オブジェクト | — | webhook-auditビルトインフック用の設定。 |
hooks.builtin.webhook_audit
webhook-auditビルトインフック用の設定。
ツール呼び出しが設定されたパターンのいずれかに一致するたびに、JSONボディを含むHTTP POSTを外部エンドポイントに送信します。集中監査ログ、SIEM取り込み、またはコンプライアンスパイプラインに役立ちます。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | false | webhook-auditフックを有効化。デフォルト: false。 |
include_args | ブール値 | false | 監査ペイロードにツール呼び出し引数を含める。デフォルト: false。 |
max_args_bytes | 整数 | 4096 | 単一に含まれるシリアル化された引数の最大サイズ(バイト単位) |
tool_patterns | string[] | [] | 監査するツール名のグロブパターン(例: ["Bash", "Write"])。 |
url | string | "" | 監査POSTリクエストを受け取るターゲットURL。 |
http_request
HTTPリクエストツール設定 ([http_request] セクション)。
ドメインフィルタリング: allowed_domains は到達可能なホストを制御します(すべてのパブリックホストには ["*"] を使用します。これがデフォルトです)。allowed_domains が空の場合、すべてのリクエストが拒否されます。リクエストでは直接トランスポートを使用するため、ローカルで検証された DNS 応答は固定されたままになります。tool.http_request に適用される有効な environment プロキシスコープまたはランタイムプロキシは拒否されます。管理対象スコープ外のプロセス環境プロキシは警告され、無視されます。接続に失敗すると、無視された変数の名前が示されます。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
allow_private_hosts | ブール値 | false | プライベート/LAN ホスト(RFC 1918、ループバック、.local)へのリクエストを許可します。 |
allowed_domains | string[] | ["*"] | HTTPリクエストで許可されたドメイン(完全一致またはサブドメイン一致) |
allowed_private_hosts | string[] | [] | パブリックアドレスチェックの緩和が明示的に許可されたプライベート/内部ホスト。 |
enabled | ブール値 | true | APIインタラクション用の http_request ツールを有効化 |
max_response_size | 整数 | 1000000 | 最大応答サイズ(バイト単位)(デフォルト: 1MB、0 = 無制限) |
secrets 🔑 | map | {} | auth_secret リクエスト用の名前付き認可シークレット。 |
timeout_secs | 整数 | 30 | リクエストタイムアウト(秒単位)(デフォルト: 30) |
image_gen
スタンドアロン画像生成ツール設定 ([image_gen])。
有効にすると、fal.aiの同期API(Flux / Nano Bananaモデル)経由で画像を生成し、ワークスペースの images/ ディレクトリに保存する image_gen ツールを登録します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
api_key_env | string | "FAL_API_KEY" | fal.ai APIキーを保持する環境変数名。 |
default_model | string | "fal-ai/flux/schnell" | デフォルトのfal.aiモデル識別子。 |
enabled | ブール値 | false | スタンドアロン画像生成ツールを有効にします。デフォルト: false。 |
jira
Jira統合設定 ([jira])。
enabled = trueの場合、チケットを取得し、JQLで検索し、コメントを追加できるjiraツールを登録します。base_urlとapi_token(またはJIRA_API_TOKEN環境変数)が必要です。
デフォルト
enabled:falseallowed_actions:["get_ticket"]— デフォルトは読み取り専用です。"search_tickets"または"comment_ticket"を追加してロック解除します。timeout_secs:30
認証
Jira Cloud は HTTP Basic 認証を使用します:email + api_token。Jira Server/Data Center は Bearer トークン認証を使用します:email を省略し、api_token にパーソナルアクセストークンを設定してください。api_token は保存時に暗号化されます。ここで設定するか、JIRA_API_TOKEN 経由で設定してください。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
allowed_actions | string[] | ["get_ticket"] | エージェントが呼び出しを許可されているアクション。 |
api_token 🔑 | string | "" | Jira APIトークン。保存時に暗号化されます。JIRA_API_TOKEN環境変数にフォールバックします。 |
base_url | string | "" | AtlassianインスタンスのベースURL。例:https://yourco.atlassian.net。 |
email | string? | — | Basic認証(Cloud)で使用するJiraアカウントのメールアドレス。 |
enabled | ブール値 | false | jiraツールを有効にします。デフォルト: false。 |
timeout_secs | 整数 | 30 | リクエストタイムアウト(秒単位)。デフォルト: 30。 |
knowledge
専門知識の取得と再利用のためのナレッジグラフ設定。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
auto_capture | ブール値 | false | 会話から自動的にナレッジをキャプチャします。デフォルト: false。 |
db_path | string | "/home/runner/.zeroclaw/knowledge.db" | ナレッジグラフSQLiteデータベースへのパス。 |
enabled | ブール値 | false | ナレッジグラフツールを有効にします。デフォルト: false。 |
max_nodes | 整数 | 100000 | ナレッジノードの最大数。デフォルト: 100000。 |
suggest_on_query | ブール値 | true | クエリに関連するナレッジを積極的に提案します。デフォルト: true。 |
knowledge_bundles
名前付きナレッジバンドル([knowledge_bundles.<alias>])。
knowledge_bundles.<alias>
名前付きナレッジバンドル([knowledge_bundles.<alias>])。
再利用可能な知識ソース(ドキュメント、URL、またはRAGコーパスパス)のセットで、エイリアスによってエージェントにアタッチできるもの。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
sources | string[] | [] | このナレッジバンドルに含めるパスまたはURL。 |
tags | string[] | [] | バンドル内のソースをフィルタリングまたは分類するためのタグ。 |
link_enricher
インバウンドチャネルメッセージの自動リンク理解([link_enricher])。
有効にされると、受信メッセージ内のURLは自動的にフェッチされ、要約されます。要約はメッセージの前に付加され、エージェントが処理する前に、LLMに明示的なツール呼び出しなしでリンクされたページのコンテキストを与えます。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | false | リンクエンリッチャーパイプラインステージを有効にします(デフォルト: false) |
max_links | 整数 | 3 | メッセージあたりフェッチするリンクの最大数(デフォルト: 3) |
timeout_secs | 整数 | 10 | リンクあたりのフェッチタイムアウト(秒単位、デフォルト: 10) |
linkedin
LinkedIn統合設定([linkedin]セクション)。
有効にされると、linkedinツールはエージェントツールサーフェスに登録されます。ワークスペース.envファイルのLINKEDIN_*認証情報が必要です。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
api_version | string | "202602" | LinkedIn REST APIバージョンヘッダー(YYYYMM形式)。 |
content | オブジェクト | — | LinkedInの自動投稿用コンテンツ戦略設定([linkedin.content])。 |
enabled | ブール値 | false | LinkedInツールを有効にします。 |
image | オブジェクト | — | LinkedInの投稿用画像生成設定([linkedin.image])。 |
linkedin.content
LinkedInの自動投稿用コンテンツ戦略設定([linkedin.content])。
エージェントはこれをlinkedin get_content_strategyアクション経由で読み取り、確認するフィード、ハイライトするリポジトリ、投稿の書き方を知ります。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
github_repos | string[] | [] | 強調するGitHubリポジトリ(形式: owner/repo)。 |
github_users | string[] | [] | 参照する公開アクティビティを持つGitHubユーザー名。 |
instructions | string | "" | AIエージェント向けの自由形式の投稿指示。 |
persona | string | "" | プロフェッショナルペルソナの説明(名前、役職、専門知識)。 |
rss_feeds | string[] | [] | トピックのインスピレーション監視用のRSSフィードURL(タイトルのみ)。 |
topics | string[] | [] | 投稿テーマの専門知識と関心のトピック。 |
linkedin.image
LinkedInの投稿用画像生成設定([linkedin.image])。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
card_accent_color | string | "#0A66C2" | フォールバックカードのアクセントカラー(CSSの16進数)。 |
dalle | オブジェクト | — | OpenAI DALL-E設定([linkedin.image.dalle])。 |
enabled | ブール値 | false | 投稿の画像生成を有効にする。 |
fallback_card | ブール値 | true | すべてのAI model_providersが失敗した場合に、ブランド化されたSVGテキストカードを生成します。 |
flux | オブジェクト | — | Flux(fal.ai)画像生成設定([linkedin.image.flux])。 |
imagen | オブジェクト | — | Google Imagen(Vertex AI)設定([linkedin.image.imagen])。 |
providers | string[] | ["stability","imagen","dalle","flux"] | ModelProvider の優先順位。順番に試行され、最初に成功したものが採用されます。 |
stability | オブジェクト | — | Stability AI画像生成設定([linkedin.image.stability])。 |
temp_dir | string | "linkedin/images" | 生成された画像の一時ディレクトリ(ワークスペースからの相対パス)。 |
linkedin.image.dalle
OpenAI DALL-E設定([linkedin.image.dalle])。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
api_key_env | string | "OPENAI_API_KEY" | OpenAI APIキーを保持する環境変数名。 |
model | string | "dall-e-3" | DALLEモデル識別子。 |
size | string | "1024x1024" | 画像の寸法。 |
linkedin.image.flux
Flux(fal.ai)画像生成設定([linkedin.image.flux])。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
api_key_env | string | "FAL_API_KEY" | fal.ai APIキーを保持する環境変数名。 |
model | string | "fal-ai/flux/schnell" | Fluxモデル識別子。 |
linkedin.image.imagen
Google Imagen(Vertex AI)設定([linkedin.image.imagen])。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
api_key_env | string | "GOOGLE_VERTEX_API_KEY" | APIキーを保持する環境変数名。 |
project_id_env | string | "GOOGLE_CLOUD_PROJECT" | Google CloudプロジェクトIDの環境変数。 |
region | string | "us-central1" | Vertex AIリージョン。 |
linkedin.image.stability
Stability AI画像生成設定([linkedin.image.stability])。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
api_key_env | string | "STABILITY_API_KEY" | APIキーを保持する環境変数名。 |
model | string | "stable-diffusion-xl-1024-v1-0" | 安定性モデル識別子。 |
locale
ツール説明用のロケール(例:"en"、"zh-CN")。
設定すると、システムプロンプトに表示されるツール説明は Fluent .ftl ロケールファイルから読み込まれます。埋め込まれた英語にフォールバックし、その後ハードコードされた説明にフォールバックします。
省略するか空にした場合、ロケールはホストシステムのロケールから自動検出されます(判定できない場合は "en" がデフォルトになります)。
mcp
外部MCPクライアント設定([mcp]セクション)。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
deferred_loading | ブール値 | false | tool_search を介してオンデマンドで MCP ツールスキーマを読み込み、積極的な読み込みの代わりに使用します |
enabled | ブール値 | true | MCP ツール読み込みを有効にします。 |
servers | object[] | [] | 設定済みの MCP サーバー。#[nested] アノテーションにより、マクロが |
mcp_bundles
名前付きMCPサーバーバンドル([mcp_bundles.<alias>])。
mcp_bundles.<alias>
名前付き MCP サーバーバンドル ([mcp_bundles.<alias>])。
agents.<alias>.mcp_bundles でエイリアスによりバンドルを参照するエージェントに付与される、再利用可能な MCP サーバーのグループ。サーバー ID は name によって [mcp.servers] と照合されます。解決はデフォルトで安全です(Config::mcp_servers_for_bundles を参照): 一致するサーバーがない ID は何も付与せず、エージェントが参照するすべてのバンドルにわたって exclude が servers より優先されます。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
exclude | string[] | [] | グラントから削除された MCP サーバー ID。拒否が優先: ここにリストされた名前は |
servers | string[] | [] | このバンドルによって付与される MCP サーバー ID ([mcp.servers].name)。 |
media_pipeline
自動メディア理解パイプライン設定([media_pipeline])。
有効にすると、メディア添付ファイルを含むインバウンドチャネルメッセージはエージェントに到達する前に前処理されます:オーディオが文字起こしされ、画像に注釈が付けられ、ビデオが要約されます。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
describe_images | ブール値 | true | ビジョン対応モデルがアクティブな場合、画像説明を追加します。 |
enabled | ブール値 | false | メディアパイプラインのマスタートグル(デフォルト: false)。 |
summarize_video | ブール値 | true | ビデオ添付ファイルを要約します(プレースホルダー - 外部 API が必要)。 |
transcribe_audio | ブール値 | true | 設定された文字起こしモデルプロバイダーを使用して、音声添付ファイルを文字起こしします。 |
memory
メモリバックエンド設定 ([memory] セクション)。
会話メモリのストレージ、埋め込み、ハイブリッド検索、レスポンスキャッシュ、メモリのスナップショット/ハイドレーションを制御します。バックエンド固有の接続設定は [storage.<backend>.<alias>] 配下に記述します。このセクションでは、backend のドット区切り参照を介して使用するストレージインスタンスを選択します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
archive_after_days | 整数 | 7 | この日数が経過した後、デイリー/セッションファイルをアーカイブディレクトリに移動します。履歴を削除することなく、ホットワーキングセットを小さく保ちます。 |
audit_enabled | ブール値 | false | メモリ操作の監査ログを有効にします。 |
audit_retention_days | 整数 | 30 | 監査エントリの保持期間(日数)(デフォルト: 30)。 |
auto_hydrate | ブール値 | true | brain.db がない場合、MEMORY_SNAPSHOT.md から自動ハイドレーション |
auto_reindex_on_identity_change | ブール値 | false | 起動時に埋め込みプロバイダー/モデル/次元の変更が検出された場合(古いベクトルがクリアされた後)、バックグラウンドですべてのメモリを自動的に再埋め込みします。メモリごとに埋め込みAPI呼び出しが1回かかるため、デフォルトではオフです — 大規模ストアではオフのままにし、代わりに zeroclaw memory reindex を明示的に実行してください。 |
auto_save | ブール値 | true | あなた が ZeroClaw に伝えた内容を会話履歴として自動的にメモリへ保存します。エージェント自身の返信は保存されません。メモリツールを通じて明示的に記録したものだけをメモリに保持したい場合は、オフにしてください。 |
backend | string | "sqlite" | アクティブなストレージインスタンスへのドット表記による参照: <backend>.<alias> |
candidate_multiplier | 整数 | 4 | ブレンド/リランクのトリミング前に、最終リコール上限に対する候補プールの乗数。 |
chunk_max_tokens | 整数 | 512 | ドキュメント分割用のチャンクあたりの最大トークン数 |
conflict_supersede_enabled | ブール値 | true | 接続時に可逆 supersede soft-hide 機構を有効にする。 |
conflict_threshold | number | 0.85 | 競合検出のコサイン類似度閾値(0.0–1.0)。 |
consolidation_extract_facts | ブール値 | false | 各統合ターンからアトミックで永続的な事実を抽出して保存します |
conversation_retention_days | 整数 | 30 | この日数より古い会話行をDBから削除します(sqliteバックエンドのみ)。経過日数はupdated_at(最終書き込み時刻)で測定されます。0 = 永久に保持。 |
core_max_bytes | 整数 | 0 | バジェットのコンパクション前の最大 Core バイト数。0 = 無制限。 |
core_max_rows | 整数 | 0 | バジェットコンパクション前の最大 Core 行数。0 = 無制限。 |
core_retention_days | 整数 | 0 | 指定した日数より古いコアメモリの行をDBから削除します。経過日数はcreated_at(初回書き込み時刻)で計測されます。現在のSQLite upsertでは、リコールも通常の書き換えもcreated_atを更新しないため、コアの保持期間は初回書き込みからの絶対的な経過日数の上限となります。永続的なコアメモリのためには余裕を持って大きなウィンドウを設定するか、0のままにして永久に保持してください。 |
daily_max_rows | 整数 | 0 | 予算コンパクション前の最大日次行数。0 = 無制限。 |
daily_retention_days | 整数 | 0 | この日数より古い日次メモリの行をDBから削除します。経過日数はupdated_at(最終書き込み時刻)で測定されます。0 = 無期限に保持します。 |
dedup_action | table | — | メモリエントリの書き込み時における重複処理ポリシー。 |
dedup_jaccard_threshold | number | 0.8 | テキストのみの重複検出用のJaccardしきい値 |
dedup_on_write | ブール値 | false | 書き込み時の近似重複検出を有効にする |
default_namespace | string | "default" | メモリエントリのデフォルト名前空間。 |
embedding_api_key 🔑 | string? | — | 埋め込みエンドポイント用のオプションのAPIキー。設定すると、埋め込み呼び出しはシードモデルプロバイダーからキーを継承する代わりにこのキーを使用し、埋め込みをチャットモデルから切り離します。チャットモデルが使用可能な埋め込みクレデンシャルを持たないプロバイダー(例: OAuthのみのプロバイダー)上で動作する一方、埋め込みが独自のキーで openai/custom: エンドポイントにアクセスし続ける場合に使用します。未設定のままにすると、シードプロバイダーのキーを継承します(後方互換のデフォルト)。 |
embedding_cache_size | 整数 | 10000 | LRU 削除前の最大埋め込みキャッシュエントリ数 |
embedding_dimensions | 整数 | 1536 | 埋め込みモデルが生成するベクトル幅 — モデルのネイティブ次元と一致している必要があります。一致しないとベクトルが正しく保存されません。model_provider のモデルページで数値を確認してください。 |
embedding_model | string | "text-embedding-3-small" | 埋め込みモデル識別子 — 選択した embedding model_provider が提供するモデルと一致する必要があります(例: OpenAI の text-embedding-3-small)。これを変更すると既存の埋め込みが無効になります: 変更は起動時に検出され、古いベクトルは自動的にクリアされます。再埋め込みするには zeroclaw memory reindex を実行します(または auto_reindex_on_identity_change を設定します)。 |
embedding_provider | string | "none" | セマンティック検索の埋め込みベクトルのソース。none = キーワードのみの検索(API 呼び出しなし、ベクトルコストなし)、openai = OpenAI の埋め込み API、custom:URL = OpenAI 互換の埋め込みエンドポイント(LiteLLM、ローカルゲートウェイなど)。 |
evict_order | table | — | メモリ予算のエビクション順序 |
fts_early_return_score | number | 0.85 | 予約済み (0.0-1.0): recall がスキップされる FTS スコアの閾値 |
hygiene_enabled | ブール値 | true | 古くなったデイリー/セッションファイルをアーカイブし、保持期間を適用する定期的なクリーンアップ処理を実行します。クリーンアップを自分で管理したい場合を除き、有効のままにしておいてください。 |
importance_weight | number | 0.2 | リコールブレンドで使用する重要度の重み。 |
keyword_weight | number | 0.3 | search_mode = hybrid のときに BM25(キーワード)の一致がどの程度重視されるかを指定します。完全一致の語句を重視する場合は 1.0 に近づけ、言い換えでも高いスコアを得られるようにするには値を下げてください。 |
min_relevance_score | number | 0.4 | メモリをコンテキストに含めるための最小ハイブリッドスコア (0.0–1.0)。 |
mmr_lambda | number | 0.7 | MMR における関連性と多様性の重み。1.0 は関連性のみを意味します。 |
pin_min_importance | number | 1.01 | この重要度以上のエントリをピン留めします。1.0 より大きい値は無効を意味します。 |
pin_namespaces | string[] | [] | 予算エビクションから保護された名前空間 |
policy | オブジェクト | — | メモリポリシー設定 ([memory.policy] セクション)。 |
purge_after_days | 整数 | 30 | アーカイブされたファイルを指定した日数が経過した後に完全に削除します。長期間の履歴が必要な場合は大きな値を、プライバシーやディスク容量の理由がある場合は小さな値を設定してください。 |
recency_weight | number | 0.1 | リコールブレンドで使用される新しさの重み。 |
rerank_enabled | ブール値 | false | リコール再ランキングステージを有効にする: 検索スコアと重要度をブレンドする |
rerank_strategy | string | "none" | 高度な再ランキング戦略。有効な値: “none”, “mmr”. |
rerank_threshold | 整数 | 5 | 高度な再ランク戦略をトリガーするための候補の最小数。 |
response_cache_enabled | ブール値 | false | 重複するプロンプトの支払いを避けるためにLLM応答キャッシュを有効化 |
response_cache_hot_entries | 整数 | 256 | 2層応答キャッシュのメモリ内ホットキャッシュエントリの最大数 (デフォルト: 256) |
response_cache_max_entries | 整数 | 5000 | LRU削除前のキャッシュされた応答の最大数 (デフォルト: 5000) |
response_cache_ttl_minutes | 整数 | 60 | キャッシュされた応答のTTL (分単位) (デフォルト: 60) |
retrieval_stages | string[] | ["fts","vector"] | エージェントごとの再現のための取得ステージ。有効なのは "cache" のみです: |
search_mode | table | — | メモリ回想の検索戦略。 |
snapshot_enabled | ブール値 | false | コアメモリをMEMORY_SNAPSHOT.mdに定期的にエクスポートを有効化 |
snapshot_on_hygiene | ブール値 | false | 衛生パス中にスナップショットを実行 (ハートビート駆動) |
types | オブジェクト | — | 型付きメモリ設定([memory.types]セクション)。 |
vector_weight | number | 0.7 | search_mode = hybrid の場合に、ベクトル(セマンティック)類似度をどの程度重視するか。1.0 に近づけると意味ベースの一致を優先し、下げるとキーワードの重複を重視します。 |
memory.policy
メモリポリシー設定 ([memory.policy] セクション)。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
max_entries_per_category | 整数 | 0 | カテゴリごとの最大エントリ数 (0 = 無制限)。 |
max_entries_per_namespace | 整数 | 0 | 名前空間あたりの最大エントリ数(0 = 無制限)。 |
read_only_namespaces | string[] | [] | 読み取り専用の名前空間(書き込みは拒否されます)。 |
redact_categories | string[] | ["secret","api_key","private_key","email","phone"] | redact_on_write が true の場合に適用される墨消しカテゴリ。 |
redact_on_write | ブール値 | false | 永続化の前に、設定されたシークレット/PIIカテゴリを秘匿化します。 |
retention_days_by_category | map | {} | カテゴリ別の保持日数(グローバル設定をオーバーライド)。キー: “core”、“daily”、“conversation”。 |
threat_scan | string | "on" | 永続メモリへの書き込みに対するコンテンツスキャンモード: “off”, “on”, または “strict”. |
threat_scan_load_time | ブール値 | true | 保存済みエントリを再取得/読み取り時に再スキャンし、フラグ付きエントリを除外する。 |
threat_scan_on_hit | string | "reject" | 書き込み時のコンテンツスキャンが一致した場合の動作:「reject」または |
memory.types
型付きメモリ設定([memory.types]セクション)。
デフォルトで動作中立:enabled は新規統合書き込みにおける MemoryKind の割り当てをゲートし、デフォルトはオフ。切り替えは後のフェーズで順序付けられる。SQLite 限定:有効化にはグローバルおよびすべてのエージェントで sqlite メモリバックエンドが必要(設定ロード時に検証)。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | false | 新しい統合書き込みに第一級の MemoryKind を割り当てる。 |
microsoft365
Microsoft Graph API経由のMicrosoft 365統合([microsoft365]セクション)。
Outlook メール、Teams メッセージ、カレンダー イベント、OneDrive ファイル、SharePoint 検索へのアクセスを提供します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
auth_flow | string | "client_credentials" | 認証フロー: “client_credentials” または “device_code” |
client_id | string? | null | Azure AD アプリケーション(クライアント)ID |
client_secret 🔑 | string? | null | Azure AD クライアント シークレット(secrets.encrypt = true の場合は暗号化して保存) |
enabled | ブール値 | false | Microsoft 365 統合を有効にする |
scopes | string[] | ["https://graph.microsoft.com/.default"] | リクエストする OAuth スコープ |
tenant_id | string? | null | Azure AD テナント ID |
token_cache_encrypted | ブール値 | true | ディスク上のトークン キャッシュ ファイルを暗号化する |
user_id | string? | null | ユーザー プリンシパル名または「me」(委任フローの場合) |
model_routes
モデルルーティングルール — hint:<name> を特定の model_provider + model の組み合わせにルーティングします。
multimodal
マルチモーダル(画像)処理設定([multimodal]セクション)。
プライバシーとコストに関する注意
実際のローカル画像パスを出力するツールの結果(例: ls /pictures や find . -name '*.png' を実行するシェルツール)は [IMAGE:...] マーカーに正規化され、次のプロバイダーリクエストに base64 でインライン化されます。これは、以前はローカルにとどまっていた画像バイトが、ツールによって表示された際に、設定済みのプロバイダーへアップロードされることを意味します。
max_images(および trim_old_images の LRU ポリシー)はリクエストごとの画像予算を制限しますが、個人的または機密性の高い画像を含むディレクトリに対してシェル形式のツールを実行する運用者は、アップロードのセマンティクスに注意する必要があります。プロジェクトのプライバシーに関する方針については docs/book/src/contributing/privacy.md を参照してください。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
allow_remote_fetch | ブール値 | false | リモート画像 URL(http/https)のフェッチを許可する。デフォルトでは無効。 |
max_image_size_mb | 整数 | 5 | Base64 エンコード前の最大画像ペイロード サイズ(MiB 単位)。 |
max_image_turns | 整数 | 0 | 会話ターンにおける画像の最大保持期間。 |
max_images | 整数 | 4 | リクエストごとに受け入れられる最大画像添付ファイル数。 |
vision_model | string? | null | vision model_provider にルーティングする際に使用するモデル(例: "llava:7b")。 |
vision_model_provider | string? | null | ビジョン/画像メッセージに使用する ModelProvider 名(例: "ollama")。 |
nodes
動的ノード検出システムの設定([nodes])。
有効にすると、外部プロセス/デバイスは /ws/nodes 経由でWebSocket接続でき、実行時に機能をアドバタイズできます。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
auth_token 🔑 | string? | null | ノード認証用のオプショナルベアラートークン。 |
enabled | ブール値 | false | 動的ノード検出エンドポイントを有効にします。 |
max_nodes | 整数 | 16 | 同時ノード接続の最大数。 |
mdns | オブジェクト | — | LAN ローカルの mDNS ピア検出の設定 ([nodes.mdns]). |
nodes.mdns
LAN ローカルの mDNS ピア検出の設定 ([nodes.mdns]).
この設定はディスカバリー動作のみを制御します。アドバタイズされるゲートウェイエンドポイントは、起動時に実行中のゲートウェイの実際のホスト、ポート、およびパスプレフィックスから導出されるため、[nodes.mdns] はゲートウェイのリッスン状態を重複して保持しません。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
announce_interval_secs | 整数 | 30 | このノードが自身の存在を再ブロードキャストする間隔(秒単位)。 |
enabled | ブール値 | false | mDNS によるローカルピア検出を有効にします。 |
max_peers | 整数 | 16 | メモリに保持する未認証の LAN ピアヒントの最大数。 |
node_name | string? | null | LAN ピアにアドバタイズされる人間が読めるノード名。デフォルトは安定した |
peer_ttl_secs | 整数 | 90 | 最後のアナウンスからピアが退去されるまでの秒数。 |
notion
Notion統合設定([notion])。
enabled = true の場合、エージェントはNotionデータベースをポーリングして保留中のタスクを取得し、ページのクエリ、読み取り、作成、および更新用の notion ツールを公開します。api_key (または NOTION_API_KEY 環境変数) と database_id が必要です。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
api_key 🔑 | string | "" | |
database_id | string | "" | |
enabled | ブール値 | false | |
input_property | string | "Input" | |
max_concurrent | 整数 | 4 | |
poll_interval_secs | 整数 | 5 | |
recover_stale | ブール値 | true | |
result_property | string | "Result" | |
status_property | string | "Status" |
observability
可観測性バックエンド設定([observability]セクション)。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
backend | none | log | verbose | prometheus | otel | — | 可観測性シンクのバックエンド。 |
log_llm_request_payload | off | redacted | full | — | LLMリクエストペイロードのキャプチャポリシー。[LogToolIo]をミラーするが、 |
log_persistence | table | — | JSONL ログ永続化モード。 |
log_persistence_max_bytes | 整数 | 0 | アーカイブローテーションをトリガーするサイズのしきい値(バイト単位) |
log_persistence_max_entries | 整数 | 200 | log_persistence = "rolling" の場合に保持される最大エントリ数。 |
log_persistence_path | string | "state/runtime-trace.jsonl" | ログ永続化ファイルのパス。相対パスは workspace_dir 配下で解決されます。 |
log_persistence_retention_max_age_days | 整数 | 0 | ローテーションされたアーカイブファイルの経過日数(日単位)に対する保持上限 |
log_persistence_retention_max_files | 整数 | 7 | ローテーションされたアーカイブファイルの保持数の上限を設定します |
log_persistence_rotate_daily | ブール値 | true | UTC の日付境界でアクティブファイルをアーカイブにローテーションする |
log_tool_io | off | redacted | full | — | ツール I/O キャプチャポリシー。 |
log_tool_io_denylist | string[] | [] | ツール名(I/O は名前 + 結果 + 実行時間のみ記録され、それ以上はログに残らない) |
log_tool_io_truncate_bytes | 整数 | 40960 | キャプチャしたツールの入力と出力をこのバイト数で切り詰めます |
otel_endpoint | string? | null | OTLPエンドポイント (例: "http://localhost:4318")。backend = "otel" の場合のみ使用されます。 |
otel_genai_content | off | redacted | full | — | OTel コンテンツキャプチャポリシー。[LogToolIo] をミラーしますが、OTel span をゲートします |
otel_genai_content_max_chars | 整数 | 1000 | OTel GenAI コンテンツのフィールドごとの文字切り捨て制限( |
otel_headers 🔑 | map? | null | すべてのOTLPエクスポートリクエストとともに送信されるオプショナルHTTPヘッダー (例: authorization)。 |
otel_service_name | string? | null | OTelコレクターに報告されるサービス名。デフォルトは “zeroclaw”。 |
otel_tool_io | off | redacted | full | — | OTel コンテンツキャプチャポリシー。[LogToolIo] をミラーしますが、OTel span をゲートします |
otel_tool_io_max_chars | 整数 | 1000 | OTel ツール I/O のフィールドごとの文字切り詰め上限 |
onboard_state
マルチクライアントワークスペース分離設定。
有効にすると、各クライアントエンゲージメントに、個別のメモリ、監査、シークレット、ツール制限を備えた分離されたワークスペースが割り当てられます。これは、Quickstart フローが書き込む不透明な状態であり、再実行時に、ユーザーがどのセクションを少なくとも一度は通過済みかを判別できるようにします。これにより、すべてのフィールドを再度入力させる代わりに、「Reconfigure? [y/N]」のスキップゲートを提示できます。
これは Quickstart フローに関するメタ状態であり、ユーザー向けの設定ではありません。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
completed_sections | string[] | [] | ユーザーが少なくとも一度完了したセクションキー。 |
quickstart_completed | ブール値 | false | BuilderSubmission がクイックスタートで適用されると true になります |
opencode_cli
OpenCode CLIツール設定([opencode_cli]セクション)。
コーディングタスクを opencode run CLIに委譲します。認証はデフォルトではバイナリ自体のセッションを使用します — env_passthrough にプロバイダー固有のキーが含まれていない限り、APIキーは不要です。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | false | opencode_cli ツールを有効にします |
env_passthrough | string[] | [] | opencodeサブプロセスに渡される追加の環境変数 |
max_output_bytes | 整数 | 2097152 | 最大出力サイズ(バイト単位、デフォルト:2MB) |
timeout_secs | 整数 | 600 | 最大実行時間(秒単位、コーディングタスクは長時間になる場合があります) |
pacing
低速/ローカルLLMワークロード用のペーシング制御([pacing]セクション)。
すべてのフィールドはオプショナルで、既存の動作を保持するデフォルト値があります。設定すると、既存のタイムアウトおよびループ検出サブシステムを置き換えるのではなく拡張します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
loop_detection_enabled | ブール値 | true | パターンベースのループ検出を有効にします (完全な繰り返し、ピンポン、 |
loop_detection_max_repeats | 整数 | 3 | 最初のループ検出前の同一の連続したツール+引数呼び出しの数。 |
loop_detection_min_elapsed_secs | integer? | null | ループ検出がアクティブになるまでの最小経過秒数。 |
loop_detection_window_size | 整数 | 20 | パターンベースループ検出器のスライディングウィンドウサイズ。 |
loop_ignore_tools | string[] | [] | 同一出力/交互パターンループから除外されたツール名 |
message_timeout_scale_max | integer? | null | ハードコードされたタイムアウトスケーリング上限のオーバーライド(デフォルト: 4)。 |
step_timeout_secs | integer? | null | ステップごとのタイムアウト(秒): 単一ステップに許可される最大時間 |
peer_groups
名前付きピアグループ([peer_groups.<name>])。各エントリは、チャンネル、メンバーエージェントのリスト、およびオプションの非エージェント(外部)メンバーとグループごとのブロックリストを関連付けます。相互オプトイン:2つのエージェントは、両方が同じグループの agents に表示されている場合にのみピアになります。シングルエージェントのインストールではデフォルトで空です。crate::multi_agent::PeerGroupConfig を参照してください。
peer_groups.<alias>
[peer_groups.<name>] — チャネルタイプ上の相互オプトインピアグループ。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
admin_for_agent_scope | ブール値 | false | true の場合、このピアグループのメンバーは発行を許可されます |
agents | string[] | [] | エイリアス別のメンバーエージェント。 |
channel | string | — | 設定済みの [channels.<type>.<alias>] エントリへの参照。 |
external_peers | string[] | [] | チャンネルネイティブのユーザー名別の非エージェントメンバー。 |
ignore | string[] | [] | グループごとのブロックリスト。解決されたピアセットから減算されます。 |
output_modality | table | — | ピアグループの推奨出力モダリティ。 |
peripherals
周辺機器ボード統合設定([peripherals]セクション)。
ボードが有効な場合、ボードはエージェントツールになります。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
boards | object[] | [] | ボード構成(nucleo-f401re、rpi-gpio など) |
datasheet_dir | string? | null | RAG取得用のデータシートドキュメントへのパス(ワークスペースからの相対パス)。 |
enabled | ブール値 | false | 周辺機器サポートを有効にする(ボードはエージェントツールになります) |
pipeline
パイプラインツール設定([pipeline]セクション)。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
allowed_tools | string[] | [] | パイプラインステップで許可されたツール。このリストに載っていないツールを参照するステップは実行されません。 |
enabled | ブール値 | false | execute_pipeline メタツールを有効にします。 |
max_steps | 整数 | 20 | 単一のパイプライン呼び出しで許可されるステップの最大数。 |
plugins
プラグインシステム設定。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
auto_discover | ブール値 | false | 起動時にプラグインを自動検出して読み込む(デフォルト: false) |
enabled | ブール値 | false | プラグインシステムを有効にします(デフォルト: false) |
entries | object[] | [] | |
limits | オブジェクト | — | 呼び出しごとの WASM 実行制限 ([plugins.limits])。 |
max_active_instances | 整数 | 50 | すべての機能を通じて許可される論理プラグインインスタンスの最大数。 |
plugins_dir | string | "/home/runner/.zeroclaw/plugins" | プラグインが保存されるディレクトリ |
security | オブジェクト | — | プラグイン署名検証構成([plugins.security])。 |
plugins.limits
呼び出しごとの WASM 実行制限 ([plugins.limits])。
単一のプラグイン呼び出しに上限を設け、暴走したコンポーネントや悪意のあるコンポーネントがホストをハングさせたりメモリを使い果たしたりする代わりに、トラップするようにします。call_fuel は呼び出しごとの命令数に上限を設定し、call_timeout_ms は非同期ホストインポートの待機時間を含む経過実時間に上限を設定します。メモリ、テーブル、インスタンスの上限によって、ストアの拡張を制限します。すべての値は運用者が調整でき、ゼロ以外であることが検証されます。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
call_fuel | 整数 | 1000000000 | プラグイン呼び出しごとの Fuel 予算(wasmtime 命令ユニット)。 |
call_timeout_ms | 整数 | 30000 | 1 回のプラグインエクスポート呼び出しに対する実時間の期限(ミリ秒)。 |
max_connections_per_instance | 整数 | 16 | 論理プラグイン インスタンスあたりのホスト所有のアクティブなネットワーク接続の最大数、 |
max_instances | 整数 | 64 | プラグインストアが作成できるコンポーネントインスタンスの最大数 |
max_memory_mb | 整数 | 256 | プラグインストアが成長できる最大の線形メモリ(メガバイト単位)。 |
max_table_elements | 整数 | 100000 | プラグインストアが割り当て可能なテーブル要素の最大数 |
plugins.security
プラグイン署名検証構成([plugins.security])。
プラグインマニフェストのEd25519署名検証を制御します。strict モードでは、信頼できるパブリッシャーキーで署名されたプラグインのみがロードされます。permissive モードでは、署名されていないまたは信頼できないプラグインは警告を出しますがロードされます。disabled モード(デフォルト)では、署名チェックが行われません。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
signature_mode | string | "disabled" | 署名強制モード: “disabled”、“permissive”、または “strict”。 |
trusted_publisher_keys | string[] | [] | 信頼できるプラグインパブリッシャーの16進数エンコードEd25519公開鍵。 |
project_intel
プロジェクト配信インテリジェンス設定([project_intel]セクション)。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
default_language | string | "en" | デフォルトレポート言語(en、de、fr、it)。デフォルト: “en”。 |
enabled | ブール値 | false | project_intel ツールを有効にします。デフォルト: false。 |
include_git_data | ブール値 | true | レポートに git ログデータを含めます。デフォルト: true。 |
include_jira_data | ブール値 | false | レポートに Jira データを含めます。デフォルト: false。 |
jira_base_url | string? | null | Jira インスタンスベース URL(include_jira_data が true の場合は必須)。 |
report_output_dir | string | "/home/runner/.zeroclaw/project-reports" | 生成されたレポートの出力ディレクトリ。 |
risk_sensitivity | string | "medium" | リスク検出感度: low、medium、high。デフォルト: “medium”。 |
templates_dir | string? | null | オプションのカスタムテンプレートディレクトリ。 |
providers
設定済みの各プロバイダーカテゴリ用のトップレベルラッパー。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
models | オブジェクト | — | プロバイダーファミリーごとに1つのエイリアスマップを持つ、型付きモデルプロバイダーコンテナ。 |
transcription | オブジェクト | — | 入力された文字起こしプロバイダーのコンテナ — STTファミリーごとに1スロット。 |
tts | オブジェクト | — | 型付きTTSプロバイダーコンテナ — TTSファミリーごとに1スロット。ミラー |
providers.models
プロバイダーファミリーごとに1つのエイリアスマップを持つ、型付きモデルプロバイダーコンテナ。
ファミリーごとに 1 つのスロット(ai21, aihubmix, anthropic, anyscale, arcee, astrai, atlascloud, atomic_chat, avian, azure, baichuan, baseten, bedrock, cerebras, cloudflare, cohere, copilot, custom, deepinfra, deepmyst, deepseek, doubao, featherless, fireworks, friendli, gemini, gemini_cli, github_models, glm, grok_cli, groq, huggingface, hunyuan, hyperbolic, inception, kilo, kilocli, lambda_ai, lepton, litellm, llamacpp, lmstudio, manifest, minimax, mistral, moonshot, morph, nearai, nebius, novita, nscale, nvidia, ollama, openai, opencode, openrouter, osaurus, ovh, perplexity, qianfan, qwen, reka, sambanova, sglang, siliconflow, stepfun, synthetic, telnyx, together, upstage, venice, vercel, vllm, xai, yi, zai, zerorouter)があります。各スロットは [providers.models.<slot>.<alias>] マップです。フィールドごとのリファレンスについては、専用のセクションページを参照してください。
providers.transcription
型付き文字起こしプロバイダーコンテナ — STTファミリーごとに1スロット。ModelProviders / TtsProviders をミラーリングします。6つのファミリーからなる閉じたセット: groq, openai, deepgram, assemblyai, google, local_whisper。
ファミリーごとに1つのスロット(assemblyai、deepgram、google、groq、local_whisper、openai)。各スロットは[providers.transcription.<slot>.<alias>]マップです。フィールドごとのリファレンスについては、専用のセクションページを参照してください。
providers.tts
型付き TTS プロバイダーコンテナ — TTS ファミリーごとに 1 スロット。ModelProviders を反映していますが、より小規模です(TTS には openai、elevenlabs、google、edge、piper という 5 つのファミリーからなるクローズドセットがあります)。キャッチオールは不要です。
ファミリーごとに1つのスロット(edge、elevenlabs、google、openai、piper)。各スロットは [providers.tts.<slot>.<alias>] マップです。フィールドごとのリファレンスについては、専用のセクションページを参照してください。
proxy
送信 HTTP/HTTPS/SOCKS5 トラフィックのプロキシ設定([proxy] セクション)。標準の web_fetch リクエストとすべての http_request リクエストは直接接続されるため、ローカルで検証済みの DNS 応答を固定できます。これらは環境プロキシをバイパスし、tool.web_fetch または tool.http_request に適用される実行時プロキシスコープ(有効化された environment スコープを含む)を拒否します。管理対象外のプロセスプロキシ変数は、無視される場合に警告されます。オプションの Firecrawl API フォールバックでは、通常の環境プロキシ検出が使用されます。その他のトラフィックをプロキシするには、それらのセレクターや tool.* を指定せずに services スコープを使用します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
all_proxy | string? | null | すべてのスキームのフォールバックプロキシURL。 |
enabled | ブール値 | false | 選択したスコープのプロキシサポートを有効化。 |
http_proxy | string? | null | HTTP リクエスト用プロキシURL (http、https、socks5、socks5h をサポート)。 |
https_proxy | string? | null | HTTPS リクエスト用プロキシURL (http、https、socks5、socks5h をサポート)。 |
no_proxy | string[] | [] | ノープロキシバイパスリスト。NO_PROXY と同じ形式。 |
scope | table | — | プロキシ適用スコープ — どのアウトバウンドトラフィックがプロキシを使用するかを決定。 |
services | string[] | [] | scope = “services” の場合に使用されるサービスセレクタ。 |
query_classification
自動クエリ分類 — キーワード/パターンでユーザーメッセージを分類し、適切なモデルヒントにルーティング。デフォルトは無効。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | false | 自動クエリ分類を有効化。デフォルト: false。 |
rules | object[] | [] | 優先度順に評価される分類ルール。 |
relay
指定リレー クライアント([relay])。
有効にすると、デーモンはリレーへの永続的な送信接続を維持してnode_idを登録するため、NATの背後にあるクライアントはリレーを 経由して デーモンに到達できます。リレーはブラインドフォワーダーであり、内部のクライアント<->デーモン mTLS 接続は引き続きデーモンの WSS リスナーで終端され、リレーによって復号されることはありません。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | false | リレーブリッジを有効にします(デフォルト: false)。 |
node_id | string | "" | このデーモンが登録する不透明なノード ID(クライアントはこの ID に接続します)。そのままにする |
node_id_rotation_days | 整数 | 0 | 自動生成された node-id を N 日ごとに自動ローテーションします(デフォルトは 0 で、ローテーションしません)。 |
outer_client_cert | string | "" | デーモンがリレーに OUTER TLS 層で提示する PEM 証明書/キー |
outer_client_key | string | "" | |
relay_ca_path | string | "" | リレー自身の(外側の)TLS 証明書を信頼するための PEM CA。設定すると、 |
relay_host | string | "" | リレーの外側の証明書で想定されるサーバー名。空の場合は自動的に導出されます |
relay_insecure | ブール値 | false | リレーの外部証明書の検証をスキップします(自己署名の開発環境でのみ)。 |
tofu | ブール値 | false | リレーの OUTER 証明書に対する初回使用時信頼(デフォルトは false):accept |
token | string | "" | 登録時に提示される Relay アカウントトークン(入場資格情報)。 |
url | string | "" | 接続先のリレーアドレス(host:port 形式)。 |
reliability
信頼性と監督設定([reliability]セクション)。
model_providerのリトライ、APIキーのローテーション、チャネル再起動のバックオフを制御します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
api_keys 🔑 | string[] | [] | レート制限 (429) エラー時のラウンドロビンローテーション用の追加API キー。 |
channel_initial_backoff_secs | 整数 | 2 | チャネル/デーモン再起動の初期バックオフ。 |
channel_max_backoff_secs | 整数 | 60 | チャネル/デーモン再起動の最大バックオフ。 |
provider_backoff_ms | 整数 | 500 | model_provider のリトライ遅延の基本バックオフ(ミリ秒)。 |
provider_retries | 整数 | 2 | モデルプロバイダーごとの、中断するまでのリトライ回数。 |
scheduler_poll_secs | 整数 | 15 | スケジューラーのポーリング間隔 (秒)。 |
scheduler_retries | 整数 | 2 | cron ジョブ実行試行の最大リトライ回数。 |
risk_profiles
名前付きのリスク/自律性プロファイル ([risk_profiles.<alias>])。
risk_profiles.<alias>
名前付きリスク/自律性プロファイル ([risk_profiles.<alias>])。
統一されたポリシー面。エージェントはエイリアスでプロファイルを参照し、ランタイムはそれを通じてシェルコマンドの許可リスト、承認ゲート、サンドボックス/リソース制限、委譲ガードレールを解決します。慣例的な risk_profiles["default"] は非エージェントコンテキスト(オーケストレーターの初期化、cron ワーカーの起動)における解決対象です。以下の Default 実装は従来の安全性優先のデフォルトを反映しており、新規インストールがプロファイル単位の分割以前の設定と同じように動作するようにします。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
allowed_commands | string[] | ["git","npm","cargo","ls","cat","grep","find","echo","pwd","wc","head","tail","date","df","du","uname","uptime","hostname","python","python3","pip","node","free"] | シェル実行用の実行可能ファイル名の許可リスト。 |
allowed_roots | string[] | [] | エージェントがアクセスできる追加のディレクトリルート |
allowed_tools | string[] | [] | エージェントモードでエージェントが呼び出せるツール。空 = 継承 / なし |
always_ask | string[] | [] | このプロファイルで常に承認が必要なツール。 |
approval_route | オブジェクト | — | ツール承認を専用の承認チャネルにルーティングし、フェイルクローズドをデフォルトとします。 |
auto_approve | string[] | ["file_read","memory_recall","web_search_tool","web_fetch","calculator","glob_search","content_search","image_info","weather","tool_search","browser","browser_open"] | このプロファイルで承認が不要なツールです。 |
block_high_risk_commands | ブール値 | true | 許可リストに登録されている場合でも高リスクのコマンドをブロックする。 |
delegation_policy | オブジェクト | — | エージェントが共有する作業に送信するためのリスクプロファイル委任ポリシー。 |
excluded_tools | string[] | [] | このプロファイルで非CLIチャネルから除外されるツール。 |
firejail_args | string[] | [] | sandbox_backend = “firejail” のときに firejail に転送される追加の引数。 |
forbidden_paths | string[] | ["/etc","/root","/home","/usr","/bin","/sbin","/lib","/opt","/boot","/dev","/proc","/sys","/var","/tmp","~/.ssh","~/.gnupg","~/.aws","~/.config"] | 明示的なパス拒否リスト。 |
level | table | — | エージェントの自律性レベル(自律性の低い順から高い順)。 |
require_approval_for_medium_risk | ブール値 | true | 中リスクの操作には承認を必須にします。 |
sandbox_backend | string? | null | サンドボックスのバックエンド識別子(例: "firejail"、"landlock")。None の場合は継承します。 |
sandbox_enabled | bool? | null | このプロファイルでサンドボックスが有効かどうか。None の場合はグローバル設定を継承します。 |
shell_env_passthrough | string[] | [] | シェルのサブプロセスに渡される環境変数名。 |
workspace_only | ブール値 | true | ファイルシステムアクセスをワークスペース相対パスに制限します。デフォルト: false。 |
risk_profiles.<alias>.approval_route
ツール承認を専用の承認チャネルにルーティングし、フェイルクローズドをデフォルトとします。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
approver_channel* | string | — | 登録済みのチャネル名(オリジネーターではない)— distinct-approver ホップ。 |
on_no_approver | table | — | 設定された承認者に到達できない場合の動作。デフォルトは FAIL-CLOSED です。 |
timeout_secs | 整数 | 120 | 承認者の応答ウィンドウを制限します。タイムアウトすると拒否されます(DoSガード)。デフォルトは120秒です。 |
risk_profiles.<alias>.delegation_policy
エージェントが共有する作業に送信するためのリスクプロファイル委任ポリシー。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
mode | table | — | リスクプロファイルの委任モード。 |
runtime
ランタイムアダプター設定([runtime]セクション)。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
docker | オブジェクト | — | Docker ランタイム構成 ([runtime.docker] セクション)。 |
kind | native | docker | cloudflare | — | ランタイムアダプターの種類。 |
reasoning_effort | string? | null | レベル制御を公開する model_providers 向けのオプションの推論努力。 |
reasoning_enabled | bool? | null | モデルプロバイダーが明示的な制御を公開している場合の、グローバルな推論のオーバーライド。 |
shell | string? | null | ネイティブランタイムがコマンド実行に使用するシェルバイナリ。 |
runtime.docker
Docker ランタイム構成 ([runtime.docker] セクション)。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
allowed_workspace_roots | string[] | [] | フェイルクローズドな Docker マウント検証用のオプションのワークスペースルート許可リスト: mount_workspace が有効な場合、このリストが空であってもワークスペースが存在し、正規化できなければならない。設定されたルートもすべて存在し、正規化できなければならない。無効なエントリが 1 つでもあると、Docker の起動前にコマンドが拒否される。空のリストでは、正規化された任意のワークスペースが許可される。 |
cpu_limit | 番号? | 1.0 | オプションの CPU 制限 (None = 明示的な制限なし)。 |
image | string | "alpine:3.20" | シェルコマンドを実行するために使用されるランタイムイメージ。 |
memory_limit_mb | integer? | 512 | MB 単位のオプションのメモリ制限 (None = 明示的な制限なし)。 |
mount_workspace | ブール値 | true | 設定されたワークスペースを /workspace にマウント。 |
network | string | "none" | Docker ネットワークモード (none、bridge など)。 |
read_only_rootfs | ブール値 | true | ルートファイルシステムを読み取り専用としてマウント。 |
runtime_profiles
名前付きランタイム/LLM実行プロファイル([runtime_profiles.<alias>])。
runtime_profiles.<alias>
名前付きランタイム/LLM実行プロファイル([runtime_profiles.<alias>])。
再利用可能な運用チューニング: エージェントモード、反復回数の上限、コンテキスト予算、並列ディスパッチ、リソース上限、再帰の深さ、そして SecurityPolicy がサブエージェントの親サブセット規律とともに強制する予算調整項目。認可に関するもの(許可されたコマンド/ツール/パス、承認ゲート、サンドボックス)はすべて [risk_profiles.<alias>] に配置されます。モデルプロバイダーに関するもの(model、temperature、max_tokens、timeout_secs)はすべて [providers.models.<type>.<alias>] に配置されます。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
agentic | ブール値 | false | agentic(マルチターンのツール呼び出しループ)モードを有効にする。 |
agentic_timeout_secs | integer? | null | Agentic デリゲートの実行タイムアウト(秒)。None はグローバルを継承します。 |
auto_classify | オブジェクト | — | |
compact_context | bool? | null | コンパクトブートストラップを使用します(6000文字 / 2 RAGチャンク)。Noneは継承します。 |
context_compression | オブジェクト | — | |
delegation_timeout_secs | integer? | null | デリゲート呼び出しのタイムアウト(秒)。None はグローバルなデリゲートタイムアウトを継承します。 |
eval | オブジェクト | — | |
history_pruning | オブジェクト | — | |
keep_tool_context_turns | integer? | null | 完全なツールコンテキストが保持される最近のターン数。None は継承します。 |
max_actions_per_hour | 整数 | 20 | 1時間あたりに許可される最大アクション数。0 はハードゼロ予算です — the |
max_context_tokens | integer? | null | コンパクション前のコンテキストの推定トークンの最大値。None は継承します。 |
max_cost_per_day_cents | 整数 | 500 | 1日あたりの最大コスト(セント単位)。0 はグローバル制限を継承します。 |
max_delegation_depth | 整数 | 0 | 最大委譲再帰深度。0 はデフォルトを継承します。 |
max_history_messages | integer? | null | セッションごとに保持される会話履歴メッセージの最大数。None は継承します。 |
max_system_prompt_chars | integer? | null | 組み立てられたシステムプロンプトの最大文字数。None は継承します。 |
max_tool_iterations | 整数 | 0 | エージェントモードにおけるツール呼び出しの最大イテレーション数。0 はグローバルのデフォルトを継承します。 |
max_tool_result_chars | integer? | null | 単一のツール結果の最大文字数。None は継承します。 |
memory_recall_limit | integer? | null | 1ターンあたりに注入されるメモリエントリの最大数。None はグローバルのデフォルト (5) を継承します。 |
parallel_tools | bool? | null | イテレーションごとの並列ツール実行を有効にします。None は継承します。 |
prompt_injection_mode | table | — | スキル読み込み設定 ([skills] セクション)。 |
shell_timeout_secs | 整数 | 60 | シェルサブプロセスのタイムアウト(秒)。0 はグローバルタイムアウトを継承します。 |
strict_tool_parsing | ブール値 | false | |
thinking | オブジェクト | — | 思考/推論レベル制御の設定。 |
tool_call_dedup_exempt | string[] | [] | ターン内の重複排除チェックから除外されるツール。 |
tool_dispatcher | string? | null | ツールディスパッチ戦略(例: "auto")。None は継承します。 |
tool_filter_groups | object[] | [] | |
tool_receipts | オブジェクト | — | エージェントごとの HMAC ツール実行レシート設定 |
runtime_profiles.<alias>.auto_classify
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
complex_hint | string? | null | |
cost_optimized_hint | string | "cost-optimized" | |
simple_hint | string? | null | |
standard_hint | string? | null |
runtime_profiles.<alias>.context_compression
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | false | ランタイムコンテキストコンプレッサーは削除されました。ランタイム実行パスはありません |
identifier_policy | string | "strict" | |
max_passes | 整数 | 3 | |
protect_first_n | 整数 | 3 | |
protect_last_n | 整数 | 4 | |
source_max_chars | 整数 | 50000 | |
summary_max_chars | 整数 | 4000 | |
summary_model | string? | null | 互換性のためのフォールバックとして保持されている非推奨の裸のモデルID。 |
summary_provider | string | — | 設定済みの [providers.models.<type>.<alias>] エントリへの参照。 |
threshold_ratio | number | 0.5 | |
timeout_secs | 整数 | 60 | |
tool_result_retrim_chars | 整数 | 2000 | |
tool_result_trim_exempt | string[] | [] |
runtime_profiles.<alias>.eval
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | false | |
max_retries | 整数 | 1 | |
min_quality_score | number | 0.5 |
runtime_profiles.<alias>.history_pruning
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
collapse_tool_results | ブール値 | true | |
enabled | ブール値 | false | |
keep_recent | 整数 | 4 | |
max_tokens | 整数 | 8192 |
runtime_profiles.<alias>.thinking
思考/推論レベル制御の設定。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
budget_tokens | map | {} | |
default_level | off | minimal | low | medium | high | max | — | 与えられたメッセージに対してモデルがどれだけ深く推論すべきか。 |
display | off | omitted | updates | summarized | — | Anthropic の thinking.display ベータ版のユーザー向け設定 |
native_thinking | ブール値 | false | 選択したレベルに予算が設定されている場合、プロバイダー ネイティブの思考パラメーターを有効にします。 |
runtime_profiles.<alias>.tool_receipts
エージェントごとの HMAC ツール実行レシート設定 ([agents.<alias>.tool_receipts])。
レシートは、ツール結果に付加される短いHMAC-SHA256タグであり、実際には実行されていないツールをモデルが実行したと主張できないようにします。docs/book/src/security/tool-receipts.md を参照してください。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | false | すべてのツール実行時にHMACレシートを生成します。デフォルト: false。 |
inject_system_prompt | ブール値 | true | receipt-echo命令をシステムプロンプトに注入して、 |
show_in_response | ブール値 | false | ユーザーに表示される返信の末尾に Tool receipts: ブロックを追加して、 |
scheduler
定期的なタスク実行用スケジューラー設定([scheduler]セクション)。
cron ランタイムのつまみを管理します。ジョブごとの宣言は Config.cron: HashMap<String, CronJobDecl>(エイリアスをキーとする)に存在し、スケジューラーループのランタイム動作(enabled、ポーリング上限、キャッチアップ)はこちらに存在します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
catch_up_on_startup | ブール値 | true | スケジューラ起動時にすべての期限切れジョブを実行します。デフォルト: true。 |
enabled | ブール値 | true | ビルトインのスケジューラーループを有効にします。false の場合、cron ジョブは実行されません。 |
max_concurrent | 整数 | 4 | 1回のポーリングサイクル内で並列実行されるタスクの最大数。 |
max_run_history | 整数 | 50 | 保持する cron 実行レコードの履歴の最大数。デフォルト: 50。 |
max_tasks | 整数 | 64 | ポーリングサイクルごとに永続化されるスケジュール済みタスクの最大数。 |
schema_version
設定ファイルのスキーマバージョン。
secrets
シークレット暗号化設定 ([secrets] セクション)。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
encrypt | ブール値 | true | 保存時のAPIキーとトークンの暗号化を有効にする |
security
監査ログ、OTP、非常停止、IAM/SSO、WebAuthn、およびホストの NAT64 エグレス境界のセキュリティ設定。
サンドボックスのバックエンドとリソース制限は、エージェントごとのリスクプロファイル(RiskProfileConfig::sandbox_* と RiskProfileConfig::max_* を参照)に存在します。ランタイムは Config::active_risk_profile(agent_alias) を介してそれらを解決します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
audit | オブジェクト | — | 監査ログ設定 |
estop | map | — | 緊急停止設定。 |
leak_detection | オブジェクト | — | アウトバウンドクレデンシャル漏洩検出の設定。 |
nat64_prefixes | string[] | [] | このホストにデプロイされたネットワーク固有の RFC 6052 NAT64 プレフィックス |
nevis | map | — | Nevis IAM 統合設定。 |
otp | map | — | セキュリティ OTP 設定。 |
webauthn | オブジェクト | — | WebAuthn / FIDO2 ハードウェアキー認証設定 ([security.webauthn])。 |
security.audit
監査ログ設定
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | true | 監査ログを有効にします |
log_path | string | "audit.log" | 監査ログファイルへのパス (zeroclaw ディレクトリからの相対パス) |
max_size_mb | 整数 | 100 | ローテーション前のログの最大サイズ (MB) |
sign_events | ブール値 | false | 改ざん証拠のための HMAC でイベントに署名 |
security.estop
緊急停止設定。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | false | 緊急停止コントロールを有効にします。 |
require_otp_to_resume | ブール値 | true | 再開操作の前に有効なOTPが必要です。 |
state_file | string | "/home/runner/.zeroclaw/estop-state.json" | estop状態を永続化するために使用されるファイルパス。 |
security.leak_detection
アウトバウンドクレデンシャル漏洩検出の設定。
これらの設定は、送信チャネル応答が配信される前に実行される最終的なガードレールパスを制御します。決定論的な認証情報パターンには、APIキー、秘密鍵、データベースURL、ボットトークン、および関連するトークン構文が含まれます。高エントロピーパスは、独立した不透明なトークンに対する別個のヒューリスティックです。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | true | アウトバウンドのクレデンシャル漏洩の検出とリダクションを有効にする。 |
high_entropy_tokens | ブール値 | true | 高エントロピー トークンのリダクションを有効にする。false の場合でも決定論的パターンは引き続き実行されます。 |
sensitivity | number | 0.7 | 検出感度は 0.0 から 1.0 まで。高いほど積極的です。 |
security.nevis
Nevis IAM 統合設定。
enabledがtrueの場合、ZeroClawはNevis Security Suiteインスタンスに対して受信リクエストを検証し、Nevisロールをツール/ワークスペース権限にマップします。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
client_id | string | "" | Nevisに登録されたOAuth2クライアントID。 |
client_secret 🔑 | string? | null | OAuth2クライアントシークレット。ディスクに保存される際はSecretStoreで暗号化されます。 |
enabled | ブール値 | false | Nevis IAM統合を有効にします。後方互換性のためデフォルトではfalseです。 |
instance_url | string | "" | NevisインスタンスのベースURL(例:https://nevis.example.com)。 |
jwks_url | string? | null | ローカルトークン検証用のJWKSエンドポイントURL。 |
realm | string | "master" | 認証対象のNevisレルム。 |
require_mfa | ブール値 | false | すべてのNevis認証済みリクエストのMFA検証が必須です。 |
role_mapping | map[] | [] | NevisロールからZeroClaw権限へのマッピング。 |
session_timeout_secs | 整数 | 3600 | セッションタイムアウト(秒単位)。 |
token_validation | string | "local" | トークン検証戦略:"local"(JWKS)または"remote"(イントロスペクション)。 |
security.otp
セキュリティ OTP 設定。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
cache_valid_secs | 整数 | 300 | 最近検証されたOTPコードの再利用ウィンドウ。 |
challenge_max_attempts | 整数 | 3 | ロックアウトされるまでのOTPチャレンジの最大試行回数。 |
enabled | ブール値 | false | OTPゲーティングを有効にします。後方互換性のためデフォルトでは無効です。 |
gated_actions | string[] | ["shell","file_write","browser_open","browser","memory_forget"] | OTP によってゲートされたツール/アクション名。空または不正な形式のエントリは拒否されます |
gated_domain_categories | string[] | [] | gated_domainsに展開されるドメインカテゴリプリセット。 |
gated_domains | string[] | [] | OTPによってゲーティングされるドメインパターンの明示的指定。 |
method | table | — | OTP検証戦略。 |
token_ttl_secs | 整数 | 30 | TOTPのタイムステップ(秒単位)。 |
security.webauthn
WebAuthn / FIDO2 ハードウェアキー認証設定 ([security.webauthn])。
ハードウェアセキュリティキー (YubiKey、SoloKey など) およびプラットフォーム認証器 (Touch ID、Windows Hello) を使用した登録と認証を有効にします。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | false | WebAuthn認証を有効にする。デフォルト: false。 |
rp_id | string | "localhost" | Relying Party ID (ドメイン名、例: “example.com”)。デフォルト: “localhost”。 |
rp_name | string | "ZeroClaw" | Relying Party表示名。デフォルト: “ZeroClaw”。 |
rp_origin | string | "http://localhost:42617" | Relying Party オリジン URL (例: "https://example.com")。デフォルト: "http://localhost:42617"。 |
security_ops
マネージドサイバーセキュリティサービス (MCSS) ダッシュボードエージェント設定 ([security_ops])。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
auto_triage | ブール値 | false | ユーザープロンプトなしで受信アラートを自動的にトリアージします。 |
enabled | ブール値 | false | セキュリティ運用ツールを有効にする。 |
max_auto_severity | string | "low" | 承認なしで自動修復できる最大重大度レベル。 |
playbooks_dir | string | "/home/runner/.zeroclaw/playbooks" | インシデント対応プレイブック定義 (JSON) を含むディレクトリ。 |
report_output_dir | string | "/home/runner/.zeroclaw/security-reports" | 生成されたセキュリティレポート用ディレクトリ。 |
require_approval_for_actions | ブール値 | true | プレイブックアクション実行前に人間の承認が必要。 |
siem_integration | string? | null | アラート取得用のオプションSIEM Webhook URL。 |
shell_tool
シェルツール設定 ([shell_tool] セクション)。
shell 実行ツールの動作を制御します。主なチューニング可能なパラメータは timeout_secs です。これは単一のシェルコマンドが実行できる最大ウォールクロック時間であり、これを超えるとコマンドは強制終了されます。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
timeout_secs | 整数 | 60 | シェルコマンドの最大実行時間 (秒単位、デフォルト: 60)。 |
skill_bundles
名前付きスキルバンドル([skill_bundles.<alias>])。
skill_bundles.<alias>
名前付きスキルバンドル ([skill_bundles.<alias>])。
再利用可能なスキルのグループで、エイリアスによってエージェントまたはチャネルにアタッチでき、どのスキルがどこから読み込まれるかを制御します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
directory | string? | null | スキルを読み込むディレクトリパス(ワークスペースルートからの相対パス) |
exclude | string[] | [] | このバンドルから除外するスキル名。 |
include | string[] | [] | 含めるスキル名。空の場合はdirectory内のすべてのスキルを含めます。 |
skills
スキル読み込み設定 ([skills] セクション)。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
allow_scripts | ブール値 | false | スキルでスクリプト形式のファイル (.sh、.bash、.ps1、シバン付きシェルファイル) を許可する。 |
extra_registries | object[] | — | 追加のユーザー設定スキルレジストリ、インストール元: |
install_suggestions | オブジェクト | — | プロンプトでトリガーされるスキルインストールの提案([skills.install_suggestions]セクション)。 |
open_skills_dir | string? | null | ローカルオープンスキルリポジトリへのオプションパス。 |
open_skills_enabled | ブール値 | false | コミュニティオープンスキルリポジトリの読み込みと同期を有効にする。 |
prompt_injection_mode | table | — | スキル読み込み設定 ([skills] セクション)。 |
registry_url | string? | null | bare-name インストール用のスキルレジストリリポジトリの URL。 |
skill_creation | オブジェクト | — | 自動スキル作成設定 ([skills.skill_creation] セクション)。 |
skill_improvement | オブジェクト | — | スキル自己改善設定([skills.skill-improvement] セクション)。 |
skills.install_suggestions
プロンプトでトリガーされるスキルインストールの提案([skills.install_suggestions]セクション)。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | false | 通常のエージェントターンの前に、インストール可能なスキルの提案を有効にします。 |
skills.skill_creation
自動スキル作成設定 ([skills.skill_creation] セクション)。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | false | 成功したマルチステップタスク後の自動スキル作成を有効にする。 |
max_final_answer_chars | 整数 | 2000 | に入力される最終アシスタント回答の最大文字数 |
max_skills | 整数 | 500 | 自動生成されたスキルを保持する最大数。 |
max_task_chars | 整数 | 1000 | リフレクションに入力されるタスク説明の最大文字数 |
max_tool_trace_chars | 整数 | 4000 | に入力されるレンダリングされたツールコール トレースの最大文字数 |
reflection_enabled | ブール値 | false | 実行トレースから正規のSKILL.mdを統合的に生成します |
similarity_threshold | number | 0.85 | 重複排除のための埋め込み類似度閾値。 |
skills.skill_improvement
スキル自己改善設定([skills.skill-improvement] セクション)。
会話で明らかになった内容に基づいてスキルをパッチ、拡張、またはアーカイブする可能性がある、ターン後のバックグラウンドレビューフォークを制御します。このフォークは制限されたツールセット(skills_list、skill_view、skill_manage のみ)で実行され、ユーザーに表示される会話には決して影響しません。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
cooldown_secs | 整数 | 3600 | 同じスキルのレビュー間の最小間隔(秒単位)。 |
enabled | ブール値 | false | バックグラウンドの skill-review フォークを有効にします。デフォルト: false。 |
max_review_iterations | 整数 | 8 | レビューフォーク自体が実行できるツール呼び出しの最大反復回数。 |
nudge_interval_iterations | 整数 | 10 | 少なくともこの回数のツール呼び出しの反復が行われた時点で、レビュー用フォークを生成します |
sop
標準操作手順エンジン設定 ([sop])。
default_execution_modeフィールドは、sop::typesのSopExecutionMode型を使用します(sop::SopExecutionModeを経由して再エクスポート)。循環モジュール参照を避けるため、configは同じenum定義を使用して保存します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
approval | オブジェクト | — | [sop.approval] - 承認ブローカーのポリシー設定。永続的な ID ソース |
approval_mode | table | — | SOP承認ゲートを解除できるユーザー。execution_mode / priority / と組み合わせて使用します。 |
approval_timeout_action | table | — | SOP承認ゲートがタイムアウトしたときの動作。デフォルトはフェイルクローズです: |
approval_timeout_secs | 整数 | 300 | 承認タイムアウト(秒)。実行が承認を待つ時間が次の値より長い場合 |
default_execution_mode | string | "supervised" | execution_modeを省略したSOPのデフォルト実行モード。 |
maintenance_interval_secs | 整数 | 60 | デーモンがSOPメンテナンスタックを実行する頻度(秒): fire |
max_concurrent_total | 整数 | 4 | すべてのSOPにわたるSOPの最大同時実行数。 |
max_finished_runs | 整数 | 100 | ステータスクエリのためにメモリに保持される完了実行の最大数。 |
max_step_retries | 整数 | 2 | ステップ失敗ポリシーによって許可される最大再試行回数。 |
max_step_visits | 整数 | 256 | ルーティングされた SOP 実行が 1 つのステップを訪問できる最大回数。 |
persist_runs | ブール値 | true | 再起動をまたいで実行状態を永続的に保存します。デフォルト true: build_sop_engine |
procedural_memory_enabled | ブール値 | false | SOP 手続き記憶提案ツーリングを有効にします。デフォルト false は保持します |
run_state_dir | string? | null | 永続的な実行ストア用のディレクトリ(mode-0700 で作成)。省略した場合、 |
run_store_backend | table | — | 永続的なSOP実行状態バックエンドセレクター。閉じた、コンパイル時に既知のセットなので、それ |
sops_dir | string? | null | SOP定義を含むディレクトリ(SOP.toml + SOP.mdを含むサブディレクトリ)。 |
step_mandatory_tools | string[] | ["sop_advance","sop_approve","sop_status"] | ステップスコープが適用されている間も利用可能なままとなるツール名。 |
step_schema_enforce | ブール値 | true | ステップがそれらを宣言している場合、ステップごとの入力/出力スキーマを強制します。 |
step_scope_enforce | ブール値 | false | ステップごとのツールスコープを強制します。デフォルト false では tools: を助言的に保ちます。 |
untrusted_frame_warning | ブール値 | true | 信頼できないコンテンツのフレーム内に説明的な警告テキストを含める。 |
untrusted_guard_sensitivity | number | 0.7 | 信頼できないSOPコンテンツに対するプロンプトガードおよびアウトバウンドリダクションの感度。 |
untrusted_input_guard | string | "warn" | 信頼できないSOPトリガー入力に対するプロンプトガードのアクション: warn、block、または sanitize。 |
untrusted_outbound_redact | ブール値 | true | 永続化/監査コンシューマーが書き込む前に、送信SOPコンテンツをマスキングします。 |
untrusted_payload_max_bytes | 整数 | 8192 | 信頼できないSOPトリガーのペイロード/トピックコンテンツから受け入れられる最大バイト数 |
sop.approval
[sop.approval] - 承認ブローカーのポリシー設定。チャネルから提供される承認者のための永続的な ID ソース(一時しのぎではありません): 承認ブローカーは、グループメンバーシップとクォーラムのチェックにこれを使用します。空 = ブローカーポリシーは適用されません。
ファミリーごとに1スロット(groups、policies)。各スロットは [sop.approval.<slot>.<alias>] マップです。フィールドごとのリファレンスは専用のセクションページを参照してください。
storage
永続ストレージ設定 ([storage] セクション)。
ストレージは2階層のエイリアスをキーとするマップです: [storage.<backend>.<alias>] で、[providers.models.<type>.<alias>] と並列の構造になっています。各バックエンドは独自の型付き設定構造体を持ちます。MemoryConfig.backend はドット区切りの参照("sqlite.default"、"postgres.work")を保持し、[Config::resolve_active_storage] を介してこれらのエントリのいずれかに解決されます。
ファミリーごとに1つのスロット(lucid、markdown、postgres、qdrant、sqlite)。各スロットは [storage.<slot>.<alias>] マップです。フィールドごとのリファレンスについては、専用のセクションページを参照してください。
text_browser
テキストブラウザツール設定 ([text_browser] セクション)。
テキストベースのブラウザ(lynx、links、w3m)を使用してWebページをプレーンテキストでレンダリングします。グラフィカルブラウザのないヘッドレス/SSH環境向けに設計されています。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
allowed_private_hosts | string[] | [] | プライベート/内部ホストで公開アドレスのSSRFチェックを緩和できるようにしました。 |
enabled | ブール値 | false | text_browserツールを有効にする |
preferred_browser | string? | null | 推奨テキストブラウザ(“lynx”、“links”、または“w3m“)。未設定の場合は自動検出します。 |
timeout_secs | 整数 | 30 | リクエストタイムアウト(秒単位)(デフォルト: 30) |
transcription
マルチプロバイダー対応の音声文字起こし設定。
トップレベルのapi_url、model、およびapi_keyフィールドは、既存のGroqベース構成との後方互換性のために残されています。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
api_key 🔑 | string? | null | 文字起こしリクエストに使用するAPIキー(Groq文字起こしプロバイダー)。 |
api_url | string | "https://api.groq.com/openai/v1/audio/transcriptions" | Whisper APIエンドポイントURL(Groq文字起こしプロバイダー)。 |
assemblyai | オブジェクト | — | AssemblyAI STT model_provider 設定([transcription.assemblyai])。 |
deepgram | オブジェクト | — | Deepgram STT model_provider 設定([transcription.deepgram])。 |
enabled | ブール値 | false | それをサポートするチャネルの音声トランスクリプションを有効にします。 |
google | オブジェクト | — | Google Cloud Speech-to-Text の model_provider 設定([transcription.google])。 |
initial_prompt | string? | null | 予想される語彙への文字起こしをバイアスするためのオプションの初期プロンプト |
language | string? | null | Groq文字起こしプロバイダー向けのオプションの言語ヒント(ISO-639-1、例: “en”、“ru”)。 |
local_whisper | オブジェクト | — | ローカル/自己ホストの Whisper 互換 STT エンドポイント ([transcription.local_whisper])。 |
max_audio_bytes | integer? | null | バイト単位での音声サイズの上限(任意のグローバル設定)。次の処理の前に適用されます |
max_duration_secs | 整数 | 120 | 最大音声時間 (秒単位) (これより長いメッセージはスキップされます)。 |
model | string | "whisper-large-v3-turbo" | Whisperモデル名(Groq文字起こしプロバイダー)。 |
openai | オブジェクト | — | OpenAI Whisper STT の model_provider 設定 ([transcription.openai])。 |
transcribe_non_ptt_audio | ブール値 | false | WhatsApp で非 PTT (転送/通常) 音声メッセージも文字起こしします。 |
transcription.assemblyai
AssemblyAI STT model_provider 設定([transcription.assemblyai])。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
api_key 🔑 | string? | null | AssemblyAI API キー。 |
transcription.deepgram
Deepgram STT model_provider 設定([transcription.deepgram])。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
api_key 🔑 | string? | null | Deepgram API キー。 |
model | string | "nova-2" | Deepgram モデル名 (デフォルト: “nova-2”)。 |
transcription.google
Google Cloud Speech-to-Text の model_provider 設定([transcription.google])。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
api_key 🔑 | string? | null | Google Cloud API キー。 |
language_code | string | "en-US" | BCP-47 言語コード (デフォルト: “en-US”)。 |
transcription.local_whisper
ローカル/自己ホストの Whisper 互換 STT エンドポイント ([transcription.local_whisper])。
自己ホストの STT エンドポイントを構成します。ローカルホスト、プライベート ネットワーク ホスト、または到達可能な任意の URL 上に配置できます。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
bearer_token 🔑 | string? | null | エンドポイント認証用のベアラー トークン。 |
max_audio_bytes | 整数 | 26214400 | このエンドポイントが受け入れる最大音声ファイル サイズ (バイト単位)。 |
timeout_secs | 整数 | 300 | リクエストのタイムアウト (秒単位)。デフォルトは 300 (ローカル GPU の大きなファイル)。 |
url* | string | — | HTTP または HTTPS エンドポイント URL、例: "http://10.10.0.1:8001/v1/transcribe"。 |
transcription.openai
OpenAI Whisper STT の model_provider 設定 ([transcription.openai])。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
api_key 🔑 | string? | null | Whisper 文字起こし用の OpenAI API キー。 |
model | string | "whisper-1" | Whisper モデル名 (デフォルト: “whisper-1”)。 |
trust
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
correction_penalty | number | 0.05 | |
decay_half_life_days | number | 30.0 | |
initial_score | number | 0.8 | |
regression_threshold | number | 0.5 | |
success_boost | number | 0.01 |
tts
Text-to-Speech サブシステムの構成([tts])。
インスタンスごとの TTS 設定は [tts_providers.<type>.<alias>] の下に配置されます(providers.models と同様)。ここに残っているのは、すべての model_provider 呼び出しに適用されるグローバルなランタイム設定です。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
default_format | string | "mp3" | デフォルトオーディオ出力形式("mp3"、"opus"、"wav")。 |
default_voice | string | "alloy" | 選択した TTS プロバイダーに渡されるデフォルトのボイス ID。 |
enabled | ブール値 | false | TTS合成を有効化。 |
max_text_length | 整数 | 4096 | 最大入力テキスト長(文字数、デフォルト4096)。 |
tunnel
ゲートウェイを公開するためのトンネル設定 ([tunnel] セクション)。
サポートされている model_providers: "none" (デフォルト)、"cloudflare"、"tailscale"、"ngrok"、"openvpn"、"pinggy"、"custom"。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
cloudflare | オブジェクト | — | |
custom | オブジェクト | — | |
ngrok | オブジェクト | — | |
openvpn | オブジェクト | — | OpenVPNトンネル設定([tunnel.openvpn])。 |
pinggy | オブジェクト | — | |
tailscale | オブジェクト | — | |
tunnel_provider | string | "none" | ゲートウェイをパブリックインターネットに公開して、Webhook(Telegram、Slack など)が到達できるようにする方法。none = ローカルのまま、トンネルなし。cloudflare = cloudflared 経由の Cloudflare Tunnel(Zero Trust アカウントとトークンが必要)。tailscale = Tailscale Funnel/Serve(tailnet 内のみまたはパブリック、tailscale 以外のアカウント不要)。ngrok = 認証トークンを使う ngrok エージェント。openvpn = 独自の OpenVPN 出口を使用。pinggy = Pinggy SSH トンネル(手軽なワンショット URL)。custom = [tunnel.custom] で定義した任意のコマンドを実行。 |
tunnel.cloudflare
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
token 🔑 | string | "" | Cloudflare Tunnel トークン (Zero Trust ダッシュボードから取得) |
tunnel.custom
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
health_url | string? | null | トンネルの健全性をチェックするオプション URL |
start_command | string | "" | トンネルを起動するコマンドテンプレート。{port} と {host} プレースホルダーを使用します。 |
url_pattern | string? | null | コマンド stdout から公開 URL を抽出するオプション正規表現 |
tunnel.ngrok
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
auth_token 🔑 | string | "" | ngrok 認証トークン |
domain | string? | null | オプションのカスタムドメイン |
tunnel.openvpn
OpenVPNトンネル設定([tunnel.openvpn])。
tunnel.tunnel_provider = "openvpn" の場合は必須です。このセクションを完全に省略すると、以前の動作が維持されます。tunnel.tunnel_provider = "none" を設定する(または [tunnel.openvpn] ブロックを削除する)と、トンネルなしモードにクリーンに戻ります。
デフォルト: connect_timeout_secs = 30。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
advertise_address | string? | null | VPN 接続後にアドバタイズされるアドレス (例: "10.8.0.2:42617")。 |
auth_file | string? | null | 認証資格情報ファイルへのオプションパス (--auth-user-pass)。 |
config_file* | string | — | .ovpn 設定ファイルへのパス (空にすることはできません)。 |
connect_timeout_secs | 整数 | 30 | 接続タイムアウト (秒単位、デフォルト: 30、0 より大きい必要があります)。 |
extra_args | string[] | [] | そのまま転送される追加の openvpn CLI 引数。 |
tunnel.pinggy
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
region | string? | null | サーバーリージョン: "us" (USA)、"eu" (ヨーロッパ)、"ap" (アジア)、"br" (南米)、"au" (オーストラリア)、または省略して自動選択。 |
token 🔑 | string? | null | Pinggy アクセストークン (オプション — 無料プランはトークンなしで機能します)。 |
tunnel.tailscale
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
funnel | ブール値 | false | Tailscale Funnel (公開インターネット) vs Serve (tailnet のみ) を使用 |
hostname | string? | null | オプションのホスト名上書き |
verifiable_intent
Verifiable Intent (VI) 資格情報の発行と制約チェック([verifiable_intent] セクション)。
ZeroClaw は発行、暗号処理、型、制約チェックを実装していますが、認証情報チェーンの検証器は実装していません。実装されるまでは、vi_verify ツールはモデルから参照可能なレジストリから除外されるため、以下のどちらのキーでも認証情報の検証は有効になりません。ライブラリのパスには影響ありません。
このセクションを有効にすると、そのギャップが2通りの方法で報告されます。ランタイムは設定を適用するたびにそれをトレースしますが、シンクに到達させるにはログの永続化を有効にする必要があります。zeroclaw doctor と設定 API は、これを verifiable_intent_tool_withheld 検証警告としても報告します。この警告は永続化が無効でも利用できます。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
enabled | ブール値 | false | VI セクションをオプトインします(デフォルト: false)。 |
strictness | string | "strict" | 制約評価に使用する厳密性モード。 |
web_fetch
Webフェッチツール設定 ([web_fetch] セクション)。
Webページを取得し、LLMで利用できるようHTMLをプレーンテキストに変換します。ドメインフィルタリング: allowed_domains は接続可能なホストを制御します(すべてのパブリックホストを対象にするには ["*"] を使用します)。blocked_domains は allowed_domains より優先されます。allowed_domains が空の場合、すべてのリクエストが拒否されます(デフォルトで拒否)。同一ホストへのリダイレクトには従いますが、検証済みのDNS応答をリクエストのトランスポートに固定したままにするため、別ホストへのリダイレクトは拒否されます。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
allowed_domains | string[] | ["*"] | ウェブフェッチで許可するドメイン (完全一致またはサブドメイン一致; ["*"] = すべてのパブリックホスト) |
allowed_private_hosts | string[] | [] | プライベート/内部ホストでパブリックアドレス SSRF チェックの緩和を許可 |
blocked_domains | string[] | [] | ブロックされたドメイン (完全一致またはサブドメイン一致; 常に allowed_domains より優先) |
enabled | ブール値 | true | ウェブページコンテンツの取得用に web_fetch ツールを有効化 |
firecrawl | オブジェクト | — | JS 多用およびボットブロック済みサイト用の Firecrawl フォールバック設定。 |
max_response_size | 整数 | 500000 | 最大応答サイズ (バイト単位、デフォルト: 500KB、プレーンテキストは生 HTML よりもはるかに小さい) |
timeout_secs | 整数 | 30 | リクエストタイムアウト(秒単位)(デフォルト: 30) |
web_fetch.firecrawl
JS 多用およびボットブロック済みサイト用の Firecrawl フォールバック設定。
有効にすると、標準的なウェブフェッチが失敗した場合(HTTPエラー、空のボディ、またはJS専用ページを示唆する100文字未満のボディ)、このツールはFirecrawl APIにフォールバックしてステルスコンテンツ抽出を行います。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
api_key_env | string | "FIRECRAWL_API_KEY" | Firecrawl APIキーの環境変数名 |
api_url | string | "https://api.firecrawl.dev/v1" | Firecrawl APIベースURL |
enabled | ブール値 | false | Firecrawlフォールバックを有効にする |
mode | table | — | Firecrawlフォールバックモード:単一ページをスクレイプするかリンク済みページをクロールします。 |
web_search
Web検索ツール設定 ([web_search] セクション)。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
bocha_api_key 🔑 | string? | null | Bocha AI Web Search API キー(search_provider が "bocha" の場合に必須)。取得先: https://open.bochaai.com。 |
brave_api_key 🔑 | string? | null | Brave Search APIキー(search_providerが“brave“の場合に必須) |
enabled | ブール値 | true | web_search_toolを有効にしてウェブ検索を行う |
jina_api_key 🔑 | string? | null | Jina AI APIキー(search_providerが「jina」の場合は必須) |
max_results | 整数 | 5 | 検索あたりの最大結果数(1~10) |
search_provider | string | "duckduckgo" | 検索プロバイダー: “duckduckgo”(無料)、“brave”(APIキーが必要)、“tavily”(APIキーが必要)、“searxng”(セルフホスト)、“jina”(APIキーが必要)、または “bocha”(Bocha AI、APIキーが必要 — 中国語対応、https://open.bochaai.com) |
searxng_instance_url | string? | null | SearXNG インスタンスの URL(search_provider が "searxng" の場合は必須)。例: "https://searx.example.com"。 |
tavily_api_key 🔑 | string? | null | Tavily Search API キー(search_provider が “tavily” の場合は必須) |
timeout_secs | 整数 | 15 | リクエストタイムアウト(秒単位) |
wss
WebSocket Secure (WSS) トランスポート (リモートの TUI からデーモンへの接続用) ([wss])。
有効にすると、デーモンは設定されたバインドアドレスとポートでTLS暗号化されたWebSocket接続をリッスンします。TUIクライアントは--connect wss://host:portを介して接続します。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
bind | string | "0.0.0.0" | WSS リスナーのバインドアドレス (デフォルト: “0.0.0.0”)。 |
cert_path | string | "" | PEM エンコード済みサーバー証明書ファイルへのパス。 |
client_auth | オブジェクト | — | リモート WSS トランスポートのクライアント証明書認証(mTLS) |
enabled | ブール値 | false | WSS リスナーを有効にします(デフォルト: false)。 |
handshake_timeout_secs | 整数 | 10 | TLS accept とその両方を対象とする、秒単位の単一の絶対デッドライン |
incomplete_message_timeout_secs | 整数 | 60 | 部分的に受信されたメッセージを保持できる時間(秒) |
key_path | string | "" | PEM エンコード済みサーバー秘密鍵ファイルへのパス。 |
max_pending_handshakes | 整数 | 256 | accept() 後、TLS をまだ完了していないソケット数の上限 |
max_sessions | 整数 | 64 | 同時に確立できる WSS セッション数の上限(デフォルト: 64)。範囲 |
max_sessions_per_client | 整数 | 8 | 1つのクライアント証明書を提示する同時セッション数の上限 |
port | 整数 | 9781 | WSS リスナーのポート(デフォルト: 9781)。 |
sans | string[] | [] | 自動生成されたサーバー証明書の追加のサブジェクト代替名 |
wss.client_auth
リモート WSS トランスポートのクライアント証明書認証(mTLS)([wss.client_auth])。
これは [GatewayClientAuthConfig] に対応します。2 つが別個の構造体になっているのは、Configurable derive がセクションプレフィックスを型にバインドするためだけです。検証ロジック自体は zeroclaw-tls クレートで一元化されています。
ゲートウェイ版とは異なり、require_client_cert の設定項目はありません。リモート WSS プレーンは_常に_相互認証されます(サーバー専用 TLS のパスはありません)。そのため、クライアント証明書は無条件に必須です。
| キー | タイプ | デフォルト | 説明 |
|---|---|---|---|
ca_cert_path | string | "" | クライアント証明書の検証に使用するPEMエンコードされたCA証明書へのパス。 |
crl_path | string | "" | 失効したフィンガープリントのリストへのオプションのパス(1 行に 1 つの SHA-256 16 進値)。A |
enabled | ブール値 | false | 以下のユーザー提供 CA を使用します。false (デフォルト) の場合、デーモン |
pinned_certs | string[] | [] | 証明書ピンニング用のオプションの SHA-256 フィンガープリント。空でない場合、 |