Documentation Index
Fetch the complete documentation index at: https://docs.claw-link.dev/llms.txt
Use this file to discover all available pages before exploring further.

Blunt version: if you are on WSL1, treat that as the prime suspect early. Exec-heavy flows are much happier on WSL2 or a normal Linux host.
- the current environment does not support the required runtime capability
- the host/platform combination is limited
- the session started before tools were refreshed
- the setup is running on a path where shell/PTY support is unavailable or intentionally disabled
At a glance
- Confirm whether you are on Windows, WSL1, or WSL2 before debugging anything else.
- If this is WSL1, treat that as a serious compatibility warning sign.
- For exec-heavy workflows, WSL2 or Linux is the sane path.
Short version
When people say “exec tools don’t appear,” they usually mean they expected shell-style execution or related runtime capabilities but the current OpenClaw environment is not exposing them. On Windows and especially WSL1, that can happen because capability support is not the same as on a normal Linux host.Why this happens more on Windows and WSL1
OpenClaw features that depend on shell execution, PTY behavior, host process control, or certain runtime assumptions are naturally happiest on a normal supported Unix-like environment. Windows can be more finicky. WSL2 is usually closer to a real Linux environment. WSL1 is where things get especially awkward, because it is not the same thing as a full modern Linux runtime path. That gap can surface as missing exec capabilities, degraded shell behavior, or tools simply not being exposed.Common causes
1) The platform/runtime does not expose exec capability there
Some OpenClaw capabilities depend on the host/runtime combination actually supporting them. If the current environment cannot expose shell execution safely or correctly, the tools may be absent rather than half-broken.2) You are on WSL1, not WSL2
This matters more than people want it to. If you are using WSL1, expect more compatibility weirdness. A lot of modern tooling assumes a more complete Linux environment than WSL1 provides.3) The session started before capabilities changed
If you installed, enabled, or changed something and kept testing in the same old chat/session, the tool catalog may not reflect reality yet. Fresh sessions matter.4) The tool is blocked by policy/config, not platform alone
Sometimes the platform gets blamed when the real issue is:- config restrictions
- plugin/tool allowlists
- disabled runtime features
- gateway not reloaded after config changes
5) You are expecting PTY-required behavior in an environment that cannot provide it
Some agent/tool flows need proper PTY or terminal-like behavior. If the environment cannot provide that cleanly, capability exposure may be limited.What to check first
1) Confirm the actual environment
Check whether you are on:- native Linux
- Windows
- WSL1
- WSL2
2) Check OpenClaw status
Run:3) Start a fresh chat/session
If something was recently enabled, installed, or reconfigured, stop testing in the stale session forever. Start a fresh one.4) Check whether the issue is environment-wide or just one flow
Ask:- are all exec/shell tools missing?
- or only one specific workflow?
- did this happen after a config change?
- does the same setup work on Linux or another host?
Best practical fix if you are on WSL1
Blunt answer: move to WSL2 or a proper Linux host if you want fewer weird capability issues. You can spend time trying to out-negotiate WSL1, but that is usually a bad trade. If exec-heavy workflows matter to you, use the environment that actually wants to support them.If you are on Windows
Windows can work, but if you are hitting repeated shell/runtime capability problems, check whether:- a Linux host would be more reliable for that workflow
- WSL2 is available and better suited
- the missing tools are actually gated by config/policy rather than OS limits
If this started after changing config
Use the boring checklist:- restart the gateway if config changed
- check status
- start a fresh session
- retest
Common mistakes
Assuming Windows, WSL1, and Linux are interchangeable
They are not.Forgetting whether you are on WSL1 or WSL2
This matters a lot here.Testing forever in the same stale chat
Still broken? Yes, because the session is old.Blaming the OS when the real issue is config/policy
Also common.When this page is probably the right match
This article is a good fit if:- exec/shell tools are absent
- you are using Windows or WSL1
- the environment feels capability-limited compared with Linux
- support threads keep hinting that host/runtime matters
When it might be a different issue
It might instead be:- plugin/runtime configuration problem
- ACP/ACPX setup confusion
- gateway reload issue
- session staleness
- policy restrictions in the current deployment
Final thought
If exec tools are missing on Windows or WSL1, the real answer is often not “you forgot one secret setting.” It is:this environment may not support the workflow the way you hoped.Which is annoying, but at least honest. And if the choice is between debugging WSL1 for two more hours or moving to a better-supported environment, I know which one I’d pick.
Related pages to link later
How to reduce token usage in OpenClawACP vs normal OpenClaw agents: what’s the difference?How to enable the ACPX plugin in OpenClawOpenClaw not responding after an update? Start here
