@roo-code/types
Version:
TypeScript type definitions for Roo Code.
957 lines (956 loc) • 949 kB
TypeScript
import { EventEmitter } from 'events';
import { Socket } from 'net';
import { z } from 'zod';
/**
* RooCodeEventName
*/
declare enum RooCodeEventName {
TaskCreated = "taskCreated",
TaskStarted = "taskStarted",
TaskCompleted = "taskCompleted",
TaskAborted = "taskAborted",
TaskFocused = "taskFocused",
TaskUnfocused = "taskUnfocused",
TaskActive = "taskActive",
TaskIdle = "taskIdle",
TaskPaused = "taskPaused",
TaskUnpaused = "taskUnpaused",
TaskSpawned = "taskSpawned",
Message = "message",
TaskModeSwitched = "taskModeSwitched",
TaskAskResponded = "taskAskResponded",
TaskTokenUsageUpdated = "taskTokenUsageUpdated",
TaskToolFailed = "taskToolFailed",
EvalPass = "evalPass",
EvalFail = "evalFail"
}
/**
* RooCodeEvents
*/
declare const rooCodeEventsSchema: z.ZodObject<{
taskCreated: z.ZodTuple<[z.ZodString], null>;
taskStarted: z.ZodTuple<[z.ZodString], null>;
taskCompleted: z.ZodTuple<[z.ZodString, z.ZodObject<{
totalTokensIn: z.ZodNumber;
totalTokensOut: z.ZodNumber;
totalCacheWrites: z.ZodOptional<z.ZodNumber>;
totalCacheReads: z.ZodOptional<z.ZodNumber>;
totalCost: z.ZodNumber;
contextTokens: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
totalTokensIn: number;
totalTokensOut: number;
totalCost: number;
contextTokens: number;
totalCacheWrites?: number | undefined;
totalCacheReads?: number | undefined;
}, {
totalTokensIn: number;
totalTokensOut: number;
totalCost: number;
contextTokens: number;
totalCacheWrites?: number | undefined;
totalCacheReads?: number | undefined;
}>, z.ZodRecord<z.ZodEnum<["execute_command", "read_file", "write_to_file", "apply_diff", "insert_content", "search_and_replace", "search_files", "list_files", "list_code_definition_names", "browser_action", "use_mcp_tool", "access_mcp_resource", "ask_followup_question", "attempt_completion", "switch_mode", "new_task", "fetch_instructions", "codebase_search", "update_todo_list"]>, z.ZodObject<{
attempts: z.ZodNumber;
failures: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
attempts: number;
failures: number;
}, {
attempts: number;
failures: number;
}>>, z.ZodObject<{
isSubtask: z.ZodBoolean;
}, "strip", z.ZodTypeAny, {
isSubtask: boolean;
}, {
isSubtask: boolean;
}>], null>;
taskAborted: z.ZodTuple<[z.ZodString], null>;
taskFocused: z.ZodTuple<[z.ZodString], null>;
taskUnfocused: z.ZodTuple<[z.ZodString], null>;
taskActive: z.ZodTuple<[z.ZodString], null>;
taskIdle: z.ZodTuple<[z.ZodString], null>;
taskPaused: z.ZodTuple<[z.ZodString], null>;
taskUnpaused: z.ZodTuple<[z.ZodString], null>;
taskSpawned: z.ZodTuple<[z.ZodString, z.ZodString], null>;
message: z.ZodTuple<[z.ZodObject<{
taskId: z.ZodString;
action: z.ZodUnion<[z.ZodLiteral<"created">, z.ZodLiteral<"updated">]>;
message: z.ZodObject<{
ts: z.ZodNumber;
type: z.ZodUnion<[z.ZodLiteral<"ask">, z.ZodLiteral<"say">]>;
ask: z.ZodOptional<z.ZodEnum<["followup", "command", "command_output", "completion_result", "tool", "api_req_failed", "resume_task", "resume_completed_task", "mistake_limit_reached", "browser_action_launch", "use_mcp_server", "auto_approval_max_req_reached"]>>;
say: z.ZodOptional<z.ZodEnum<["error", "api_req_started", "api_req_finished", "api_req_retried", "api_req_retry_delayed", "api_req_deleted", "text", "reasoning", "completion_result", "user_feedback", "user_feedback_diff", "command_output", "shell_integration_warning", "browser_action", "browser_action_result", "mcp_server_request_started", "mcp_server_response", "subtask_result", "checkpoint_saved", "rooignore_error", "diff_error", "condense_context", "condense_context_error", "codebase_search_result", "user_edit_todos"]>>;
text: z.ZodOptional<z.ZodString>;
images: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
partial: z.ZodOptional<z.ZodBoolean>;
reasoning: z.ZodOptional<z.ZodString>;
conversationHistoryIndex: z.ZodOptional<z.ZodNumber>;
checkpoint: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
progressStatus: z.ZodOptional<z.ZodObject<{
icon: z.ZodOptional<z.ZodString>;
text: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
text?: string | undefined;
icon?: string | undefined;
}, {
text?: string | undefined;
icon?: string | undefined;
}>>;
contextCondense: z.ZodOptional<z.ZodObject<{
cost: z.ZodNumber;
prevContextTokens: z.ZodNumber;
newContextTokens: z.ZodNumber;
summary: z.ZodString;
}, "strip", z.ZodTypeAny, {
cost: number;
prevContextTokens: number;
newContextTokens: number;
summary: string;
}, {
cost: number;
prevContextTokens: number;
newContextTokens: number;
summary: string;
}>>;
isProtected: z.ZodOptional<z.ZodBoolean>;
apiProtocol: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"openai">, z.ZodLiteral<"anthropic">]>>;
metadata: z.ZodOptional<z.ZodObject<{
gpt5: z.ZodOptional<z.ZodObject<{
previous_response_id: z.ZodOptional<z.ZodString>;
instructions: z.ZodOptional<z.ZodString>;
reasoning_summary: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
}, {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
}>>;
}, "strip", z.ZodTypeAny, {
gpt5?: {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
} | undefined;
}, {
gpt5?: {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
} | undefined;
}>>;
}, "strip", z.ZodTypeAny, {
type: "ask" | "say";
ts: number;
text?: string | undefined;
reasoning?: string | undefined;
ask?: "followup" | "command" | "command_output" | "completion_result" | "tool" | "api_req_failed" | "resume_task" | "resume_completed_task" | "mistake_limit_reached" | "browser_action_launch" | "use_mcp_server" | "auto_approval_max_req_reached" | undefined;
say?: "command_output" | "completion_result" | "error" | "api_req_started" | "api_req_finished" | "api_req_retried" | "api_req_retry_delayed" | "api_req_deleted" | "text" | "reasoning" | "user_feedback" | "user_feedback_diff" | "shell_integration_warning" | "browser_action" | "browser_action_result" | "mcp_server_request_started" | "mcp_server_response" | "subtask_result" | "checkpoint_saved" | "rooignore_error" | "diff_error" | "condense_context" | "condense_context_error" | "codebase_search_result" | "user_edit_todos" | undefined;
images?: string[] | undefined;
partial?: boolean | undefined;
conversationHistoryIndex?: number | undefined;
checkpoint?: Record<string, unknown> | undefined;
progressStatus?: {
text?: string | undefined;
icon?: string | undefined;
} | undefined;
contextCondense?: {
cost: number;
prevContextTokens: number;
newContextTokens: number;
summary: string;
} | undefined;
isProtected?: boolean | undefined;
apiProtocol?: "openai" | "anthropic" | undefined;
metadata?: {
gpt5?: {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
} | undefined;
} | undefined;
}, {
type: "ask" | "say";
ts: number;
text?: string | undefined;
reasoning?: string | undefined;
ask?: "followup" | "command" | "command_output" | "completion_result" | "tool" | "api_req_failed" | "resume_task" | "resume_completed_task" | "mistake_limit_reached" | "browser_action_launch" | "use_mcp_server" | "auto_approval_max_req_reached" | undefined;
say?: "command_output" | "completion_result" | "error" | "api_req_started" | "api_req_finished" | "api_req_retried" | "api_req_retry_delayed" | "api_req_deleted" | "text" | "reasoning" | "user_feedback" | "user_feedback_diff" | "shell_integration_warning" | "browser_action" | "browser_action_result" | "mcp_server_request_started" | "mcp_server_response" | "subtask_result" | "checkpoint_saved" | "rooignore_error" | "diff_error" | "condense_context" | "condense_context_error" | "codebase_search_result" | "user_edit_todos" | undefined;
images?: string[] | undefined;
partial?: boolean | undefined;
conversationHistoryIndex?: number | undefined;
checkpoint?: Record<string, unknown> | undefined;
progressStatus?: {
text?: string | undefined;
icon?: string | undefined;
} | undefined;
contextCondense?: {
cost: number;
prevContextTokens: number;
newContextTokens: number;
summary: string;
} | undefined;
isProtected?: boolean | undefined;
apiProtocol?: "openai" | "anthropic" | undefined;
metadata?: {
gpt5?: {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
} | undefined;
} | undefined;
}>;
}, "strip", z.ZodTypeAny, {
message: {
type: "ask" | "say";
ts: number;
text?: string | undefined;
reasoning?: string | undefined;
ask?: "followup" | "command" | "command_output" | "completion_result" | "tool" | "api_req_failed" | "resume_task" | "resume_completed_task" | "mistake_limit_reached" | "browser_action_launch" | "use_mcp_server" | "auto_approval_max_req_reached" | undefined;
say?: "command_output" | "completion_result" | "error" | "api_req_started" | "api_req_finished" | "api_req_retried" | "api_req_retry_delayed" | "api_req_deleted" | "text" | "reasoning" | "user_feedback" | "user_feedback_diff" | "shell_integration_warning" | "browser_action" | "browser_action_result" | "mcp_server_request_started" | "mcp_server_response" | "subtask_result" | "checkpoint_saved" | "rooignore_error" | "diff_error" | "condense_context" | "condense_context_error" | "codebase_search_result" | "user_edit_todos" | undefined;
images?: string[] | undefined;
partial?: boolean | undefined;
conversationHistoryIndex?: number | undefined;
checkpoint?: Record<string, unknown> | undefined;
progressStatus?: {
text?: string | undefined;
icon?: string | undefined;
} | undefined;
contextCondense?: {
cost: number;
prevContextTokens: number;
newContextTokens: number;
summary: string;
} | undefined;
isProtected?: boolean | undefined;
apiProtocol?: "openai" | "anthropic" | undefined;
metadata?: {
gpt5?: {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
} | undefined;
} | undefined;
};
taskId: string;
action: "created" | "updated";
}, {
message: {
type: "ask" | "say";
ts: number;
text?: string | undefined;
reasoning?: string | undefined;
ask?: "followup" | "command" | "command_output" | "completion_result" | "tool" | "api_req_failed" | "resume_task" | "resume_completed_task" | "mistake_limit_reached" | "browser_action_launch" | "use_mcp_server" | "auto_approval_max_req_reached" | undefined;
say?: "command_output" | "completion_result" | "error" | "api_req_started" | "api_req_finished" | "api_req_retried" | "api_req_retry_delayed" | "api_req_deleted" | "text" | "reasoning" | "user_feedback" | "user_feedback_diff" | "shell_integration_warning" | "browser_action" | "browser_action_result" | "mcp_server_request_started" | "mcp_server_response" | "subtask_result" | "checkpoint_saved" | "rooignore_error" | "diff_error" | "condense_context" | "condense_context_error" | "codebase_search_result" | "user_edit_todos" | undefined;
images?: string[] | undefined;
partial?: boolean | undefined;
conversationHistoryIndex?: number | undefined;
checkpoint?: Record<string, unknown> | undefined;
progressStatus?: {
text?: string | undefined;
icon?: string | undefined;
} | undefined;
contextCondense?: {
cost: number;
prevContextTokens: number;
newContextTokens: number;
summary: string;
} | undefined;
isProtected?: boolean | undefined;
apiProtocol?: "openai" | "anthropic" | undefined;
metadata?: {
gpt5?: {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
} | undefined;
} | undefined;
};
taskId: string;
action: "created" | "updated";
}>], null>;
taskModeSwitched: z.ZodTuple<[z.ZodString, z.ZodString], null>;
taskAskResponded: z.ZodTuple<[z.ZodString], null>;
taskToolFailed: z.ZodTuple<[z.ZodString, z.ZodEnum<["execute_command", "read_file", "write_to_file", "apply_diff", "insert_content", "search_and_replace", "search_files", "list_files", "list_code_definition_names", "browser_action", "use_mcp_tool", "access_mcp_resource", "ask_followup_question", "attempt_completion", "switch_mode", "new_task", "fetch_instructions", "codebase_search", "update_todo_list"]>, z.ZodString], null>;
taskTokenUsageUpdated: z.ZodTuple<[z.ZodString, z.ZodObject<{
totalTokensIn: z.ZodNumber;
totalTokensOut: z.ZodNumber;
totalCacheWrites: z.ZodOptional<z.ZodNumber>;
totalCacheReads: z.ZodOptional<z.ZodNumber>;
totalCost: z.ZodNumber;
contextTokens: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
totalTokensIn: number;
totalTokensOut: number;
totalCost: number;
contextTokens: number;
totalCacheWrites?: number | undefined;
totalCacheReads?: number | undefined;
}, {
totalTokensIn: number;
totalTokensOut: number;
totalCost: number;
contextTokens: number;
totalCacheWrites?: number | undefined;
totalCacheReads?: number | undefined;
}>], null>;
}, "strip", z.ZodTypeAny, {
taskCreated: [string];
taskStarted: [string];
taskCompleted: [string, {
totalTokensIn: number;
totalTokensOut: number;
totalCost: number;
contextTokens: number;
totalCacheWrites?: number | undefined;
totalCacheReads?: number | undefined;
}, Partial<Record<"browser_action" | "execute_command" | "read_file" | "write_to_file" | "apply_diff" | "insert_content" | "search_and_replace" | "search_files" | "list_files" | "list_code_definition_names" | "use_mcp_tool" | "access_mcp_resource" | "ask_followup_question" | "attempt_completion" | "switch_mode" | "new_task" | "fetch_instructions" | "codebase_search" | "update_todo_list", {
attempts: number;
failures: number;
}>>, {
isSubtask: boolean;
}];
taskAborted: [string];
taskFocused: [string];
taskUnfocused: [string];
taskActive: [string];
taskIdle: [string];
taskPaused: [string];
taskUnpaused: [string];
taskSpawned: [string, string];
message: [{
message: {
type: "ask" | "say";
ts: number;
text?: string | undefined;
reasoning?: string | undefined;
ask?: "followup" | "command" | "command_output" | "completion_result" | "tool" | "api_req_failed" | "resume_task" | "resume_completed_task" | "mistake_limit_reached" | "browser_action_launch" | "use_mcp_server" | "auto_approval_max_req_reached" | undefined;
say?: "command_output" | "completion_result" | "error" | "api_req_started" | "api_req_finished" | "api_req_retried" | "api_req_retry_delayed" | "api_req_deleted" | "text" | "reasoning" | "user_feedback" | "user_feedback_diff" | "shell_integration_warning" | "browser_action" | "browser_action_result" | "mcp_server_request_started" | "mcp_server_response" | "subtask_result" | "checkpoint_saved" | "rooignore_error" | "diff_error" | "condense_context" | "condense_context_error" | "codebase_search_result" | "user_edit_todos" | undefined;
images?: string[] | undefined;
partial?: boolean | undefined;
conversationHistoryIndex?: number | undefined;
checkpoint?: Record<string, unknown> | undefined;
progressStatus?: {
text?: string | undefined;
icon?: string | undefined;
} | undefined;
contextCondense?: {
cost: number;
prevContextTokens: number;
newContextTokens: number;
summary: string;
} | undefined;
isProtected?: boolean | undefined;
apiProtocol?: "openai" | "anthropic" | undefined;
metadata?: {
gpt5?: {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
} | undefined;
} | undefined;
};
taskId: string;
action: "created" | "updated";
}];
taskModeSwitched: [string, string];
taskAskResponded: [string];
taskTokenUsageUpdated: [string, {
totalTokensIn: number;
totalTokensOut: number;
totalCost: number;
contextTokens: number;
totalCacheWrites?: number | undefined;
totalCacheReads?: number | undefined;
}];
taskToolFailed: [string, "browser_action" | "execute_command" | "read_file" | "write_to_file" | "apply_diff" | "insert_content" | "search_and_replace" | "search_files" | "list_files" | "list_code_definition_names" | "use_mcp_tool" | "access_mcp_resource" | "ask_followup_question" | "attempt_completion" | "switch_mode" | "new_task" | "fetch_instructions" | "codebase_search" | "update_todo_list", string];
}, {
taskCreated: [string];
taskStarted: [string];
taskCompleted: [string, {
totalTokensIn: number;
totalTokensOut: number;
totalCost: number;
contextTokens: number;
totalCacheWrites?: number | undefined;
totalCacheReads?: number | undefined;
}, Partial<Record<"browser_action" | "execute_command" | "read_file" | "write_to_file" | "apply_diff" | "insert_content" | "search_and_replace" | "search_files" | "list_files" | "list_code_definition_names" | "use_mcp_tool" | "access_mcp_resource" | "ask_followup_question" | "attempt_completion" | "switch_mode" | "new_task" | "fetch_instructions" | "codebase_search" | "update_todo_list", {
attempts: number;
failures: number;
}>>, {
isSubtask: boolean;
}];
taskAborted: [string];
taskFocused: [string];
taskUnfocused: [string];
taskActive: [string];
taskIdle: [string];
taskPaused: [string];
taskUnpaused: [string];
taskSpawned: [string, string];
message: [{
message: {
type: "ask" | "say";
ts: number;
text?: string | undefined;
reasoning?: string | undefined;
ask?: "followup" | "command" | "command_output" | "completion_result" | "tool" | "api_req_failed" | "resume_task" | "resume_completed_task" | "mistake_limit_reached" | "browser_action_launch" | "use_mcp_server" | "auto_approval_max_req_reached" | undefined;
say?: "command_output" | "completion_result" | "error" | "api_req_started" | "api_req_finished" | "api_req_retried" | "api_req_retry_delayed" | "api_req_deleted" | "text" | "reasoning" | "user_feedback" | "user_feedback_diff" | "shell_integration_warning" | "browser_action" | "browser_action_result" | "mcp_server_request_started" | "mcp_server_response" | "subtask_result" | "checkpoint_saved" | "rooignore_error" | "diff_error" | "condense_context" | "condense_context_error" | "codebase_search_result" | "user_edit_todos" | undefined;
images?: string[] | undefined;
partial?: boolean | undefined;
conversationHistoryIndex?: number | undefined;
checkpoint?: Record<string, unknown> | undefined;
progressStatus?: {
text?: string | undefined;
icon?: string | undefined;
} | undefined;
contextCondense?: {
cost: number;
prevContextTokens: number;
newContextTokens: number;
summary: string;
} | undefined;
isProtected?: boolean | undefined;
apiProtocol?: "openai" | "anthropic" | undefined;
metadata?: {
gpt5?: {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
} | undefined;
} | undefined;
};
taskId: string;
action: "created" | "updated";
}];
taskModeSwitched: [string, string];
taskAskResponded: [string];
taskTokenUsageUpdated: [string, {
totalTokensIn: number;
totalTokensOut: number;
totalCost: number;
contextTokens: number;
totalCacheWrites?: number | undefined;
totalCacheReads?: number | undefined;
}];
taskToolFailed: [string, "browser_action" | "execute_command" | "read_file" | "write_to_file" | "apply_diff" | "insert_content" | "search_and_replace" | "search_files" | "list_files" | "list_code_definition_names" | "use_mcp_tool" | "access_mcp_resource" | "ask_followup_question" | "attempt_completion" | "switch_mode" | "new_task" | "fetch_instructions" | "codebase_search" | "update_todo_list", string];
}>;
type RooCodeEvents = z.infer<typeof rooCodeEventsSchema>;
/**
* TaskEvent
*/
declare const taskEventSchema: z.ZodDiscriminatedUnion<"eventName", [z.ZodObject<{
eventName: z.ZodLiteral<RooCodeEventName.TaskCreated>;
payload: z.ZodTuple<[z.ZodString], null>;
taskId: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
eventName: RooCodeEventName.TaskCreated;
payload: [string];
taskId?: number | undefined;
}, {
eventName: RooCodeEventName.TaskCreated;
payload: [string];
taskId?: number | undefined;
}>, z.ZodObject<{
eventName: z.ZodLiteral<RooCodeEventName.TaskStarted>;
payload: z.ZodTuple<[z.ZodString], null>;
taskId: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
eventName: RooCodeEventName.TaskStarted;
payload: [string];
taskId?: number | undefined;
}, {
eventName: RooCodeEventName.TaskStarted;
payload: [string];
taskId?: number | undefined;
}>, z.ZodObject<{
eventName: z.ZodLiteral<RooCodeEventName.TaskCompleted>;
payload: z.ZodTuple<[z.ZodString, z.ZodObject<{
totalTokensIn: z.ZodNumber;
totalTokensOut: z.ZodNumber;
totalCacheWrites: z.ZodOptional<z.ZodNumber>;
totalCacheReads: z.ZodOptional<z.ZodNumber>;
totalCost: z.ZodNumber;
contextTokens: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
totalTokensIn: number;
totalTokensOut: number;
totalCost: number;
contextTokens: number;
totalCacheWrites?: number | undefined;
totalCacheReads?: number | undefined;
}, {
totalTokensIn: number;
totalTokensOut: number;
totalCost: number;
contextTokens: number;
totalCacheWrites?: number | undefined;
totalCacheReads?: number | undefined;
}>, z.ZodRecord<z.ZodEnum<["execute_command", "read_file", "write_to_file", "apply_diff", "insert_content", "search_and_replace", "search_files", "list_files", "list_code_definition_names", "browser_action", "use_mcp_tool", "access_mcp_resource", "ask_followup_question", "attempt_completion", "switch_mode", "new_task", "fetch_instructions", "codebase_search", "update_todo_list"]>, z.ZodObject<{
attempts: z.ZodNumber;
failures: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
attempts: number;
failures: number;
}, {
attempts: number;
failures: number;
}>>, z.ZodObject<{
isSubtask: z.ZodBoolean;
}, "strip", z.ZodTypeAny, {
isSubtask: boolean;
}, {
isSubtask: boolean;
}>], null>;
taskId: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
eventName: RooCodeEventName.TaskCompleted;
payload: [string, {
totalTokensIn: number;
totalTokensOut: number;
totalCost: number;
contextTokens: number;
totalCacheWrites?: number | undefined;
totalCacheReads?: number | undefined;
}, Partial<Record<"browser_action" | "execute_command" | "read_file" | "write_to_file" | "apply_diff" | "insert_content" | "search_and_replace" | "search_files" | "list_files" | "list_code_definition_names" | "use_mcp_tool" | "access_mcp_resource" | "ask_followup_question" | "attempt_completion" | "switch_mode" | "new_task" | "fetch_instructions" | "codebase_search" | "update_todo_list", {
attempts: number;
failures: number;
}>>, {
isSubtask: boolean;
}];
taskId?: number | undefined;
}, {
eventName: RooCodeEventName.TaskCompleted;
payload: [string, {
totalTokensIn: number;
totalTokensOut: number;
totalCost: number;
contextTokens: number;
totalCacheWrites?: number | undefined;
totalCacheReads?: number | undefined;
}, Partial<Record<"browser_action" | "execute_command" | "read_file" | "write_to_file" | "apply_diff" | "insert_content" | "search_and_replace" | "search_files" | "list_files" | "list_code_definition_names" | "use_mcp_tool" | "access_mcp_resource" | "ask_followup_question" | "attempt_completion" | "switch_mode" | "new_task" | "fetch_instructions" | "codebase_search" | "update_todo_list", {
attempts: number;
failures: number;
}>>, {
isSubtask: boolean;
}];
taskId?: number | undefined;
}>, z.ZodObject<{
eventName: z.ZodLiteral<RooCodeEventName.TaskAborted>;
payload: z.ZodTuple<[z.ZodString], null>;
taskId: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
eventName: RooCodeEventName.TaskAborted;
payload: [string];
taskId?: number | undefined;
}, {
eventName: RooCodeEventName.TaskAborted;
payload: [string];
taskId?: number | undefined;
}>, z.ZodObject<{
eventName: z.ZodLiteral<RooCodeEventName.TaskFocused>;
payload: z.ZodTuple<[z.ZodString], null>;
taskId: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
eventName: RooCodeEventName.TaskFocused;
payload: [string];
taskId?: number | undefined;
}, {
eventName: RooCodeEventName.TaskFocused;
payload: [string];
taskId?: number | undefined;
}>, z.ZodObject<{
eventName: z.ZodLiteral<RooCodeEventName.TaskUnfocused>;
payload: z.ZodTuple<[z.ZodString], null>;
taskId: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
eventName: RooCodeEventName.TaskUnfocused;
payload: [string];
taskId?: number | undefined;
}, {
eventName: RooCodeEventName.TaskUnfocused;
payload: [string];
taskId?: number | undefined;
}>, z.ZodObject<{
eventName: z.ZodLiteral<RooCodeEventName.TaskActive>;
payload: z.ZodTuple<[z.ZodString], null>;
taskId: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
eventName: RooCodeEventName.TaskActive;
payload: [string];
taskId?: number | undefined;
}, {
eventName: RooCodeEventName.TaskActive;
payload: [string];
taskId?: number | undefined;
}>, z.ZodObject<{
eventName: z.ZodLiteral<RooCodeEventName.TaskIdle>;
payload: z.ZodTuple<[z.ZodString], null>;
taskId: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
eventName: RooCodeEventName.TaskIdle;
payload: [string];
taskId?: number | undefined;
}, {
eventName: RooCodeEventName.TaskIdle;
payload: [string];
taskId?: number | undefined;
}>, z.ZodObject<{
eventName: z.ZodLiteral<RooCodeEventName.TaskPaused>;
payload: z.ZodTuple<[z.ZodString], null>;
taskId: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
eventName: RooCodeEventName.TaskPaused;
payload: [string];
taskId?: number | undefined;
}, {
eventName: RooCodeEventName.TaskPaused;
payload: [string];
taskId?: number | undefined;
}>, z.ZodObject<{
eventName: z.ZodLiteral<RooCodeEventName.TaskUnpaused>;
payload: z.ZodTuple<[z.ZodString], null>;
taskId: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
eventName: RooCodeEventName.TaskUnpaused;
payload: [string];
taskId?: number | undefined;
}, {
eventName: RooCodeEventName.TaskUnpaused;
payload: [string];
taskId?: number | undefined;
}>, z.ZodObject<{
eventName: z.ZodLiteral<RooCodeEventName.TaskSpawned>;
payload: z.ZodTuple<[z.ZodString, z.ZodString], null>;
taskId: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
eventName: RooCodeEventName.TaskSpawned;
payload: [string, string];
taskId?: number | undefined;
}, {
eventName: RooCodeEventName.TaskSpawned;
payload: [string, string];
taskId?: number | undefined;
}>, z.ZodObject<{
eventName: z.ZodLiteral<RooCodeEventName.Message>;
payload: z.ZodTuple<[z.ZodObject<{
taskId: z.ZodString;
action: z.ZodUnion<[z.ZodLiteral<"created">, z.ZodLiteral<"updated">]>;
message: z.ZodObject<{
ts: z.ZodNumber;
type: z.ZodUnion<[z.ZodLiteral<"ask">, z.ZodLiteral<"say">]>;
ask: z.ZodOptional<z.ZodEnum<["followup", "command", "command_output", "completion_result", "tool", "api_req_failed", "resume_task", "resume_completed_task", "mistake_limit_reached", "browser_action_launch", "use_mcp_server", "auto_approval_max_req_reached"]>>;
say: z.ZodOptional<z.ZodEnum<["error", "api_req_started", "api_req_finished", "api_req_retried", "api_req_retry_delayed", "api_req_deleted", "text", "reasoning", "completion_result", "user_feedback", "user_feedback_diff", "command_output", "shell_integration_warning", "browser_action", "browser_action_result", "mcp_server_request_started", "mcp_server_response", "subtask_result", "checkpoint_saved", "rooignore_error", "diff_error", "condense_context", "condense_context_error", "codebase_search_result", "user_edit_todos"]>>;
text: z.ZodOptional<z.ZodString>;
images: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
partial: z.ZodOptional<z.ZodBoolean>;
reasoning: z.ZodOptional<z.ZodString>;
conversationHistoryIndex: z.ZodOptional<z.ZodNumber>;
checkpoint: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
progressStatus: z.ZodOptional<z.ZodObject<{
icon: z.ZodOptional<z.ZodString>;
text: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
text?: string | undefined;
icon?: string | undefined;
}, {
text?: string | undefined;
icon?: string | undefined;
}>>;
contextCondense: z.ZodOptional<z.ZodObject<{
cost: z.ZodNumber;
prevContextTokens: z.ZodNumber;
newContextTokens: z.ZodNumber;
summary: z.ZodString;
}, "strip", z.ZodTypeAny, {
cost: number;
prevContextTokens: number;
newContextTokens: number;
summary: string;
}, {
cost: number;
prevContextTokens: number;
newContextTokens: number;
summary: string;
}>>;
isProtected: z.ZodOptional<z.ZodBoolean>;
apiProtocol: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"openai">, z.ZodLiteral<"anthropic">]>>;
metadata: z.ZodOptional<z.ZodObject<{
gpt5: z.ZodOptional<z.ZodObject<{
previous_response_id: z.ZodOptional<z.ZodString>;
instructions: z.ZodOptional<z.ZodString>;
reasoning_summary: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
}, {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
}>>;
}, "strip", z.ZodTypeAny, {
gpt5?: {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
} | undefined;
}, {
gpt5?: {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
} | undefined;
}>>;
}, "strip", z.ZodTypeAny, {
type: "ask" | "say";
ts: number;
text?: string | undefined;
reasoning?: string | undefined;
ask?: "followup" | "command" | "command_output" | "completion_result" | "tool" | "api_req_failed" | "resume_task" | "resume_completed_task" | "mistake_limit_reached" | "browser_action_launch" | "use_mcp_server" | "auto_approval_max_req_reached" | undefined;
say?: "command_output" | "completion_result" | "error" | "api_req_started" | "api_req_finished" | "api_req_retried" | "api_req_retry_delayed" | "api_req_deleted" | "text" | "reasoning" | "user_feedback" | "user_feedback_diff" | "shell_integration_warning" | "browser_action" | "browser_action_result" | "mcp_server_request_started" | "mcp_server_response" | "subtask_result" | "checkpoint_saved" | "rooignore_error" | "diff_error" | "condense_context" | "condense_context_error" | "codebase_search_result" | "user_edit_todos" | undefined;
images?: string[] | undefined;
partial?: boolean | undefined;
conversationHistoryIndex?: number | undefined;
checkpoint?: Record<string, unknown> | undefined;
progressStatus?: {
text?: string | undefined;
icon?: string | undefined;
} | undefined;
contextCondense?: {
cost: number;
prevContextTokens: number;
newContextTokens: number;
summary: string;
} | undefined;
isProtected?: boolean | undefined;
apiProtocol?: "openai" | "anthropic" | undefined;
metadata?: {
gpt5?: {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
} | undefined;
} | undefined;
}, {
type: "ask" | "say";
ts: number;
text?: string | undefined;
reasoning?: string | undefined;
ask?: "followup" | "command" | "command_output" | "completion_result" | "tool" | "api_req_failed" | "resume_task" | "resume_completed_task" | "mistake_limit_reached" | "browser_action_launch" | "use_mcp_server" | "auto_approval_max_req_reached" | undefined;
say?: "command_output" | "completion_result" | "error" | "api_req_started" | "api_req_finished" | "api_req_retried" | "api_req_retry_delayed" | "api_req_deleted" | "text" | "reasoning" | "user_feedback" | "user_feedback_diff" | "shell_integration_warning" | "browser_action" | "browser_action_result" | "mcp_server_request_started" | "mcp_server_response" | "subtask_result" | "checkpoint_saved" | "rooignore_error" | "diff_error" | "condense_context" | "condense_context_error" | "codebase_search_result" | "user_edit_todos" | undefined;
images?: string[] | undefined;
partial?: boolean | undefined;
conversationHistoryIndex?: number | undefined;
checkpoint?: Record<string, unknown> | undefined;
progressStatus?: {
text?: string | undefined;
icon?: string | undefined;
} | undefined;
contextCondense?: {
cost: number;
prevContextTokens: number;
newContextTokens: number;
summary: string;
} | undefined;
isProtected?: boolean | undefined;
apiProtocol?: "openai" | "anthropic" | undefined;
metadata?: {
gpt5?: {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
} | undefined;
} | undefined;
}>;
}, "strip", z.ZodTypeAny, {
message: {
type: "ask" | "say";
ts: number;
text?: string | undefined;
reasoning?: string | undefined;
ask?: "followup" | "command" | "command_output" | "completion_result" | "tool" | "api_req_failed" | "resume_task" | "resume_completed_task" | "mistake_limit_reached" | "browser_action_launch" | "use_mcp_server" | "auto_approval_max_req_reached" | undefined;
say?: "command_output" | "completion_result" | "error" | "api_req_started" | "api_req_finished" | "api_req_retried" | "api_req_retry_delayed" | "api_req_deleted" | "text" | "reasoning" | "user_feedback" | "user_feedback_diff" | "shell_integration_warning" | "browser_action" | "browser_action_result" | "mcp_server_request_started" | "mcp_server_response" | "subtask_result" | "checkpoint_saved" | "rooignore_error" | "diff_error" | "condense_context" | "condense_context_error" | "codebase_search_result" | "user_edit_todos" | undefined;
images?: string[] | undefined;
partial?: boolean | undefined;
conversationHistoryIndex?: number | undefined;
checkpoint?: Record<string, unknown> | undefined;
progressStatus?: {
text?: string | undefined;
icon?: string | undefined;
} | undefined;
contextCondense?: {
cost: number;
prevContextTokens: number;
newContextTokens: number;
summary: string;
} | undefined;
isProtected?: boolean | undefined;
apiProtocol?: "openai" | "anthropic" | undefined;
metadata?: {
gpt5?: {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
} | undefined;
} | undefined;
};
taskId: string;
action: "created" | "updated";
}, {
message: {
type: "ask" | "say";
ts: number;
text?: string | undefined;
reasoning?: string | undefined;
ask?: "followup" | "command" | "command_output" | "completion_result" | "tool" | "api_req_failed" | "resume_task" | "resume_completed_task" | "mistake_limit_reached" | "browser_action_launch" | "use_mcp_server" | "auto_approval_max_req_reached" | undefined;
say?: "command_output" | "completion_result" | "error" | "api_req_started" | "api_req_finished" | "api_req_retried" | "api_req_retry_delayed" | "api_req_deleted" | "text" | "reasoning" | "user_feedback" | "user_feedback_diff" | "shell_integration_warning" | "browser_action" | "browser_action_result" | "mcp_server_request_started" | "mcp_server_response" | "subtask_result" | "checkpoint_saved" | "rooignore_error" | "diff_error" | "condense_context" | "condense_context_error" | "codebase_search_result" | "user_edit_todos" | undefined;
images?: string[] | undefined;
partial?: boolean | undefined;
conversationHistoryIndex?: number | undefined;
checkpoint?: Record<string, unknown> | undefined;
progressStatus?: {
text?: string | undefined;
icon?: string | undefined;
} | undefined;
contextCondense?: {
cost: number;
prevContextTokens: number;
newContextTokens: number;
summary: string;
} | undefined;
isProtected?: boolean | undefined;
apiProtocol?: "openai" | "anthropic" | undefined;
metadata?: {
gpt5?: {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
} | undefined;
} | undefined;
};
taskId: string;
action: "created" | "updated";
}>], null>;
taskId: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
eventName: RooCodeEventName.Message;
payload: [{
message: {
type: "ask" | "say";
ts: number;
text?: string | undefined;
reasoning?: string | undefined;
ask?: "followup" | "command" | "command_output" | "completion_result" | "tool" | "api_req_failed" | "resume_task" | "resume_completed_task" | "mistake_limit_reached" | "browser_action_launch" | "use_mcp_server" | "auto_approval_max_req_reached" | undefined;
say?: "command_output" | "completion_result" | "error" | "api_req_started" | "api_req_finished" | "api_req_retried" | "api_req_retry_delayed" | "api_req_deleted" | "text" | "reasoning" | "user_feedback" | "user_feedback_diff" | "shell_integration_warning" | "browser_action" | "browser_action_result" | "mcp_server_request_started" | "mcp_server_response" | "subtask_result" | "checkpoint_saved" | "rooignore_error" | "diff_error" | "condense_context" | "condense_context_error" | "codebase_search_result" | "user_edit_todos" | undefined;
images?: string[] | undefined;
partial?: boolean | undefined;
conversationHistoryIndex?: number | undefined;
checkpoint?: Record<string, unknown> | undefined;
progressStatus?: {
text?: string | undefined;
icon?: string | undefined;
} | undefined;
contextCondense?: {
cost: number;
prevContextTokens: number;
newContextTokens: number;
summary: string;
} | undefined;
isProtected?: boolean | undefined;
apiProtocol?: "openai" | "anthropic" | undefined;
metadata?: {
gpt5?: {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
} | undefined;
} | undefined;
};
taskId: string;
action: "created" | "updated";
}];
taskId?: number | undefined;
}, {
eventName: RooCodeEventName.Message;
payload: [{
message: {
type: "ask" | "say";
ts: number;
text?: string | undefined;
reasoning?: string | undefined;
ask?: "followup" | "command" | "command_output" | "completion_result" | "tool" | "api_req_failed" | "resume_task" | "resume_completed_task" | "mistake_limit_reached" | "browser_action_launch" | "use_mcp_server" | "auto_approval_max_req_reached" | undefined;
say?: "command_output" | "completion_result" | "error" | "api_req_started" | "api_req_finished" | "api_req_retried" | "api_req_retry_delayed" | "api_req_deleted" | "text" | "reasoning" | "user_feedback" | "user_feedback_diff" | "shell_integration_warning" | "browser_action" | "browser_action_result" | "mcp_server_request_started" | "mcp_server_response" | "subtask_result" | "checkpoint_saved" | "rooignore_error" | "diff_error" | "condense_context" | "condense_context_error" | "codebase_search_result" | "user_edit_todos" | undefined;
images?: string[] | undefined;
partial?: boolean | undefined;
conversationHistoryIndex?: number | undefined;
checkpoint?: Record<string, unknown> | undefined;
progressStatus?: {
text?: string | undefined;
icon?: string | undefined;
} | undefined;
contextCondense?: {
cost: number;
prevContextTokens: number;
newContextTokens: number;
summary: string;
} | undefined;
isProtected?: boolean | undefined;
apiProtocol?: "openai" | "anthropic" | undefined;
metadata?: {
gpt5?: {
previous_response_id?: string | undefined;
instructions?: string | undefined;
reasoning_summary?: string | undefined;
} | undefined;
} | undefined;
};
taskId: string;
action: "created" | "updated";
}];
taskId?: number | undefined;
}>, z.ZodObject<{
eventName: z.ZodLiteral<RooCodeEventName.TaskModeSwitched>;
payload: z.ZodTuple<[z.ZodString, z.ZodString], null>;
taskId: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
eventName: RooCodeEventName.TaskModeSwitched;
payload: [string, string];
taskId?: number | undefined;
}, {
eventName: RooCodeEventName.TaskModeSwitched;
payload: [string, string];
taskId?: number | undefined;
}>, z.ZodObject<{
eventName: z.ZodLiteral<RooCodeEventName.TaskAskResponded>;
payload: z.ZodTuple<[z.ZodString], null>;
taskId: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
eventName: RooCodeEventName.TaskAskResponded;
payload: [string];
taskId?: number | undefined;
}, {
eventName: RooCodeEventName.TaskAskResponded;
payload: [string];
taskId?: number | undefined;
}>, z.ZodObject<{
eventName: z.ZodLiteral<RooCodeEventName.TaskToolFailed>;
payload: z.ZodTuple<[z.ZodString, z.ZodEnum<["execute_command", "read_file", "write_to_file", "apply_diff", "insert_content", "search_and_replace", "search_files", "list_files", "list_code_definition_names", "browser_action", "use_mcp_tool", "access_mcp_resource", "ask_followup_question", "attempt_completion", "switch_mode", "new_task", "fetch_instructions", "codebase_search", "update_todo_list"]>, z.ZodString], null>;
taskId: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
eventName: RooCodeEventName.TaskToolFailed;
payload: [string, "browser_action" | "execute_command" | "read_file" | "write_to_file" | "apply_diff" | "insert_content" | "search_and_replace" | "search_files" | "list_files" | "list_code_definition_names" | "use_mcp_tool" | "access_mcp_resource" | "ask_followup_question" | "attempt_completion" | "switch_mode" | "new_task" | "fetch_instructions" | "codebase_search" | "update_todo_list", string];
taskId?: number | undefined;
}, {
eventName: RooCodeEventName.TaskToolFailed;
payload: [string, "browser_action" | "execute_command" | "read_file" | "write_to_file" | "apply_diff" | "insert_content" | "search_and_replace" | "search_files" | "list_files" | "list_code_definition_names" | "use_mcp_tool" | "access_mcp_resource" | "ask_followup_question" | "attempt_completion" | "switch_mode" | "new_task" | "fetch_instructions" | "codebase_search" | "update_todo_list", string];
taskId?: number | undefined;
}>, z.ZodObject<{
eventName: z.ZodLiteral<RooCodeEventName.TaskTokenUsageUpdated>;
payload: z.ZodTuple<[z.ZodString, z.ZodObject<{
totalTokensIn: z.