@researai/deepscientist 1.5.14 → 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 -90
- package/assets/branding/logo-raster.png +0 -0
- package/bin/ds.js +816 -131
- package/docs/en/00_QUICK_START.md +36 -15
- package/docs/en/01_SETTINGS_REFERENCE.md +53 -4
- package/docs/en/02_START_RESEARCH_GUIDE.md +7 -0
- package/docs/en/03_QQ_CONNECTOR_GUIDE.md +19 -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/10_WEIXIN_CONNECTOR_GUIDE.md +20 -0
- package/docs/en/14_PROMPT_SKILLS_AND_MCP_GUIDE.md +65 -13
- package/docs/en/15_CODEX_PROVIDER_SETUP.md +25 -8
- package/docs/en/16_TELEGRAM_CONNECTOR_GUIDE.md +134 -0
- package/docs/en/17_WHATSAPP_CONNECTOR_GUIDE.md +126 -0
- package/docs/en/18_FEISHU_CONNECTOR_GUIDE.md +136 -0
- 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 +24 -0
- package/docs/zh/00_QUICK_START.md +36 -15
- package/docs/zh/01_SETTINGS_REFERENCE.md +53 -4
- package/docs/zh/02_START_RESEARCH_GUIDE.md +7 -0
- package/docs/zh/03_QQ_CONNECTOR_GUIDE.md +19 -0
- package/docs/zh/05_TUI_GUIDE.md +6 -0
- package/docs/zh/09_DOCTOR.md +11 -5
- package/docs/zh/10_WEIXIN_CONNECTOR_GUIDE.md +20 -0
- package/docs/zh/14_PROMPT_SKILLS_AND_MCP_GUIDE.md +65 -13
- package/docs/zh/15_CODEX_PROVIDER_SETUP.md +25 -8
- package/docs/zh/16_TELEGRAM_CONNECTOR_GUIDE.md +134 -0
- package/docs/zh/17_WHATSAPP_CONNECTOR_GUIDE.md +126 -0
- package/docs/zh/18_FEISHU_CONNECTOR_GUIDE.md +136 -0
- 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 +24 -0
- package/install.sh +2 -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/charts.py +567 -0
- package/src/deepscientist/artifact/guidance.py +50 -10
- package/src/deepscientist/artifact/metrics.py +228 -5
- package/src/deepscientist/artifact/schemas.py +3 -0
- package/src/deepscientist/artifact/service.py +4276 -308
- package/src/deepscientist/bash_exec/models.py +23 -0
- package/src/deepscientist/bash_exec/monitor.py +147 -67
- package/src/deepscientist/bash_exec/runtime.py +218 -156
- package/src/deepscientist/bash_exec/service.py +309 -69
- package/src/deepscientist/bash_exec/shells.py +87 -0
- package/src/deepscientist/bridges/connectors.py +51 -2
- package/src/deepscientist/cli.py +115 -19
- package/src/deepscientist/codex_cli_compat.py +232 -0
- package/src/deepscientist/config/models.py +8 -4
- package/src/deepscientist/config/service.py +38 -11
- package/src/deepscientist/connector/weixin_support.py +122 -1
- package/src/deepscientist/daemon/api/handlers.py +199 -9
- package/src/deepscientist/daemon/api/router.py +5 -0
- package/src/deepscientist/daemon/app.py +1458 -289
- package/src/deepscientist/doctor.py +51 -0
- package/src/deepscientist/file_lock.py +48 -0
- package/src/deepscientist/gitops/__init__.py +10 -1
- package/src/deepscientist/gitops/diff.py +296 -1
- package/src/deepscientist/gitops/service.py +4 -1
- package/src/deepscientist/mcp/server.py +212 -5
- package/src/deepscientist/process_control.py +161 -0
- package/src/deepscientist/prompts/builder.py +501 -453
- package/src/deepscientist/quest/layout.py +15 -2
- package/src/deepscientist/quest/service.py +2539 -195
- package/src/deepscientist/quest/stage_views.py +177 -1
- package/src/deepscientist/runners/base.py +2 -0
- package/src/deepscientist/runners/codex.py +169 -31
- package/src/deepscientist/runners/runtime_overrides.py +17 -1
- 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 +24 -4
- package/src/prompts/system.md +921 -72
- package/src/prompts/system_copilot.md +43 -0
- package/src/skills/analysis-campaign/SKILL.md +32 -2
- package/src/skills/analysis-campaign/references/artifact-orchestration.md +1 -1
- package/src/skills/analysis-campaign/references/writing-facing-slice-examples.md +65 -0
- package/src/skills/baseline/SKILL.md +10 -0
- package/src/skills/decision/SKILL.md +27 -2
- package/src/skills/experiment/SKILL.md +16 -2
- package/src/skills/figure-polish/SKILL.md +1 -0
- package/src/skills/finalize/SKILL.md +19 -0
- package/src/skills/idea/SKILL.md +79 -0
- package/src/skills/idea/references/idea-generation-playbook.md +100 -0
- package/src/skills/idea/references/outline-seeding-example.md +60 -0
- package/src/skills/intake-audit/SKILL.md +9 -1
- 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 +1645 -0
- package/src/skills/rebuttal/SKILL.md +3 -1
- package/src/skills/review/SKILL.md +3 -1
- package/src/skills/scout/SKILL.md +8 -0
- package/src/skills/write/SKILL.md +81 -12
- package/src/skills/write/references/outline-evidence-contract-example.md +107 -0
- package/src/tui/dist/app/AppContainer.js +22 -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-DaF9Nge_.js +0 -26597
- package/src/ui/dist/assets/AnalysisPlugin-BSVx6dXE.js +0 -123
- package/src/ui/dist/assets/CliPlugin-C9gzJX41.js +0 -5905
- package/src/ui/dist/assets/CodeEditorPlugin-DU9G0Tox.js +0 -427
- package/src/ui/dist/assets/CodeViewerPlugin-DoX_fI9l.js +0 -905
- package/src/ui/dist/assets/DocViewerPlugin-C4FWIXuU.js +0 -278
- package/src/ui/dist/assets/GitDiffViewerPlugin-BgfFMgtf.js +0 -2661
- package/src/ui/dist/assets/ImageViewerPlugin-tcPkfY_x.js +0 -500
- package/src/ui/dist/assets/LabCopilotPanel-_dKV60Bf.js +0 -4104
- package/src/ui/dist/assets/LabPlugin-Bje0ayoC.js +0 -2677
- package/src/ui/dist/assets/LatexPlugin-CVsBzAln.js +0 -1792
- package/src/ui/dist/assets/MarkdownViewerPlugin-xjmrqv_8.js +0 -308
- package/src/ui/dist/assets/MarketplacePlugin-mMM2A8wP.js +0 -413
- package/src/ui/dist/assets/NotebookEditor-3kVDSOBo.js +0 -4214
- package/src/ui/dist/assets/NotebookEditor-C3VQ7ylN.css +0 -1405
- package/src/ui/dist/assets/NotebookEditor-SoJ8X-MO.js +0 -84873
- package/src/ui/dist/assets/PdfLoader-C-Y707R3.css +0 -49
- package/src/ui/dist/assets/PdfLoader-DElVuHl9.js +0 -25468
- package/src/ui/dist/assets/PdfMarkdownPlugin-Bq88XT4G.js +0 -409
- package/src/ui/dist/assets/PdfViewerPlugin-CsCXMo9S.js +0 -3095
- package/src/ui/dist/assets/PdfViewerPlugin-DQ11QcSf.css +0 -3627
- package/src/ui/dist/assets/SearchPlugin-DDMrGDkh.css +0 -379
- package/src/ui/dist/assets/SearchPlugin-oUPvy19k.js +0 -741
- package/src/ui/dist/assets/TextViewerPlugin-CRkT9yNy.js +0 -472
- package/src/ui/dist/assets/VNCViewer-BgbuvWhR.js +0 -18821
- package/src/ui/dist/assets/awareness-C0NPR2Dj.js +0 -292
- package/src/ui/dist/assets/bot-v_RASACv.js +0 -21
- package/src/ui/dist/assets/browser-BAcuE0Xj.js +0 -2895
- package/src/ui/dist/assets/code-5hC9d0VH.js +0 -17
- package/src/ui/dist/assets/file-content-D1PxfOrp.js +0 -377
- package/src/ui/dist/assets/file-diff-panel-DG1oT_Hj.js +0 -92
- package/src/ui/dist/assets/file-jump-queue-r5XKgJEV.js +0 -16
- package/src/ui/dist/assets/file-socket-BmdFYQlk.js +0 -58
- package/src/ui/dist/assets/function-B5QZkkHC.js +0 -1895
- package/src/ui/dist/assets/image-Dqe2X2tW.js +0 -18
- package/src/ui/dist/assets/index-BQG-1s2o.css +0 -12553
- package/src/ui/dist/assets/index-DVsMKK_y.js +0 -25
- package/src/ui/dist/assets/index-Duvz8Ip0.js +0 -159
- package/src/ui/dist/assets/index-Nt9hS4ck.js +0 -244829
- package/src/ui/dist/assets/index-RDlNXXx1.js +0 -120
- package/src/ui/dist/assets/monaco-DIXge1CP.js +0 -623
- package/src/ui/dist/assets/pdf-effect-queue-BBTTQaO-.js +0 -47
- package/src/ui/dist/assets/pdf_viewer-e0g1is2C.js +0 -8206
- package/src/ui/dist/assets/popover-BWlolyxo.js +0 -476
- package/src/ui/dist/assets/project-sync-BM5PkFH4.js +0 -297
- package/src/ui/dist/assets/select-D4dAtrA8.js +0 -1690
- package/src/ui/dist/assets/sigma-CKbE5jJT.js +0 -22
- package/src/ui/dist/assets/square-check-big-CZNGMgiB.js +0 -17
- package/src/ui/dist/assets/trash-DaB37xAz.js +0 -32
- package/src/ui/dist/assets/useCliAccess-C2OmAcWe.js +0 -957
- package/src/ui/dist/assets/useFileDiffOverlay-Dowd1Ij4.js +0 -53
- package/src/ui/dist/assets/wrap-text-BGjAhAUq.js +0 -35
- package/src/ui/dist/assets/yjs-DncrqiZ8.js +0 -11243
- package/src/ui/dist/assets/zoom-out-dMZQMXzc.js +0 -34
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
# 20 Workspace Modes Guide: Copilot vs Autonomous
|
|
2
|
+
|
|
3
|
+
This page explains the two normal project-start modes in DeepScientist:
|
|
4
|
+
|
|
5
|
+
- `Copilot`
|
|
6
|
+
- `Autonomous`
|
|
7
|
+
|
|
8
|
+
Use this when:
|
|
9
|
+
|
|
10
|
+
- you are about to create a new project
|
|
11
|
+
- you are unsure which launch mode to choose
|
|
12
|
+
- you want to understand why one project waits for you while another starts moving immediately
|
|
13
|
+
|
|
14
|
+
If you only want the shortest install-and-launch path, read [00 Quick Start](./00_QUICK_START.md) first.
|
|
15
|
+
|
|
16
|
+
If you want the exact startup payload and form field contract, read [02 Start Research Guide](./02_START_RESEARCH_GUIDE.md) after this page.
|
|
17
|
+
|
|
18
|
+
## 1. One-sentence summary
|
|
19
|
+
|
|
20
|
+
- `Copilot`: quiet start, user-directed, stops after the current requested unit unless you ask it to continue
|
|
21
|
+
- `Autonomous`: standard DeepScientist, keeps pushing the quest forward on its own
|
|
22
|
+
|
|
23
|
+
## 2. Where You Choose This
|
|
24
|
+
|
|
25
|
+
On the home / projects surface, start a new project and then choose the start style:
|
|
26
|
+
|
|
27
|
+
- `Copilot Mode`
|
|
28
|
+
- `Autonomous Mode`
|
|
29
|
+
|
|
30
|
+
Current UI wording may appear in two layers:
|
|
31
|
+
|
|
32
|
+
- outer launcher step: `Start Research` or `Start Experiment`
|
|
33
|
+
- mode picker title: `Choose the start style`
|
|
34
|
+
|
|
35
|
+
After that choice, the two flows diverge.
|
|
36
|
+
|
|
37
|
+
## 3. Copilot Mode
|
|
38
|
+
|
|
39
|
+
### 3.1 What it is
|
|
40
|
+
|
|
41
|
+
Copilot mode is the user-directed workspace.
|
|
42
|
+
|
|
43
|
+
It is for cases where you want DeepScientist to help actively, but you still want to steer each unit of work:
|
|
44
|
+
|
|
45
|
+
- inspect a repo
|
|
46
|
+
- read a paper
|
|
47
|
+
- debug code
|
|
48
|
+
- design an experiment
|
|
49
|
+
- check a running process
|
|
50
|
+
- rewrite a section
|
|
51
|
+
- summarize a result
|
|
52
|
+
|
|
53
|
+
The system should not assume that one request means “run the whole autonomous research loop”.
|
|
54
|
+
|
|
55
|
+
### 3.2 What happens after creation
|
|
56
|
+
|
|
57
|
+
After you create a Copilot project:
|
|
58
|
+
|
|
59
|
+
- the project is created
|
|
60
|
+
- the quest stays idle
|
|
61
|
+
- the agent waits for your first real instruction
|
|
62
|
+
|
|
63
|
+
In practical terms:
|
|
64
|
+
|
|
65
|
+
- there is no immediate autonomous launch
|
|
66
|
+
- no baseline / experiment / writing loop starts just because the project exists
|
|
67
|
+
- the first substantial action begins when you send the first message
|
|
68
|
+
|
|
69
|
+
### 3.3 Continuation behavior
|
|
70
|
+
|
|
71
|
+
Copilot mode is intentionally conservative about continuation.
|
|
72
|
+
|
|
73
|
+
After the current requested unit is complete, DeepScientist should normally:
|
|
74
|
+
|
|
75
|
+
- summarize what changed
|
|
76
|
+
- preserve context durably
|
|
77
|
+
- wait for your next message or `/resume`
|
|
78
|
+
|
|
79
|
+
This is the right mode when you want:
|
|
80
|
+
|
|
81
|
+
- tight human control
|
|
82
|
+
- short request-scoped help
|
|
83
|
+
- less background churn
|
|
84
|
+
- clearer handoff points
|
|
85
|
+
|
|
86
|
+
### 3.4 Good fit
|
|
87
|
+
|
|
88
|
+
Choose `Copilot` when:
|
|
89
|
+
|
|
90
|
+
- you want to inspect before launching expensive work
|
|
91
|
+
- the task is still ambiguous
|
|
92
|
+
- you expect to iterate interactively
|
|
93
|
+
- you want DeepScientist to behave more like a strong research IDE partner than a long-running autonomous operator
|
|
94
|
+
|
|
95
|
+
### 3.5 Bad fit
|
|
96
|
+
|
|
97
|
+
Avoid `Copilot` when:
|
|
98
|
+
|
|
99
|
+
- you already know the quest should keep running for hours
|
|
100
|
+
- you want detached experiments, monitoring, and follow-up routing without repeated user nudges
|
|
101
|
+
- the goal is full quest ownership, not request-by-request collaboration
|
|
102
|
+
|
|
103
|
+
## 4. Autonomous Mode
|
|
104
|
+
|
|
105
|
+
### 4.1 What it is
|
|
106
|
+
|
|
107
|
+
Autonomous mode is the standard DeepScientist path.
|
|
108
|
+
|
|
109
|
+
It is meant for quests where the system should keep making ordinary route choices on its own and continue until the next real checkpoint is reached.
|
|
110
|
+
|
|
111
|
+
This is the right mode for:
|
|
112
|
+
|
|
113
|
+
- baseline establishment
|
|
114
|
+
- long experiments
|
|
115
|
+
- analysis campaigns
|
|
116
|
+
- durable writing / finalize loops
|
|
117
|
+
- connector-facing project progress over time
|
|
118
|
+
|
|
119
|
+
### 4.2 What happens after creation
|
|
120
|
+
|
|
121
|
+
After you create an Autonomous project:
|
|
122
|
+
|
|
123
|
+
- the quest is created
|
|
124
|
+
- the first turn is launched immediately
|
|
125
|
+
- the system begins turning the startup contract into real work
|
|
126
|
+
|
|
127
|
+
This may mean:
|
|
128
|
+
|
|
129
|
+
- reading the baseline and references
|
|
130
|
+
- checking environment and constraints
|
|
131
|
+
- preparing scripts
|
|
132
|
+
- selecting the next route
|
|
133
|
+
- launching detached `bash_exec` work
|
|
134
|
+
|
|
135
|
+
### 4.3 Continuation behavior
|
|
136
|
+
|
|
137
|
+
Autonomous mode has two practical continuation regimes.
|
|
138
|
+
|
|
139
|
+
#### A. No real long-running external task yet
|
|
140
|
+
|
|
141
|
+
If no real long-running external task exists yet, DeepScientist should not park.
|
|
142
|
+
|
|
143
|
+
It should keep using the next turns to:
|
|
144
|
+
|
|
145
|
+
- prepare the real task
|
|
146
|
+
- launch the real task
|
|
147
|
+
- or make a durable route decision about what the real next task must be
|
|
148
|
+
|
|
149
|
+
This is the “active preparation / launch” phase.
|
|
150
|
+
|
|
151
|
+
#### B. A real long-running external task is already active
|
|
152
|
+
|
|
153
|
+
Once a real detached task is already running, continuation changes shape.
|
|
154
|
+
|
|
155
|
+
At that point, DeepScientist should not busy-loop through rapid model turns just to imitate continuous execution.
|
|
156
|
+
|
|
157
|
+
Instead:
|
|
158
|
+
|
|
159
|
+
- the real work should remain alive in detached `bash_exec` sessions or the runtime process they launched
|
|
160
|
+
- agent turns become lower-frequency monitoring / synthesis passes
|
|
161
|
+
- the current default monitoring cadence is roughly every `240` seconds
|
|
162
|
+
|
|
163
|
+
This is the “background progress monitoring” phase.
|
|
164
|
+
|
|
165
|
+
### 4.4 Good fit
|
|
166
|
+
|
|
167
|
+
Choose `Autonomous` when:
|
|
168
|
+
|
|
169
|
+
- the quest should keep moving on its own
|
|
170
|
+
- you expect real long-running experiment or analysis work
|
|
171
|
+
- you want DeepScientist to keep routing after milestones
|
|
172
|
+
- you want the standard research-operating-system behavior
|
|
173
|
+
|
|
174
|
+
### 4.5 Bad fit
|
|
175
|
+
|
|
176
|
+
Avoid `Autonomous` when:
|
|
177
|
+
|
|
178
|
+
- you only want a quiet project shell first
|
|
179
|
+
- you want to inspect the repo manually before any real movement
|
|
180
|
+
- you want every next unit to be explicitly user-directed
|
|
181
|
+
|
|
182
|
+
## 5. The Most Important Practical Difference
|
|
183
|
+
|
|
184
|
+
The easiest way to remember the split is:
|
|
185
|
+
|
|
186
|
+
- `Copilot` asks: “What single useful unit should I help with right now?”
|
|
187
|
+
- `Autonomous` asks: “What is the next real quest step, and how do I keep the quest moving?”
|
|
188
|
+
|
|
189
|
+
That difference matters more than the labels themselves.
|
|
190
|
+
|
|
191
|
+
## 6. How Resume Works
|
|
192
|
+
|
|
193
|
+
Both modes preserve context durably, but they resume differently.
|
|
194
|
+
|
|
195
|
+
On later turns, DeepScientist now carries a compact resume spine that can include:
|
|
196
|
+
|
|
197
|
+
- the latest durable user message
|
|
198
|
+
- the latest assistant checkpoint
|
|
199
|
+
- the latest run summary
|
|
200
|
+
- recent memory cues
|
|
201
|
+
- current `bash_exec` state
|
|
202
|
+
|
|
203
|
+
But the continuation policy still differs:
|
|
204
|
+
|
|
205
|
+
- `Copilot`: resume only when you speak again or explicitly resume
|
|
206
|
+
- `Autonomous`: keep going unless a real blocker or explicit waiting state applies
|
|
207
|
+
|
|
208
|
+
## 7. Choosing Quickly
|
|
209
|
+
|
|
210
|
+
Use this fast rule:
|
|
211
|
+
|
|
212
|
+
1. If you want the project to wait quietly until you tell it what to do, choose `Copilot`.
|
|
213
|
+
2. If you want DeepScientist to begin turning the quest contract into real work immediately, choose `Autonomous`.
|
|
214
|
+
3. If you are unsure, start with `Copilot`; you can still move into longer-running work once the route is clearer.
|
|
215
|
+
|
|
216
|
+
## 8. Common Misunderstandings
|
|
217
|
+
|
|
218
|
+
### “Autonomous means it should always spin rapidly”
|
|
219
|
+
|
|
220
|
+
No.
|
|
221
|
+
|
|
222
|
+
Autonomous means the quest should keep moving.
|
|
223
|
+
|
|
224
|
+
When there is no real long-running task yet, that can mean rapid preparation / launch turns.
|
|
225
|
+
When a real long-running task is already active, it should usually mean lower-frequency monitoring, not constant model churn.
|
|
226
|
+
|
|
227
|
+
### “Copilot means it cannot run experiments”
|
|
228
|
+
|
|
229
|
+
Also no.
|
|
230
|
+
|
|
231
|
+
Copilot can still help launch, inspect, analyze, and write.
|
|
232
|
+
The difference is that it should not assume long autonomous continuation unless you ask for it.
|
|
233
|
+
|
|
234
|
+
### “The two modes only change wording”
|
|
235
|
+
|
|
236
|
+
No.
|
|
237
|
+
|
|
238
|
+
They affect:
|
|
239
|
+
|
|
240
|
+
- initial launch behavior
|
|
241
|
+
- continuation policy
|
|
242
|
+
- when the quest parks
|
|
243
|
+
- how much autonomous routing is appropriate
|
|
244
|
+
|
|
245
|
+
## 9. Related Docs
|
|
246
|
+
|
|
247
|
+
- [00 Quick Start](./00_QUICK_START.md)
|
|
248
|
+
- [02 Start Research Guide](./02_START_RESEARCH_GUIDE.md)
|
|
249
|
+
- [12 Guided Workflow Tour](./12_GUIDED_WORKFLOW_TOUR.md)
|
|
250
|
+
- [14 Prompt, Skills, and MCP Guide](./14_PROMPT_SKILLS_AND_MCP_GUIDE.md)
|
package/docs/en/README.md
CHANGED
|
@@ -4,6 +4,8 @@ DeepScientist is not just a long-running autonomous scientific discovery system.
|
|
|
4
4
|
|
|
5
5
|
2 minutes to install. 2 minutes to bind Weixin. 2 minutes to launch. Extremely fast and easy to use.
|
|
6
6
|
|
|
7
|
+
Local Web access now starts without a password gate by default. If you want a generated 16-character browser password for one launch, run `ds --auth true`; DeepScientist then prints the password in the terminal and the browser can reuse the stored login after the first successful entry.
|
|
8
|
+
|
|
7
9
|
It is also a workshop-style collaboration environment: let it keep moving autonomously, or step in anytime to collaborate, edit code, run the terminal yourself, or keep notes and plans in a Notion-style workspace.
|
|
8
10
|
|
|
9
11
|
Use DeepScientist anywhere: on the server through TUI, in the browser through Web, on the phone through Weixin or QQ, and even on glasses through Rokid Glasses.
|
|
@@ -30,6 +32,10 @@ This page is the shortest path to the right document.
|
|
|
30
32
|
|
|
31
33
|
- [00 Quick Start](./00_QUICK_START.md)
|
|
32
34
|
Start here if you want to install DeepScientist, launch it locally, and create your first project.
|
|
35
|
+
- [20 Workspace Modes Guide](./20_WORKSPACE_MODES_GUIDE.md)
|
|
36
|
+
Read this if you want to choose correctly between Copilot and Autonomous before creating a project.
|
|
37
|
+
- [19 Local Browser Auth](./19_LOCAL_BROWSER_AUTH.md)
|
|
38
|
+
Read this if you want to understand the local password prompt, where to find the password, and how to disable it.
|
|
33
39
|
- [05 TUI Guide](./05_TUI_GUIDE.md)
|
|
34
40
|
Read this if your main surface is the terminal and you want one end-to-end path through `ds --tui`, quests, connectors, and cross-surface work.
|
|
35
41
|
- [15 Codex Provider Setup](./15_CODEX_PROVIDER_SETUP.md)
|
|
@@ -43,6 +49,8 @@ This page is the shortest path to the right document.
|
|
|
43
49
|
|
|
44
50
|
- [02 Start Research Guide](./02_START_RESEARCH_GUIDE.md)
|
|
45
51
|
Explains the current frontend fields, derived contract fields, and practical examples.
|
|
52
|
+
- [20 Workspace Modes Guide](./20_WORKSPACE_MODES_GUIDE.md)
|
|
53
|
+
Use this when the main question is not “how do I fill the form?” but “should this project start as Copilot or Autonomous?”.
|
|
46
54
|
- [01 Settings Reference](./01_SETTINGS_REFERENCE.md)
|
|
47
55
|
Use this when you need to configure runners, connectors, runtime defaults, or home paths.
|
|
48
56
|
- [11 License And Risk Notice](./11_LICENSE_AND_RISK.md)
|
|
@@ -50,6 +58,12 @@ This page is the shortest path to the right document.
|
|
|
50
58
|
|
|
51
59
|
## If you want to collaborate through external surfaces
|
|
52
60
|
|
|
61
|
+
- [16 Telegram Connector Guide](./16_TELEGRAM_CONNECTOR_GUIDE.md)
|
|
62
|
+
Bind Telegram through the built-in polling runtime and continue quests from bot chats.
|
|
63
|
+
- [17 WhatsApp Connector Guide](./17_WHATSAPP_CONNECTOR_GUIDE.md)
|
|
64
|
+
Bind WhatsApp through the local-session runtime and continue quests from local chat sessions.
|
|
65
|
+
- [18 Feishu Connector Guide](./18_FEISHU_CONNECTOR_GUIDE.md)
|
|
66
|
+
Bind Feishu through the built-in long-connection runtime and continue quests from bot chats.
|
|
53
67
|
- [10 Weixin Connector Guide](./10_WEIXIN_CONNECTOR_GUIDE.md)
|
|
54
68
|
Bind personal WeChat through DeepScientist's built-in QR login and iLink runtime.
|
|
55
69
|
- [03 QQ Connector Guide](./03_QQ_CONNECTOR_GUIDE.md)
|
|
@@ -67,6 +81,8 @@ This page is the shortest path to the right document.
|
|
|
67
81
|
Explains how the daemon, workspace, canvas, and connector views fit together.
|
|
68
82
|
- [07 Memory and MCP](./07_MEMORY_AND_MCP.md)
|
|
69
83
|
Explains memory, artifacts, and built-in MCP behavior.
|
|
84
|
+
- [19 External Controller Guide](./19_EXTERNAL_CONTROLLER_GUIDE.md)
|
|
85
|
+
Shows how to build optional outer-orchestration guards on top of mailbox and `quest_control` without patching core runtime code.
|
|
70
86
|
|
|
71
87
|
## If something is broken
|
|
72
88
|
|
|
@@ -83,3 +99,11 @@ This page is the shortest path to the right document.
|
|
|
83
99
|
High-level system contracts and repository structure.
|
|
84
100
|
- [91 Development](./91_DEVELOPMENT.md)
|
|
85
101
|
Maintainer-facing workflow and implementation notes.
|
|
102
|
+
|
|
103
|
+
## Community
|
|
104
|
+
|
|
105
|
+
Welcome to join the WeChat group for discussion.
|
|
106
|
+
|
|
107
|
+
<p align="center">
|
|
108
|
+
<img src="../../assets/readme/wechat.jpg" alt="DeepScientist WeChat group" width="360" />
|
|
109
|
+
</p>
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
|
|
14
14
|
本文中的截图直接使用当前在线页面 `deepscientist.cc:20999` 作为示例。你本地运行后的页面 `127.0.0.1:20999` 通常会与它保持一致或非常接近。
|
|
15
15
|
|
|
16
|
-
当前平台支持:DeepScientist
|
|
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
|
|
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
|
|
|
@@ -409,8 +442,8 @@ codex:
|
|
|
409
442
|
profile: ""
|
|
410
443
|
model: gpt-5.4
|
|
411
444
|
model_reasoning_effort: xhigh
|
|
412
|
-
approval_policy:
|
|
413
|
-
sandbox_mode:
|
|
445
|
+
approval_policy: never
|
|
446
|
+
sandbox_mode: danger-full-access
|
|
414
447
|
retry_on_failure: true
|
|
415
448
|
retry_max_attempts: 5
|
|
416
449
|
retry_initial_backoff_sec: 1.0
|
|
@@ -488,19 +521,35 @@ claude:
|
|
|
488
521
|
**`approval_policy`**
|
|
489
522
|
|
|
490
523
|
- 类型:`string`
|
|
491
|
-
- 默认值:`
|
|
524
|
+
- 默认值:`never`
|
|
492
525
|
- 页面标签:`Approval policy`
|
|
493
526
|
- 允许值:`never`、`on-failure`、`on-request`、`untrusted`
|
|
494
527
|
- 作用:控制高权限动作如何申请许可。
|
|
528
|
+
- 运行说明:launcher 现在默认以 YOLO 模式启动 Codex。若要临时关闭,可显式传 `ds --yolo false`,这会恢复到 `approval_policy=on-request` 与 `sandbox_mode=workspace-write`。
|
|
495
529
|
|
|
496
530
|
**`sandbox_mode`**
|
|
497
531
|
|
|
498
532
|
- 类型:`string`
|
|
499
|
-
- 默认值:`
|
|
533
|
+
- 默认值:`danger-full-access`
|
|
500
534
|
- 页面标签:`Sandbox mode`
|
|
501
535
|
- 允许值:`read-only`、`workspace-write`、`danger-full-access`
|
|
502
536
|
- 作用:控制 runner 的文件系统/进程访问权限。
|
|
503
537
|
|
|
538
|
+
**`env`**
|
|
539
|
+
|
|
540
|
+
- 类型:`mapping<string, string>`
|
|
541
|
+
- 默认值:`{}`
|
|
542
|
+
- 页面入口:
|
|
543
|
+
- 全局设置:可在 `runners` 结构化表单中直接编辑 `env`
|
|
544
|
+
- 项目设置:`Project settings -> Codex environment`
|
|
545
|
+
- 项目设置行为:
|
|
546
|
+
- 点击 `Add` 新增一行环境变量
|
|
547
|
+
- 默认会显示 `OPENAI_BASE_URL` 和 `OPENAI_API_KEY`
|
|
548
|
+
- 修改后不会自动保存,需要手动点击 `Save env vars`
|
|
549
|
+
- 空值会被忽略,不会注入到 Codex 进程
|
|
550
|
+
- 作用:DeepScientist 启动 Codex run 时,额外传入给 Codex 的环境变量。
|
|
551
|
+
- 常见用途:需要 API Key 或自定义 Base URL 的 provider-backed Codex 配置。
|
|
552
|
+
|
|
504
553
|
**`retry_on_failure`**
|
|
505
554
|
|
|
506
555
|
- 类型:`boolean`
|
|
@@ -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`**
|
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
- 在 QQ 中使用 `/new`、`/use latest`、`/status` 等命令
|
|
21
21
|
- 在 `Settings` 页面看到自动检测到的 `openid`
|
|
22
22
|
- 从 `Settings` 页面执行非破坏性的连接测试
|
|
23
|
+
- 当 QQ 绑定到 quest 时,在每次主实验完成后自动收到按指标生成的时间线图片
|
|
23
24
|
|
|
24
25
|
### 部署前检查清单
|
|
25
26
|
|
|
@@ -221,6 +222,24 @@ QQ readiness is healthy, but no OpenID has been learned yet. Save credentials, t
|
|
|
221
222
|
- 再次点击“发送测试消息”时,不再提示 target 为空
|
|
222
223
|
- 如果当前已经有最新项目,普通文本会自动进入该项目;如果还没有项目,则优先返回帮助信息
|
|
223
224
|
|
|
225
|
+
## 5.3 主实验指标图自动推送
|
|
226
|
+
|
|
227
|
+
当 QQ 是当前 quest 的绑定连接器时,DeepScientist 现在会在每次主实验完成后自动发送指标时间线图片。
|
|
228
|
+
|
|
229
|
+
当前行为:
|
|
230
|
+
|
|
231
|
+
- 每个指标生成一张图
|
|
232
|
+
- 如果 baseline 存在该指标,会画一条横向虚线作为 baseline 参考线
|
|
233
|
+
- 系统会自动判断该指标是“越高越好”还是“越低越好”
|
|
234
|
+
- 超过 baseline 的点会额外标星
|
|
235
|
+
- 最新点使用莫兰迪深红色填充
|
|
236
|
+
- 较早的点使用莫兰迪深蓝色填充
|
|
237
|
+
- 如果指标有多个,DeepScientist 会按顺序发送,并在相邻两张图之间间隔约 2 秒
|
|
238
|
+
|
|
239
|
+
这些图来自 quest 本地生成的文件,并会作为 QQ 原生图片自动发送。
|
|
240
|
+
|
|
241
|
+
如果你想关闭这项自动推送,可以在 QQ 连接器配置中关闭 `auto_send_main_experiment_png`。
|
|
242
|
+
|
|
224
243
|
### 5.2 报错提示速查
|
|
225
244
|
|
|
226
245
|
| 提示 | 代表什么 | 应该怎么做 |
|
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`。
|