#agent not seeing skill
1 messages · Page 1 of 1 (latest)
First check: what does openclaw --version show?
For missing skills, the usual culprits are:
- Installed into the wrong workspace/agent. Run:
openclaw skills list --agent <your-agent-id> --verbose
openclaw skills check --agent <your-agent-id>
If you don’t know the agent id, try openclaw agents list first.
-
The agent has a skill allowlist. If
agents.defaults.skillsoragents.list[].skillsis set, only those skills are visible. A per-agentskillslist replaces defaults; it doesn’t merge. Addagentmailthere, or remove the allowlist if you want unrestricted skills. -
Existing sessions don’t always pick up newly installed skills. Start a new session/thread after installing.
openclaw skills install <slug>installs into the active workspace’sskills/, and OpenClaw sees that on the next session. -
The skill may be gated by missing env/binaries/config in its
SKILL.mdmetadata.openclaw skills check --agent <id>should call that out.
OpenClaw 2026.5.7
2026.5.7 should be fine for skills. Next thing I’d check is whether OpenClaw thinks agentmail is eligible for that specific agent:
openclaw skills info agentmail --agent <agent-id>
openclaw skills check --agent <agent-id>
openclaw skills list --agent <agent-id> --verbose
If agentmail is listed but not visible to the agent, start a fresh session/thread — skills are snapshotted when a session starts, so installing mid-session can look like “the agent can’t see it.”
If it’s not listed, it’s almost always one of:
- installed into a different workspace/agent (
openclaw skills install agentmail --agent <agent-id>fixes that) - blocked by
agents.defaults.skills/agents.list[].skillsallowlist - gated by missing env/config/binary declared in the skill metadata
Paste the output of openclaw skills check --agent <agent-id> if you want and I’ll help decode it. Docs: https://docs.openclaw.ai/tools/skills
If I run this is says it is there openclaw skills list --agent dba-scout
Good, that narrows it down: the skill is installed in the right agent workspace.
Now check whether it’s actually ready/visible, not just present:
openclaw skills check --agent dba-scout
openclaw skills info agentmail --agent dba-scout
Also: if the session already existed before you installed it, start a brand-new session/thread with dba-scout. Skills are snapshotted at session start, so an old session can keep acting like the skill doesn’t exist.
One more gotcha: if agentmail needs an API key/env var, list can still show it while check reports it gated/missing. If the output says missing env/config/binary, that’s the thing to fix.
it says
Skill "agentmail" not found. Run openclaw skills list to see available skills.
Ah — that means list is showing something, but its actual SKILL.md name / skillKey is not exactly agentmail.
skills info is exact-match and case-sensitive. Try this to see the real name OpenClaw has loaded:
openclaw skills list --agent dba-scout --json | jq -r '.skills[] | [.name, .skillKey, .source, .eligible] | @tsv'
Then run info with the exact .name or .skillKey from that output, e.g. if it says agent-mail or Agent Mail, use:
openclaw skills info 'EXACT_NAME_HERE' --agent dba-scout
If you paste the one line from that JSON output for the agentmail-looking skill, I can tell you the exact command/config entry to use.
-bash: jq: command not found
No worries — use Node instead (OpenClaw already needs Node):
openclaw skills list --agent dba-scout --json | node -e "let s='';process.stdin.on('data',d=>s+=d);process.stdin.on('end',()=>{for (const x of JSON.parse(s).skills) console.log([x.name,x.skillKey,x.source,x.eligible].join('\t'))})"
Or the simpler visual version:
openclaw skills list --agent dba-scout --verbose
Look for the exact name in the Skill column, then use that exact text with openclaw skills info 'name here' --agent dba-scout.
i get a list but agentmail is not in it
Got it — then agentmail is not visible to dba-scout at all. Earlier openclaw skills list --agent dba-scout probably showed a list of other skills.
Install it specifically for that agent:
openclaw skills install agentmail --agent dba-scout
openclaw skills list --agent dba-scout --verbose
Then start a new session/thread with dba-scout so it gets a fresh skills snapshot.
If install says it’s already installed, check where it landed:
find ~/.openclaw ~/.agents -path '*/SKILL.md' -maxdepth 6 2>/dev/null | grep -i agent
Most likely it was installed into the default/current workspace, not the dba-scout workspace. The --agent dba-scout install should put it in the right place.
The skill is now intalled and visible to the agent, if I prompt it to send an email though it initially says I don't have a direct email tool configured
That usually means the agent sees the skill instructions, but it does not have an actual email-sending tool exposed.
Skills don’t automatically create new core tools like email.send; they either:
- teach the agent to use existing tools, often
exec/CLI orbrowser, or - expose a slash command if the skill is written that way, or
- document an external API workflow that still needs env/config.
Check what agentmail is expecting:
openclaw skills info agentmail --agent dba-scout
Look for:
- required env/config/API key
allowed-toolsin the skill frontmatter- whether it expects
execor a specific command
- whether it defines
command-dispatch
If it expects exec, make sure dba-scout is allowed to use exec in tools.allow. If it expects an API key, add it under skills.entries.agentmail.env / apiKey, then start a new session.
Also try prompting explicitly once:
Use the agentmail skill to send an email to ...
If it still says “no direct email tool,” paste the openclaw skills info agentmail --agent dba-scout output — especially the Details / Requirements bits — and I’ll help map it to the missing config.
Is there something I can place in the agents files that will tell it to use this skill for sending emails
Yes — put a small routing rule in that agent’s workspace AGENTS.md. That’s the right place for “when the user asks X, prefer Y” behavior.
Example:
## Email
When the user asks to send, draft, check, or manage email, use the `agentmail` skill. Do not say there is no direct email tool until you have first checked the `agentmail` skill instructions and attempted the workflow it describes.
For outbound email: draft the message, show recipient/subject/body, and ask for confirmation before sending unless the user explicitly already approved sending.
If you’re not sure where dba-scout’s workspace is:
openclaw agents list --json
Then edit the AGENTS.md in that workspace, start a new session/thread, and test with something explicit like “Use the agentmail skill to draft an email…”.
One caveat: this only guides model behavior. If agentmail depends on exec, browser, or env vars/API keys, those still need to be allowed/configured separately.