2259580adf3c82771f8db2670faa0670a0423a43
model, tunnel, wg, authtoken, netguard, docker and dotenv, split out of the original single repository so Hammerhead, Blacktip and Bamboo can live in their own repos and import them. README extended; LICENSE unchanged. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Reef
A shared library for Hammerhead, Blacktip, and Bamboo
Shared types and building blocks for the sharks stack: Hammerhead (control plane), Blacktip (edge) and Bamboo (site agent).
Reef holds the code all three programs agree on, so each can be built and released from its own repository.
| Package | What it is |
|---|---|
model |
The data types passed between the programs: edges, sites, ports, mail egress, DKIM keys, alert-relevant status and reports |
tunnel |
The wire format used inside the WireGuard tunnel, and the helper that pipes two connections together |
wg |
wireguard-go with a userspace network stack: no root, no kernel interface, works on Windows, macOS and Linux |
authtoken |
Signed, expiring login tokens with a revocation epoch |
netguard |
Refuses internal addresses for anything that connects out on a user's behalf (webhooks, mail delivery), and dials the address it checked |
docker |
Lists running containers through the Docker Engine API, with no SDK |
dotenv |
Loads a .env file into the environment without overriding real variables |
Using it
go env -w GOPRIVATE=git.veillax.com # once, so Go fetches straight from this server
go get git.veillax.com/Veillax/reef@latest
Tests
go test ./...
License
AGPL-3.0. See LICENSE.
Description
A shared library for Hammerhead, Blacktip, Bamboo, and Sandbar
180 KiB
0 Stars
1 Watchers
0 Forks
Languages
Go
100%