#What’s the difference between bash tools and the exec tool in clawd?
1 messages · Page 1 of 1 (latest)
429 {"type":"error","error":{"type":"rate_limit_error","message":"This request would exceed your account's rate limit. Please try again later."},"request_id":"req_011CX2pSALcDPai8etsXh9F7"}
@spring cargo can you try again? You were rate limited before
The exec tool is Clawdbot's bash/shell execution tool. It's the main interface for running commands on the host system with features like:
- Background execution - run commands async with
yieldMsorbackground: true - Process management - poll logs, write input, or kill via the
processtool - Elevated permissions -
elevated: truefor sudo operations - Environment control - pass custom env vars, set working directory
- Timeouts - prevent runaway processes
So when someone says "bash tools," they're referring to exec. There isn't a separate bash tool category — exec is it.
The docs at https://docs.clawd.bot/tools/exec cover all these capabilities. The tmux skill is just for interactive TTY sessions when you need real-time keystroke passthrough.
Then what is the point of defining explicitly commands in the config under tools.exec
Based on the docs, tools.exec in the config isn't for defining allowed commands — it's for configuring exec behavior:
{
agents: {
defaults: {
exec: {
backgroundMs: 10000, // auto-background after 10s
timeoutSec: 1800, // kill after 30 min
cleanupMs: 1800000, // keep finished sessions 30 min
applyPatch: {
enabled: true,
allowModels: ["gpt-5.2"] // only for apply_patch subtool
}
}
}
}
}
There's no command allowlist feature in Clawdbot. The exec tool runs whatever command you pass it — if you need to restrict commands, you'd do it via tool policy (tools.allow / tools.deny) to disable exec entirely, or via sandboxing.
Does that answer the question, or did you see a config option somewhere that suggested explicit command definitions?