Zero-setup HTTPS for local dev
Real URLs. Valid certs. No config.
npx jumpsh install
Installs the daemon as a system service. That's it — no DNS config, no cert generation, no sudo.
cd ~/projects/myapp
npx jumpsh add
Your project is now available at https://myapp.jump.sh
Coding agents need stable, predictable URLs to verify their work.
localhost:3000 doesn't cut it when you're running multiple projects,
worktrees, or parallel agent sessions.
jump.sh gives every project and branch a permanent URL that agents can screenshot, test, and verify — without port conflicts or manual setup.
If your project has a docker-compose.yml, jump.sh spins up containers
and proxies to them. Each project runs isolated with its own network.
For projects with package.json, jump.sh runs your dev command
(npm run dev, npm start, etc.) and proxies to the dev server port.
No more port conflicts. jump.sh allocates ports from a dedicated range (10000+) and tracks them in a local database. Each project gets a stable port across restarts.
Working on multiple branches? jump.sh auto-discovers .worktrees/ directories
and gives each branch its own URL:
https://myapp.jump.sh → main branch
https://myapp--feature-x.jump.sh → .worktrees/feature-x
Run jumpsh add on the main project once. Worktrees are picked up automatically
via periodic scanning — no need to register each branch.
When an agent works on a feature branch, it needs to test against that branch, not whatever's running on the main project URL. Worktree URLs let agents verify their changes in isolation without stepping on other work.
Supervisor agents can monitor multiple feature branches simultaneously, each at a predictable URL derived from the branch name.
jumpsh add [path] – Register a projectjumpsh ls – List registered projects and statusjumpsh start <name> – Start a projectjumpsh stop <name> – Stop a projectjumpsh logs <name> – Tail project logsjumpsh remove <name> – Unregister a projectjumpsh certs – Download/refresh TLS certsjumpsh install – Install daemon servicejumpsh install --uninstall – Remove daemon service
*.jump.sh resolves to 127.0.0.1 via public DNS — no local DNS setup needed.
The daemon runs on your machine, terminates TLS with a shared wildcard certificate,
and proxies requests to your dev servers based on subdomain.
Browser → https://myapp.jump.sh
→ DNS: 127.0.0.1
→ jumpsh daemon (TLS termination)
→ localhost:10042 (your dev server)