This document describes the specialized tools available to the AI Copilot assistant for interacting with workflows, workspace entities, and the Sim Studio platform. These are distinct from general integration tools (4.6)—Copilot tools enable the assistant to manipulate workflows, manage knowledge bases, interact with structured tables, and spawn sub-agents with specialized capabilities.
Copilot tools follow a specialized architecture that integrates deeply with the chat interface and workflow editor. Tools are invoked by the AI model during conversation and can execute either on the server or client side.
The system manages tool execution through a router that maps natural language requests to specific code entities.
Sources: apps/sim/stores/panel/copilot/types.ts37-45 apps/sim/lib/copilot/tools/server/base-tool.ts5-15 apps/sim/lib/copilot/orchestrator/tool-executor/workflow-tools/mutations.ts93-102 apps/sim/lib/copilot/orchestrator/tool-executor/vfs-tools.ts8-30
Tool calls are represented by the CopilotToolCall interface, which tracks execution state, parameters, and nested sub-agent content:
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier for this tool invocation apps/sim/stores/panel/copilot/types.ts11 |
name | string | Tool identifier (e.g., edit_workflow, knowledge_base) apps/sim/stores/panel/copilot/types.ts12 |
state | ClientToolCallState | Current execution state (pending, streaming, success, error) apps/sim/stores/panel/copilot/types.ts13 |
params | Record<string, unknown> | Tool parameters provided by the AI model apps/sim/stores/panel/copilot/types.ts15 |
serverUI | ServerToolUI | UI metadata for rendering tool results apps/sim/stores/panel/copilot/types.ts17 |
result | object | The output of the tool execution (success/error/output) apps/sim/stores/panel/copilot/types.ts19 |
Sources: apps/sim/stores/panel/copilot/types.ts10-23
The Copilot has access to several specialized tools for workspace manipulation.
edit_workflowThe primary tool for modifying workflow structure.
WorkflowMutations to apply changes apps/sim/lib/copilot/orchestrator/tool-executor/workflow-tools/mutations.ts93-102sanitizeForCopilot to strip UI-specific metadata (like block positions) before presenting the state to the LLM apps/sim/lib/copilot/orchestrator/tool-executor/workflow-tools/mutations.ts161-167recordAudit for workspace security apps/sim/lib/copilot/orchestrator/tool-executor/workflow-tools/mutations.ts136-144Sources: apps/sim/lib/copilot/orchestrator/tool-executor/workflow-tools/mutations.ts104-182
get_blocks_metadataAllows the Copilot to query the capabilities of available blocks in the registry.
getBlocksMetadataServerTool apps/sim/lib/copilot/tools/server/blocks/get-blocks-metadata-tool.ts102-105blockIds apps/sim/lib/copilot/tools/shared/schemas.ts11blockRegistry and tool configurations from the toolsRegistry to build a comprehensive schema for the LLM apps/sim/lib/copilot/tools/server/blocks/get-blocks-metadata-tool.ts148-173Sources: apps/sim/lib/copilot/tools/server/blocks/get-blocks-metadata-tool.ts109-157
knowledge_baseA comprehensive tool for RAG (Retrieval-Augmented Generation) management.
create, query, add_file, list_tags, and sync_connector apps/sim/lib/copilot/tools/shared/schemas.ts24-42KnowledgeBaseArgsSchema apps/sim/lib/copilot/tools/shared/schemas.ts23-99user_tableEnables the Copilot to manage structured data tables within the workspace.
create_from_file, insert_row, batch_update_rows, and query_rows apps/sim/lib/copilot/tools/shared/schemas.ts111-132UserTableResultSchema format apps/sim/lib/copilot/tools/shared/schemas.ts170-175vfs (Virtual File System)Tools for interacting with workspace files through a virtualized layer.
uploads/ apps/sim/lib/copilot/orchestrator/tool-executor/vfs-tools.ts51-73Sources: apps/sim/lib/copilot/orchestrator/tool-executor/vfs-tools.ts1-185
Copilot tools are enhanced by the Context System, allowing users to @mention entities that are then injected into the tool's execution environment.
The FOLDER_CONFIGS define the searchable categories in the Copilot UI and how they map to ChatContext objects.
When a message is sent, processContextsServer resolves these mentions into actual content for the LLM prompt.
Sources: apps/sim/lib/copilot/process-contents.ts103-130 apps/sim/lib/copilot/process-contents.ts38-42
Copilot supports slash commands to route requests to specific sub-agent patterns:
/fast: Optimized for quick edits./research: Triggers a deep research workflow./actions: Maps to superagent for multi-step task orchestration apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/panel/components/copilot/components/user-input/constants.ts:219-224.Refresh this wiki