Repository navigation
Expand file tree
/
Copy pathMakefile
More file actions
51 lines (37 loc) · 1.37 KB
/
Copy pathMakefile
File metadata and controls
51 lines (37 loc) · 1.37 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
BIN := bin/scoutjobs
PKG := ./...
# local builds carry the git version with a -dev suffix: shown in the dashboard, never replaced by scoutjobs update
VERSION ?= $(shell git describe --tags --always --dirty 2>/dev/null | sed 's/^v//')-dev
LDFLAGS := -X github.com/zoolcoder/scoutjobs/internal/cli.Version=$(VERSION)
.PHONY: build run test test-unit lint fmt clean install dash docs docs-serve skills evals
build:
go build -ldflags "$(LDFLAGS)" -o $(BIN) ./cmd/scoutjobs
run: build
$(BIN) $(ARGS)
dash: build
$(BIN) serve
test:
go test $(PKG)
test-unit:
go test -short $(PKG)
lint:
go vet $(PKG)
@if command -v golangci-lint >/dev/null 2>&1; then golangci-lint run; else echo "golangci-lint not installed, go vet only"; fi
fmt:
gofmt -l -w cmd internal
install: build
mkdir -p $(HOME)/.local/bin
cp $(BIN) $(HOME)/.local/bin/scoutjobs.new
mv $(HOME)/.local/bin/scoutjobs.new $(HOME)/.local/bin/scoutjobs
@echo "installed $(VERSION) to ~/.local/bin/scoutjobs (add to PATH if needed); a running dashboard restarts on it"
skills: ## regenerate the agent mirror skills from agents/*.md
sh scripts/agents-to-skills.sh
evals: ## run the plugin eval suite (evals/), needs the claude CLI
claude plugin eval . --no-publish --threshold 0.8
docs:
[ -d node_modules ] || npm ci
npm run docs
docs-serve: docs
npx --yes http-server build/site -p 8080 -c-1
clean:
rm -rf bin dist build