Documentation Index Fetch the complete documentation index at: https://mintlify.com/logicminds/ironclaw/llms.txt
Use this file to discover all available pages before exploring further.
Overview
The ironclaw tool command provides subcommands for managing WebAssembly (WASM) tools. Tools are sandboxed plugins that extend the agent’s capabilities with custom functionality.
Subcommands
install
Install a WASM tool from source or a compiled .wasm file:
ironclaw tool install < PAT H > [OPTIONS]
Path to tool source directory (with Cargo.toml) or a .wasm file.
Tool name. Defaults to the crate name from Cargo.toml or the filename.
Path to capabilities JSON file. Auto-detected if not specified.
Installation directory. Defaults to ~/.ironclaw/tools/.
Build in release mode (optimized).
Skip compilation and use an existing .wasm file.
Overwrite if the tool already exists.
Examples:
# Install from source directory
ironclaw tool install ~/my-tools/weather-tool/
# Install a pre-built .wasm file
ironclaw tool install ~/downloads/calculator.wasm
# Install with custom name
ironclaw tool install ./tool --name my-custom-tool
# Force overwrite existing installation
ironclaw tool install ./tool --force
Output:
Installing weather-tool to /home/user/.ironclaw/tools/weather-tool.wasm
Copying capabilities from weather-tool.capabilities.json
Installed successfully:
Name: weather-tool
WASM: /home/user/.ironclaw/tools/weather-tool.wasm
Size: 245760 bytes
Hash: a3f9c8e2b1d47f5a
Caps: /home/user/.ironclaw/tools/weather-tool.capabilities.json
list
List installed tools:
ironclaw tool list [OPTIONS]
Directory to list tools from. Defaults to ~/.ironclaw/tools/.
Show detailed information including capabilities and permissions.
Examples:
ironclaw tool list
ironclaw tool list --verbose
Output (normal):
Installed tools in /home/user/.ironclaw/tools:
calculator (42.3 KB, caps: ✓ )
weather-tool (240.0 KB, caps: ✓ )
notion-sync (156.8 KB, caps: ✓ )
Output (verbose):
Installed tools in /home/user/.ironclaw/tools:
weather-tool (240.0 KB )
Path: /home/user/.ironclaw/tools/weather-tool.wasm
Hash: a3f9c8e2
Caps: yes
Perms: http: api.openweathermap.org, secrets: 1
notion-sync (156.8 KB )
Path: /home/user/.ironclaw/tools/notion-sync.wasm
Hash: f2a8c9d1
Caps: yes
Perms: http: api.notion.com, workspace: read
remove
Remove an installed tool:
ironclaw tool remove < NAM E > [OPTIONS]
Name of the tool to remove.
Directory to remove tool from. Defaults to ~/.ironclaw/tools/.
Example:
ironclaw tool remove weather-tool
Output:
Removed /home/user/.ironclaw/tools/weather-tool.wasm
Removed /home/user/.ironclaw/tools/weather-tool.capabilities.json
Tool 'weather-tool' removed.
info
Show detailed information about a tool:
ironclaw tool info < NAME_OR_PAT H > [OPTIONS]
Tool name or path to a .wasm file.
Directory to look for tool. Defaults to ~/.ironclaw/tools/.
Example:
ironclaw tool info weather-tool
Output:
Tool: weather-tool
Path: /home/user/.ironclaw/tools/weather-tool.wasm
Size: 245760 bytes (240.0 KB )
Hash: a3f9c8e2b1d47f5ac3e8d9a2f1c4b7e8
Capabilities (/home/user/.ironclaw/tools/weather-tool.capabilities.json):
HTTP:
GET,POST api.openweathermap.org / *
Credentials:
api_key: openweather_api_key - > header:X-API-Key
Rate limit: 60/min, 1000/hour
Secrets (existence check only ):
openweather_api_key
auth
Configure authentication for a tool (OAuth or token-based):
ironclaw tool auth < NAM E > [OPTIONS]
Name of the tool to authenticate.
Directory to look for tool. Defaults to ~/.ironclaw/tools/.
User ID for storing the secret.
Example:
ironclaw tool auth notion-sync
OAuth Flow Output:
╔════════════════════════════════════════════════════════════════╗
║ Notion Authentication ║
╚════════════════════════════════════════════════════════════════╝
Starting OAuth authentication...
Opening browser for Notion login...
Waiting for authorization...
Exchanging code for token...
✓ Notion connected!
The tool can now access the API.
Manual Token Entry:
╔════════════════════════════════════════════════════════════════╗
║ OpenWeather Authentication ║
╚════════════════════════════════════════════════════════════════╝
Setup instructions:
1. Go to https://openweathermap.org/api
2. Sign up for a free account
3. Navigate to API Keys
4. Copy your API key
Press Enter to open setup page (or 's' to skip ):
Token format: sk-...
Paste your token: ********************
Validating token... ✓
✓ OpenWeather connected!
The tool can now access the API.
setup
Configure required secrets for a tool:
ironclaw tool setup < NAM E > [OPTIONS]
Name of the tool to set up.
Directory to look for tool. Defaults to ~/.ironclaw/tools/.
User ID for storing secrets.
Example:
ironclaw tool setup database-tool
Output:
╔════════════════════════════════════════════════════════════════╗
║ Database Tool Setup ║
╚════════════════════════════════════════════════════════════════╝
Database host: ********************
✓ Saved.
Database password: ********************
✓ Saved.
API key (optional, Enter to skip ):
Skipped.
✓ Database Tool setup complete!
Tools must include a .capabilities.json file that defines their permissions:
{
"http" : {
"allowlist" : [
{
"host" : "api.openweathermap.org" ,
"methods" : [ "GET" ],
"path_prefix" : "/data/2.5"
}
],
"credentials" : {
"api_key" : {
"secret_name" : "openweather_api_key" ,
"location" : { "header" : "X-API-Key" }
}
},
"rate_limit" : {
"requests_per_minute" : 60 ,
"requests_per_hour" : 1000
}
},
"secrets" : {
"allowed_names" : [ "openweather_api_key" ]
}
}
Tools without a capabilities file will run with no permissions (default deny).
To build a tool from source:
Create a Rust project targeting wasm32-wasip1:
cargo new --lib my-tool
cd my-tool
Add WASM target:
rustup target add wasm32-wasip1
Build the component:
cargo build --release --target wasm32-wasip1
Install with IronClaw:
See the Tool Development Guide for details.
ironclaw mcp Manage MCP servers
ironclaw status View installed tool count