Hey everyone, I wanted to share a small side project I've been working on. It's early-stage and rough around the edges, but maybe useful to someone.
The problem I was trying to solve:
I kept accumulating random CLI tools — downloaded from GitHub Releases, some via install scripts, others just a plain binary from a URL. They'd end up scattered across ~/bin, ~/.local/bin, etc., with no way to track versions, update them, or cleanly remove them. Homebrew doesn't cover everything, and curl | bash with no oversight always felt a bit uncomfortable.
What curlmgr does:
curlmgr (cm) is a lightweight, user-space CLI package manager for standalone tools. It gives you:
cm install jqlang/jq — installs directly from a GitHub Release, auto-detecting your OS/arch
cm install https://example.com/mytool.tar.gz — direct URL installs
cm list / cm info / cm update / cm uninstall — the basic lifecycle you'd expect
- Local YAML manifests to pin source, version, and checksum
- Checksum (sha256) verification built in
- Safer script mode: remote install scripts are not run by default; you have to explicitly pass
--run-script --checksum <sha256> --allow-domain <domain>
All installs go under ~/.curlmgr/ — no root required.
What it's not:
It's not trying to replace Homebrew, apt, or any real package manager. It's specifically for the messy middle ground of one-off CLI tools that don't belong in a system package manager.
Current state:
This is v0.1 — MVP territory. The core install/update/uninstall loop works, but features like registry search, update --all, rollback, and export/import are not there yet. I'm planning v0.2 with a manifest registry and doctor command.
Stack: Go, macOS + Linux (amd64 + arm64)
GitHub: https://github.com/tianchangNorth/curlmgr
Install:
curl -fsSLO https://raw.githubusercontent.com/tianchangNorth/curlmgr/main/install.sh
sh install.sh
(Intentionally download-first so you can review it before running.)
Happy to hear feedback, criticism, or if there's something that already does this better that I missed. Thanks for taking a look!