What problem does it solve? Local dev servers across multiple projects and Git worktrees collide on the same ports (five projects want 3000), causing EADDRINUSE errors, hard strictPort failures, or worse, silent fallback to a wrong port that breaks auth redirects. This Skill provides a registry of occupied ports with source locations and a deterministic, stateless formula for assigning collision-free ports. ## Core Features & Use Cases - Port Registry: Documents every occupied port in the repo and neighboring projects with file:line evidence, classified as hard-coupled (moving it breaks external config like auth allowlists or CSP) or freely movable skill defaults. - Deterministic Assignment Plan: Computes ports as 30000 + PROJECT_INDEX1000 + WORKTREE_SLOT10 + SERVICE_OFFSET, so the same worktree always gets the same port on any machine without bookkeeping. - Diagnostics: Provides PowerShell commands (Get-NetTCPConnection) to list listening ports and identify which process and worktree holds a given port, plus warnings about fail-open pitfalls like localized netstat output. - Use Case: A dev server fails with EADDRINUSE in a worktree. Use this Skill to find who holds the port, decide whether to stop it, and compute the correct deterministic port for your worktree instead of editing vite.config.ts. ## Quick Start Ask the assistant which port is free for a new dev server in the current worktree, or who is holding port 3000.