@researai/deepscientist 1.5.15 → 1.5.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +336 -98
- package/bin/ds.js +691 -91
- package/docs/en/00_QUICK_START.md +36 -15
- package/docs/en/01_SETTINGS_REFERENCE.md +33 -0
- package/docs/en/02_START_RESEARCH_GUIDE.md +7 -0
- package/docs/en/05_TUI_GUIDE.md +6 -0
- package/docs/en/06_RUNTIME_AND_CANVAS.md +4 -3
- package/docs/en/09_DOCTOR.md +11 -5
- package/docs/en/14_PROMPT_SKILLS_AND_MCP_GUIDE.md +63 -13
- package/docs/en/15_CODEX_PROVIDER_SETUP.md +25 -8
- package/docs/en/19_EXTERNAL_CONTROLLER_GUIDE.md +226 -0
- package/docs/en/19_LOCAL_BROWSER_AUTH.md +70 -0
- package/docs/en/20_WORKSPACE_MODES_GUIDE.md +250 -0
- package/docs/en/README.md +18 -0
- package/docs/zh/00_QUICK_START.md +36 -15
- package/docs/zh/01_SETTINGS_REFERENCE.md +33 -0
- package/docs/zh/02_START_RESEARCH_GUIDE.md +7 -0
- package/docs/zh/05_TUI_GUIDE.md +6 -0
- package/docs/zh/09_DOCTOR.md +11 -5
- package/docs/zh/14_PROMPT_SKILLS_AND_MCP_GUIDE.md +63 -13
- package/docs/zh/15_CODEX_PROVIDER_SETUP.md +25 -8
- package/docs/zh/19_EXTERNAL_CONTROLLER_GUIDE.md +226 -0
- package/docs/zh/19_LOCAL_BROWSER_AUTH.md +68 -0
- package/docs/zh/20_WORKSPACE_MODES_GUIDE.md +251 -0
- package/docs/zh/README.md +18 -0
- package/package.json +1 -1
- package/pyproject.toml +1 -1
- package/src/deepscientist/__init__.py +1 -1
- package/src/deepscientist/acp/envelope.py +6 -0
- package/src/deepscientist/artifact/service.py +647 -22
- package/src/deepscientist/bash_exec/service.py +234 -9
- package/src/deepscientist/cli.py +115 -19
- package/src/deepscientist/codex_cli_compat.py +232 -0
- package/src/deepscientist/config/models.py +2 -1
- package/src/deepscientist/config/service.py +31 -9
- package/src/deepscientist/daemon/api/handlers.py +125 -6
- package/src/deepscientist/daemon/api/router.py +4 -0
- package/src/deepscientist/daemon/app.py +715 -98
- package/src/deepscientist/gitops/__init__.py +10 -1
- package/src/deepscientist/gitops/diff.py +129 -0
- package/src/deepscientist/gitops/service.py +4 -1
- package/src/deepscientist/mcp/server.py +39 -0
- package/src/deepscientist/prompts/builder.py +255 -32
- package/src/deepscientist/quest/layout.py +15 -2
- package/src/deepscientist/quest/service.py +295 -43
- package/src/deepscientist/quest/stage_views.py +6 -1
- package/src/deepscientist/runners/codex.py +86 -31
- package/src/deepscientist/skills/__init__.py +2 -2
- package/src/deepscientist/skills/installer.py +196 -5
- package/src/deepscientist/skills/registry.py +66 -0
- package/src/prompts/connectors/qq.md +18 -8
- package/src/prompts/connectors/weixin.md +16 -6
- package/src/prompts/contracts/shared_interaction.md +12 -1
- package/src/prompts/system.md +10 -5
- package/src/prompts/system_copilot.md +43 -0
- package/src/skills/analysis-campaign/SKILL.md +1 -0
- package/src/skills/baseline/SKILL.md +8 -0
- package/src/skills/decision/SKILL.md +8 -0
- package/src/skills/experiment/SKILL.md +8 -0
- package/src/skills/figure-polish/SKILL.md +1 -0
- package/src/skills/finalize/SKILL.md +1 -0
- package/src/skills/idea/SKILL.md +1 -0
- package/src/skills/intake-audit/SKILL.md +8 -0
- package/src/skills/mentor/SKILL.md +217 -0
- package/src/skills/mentor/references/correction-rules.md +210 -0
- package/src/skills/mentor/references/knowledge-profile.md +91 -0
- package/src/skills/mentor/references/persona-profile.md +138 -0
- package/src/skills/mentor/references/taste-profile.md +128 -0
- package/src/skills/mentor/references/thought-style-profile.md +138 -0
- package/src/skills/mentor/references/work-profile.md +289 -0
- package/src/skills/mentor/references/workflow-profile.md +240 -0
- package/src/skills/optimize/SKILL.md +1 -0
- package/src/skills/rebuttal/SKILL.md +1 -0
- package/src/skills/review/SKILL.md +1 -0
- package/src/skills/scout/SKILL.md +8 -0
- package/src/skills/write/SKILL.md +1 -0
- package/src/tui/dist/app/AppContainer.js +19 -11
- package/src/tui/dist/index.js +4 -1
- package/src/tui/dist/lib/api.js +33 -3
- package/src/tui/package.json +1 -1
- package/src/ui/dist/assets/AiManusChatView-COFACy7V.js +204 -0
- package/src/ui/dist/assets/AnalysisPlugin-DnSm0GZn.js +1 -0
- package/src/ui/dist/assets/CliPlugin-CvwCmDQ5.js +109 -0
- package/src/ui/dist/assets/CodeEditorPlugin-cOqSa0xq.js +2 -0
- package/src/ui/dist/assets/CodeViewerPlugin-itb0tltR.js +270 -0
- package/src/ui/dist/assets/DocViewerPlugin-DqKkiCI6.js +7 -0
- package/src/ui/dist/assets/GitCommitViewerPlugin-DVgNHBCS.js +1 -0
- package/src/ui/dist/assets/GitDiffViewerPlugin-DxL2ezFG.js +6 -0
- package/src/ui/dist/assets/GitSnapshotViewer-B_RQm1YZ.js +30 -0
- package/src/ui/dist/assets/ImageViewerPlugin-tHqlXY3n.js +26 -0
- package/src/ui/dist/assets/LabCopilotPanel-ClMbq5Yu.js +14 -0
- package/src/ui/dist/assets/LabPlugin-L_SuE8ow.js +22 -0
- package/src/ui/dist/assets/LatexPlugin-B495DTXC.js +25 -0
- package/src/ui/dist/assets/MarkdownViewerPlugin-DG28-61B.js +128 -0
- package/src/ui/dist/assets/MarketplacePlugin-BiOGT-Kj.js +13 -0
- package/src/ui/dist/assets/{NotebookEditor-CccQYZjX.css → NotebookEditor-BHH8rdGj.css} +1 -1
- package/src/ui/dist/assets/NotebookEditor-BOr3x3Ej.css +1 -0
- package/src/ui/dist/assets/NotebookEditor-C-4Kt1p9.js +81 -0
- package/src/ui/dist/assets/NotebookEditor-CVsj8h_T.js +361 -0
- package/src/ui/dist/assets/PdfLoader-CASDQmxJ.js +16 -0
- package/src/ui/dist/assets/PdfLoader-Cy5jtWrr.css +1 -0
- package/src/ui/dist/assets/PdfMarkdownPlugin-BFhwoKsY.js +1 -0
- package/src/ui/dist/assets/PdfViewerPlugin-DcOzU9vd.js +17 -0
- package/src/ui/dist/assets/PdfViewerPlugin-nwwE-fjJ.css +1 -0
- package/src/ui/dist/assets/SearchPlugin-CHj7M58O.js +16 -0
- package/src/ui/dist/assets/SearchPlugin-DA4en4hK.css +1 -0
- package/src/ui/dist/assets/TextViewerPlugin-CB4DYfWO.js +54 -0
- package/src/ui/dist/assets/VNCViewer-CjlbyCB3.js +11 -0
- package/src/ui/dist/assets/bot-CFkZY-JP.js +6 -0
- package/src/ui/dist/assets/browser-CTB2jwNe.js +8 -0
- package/src/ui/dist/assets/chevron-up-Dq5ofbht.js +6 -0
- package/src/ui/dist/assets/code-DLC6G24T.js +6 -0
- package/src/ui/dist/assets/file-content-Dv4LoZec.js +1 -0
- package/src/ui/dist/assets/file-diff-panel-Denq-lC3.js +1 -0
- package/src/ui/dist/assets/file-jump-queue-DA-SdG__.js +1 -0
- package/src/ui/dist/assets/file-socket-Cu4Qln7Y.js +1 -0
- package/src/ui/dist/assets/git-commit-horizontal-BUh6G52n.js +6 -0
- package/src/ui/dist/assets/image-B9HUUddG.js +6 -0
- package/src/ui/dist/assets/index-B2B1sg-M.js +1 -0
- package/src/ui/dist/assets/index-Cgla8biy.css +33 -0
- package/src/ui/dist/assets/index-DRyx7vAc.js +1 -0
- package/src/ui/dist/assets/index-Gbl53BNp.js +2496 -0
- package/src/ui/dist/assets/index-wQ7RIIRd.js +11 -0
- package/src/ui/dist/assets/monaco-CiHMMNH_.js +1 -0
- package/src/ui/dist/assets/pdf-effect-queue-ZtnHFCAi.js +6 -0
- package/src/ui/dist/assets/plugin-monaco-C8UgLomw.js +19 -0
- package/src/ui/dist/assets/plugin-notebook-HbW2K-1c.js +169 -0
- package/src/ui/dist/assets/plugin-pdf-CR8hgQBV.js +357 -0
- package/src/ui/dist/assets/plugin-terminal-MXFIPun8.js +227 -0
- package/src/ui/dist/assets/popover-DL6h35vr.js +1 -0
- package/src/ui/dist/assets/project-sync-CsX08Qno.js +1 -0
- package/src/ui/dist/assets/select-DvmXt1yY.js +11 -0
- package/src/ui/dist/assets/sigma-7jpXazui.js +6 -0
- package/src/ui/dist/assets/trash-xA7kFt8i.js +11 -0
- package/src/ui/dist/assets/useCliAccess-DsMwDjOp.js +1 -0
- package/src/ui/dist/assets/useFileDiffOverlay-FuhcnKiw.js +1 -0
- package/src/ui/dist/assets/wrap-text-CwMn-iqb.js +11 -0
- package/src/ui/dist/assets/zoom-out-R-GWEhzS.js +11 -0
- package/src/ui/dist/index.html +5 -2
- package/src/ui/dist/assets/AiManusChatView-DDjbFnbt.js +0 -26597
- package/src/ui/dist/assets/AnalysisPlugin-Yb5IdmaU.js +0 -123
- package/src/ui/dist/assets/CliPlugin-e64sreyu.js +0 -31037
- package/src/ui/dist/assets/CodeEditorPlugin-C4D2TIkU.js +0 -427
- package/src/ui/dist/assets/CodeViewerPlugin-BVoNZIvC.js +0 -905
- package/src/ui/dist/assets/DocViewerPlugin-CLChbllo.js +0 -278
- package/src/ui/dist/assets/GitDiffViewerPlugin-C4xeFyFQ.js +0 -2661
- package/src/ui/dist/assets/ImageViewerPlugin-OiMUAcLi.js +0 -500
- package/src/ui/dist/assets/LabCopilotPanel-BjD2ThQF.js +0 -4104
- package/src/ui/dist/assets/LabPlugin-DQPg-NrB.js +0 -2677
- package/src/ui/dist/assets/LatexPlugin-CI05XAV9.js +0 -1792
- package/src/ui/dist/assets/MarkdownViewerPlugin-DpeBLYZf.js +0 -308
- package/src/ui/dist/assets/MarketplacePlugin-DolE58Q2.js +0 -413
- package/src/ui/dist/assets/NotebookEditor-7Qm2rSWD.js +0 -4214
- package/src/ui/dist/assets/NotebookEditor-C1kWaxKi.js +0 -84873
- package/src/ui/dist/assets/NotebookEditor-C3VQ7ylN.css +0 -1405
- package/src/ui/dist/assets/PdfLoader-BfOHw8Zw.js +0 -25468
- package/src/ui/dist/assets/PdfLoader-C-Y707R3.css +0 -49
- package/src/ui/dist/assets/PdfMarkdownPlugin-BulDREv1.js +0 -409
- package/src/ui/dist/assets/PdfViewerPlugin-C-daaOaL.js +0 -3095
- package/src/ui/dist/assets/PdfViewerPlugin-DQ11QcSf.css +0 -3627
- package/src/ui/dist/assets/SearchPlugin-CjpaiJ3A.js +0 -741
- package/src/ui/dist/assets/SearchPlugin-DDMrGDkh.css +0 -379
- package/src/ui/dist/assets/TextViewerPlugin-BxIyqPQC.js +0 -472
- package/src/ui/dist/assets/VNCViewer-HAg9mF7M.js +0 -18821
- package/src/ui/dist/assets/awareness-C0NPR2Dj.js +0 -292
- package/src/ui/dist/assets/bot-0DYntytV.js +0 -21
- package/src/ui/dist/assets/browser-BAcuE0Xj.js +0 -2895
- package/src/ui/dist/assets/code-B20Slj_w.js +0 -17
- package/src/ui/dist/assets/file-content-DT24KFma.js +0 -377
- package/src/ui/dist/assets/file-diff-panel-DK13YPql.js +0 -92
- package/src/ui/dist/assets/file-jump-queue-r5XKgJEV.js +0 -16
- package/src/ui/dist/assets/file-socket-B4T2o4nR.js +0 -58
- package/src/ui/dist/assets/function-B5QZkkHC.js +0 -1895
- package/src/ui/dist/assets/image-DSeR_sDS.js +0 -18
- package/src/ui/dist/assets/index-BrFje2Uk.js +0 -120
- package/src/ui/dist/assets/index-BwRJaoTl.js +0 -25
- package/src/ui/dist/assets/index-D_E4281X.js +0 -221322
- package/src/ui/dist/assets/index-DnYB3xb1.js +0 -159
- package/src/ui/dist/assets/index-G7AcWcMu.css +0 -12594
- package/src/ui/dist/assets/monaco-LExaAN3Y.js +0 -623
- package/src/ui/dist/assets/pdf-effect-queue-BJk5okWJ.js +0 -47
- package/src/ui/dist/assets/pdf_viewer-e0g1is2C.js +0 -8206
- package/src/ui/dist/assets/popover-D3Gg_FoV.js +0 -476
- package/src/ui/dist/assets/project-sync-C_ygLlVU.js +0 -297
- package/src/ui/dist/assets/select-CpAK6uWm.js +0 -1690
- package/src/ui/dist/assets/sigma-DEccaSgk.js +0 -22
- package/src/ui/dist/assets/square-check-big-uUfyVsbD.js +0 -17
- package/src/ui/dist/assets/trash-CXvwwSe8.js +0 -32
- package/src/ui/dist/assets/useCliAccess-Bnop4mgR.js +0 -957
- package/src/ui/dist/assets/useFileDiffOverlay-B8eUAX0I.js +0 -53
- package/src/ui/dist/assets/wrap-text-9vbOBpkW.js +0 -35
- package/src/ui/dist/assets/yjs-DncrqiZ8.js +0 -11243
- package/src/ui/dist/assets/zoom-out-BgVMmOW4.js +0 -34
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
|
|
14
14
|
本文中的截图直接使用当前在线页面 `deepscientist.cc:20999` 作为示例。你本地运行后的页面 `127.0.0.1:20999` 通常会与它保持一致或非常接近。
|
|
15
15
|
|
|
16
|
-
当前平台支持:DeepScientist 目前完整支持 Linux 和 macOS。原生 Windows
|
|
16
|
+
当前平台支持:DeepScientist 目前完整支持 Linux 和 macOS。原生 Windows 支持目前仍处于实验阶段(强烈建议优先使用 WSL2,尤其是在你希望获得最接近 Linux 的终端行为时)。
|
|
17
17
|
|
|
18
18
|
## 安全建议:先隔离,再启动
|
|
19
19
|
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
|
|
61
61
|
## 1. 先安装 Node.js,再安装 DeepScientist
|
|
62
62
|
|
|
63
|
-
DeepScientist 目前完整支持 Linux 和 macOS。原生 Windows
|
|
63
|
+
DeepScientist 目前完整支持 Linux 和 macOS。原生 Windows 支持目前仍处于实验阶段(强烈建议优先使用 WSL2,尤其是在你希望获得更稳定、更接近 Linux 的 shell 行为时)。
|
|
64
64
|
|
|
65
65
|
在安装 DeepScientist 本身之前,请先从 Node.js 官方页面安装 Node.js:
|
|
66
66
|
|
|
@@ -85,6 +85,15 @@ DeepScientist 依赖一个可用的 Codex CLI。它会优先使用你机器上
|
|
|
85
85
|
npm install -g @openai/codex
|
|
86
86
|
```
|
|
87
87
|
|
|
88
|
+
最稳妥的做法是立刻验证命令是否真的可用:
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
which codex
|
|
92
|
+
codex --login
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
如果 `which codex` 没有输出,问题通常不是 DeepScientist 本身,而是 npm 全局 bin 目录没有正确进入 shell 的 PATH。先修复 PATH,再重新执行 `npm install -g @openai/codex`。
|
|
96
|
+
|
|
88
97
|
如果你后面还要在本地编译论文 PDF,可以再运行:
|
|
89
98
|
|
|
90
99
|
```bash
|
|
@@ -148,18 +157,21 @@ ds --codex /absolute/path/to/codex --codex-profile m27
|
|
|
148
157
|
|
|
149
158
|
这里的 `m27` 是本仓库统一使用的 MiniMax profile 示例名。MiniMax 官方页面当前示例名是 `m21`,但 profile 名只是本地别名;如果你自己用了别的名字,就把命令里的名字一起改掉。
|
|
150
159
|
|
|
151
|
-
DeepScientist 会在启动前强制做一次真实的 Codex hello
|
|
160
|
+
DeepScientist 会在启动前强制做一次真实的 Codex hello 探测。当前 `~/DeepScientist/config/runners.yaml` 里的默认 runner 模型已经是 `inherit`。如果你的旧配置里还固定写着某个显式模型,而你的 provider 又希望模型由 profile 自己决定,请把 `model` 改成 `inherit`;或者直接使用 `--codex-profile <name>`,让这一轮启动自动继承 profile 对应的模型。
|
|
152
161
|
|
|
153
162
|
MiniMax 额外说明:
|
|
154
163
|
|
|
155
164
|
- 如果当前最新版 `@openai/codex` 和 MiniMax 走不通,直接安装 `npm install -g @openai/codex@0.57.0`
|
|
165
|
+
- 如果 DeepScientist 在启动时检测到 MiniMax profile,但当前 Codex CLI 不是 `0.57.0`,现在会在交互式终端里主动提示是否自动安装 `0.57.0`
|
|
156
166
|
- 先创建 MiniMax `Coding Plan Key`
|
|
157
|
-
-
|
|
167
|
+
- 如果你要单独在终端里验证 `codex --profile <name>`,先在当前 shell 里执行 `unset OPENAI_API_KEY` 和 `unset OPENAI_BASE_URL`
|
|
158
168
|
- 使用 `https://api.minimaxi.com/v1`
|
|
159
169
|
- MiniMax 官方 Codex CLI 页面当前给出的 `codex-MiniMax-*` 模型名,在本地用提供的 key 实测并不能稳定通过 Codex CLI
|
|
160
|
-
-
|
|
170
|
+
- 当前本地实测可用于 DeepScientist 的模型名是 `MiniMax-M2.7` 和 `MiniMax-M2.5`
|
|
171
|
+
- 如果你要走 `m25`,请使用 `MiniMax-M2.5`,不要写成 `codex-MiniMax-M2.5`
|
|
161
172
|
- DeepScientist 现在可以在 probe 和运行时自动适配 MiniMax profile-only 的 `model_provider` / `model` 配置形态
|
|
162
|
-
-
|
|
173
|
+
- 当 provider 设置了 `requires_openai_auth = false` 时,DeepScientist 也会自动移除冲突的 `OPENAI_*` 认证环境变量
|
|
174
|
+
- 如果你还希望终端里的 `codex --profile <name>` 也直接可用,再在 `~/.codex/config.toml` 顶层补上 `model_provider = "minimax"`,以及对应的顶层 `model`,例如 `MiniMax-M2.7` 或 `MiniMax-M2.5`
|
|
163
175
|
- 当 DeepScientist 检测到旧版 Codex CLI 不支持 `xhigh` 时,会自动把它降级成 `high`
|
|
164
176
|
|
|
165
177
|
## 3. 启动本地运行时
|
|
@@ -200,13 +212,14 @@ ds --port 21000
|
|
|
200
212
|
|
|
201
213
|
这会把网页界面放到 `21000` 端口。
|
|
202
214
|
|
|
203
|
-
|
|
215
|
+
默认情况下,DeepScientist 启动时不会开启本地浏览器密码门禁。
|
|
204
216
|
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
217
|
+
- 如果浏览器没有自动打开,就手动访问普通本地地址,例如 `http://127.0.0.1:20999`
|
|
218
|
+
- 如果你想在某次启动里启用本地浏览器密码,可以用 `ds --auth true`
|
|
219
|
+
- 在启用密码模式的启动中,终端会直接打印这次启动生成的密码
|
|
220
|
+
- 如果当前浏览器还没有登录,本地首页会先弹出密码框,再继续显示后续界面
|
|
221
|
+
- 第一次成功进入后,浏览器会保存这次本地登录,之后再次访问通常不需要重复输入
|
|
222
|
+
- 如果你之后忘了某次启用密码启动的密码,可以回到启动终端查看,或者执行 `ds --status`
|
|
210
223
|
|
|
211
224
|
## 4. 打开首页
|
|
212
225
|
|
|
@@ -220,10 +233,18 @@ http://127.0.0.1:20999
|
|
|
220
233
|
|
|
221
234
|
你最先会看到两个入口:
|
|
222
235
|
|
|
223
|
-
- `Start Research
|
|
236
|
+
- `Start Research` 或 `Start Experiment`:进入新项目创建流程
|
|
224
237
|
- `Open Project`:重新打开已有项目
|
|
225
238
|
|
|
226
|
-
第一次使用时,先点击 `Start Research`。
|
|
239
|
+
第一次使用时,先点击 `Start Research` 或 `Start Experiment`。
|
|
240
|
+
|
|
241
|
+
这里有一个重要变化:
|
|
242
|
+
|
|
243
|
+
- 现在系统会先让你选择启动方式
|
|
244
|
+
- `Copilot`:先创建一个安静待命的项目,等你发第一条明确指令
|
|
245
|
+
- `Autonomous`:标准版 DeepScientist,创建后直接开始推进
|
|
246
|
+
|
|
247
|
+
如果你还不确定该选哪一个,先看 [20 工作区模式指南](./20_WORKSPACE_MODES_GUIDE.md)。
|
|
227
248
|
|
|
228
249
|
## 5. 用一个真实示例创建第一个项目
|
|
229
250
|
|
|
@@ -236,7 +257,7 @@ http://127.0.0.1:20999
|
|
|
236
257
|
- 研究在混合正确 / 错误社会信号下,如何实现更强的 truth-preserving collaboration
|
|
237
258
|
- 使用两个本地推理端点提高吞吐量
|
|
238
259
|
|
|
239
|
-
点击 `Start Research
|
|
260
|
+
点击 `Start Research` / `Start Experiment`,然后选择 `Autonomous Mode`,再进入下面这条标准创建流程。
|
|
240
261
|
|
|
241
262
|

