Lab · Intermediate · 75 min
Map a Claude Plugin Into an OpenClaw Bundle
Take a Claude Code plugin with skills, a command, and an MCP server, install it into OpenClaw as a bundle, and trigger it from a chat channel.
OpenClaw · Claude Code
Show all 4 stepsHide list
Step 1 of 4
Lab brief
Goal
The same plugin working in Claude Code and in OpenClaw from Telegram or Slack, with gating so it only loads where its dependencies exist.
Failure mode
Rewriting the plugin from scratch for OpenClaw, or installing it with exec access exposed to a public channel.
Staff move
Reuse portable formats, verify what the bundle mapping supports, and scope the agent's channels and tools before exposing it.
Step 2 of 4
1. Prepare the plugin
- Start from a plugin with .claude-plugin/plugin.json, skills/triage/SKILL.md, commands/standup.md, and .mcp.json
- Add metadata.openclaw.requires to the skill (for example required env vars) so it gates cleanly
Step 3 of 4
2. Install and inspect
- Install the plugin directory into OpenClaw and confirm it is detected as a Claude bundle
- Check which parts mapped: skills and commands as skills, MCP servers, compatible hooks
- Note anything unsupported (runtime code does not execute as a native OpenClaw plugin)
- Optional: run openclaw migrate claude --dry-run to see how your personal Claude setup would import
Step 4 of 4
3. Trigger from chat
- Route a private Telegram or Slack DM to the agent that has the bundle
- Ask for today's standup summary and confirm the skill and MCP tool are used
- Confirm a public channel routed to a different agent cannot see the bundle