mirror of
https://github.com/browseros-ai/BrowserOS.git
synced 2026-05-20 20:39:10 +00:00
Add anonymous command-level analytics to browseros-cli using the PostHog Go SDK. Tracks which commands are executed, their success/failure status, and duration — no PII or person profiles. - New analytics package with Init/Track/Close singleton - Distinct ID resolves from server's browseros_id (server.json), falls back to CLI-generated UUID (~/.config/browseros-cli/install_id) - API key injected at build time via ldflags (dev builds = silent no-op) - Server now writes browseros_id into server.json for cross-surface identity correlation
29 lines
537 B
Makefile
29 lines
537 B
Makefile
BINARY := browseros-cli
|
|
SOURCES := $(shell find . -name '*.go')
|
|
VERSION ?= dev
|
|
POSTHOG_API_KEY ?=
|
|
LDFLAGS := -X main.version=$(VERSION) -X browseros-cli/analytics.posthogAPIKey=$(POSTHOG_API_KEY)
|
|
|
|
$(BINARY): $(SOURCES)
|
|
go build -ldflags "$(LDFLAGS)" -o $(BINARY) .
|
|
|
|
.PHONY: install clean vet test
|
|
|
|
install:
|
|
go install -ldflags "$(LDFLAGS)" .
|
|
|
|
clean:
|
|
rm -f $(BINARY)
|
|
|
|
vet:
|
|
go vet ./...
|
|
|
|
test:
|
|
go test -tags integration -v -timeout 120s ./...
|
|
|
|
release-dry:
|
|
goreleaser release --snapshot --clean
|
|
|
|
release:
|
|
goreleaser release --clean
|