|
|
242
263
|
|
|
@@ -52,6 +52,7 @@ daemon:
|
|
|
52
52
|
ui:
|
|
53
53
|
host: 0.0.0.0
|
|
54
54
|
port: 20999
|
|
55
|
+
auth_enabled: false
|
|
55
56
|
auto_open_browser: true
|
|
56
57
|
default_mode: both
|
|
57
58
|
logging:
|
|
@@ -172,6 +173,17 @@ acp:
|
|
|
172
173
|
- 作用:本地 UI 服务监听端口。
|
|
173
174
|
- 何时修改:端口冲突时。
|
|
174
175
|
|
|
176
|
+
**`ui.auth_enabled`**
|
|
177
|
+
|
|
178
|
+
- 类型:`boolean`
|
|
179
|
+
- 默认值:`false`
|
|
180
|
+
- 页面标签:`Require local password`
|
|
181
|
+
- 作用:为 Web 工作区和所有 `/api/*` 路由启用本地 16 位浏览器访问密码。
|
|
182
|
+
- 行为:
|
|
183
|
+
- `true`:`ds` 会在终端打印这次启动生成的密码;如果浏览器里没有有效登录态,就必须先输入密码;登录成功后会在浏览器中持久化。
|
|
184
|
+
- `false`:关闭本地密码门禁,保持普通本地地址直连行为。
|
|
185
|
+
- CLI 覆盖:`ds --auth true` 或 `ds --auth false`
|
|
186
|
+
|
|
175
187
|
**`ui.auto_open_browser`**
|
|
176
188
|
|
|
177
189
|
- 类型:`boolean`
|
|
@@ -274,6 +286,7 @@ acp:
|
|
|
274
286
|
- 默认值:`true`
|
|
275
287
|
- 页面标签:`Sync project skills on create`
|
|
276
288
|
- 作用:创建项目时,把技能镜像到项目本地 `.codex/skills` / `.claude/agents`。
|
|
289
|
+
- Prompt 说明:同时会初始化 quest 本地的受管 prompt 镜像 `.codex/prompts/`。
|
|
277
290
|
|
|
278
291
|
**`skills.sync_quest_on_open`**
|
|
279
292
|
|
|
@@ -281,6 +294,26 @@ acp:
|
|
|
281
294
|
- 默认值:`true`
|
|
282
295
|
- 页面标签:`Sync project skills on open`
|
|
283
296
|
- 作用:打开已有项目时刷新本地技能镜像。
|
|
297
|
+
- Prompt 说明:会刷新当前 DeepScientist home 下已发现 quest 的本地技能与 prompt 镜像。
|
|
298
|
+
|
|
299
|
+
受管 prompt 行为:
|
|
300
|
+
|
|
301
|
+
- `.codex/prompts/` 现在应被视为“当前 active prompt 树”的受管副本,而不是长期手工维护的 override。
|
|
302
|
+
- 每次真实 runner turn 开始前,DeepScientist 都会把 quest 本地 active prompt 树和仓库当前 `src/prompts/` 做比较,并自动修复漂移。
|
|
303
|
+
- 如果 active prompt 树与仓库源不同,系统会先把旧树备份到 `.codex/prompt_versions/<backup_id>/`,再写入新的 active 副本。
|
|
304
|
+
- 这个运行前同步是针对“本次 turn 实际使用的 quest_root”执行的,所以即使 quest 不在默认 `home/quests` 下面,也仍然会更新。
|
|
305
|
+
- 运行时覆盖:`ds daemon --prompt-version latest` 使用当前受管 active prompt;`ds daemon --prompt-version <official_version>` 会优先选择该正式版本号下最新的一份 prompt 备份。
|
|
306
|
+
- 如果你不是想用“这个正式版本下最新的一份”,而是想精确回放某一次备份,也仍然可以直接传 `.codex/prompt_versions/` 里的精确目录名。
|
|
307
|
+
- 同样的覆盖也支持一次性 CLI run:`ds run --prompt-version <official_version> ...`。
|
|
308
|
+
|
|
309
|
+
受管 auto-continue 行为:
|
|
310
|
+
|
|
311
|
+
- `workspace_mode = copilot`
|
|
312
|
+
- 完成当前请求单元后,DeepScientist 通常停驻,等待下一条用户消息或 `/resume`
|
|
313
|
+
- `workspace_mode = autonomous`
|
|
314
|
+
- 如果真实外部长任务还没跑起来,就继续用后续 turns 做准备、启动或耐久路由
|
|
315
|
+
- 一旦真实外部长任务已经在跑,auto-continue 就切成低频巡检,默认大约每 `240` 秒一轮
|
|
316
|
+
- auto-continue prompt 现在还会带上一个紧凑的 resume spine:最近用户消息、最近 assistant checkpoint、最近 run 摘要、少量 memory cues,以及当前 `bash_exec` 状态
|
|
284
317
|
|
|
285
318
|
### Connector policy
|
|
286
319
|
|
|
@@ -326,9 +326,16 @@ type StartResearchContractFields = {
|
|
|
326
326
|
|
|
327
327
|
- `autonomous`
|
|
328
328
|
- 普通路线由 agent 自行决定
|
|
329
|
+
- 一轮结束后默认继续:如果真实长时间外部任务还没跑起来,就继续准备或启动;一旦真实长任务已经在跑,后台监控应切成低频,而不是亚分钟轮询
|
|
329
330
|
- `user_gated`
|
|
330
331
|
- 只有真正依赖用户偏好时,才允许阻塞式决策请求
|
|
331
332
|
|
|
333
|
+
关于 workspace mode 的实际含义:
|
|
334
|
+
|
|
335
|
+
- DeepScientist 还会区分用户导向的 `copilot` 模式和默认的 `autonomous` 模式。
|
|
336
|
+
- 在 `copilot` 下,当前请求单元完成后通常应该停驻,等待下一条用户消息或 `/resume`。
|
|
337
|
+
- 在 `autonomous` 下,不能因为“当前还没有长任务在跑”就停住;系统应继续推进,直到下一个真实长任务被准备好或启动起来。
|
|
338
|
+
|
|
332
339
|
### 启动模式
|
|
333
340
|
|
|
334
341
|
**`launch_mode`**
|
package/docs/zh/05_TUI_GUIDE.md
CHANGED
|
@@ -58,6 +58,7 @@ ds --stop
|
|
|
58
58
|
含义:
|
|
59
59
|
|
|
60
60
|
- `ds`:启动 daemon,打印本地 Web 地址,尝试打开浏览器,然后退出。
|
|
61
|
+
如果你是用 `ds --auth true` 启动,DeepScientist 也会同时打印这次启动生成的本地浏览器密码。
|
|
61
62
|
- `ds --tui`:启动 daemon,并进入终端工作区。
|
|
62
63
|
- `ds --both`:同时开 Web 和 TUI。
|
|
63
64
|
- `ds --status`:查看 daemon 状态。
|
|
@@ -71,6 +72,11 @@ ds --stop
|
|
|
71
72
|
- 当前本地 Web 地址
|
|
72
73
|
- 当前有哪些 quest 可以切换
|
|
73
74
|
|
|
75
|
+
如果本地浏览器密码模式是开启的,那么终端里打印出来的 Web 地址就是你应该优先使用的地址。
|
|
76
|
+
|
|
77
|
+
- 第一次优先打开终端里打印的完整 URL
|
|
78
|
+
- 当 TUI 已经拿到本地密码 token 时,`Ctrl+O` 重新打开 Web 也会带上同一个 token
|
|
79
|
+
|
|
74
80
|
如果欢迎区显示的是 `request mode`,说明你还没有绑定 quest。
|
|
75
81
|
|
|
76
82
|
这时正确动作不是直接输入普通文本,而是先做下面两件事之一:
|
package/docs/zh/09_DOCTOR.md
CHANGED
|
@@ -116,13 +116,16 @@ ds --codex /absolute/path/to/codex --codex-profile m27
|
|
|
116
116
|
MiniMax 补充说明:
|
|
117
117
|
|
|
118
118
|
- 如果 MiniMax 在当前最新版 `@openai/codex` 上失败,直接安装 `npm install -g @openai/codex@0.57.0`
|
|
119
|
+
- 如果 DeepScientist 在启动时检测到 MiniMax profile,但当前 Codex CLI 不是 `0.57.0`,现在会在交互式终端里主动提示是否自动安装 `0.57.0`
|
|
119
120
|
- 先创建 MiniMax `Coding Plan Key`
|
|
120
|
-
-
|
|
121
|
+
- 如果你要单独在终端里验证 `codex --profile <name>`,先在当前 shell 里执行 `unset OPENAI_API_KEY` 和 `unset OPENAI_BASE_URL`
|
|
121
122
|
- 使用 `https://api.minimaxi.com/v1`
|
|
122
123
|
- MiniMax 官方 Codex CLI 页面当前给出的 `codex-MiniMax-*` 模型名,在本地用提供的 key 实测并不能稳定通过 Codex CLI
|
|
123
|
-
-
|
|
124
|
+
- 当前本地实测可用于 DeepScientist 的模型名是 `MiniMax-M2.7` 和 `MiniMax-M2.5`
|
|
125
|
+
- 如果你要走 `m25`,请使用 `MiniMax-M2.5`,不要写成 `codex-MiniMax-M2.5`
|
|
124
126
|
- DeepScientist 现在可以在 probe 和运行时自动适配 MiniMax profile-only 的 `model_provider` / `model` 配置形态
|
|
125
|
-
-
|
|
127
|
+
- 当 provider 设置了 `requires_openai_auth = false` 时,DeepScientist 也会自动移除冲突的 `OPENAI_*` 认证环境变量
|
|
128
|
+
- 如果你还希望终端里的 `codex --profile <name>` 也直接可用,再在 `~/.codex/config.toml` 顶层补上 `model_provider = "minimax"`,以及对应的顶层 `model`,例如 `MiniMax-M2.7` 或 `MiniMax-M2.5`
|
|
126
129
|
- 当 DeepScientist 检测到 Codex CLI 版本低于 `0.63.0` 时,会自动把 `xhigh` 降级成 `high`
|
|
127
130
|
|
|
128
131
|
### 当前配置的 Codex 模型不可用
|
|
@@ -149,7 +152,7 @@ ds doctor
|
|
|
149
152
|
curl -LsSf https://astral.sh/uv/install.sh | sh
|
|
150
153
|
```
|
|
151
154
|
|
|
152
|
-
如果你在 Windows PowerShell
|
|
155
|
+
如果你在 Windows PowerShell(但日常使用 DeepScientist 仍然强烈建议优先使用 WSL2):
|
|
153
156
|
|
|
154
157
|
```powershell
|
|
155
158
|
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
|
|
@@ -233,4 +236,7 @@ git config --global user.email "you@example.com"
|
|
|
233
236
|
## 说明
|
|
234
237
|
|
|
235
238
|
- `ds docker` 保留为兼容别名,但正式命令是 `ds doctor`。
|
|
236
|
-
-
|
|
239
|
+
- 默认情况下,浏览器访问地址保持普通本地形式,例如 `http://127.0.0.1:20999`。
|
|
240
|
+
- 如果启用了本地浏览器密码模式,首页会先弹出密码框,再继续进入工作区。
|
|
241
|
+
- 你可以回到启动终端查看当前密码,或者执行 `ds --status`。
|
|
242
|
+
- 默认情况下不会出现密码弹窗;如果你想在某次启动中启用本地浏览器密码模式,可以使用 `ds --auth true`。
|
|
@@ -56,6 +56,14 @@ DeepScientist 不是靠一份静态大 prompt 工作的。
|
|
|
56
56
|
- `SKILL.md`:定义各个阶段的执行纪律
|
|
57
57
|
- `mcp/server.py`:定义内建工具面
|
|
58
58
|
|
|
59
|
+
受管 quest-local prompt 镜像:
|
|
60
|
+
|
|
61
|
+
- DeepScientist 仍然会优先读取 `quest_root/.codex/prompts/` 下存在的 prompt 片段。
|
|
62
|
+
- 但这棵树现在是“自动维护的受管副本”,不再默认视为永久手工 fork。
|
|
63
|
+
- 每次真实 runner turn 开始前,DeepScientist 都会把当前 active quest-local prompt 树与仓库 `src/prompts/` 做比较;只要仓库源变了,或者 quest 本地副本漂移了,就会刷新 active 副本。
|
|
64
|
+
- 刷新之前,旧的 active prompt 树会先备份到 `quest_root/.codex/prompt_versions/<backup_id>/`。
|
|
65
|
+
- 所以默认情况下,旧 quest 也会吃到最新 prompt 合同;如果你需要回放历史 prompt,再显式选择某个备份版本。
|
|
66
|
+
|
|
59
67
|
## 3. 一轮 prompt 是怎么组装的
|
|
60
68
|
|
|
61
69
|
当前运行时大致按下面顺序组装 turn prompt:
|
|
@@ -72,11 +80,12 @@ DeepScientist 不是靠一份静态大 prompt 工作的。
|
|
|
72
80
|
10. research delivery policy
|
|
73
81
|
11. paper and evidence snapshot
|
|
74
82
|
12. 如果是 retry turn,则加入 retry recovery packet
|
|
75
|
-
13.
|
|
76
|
-
14.
|
|
77
|
-
15.
|
|
78
|
-
16.
|
|
79
|
-
17. current
|
|
83
|
+
13. 如果是 auto-continue turn,则加入 resume context spine
|
|
84
|
+
14. interaction style
|
|
85
|
+
15. priority memory for this turn
|
|
86
|
+
16. recent conversation window
|
|
87
|
+
17. current turn attachments
|
|
88
|
+
18. current user message
|
|
80
89
|
|
|
81
90
|
这个顺序不是随便排的。
|
|
82
91
|
|
|
@@ -210,6 +219,16 @@ builder 会直接把这些 quest 文件读进 prompt:
|
|
|
210
219
|
- `src/deepscientist/prompts/builder.py`
|
|
211
220
|
- 当前 quest 所处的 stage skill
|
|
212
221
|
|
|
222
|
+
它现在还明确承载了 continuation 的模式分叉:
|
|
223
|
+
|
|
224
|
+
- `workspace_mode = copilot`
|
|
225
|
+
- 以当前请求为单位提供帮助
|
|
226
|
+
- 做完这一小段之后,通常停驻,等待下一条用户消息或 `/resume`
|
|
227
|
+
- `workspace_mode = autonomous`
|
|
228
|
+
- 默认继续往前推进
|
|
229
|
+
- 如果真实长任务还没跑起来,就继续用接下来的 turns 做准备、启动或耐久决策
|
|
230
|
+
- 一旦真实长任务已经在跑,后台 auto-continue 就切成低频巡检
|
|
231
|
+
|
|
213
232
|
### 4.8 Interaction style
|
|
214
233
|
|
|
215
234
|
这个 block 决定这轮该怎么“说话”。
|
|
@@ -229,7 +248,27 @@ builder 会直接把这些 quest 文件读进 prompt:
|
|
|
229
248
|
- 写作阶段
|
|
230
249
|
- 等待用户决策的阶段
|
|
231
250
|
|
|
232
|
-
|
|
251
|
+
它现在也编码了 auto-continue 的节奏分叉:
|
|
252
|
+
|
|
253
|
+
- autonomous 下,如果还在准备 / 启动真实长任务,可以较快地连续推进
|
|
254
|
+
- 如果真实外部长任务已经在跑,则默认切成低频检查,默认大约每 `240` 秒一轮
|
|
255
|
+
- copilot 模式则通常在当前请求单元完成后停驻,不继续自动扩展
|
|
256
|
+
|
|
257
|
+
### 4.9 Resume context spine
|
|
258
|
+
|
|
259
|
+
现在在 auto-continue turn 中,prompt 会额外注入一个紧凑的 resume spine,避免模型只凭一个 stage 名称硬续。
|
|
260
|
+
|
|
261
|
+
里面包括:
|
|
262
|
+
|
|
263
|
+
- 最近一条持久化用户消息
|
|
264
|
+
- 最近一条 assistant checkpoint
|
|
265
|
+
- 最近一条 run result 摘要
|
|
266
|
+
- 少量最近 memory cues
|
|
267
|
+
- 当前 `bash_exec` 状态,包括是否有长时间 shell 会话正在运行
|
|
268
|
+
|
|
269
|
+
这也是为什么 auto-continue 能更贴着“最新用户意图 + 最新检查点”继续,而不是漂回泛泛的 stage narration。
|
|
270
|
+
|
|
271
|
+
### 4.10 Priority memory
|
|
233
272
|
|
|
234
273
|
DeepScientist 不是随机往 prompt 里塞 memory 的。
|
|
235
274
|
|
|
@@ -246,22 +285,33 @@ DeepScientist 不是随机往 prompt 里塞 memory 的。
|
|
|
246
285
|
|
|
247
286
|
agent 不应该在每一轮都看到完全同一批 memory。
|
|
248
287
|
|
|
249
|
-
## 5.
|
|
288
|
+
## 5. 本地 active prompt 与历史版本
|
|
250
289
|
|
|
251
|
-
|
|
290
|
+
当前 quest 的 active prompt 树仍在这些路径下:
|
|
252
291
|
|
|
253
292
|
- `.codex/prompts/system.md`
|
|
254
293
|
- `.codex/prompts/contracts/shared_interaction.md`
|
|
255
294
|
- `.codex/prompts/connectors/<connector>.md`
|
|
256
295
|
|
|
257
|
-
|
|
296
|
+
仓库默认 prompt 仍然在 `src/prompts/`。
|
|
297
|
+
|
|
298
|
+
但现在有一个关键变化:
|
|
299
|
+
|
|
300
|
+
- `.codex/prompts/` 不应再理解为长期手工维护的 override 树。
|
|
301
|
+
- 每次真实运行前,DeepScientist 都会把 active quest-local copy 修回当前仓库 prompt 真相。
|
|
302
|
+
- 所以如果你手工改了 active copy,这种改动会在下次运行时被视为漂移:先备份,再替换。
|
|
303
|
+
- 历史 prompt 会保存在 `.codex/prompt_versions/<backup_id>/`。
|
|
304
|
+
|
|
305
|
+
如果你确实想让某个 quest 临时按旧 prompt 跑,启动时优先传正式版本号即可:
|
|
306
|
+
|
|
307
|
+
- `ds daemon --prompt-version <official_version>`
|
|
308
|
+
- `ds run --prompt-version <official_version> ...`
|
|
258
309
|
|
|
259
|
-
|
|
260
|
-
- quest 私有覆盖在 `.codex/prompts/`
|
|
310
|
+
DeepScientist 会把它解析成“该正式版本号下最新的一份 prompt 备份”。如果你想精确回放某一次具体备份,而不是该版本下最新的一份,也仍然可以直接传备份目录名。
|
|
261
311
|
|
|
262
|
-
|
|
312
|
+
如果只是想继续使用当前受管 active prompt,就用 `latest`。
|
|
263
313
|
|
|
264
|
-
|
|
314
|
+
如果这个改动应该影响正常未来行为,就不该只改 quest-local active copy,而应该直接改仓库默认 prompt。
|
|
265
315
|
|
|
266
316
|
## 6. Skills 是怎么分层的
|
|
267
317
|
|
|
@@ -62,7 +62,7 @@ codex:
|
|
|
62
62
|
|
|
63
63
|
- 对 provider-backed 的 Codex profile,建议优先使用 `model: inherit`
|
|
64
64
|
- 除非你非常确定该 provider 接受你要显式传入的模型名,否则不要再额外硬写一个模型
|
|
65
|
-
- DeepScientist
|
|
65
|
+
- DeepScientist 现在会在 `.ds/codex-home` 下启动一个隔离的运行时 home,但会先继承你配置的 `~/.codex` 里的 auth、config、skills、agents 与 prompts
|
|
66
66
|
|
|
67
67
|
## Provider 一览
|
|
68
68
|
|
|
@@ -109,13 +109,13 @@ MiniMax 是最典型的 profile 模式。它的官方 Codex CLI 文档直接给
|
|
|
109
109
|
|
|
110
110
|
### 已验证的兼容性说明
|
|
111
111
|
|
|
112
|
-
按 2026-
|
|
112
|
+
按 2026-04-04 对 MiniMax 官方 Codex CLI 页面和本地兼容性测试的核对结果:
|
|
113
113
|
|
|
114
114
|
- MiniMax 官方 Codex CLI 页面当前建议使用 `@openai/codex@0.57.0`
|
|
115
115
|
- MiniMax 当前应使用的 Coding Plan endpoint 是 `https://api.minimaxi.com/v1`
|
|
116
116
|
- MiniMax 官方页面示例 profile 名是 `m21`,但 profile 名本身只是本地别名;本仓库统一用 `m27` 作为示例名
|
|
117
117
|
- MiniMax 官方页面当前给出的 `codex-MiniMax-*` 模型名,在本地使用你提供的 key 实测并不能稳定通过 Codex CLI
|
|
118
|
-
-
|
|
118
|
+
- 本地实测 DeepScientist 可稳定跑通的组合包括 `MiniMax-M2.7` + `m27` + Codex CLI `0.57.0`,以及 `MiniMax-M2.5` + `m25` + Codex CLI `0.57.0`
|
|
119
119
|
- 当前最新版 `@openai/codex` 和 MiniMax 官方文档并不能稳定直接对齐
|
|
120
120
|
|
|
121
121
|
如果你现在要走最稳的 DeepScientist + MiniMax 路径,建议直接使用 Codex CLI `0.57.0`。
|
|
@@ -125,7 +125,7 @@ MiniMax 是最典型的 profile 模式。它的官方 Codex CLI 文档直接给
|
|
|
125
125
|
- 已安装 Codex CLI `0.57.0`
|
|
126
126
|
- 已创建 MiniMax `Coding Plan Key`
|
|
127
127
|
- 在启动 Codex 和 DeepScientist 的 shell 中可见的 `MINIMAX_API_KEY`
|
|
128
|
-
-
|
|
128
|
+
- 如果你要单独在终端里验证 `codex --profile <name>`,当前 shell 需要先清理 `OPENAI_API_KEY` 和 `OPENAI_BASE_URL`
|
|
129
129
|
- `~/.codex/config.toml` 中已经配置好的 Codex profile
|
|
130
130
|
|
|
131
131
|
### 安装 Codex CLI `0.57.0`
|
|
@@ -145,6 +145,8 @@ codex-cli 0.57.0
|
|
|
145
145
|
|
|
146
146
|
如果你还想保留另一个 Codex 版本,也可以单独写一个 wrapper 脚本,再把 `runners.codex.binary` 指向那个绝对路径。
|
|
147
147
|
|
|
148
|
+
现在如果 DeepScientist 在启动时检测到 MiniMax profile,但当前 `codex` 版本不是 `0.57.0`,在交互式终端里会主动提示是否自动安装 `@openai/codex@0.57.0`。
|
|
149
|
+
|
|
148
150
|
### Codex 侧配置
|
|
149
151
|
|
|
150
152
|
请使用 `https://api.minimaxi.com/v1`,不要用 `https://api.minimax.io/v1`。
|
|
@@ -157,15 +159,19 @@ unset OPENAI_BASE_URL
|
|
|
157
159
|
export MINIMAX_API_KEY="..."
|
|
158
160
|
```
|
|
159
161
|
|
|
162
|
+
如果你是在终端里单独验证 `codex --profile <name>`,就按上面的方式处理。
|
|
163
|
+
如果你走的是 DeepScientist 路径,那么当所选 provider 明确写了 `requires_openai_auth = false` 时,DeepScientist 现在会在 startup probe 和真实 runner 执行时自动剥离 `OPENAI_API_KEY` 和 `OPENAI_BASE_URL`。
|
|
164
|
+
|
|
160
165
|
MiniMax 官方页面示例 profile 名是 `m21`。由于 profile 名只是本地别名,本仓库统一改写成 `m27`。
|
|
161
166
|
|
|
162
167
|
先说明差异:
|
|
163
168
|
|
|
164
169
|
- 官方页面当前展示的是 `codex-MiniMax-M2.5`
|
|
165
|
-
- 但本地实测里,直接请求 MiniMax API 能稳定跑通的是 `MiniMax-M2.7`
|
|
166
|
-
-
|
|
170
|
+
- 但本地实测里,直接请求 MiniMax API 能稳定跑通的是 `MiniMax-M2.7` 和 `MiniMax-M2.5`
|
|
171
|
+
- 可复现的 DeepScientist 路径是:`MiniMax-M2.7` 配 `m27`,以及 `MiniMax-M2.5` 配 `m25`
|
|
172
|
+
- 对 `m25` 这条路径,请使用 `MiniMax-M2.5`,不要写成 `codex-MiniMax-M2.5`
|
|
167
173
|
|
|
168
|
-
因此,下面给的是当前 DeepScientist
|
|
174
|
+
因此,下面给的是当前 DeepScientist 推荐配置:
|
|
169
175
|
|
|
170
176
|
```toml
|
|
171
177
|
[model_providers.minimax]
|
|
@@ -183,9 +189,19 @@ model = "MiniMax-M2.7"
|
|
|
183
189
|
model_provider = "minimax"
|
|
184
190
|
```
|
|
185
191
|
|
|
192
|
+
如果你想走同样的 DeepScientist 路径但使用 `m25`,保持上面的 provider 配置不变,再把 profile 写成:
|
|
193
|
+
|
|
194
|
+
```toml
|
|
195
|
+
[profiles.m25]
|
|
196
|
+
model = "MiniMax-M2.5"
|
|
197
|
+
model_provider = "minimax"
|
|
198
|
+
```
|
|
199
|
+
|
|
186
200
|
DeepScientist 现在对它的支持方式是:
|
|
187
201
|
|
|
188
|
-
- 如果你使用的是这类 profile-only MiniMax 配置,再配合 Codex CLI `0.57.0`,DeepScientist 会在自己的 probe / 运行时临时
|
|
202
|
+
- 如果你使用的是这类 profile-only MiniMax 配置,再配合 Codex CLI `0.57.0`,DeepScientist 会在自己的 probe / 运行时临时 `config.toml` 副本里,把所选 profile 的 `model_provider` 和 `model` 自动提升到顶层
|
|
203
|
+
- 对 provider-backed 的 MiniMax profile,DeepScientist 会强制使用 `model: inherit`,避免再被硬编码的 OpenAI 模型覆盖
|
|
204
|
+
- 当 `requires_openai_auth = false` 时,DeepScientist 会自动移除冲突的 `OPENAI_API_KEY` 和 `OPENAI_BASE_URL`
|
|
189
205
|
- 这意味着即使终端里原样执行 `codex --profile m27` 还会失败,DeepScientist 也可以先兼容跑起来
|
|
190
206
|
|
|
191
207
|
如果你还希望终端里的 `codex --profile <name>` 也直接可用,请使用显式顶层兼容写法:
|
|
@@ -248,6 +264,7 @@ DeepScientist 现在会为 MiniMax 的 `0.57.0` 路径额外做两层兼容:
|
|
|
248
264
|
|
|
249
265
|
- 当检测到旧版 Codex CLI 不支持 `xhigh` 时,自动把 `xhigh` 降级成 `high`
|
|
250
266
|
- 当检测到 MiniMax 使用 profile-only 的 `model_provider` / `model` 配置形态时,在临时 DeepScientist Codex home 里自动补齐顶层字段
|
|
267
|
+
- 当 provider 明确声明 `requires_openai_auth = false` 时,自动移除冲突的 `OPENAI_*` 认证环境变量
|
|
251
268
|
|
|
252
269
|
## GLM
|
|
253
270
|
|