SYMBOL INDEX (648 symbols across 143 files) FILE: packages/bytebot-agent-cc/prisma/migrations/20250328022708_initial_migration/migration.sql type "Task" (line 11) | CREATE TABLE "Task" ( type "Summary" (line 23) | CREATE TABLE "Summary" ( type "Message" (line 35) | CREATE TABLE "Message" ( FILE: packages/bytebot-agent-cc/prisma/migrations/20250619013027_add_better_auth_schema/migration.sql type "User" (line 5) | CREATE TABLE "User" ( type "Session" (line 18) | CREATE TABLE "Session" ( type "Account" (line 32) | CREATE TABLE "Account" ( type "Verification" (line 51) | CREATE TABLE "Verification" ( type "User" (line 63) | CREATE UNIQUE INDEX "User_email_key" ON "User"("email") type "Session" (line 66) | CREATE UNIQUE INDEX "Session_token_key" ON "Session"("token") type "Account" (line 69) | CREATE UNIQUE INDEX "Account_providerId_accountId_key" ON "Account"("pro... type "Verification" (line 72) | CREATE UNIQUE INDEX "Verification_identifier_value_key" ON "Verification... FILE: packages/bytebot-agent-cc/prisma/migrations/20250722041608_files/migration.sql type "File" (line 2) | CREATE TABLE "File" ( FILE: packages/bytebot-agent-cc/src/agent/agent.analytics.ts class AgentAnalyticsService (line 8) | class AgentAnalyticsService { method constructor (line 12) | constructor( method handleTaskEvent (line 28) | async handleTaskEvent(payload: { taskId: string }) { FILE: packages/bytebot-agent-cc/src/agent/agent.computer-use.ts constant BYTEBOT_DESKTOP_BASE_URL (line 26) | const BYTEBOT_DESKTOP_BASE_URL = process.env.BYTEBOT_DESKTOP_BASE_URL as... function handleComputerToolUse (line 28) | async function handleComputerToolUse( function moveMouse (line 236) | async function moveMouse(input: { coordinates: Coordinates }): Promise { function wait (line 482) | async function wait(input: { duration: number }): Promise { function cursorPosition (line 501) | async function cursorPosition(): Promise { function screenshot (line 521) | async function screenshot(): Promise { function application (line 552) | async function application(input: { application: string }): Promise { function readFile (line 571) | async function readFile(input: { path: string }): Promise<{ function writeFile (line 607) | async function writeFile(input: { FILE: packages/bytebot-agent-cc/src/agent/agent.constants.ts constant DEFAULT_DISPLAY_SIZE (line 1) | const DEFAULT_DISPLAY_SIZE = { constant SUMMARIZATION_SYSTEM_PROMPT (line 6) | const SUMMARIZATION_SYSTEM_PROMPT = `You are a helpful assistant that su... constant AGENT_SYSTEM_PROMPT (line 17) | const AGENT_SYSTEM_PROMPT = ` FILE: packages/bytebot-agent-cc/src/agent/agent.module.ts class AgentModule (line 20) | class AgentModule {} FILE: packages/bytebot-agent-cc/src/agent/agent.processor.ts class AgentProcessor (line 43) | class AgentProcessor { method constructor (line 52) | constructor( method isRunning (line 63) | isRunning(): boolean { method getCurrentTaskId (line 70) | getCurrentTaskId(): string | null { method handleTaskTakeover (line 75) | handleTaskTakeover({ taskId }: { taskId: string }) { method handleTaskResume (line 88) | handleTaskResume({ taskId }: { taskId: string }) { method handleTaskCancel (line 98) | async handleTaskCancel({ taskId }: { taskId: string }) { method processTask (line 104) | processTask(taskId: string) { method formatAnthropicResponse (line 123) | private formatAnthropicResponse( method runIteration (line 164) | private async runIteration(taskId: string): Promise { method stopProcessing (line 275) | async stopProcessing(): Promise { FILE: packages/bytebot-agent-cc/src/agent/agent.scheduler.ts class AgentScheduler (line 9) | class AgentScheduler implements OnModuleInit { method constructor (line 12) | constructor( method onModuleInit (line 17) | async onModuleInit() { method handleCron (line 23) | async handleCron() { FILE: packages/bytebot-agent-cc/src/agent/agent.types.ts type BytebotAgentResponse (line 4) | interface BytebotAgentResponse { type BytebotAgentService (line 13) | interface BytebotAgentService { type BytebotAgentModel (line 23) | interface BytebotAgentModel { class BytebotAgentInterrupt (line 30) | class BytebotAgentInterrupt extends Error { method constructor (line 31) | constructor() { FILE: packages/bytebot-agent-cc/src/agent/input-capture.service.ts class InputCaptureService (line 24) | class InputCaptureService { method constructor (line 29) | constructor( method isCapturing (line 34) | isCapturing() { method start (line 38) | start(taskId: string) { method stop (line 161) | async stop() { FILE: packages/bytebot-agent-cc/src/app.controller.ts class AppController (line 5) | class AppController { method constructor (line 6) | constructor(private readonly appService: AppService) {} method getHello (line 9) | getHello(): string { FILE: packages/bytebot-agent-cc/src/app.module.ts class AppModule (line 27) | class AppModule {} FILE: packages/bytebot-agent-cc/src/app.service.ts class AppService (line 4) | class AppService { method getHello (line 5) | getHello(): string { FILE: packages/bytebot-agent-cc/src/main.ts function bootstrap (line 11) | async function bootstrap() { FILE: packages/bytebot-agent-cc/src/messages/messages.module.ts class MessagesModule (line 11) | class MessagesModule {} FILE: packages/bytebot-agent-cc/src/messages/messages.service.ts type ProcessedMessage (line 18) | interface ProcessedMessage extends Message { type GroupedMessages (line 22) | interface GroupedMessages { class MessagesService (line 29) | class MessagesService { method constructor (line 30) | constructor( method create (line 36) | async create(data: { method findEvery (line 54) | async findEvery(taskId: string): Promise { method findAll (line 65) | async findAll( method findUnsummarized (line 89) | async findUnsummarized(taskId: string): Promise { method attachSummary (line 100) | async attachSummary( method groupBackToBackMessages (line 118) | private groupBackToBackMessages( method filterMessages (line 164) | private filterMessages(messages: Message[]): ProcessedMessage[] { method findRawMessages (line 201) | async findRawMessages( method findProcessedMessages (line 214) | async findProcessedMessages( FILE: packages/bytebot-agent-cc/src/prisma/prisma.module.ts class PrismaModule (line 10) | class PrismaModule {} FILE: packages/bytebot-agent-cc/src/prisma/prisma.service.ts class PrismaService (line 5) | class PrismaService extends PrismaClient implements OnModuleInit { method constructor (line 6) | constructor() { method onModuleInit (line 10) | async onModuleInit() { FILE: packages/bytebot-agent-cc/src/tasks/dto/add-task-message.dto.ts class AddTaskMessageDto (line 3) | class AddTaskMessageDto { FILE: packages/bytebot-agent-cc/src/tasks/dto/create-task.dto.ts class TaskFileDto (line 13) | class TaskFileDto { class CreateTaskDto (line 31) | class CreateTaskDto { FILE: packages/bytebot-agent-cc/src/tasks/dto/update-task.dto.ts class UpdateTaskDto (line 4) | class UpdateTaskDto { FILE: packages/bytebot-agent-cc/src/tasks/tasks.controller.ts class TasksController (line 20) | class TasksController { method constructor (line 21) | constructor( method create (line 28) | async create(@Body() createTaskDto: CreateTaskDto): Promise { method findAll (line 33) | async findAll( method getModels (line 54) | async getModels() { method findById (line 66) | async findById(@Param('id') id: string): Promise { method taskMessages (line 71) | async taskMessages( method addTaskMessage (line 87) | async addTaskMessage( method taskRawMessages (line 95) | async taskRawMessages( method taskProcessedMessages (line 109) | async taskProcessedMessages( method delete (line 124) | async delete(@Param('id') id: string): Promise { method takeOver (line 130) | async takeOver(@Param('id') taskId: string): Promise { method resume (line 136) | async resume(@Param('id') taskId: string): Promise { method cancel (line 142) | async cancel(@Param('id') taskId: string): Promise { FILE: packages/bytebot-agent-cc/src/tasks/tasks.gateway.ts class TasksGateway (line 18) | class TasksGateway implements OnGatewayConnection, OnGatewayDisconnect { method handleConnection (line 22) | handleConnection(client: Socket) { method handleDisconnect (line 26) | handleDisconnect(client: Socket) { method handleJoinTask (line 31) | handleJoinTask(client: Socket, taskId: string) { method handleLeaveTask (line 37) | handleLeaveTask(client: Socket, taskId: string) { method emitTaskUpdate (line 42) | emitTaskUpdate(taskId: string, task: any) { method emitNewMessage (line 46) | emitNewMessage(taskId: string, message: any) { method emitTaskCreated (line 50) | emitTaskCreated(task: any) { method emitTaskDeleted (line 54) | emitTaskDeleted(taskId: string) { FILE: packages/bytebot-agent-cc/src/tasks/tasks.module.ts class TasksModule (line 14) | class TasksModule {} FILE: packages/bytebot-agent-cc/src/tasks/tasks.service.ts class TasksService (line 27) | class TasksService { method constructor (line 30) | constructor( method create (line 40) | async create(createTaskDto: CreateTaskDto): Promise { method findScheduledTasks (line 119) | async findScheduledTasks(): Promise { method findNextTask (line 131) | async findNextTask(): Promise<(Task & { files: File[] }) | null> { method findAll (line 158) | async findAll( method findById (line 192) | async findById(id: string): Promise { method update (line 217) | async update(id: string, updateTaskDto: UpdateTaskDto): Promise { method delete (line 249) | async delete(id: string): Promise { method addTaskMessage (line 263) | async addTaskMessage(taskId: string, addTaskMessageDto: AddTaskMessage... method resume (line 282) | async resume(taskId: string): Promise { method takeOver (line 320) | async takeOver(taskId: string): Promise { method cancel (line 359) | async cancel(taskId: string): Promise { FILE: packages/bytebot-agent/prisma/migrations/20250328022708_initial_migration/migration.sql type "Task" (line 11) | CREATE TABLE "Task" ( type "Summary" (line 23) | CREATE TABLE "Summary" ( type "Message" (line 35) | CREATE TABLE "Message" ( FILE: packages/bytebot-agent/prisma/migrations/20250619013027_add_better_auth_schema/migration.sql type "User" (line 5) | CREATE TABLE "User" ( type "Session" (line 18) | CREATE TABLE "Session" ( type "Account" (line 32) | CREATE TABLE "Account" ( type "Verification" (line 51) | CREATE TABLE "Verification" ( type "User" (line 63) | CREATE UNIQUE INDEX "User_email_key" ON "User"("email") type "Session" (line 66) | CREATE UNIQUE INDEX "Session_token_key" ON "Session"("token") type "Account" (line 69) | CREATE UNIQUE INDEX "Account_providerId_accountId_key" ON "Account"("pro... type "Verification" (line 72) | CREATE UNIQUE INDEX "Verification_identifier_value_key" ON "Verification... FILE: packages/bytebot-agent/prisma/migrations/20250722041608_files/migration.sql type "File" (line 2) | CREATE TABLE "File" ( FILE: packages/bytebot-agent/src/agent/agent.analytics.ts class AgentAnalyticsService (line 8) | class AgentAnalyticsService { method constructor (line 12) | constructor( method handleTaskEvent (line 28) | async handleTaskEvent(payload: { taskId: string }) { FILE: packages/bytebot-agent/src/agent/agent.computer-use.ts constant BYTEBOT_DESKTOP_BASE_URL (line 26) | const BYTEBOT_DESKTOP_BASE_URL = process.env.BYTEBOT_DESKTOP_BASE_URL as... function handleComputerToolUse (line 28) | async function handleComputerToolUse( function moveMouse (line 241) | async function moveMouse(input: { coordinates: Coordinates }): Promise { function wait (line 487) | async function wait(input: { duration: number }): Promise { function cursorPosition (line 506) | async function cursorPosition(): Promise { function screenshot (line 526) | async function screenshot(): Promise { function application (line 557) | async function application(input: { application: string }): Promise { function readFile (line 576) | async function readFile(input: { path: string }): Promise<{ function writeFile (line 612) | async function writeFile(input: { FILE: packages/bytebot-agent/src/agent/agent.constants.ts constant DEFAULT_DISPLAY_SIZE (line 1) | const DEFAULT_DISPLAY_SIZE = { constant SUMMARIZATION_SYSTEM_PROMPT (line 6) | const SUMMARIZATION_SYSTEM_PROMPT = `You are a helpful assistant that su... constant AGENT_SYSTEM_PROMPT (line 17) | const AGENT_SYSTEM_PROMPT = ` FILE: packages/bytebot-agent/src/agent/agent.module.ts class AgentModule (line 34) | class AgentModule {} FILE: packages/bytebot-agent/src/agent/agent.processor.ts class AgentProcessor (line 44) | class AgentProcessor { method constructor (line 51) | constructor( method isRunning (line 73) | isRunning(): boolean { method getCurrentTaskId (line 80) | getCurrentTaskId(): string | null { method handleTaskTakeover (line 85) | handleTaskTakeover({ taskId }: { taskId: string }) { method handleTaskResume (line 98) | handleTaskResume({ taskId }: { taskId: string }) { method handleTaskCancel (line 108) | async handleTaskCancel({ taskId }: { taskId: string }) { method processTask (line 114) | processTask(taskId: string) { method runIteration (line 134) | private async runIteration(taskId: string): Promise { method stopProcessing (line 405) | async stopProcessing(): Promise { FILE: packages/bytebot-agent/src/agent/agent.scheduler.ts class AgentScheduler (line 9) | class AgentScheduler implements OnModuleInit { method constructor (line 12) | constructor( method onModuleInit (line 17) | async onModuleInit() { method handleCron (line 23) | async handleCron() { FILE: packages/bytebot-agent/src/agent/agent.types.ts type BytebotAgentResponse (line 4) | interface BytebotAgentResponse { type BytebotAgentService (line 13) | interface BytebotAgentService { type BytebotAgentModel (line 23) | interface BytebotAgentModel { class BytebotAgentInterrupt (line 30) | class BytebotAgentInterrupt extends Error { method constructor (line 31) | constructor() { FILE: packages/bytebot-agent/src/agent/input-capture.service.ts class InputCaptureService (line 24) | class InputCaptureService { method constructor (line 29) | constructor( method isCapturing (line 34) | isCapturing() { method start (line 38) | start(taskId: string) { method stop (line 161) | async stop() { FILE: packages/bytebot-agent/src/anthropic/anthropic.constants.ts constant ANTHROPIC_MODELS (line 3) | const ANTHROPIC_MODELS: BytebotAgentModel[] = [ constant DEFAULT_MODEL (line 18) | const DEFAULT_MODEL = ANTHROPIC_MODELS[0]; FILE: packages/bytebot-agent/src/anthropic/anthropic.module.ts class AnthropicModule (line 10) | class AnthropicModule {} FILE: packages/bytebot-agent/src/anthropic/anthropic.service.ts class AnthropicService (line 24) | class AnthropicService implements BytebotAgentService { method constructor (line 28) | constructor(private readonly configService: ConfigService) { method generateMessage (line 42) | async generateMessage( method formatMessagesForAnthropic (line 107) | private formatMessagesForAnthropic( method formatAnthropicResponse (line 159) | private formatAnthropicResponse( FILE: packages/bytebot-agent/src/anthropic/anthropic.tools.ts function agentToolToAnthropicTool (line 7) | function agentToolToAnthropicTool(agentTool: any): Anthropic.Tool { FILE: packages/bytebot-agent/src/app.controller.ts class AppController (line 5) | class AppController { method constructor (line 6) | constructor(private readonly appService: AppService) {} method getHello (line 9) | getHello(): string { FILE: packages/bytebot-agent/src/app.module.ts class AppModule (line 37) | class AppModule {} FILE: packages/bytebot-agent/src/app.service.ts class AppService (line 4) | class AppService { method getHello (line 5) | getHello(): string { FILE: packages/bytebot-agent/src/google/google.constants.ts constant GOOGLE_MODELS (line 3) | const GOOGLE_MODELS: BytebotAgentModel[] = [ constant DEFAULT_MODEL (line 18) | const DEFAULT_MODEL = GOOGLE_MODELS[0]; FILE: packages/bytebot-agent/src/google/google.module.ts class GoogleModule (line 10) | class GoogleModule {} FILE: packages/bytebot-agent/src/google/google.service.ts class GoogleService (line 30) | class GoogleService implements BytebotAgentService { method constructor (line 34) | constructor(private readonly configService: ConfigService) { method generateMessage (line 48) | async generateMessage( method formatMessagesForGoogle (line 121) | private formatMessagesForGoogle(messages: Message[]): Content[] { method getToolName (line 237) | private getToolName( method formatGoogleResponse (line 264) | private formatGoogleResponse(parts: Part[]): MessageContentBlock[] { FILE: packages/bytebot-agent/src/google/google.tools.ts function jsonSchemaTypeToGoogleType (line 7) | function jsonSchemaTypeToGoogleType(type: string): Type { function convertJsonSchemaToGoogleSchema (line 29) | function convertJsonSchemaToGoogleSchema(schema: any): any { function agentToolToGoogleTool (line 69) | function agentToolToGoogleTool(agentTool: any): FunctionDeclaration { FILE: packages/bytebot-agent/src/main.ts function bootstrap (line 11) | async function bootstrap() { FILE: packages/bytebot-agent/src/messages/messages.module.ts class MessagesModule (line 11) | class MessagesModule {} FILE: packages/bytebot-agent/src/messages/messages.service.ts type ProcessedMessage (line 18) | interface ProcessedMessage extends Message { type GroupedMessages (line 22) | interface GroupedMessages { class MessagesService (line 29) | class MessagesService { method constructor (line 30) | constructor( method create (line 36) | async create(data: { method findEvery (line 54) | async findEvery(taskId: string): Promise { method findAll (line 65) | async findAll( method findUnsummarized (line 89) | async findUnsummarized(taskId: string): Promise { method attachSummary (line 100) | async attachSummary( method groupBackToBackMessages (line 118) | private groupBackToBackMessages( method filterMessages (line 164) | private filterMessages(messages: Message[]): ProcessedMessage[] { method findRawMessages (line 201) | async findRawMessages( method findProcessedMessages (line 214) | async findProcessedMessages( FILE: packages/bytebot-agent/src/openai/openai.constants.ts constant OPENAI_MODELS (line 3) | const OPENAI_MODELS: BytebotAgentModel[] = [ constant DEFAULT_MODEL (line 18) | const DEFAULT_MODEL = OPENAI_MODELS[0]; FILE: packages/bytebot-agent/src/openai/openai.module.ts class OpenAIModule (line 10) | class OpenAIModule {} FILE: packages/bytebot-agent/src/openai/openai.service.ts class OpenAIService (line 25) | class OpenAIService implements BytebotAgentService { method constructor (line 29) | constructor(private readonly configService: ConfigService) { method generateMessage (line 43) | async generateMessage( method formatMessagesForOpenAI (line 93) | private formatMessagesForOpenAI( method formatOpenAIResponse (line 242) | private formatOpenAIResponse( FILE: packages/bytebot-agent/src/openai/openai.tools.ts function agentToolToOpenAITool (line 4) | function agentToolToOpenAITool(agentTool: any): OpenAI.Responses.Functio... FILE: packages/bytebot-agent/src/prisma/prisma.module.ts class PrismaModule (line 10) | class PrismaModule {} FILE: packages/bytebot-agent/src/prisma/prisma.service.ts class PrismaService (line 5) | class PrismaService extends PrismaClient implements OnModuleInit { method constructor (line 6) | constructor() { method onModuleInit (line 10) | async onModuleInit() { FILE: packages/bytebot-agent/src/proxy/proxy.module.ts class ProxyModule (line 10) | class ProxyModule {} FILE: packages/bytebot-agent/src/proxy/proxy.service.ts class ProxyService (line 29) | class ProxyService implements BytebotAgentService { method constructor (line 33) | constructor(private readonly configService: ConfigService) { method generateMessage (line 52) | async generateMessage( method formatMessagesForChatCompletion (line 114) | private formatMessagesForChatCompletion( method formatChatCompletionResponse (line 272) | private formatChatCompletionResponse( FILE: packages/bytebot-agent/src/proxy/proxy.tools.ts function agentToolToChatCompletionTool (line 7) | function agentToolToChatCompletionTool(agentTool: any): ChatCompletionTo... function convertToCamelCase (line 21) | function convertToCamelCase(name: string): string { FILE: packages/bytebot-agent/src/summaries/summaries.modue.ts class SummariesModule (line 10) | class SummariesModule {} FILE: packages/bytebot-agent/src/summaries/summaries.service.ts class SummariesService (line 6) | class SummariesService { method constructor (line 7) | constructor(private prisma: PrismaService) {} method create (line 9) | async create(data: { method findLatest (line 23) | async findLatest(taskId: string): Promise { method findAll (line 30) | async findAll(taskId: string): Promise { FILE: packages/bytebot-agent/src/tasks/dto/add-task-message.dto.ts class AddTaskMessageDto (line 3) | class AddTaskMessageDto { FILE: packages/bytebot-agent/src/tasks/dto/create-task.dto.ts class TaskFileDto (line 13) | class TaskFileDto { class CreateTaskDto (line 31) | class CreateTaskDto { FILE: packages/bytebot-agent/src/tasks/dto/update-task.dto.ts class UpdateTaskDto (line 4) | class UpdateTaskDto { FILE: packages/bytebot-agent/src/tasks/tasks.controller.ts class TasksController (line 36) | class TasksController { method constructor (line 37) | constructor( method create (line 44) | async create(@Body() createTaskDto: CreateTaskDto): Promise { method findAll (line 49) | async findAll( method getModels (line 70) | async getModels() { method findById (line 114) | async findById(@Param('id') id: string): Promise { method taskMessages (line 119) | async taskMessages( method addTaskMessage (line 135) | async addTaskMessage( method taskRawMessages (line 143) | async taskRawMessages( method taskProcessedMessages (line 157) | async taskProcessedMessages( method delete (line 172) | async delete(@Param('id') id: string): Promise { method takeOver (line 178) | async takeOver(@Param('id') taskId: string): Promise { method resume (line 184) | async resume(@Param('id') taskId: string): Promise { method cancel (line 190) | async cancel(@Param('id') taskId: string): Promise { FILE: packages/bytebot-agent/src/tasks/tasks.gateway.ts class TasksGateway (line 18) | class TasksGateway implements OnGatewayConnection, OnGatewayDisconnect { method handleConnection (line 22) | handleConnection(client: Socket) { method handleDisconnect (line 26) | handleDisconnect(client: Socket) { method handleJoinTask (line 31) | handleJoinTask(client: Socket, taskId: string) { method handleLeaveTask (line 37) | handleLeaveTask(client: Socket, taskId: string) { method emitTaskUpdate (line 42) | emitTaskUpdate(taskId: string, task: any) { method emitNewMessage (line 46) | emitNewMessage(taskId: string, message: any) { method emitTaskCreated (line 50) | emitTaskCreated(task: any) { method emitTaskDeleted (line 54) | emitTaskDeleted(taskId: string) { FILE: packages/bytebot-agent/src/tasks/tasks.module.ts class TasksModule (line 14) | class TasksModule {} FILE: packages/bytebot-agent/src/tasks/tasks.service.ts class TasksService (line 27) | class TasksService { method constructor (line 30) | constructor( method create (line 40) | async create(createTaskDto: CreateTaskDto): Promise { method findScheduledTasks (line 119) | async findScheduledTasks(): Promise { method findNextTask (line 131) | async findNextTask(): Promise<(Task & { files: File[] }) | null> { method findAll (line 158) | async findAll( method findById (line 192) | async findById(id: string): Promise { method update (line 217) | async update(id: string, updateTaskDto: UpdateTaskDto): Promise { method delete (line 249) | async delete(id: string): Promise { method addTaskMessage (line 263) | async addTaskMessage(taskId: string, addTaskMessageDto: AddTaskMessage... method resume (line 282) | async resume(taskId: string): Promise { method takeOver (line 320) | async takeOver(taskId: string): Promise { method cancel (line 359) | async cancel(taskId: string): Promise { FILE: packages/bytebot-ui/server.ts constant BYTEBOT_AGENT_BASE_URL (line 16) | const BYTEBOT_AGENT_BASE_URL = process.env.BYTEBOT_AGENT_BASE_URL; constant BYTEBOT_DESKTOP_VNC_URL (line 17) | const BYTEBOT_DESKTOP_VNC_URL = process.env.BYTEBOT_DESKTOP_VNC_URL; FILE: packages/bytebot-ui/src/app/api/[[...path]]/route.ts function proxy (line 6) | async function proxy(req: NextRequest, path: string[]): Promise { type PathParams (line 51) | type PathParams = Promise<{ path?: string[] }>; function handler (line 53) | async function handler(req: NextRequest, { params }: { params: PathParam... constant GET (line 58) | const GET = handler; constant POST (line 59) | const POST = handler; constant PUT (line 60) | const PUT = handler; constant PATCH (line 61) | const PATCH = handler; constant DELETE (line 62) | const DELETE = handler; constant OPTIONS (line 63) | const OPTIONS = handler; constant HEAD (line 64) | const HEAD = handler; FILE: packages/bytebot-ui/src/app/desktop/page.tsx function DesktopPage (line 7) | function DesktopPage() { FILE: packages/bytebot-ui/src/app/layout.tsx function RootLayout (line 13) | function RootLayout({ FILE: packages/bytebot-ui/src/app/page.tsx type StockPhotoProps (line 19) | interface StockPhotoProps { type FileWithBase64 (line 37) | interface FileWithBase64 { function Home (line 44) | function Home() { FILE: packages/bytebot-ui/src/app/tasks/[id]/page.tsx function TaskPage (line 25) | function TaskPage() { FILE: packages/bytebot-ui/src/app/tasks/page.tsx function TasksPageContent (line 15) | function TasksPageContent() { function TasksPageFallback (line 176) | function TasksPageFallback() { function TasksPage (line 185) | function TasksPage() { FILE: packages/bytebot-ui/src/components/VirtualDesktopStatusHeader.tsx type VirtualDesktopStatus (line 6) | type VirtualDesktopStatus = type StatusConfig (line 16) | interface StatusConfig { type VirtualDesktopStatusHeaderProps (line 146) | interface VirtualDesktopStatusHeaderProps { FILE: packages/bytebot-ui/src/components/layout/Header.tsx function Header (line 15) | function Header() { FILE: packages/bytebot-ui/src/components/messages/AssistantMessage.tsx type AssistantMessageProps (line 9) | interface AssistantMessageProps { function AssistantMessage (line 15) | function AssistantMessage({ FILE: packages/bytebot-ui/src/components/messages/ChatContainer.tsx type ChatContainerProps (line 9) | interface ChatContainerProps { function ChatContainer (line 26) | function ChatContainer({ FILE: packages/bytebot-ui/src/components/messages/ChatInput.tsx type FileWithBase64 (line 7) | interface FileWithBase64 { type ChatInputProps (line 14) | interface ChatInputProps { function ChatInput (line 24) | function ChatInput({ FILE: packages/bytebot-ui/src/components/messages/MessageAvatar.tsx type MessageAvatarProps (line 7) | interface MessageAvatarProps { function MessageAvatar (line 11) | function MessageAvatar({ role }: MessageAvatarProps) { FILE: packages/bytebot-ui/src/components/messages/MessageGroup.tsx type MessageGroupProps (line 7) | interface MessageGroupProps { function MessageGroup (line 13) | function MessageGroup({ group, taskStatus, messageIdToIndex }: MessageGr... FILE: packages/bytebot-ui/src/components/messages/UserMessage.tsx type UserMessageProps (line 11) | interface UserMessageProps { function UserMessage (line 16) | function UserMessage({ group, messageIdToIndex }: UserMessageProps) { FILE: packages/bytebot-ui/src/components/messages/content/ComputerToolContent.tsx type ComputerToolContentProps (line 6) | interface ComputerToolContentProps { function ComputerToolContent (line 11) | function ComputerToolContent({ block, isTakeOver = false }: ComputerTool... FILE: packages/bytebot-ui/src/components/messages/content/ComputerToolContentNormal.tsx type ComputerToolContentNormalProps (line 17) | interface ComputerToolContentNormalProps { function ToolDetailsNormal (line 31) | function ToolDetailsNormal({ block }: { block: ComputerToolUseContentBlo... function ComputerToolContentNormal (line 99) | function ComputerToolContentNormal({ FILE: packages/bytebot-ui/src/components/messages/content/ComputerToolContentTakeOver.tsx type ComputerToolContentTakeOverProps (line 13) | interface ComputerToolContentTakeOverProps { function ToolDetailsTakeOver (line 17) | function ToolDetailsTakeOver({ block }: { block: ComputerToolUseContentB... function ComputerToolContentTakeOver (line 78) | function ComputerToolContentTakeOver({ block }: ComputerToolContentTakeO... FILE: packages/bytebot-ui/src/components/messages/content/ComputerToolUtils.tsx type IconType (line 32) | type IconType = function getIcon (line 43) | function getIcon(block: ComputerToolUseContentBlock): IconType { function getLabel (line 91) | function getLabel(block: ComputerToolUseContentBlock) { FILE: packages/bytebot-ui/src/components/messages/content/ErrorContent.tsx type ErrorContentProps (line 6) | interface ErrorContentProps { function ErrorContent (line 10) | function ErrorContent({ block }: ErrorContentProps) { FILE: packages/bytebot-ui/src/components/messages/content/ImageContent.tsx type ImageContentProps (line 7) | interface ImageContentProps { function ImageContent (line 11) | function ImageContent({ block }: ImageContentProps) { FILE: packages/bytebot-ui/src/components/messages/content/MessageContent.tsx type MessageContentProps (line 14) | interface MessageContentProps { function MessageContent (line 19) | function MessageContent({ FILE: packages/bytebot-ui/src/components/messages/content/TextContent.tsx type TextContentProps (line 5) | interface TextContentProps { function TextContent (line 9) | function TextContent({ block }: TextContentProps) { FILE: packages/bytebot-ui/src/components/screenshot/ScreenshotViewer.tsx type ScreenshotViewerProps (line 5) | interface ScreenshotViewerProps { function ScreenshotViewer (line 10) | function ScreenshotViewer({ screenshot, className = '' }: ScreenshotView... FILE: packages/bytebot-ui/src/components/tasks/TaskItem.tsx type TaskItemProps (line 14) | interface TaskItemProps { type StatusIconConfig (line 18) | interface StatusIconConfig { constant STATUS_CONFIGS (line 25) | const STATUS_CONFIGS: Record = { FILE: packages/bytebot-ui/src/components/tasks/TaskList.tsx type TaskListProps (line 9) | interface TaskListProps { FILE: packages/bytebot-ui/src/components/tasks/TaskTabs.tsx type TabKey (line 11) | type TabKey = "ALL" | "ACTIVE" | "COMPLETED" | "CANCELLED_FAILED"; type TaskTabsProps (line 13) | interface TaskTabsProps { type TabConfig (line 19) | interface TabConfig { constant TAB_CONFIGS (line 30) | const TAB_CONFIGS: Record = { FILE: packages/bytebot-ui/src/components/ui/TopicPopover.tsx type TopicPopoverProps (line 5) | interface TopicPopoverProps { FILE: packages/bytebot-ui/src/components/ui/button.tsx type ButtonProps (line 38) | type ButtonProps = React.ComponentProps<"button"> & function Button (line 45) | function Button({ FILE: packages/bytebot-ui/src/components/ui/card.tsx function Card (line 5) | function Card({ className, ...props }: React.ComponentProps<"div">) { function CardHeader (line 18) | function CardHeader({ className, ...props }: React.ComponentProps<"div">) { function CardTitle (line 31) | function CardTitle({ className, ...props }: React.ComponentProps<"div">) { function CardDescription (line 41) | function CardDescription({ className, ...props }: React.ComponentProps<"... function CardAction (line 51) | function CardAction({ className, ...props }: React.ComponentProps<"div">) { function CardContent (line 64) | function CardContent({ className, ...props }: React.ComponentProps<"div"... function CardFooter (line 74) | function CardFooter({ className, ...props }: React.ComponentProps<"div">) { FILE: packages/bytebot-ui/src/components/ui/copy-button.tsx type CopyButtonProps (line 8) | interface CopyButtonProps { function CopyButton (line 15) | function CopyButton({ FILE: packages/bytebot-ui/src/components/ui/desktop-container.tsx type DesktopContainerProps (line 10) | interface DesktopContainerProps { FILE: packages/bytebot-ui/src/components/ui/input.tsx function Input (line 5) | function Input({ className, type, ...props }: React.ComponentProps<"inpu... FILE: packages/bytebot-ui/src/components/ui/loader.tsx type LoaderProps (line 5) | interface LoaderProps { FILE: packages/bytebot-ui/src/components/ui/pagination.tsx type PaginationProps (line 6) | interface PaginationProps { FILE: packages/bytebot-ui/src/components/ui/scroll-area.tsx function ScrollArea (line 8) | function ScrollArea({ function ScrollBar (line 31) | function ScrollBar({ FILE: packages/bytebot-ui/src/components/ui/separator.tsx function Separator (line 8) | function Separator({ FILE: packages/bytebot-ui/src/components/ui/switch.tsx function Switch (line 8) | function Switch({ FILE: packages/bytebot-ui/src/components/ui/text-shimmer.tsx type TextShimmerProps (line 6) | type TextShimmerProps = { function TextShimmerComponent (line 14) | function TextShimmerComponent({ FILE: packages/bytebot-ui/src/components/vnc/VncViewer.tsx type VncViewerProps (line 5) | interface VncViewerProps { function VncViewer (line 9) | function VncViewer({ viewOnly = true }: VncViewerProps) { FILE: packages/bytebot-ui/src/constants/ui.constants.ts constant UI_CONSTANTS (line 5) | const UI_CONSTANTS = { type UIConstants (line 32) | type UIConstants = typeof UI_CONSTANTS; FILE: packages/bytebot-ui/src/hooks/useChatSession.ts type UseChatSessionProps (line 15) | interface UseChatSessionProps { function useChatSession (line 19) | function useChatSession({ initialTaskId }: UseChatSessionProps = {}) { FILE: packages/bytebot-ui/src/hooks/useScrollScreenshot.ts type UseScrollScreenshotProps (line 5) | interface UseScrollScreenshotProps { function useScrollScreenshot (line 10) | function useScrollScreenshot({ messages, scrollContainerRef }: UseScroll... FILE: packages/bytebot-ui/src/hooks/useWebSocket.ts type UseWebSocketProps (line 5) | interface UseWebSocketProps { function useWebSocket (line 12) | function useWebSocket({ FILE: packages/bytebot-ui/src/lib/utils.ts function cn (line 4) | function cn(...inputs: ClassValue[]) { FILE: packages/bytebot-ui/src/types/index.ts type Role (line 3) | enum Role { type Message (line 9) | interface Message { type GroupedMessages (line 19) | interface GroupedMessages { type Model (line 25) | interface Model { type TaskStatus (line 32) | enum TaskStatus { type TaskPriority (line 42) | enum TaskPriority { type TaskType (line 49) | enum TaskType { type FileWithBase64 (line 54) | interface FileWithBase64 { type File (line 61) | interface File { type Task (line 72) | interface Task { FILE: packages/bytebot-ui/src/utils/clipboard.ts function copyToClipboard (line 6) | async function copyToClipboard(text: string): Promise { FILE: packages/bytebot-ui/src/utils/screenshotUtils.ts type ScreenshotData (line 4) | interface ScreenshotData { function extractScreenshots (line 14) | function extractScreenshots(messages: Message[]): ScreenshotData[] { function getScreenshotForScrollPosition (line 41) | function getScreenshotForScrollPosition( FILE: packages/bytebot-ui/src/utils/stringUtils.ts function capitalizeFirstChar (line 6) | function capitalizeFirstChar(str: string): string { FILE: packages/bytebot-ui/src/utils/taskUtils.ts constant API_CONFIG (line 6) | const API_CONFIG = { function apiRequest (line 17) | async function apiRequest( function buildQueryString (line 47) | function buildQueryString( function fetchTaskMessages (line 63) | async function fetchTaskMessages( function fetchTaskRawMessages (line 81) | async function fetchTaskRawMessages( function fetchTaskProcessedMessages (line 99) | async function fetchTaskProcessedMessages( function fetchTaskById (line 117) | async function fetchTaskById(taskId: string): Promise { function startTask (line 124) | async function startTask(data: { function addMessage (line 138) | async function addMessage( function fetchTasks (line 151) | async function fetchTasks(options?: { function fetchTaskCounts (line 177) | async function fetchTaskCounts(): Promise> { function fetchModels (line 223) | async function fetchModels(): Promise { function takeOverTask (line 243) | async function takeOverTask(taskId: string): Promise { function resumeTask (line 250) | async function resumeTask(taskId: string): Promise { function cancelTask (line 257) | async function cancelTask(taskId: string): Promise { FILE: packages/bytebotd/src/app.controller.ts class AppController (line 5) | class AppController { method constructor (line 6) | constructor(private readonly appService: AppService) {} method redirectToVnc (line 13) | redirectToVnc(@Headers('host') host: string) { FILE: packages/bytebotd/src/app.module.ts class AppModule (line 26) | class AppModule {} FILE: packages/bytebotd/src/app.service.ts class AppService (line 4) | class AppService { method getHello (line 5) | getHello(): string { FILE: packages/bytebotd/src/computer-use/computer-use.controller.ts class ComputerUseController (line 14) | class ComputerUseController { method constructor (line 17) | constructor(private readonly computerUseService: ComputerUseService) {} method action (line 20) | async action( FILE: packages/bytebotd/src/computer-use/computer-use.module.ts class ComputerUseModule (line 12) | class ComputerUseModule {} FILE: packages/bytebotd/src/computer-use/computer-use.service.ts class ComputerUseService (line 26) | class ComputerUseService { method constructor (line 29) | constructor(private readonly nutService: NutService) {} method action (line 31) | async action(params: ComputerAction): Promise { method moveMouse (line 107) | private async moveMouse(action: MoveMouseAction): Promise { method traceMouse (line 111) | private async traceMouse(action: TraceMouseAction): Promise { method clickMouse (line 133) | private async clickMouse(action: ClickMouseAction): Promise { method pressMouse (line 164) | private async pressMouse(action: PressMouseAction): Promise { method dragMouse (line 180) | private async dragMouse(action: DragMouseAction): Promise { method scroll (line 204) | private async scroll(action: ScrollAction): Promise { method typeKeys (line 229) | private async typeKeys(action: TypeKeysAction): Promise { method pressKeys (line 234) | private async pressKeys(action: PressKeysAction): Promise { method typeText (line 239) | private async typeText(action: TypeTextAction): Promise { method pasteText (line 244) | private async pasteText(action: PasteTextAction): Promise { method delay (line 249) | private async delay(ms: number): Promise { method screenshot (line 253) | async screenshot(): Promise<{ image: string }> { method cursor_position (line 259) | private async cursor_position(): Promise<{ x: number; y: number }> { method application (line 264) | private async application(action: ApplicationAction): Promise { method writeFile (line 364) | private async writeFile( method readFile (line 419) | private async readFile(action: ReadFileAction): Promise<{ FILE: packages/bytebotd/src/computer-use/dto/base.dto.ts class CoordinatesDto (line 3) | class CoordinatesDto { type ButtonType (line 11) | enum ButtonType { type PressType (line 17) | enum PressType { type ScrollDirection (line 22) | enum ScrollDirection { type ApplicationName (line 29) | enum ApplicationName { FILE: packages/bytebotd/src/computer-use/dto/computer-action-validation.pipe.ts class ComputerActionValidationPipe (line 29) | class ComputerActionValidationPipe implements PipeTransform { method transform (line 30) | async transform(value: any, metadata: ArgumentMetadata) { FILE: packages/bytebotd/src/computer-use/dto/computer-action.dto.ts class MoveMouseActionDto (line 27) | class MoveMouseActionDto extends BaseActionDto { class TraceMouseActionDto (line 36) | class TraceMouseActionDto extends BaseActionDto { class ClickMouseActionDto (line 51) | class ClickMouseActionDto extends BaseActionDto { class PressMouseActionDto (line 73) | class PressMouseActionDto extends BaseActionDto { class DragMouseActionDto (line 89) | class DragMouseActionDto extends BaseActionDto { class ScrollActionDto (line 107) | class ScrollActionDto extends BaseActionDto { class TypeKeysActionDto (line 129) | class TypeKeysActionDto extends BaseActionDto { class PressKeysActionDto (line 143) | class PressKeysActionDto extends BaseActionDto { class TypeTextActionDto (line 155) | class TypeTextActionDto extends BaseActionDto { class PasteTextActionDto (line 168) | class PasteTextActionDto extends BaseActionDto { class WaitActionDto (line 176) | class WaitActionDto extends BaseActionDto { class ScreenshotActionDto (line 185) | class ScreenshotActionDto extends BaseActionDto { class CursorPositionActionDto (line 190) | class CursorPositionActionDto extends BaseActionDto { class ApplicationActionDto (line 195) | class ApplicationActionDto extends BaseActionDto { class WriteFileActionDto (line 203) | class WriteFileActionDto extends BaseActionDto { class ReadFileActionDto (line 214) | class ReadFileActionDto extends BaseActionDto { type ComputerActionDto (line 223) | type ComputerActionDto = FILE: packages/bytebotd/src/input-tracking/input-tracking.controller.ts class InputTrackingController (line 5) | class InputTrackingController { method constructor (line 6) | constructor(private readonly inputTrackingService: InputTrackingServic... method start (line 9) | start() { method stop (line 15) | stop() { FILE: packages/bytebotd/src/input-tracking/input-tracking.gateway.ts class InputTrackingGateway (line 18) | class InputTrackingGateway method handleConnection (line 26) | handleConnection(client: Socket) { method handleDisconnect (line 30) | handleDisconnect(client: Socket) { method emitAction (line 34) | emitAction(action: ComputerAction) { method emitScreenshotAndAction (line 38) | emitScreenshotAndAction( FILE: packages/bytebotd/src/input-tracking/input-tracking.helpers.ts type KeyInfo (line 3) | type KeyInfo = { FILE: packages/bytebotd/src/input-tracking/input-tracking.module.ts class InputTrackingModule (line 13) | class InputTrackingModule {} FILE: packages/bytebotd/src/input-tracking/input-tracking.service.ts class InputTrackingService (line 23) | class InputTrackingService implements OnModuleDestroy { method constructor (line 47) | constructor( method onModuleDestroy (line 54) | onModuleDestroy() { method startTracking (line 58) | startTracking() { method stopTracking (line 68) | stopTracking() { method bufferChar (line 79) | private bufferChar(char: string) { method flushTypingBuffer (line 88) | private async flushTypingBuffer() { method isModifierKey (line 98) | private isModifierKey(key: UiohookKeyboardEvent) { method registerListeners (line 102) | private registerListeners() { method mapButton (line 263) | private mapButton(btn: unknown): Button { method logAction (line 276) | private async logAction(action: ComputerAction) { FILE: packages/bytebotd/src/main.ts function bootstrap (line 7) | async function bootstrap() { FILE: packages/bytebotd/src/mcp/bytebot-mcp.module.ts class BytebotMcpModule (line 17) | class BytebotMcpModule {} FILE: packages/bytebotd/src/mcp/compressor.ts type CompressionOptions (line 3) | interface CompressionOptions { type CompressionResult (line 11) | interface CompressionResult { class Base64ImageCompressor (line 21) | class Base64ImageCompressor { method compressToSize (line 25) | static async compressToSize( method compressBuffer (line 95) | private static async compressBuffer( method compressWithResize (line 142) | static async compressWithResize( method getBase64SizeInfo (line 194) | static getBase64SizeInfo(base64String: string): { function compressPngBase64Under1MB (line 219) | async function compressPngBase64Under1MB( FILE: packages/bytebotd/src/mcp/computer-use.tools.ts class ComputerUseTools (line 8) | class ComputerUseTools { method constructor (line 9) | constructor(private readonly computerUse: ComputerUseService) {} method moveMouse (line 21) | async moveMouse({ coordinates }: { coordinates: { x: number; y: number... method traceMouse (line 56) | async traceMouse({ method clickMouse (line 106) | async clickMouse({ method pressMouse (line 162) | async pressMouse({ method dragMouse (line 221) | async dragMouse({ method scroll (line 285) | async scroll({ method typeKeys (line 357) | async typeKeys({ keys, delay }: { keys: string[]; delay?: number }) { method pressKeys (line 412) | async pressKeys({ keys, press }: { keys: string[]; press: 'down' | 'up... method typeText (line 440) | async typeText({ text, delay }: { text: string; delay?: number }) { method pasteText (line 464) | async pasteText({ text }: { text: string }) { method wait (line 490) | async wait({ duration }: { duration: number }) { method application (line 522) | async application({ method screenshot (line 553) | async screenshot() { method cursorPosition (line 583) | async cursorPosition() { method writeFile (line 619) | async writeFile({ path, data }: { path: string; data: string }) { method readFile (line 654) | async readFile({ path }: { path: string }) { FILE: packages/bytebotd/src/nut/nut.module.ts class NutModule (line 8) | class NutModule {} FILE: packages/bytebotd/src/nut/nut.service.ts class NutService (line 120) | class NutService { method constructor (line 124) | constructor() { method sendKeys (line 148) | async sendKeys(keys: string[], delay: number = 100): Promise { method holdKeys (line 168) | async holdKeys(keys: string[], down: boolean): Promise { method validateKey (line 190) | private validateKey(key: string): Key { method typeText (line 218) | async typeText(text: string, delayMs: number = 0): Promise { method pasteText (line 246) | async pasteText(text: string): Promise { method charToKeyInfo (line 284) | private charToKeyInfo( method mouseMoveEvent (line 354) | async mouseMoveEvent({ x, y }: { x: number; y: number }): Promise { method mouseClickEvent (line 365) | async mouseClickEvent(button: 'left' | 'right' | 'middle'): Promise { method getCursorPosition (line 497) | async getCursorPosition(): Promise<{ x: number; y: number }> { method delay (line 513) | private async delay(ms: number): Promise { FILE: packages/shared/src/types/computerAction.types.ts type Coordinates (line 1) | type Coordinates = { x: number; y: number }; type Button (line 2) | type Button = "left" | "right" | "middle"; type Press (line 3) | type Press = "up" | "down"; type Application (line 4) | type Application = type MoveMouseAction (line 14) | type MoveMouseAction = { type TraceMouseAction (line 19) | type TraceMouseAction = { type ClickMouseAction (line 25) | type ClickMouseAction = { type PressMouseAction (line 33) | type PressMouseAction = { type DragMouseAction (line 40) | type DragMouseAction = { type ScrollAction (line 47) | type ScrollAction = { type TypeKeysAction (line 55) | type TypeKeysAction = { type PasteTextAction (line 61) | type PasteTextAction = { type PressKeysAction (line 66) | type PressKeysAction = { type TypeTextAction (line 72) | type TypeTextAction = { type WaitAction (line 79) | type WaitAction = { type ScreenshotAction (line 84) | type ScreenshotAction = { type CursorPositionAction (line 88) | type CursorPositionAction = { type ApplicationAction (line 92) | type ApplicationAction = { type WriteFileAction (line 97) | type WriteFileAction = { type ReadFileAction (line 103) | type ReadFileAction = { type ComputerAction (line 109) | type ComputerAction = FILE: packages/shared/src/types/messageContent.types.ts type MessageContentType (line 4) | enum MessageContentType { type MessageContentBlockBase (line 16) | type MessageContentBlockBase = { type TextContentBlock (line 21) | type TextContentBlock = { type ImageContentBlock (line 26) | type ImageContentBlock = { type DocumentContentBlock (line 35) | type DocumentContentBlock = { type ThinkingContentBlock (line 46) | type ThinkingContentBlock = { type RedactedThinkingContentBlock (line 52) | type RedactedThinkingContentBlock = { type ToolUseContentBlock (line 57) | type ToolUseContentBlock = { type MoveMouseToolUseBlock (line 64) | type MoveMouseToolUseBlock = ToolUseContentBlock & { type TraceMouseToolUseBlock (line 71) | type TraceMouseToolUseBlock = ToolUseContentBlock & { type ClickMouseToolUseBlock (line 79) | type ClickMouseToolUseBlock = ToolUseContentBlock & { type PressMouseToolUseBlock (line 89) | type PressMouseToolUseBlock = ToolUseContentBlock & { type DragMouseToolUseBlock (line 98) | type DragMouseToolUseBlock = ToolUseContentBlock & { type ScrollToolUseBlock (line 107) | type ScrollToolUseBlock = ToolUseContentBlock & { type TypeKeysToolUseBlock (line 117) | type TypeKeysToolUseBlock = ToolUseContentBlock & { type PressKeysToolUseBlock (line 125) | type PressKeysToolUseBlock = ToolUseContentBlock & { type TypeTextToolUseBlock (line 133) | type TypeTextToolUseBlock = ToolUseContentBlock & { type PasteTextToolUseBlock (line 142) | type PasteTextToolUseBlock = ToolUseContentBlock & { type WaitToolUseBlock (line 150) | type WaitToolUseBlock = ToolUseContentBlock & { type ScreenshotToolUseBlock (line 157) | type ScreenshotToolUseBlock = ToolUseContentBlock & { type CursorPositionToolUseBlock (line 161) | type CursorPositionToolUseBlock = ToolUseContentBlock & { type ApplicationToolUseBlock (line 165) | type ApplicationToolUseBlock = ToolUseContentBlock & { type WriteFileToolUseBlock (line 172) | type WriteFileToolUseBlock = ToolUseContentBlock & { type ReadFileToolUseBlock (line 180) | type ReadFileToolUseBlock = ToolUseContentBlock & { type ComputerToolUseContentBlock (line 187) | type ComputerToolUseContentBlock = type UserActionContentBlock (line 205) | type UserActionContentBlock = MessageContentBlockBase & { type SetTaskStatusToolUseBlock (line 221) | type SetTaskStatusToolUseBlock = ToolUseContentBlock & { type CreateTaskToolUseBlock (line 229) | type CreateTaskToolUseBlock = ToolUseContentBlock & { type ToolResultContentBlock (line 240) | type ToolResultContentBlock = { type MessageContentBlock (line 248) | type MessageContentBlock = FILE: packages/shared/src/utils/computerAction.utils.ts function createActionTypeGuard (line 28) | function createActionTypeGuard( function createToolUseBlock (line 71) | function createToolUseBlock( function conditionallyAdd (line 87) | function conditionallyAdd>( function convertMoveMouseActionToToolUseBlock (line 103) | function convertMoveMouseActionToToolUseBlock( function convertTraceMouseActionToToolUseBlock (line 112) | function convertTraceMouseActionToToolUseBlock( function convertClickMouseActionToToolUseBlock (line 125) | function convertClickMouseActionToToolUseBlock( function convertPressMouseActionToToolUseBlock (line 145) | function convertPressMouseActionToToolUseBlock( function convertDragMouseActionToToolUseBlock (line 162) | function convertDragMouseActionToToolUseBlock( function convertScrollActionToToolUseBlock (line 179) | function convertScrollActionToToolUseBlock( function convertTypeKeysActionToToolUseBlock (line 199) | function convertTypeKeysActionToToolUseBlock( function convertPressKeysActionToToolUseBlock (line 212) | function convertPressKeysActionToToolUseBlock( function convertTypeTextActionToToolUseBlock (line 222) | function convertTypeTextActionToToolUseBlock( function convertPasteTextActionToToolUseBlock (line 236) | function convertPasteTextActionToToolUseBlock( function convertWaitActionToToolUseBlock (line 245) | function convertWaitActionToToolUseBlock( function convertScreenshotActionToToolUseBlock (line 254) | function convertScreenshotActionToToolUseBlock( function convertCursorPositionActionToToolUseBlock (line 261) | function convertCursorPositionActionToToolUseBlock( function convertApplicationActionToToolUseBlock (line 268) | function convertApplicationActionToToolUseBlock( function convertWriteFileActionToToolUseBlock (line 277) | function convertWriteFileActionToToolUseBlock( function convertReadFileActionToToolUseBlock (line 287) | function convertReadFileActionToToolUseBlock( function convertComputerActionToToolUseBlock (line 299) | function convertComputerActionToToolUseBlock( FILE: packages/shared/src/utils/messageContent.utils.ts function isTextContentBlock (line 38) | function isTextContentBlock(obj: unknown): obj is TextContentBlock { function isThinkingContentBlock (line 49) | function isThinkingContentBlock( function isRedactedThinkingContentBlock (line 64) | function isRedactedThinkingContentBlock( function isImageContentBlock (line 83) | function isImageContentBlock(obj: unknown): obj is ImageContentBlock { function isUserActionContentBlock (line 99) | function isUserActionContentBlock( function isDocumentContentBlock (line 116) | function isDocumentContentBlock( function isToolUseContentBlock (line 139) | function isToolUseContentBlock( function isComputerToolUseContentBlock (line 161) | function isComputerToolUseContentBlock( function isToolResultContentBlock (line 176) | function isToolResultContentBlock( function isMessageContentBlock (line 195) | function isMessageContentBlock( function getMessageContentBlockType (line 216) | function getMessageContentBlockType(obj: unknown): string | null { function isMoveMouseToolUseBlock (line 268) | function isMoveMouseToolUseBlock( function isTraceMouseToolUseBlock (line 284) | function isTraceMouseToolUseBlock( function isClickMouseToolUseBlock (line 300) | function isClickMouseToolUseBlock( function isCursorPositionToolUseBlock (line 316) | function isCursorPositionToolUseBlock( function isPressMouseToolUseBlock (line 332) | function isPressMouseToolUseBlock( function isDragMouseToolUseBlock (line 348) | function isDragMouseToolUseBlock( function isScrollToolUseBlock (line 364) | function isScrollToolUseBlock(obj: unknown): obj is ScrollToolUseBlock { function isTypeKeysToolUseBlock (line 378) | function isTypeKeysToolUseBlock( function isPressKeysToolUseBlock (line 394) | function isPressKeysToolUseBlock( function isTypeTextToolUseBlock (line 410) | function isTypeTextToolUseBlock( function isPasteTextToolUseBlock (line 421) | function isPasteTextToolUseBlock( function isWaitToolUseBlock (line 437) | function isWaitToolUseBlock(obj: unknown): obj is WaitToolUseBlock { function isScreenshotToolUseBlock (line 451) | function isScreenshotToolUseBlock( function isApplicationToolUseBlock (line 462) | function isApplicationToolUseBlock( function isSetTaskStatusToolUseBlock (line 473) | function isSetTaskStatusToolUseBlock( function isCreateTaskToolUseBlock (line 484) | function isCreateTaskToolUseBlock( function isWriteFileToolUseBlock (line 495) | function isWriteFileToolUseBlock( function isReadFileToolUseBlock (line 506) | function isReadFileToolUseBlock(