Development
Local development setup for the yeet repo.
This page is for local dev on the yeet repo.
If you already have Go in your PATH, you can skip mise and use the Go commands
below. Otherwise:
curl https://mise.run | sh
echo 'eval "$(mise activate zsh)"' >> ~/.zshrc
Swap zsh for your shell (bash/fish/etc.) if needed.
From the repo root, install tools (Go 1.25.5):
mise install
mise run install-githooks
The hook install uses pre-commit and sets up both the pre-commit and
prepare-commit-msg hook types. It also clears any existing core.hooksPath so
pre-commit can manage the hooks.
go build ./cmd/yeet
go build ./cmd/catch
go test ./...
Run catch in the foreground with a local data dir:
go run ./cmd/catch --data-dir ./data
Run yeet against a target host:
CATCH_HOST=<host> go run ./cmd/yeet status
- Most CLI behavior is in
cmd/yeetandpkg/cli. - RPC handling lives in
pkg/catchandpkg/catchrpc.