Overview
IronClaw includes a comprehensive set of built-in tools organized by domain:- Basic: Echo, Time, JSON manipulation
- Network: HTTP requests, Web fetching
- Files: Read, Write, List, Apply patches
- Memory: Search, Read, Write workspace files
- Shell: Execute shell commands (container-only)
- Jobs: Create, List, Status, Cancel background jobs
- Extensions: Search, Install, Auth, Activate MCP/WASM tools
- Skills: Search, Install, Remove prompt-level skills
- Routines: Create, List, Update, Delete scheduled/event-driven tasks
- Messaging: Send messages to channels
Basic Tools
EchoTool
Echoes back the input message. Useful for testing.src/tools/builtin/echo.rs
message(string, required): The message to echo back
TimeTool
Returns the current UTC time and date.src/tools/builtin/time.rs
JsonTool
Manipulates JSON data (parse, query, transform).src/tools/builtin/json.rs
operation(string, required): Operation to perform: “parse”, “query”, “transform”data: Input datapath: JSON path for query operationstemplate: Template for transform operations
Network Tools
HttpTool
Makes HTTP requests with credential injection support.src/tools/builtin/http.rs
url(string, required): Target URLmethod(string): HTTP method (default: “GET”)headers(object): Request headersbody: Request bodytimeout_ms(number): Request timeout in milliseconds
- Automatic credential injection from secrets store
- OAuth token refresh
- Response sanitization
- Timeout support
WebFetchTool
Fetches web pages and converts them to clean markdown.src/tools/builtin/web_fetch.rs
url(string, required): URL to fetchfollow_redirects(boolean): Follow HTTP redirects (default: true)timeout_ms(number): Request timeout in milliseconds
- HTML to Markdown conversion
- JavaScript rendering (when available)
- Clean text extraction
File Tools
ReadFileTool
Reads file contents.src/tools/builtin/file.rs
path(string, required): File path to readstart_line(number): Optional start line (1-indexed)end_line(number): Optional end line (inclusive)
WriteFileTool
Writes content to a file.src/tools/builtin/file.rs
path(string, required): File path to writecontent(string, required): Content to write
ListDirTool
Lists directory contents.src/tools/builtin/file.rs
path(string): Directory path (default: current directory)recursive(boolean): List recursively (default: false)
ApplyPatchTool
Applies a unified diff patch to a file.src/tools/builtin/file.rs
path(string, required): File path to patchpatch(string, required): Unified diff patch content
Memory Tools
MemorySearchTool
Searches workspace documents using hybrid search (BM25 + semantic).src/tools/builtin/memory.rs
query(string, required): Search querylimit(number): Maximum results (default: 5)
MemoryReadTool
Reads a workspace file by path.src/tools/builtin/memory.rs
path(string, required): File path to read (e.g., “MEMORY.md”, “projects/alpha/notes.md”)
MemoryWriteTool
Writes to workspace files.src/tools/builtin/memory.rs
target(string, required): Target location: “memory”, “daily”, “heartbeat”, “bootstrap”, or a custom pathcontent(string, required): Content to writemode(string): Write mode: “append” or “overwrite” (default: “append”)
MemoryTreeTool
Lists all files in the workspace as a tree structure.src/tools/builtin/memory.rs
Shell Tool
ShellTool
Executes shell commands.src/tools/builtin/shell.rs
command(string, required): Shell command to executeworkdir(string): Working directory (optional)timeout_ms(number): Execution timeout in milliseconds
Job Tools
CreateJobTool
Creates a background job for long-running tasks.src/tools/builtin/job.rs
prompt(string, required): Task description for the jobtitle(string): Optional job titleinteractive(boolean): Whether the job needs user interaction (default: false)
ListJobsTool
Lists all jobs for the current user.src/tools/builtin/job.rs
status(string): Filter by status: “active”, “completed”, “failed”, or “all” (default: “all”)
JobStatusTool
Gets detailed status of a specific job.src/tools/builtin/job.rs
job_id(string, required): Job ID to check
CancelJobTool
Cancels a running job.src/tools/builtin/job.rs
job_id(string, required): Job ID to cancel
JobEventsTool
Reads event stream for a job (tool calls, outputs, errors).src/tools/builtin/job.rs
job_id(string, required): Job ID to read events fromafter(number): Optional timestamp to read events after
JobPromptTool
Responds to an interactive prompt from a job.src/tools/builtin/job.rs
job_id(string, required): Job IDprompt_id(string, required): Prompt ID from job_eventsresponse(string, required): User’s response
Extension Tools
ToolSearchTool
Searches the extension catalog for available tools.src/tools/builtin/extension_tools.rs
query(string, required): Search querylimit(number): Maximum results (default: 10)
ToolInstallTool
Installs a tool from the catalog.src/tools/builtin/extension_tools.rs
name(string, required): Tool name to install
ToolAuthTool
Authenticates with a tool/extension.src/tools/builtin/extension_tools.rs
name(string, required): Extension nametoken(string): Optional authentication token
ToolActivateTool
Activates an installed tool.src/tools/builtin/extension_tools.rs
name(string, required): Tool name to activate
ToolListTool
Lists all installed extensions.src/tools/builtin/extension_tools.rs
ToolRemoveTool
Removes an installed tool.src/tools/builtin/extension_tools.rs
name(string, required): Tool name to remove
Skill Tools
SkillListTool
Lists all installed skills.src/tools/builtin/skill_tools.rs
SkillSearchTool
Searches the skill catalog.src/tools/builtin/skill_tools.rs
query(string, required): Search querylimit(number): Maximum results (default: 10)
SkillInstallTool
Installs a skill from the catalog.src/tools/builtin/skill_tools.rs
name(string, required): Skill name to install
SkillRemoveTool
Removes an installed skill.src/tools/builtin/skill_tools.rs
name(string, required): Skill name to remove
Routine Tools
RoutineCreateTool
Creates a scheduled or event-driven routine.src/tools/builtin/routine.rs
name(string, required): Routine namedescription(string, required): What the routine doesaction(object, required): Action to execute (either “job” or “message”)trigger(object, required): Trigger condition (“cron” or “event”)
RoutineListTool
Lists all routines.src/tools/builtin/routine.rs
RoutineUpdateTool
Updates an existing routine.src/tools/builtin/routine.rs
name(string, required): Routine nameenabled(boolean): Enable/disable the routinedescription(string): Updated descriptionaction(object): Updated actiontrigger(object): Updated trigger
RoutineDeleteTool
Deletes a routine.src/tools/builtin/routine.rs
name(string, required): Routine name to delete
RoutineHistoryTool
Views execution history for a routine.src/tools/builtin/routine.rs
name(string, required): Routine namelimit(number): Maximum entries (default: 10)
Messaging Tool
MessageTool
Sends a message to a channel.src/tools/builtin/message.rs
content(string, required): Message content to sendchannel(string): Target channel (defaults to current channel)target(string): Target user/group (defaults to current conversation)
