pub struct InitMessage {Show 32 fields
pub session_id: String,
pub cwd: Option<String>,
pub model: Option<String>,
pub tools: Vec<String>,
pub mcp_servers: Vec<Value>,
pub slash_commands: Vec<String>,
pub terminal_slash_commands: Vec<String>,
pub agents: Vec<String>,
pub plugins: Vec<PluginInfo>,
pub skills: Vec<Value>,
pub claude_code_version: Option<String>,
pub messaging_socket_path: Option<String>,
pub api_key_source: Option<ApiKeySource>,
pub output_style: Option<OutputStyle>,
pub permission_mode: Option<InitPermissionMode>,
pub uuid: Option<String>,
pub memory_paths: Option<MemoryPaths>,
pub fast_mode_state: Option<String>,
pub fast_mode_disabled_reason: Option<FastModeDisabledReason>,
pub mcp_server_errors: Option<Vec<McpServerError>>,
pub analytics_disabled: Option<bool>,
pub product_feedback_disabled: Option<bool>,
pub betas: Vec<String>,
pub capabilities: Vec<String>,
pub plugin_errors: Vec<PluginDiagnostic>,
pub plugin_warnings: Vec<PluginDiagnostic>,
pub effort: Option<String>,
pub cloud_session: Option<Value>,
pub footer_indicator: Option<FooterIndicator>,
pub worker_epoch: Option<u64>,
pub powershell_path: Option<Option<String>>,
pub startup_timing: Option<Map<String, Value>>,
}Expand description
Init system message data - sent at session start
Fields§
§session_id: StringSession identifier
cwd: Option<String>Current working directory
model: Option<String>Model being used
tools: Vec<String>List of available tools
mcp_servers: Vec<Value>MCP servers configured
slash_commands: Vec<String>Available slash commands (e.g., “compact”, “cost”, “review”)
terminal_slash_commands: Vec<String>Slash commands only meaningful in a terminal context (CLI 2.1.232+, e.g. “doctor”, “color”)
agents: Vec<String>Available agent types (e.g., “Bash”, “Explore”, “Plan”)
plugins: Vec<PluginInfo>Installed plugins
skills: Vec<Value>Installed skills
claude_code_version: Option<String>Claude Code CLI version
messaging_socket_path: Option<String>Unix socket path for the harness’s inter-session messaging bridge (new in CLI 2.1.232; absent on older CLIs and non-bridged runs)
api_key_source: Option<ApiKeySource>How the API key was sourced
output_style: Option<OutputStyle>Output style
permission_mode: Option<InitPermissionMode>Permission mode
uuid: Option<String>Message-level unique identifier
memory_paths: Option<MemoryPaths>Memory storage paths (e.g., {“auto”: “/path/to/memory/”})
fast_mode_state: Option<String>Fast mode toggle state (e.g., “off”)
fast_mode_disabled_reason: Option<FastModeDisabledReason>Why fast mode can’t serve right now. Absent when nothing blocks it.
mcp_server_errors: Option<Vec<McpServerError>>MCP server config entries (from --mcp-config) that failed validation
and were skipped. Affected servers are absent from mcp_servers.
analytics_disabled: Option<bool>Whether analytics collection is disabled for this session.
product_feedback_disabled: Option<bool>Whether product-feedback prompts are disabled for this session.
betas: Vec<String>API beta flags active for the session.
capabilities: Vec<String>Open-set protocol capability names supported by this CLI.
plugin_errors: Vec<PluginDiagnostic>Plugin load errors.
plugin_warnings: Vec<PluginDiagnostic>Plugin load warnings.
effort: Option<String>The effort level the session will send on its next request — after env
overrides, session state, org caps, and model-support downgrades
("low" | "medium" | "high" | "xhigh" | "max"). None when no
effort parameter will be sent, or on CLIs before 2.1.239.
cloud_session: Option<Value>Only on init frames written by the headless stream-json client of a cloud-hosted session: a per-frame snapshot of the cloud session’s id, view URL, device binding, and directory-sync state. Absent in every other mode. Stored as raw JSON (the shape is internal and evolving).
The terminal’s server-configured ◆ <text> footer pill, carried so a
host UI can render the same pill. Absent when nothing is configured
(CLI 2.1.259+).
worker_epoch: Option<u64>This cloud worker’s life (CLAUDE_CODE_WORKER_EPOCH): a new number
each time the session’s worker is started. Absent outside cloud
workers and on CLIs before 2.1.259.
powershell_path: Option<Option<String>>Windows only: the absolute path of the PowerShell binary this session
runs PowerShell commands with, or Some(None) (wire null) when
none was found. Absent on other platforms and on CLIs before 2.1.259.
startup_timing: Option<Map<String, Value>>Cold-start telemetry for hosted (CCR) sessions: named startup phases and resume-hydration counters. Absent elsewhere. Stored as raw JSON (the shape is internal and evolving) (CLI 2.1.266+).
Trait Implementations§
Source§impl Clone for InitMessage
impl Clone for InitMessage
Source§fn clone(&self) -> InitMessage
fn clone(&self) -> InitMessage
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more