-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
195 lines (168 loc) · 9.99 KB
/
Copy path.env.example
File metadata and controls
195 lines (168 loc) · 9.99 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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
# Wraith CLI 配置示例
# 用法:
# 1. 复制本文件为 .env
# 2. 按需填写下面的配置项
# 3. 未填写的项会回退到代码默认值
# ========== GLM 配置 ==========
# API Key(必填其一:GLM_API_KEY、DEEPSEEK_API_KEY、STEP_API_KEY、KIMI_API_KEY 或 FREELLMAPI_API_KEY)
GLM_API_KEY=your_api_key_here
# 模型名称(可选,默认 glm-5.1)
# 可选值:glm-5.1, glm-5v-turbo, glm-5.0, glm-4-flash 等
# glm-5v-turbo 支持图片输入,可配合 Ctrl+V / @image: 使用
# GLM_MODEL=glm-5.1
# ========== DeepSeek 配置 ==========
# API Key(/model deepseek 切换后使用)
# DEEPSEEK_API_KEY=your_deepseek_api_key_here
# 模型名称(可选,默认 deepseek-v4-flash)
# 可选值:deepseek-v4-flash, deepseek-v4-pro
# DEEPSEEK_MODEL=deepseek-v4-flash
# ========== 阶跃星辰 StepFun 配置 ==========
# API Key(/model step 切换后使用)
# STEP_API_KEY=your_step_api_key_here
# 模型名称(可选,默认 step-3.5-flash)
# 可选值:step-3.5-flash, step-3.5-flash-2603, step-router-v1, step-1-256k 等
# STEP_MODEL=step-3.5-flash
# Base URL(可选,默认 https://api.stepfun.com/v1)
# 如果使用 Step Plan 专用通道,可设置为 https://api.stepfun.com/step_plan/v1
# STEP_BASE_URL=https://api.stepfun.com/v1
# ========== Kimi / Moonshot 配置 ==========
# API Key(/model kimi 切换后使用;兼容官方 MOONSHOT_API_KEY)
# KIMI_API_KEY=your_kimi_api_key_here
# MOONSHOT_API_KEY=your_moonshot_api_key_here
# 模型名称(可选,默认 kimi-k2.6;兼容 MOONSHOT_MODEL)
# KIMI_MODEL=kimi-k2.6
# Base URL(可选,默认 https://api.moonshot.ai/v1;兼容 MOONSHOT_BASE_URL)
# KIMI_BASE_URL=https://api.moonshot.ai/v1
# ========== FreeLLMAPI 本地网关配置 ==========
# API Key(/model freellmapi 切换后使用;可从 FreeLLMAPI /keys 顶部 unified API key 复制)
# FREELLMAPI_API_KEY=your_freellmapi_unified_key_here
# 模型名称(可选,默认 auto;也可填 /v1/models 返回的具体 model id)
# FREELLMAPI_MODEL=auto
# Base URL(可选,默认 http://localhost:5173/v1)
# FREELLMAPI_BASE_URL=http://localhost:5173/v1
#
# freellmapi 同时是「通用 OpenAI 兼容」入口:把 BASE_URL 指向任意 OpenAI 兼容端点即可接入自定义模型,
# 无需改代码。客户端会自动在 BASE_URL 后追加 /chat/completions,鉴权用 Authorization: Bearer <key>。
# 示例:接入 SophNet 托管的 DeepSeek-V4-Flash(注意 base 必须带 /v1)
# FREELLMAPI_BASE_URL=https://www.sophnet.com/api/open-apis/v1
# FREELLMAPI_MODEL=DeepSeek-V4-Flash
# FREELLMAPI_API_KEY=your_sophnet_api_key_here
# 切换:启动后 /model freellmapi,或 /config provider freellmapi --base-url <url> --api-key <key> --model <id> --default
# Embedding 配置(用于 /index、/search、Agent 的代码检索)
# 支持 provider:ollama / openai / zhipu / glm
# 不配置时默认使用 ollama + nomic-embed-text:latest + http://localhost:11434
EMBEDDING_PROVIDER=ollama
EMBEDDING_MODEL=nomic-embed-text:latest
EMBEDDING_BASE_URL=http://localhost:11434
# 如果使用需要鉴权的远程 Embedding 服务,再打开这一项
# EMBEDDING_API_KEY=your_api_key_here
# ========== Web 搜索配置 ==========
# 选择搜索 provider(zhipu | serpapi | searxng),不配置时按 Key/URL 自动判断:
# 1. 有 GLM_API_KEY → zhipu(默认推荐:与 GLM 推理共用 Key,零额外配置,国内首选)
# 2. 有 SERPAPI_KEY → serpapi(国际通用,付费即开即用)
# 3. 有 SEARXNG_URL → searxng(开源自托管,免费,需本地跑 docker 实例)
# SEARCH_PROVIDER=zhipu
# 智谱 Web Search 引擎(SEARCH_PROVIDER=zhipu 时启用)
# 可选:search_std(0.01 元/次,默认)、search_pro(0.03 元/次)、
# search_pro_sogou(0.05 元/次,搜狗)、search_pro_quark(0.05 元/次,夸克)
# 中文搜索建议用 search_pro 或搜狗 / 夸克版本,效果优于通用 std
# ZHIPU_SEARCH_ENGINE=search_std
# SerpAPI Key(SEARCH_PROVIDER=serpapi 时启用)
# 免费 100 次/月:https://serpapi.com/manage-api-key
# SERPAPI_KEY=your_serpapi_key_here
# SearXNG 实例地址(SEARCH_PROVIDER=searxng 时启用)
# 本地 docker:docker run --rm -p 8888:8888 searxng/searxng
# 公共实例(不稳定,仅试玩):见 https://searx.space
# SEARXNG_URL=http://localhost:8888
# ========== Web 抓取配置 ==========
# web_fetch 工具:抓取 URL 并提取正文 Markdown
# 当前实现走「直接 HTTP + Jsoup + 简易 readability」,对静态/SSR 页面有效
# 对 SPA / 防爬墙站点会返回空正文(已知边界),Agent 会 fallback 到 Chrome DevTools MCP
# 默认安全策略:屏蔽 file:// / 内网 / loopback;30 秒超时;5MB 响应上限;每分钟 30 次限流
# ========== MCP 配置 ==========
# MCP server 配置文件位置:
# 1. 用户级 ~/.wraith/mcp.json
# 2. 项目级 .wraith/mcp.json(按 server 名覆盖用户级)
# 支持 ${PROJECT_DIR}、${HOME} 和环境变量 ${VAR} 展开。
# 远程 Streamable HTTP server 常用 token 示例:
# REMOTE_TOKEN=your_remote_mcp_token_here
# ========== 渲染器形态(v16.1+)==========
# 默认 inline 流式 TUI(Claude Code 风格:底部状态栏 + 行内可折叠工具块 + 行内 diff)
# WRAITH_RENDERER=inline # 默认值,显式声明
# WRAITH_RENDERER=lanterna # 切换到 Lanterna 三栏全屏 TUI(v16 形态,可选保留)
# WRAITH_RENDERER=plain # 纯 println 兜底,无折叠/状态栏
# WRAITH_NO_STATUSBAR=true # inline 模式下禁用底部状态栏(终端不支持 DECSTBM 时使用)
# 兼容旧设置:WRAITH_TUI=true 自动映射为 WRAITH_RENDERER=lanterna(已 deprecated)
# WRAITH_TUI=true
# ========== LSP 诊断注入(第 17 期)==========
# write_file 成功后触发 post-edit 诊断;当前 MVP 对 Java 文件使用 JavaParser 语法诊断,
# 不依赖本机安装 JDT LS。后续接真实 LSP server 时复用同一注入链路。
# WRAITH_LSP_ENABLED=true
# WRAITH_LSP_MAX_DIAGNOSTICS=20
# ========== Side-Git 快照与回滚(第 18 期)==========
# 每个用户 turn 开始前创建 pre-turn 快照,结束后异步创建 post-turn 快照。
# 快照仓库位于 ~/.wraith/snapshots/<project_hash>/<worktree_hash>/.git,不写用户项目 .git。
# WRAITH_SNAPSHOT_ENABLED=true
# WRAITH_SNAPSHOT_MAX=50
# WRAITH_SNAPSHOT_EXCLUDES=.git,.wraith/snapshots,target,node_modules,dist,.idea,*.class,*.jar
# WRAITH_SNAPSHOT_DIR=/Users/yourname/.wraith/snapshots
# ========== 后台任务 + Runtime API(第 20 期)==========
# 后台任务 SQLite 队列默认位于 ~/.wraith/tasks/tasks.db
# WRAITH_TASK_DIR=/Users/yourname/.wraith/tasks
# 后台任务 worker 数,默认 2
# WRAITH_TASK_WORKERS=2
# Runtime API 仅监听 127.0.0.1,并强制要求 API Key。
# 启动示例:
# WRAITH_RUNTIME_API_KEY=your_local_api_key java -jar target/wraith-1.0-SNAPSHOT.jar serve --http --port 8080
# 请求头:
# Authorization: Bearer your_local_api_key
# 或:
# X-Wraith CLI-API-Key: your_local_api_key
# WRAITH_RUNTIME_API_KEY=your_local_api_key
# WRAITH_RUNTIME_DIR=/Users/yourname/.wraith/runtime
# ========== Chrome DevTools MCP ==========
# ~/.wraith/mcp.json 不存在时,Wraith CLI 会自动创建默认 chrome-devtools 配置:
# npx -y chrome-devtools-mcp@latest --isolated=true
# isolated 模式使用临时 user-data-dir;复用登录态时,Chrome 144+ 推荐在
# chrome://inspect/#remote-debugging 勾选 Allow remote debugging for this browser instance,
# 然后让 Agent 自动调用 browser_connect,或手动执行 /browser connect。
# 如果希望默认连接调试 Chrome,可手动把 ~/.wraith/mcp.json args 改成:
# ["-y", "chrome-devtools-mcp@latest", "--autoConnect"]
# 旧式 CDP HTTP JSON 端口可改成:
# ["-y", "chrome-devtools-mcp@latest", "--browser-url=http://127.0.0.1:9222"]
# 如果首次启动 npx 拉包或 Chrome 冷启较慢,可调长 MCP initialize 超时:
# WRAITH_MCP_INITIALIZE_TIMEOUT_SECONDS=60
# ========== LLM HTTP 超时(可选)==========
# SSE 流式接口下,readTimeout 是"两次 read 之间最大间隔"。
# GLM-5.1 在生成大段 reasoning_content 时服务端可能长时间静默,超时容易触发。
# 仅当遇到频繁 "调用 LLM 失败: timeout" 时再调大;通过 -D 系统属性传入:
# java -Dwraith.llm.read.timeout.seconds=600 -jar target/wraith-1.0-SNAPSHOT.jar
# 默认值:connect=60s / read=300s / write=60s / call=600s
# 日志配置(支持自动滚动、压缩和清理)
# 默认日志目录:~/.wraith/logs
# 默认日志文件:~/.wraith/logs/wraith.log
# 日志级别可选:ERROR / WARN / INFO / DEBUG
WRAITH_LOG_LEVEL=INFO
# 日志目录。建议填绝对路径
WRAITH_LOG_DIR=/Users/yourname/.wraith/logs
# 最多保留多少天的历史日志
WRAITH_LOG_MAX_HISTORY=7
# 单个日志文件滚动前的最大体积
WRAITH_LOG_MAX_FILE_SIZE=10MB
# 所有归档日志允许占用的总容量,超出后会自动清理更老的日志
WRAITH_LOG_TOTAL_SIZE_CAP=100MB
# ========== 操作审计配置 ==========
# 危险工具(write_file / execute_command / create_project / revert_turn)调用会按天写一行 JSONL 审计
# 默认目录:~/.wraith/audit/audit-YYYY-MM-DD.jsonl
# 也可通过 -Dwraith.audit.dir=/path/to/dir 系统属性覆盖
# WRAITH_AUDIT_DIR=/Users/yourname/.wraith/audit
# ========== 第 15 期:Skill 系统 ==========
# Skill 加载位置(按优先级,后者覆盖前者):
# 1. jar 内置 (resources/skills/) — Wraith CLI 自带 web-access
# 2. 用户级 ~/.wraith/skills/<name>/SKILL.md
# 3. 项目级 <project>/.wraith/skills/<name>/SKILL.md
# 启动期 jar 内置 skill 自动解压到 ~/.wraith/skills-cache/<name>/,避免每次启动 IO
# 启用状态持久化:~/.wraith/skills.json (格式 {"disabled": ["name1", ...]},默认全启用)
# 内置 web-access 含决策手册 + 6 个 site-patterns(mp.weixin / zhihu / x.com / xiaohongshu / github / juejin)
# CLI: /skill list | /skill show <name> | /skill on/off <name> | /skill reload
# LLM 自决加载:当 system prompt 里某个 skill 的 description 匹配任务时,LLM 调 load_skill(name) 加载完整指引