Help us improve
Share bugs, ideas, or general feedback.
From build
Starts the dev server on [port] or auto-detected port, kills conflicting processes, runs prerequisite builds, polls for readiness, reports URL, and keeps running with 1m watchdog loop.
npx claudepluginhub motlin/claude-code-plugins --plugin buildHow this command is triggered — by the user, by Claude, or both
Slash command
/build:dev-server [port]The summary Claude sees in its command listing — used to decide when to auto-load this command
Start the dev server for the current project and keep it running. All commands run in the current working directory — never hardcode or `cd` to a specific project path. ## Arguments Port number: $ARGUMENTS If `$ARGUMENTS` is empty or not a number, determine the port by checking the project's config files (e.g., `vite.config.ts`, `app.config.ts`, `.env`, `package.json` scripts) for a configured dev server port. **Important:** Always use the determined port. If the port is occupied, kill the existing process — never switch to a different port. The user expects the server at a consistent ...
/runlocalRuns ./run_local_server.sh from the repository root to start the local backend and associated services. Passes arguments after `--` directly to the script.
/serviceAuto-detects project runtime (Node.js, Python, Go, Rust, Java, C#) and package manager to start, stop, restart, view logs, or list dev services. Supports --port and multi-service projects.
/port-monitorGuides VSCode Port Monitor setup for development servers (Vite:5173, Next.js:3000, Node.js). Creates .vscode/settings.json configs, templates for multiple servers, and troubleshooting for port conflicts.
/pm2Analyzes project to detect services (Vite, Next.js, Express, FastAPI/Flask, Go), generates PM2 ecosystem config, Python wrappers, and slash commands for start/stop/restart/monitor/logs.
/headlessGenerates .claude/scripts/headless.sh and .claude/skills/headless/SKILL.md tailored to the project for managing dev servers as supervised background processes in grove instances.
Share bugs, ideas, or general feedback.
Start the dev server for the current project and keep it running.
All commands run in the current working directory — never hardcode or cd to a specific project path.
Port number: $ARGUMENTS
If $ARGUMENTS is empty or not a number, determine the port by checking the project's config files (e.g., vite.config.ts, app.config.ts, .env, package.json scripts) for a configured dev server port.
Important: Always use the determined port. If the port is occupied, kill the existing process — never switch to a different port. The user expects the server at a consistent URL.
Look at the project's justfile, package.json scripts, Makefile, or similar to find the dev server command. Common patterns:
just devpnpm dev / npm run devmake devIf the project has dependencies that need building first (e.g., a monorepo shared package), identify and run those build steps before starting the server.
Check if the port is already in use. If so, kill the process occupying it:
lsof -ti :<port> | xargs kill -9 2>/dev/null || true
If the project requires building shared/dependency packages first, do so now.
Run the discovered dev command with PORT=<port> (if the project uses a PORT env var), using run_in_background.
Poll until the server responds:
for i in $(seq 1 30); do curl -sf http://localhost:<port>/ > /dev/null 2>&1 && echo "ready" && break; sleep 1; done
Tell the user the dev server is running at http://localhost:<port>/.
Use /loop 1m to run a recurring check every 1 minute. The check should:
curl -sf http://localhost:<port>/ > /dev/null 2>&1lsof -ti :<port> | xargs kill -9 2>/dev/null || true