Rank
70
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
Traction
No public download signal
Freshness
Updated 2d ago
Crawler Summary
Manage development environment containers (devboxes) with web-accessible VSCode, VNC, and app routing via Traefik or Cloudflare Tunnels. Use when the user asks to create, start, stop, list, or manage devboxes/dev environments, spin up a development container, set up a coding sandbox, or configure the devbox infrastructure for the first time (onboarding). --- name: devboxes description: Manage development environment containers (devboxes) with web-accessible VSCode, VNC, and app routing via Traefik or Cloudflare Tunnels. Use when the user asks to create, start, stop, list, or manage devboxes/dev environments, spin up a development container, set up a coding sandbox, or configure the devbox infrastructure for the first time (onboarding). --- Devbox Skill Devboxes are O Capability contract not published. No trust telemetry is available yet. Last updated 2/25/2026.
Freshness
Last checked 2/25/2026
Best For
devboxes is best for only, work, ask workflows where OpenClaw compatibility matters.
Not Ideal For
Contract metadata is missing or unavailable for deterministic execution.
Evidence Sources Checked
editorial-content, GITHUB OPENCLEW, runtime-metrics, public facts pack
Manage development environment containers (devboxes) with web-accessible VSCode, VNC, and app routing via Traefik or Cloudflare Tunnels. Use when the user asks to create, start, stop, list, or manage devboxes/dev environments, spin up a development container, set up a coding sandbox, or configure the devbox infrastructure for the first time (onboarding). --- name: devboxes description: Manage development environment containers (devboxes) with web-accessible VSCode, VNC, and app routing via Traefik or Cloudflare Tunnels. Use when the user asks to create, start, stop, list, or manage devboxes/dev environments, spin up a development container, set up a coding sandbox, or configure the devbox infrastructure for the first time (onboarding). --- Devbox Skill Devboxes are O
Public facts
4
Change events
1
Artifacts
0
Freshness
Feb 25, 2026
Capability contract not published. No trust telemetry is available yet. Last updated 2/25/2026.
Trust score
Unknown
Compatibility
OpenClaw
Freshness
Feb 25, 2026
Vendor
Adshrc
Artifacts
0
Benchmarks
0
Last release
Unpublished
Key links, install path, and a quick operational read before the deeper crawl record.
Summary
Capability contract not published. No trust telemetry is available yet. Last updated 2/25/2026.
Setup snapshot
git clone https://github.com/adshrc/openclaw-devboxes-skill.gitSetup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.
Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Everything public we have scraped or crawled about this agent, grouped by evidence type with provenance.
Vendor
Adshrc
Protocol compatibility
OpenClaw
Handshake status
UNKNOWN
Crawlable docs
6 indexed pages on the official domain
Merged public release, docs, artifact, benchmark, pricing, and trust refresh events.
Extracted files, examples, snippets, parameters, dependencies, permissions, and artifact metadata.
Extracted files
0
Examples
6
Snippets
0
Languages
typescript
Parameters
bash
which docker docker version
text
-v /usr/bin/docker:/usr/bin/docker:ro -v /var/run/docker.sock:/var/run/docker.sock
bash
# Returns the host path that is mapped to /home/node/.openclaw inside the container
docker inspect --format='{{range .Mounts}}{{if eq .Destination "/home/node/.openclaw"}}{{.Source}}{{end}}{{end}}' $(hostname)bash
ls /home/node/.openclaw/traefik
bash
curl -s -X GET "https://api.cloudflare.com/client/v4/zones?name=${ROOT_DOMAIN}" \
-H "Authorization: Bearer ${CF_API_TOKEN}" | jq .bash
# 1. Get zone ID for the domain (extract root domain from the provided domain)
curl -s -X GET "https://api.cloudflare.com/client/v4/zones?name=${ROOT_DOMAIN}" \
-H "Authorization: Bearer ${CF_API_TOKEN}" | jq .
# 2. Get account ID from the zone response
# account_id = .result[0].account.id
# zone_id = .result[0].idFull documentation captured from public sources, including the complete README when available.
Docs source
GITHUB OPENCLEW
Editorial quality
ready
Manage development environment containers (devboxes) with web-accessible VSCode, VNC, and app routing via Traefik or Cloudflare Tunnels. Use when the user asks to create, start, stop, list, or manage devboxes/dev environments, spin up a development container, set up a coding sandbox, or configure the devbox infrastructure for the first time (onboarding). --- name: devboxes description: Manage development environment containers (devboxes) with web-accessible VSCode, VNC, and app routing via Traefik or Cloudflare Tunnels. Use when the user asks to create, start, stop, list, or manage devboxes/dev environments, spin up a development container, set up a coding sandbox, or configure the devbox infrastructure for the first time (onboarding). --- Devbox Skill Devboxes are O
Devboxes are OpenClaw sandbox containers running a custom image with VSCode Web, noVNC, Chromium (CDP), and up to 5 app ports routed via Traefik or Cloudflare Tunnels.
OpenClaw manages the full container lifecycle. The main agent assigns each devbox a sequential ID by maintaining a local counter file, then passes DEVBOX_ID to the subagent task. The entrypoint uses this ID to write Traefik routes and build APP_URL_* env vars.
Resolve paths relative to this SKILL.md's parent directory.
Key files:
references/setup-script-guide.md — conventions for project setup scripts (.openclaw/setup.sh)devbox (configured in openclaw.json)all / scope: session — one container per sessionghcr.io/adshrc/openclaw-devbox:latest (pulled from GHCR)traefik (for Traefik routing) or default Docker network (for Cloudflare Tunnel routing)sandbox.browser.enabled: true, CDP on port 9222The main agent manages the devbox counter:
/home/node/.openclaw/.devbox-counter before spawningDEVBOX_ID to the devbox agent via the task descriptionexport DEVBOX_ID={id} as the very first actionThe container's entrypoint expects DEVBOX_ID to already be set as an environment variable and then:
APP_URL_1..5, VSCODE_URL, NOVNC_URL from tags + domain + ID/etc/devbox.env and /etc/profile.d/devbox.sh (available in all shells)ROUTING_MODE:
traefik (default): Writes Traefik config to /traefik/devbox-{id}.ymlcloudflared: Generates cloudflared ingress config, registers DNS CNAME records via CF API, starts cloudflared tunnel run| Agent path | Devbox container path | Purpose |
| ------------------------------ | --------------------- | --------------------------------------------- |
| /home/node/.openclaw/traefik | /traefik | Route configs (only if using Traefik routing) |
Important: Due to OpenClaw Security measures, all user capabilites are dropped by default. So even root (in the devbox) has no write access to bind mounts, and can only read from them. The only solution currently is chmod 777 on the host path that is mapped to /home/node/.openclaw/traefik.
These paths are always the same inside the OpenClaw container:
/home/node/.openclaw/home/node/.openclaw/traefik (must be mounted into the OpenClaw container; only if using Traefik routing)Important: After this skill is installed, the next step MUST be this onboarding flow. The user CANNOT use the devboxes skill until the onboarding flow is completed and the infrastructure is set up.
Important: This runs on the MAIN agent, NOT in a sandbox. The main agent has access to exec, gateway, and the file system.
When the user asks to set up the devbox skill, do the following:
Verify that you have access to the Docker socket and Docker binary:
which docker
docker version
If not, abort here and tell the user they need to run the OpenClaw container with:
-v /usr/bin/docker:/usr/bin/docker:ro
-v /var/run/docker.sock:/var/run/docker.sock
and that they need to set chmod 666 /var/run/docker.sock manually on the host, so that the OpenClaw container can work with it.
The OpenClaw container needs to be restarted then. After that, they can ask to set up the devbox skill again.
Ask the user for:
*.example.com)If Cloudflare Tunnel is chosen, also ask for:
Find out what the host path/mapping is for /home/node/.openclaw inside the container:
# Returns the host path that is mapped to /home/node/.openclaw inside the container
docker inspect --format='{{range .Mounts}}{{if eq .Destination "/home/node/.openclaw"}}{{.Source}}{{end}}{{end}}' $(hostname)
Store the value as HOST_OPENCLAW_PATH. If HOST_OPENCLAW_PATH is a "system directory", OpenClaw will not be able to spawn a devbox.
System directories are: /etc, /private/etc, /proc, /sys, /dev, /root, /boot, /run, /var/run, /private/var/run, /var/run/docker.sock, /private/var/run/docker.sock and /run/docker.sock.
If the HOST_OPENCLAW_PATH is such a "system directory", abort here and tell the user they need to change their OpenClaw container setup to use a host path for OpenClaw data that is not a system directory. For example, they can create a directory like /home/openclaw or /opt/openclaw on the host.
Check that /home/node/.openclaw/traefik is mounted:
ls /home/node/.openclaw/traefik
If /home/node/.openclaw/traefik doesn't exist, abort here and tell the user they need to add e.g. -v path_to_traefik:/home/node/.openclaw/traefik to their OpenClaw container and restart it. Remind the user that they cannot use system directories for the host path (OpenClaw Sandboxes restriction). After that, a container restart is needed, and then they can ask to set up the devbox skill again.
Validate the CF API token and domain:
# 1. Get zone ID for the domain (extract root domain from the provided domain)
curl -s -X GET "https://api.cloudflare.com/client/v4/zones?name=${ROOT_DOMAIN}" \
-H "Authorization: Bearer ${CF_API_TOKEN}" | jq .
# 2. Get account ID from the zone response
# account_id = .result[0].account.id
# zone_id = .result[0].id
Then create the tunnel:
# 4. Create a named tunnel
curl -s -X POST "https://api.cloudflare.com/client/v4/accounts/${CF_ACCOUNT_ID}/cfd_tunnel" \
-H "Authorization: Bearer ${CF_API_TOKEN}" \
-H "Content-Type: application/json" \
-d '{"name": "devboxes@'"$(hostname)"'", "config_src": "local", "tunnel_secret": "'$(openssl rand -base64 32)'"}' | jq .
# Extract tunnel_id and tunnel_token from the response
# tunnel_id = .result.id
# tunnel_token = .result.token
Store the values: CF_API_TOKEN, CF_ZONE_ID, CF_ACCOUNT_ID, CF_TUNNEL_ID, CF_TUNNEL_TOKEN.
echo "0" > /home/node/.openclaw/.devbox-counter
Important: The counter file is managed by the main agent only. The counter CANNOT be reset, or decremented, only increment is allowed!
First, check the current agents config:
node /app/openclaw.mjs config get agents
Then, decide what needs to be adjusted based on the existing config:
If there is an agent with default: true, note its index and add subagents.allowAgents to it:
node /app/openclaw.mjs config set agents.list[{index}].subagents.allowAgents '["devbox"]' --json
then (if needed), set sandbox mode to off (since the main agent doesn't need a sandbox):
node /app/openclaw.mjs config set agents.list[{index}].sandbox.mode "off"
else, if there's no agent with default: true, create one at the next index with the necessary structure:
node /app/openclaw.mjs config set agents.list[{index}] '{
"id": "main",
"default": true,
"subagents": {
"allowAgents": [
"devbox"
]
},
"sandbox": {
"mode": "off"
}
}' --json
docker pull ghcr.io/adshrc/openclaw-devbox:latest
node /app/openclaw.mjs config set agents.list[{index}] '{
"id": "devbox",
"name": "Devbox Agent",
"sandbox": {
"mode": "all",
"workspaceAccess": "none",
"scope": "session",
"docker": {
"image": "ghcr.io/adshrc/openclaw-devbox:latest",
"readOnlyRoot": false,
"network": "traefik", # Only needed for Traefik routing mode, exclude otherwise
"env": {
"ENABLE_VNC": "true",
"ENABLE_VSCODE": "true",
"DEVBOX_DOMAIN": "{domain}",
"APP_TAG_1": "app1",
"APP_TAG_2": "app2",
"APP_TAG_3": "app3",
"APP_TAG_4": "app4",
"APP_TAG_5": "app5",
"GITHUB_TOKEN": "{github_token}",
"ROUTING_MODE": "{traefik|cloudflared}",
# Cloudflare Tunnel variables (only needed if using cloudflared routing, exclude otherwise)
"CF_TUNNEL_TOKEN": "{cf_tunnel_token}",
"CF_API_TOKEN": "{cf_api_token}",
"CF_ZONE_ID": "{cf_zone_id}",
"CF_TUNNEL_ID": "{cf_tunnel_id}",
},
"binds": [
"{host_openclaw_path}/traefik:/traefik:rw" # Only needed for Traefik routing mode, exclude otherwise
]
},
"browser": {
"enabled": true,
"cdpPort": 9222
},
"prune": {
"idleHours": 0,
"maxAgeDays": 0
}
}
}
]' --json
node /app/openclaw.mjs config set tools.agentToAgent.enabled true
node /app/openclaw.mjs config set tools.sessions.visibility "all"
After this is done, restart the gateway to apply the changes. If this is not working (e.g. command is disabled), ask the user to restart the OpenClaw container manually.
Read and increment the counter file:
DEVBOX_ID=$(( $(cat /home/node/.openclaw/.devbox-counter) + 1 ))
echo "$DEVBOX_ID" > /home/node/.openclaw/.devbox-counter
Use devbox-<id> as the label and include the DEVBOX_ID in the task:
sessions_spawn(
agentId="devbox",
label=f"devbox-{DEVBOX_ID}",
task=f"Your task description. Your DEVBOX_ID is {DEVBOX_ID} — run `export DEVBOX_ID={DEVBOX_ID}` as your very first action before doing anything else. GitHub token is in $GITHUB_TOKEN. After exporting DEVBOX_ID, env vars (APP_URL_*, etc.) are in your shell via `source /etc/profile.d/devbox.sh`. ALWAYS use /workspace as the working directory! When cloning, the structure must be /workspace/<repo>."
)
The main agent already knows the assigned ID from Step 1. Report:
https://vscode-{DEVBOX_ID}.{domain}https://novnc-{DEVBOX_ID}.{domain}/vnc.htmlhttps://{tag}-{DEVBOX_ID}.{domain}OpenClaw manages container lifecycle — containers are removed when sessions end. Traefik route configs left behind are harmless.
| Variable | Example | Description |
| ----------------- | -------------------------- | ---------------------------------------------------- |
| ROUTING_MODE | traefik or cloudflared | Routing backend (default: traefik) |
| GITHUB_TOKEN | ghp_... | GitHub PAT for cloning |
| DEVBOX_DOMAIN | example.com | Base domain |
| APP_TAG_1..5 | app1, app2, ... | Route tags |
| ENABLE_VNC | true | Enable noVNC |
| ENABLE_VSCODE | true | Enable VSCode Web |
| CF_TUNNEL_TOKEN | eyJ... | Cloudflare tunnel run token (cloudflared only) |
| CF_API_TOKEN | abc123 | CF API token for DNS registration (cloudflared only) |
| CF_ZONE_ID | xyz789 | CF zone ID for the domain (cloudflared only) |
| CF_TUNNEL_ID | uuid | CF tunnel ID for CNAME targets (cloudflared only) |
| Variable | Example | Description |
| --------------- | -------------------------------------- | --------------------------- |
| DEVBOX_ID | 1 | Auto-assigned sequential ID |
| APP_URL_1..5 | https://app1-1.example.com | Full URLs per app slot |
| APP_PORT_1..5 | 8003..8007 | Internal ports |
| VSCODE_URL | https://vscode-1.example.com | VSCode Web URL |
| NOVNC_URL | https://novnc-1.example.com/vnc.html | noVNC URL |
| Port | Service | | --------- | ------------------------------ | | 8000 | VSCode Web | | 8002 | noVNC | | 9222 | Chrome DevTools Protocol (CDP) | | 8003-8007 | App slots 1-5 |
The devbox agent has browser access via Chromium CDP (port 9222). The subagent can use the browser tool to navigate, screenshot, and interact with apps running inside the container (use http://localhost:{port}).
Projects can include .openclaw/setup.sh that runs inside the devbox. It has access to all env vars (APP_URL_*, APP_PORT_*, DEVBOX_ID, etc.) via /etc/profile.d/devbox.sh.
See references/setup-script-guide.md for conventions.
Machine endpoints, protocol fit, contract coverage, invocation examples, and guardrails for agent-to-agent use.
Contract coverage
Status
missing
Auth
None
Streaming
No
Data region
Unspecified
Protocol support
Requires: none
Forbidden: none
Guardrails
Operational confidence: low
curl -s "https://xpersona.co/api/v1/agents/adshrc-openclaw-devboxes-skill/snapshot"
curl -s "https://xpersona.co/api/v1/agents/adshrc-openclaw-devboxes-skill/contract"
curl -s "https://xpersona.co/api/v1/agents/adshrc-openclaw-devboxes-skill/trust"
Trust and runtime signals, benchmark suites, failure patterns, and practical risk constraints.
Trust signals
Handshake
UNKNOWN
Confidence
unknown
Attempts 30d
unknown
Fallback rate
unknown
Runtime metrics
Observed P50
unknown
Observed P95
unknown
Rate limit
unknown
Estimated cost
unknown
Do not use if
Every public screenshot, visual asset, demo link, and owner-provided destination tied to this agent.
Neighboring agents from the same protocol and source ecosystem for comparison and shortlist building.
Rank
70
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
Traction
No public download signal
Freshness
Updated 2d ago
Rank
70
AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs
Traction
No public download signal
Freshness
Updated 5d ago
Rank
70
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
Traction
No public download signal
Freshness
Updated 6d ago
Rank
70
The Frontend for Agents & Generative UI. React + Angular
Traction
No public download signal
Freshness
Updated 23d ago
Contract JSON
{
"contractStatus": "missing",
"authModes": [],
"requires": [],
"forbidden": [],
"supportsMcp": false,
"supportsA2a": false,
"supportsStreaming": false,
"inputSchemaRef": null,
"outputSchemaRef": null,
"dataRegion": null,
"contractUpdatedAt": null,
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Invocation Guide
{
"preferredApi": {
"snapshotUrl": "https://xpersona.co/api/v1/agents/adshrc-openclaw-devboxes-skill/snapshot",
"contractUrl": "https://xpersona.co/api/v1/agents/adshrc-openclaw-devboxes-skill/contract",
"trustUrl": "https://xpersona.co/api/v1/agents/adshrc-openclaw-devboxes-skill/trust"
},
"curlExamples": [
"curl -s \"https://xpersona.co/api/v1/agents/adshrc-openclaw-devboxes-skill/snapshot\"",
"curl -s \"https://xpersona.co/api/v1/agents/adshrc-openclaw-devboxes-skill/contract\"",
"curl -s \"https://xpersona.co/api/v1/agents/adshrc-openclaw-devboxes-skill/trust\""
],
"jsonRequestTemplate": {
"query": "summarize this repo",
"constraints": {
"maxLatencyMs": 2000,
"protocolPreference": [
"OPENCLEW"
]
}
},
"jsonResponseTemplate": {
"ok": true,
"result": {
"summary": "...",
"confidence": 0.9
},
"meta": {
"source": "GITHUB_OPENCLEW",
"generatedAt": "2026-04-16T23:27:52.004Z"
}
},
"retryPolicy": {
"maxAttempts": 3,
"backoffMs": [
500,
1500,
3500
],
"retryableConditions": [
"HTTP_429",
"HTTP_503",
"NETWORK_TIMEOUT"
]
}
}Trust JSON
{
"status": "unavailable",
"handshakeStatus": "UNKNOWN",
"verificationFreshnessHours": null,
"reputationScore": null,
"p95LatencyMs": null,
"successRate30d": null,
"fallbackRate": null,
"attempts30d": null,
"trustUpdatedAt": null,
"trustConfidence": "unknown",
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Capability Matrix
{
"rows": [
{
"key": "OPENCLEW",
"type": "protocol",
"support": "unknown",
"confidenceSource": "profile",
"notes": "Listed on profile"
},
{
"key": "only",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "work",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "ask",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "create",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "be",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "use",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "include",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
}
],
"flattenedTokens": "protocol:OPENCLEW|unknown|profile capability:only|supported|profile capability:work|supported|profile capability:ask|supported|profile capability:create|supported|profile capability:be|supported|profile capability:use|supported|profile capability:include|supported|profile"
}Facts JSON
[
{
"factKey": "docs_crawl",
"category": "integration",
"label": "Crawlable docs",
"value": "6 indexed pages on the official domain",
"href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceType": "search_document",
"confidence": "medium",
"observedAt": "2026-04-15T05:03:46.393Z",
"isPublic": true
},
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Adshrc",
"href": "https://github.com/adshrc/openclaw-devboxes-skill",
"sourceUrl": "https://github.com/adshrc/openclaw-devboxes-skill",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-02-25T01:47:13.172Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://xpersona.co/api/v1/agents/adshrc-openclaw-devboxes-skill/contract",
"sourceUrl": "https://xpersona.co/api/v1/agents/adshrc-openclaw-devboxes-skill/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-02-25T01:47:13.172Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://xpersona.co/api/v1/agents/adshrc-openclaw-devboxes-skill/trust",
"sourceUrl": "https://xpersona.co/api/v1/agents/adshrc-openclaw-devboxes-skill/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
]Change Events JSON
[
{
"eventType": "docs_update",
"title": "Docs refreshed: Sign in to GitHub · GitHub",
"description": "Fresh crawlable documentation was indexed for the official domain.",
"href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceType": "search_document",
"confidence": "medium",
"observedAt": "2026-04-15T05:03:46.393Z",
"isPublic": true
}
]Sponsored
Ads related to devboxes and adjacent AI workflows.