Skip to main content

Tools Configuration

PicoClaw's tools configuration is located in the tools field of config.json.

{
"tools": {
"web": { ... },
"exec": { ... },
"cron": { ... },
"skills": { ... }
}
}

Web Tools

Web tools are used for web search and fetching.

ConfigTypeDefaultDescription
enabledboolfalseEnable Brave search
api_keystringBrave Search API key
max_resultsint5Maximum number of results

Get a free API key at brave.com/search/api (2000 free queries/month).

DuckDuckGo

ConfigTypeDefaultDescription
enabledbooltrueEnable DuckDuckGo search
max_resultsint5Maximum number of results

DuckDuckGo is enabled by default and requires no API key.

Perplexity

ConfigTypeDefaultDescription
enabledboolfalseEnable Perplexity search
api_keystringPerplexity API key
max_resultsint5Maximum number of results

Web Tools Configuration Example

{
"tools": {
"web": {
"brave": {
"enabled": true,
"api_key": "YOUR_BRAVE_API_KEY",
"max_results": 5
},
"duckduckgo": {
"enabled": true,
"max_results": 5
},
"perplexity": {
"enabled": false,
"api_key": "pplx-xxx",
"max_results": 5
}
}
}
}

Exec Tool

The exec tool executes shell commands on behalf of the agent.

ConfigTypeDefaultDescription
enable_deny_patternsbooltrueEnable default dangerous command blocking
custom_deny_patternsarray[]Custom deny patterns (regular expressions)

Default Blocked Command Patterns

By default, PicoClaw blocks these dangerous commands:

  • Delete commands: rm -rf, del /f/q, rmdir /s
  • Disk operations: format, mkfs, diskpart, dd if=, writing to /dev/sd*
  • System operations: shutdown, reboot, poweroff
  • Command substitution: $(), ${}, backticks
  • Pipe to shell: | sh, | bash
  • Privilege escalation: sudo, chmod, chown
  • Process control: pkill, killall, kill -9
  • Remote operations: curl | sh, wget | sh, ssh
  • Package management: apt, yum, dnf, npm install -g, pip install --user
  • Containers: docker run, docker exec
  • Git: git push, git force
  • Other: eval, source *.sh

Exec Configuration Example

{
"tools": {
"exec": {
"enable_deny_patterns": true,
"custom_deny_patterns": [
"\\brm\\s+-r\\b",
"\\bkillall\\s+python"
]
}
}
}

Cron Tool

The cron tool schedules periodic tasks.

ConfigTypeDefaultDescription
exec_timeout_minutesint5Execution timeout in minutes (0 = no limit)

Skills Tool

The skills tool manages skill discovery and installation via registries like ClawHub.

ConfigTypeDefaultDescription
registries.clawhub.enabledbooltrueEnable ClawHub registry
registries.clawhub.base_urlstringhttps://clawhub.aiClawHub base URL
registries.clawhub.search_pathstring/api/v1/searchSearch API path
registries.clawhub.skills_pathstring/api/v1/skillsSkills API path
registries.clawhub.download_pathstring/api/v1/downloadDownload API path
{
"tools": {
"skills": {
"registries": {
"clawhub": {
"enabled": true,
"base_url": "https://clawhub.ai"
}
}
}
}
}

Environment Variables

Override config options with environment variables using PICOCLAW_TOOLS_<SECTION>_<KEY>:

  • PICOCLAW_TOOLS_WEB_BRAVE_ENABLED=true
  • PICOCLAW_TOOLS_EXEC_ENABLE_DENY_PATTERNS=false
  • PICOCLAW_TOOLS_CRON_EXEC_TIMEOUT_MINUTES=10

Note: Array-type environment variables must be set via the config file.