Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Build from source

Requirements: Go 1.26 or newer. No C toolchain is needed for memors-mcp. The optional macOS menu-bar app (MemoRS Tray) lives in its own module under tray/ and needs the Xcode command-line tools: make tray, make tray-app.

git clone https://github.com/kKEo/memors
cd memors
make build            # CGO_ENABLED=0, stripped, version from `git describe`
./memors-mcp version

make build runs:

CGO_ENABLED=0 go build -ldflags "-s -w -X main.version=$(VERSION)" -o memors-mcp ./cmd/memors-mcp/

Cross-compiling is plain Go, for example GOOS=linux GOARCH=arm64 CGO_ENABLED=0 go build ./cmd/memors-mcp.

Reproducing a release

make snapshot runs the same GoReleaser configuration as the release workflow without publishing. It writes the five archives and checksums.txt under dist/. Release builds use -trimpath and the commit timestamp, so rebuilding a tag gives the same binaries.

Development targets

TargetWhat it does
make checkgofmt, vet, golangci-lint, then all tests under the race detector
make testAll tests, no race detector
make evalThe retrieval benchmark against the recorded baseline
make golden-updateRe-record the tools/list golden after a deliberate tool-surface change
make baseline-updateRe-record the eval baseline after a deliberate retrieval change
make docsBuild these guides with mdBook into site/
make tray-testVet and test the MemoRS Tray module (macOS)
make tray-appBuild tray/dist/MemoRS Tray.app and its release zip (macOS)

Tests use a deterministic hash embedder and need no network or model download.