This commit is contained in:
王性驊 2026-04-01 13:57:03 +00:00
parent 0844302460
commit ebc1249e09
1 changed files with 12 additions and 4 deletions

View File

@ -110,10 +110,10 @@ opencode: build
printf '{\n "model": "$(OPENCODE_MODEL)",\n "small_model": "$(OPENCODE_SMALL_MODEL)",\n "provider": {\n "cursor": {\n "npm": "@ai-sdk/openai-compatible",\n "name": "Cursor Agent",\n "options": {\n "baseURL": "http://$(HOST):$(PORT)/v1",\n "apiKey": "unused"\n },\n "models": { "auto": { "name": "Cursor Auto" } }\n }\n }\n}\n' > "$(OPENCODE_CONFIG)"; \ printf '{\n "model": "$(OPENCODE_MODEL)",\n "small_model": "$(OPENCODE_SMALL_MODEL)",\n "provider": {\n "cursor": {\n "npm": "@ai-sdk/openai-compatible",\n "name": "Cursor Agent",\n "options": {\n "baseURL": "http://$(HOST):$(PORT)/v1",\n "apiKey": "unused"\n },\n "models": { "auto": { "name": "Cursor Auto" } }\n }\n }\n}\n' > "$(OPENCODE_CONFIG)"; \
echo "已建立 $(OPENCODE_CONFIG)"; \ echo "已建立 $(OPENCODE_CONFIG)"; \
elif [ -n "$(API_KEY)" ]; then \ elif [ -n "$(API_KEY)" ]; then \
jq '.model = "$(OPENCODE_MODEL)" | .small_model = "$(OPENCODE_SMALL_MODEL)" | .provider.cursor.options.baseURL = "http://$(HOST):$(PORT)/v1" | .provider.cursor.options.apiKey = "$(API_KEY)"' "$(OPENCODE_CONFIG)" > "$(OPENCODE_CONFIG).tmp" && mv "$(OPENCODE_CONFIG).tmp" "$(OPENCODE_CONFIG)"; \ jq --arg model "$(OPENCODE_MODEL)" --arg small "$(OPENCODE_SMALL_MODEL)" --arg base "http://$(HOST):$(PORT)/v1" --arg key "$(API_KEY)" '.model = $$model | .small_model = $$small | .provider.cursor.options.baseURL = $$base | .provider.cursor.options.apiKey = $$key' "$(OPENCODE_CONFIG)" > "$(OPENCODE_CONFIG).tmp" && mv "$(OPENCODE_CONFIG).tmp" "$(OPENCODE_CONFIG)"; \
echo "已更新 $(OPENCODE_CONFIG)model=$(OPENCODE_MODEL), small_model=$(OPENCODE_SMALL_MODEL), baseURL → http://$(HOST):$(PORT)/v1apiKey 已設定)"; \ echo "已更新 $(OPENCODE_CONFIG)model=$(OPENCODE_MODEL), small_model=$(OPENCODE_SMALL_MODEL), baseURL → http://$(HOST):$(PORT)/v1apiKey 已設定)"; \
else \ else \
jq '.model = "$(OPENCODE_MODEL)" | .small_model = "$(OPENCODE_SMALL_MODEL)" | .provider.cursor.options.baseURL = "http://$(HOST):$(PORT)/v1"' "$(OPENCODE_CONFIG)" > "$(OPENCODE_CONFIG).tmp" && mv "$(OPENCODE_CONFIG).tmp" "$(OPENCODE_CONFIG)"; \ jq --arg model "$(OPENCODE_MODEL)" --arg small "$(OPENCODE_SMALL_MODEL)" --arg base "http://$(HOST):$(PORT)/v1" '.model = $$model | .small_model = $$small | .provider.cursor.options.baseURL = $$base' "$(OPENCODE_CONFIG)" > "$(OPENCODE_CONFIG).tmp" && mv "$(OPENCODE_CONFIG).tmp" "$(OPENCODE_CONFIG)"; \
echo "已更新 $(OPENCODE_CONFIG)model=$(OPENCODE_MODEL), small_model=$(OPENCODE_SMALL_MODEL), baseURL → http://$(HOST):$(PORT)/v1"; \ echo "已更新 $(OPENCODE_CONFIG)model=$(OPENCODE_MODEL), small_model=$(OPENCODE_SMALL_MODEL), baseURL → http://$(HOST):$(PORT)/v1"; \
fi fi
@ -199,13 +199,21 @@ pm2-logs:
## Docker Compose 指令 ## Docker Compose 指令
## ────────────────────────────────────────────────── ## ──────────────────────────────────────────────────
## 複製 .env.example 為 .env(首次設定) ## 複製 .env.example 為 .env 並自動偵測本機 agent 路徑(首次設定)
docker-env: docker-env:
@if [ -f .env ]; then \ @if [ -f .env ]; then \
echo ".env 已存在,若要重置請手動刪除後再執行"; \ echo ".env 已存在,若要重置請手動刪除後再執行"; \
else \ else \
cp .env.example .env; \ cp .env.example .env; \
echo "已建立 .env請編輯填入設定後執行 make docker-up"; \ DETECTED_AGENT=$$(which agent 2>/dev/null || echo ""); \
if [ -n "$$DETECTED_AGENT" ]; then \
REAL_AGENT=$$(readlink -f "$$DETECTED_AGENT"); \
sed -i "s|^CURSOR_AGENT_HOST_BIN=.*|CURSOR_AGENT_HOST_BIN=$$REAL_AGENT|" .env; \
echo " 已偵測 agent: $$REAL_AGENT"; \
else \
echo " 警告:找不到 agent請手動設定 CURSOR_AGENT_HOST_BIN"; \
fi; \
echo "已建立 .env請確認設定後執行 make docker-up"; \
fi fi
## 建置 Docker 映像檔 ## 建置 Docker 映像檔