Files
2026-08-21 16:00:13 +08:00

37 lines
1.2 KiB
Makefile

.PHONY: run-stdio run-sse run-dev build test clean lint
# 从项目根 .env 提取 API Key 并设为环境变量
#(@前缀隐藏配方回显,避免在终端暴露命令内容)
_ENV_KEYS = TAVILY_API_KEYS="$$(grep '^TAVILY_API_KEYS=' ../../.env | head -1 | cut -d= -f2-)" \
BRAVE_API_KEYS="$$(grep '^BRAVE_API_KEYS=' ../../.env | head -1 | cut -d= -f2-)"
# 本地 stdio 模式(用于 Claude Desktop / Cursor 等 MCP Client 子进程集成)
run-stdio:
@$(_ENV_KEYS) go run ./cmd/server --stdio --config ../../config/mcp/web-search.yaml
# 本地 SSE 模式(Streamable HTTP,灵台注册或远程 MCP Client 直连)
# 端口来自 config/mcp/web-search.yaml → server.port
# --port 未显式传时使用配置中的 port,传则覆盖
run-sse:
@$(_ENV_KEYS) go run ./cmd/server --config ../../config/mcp/web-search.yaml
# 本地开发:指定端口覆盖配置中的 port
run-dev:
@$(_ENV_KEYS) go run ./cmd/server --config ../../config/mcp/web-search.yaml --port $(PORT)
# 构建二进制
build:
go build -o bin/bowen-server ./cmd/server
# 测试
test:
go test ./... -v -count=1
# 清理
clean:
rm -rf bin/ tmp/
# Lint
lint:
golangci-lint run ./...