Repository navigation
v0.1.0 — Initial Release
daemon v0.1.0
Cross-platform daemon lifecycle library for Go. Pure Go, zero CGO, zero dependencies (stdlib only).
Features
- Client mode — Start/Stop/Restart/Status to manage background daemon processes
- Server mode —
Serve()with automatic port selection, PID file, signal handling, health endpoint - Proxy mode —
Proxy()bridges stdin/stdout to daemon HTTP for MCP/JSON-RPC protocols - EnsureRunning — start-if-needed with race-safe PID locking
- run.Group — actor concurrency pattern (oklog/run reimplemented, zero deps)
- Connection tracking — atomic connect/disconnect counting with idle auto-shutdown
- Rich Model —
Daemonstruct + interfaces (PIDStore,ProcessManager,HealthChecker) - Cross-platform — Windows (
CREATE_NEW_PROCESS_GROUP) + Linux/macOS (setsid)
Install
go get github.com/grpmsoft/daemonQuality
- 106 tests, 83%/87% coverage
- Zero lint warnings (golangci-lint v2)
- CI: build + test + lint on 3 OS (Ubuntu, macOS, Windows)
- Go 1.27+, stdlib only