civitai

dev-server

@civitai/dev-server
civitai
6,988
712 forks
Updated 1/18/2026
View on GitHub

Manage Next.js dev servers across worktrees. Start, stop, and read logs from dev servers. Agents can access logs from any running session, regardless of who started it.

Installation

$skills install @civitai/dev-server
Claude Code
Cursor
Copilot
Codex
Antigravity

Details

Repositorycivitai/civitai
Path.claude/skills/dev-server/SKILL.md
Branchmain
Scoped Name@civitai/dev-server

Usage

After installing, this skill will be available to your AI coding assistant.

Verify installation:

skills list

Skill Instructions


name: dev-server description: Manage Next.js dev servers across worktrees. Start, stop, and read logs from dev servers. Agents can access logs from any running session, regardless of who started it.

Dev Server Skill

Centralized management of Next.js dev servers across multiple git worktrees. The daemon handles port allocation, environment variable injection, and log aggregation so that any agent can access dev server logs regardless of who started the server.

Quick Start

# Check what's running
node .claude/skills/dev-server/cli.mjs status

# Start a dev server for current worktree
node .claude/skills/dev-server/cli.mjs start

# Start for a specific worktree
node .claude/skills/dev-server/cli.mjs start /path/to/worktree

# View logs
node .claude/skills/dev-server/cli.mjs logs <session-id>

# Stop a session
node .claude/skills/dev-server/cli.mjs stop <session-id>

Checking if server is ready: After starting, poll the session status to check ready: true. The daemon marks sessions ready either via configured health check endpoint or by detecting "Ready" patterns in logs.

CLI Commands

CommandDescription
statusCheck daemon status and list all sessions
listList all dev sessions
start [worktree]Start dev server (default: current directory)
logs [session-id]Get logs for a session
tail [session-id]Tail logs continuously
stop <session-id>Stop a session
restart <session-id>Restart a session
shutdownShutdown the daemon

Session Object

Each session includes:

{
  "id": "a1b2c3d4",
  "worktree": "/path/to/worktree",
  "branch": "feature/my-feature",
  "port": 3000,
  "status": "running",
  "ready": true,
  "readyAt": "2024-01-15T10:30:02.000Z",
  "startedAt": "2024-01-15T10:30:00.000Z",
  "url": "http://localhost:3000"
}

Status values: starting, running, stopped, crashed, error

Log Entries

{
  "index": 42,
  "timestamp": "2024-01-15T10:30:05.123Z",
  "level": "stdout",
  "message": "Ready on http://localhost:3000"
}

Log levels: stdout, stderr, error, warn, info

Notes

  • The daemon starts automatically when you run CLI commands
  • Sessions persist until explicitly stopped or the daemon shuts down
  • Logs are kept in memory (up to 2000 lines per session)