Releases: curiositech/port-daddy
Releases · curiositech/port-daddy
v3.3.0 — Tunnels + Context-Aware Salvage
What's New
Tunnel Integration
Expose local services to the internet via ngrok, cloudflared, or localtunnel.
pd tunnel start myapp:api --provider cloudflared
# https://random-words.trycloudflare.com
pd tunnel list
pd tunnel stop myapp:apiSDK:
const { url } = await pd.tunnelStart('myapp:api', 'cloudflared');
await pd.tunnelStop('myapp:api');Context-Aware Salvage UX
Agent identity enables smart resurrection queue filtering.
# Register with semantic identity
pd agent register --identity myapp:backend:main --purpose "Building auth"
# When agent dies, other agents in same project see notice
pd salvage --project myapp # Default: filter to your project
pd salvage --all # Opt-in to global queueAutomated Parity Enforcement
New features.manifest.json defines all 23 features with expected surfaces. The parity checker validates CLI, SDK, routes, completions, and docs are all in sync.
npx tsx scripts/check-parity.tsFull Changelog
See CHANGELOG.md
v1.2.0 - Security Hardening
What's New
Security Hardening
- Comprehensive input validation for all API endpoints
- Project names: alphanumeric, dash, underscore, dot only (max 255 chars)
- Port validation: range 1024-65535, reserved ports blocked
- PID header validation: range 1-99999
- Rate limiting keyed by project/PID (not IP)
- Prepared SQL statements throughout
- CORS restricted to localhost
- JSON payload size limits (1kb)
npm Package
- Cross-platform Node.js CLI tools
- Install globally:
npm install -g port-daddy - Commands:
get-port,release-port,list-ports,system-ports
Test Suite
- 61 tests total
- 40+ security-focused test cases
- Input validation, rate limiting, payload limits
Install
# npm (cross-platform)
npm install -g port-daddy
# Manual (macOS)
git clone https://github.com/erichowens/port-daddy.git ~/.port-daddy
cd ~/.port-daddy && npm install && npm run install-daemon