Dev Serve

ReviewAudited by ClawScan on May 10, 2026.

Overview

The skill mostly matches its stated purpose, but it can expose dev servers broadly and edit shared Caddy/project configuration with limited safety checks.

Install only if you are comfortable with a helper that starts long-running dev servers, modifies your Caddyfile and project Vite config, and may expose raw dev ports unless your firewall blocks them. Review the script, back up your Caddyfile, use DNS-safe project names, and stop services with dev-serve down when finished.

Findings (6)

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

The dev server may be reachable directly on its raw port, bypassing Caddy/TLS/routing controls, depending on the machine's network and firewall.

Why it was flagged

The generated dev command for supported frameworks binds the dev server to all network interfaces, even though the stated architecture routes traffic through Caddy to localhost.

Skill content
echo "$pm run dev -- --host 0.0.0.0 --port $port"
Recommendation

Bind dev servers to 127.0.0.1 by default, require an explicit opt-in for 0.0.0.0, and advise users to firewall the 5200+ port range.

What this means

Unusual project names or domain values could corrupt the shared Caddyfile, delete unrelated lines, or break other routes when starting or stopping a dev server.

Why it was flagged

Repo-derived names and domains are inserted into Caddyfile edits and sed regexes without visible validation or escaping, and removal can delete any line containing the subdomain.

Skill content
name=$(basename "$repo_abs") ... sed -i "/# ${name} (dev-serve)/,/^}/d" "$CADDYFILE" ... sed -i "/${subdomain}/d" "$CADDYFILE"
Recommendation

Validate repo names as DNS-safe labels, escape values used in grep/sed, maintain a clearly bounded managed section, and create backups before modifying the Caddyfile.

What this means

Running this on an untrusted repository can execute arbitrary commands defined by that repository's dev script.

Why it was flagged

The script reads the selected repository's package.json dev script and executes it in a tmux session, which is expected for this tool but still runs project-provided code.

Skill content
dev_script=$(jq -r '.scripts.dev // empty' "$repo/package.json" 2>/dev/null) ... tmux send-keys -t "$session_name" "$dev_cmd" C-m
Recommendation

Use it only with trusted projects, review package.json scripts first, and consider sandboxing untrusted code.

What this means

If misdirected or pointed at a non-local admin endpoint, it could change proxy configuration or send the Caddyfile to an unintended Caddy admin API.

Why it was flagged

The helper uses the Caddy admin API to load the full Caddyfile. This is purpose-aligned, but it is privileged local service control.

Skill content
curl -sf -X POST "${CADDY_ADMIN}/load" ... --data-binary "@${CADDYFILE}"
Recommendation

Keep CADDY_ADMIN on localhost unless intentionally managing a trusted endpoint, and back up the Caddyfile before use.

What this means

The dev server, Caddy route, and local state can persist until explicitly stopped, consuming resources and keeping the service reachable.

Why it was flagged

The skill intentionally starts a detached tmux session so the dev server continues running after the command returns.

Skill content
tmux new-session -d -s "$session_name" -c "$repo_abs"
Recommendation

Use dev-serve ls/down to monitor and stop sessions, and verify stale routes are removed when work is finished.

What this means

Automated prerequisite checks may not catch missing tools or configuration, and users must rely on manually reviewing the helper before making it executable.

Why it was flagged

The skill is installed by manually copying an executable helper script; registry metadata shows no install spec and does not declare the tmux/jq/curl requirements described in SKILL.md.

Skill content
cp scripts/dev-serve.sh ~/.local/bin/dev-serve
chmod +x ~/.local/bin/dev-serve
Recommendation

Inspect the full script before copying it, install only from a trusted source, and ensure tmux, jq, curl, Caddy, and DEV_SERVE_DOMAIN are configured.