#openclaw configure add more skills. fails.
1 messages · Page 1 of 1 (latest)
hippycm, first thing: what does openclaw --version show?
I checked the current docs/source, and this bit is confusing: openclaw configure -> skills -> Configure skills now? is mainly for checking already-visible skills, installing missing dependencies for those skills, and setting required env/API keys. It is not the ClawHub skill picker/install flow. If there are no installable missing requirements to prompt for, it can write the config and drop you back at “What do you want to configure?”
For adding more skills, use the skills CLI instead:
openclaw skills search "calendar"
openclaw skills install <skill-slug>
openclaw skills list --eligible
openclaw skills check
Then start a new OpenClaw session so the new workspace skill snapshot is picked up.
https://docs.openclaw.ai/tools/skills
https://docs.openclaw.ai/tools/clawhub
If you expected openclaw configure itself to browse/install ClawHub skills, that may be a UX bug or missing path. Please include your openclaw --version, OS, and the exact skill you’re trying to add if you file it here: https://github.com/openclaw/openclaw/issues
OpenClaw 2026.5.12 (f066dd2)
Thanks. On 2026.5.12, what you’re seeing matches the current flow: openclaw configure -> skills only configures/checks local/bundled skills and their missing dependencies. It doesn’t open a ClawHub browser/list to add new skills.
Use this path instead:
openclaw skills search "<what you want>"
openclaw skills install <skill-slug>
openclaw skills list --eligible
openclaw skills check
Example:
openclaw skills search "calendar"
openclaw skills install calendar
After installing, start a new session so the skill snapshot reloads. If openclaw skills install ... fails, paste that exact output plus the skill slug and we can debug the actual install path.
I actually want to enable an openclaw bundled skill.
Got it. Bundled skills usually don’t need an “install” step: they’re loaded automatically unless they’re disabled, blocked by skills.allowBundled, or missing their declared requirements.
Can you run these and paste the relevant lines for the skill?
openclaw skills list --verbose
openclaw skills info <bundled-skill-name>
openclaw skills check
openclaw config get skills
Things to look for:
- If it says blocked by allowlist, add it to
skills.allowBundledor remove that allowlist. - If it says disabled, set
skills.entries.<skillName>.enabled: true. - If it shows missing bins/env/config, satisfy those requirements first.
- After changing config, start a new session so the skill snapshot reloads.
Config shape is roughly:
{
skills: {
allowBundled: ["skill-name"],
entries: {
"skill-name": { enabled: true }
}
}
}
Docs: https://docs.openclaw.ai/tools/skills-config
If you tell me the exact bundled skill name, I can give the precise config key/path for that one.
summarize
For the bundled summarize skill, the gate is simple: OpenClaw only loads it when the summarize CLI is on the Gateway host PATH.
Check it:
command -v summarize
openclaw skills info summarize
openclaw skills check
If command -v summarize is empty, install the CLI first. The bundled metadata advertises this installer:
brew install steipete/tap/summarize
Then make sure config isn’t blocking it:
openclaw config get skills.allowBundled
openclaw config get skills.entries.summarize
If skills.allowBundled exists, summarize must be included in that array. If skills.entries.summarize.enabled is false, flip it:
openclaw config set skills.entries.summarize.enabled true
Then start a new OpenClaw session so the skill snapshot reloads.
openclaw config set skills.entries.summarize.enabled true openclaw skills info summarize summarize â–ł Needs setup
Summarize or transcribe URLs, YouTube/videos, podcasts, articles, transcripts, PDFs, and local files.
Details:
Source: openclaw-bundled
Path: /opt/homebrew/lib/node_modules/openclaw/skills/summarize/SKILL.md
Homepage: https://summarize.sh
Visible to model: no
Available as command: no
Requirements:
Binaries: âś— summarize
Install options:
→ Install summarize (brew)
That output is the key bit:
Requirements:
Binaries: âś— summarize
So config is no longer the blocker. The bundled skill is enabled, but OpenClaw will keep it hidden until the summarize binary exists on the Gateway host PATH.
Run:
brew install steipete/tap/summarize
command -v summarize
openclaw skills info summarize
If command -v summarize works in your terminal but openclaw skills info summarize still says Binaries: âś— summarize, restart the gateway/app so the service picks up the updated PATH:
openclaw gateway restart
On macOS, service PATH can be the annoying part. If it still fails after restart, paste:
command -v summarize
openclaw status --all
openclaw skills info summarize
One more thing: once the skill loads, the summarize CLI itself still needs a provider key for the model it uses, commonly GEMINI_API_KEY for its default Gemini model, or another supported provider key.
How do I use the openclaw bundled summarize skill?
Once it shows as eligible, you use the bundled skill by asking OpenClaw normally, or by invoking the generic skill command.
Setup first:
brew install steipete/tap/summarize
command -v summarize
openclaw gateway restart
openclaw skills info summarize
You want openclaw skills info summarize to stop saying Needs setup, and Visible to model should become yes.
Then use it in chat like:
summarize this URL: https://example.com/article
what's this video about? https://youtu.be/...
transcribe this YouTube video: https://youtu.be/...
use summarize.sh on this PDF: /path/to/file.pdf
Or explicitly:
/skill summarize https://example.com/article
/skill summarize transcribe this YouTube video: https://youtu.be/...
The skill calls the external summarize CLI, so that CLI also needs a model provider key. Its default model is Gemini, so commonly:
export GEMINI_API_KEY=...
For a daemon/gateway service, make sure that key is available to the gateway process too, not just your current terminal.
Thanks for your help. summarize is now enabled. How about the openai-whisper bundled skill?
For the bundled openai-whisper skill, it’s the same pattern as summarize, but the required binary is whisper.
Local/offline-ish Whisper CLI skill:
brew install openai-whisper
command -v whisper
openclaw gateway restart
openclaw skills info openai-whisper
You want openclaw skills info openai-whisper to stop saying Needs setup, and Visible to model should become yes.
Then use it in chat:
transcribe this audio file with whisper: /path/to/audio.mp3
translate this audio to English with whisper: /path/to/audio.m4a
/skill openai-whisper transcribe /path/to/audio.mp3
A couple notes:
- First run downloads Whisper models into
~/.cache/whisper. - The skill metadata says
whisperis the required binary; in practice, audio decoding may also needffmpeg, so install that if Whisper errors on your file format:brew install ffmpeg. - This is different from
openai-whisper-api, which uses OpenAI’s hosted transcription API and requiresOPENAI_API_KEYinstead of the localwhisperbinary.
I actually meant openai-whispeer-api
Yep — that one is openai-whisper-api (one p in whisper). It uses OpenAI’s hosted audio transcription API, not the local Whisper CLI.
Requirements from the bundled skill:
Binaries: curl
Env: OPENAI_API_KEY
Check status:
command -v curl
openclaw skills info openai-whisper-api
Set the API key for the gateway. The cleanest config path is the skill entry API key:
openclaw config set skills.entries.openai-whisper-api.apiKey --ref-provider default --ref-source env --ref-id OPENAI_API_KEY
Then make sure OPENAI_API_KEY is available to the gateway process, restart, and re-check:
openclaw gateway restart
openclaw skills info openai-whisper-api
Once eligible, use it like:
/skill openai-whisper-api transcribe /path/to/audio.m4a
/skill openai-whisper-api transcribe /path/to/audio.m4a --language en
/skill openai-whisper-api transcribe /path/to/audio.m4a --prompt "Speaker names: Alice, Bob"
Or ask naturally: “transcribe this audio via OpenAI Whisper API: /path/to/audio.m4a”.
If you use an OpenAI-compatible proxy/local gateway, set OPENAI_BASE_URL for the gateway process too.
Back to the openai-whisper skill. openclaw skills info openai-whisper 🎤 openai-whisper ⏸ Disabled
Local speech-to-text with the Whisper CLI (no API key).
Details:
Source: openclaw-bundled
Path: /opt/homebrew/lib/node_modules/openclaw/skills/openai-whisper/SKILL.md
Homepage: https://openai.com/research/whisper
Visible to model: no
Available as command: no
Requirements:
Binaries: âś“ whisper
Install options:
→ Install OpenAI Whisper (brew)
That one is different now: the binary gate is satisfied.
Binaries: âś“ whisper
Status: Disabled
So enable the skill entry:
openclaw config set skills.entries.openai-whisper.enabled true
openclaw config get skills.entries.openai-whisper
openclaw gateway restart
openclaw skills info openai-whisper
After that, it should no longer show ⏸ Disabled, and Visible to model / Available as command should become available for new sessions.
If it still shows disabled after that, paste:
openclaw config get skills
openclaw skills info openai-whisper
The Install OpenAI Whisper (brew) line is just the available installer metadata; since Binaries: ✓ whisper, you don’t need to run the installer again.
How do I use the openclaw openai-whisper skill with my OpenClaw Discord bot?
With the Discord bot, use it on an uploaded audio attachment or Discord voice-message attachment, not a live voice channel.
Checklist first:
openclaw skills info openai-whisper
command -v whisper
command -v ffmpeg
You want the skill eligible/visible. If ffmpeg is missing, install it too:
brew install ffmpeg
openclaw gateway restart
Then in Discord, attach the audio file and send something like:
transcribe this attached audio with openai-whisper
or explicitly:
/skill openai-whisper transcribe the attached audio
For translation:
translate this attached audio to English with openai-whisper
OpenClaw should pass the attachment into the agent context as a local media path, and the skill tells the agent to run the local whisper CLI against that file. If it doesn’t pick it up, try a fresh Discord thread/session after enabling the skill, because skills are snapshotted per session.
Important distinction: this is for audio files/voice-message attachments. For Discord realtime voice channels, use OpenClaw’s Discord voice features instead; the openai-whisper skill is just local file transcription.
How do I use OpenClaw's Discord voice feature?
OpenClaw’s Discord voice feature is for realtime voice-channel conversations. It’s separate from audio attachments / the Whisper skill.
Minimum setup:
openclaw config set channels.discord.voice.enabled true
openclaw config set channels.discord.commands.native true
openclaw gateway restart
In Discord, make sure the bot has permissions in the target voice channel:
- View Channel
- Connect
- Speak
Then use the Discord native slash command:
/vc status
/vc join
/vc leave
Important: /vc is a Discord native command, not a normal text command, so it needs native command registration enabled and the gateway restarted after config changes.
Once joined, talk in the voice channel. OpenClaw should transcribe speaker turns, run them through the default Discord/account agent, and speak replies back using the configured voice TTS. Voice turns follow the same allowlist/group-policy rules as normal Discord commands, so non-owner speakers should not get owner-only tools.
Useful checks if it doesn’t join or can’t hear/speak:
openclaw channels status --probe
openclaw doctor
openclaw logs --follow
command -v ffmpeg
command -v ffprobe