Something went wrong. Try again.
Gardenable group chats in the Atmosphere.
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869#!/usr/bin/env bash## wt-run — Spin up a dev server for a worktree.## Usage: wt-run --port <port>## Run this from inside the worktree directory.#set -euo pipefailWORKTREE_PATH="$(pwd)"if [[ $# -lt 1 ]]; then echo "Usage: $0 --port <port>" exit 1fiPORT=""while [[ $# -gt 0 ]]; do case "$1" in --port) PORT="$2"; shift 2 ;; *) echo "Unknown option: $1"; exit 1 ;; esacdoneif [[ -z "$PORT" ]]; then echo "✗ --port is required" exit 1fiSAFE_NAME="$(basename "$WORKTREE_PATH")"DEV_NAME="dev-${SAFE_NAME//\//-}"# --- Clean up any previous container ---docker rm -f "$DEV_NAME" 2>/dev/null || true# --- Ensure the roomy-dev network exists (so agents can reach this by name) ---docker network inspect roomy-dev >/dev/null 2>&1 || docker network create roomy-dev >/dev/nullecho "Starting dev server: $DEV_NAME on port $PORT (roomy-dev)"docker run -d \ --name "$DEV_NAME" \ -v "$WORKTREE_PATH:/app" \ -p "$PORT:$PORT" \ -e "CI=true" \ -e "VITE_PORT=$PORT" \ --network roomy-dev \ node:22 \ bash -c " set -euo pipefail cd /app npm i -g pnpm # Install deps if missing (fresh worktree) if [ ! -d node_modules ]; then echo 'Installing dependencies …' pnpm install --frozen-lockfile fi # Build SDK if not already built (app-lite depends on it) if [ ! -d packages/sdk/dist ]; then echo 'Building @roomy-space/sdk …' pnpm --filter @roomy-space/sdk build fi cd packages/app-lite pnpm run dev --host 0.0.0.0 --port $PORT "echo "✔ Dev server started (http://localhost:$PORT)"echo " Agent (roomy-dev) → http://$DEV_NAME:$PORT"echo "To stop: docker rm -f $DEV_NAME"