docs(config): align .env.example with dual-env compose layout
Document CONTEXT_DB/SYSTEM_DB aliases, pi-agent secrets sync to configs/.env.dev, and compose vs host Go variable scope. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+39
-32
@@ -1,87 +1,94 @@
|
||||
# =============================================================================
|
||||
# 商务对接智能体系统 (Chat-Agent-System) - 开发环境配置文件模板 (.env.example)
|
||||
# 商务对接智能体系统 (Chat-Agent-System) - 环境配置模板 (.env.example)
|
||||
#
|
||||
# 使用说明:
|
||||
# 1. 复制为 .env 并填写密钥:cp .env.example .env && chmod 600 .env
|
||||
# 2. 本文件供 Go 后端 (bin/server)、launch.sh 默认 compose 变量替换使用
|
||||
# 3. 若通过 ./scripts/env-service.sh dev start 启容器,还需同步密钥到 configs/.env.dev
|
||||
# (见 configs/.env.dev.example 第 6 节)
|
||||
# =============================================================================
|
||||
|
||||
# --- 1. 运行环境与基础目录 ---
|
||||
ENV=dev
|
||||
COMPOSE_PROJECT_NAME=agent-dev
|
||||
DATA_DIR=./data/dev
|
||||
APP_PUBLISH_HOST=127.0.0.1
|
||||
HTTP_PORT=8080
|
||||
|
||||
# --- 2. 智能体后端调度配置 ---
|
||||
# --- 2. 智能体后端调度(Go 宿主进程 / 容器 app 服务)---
|
||||
# 可选值: pi-agent | cursor-cli | stub
|
||||
AGENT_BACKEND=pi-agent
|
||||
AGENT_TIMEOUT=30m
|
||||
MAX_CONCURRENT_AGENTS=8
|
||||
|
||||
# --- 3. Cursor CLI / SDK 后端配置 ---
|
||||
# Cursor API Key (格式通常为 crsr_...)
|
||||
# --- 3. Cursor CLI / SDK 后端 ---
|
||||
CURSOR_API_KEY=
|
||||
# 模型选择 (auto, claude-3-7-sonnet, gpt-4o 等)
|
||||
CURSOR_MODEL=auto
|
||||
# Cursor 可执行程序路径
|
||||
CURSOR_BIN=/usr/local/bin/cursor
|
||||
# Cursor Node 桥接脚本路径
|
||||
CURSOR_BRIDGE_BIN=tools/cursor-bridge/index.mjs
|
||||
CURSOR_RUNNER_PORT=18765
|
||||
|
||||
# --- 4. Pi-Agent 容器与模型参数配置 (MiniMax-M3) ---
|
||||
# 1) ENDPOINT URL (MiniMax API 地址)
|
||||
# --- 4. Pi-Agent 容器与 MiniMax 模型(pi-agent 容器 entrypoint 读取)---
|
||||
MINIMAX_ENDPOINT_URL=https://api.minimaxi.com/v1
|
||||
# 2) API TOKEN (用户自行设定,必填)
|
||||
MINIMAX_API_KEY=
|
||||
# 3) MODEL ID (模型名称)
|
||||
MINIMAX_MODEL_ID=MiniMax-M3
|
||||
# 4) API 协议类型 (openai-compatible 兼容协议)
|
||||
MINIMAX_API_TYPE=openai-compatible
|
||||
|
||||
# --- 5. 网络搜索工具配置 (Tavily Search API Key 池) ---
|
||||
# 支持单 Key 或多 Key 池 (逗号/分号/换行分隔,例如: tvly-xxx1,tvly-xxx2,tvly-xxx3)
|
||||
# 当遇到 429 配额耗尽或 401/403 异常时,容器内的 Tavily 工具会自动轮询切换下一个 Key
|
||||
# --- 5. Tavily 联网搜索(pi-agent 容器内工具;多 Key 逗号分隔)---
|
||||
TAVILY_API_KEYS=
|
||||
|
||||
# --- 6. Pi-Agent 容器服务端口与远程调用 (可选) ---
|
||||
# --- 6. Pi-Agent Runner 远程调用(Go 宿主连容器时使用)---
|
||||
PI_AGENT_RUNNER_PORT=18865
|
||||
# 若希望 Go 程序通过 HTTP 直连 pi-agent 容器,解除下方注释;若留空则走本机本地 pi CLI
|
||||
# 宿主 bin/server 直连本机 pi-agent 容器时启用;容器内 app 服务由 compose 注入 http://pi-agent:18865
|
||||
# PI_AGENT_RUNNER_URL=http://127.0.0.1:18865
|
||||
# Runner 服务间认证(生产必填;app 与 pi-agent 容器需相同值)
|
||||
# RUNNER_AUTH_TOKEN=change-me-in-production
|
||||
# Runner 服务间认证(main 必填;dev 可留空)
|
||||
# RUNNER_AUTH_TOKEN=
|
||||
|
||||
# --- 7. 本机 Pi CLI 本地回退配置 (当不使用容器时) ---
|
||||
# --- 7. 本机 Pi CLI 回退(不使用容器 runner 时)---
|
||||
PI_AGENT_BIN=/opt/homebrew/bin/pi
|
||||
PI_AGENT_BRIDGE_BIN=tools/pi-bridge/index.mjs
|
||||
PI_AGENT_PROVIDER=minimax
|
||||
PI_AGENT_MODEL=MiniMax-M3
|
||||
|
||||
# --- 8. 法规知识库配置 (复用已有 agent-regkb Docker 容器) ---
|
||||
# --- 8. 共享法规知识库(宿主 Go 进程:127.0.0.1:5432;容器 app:compose 注入 shuimu-kb-shared)---
|
||||
KB_DB_HOST=127.0.0.1
|
||||
KB_DB_PORT=55432
|
||||
KB_DB_PORT=5432
|
||||
KB_DB_USER=regkb
|
||||
KB_DB_PASSWORD=shared_kb_secret_pass
|
||||
KB_DB_NAME=regulations
|
||||
|
||||
# 向量检索 Embedding 配置 (复用原系统配置,用于合规检索条目召回)
|
||||
# --- 9. 向量 Embedding / Reranker(Go 宿主 KB 检索;容器 app 当前未透传,宿主模式必填)---
|
||||
EMBEDDING_ENDPOINT_URL=https://www.dmxapi.cn/v1/embeddings
|
||||
EMBEDDING_PROVIDER=openai_compatible
|
||||
EMBEDDING_MODEL=bge-m3
|
||||
EMBEDDING_API_KEY=
|
||||
|
||||
# 重排 Reranker 配置
|
||||
RERANKER_ENDPOINT_URL=https://www.dmxapi.cn/v1/rerank
|
||||
RERANKER_PROVIDER=openai_compatible
|
||||
RERANKER_MODEL=bge-reranker-v2-m3-free
|
||||
RERANKER_API_KEY=
|
||||
|
||||
# --- 9. 系统管理员与认证准入配置 ---
|
||||
# 超级管理员凭据 (系统启动时自动初始化为 role-admin)
|
||||
# --- 10. 专属业务/上下文库(Go 宿主:CONTEXT_DB_*;compose 同时认 SYSTEM_DB_* 别名)---
|
||||
CONTEXT_DB_HOST=127.0.0.1
|
||||
CONTEXT_DB_PORT=5433
|
||||
CONTEXT_DB_USER=app
|
||||
CONTEXT_DB_PASSWORD=dev_secret_db_pass
|
||||
CONTEXT_DB_NAME=agent_system_dev
|
||||
|
||||
# docker-compose.dev.yml 变量别名(与 CONTEXT_DB_* 保持一致)
|
||||
SYSTEM_DB_USER=app
|
||||
SYSTEM_DB_PASSWORD=dev_secret_db_pass
|
||||
SYSTEM_DB_NAME=agent_system_dev
|
||||
SYSTEM_DB_PUBLISH_PORT=5433
|
||||
|
||||
# --- 11. 系统管理员与认证准入 ---
|
||||
ADMIN_USERNAME=admin
|
||||
ADMIN_PASSWORD=admin-secret-password-123
|
||||
|
||||
# 全局准入策略 (是否开放自主注册与注册是否必须审批)
|
||||
AUTH_REGISTRATION_ENABLED=true
|
||||
AUTH_REQUIRE_APPROVAL=false
|
||||
|
||||
# CORS 允许来源(逗号分隔);main 环境必须显式配置,禁止 *
|
||||
# dev/test 未配置时使用 localhost 默认值
|
||||
# --- 12. 可选:CORS / 内存降级 ---
|
||||
# dev/test 未配置时 CORS 由代码填充 localhost 默认值
|
||||
# CORS_ALLOWED_ORIGINS=http://localhost:5173,http://127.0.0.1:8080
|
||||
|
||||
# 生产环境必须为 false;main 启动时若 true 将拒绝加载配置
|
||||
# 生产必须为 false;main 启动时若 true 将拒绝加载
|
||||
# ALLOW_IN_MEMORY=false
|
||||
|
||||
@@ -1,6 +1,11 @@
|
||||
# =============================================================================
|
||||
# 开发环境 (dev) 环境变量配置模板 (configs/.env.dev)
|
||||
# 作用域:dev 分支及 feature/* 子分支日常开发调试
|
||||
# 开发环境 Compose 专用配置模板 (configs/.env.dev)
|
||||
# 作用域:./scripts/env-service.sh dev * 与 docker compose --env-file configs/.env.dev
|
||||
#
|
||||
# 重要:本文件与根目录 .env 分工不同
|
||||
# - 根 .env → Go bin/server、launch.sh 默认 compose
|
||||
# - 本文件 → env-service.sh 启停 dev 容器组
|
||||
# 密钥(MINIMAX_API_KEY / TAVILY_API_KEYS 等)须与根 .env 保持一致,否则 pi-agent 容器无 Token!
|
||||
# =============================================================================
|
||||
|
||||
ENV=dev
|
||||
@@ -12,25 +17,33 @@ APP_PUBLISH_HOST=127.0.0.1
|
||||
ADMIN_TOKEN=dev-admin-token-change-me
|
||||
ALLOW_INSECURE_ADMIN=1
|
||||
|
||||
# 2. 对话数据与工作区隔离目录 (禁止跨环境共享)
|
||||
# 2. 对话数据与工作区(禁止跨环境共享)
|
||||
DATA_DIR=./data/dev
|
||||
AUX_FILE_DSN=file:/var/lib/feishu/outbox_dev.db?_journal_mode=WAL&_busy_timeout=5000
|
||||
|
||||
# 3. 开发环境专属数据库 (禁止与 test/main 共享)
|
||||
# 3. 开发环境专属数据库
|
||||
SYSTEM_DB_USER=app
|
||||
SYSTEM_DB_PASSWORD=dev_secret_db_pass
|
||||
SYSTEM_DB_NAME=agent_system_dev
|
||||
SYSTEM_DB_PUBLISH_PORT=5433
|
||||
|
||||
# 4. 共享知识库连接 (只读检索共享数据)
|
||||
# 4. 共享知识库(容器 app 经 shuimu-kb-shared 访问)
|
||||
KB_DB_USER=regkb
|
||||
KB_DB_PASSWORD=shared_kb_secret_pass
|
||||
KB_DB_NAME=regulations
|
||||
# 容器间网络域名 (shuimu-kb-shared) 或 宿主访问 127.0.0.1:5432
|
||||
KB_DB_HOST=shuimu-kb-shared
|
||||
KB_DB_PORT=5432
|
||||
|
||||
# 5. Cursor / LLM Agent Runner 服务
|
||||
# 5. Agent 后端与 Runner 端口
|
||||
CURSOR_RUNNER_PORT=18765
|
||||
AGENT_BACKEND=stub
|
||||
AGENT_TIMEOUT=30m
|
||||
PI_AGENT_RUNNER_PORT=18865
|
||||
AGENT_BACKEND=pi-agent
|
||||
AGENT_TIMEOUT=60m
|
||||
|
||||
# 6. Pi-Agent / MiniMax / Tavily(pi-agent 容器必填;从根 .env 复制)
|
||||
MINIMAX_ENDPOINT_URL=https://api.minimaxi.com/v1
|
||||
MINIMAX_API_KEY=
|
||||
MINIMAX_MODEL_ID=MiniMax-M3
|
||||
MINIMAX_API_TYPE=openai-compatible
|
||||
TAVILY_API_KEYS=
|
||||
# RUNNER_AUTH_TOKEN=
|
||||
|
||||
Reference in New Issue
Block a user