reasonix 0.36.2 → 0.38.0
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 +48 -75
- package/README.zh-CN.md +48 -32
- package/dist/cli/{chat-QSM6JKUA.js → chat-FPEYKTMI.js} +16 -17
- package/dist/cli/{chunk-T52GAWPP.js → chunk-3VTV4WAH.js} +2 -2
- package/dist/cli/{chunk-NHV5YGTB.js → chunk-4PNXH2MH.js} +1860 -1249
- package/dist/cli/chunk-4PNXH2MH.js.map +1 -0
- package/dist/cli/{chunk-DFP4YSVM.js → chunk-6CXT5JRM.js} +17 -2
- package/dist/cli/{chunk-DFP4YSVM.js.map → chunk-6CXT5JRM.js.map} +1 -1
- package/dist/cli/{chunk-G3XNWSFN.js → chunk-6NMWJSES.js} +2 -2
- package/dist/cli/{chunk-4D6TT2IB.js → chunk-A63QT566.js} +36 -15
- package/dist/cli/chunk-A63QT566.js.map +1 -0
- package/dist/cli/{chunk-4Q3GRJIU.js → chunk-AATCLE5N.js} +2 -2
- package/dist/cli/{chunk-BHLHOS5Y.js → chunk-BW2HWSYH.js} +315 -5
- package/dist/cli/chunk-BW2HWSYH.js.map +1 -0
- package/dist/cli/{chunk-ZJR4QLXB.js → chunk-FB46F6H4.js} +2 -2
- package/dist/cli/{chunk-MLXUGPJE.js → chunk-FYKZB6TX.js} +490 -8
- package/dist/cli/chunk-FYKZB6TX.js.map +1 -0
- package/dist/cli/{chunk-XQIFIB3U.js → chunk-JOFZ6AW5.js} +2 -2
- package/dist/cli/{chunk-IPCPEZWQ.js → chunk-LMNAMITH.js} +2 -2
- package/dist/cli/{chunk-S4GF3HPO.js → chunk-LY352GTC.js} +6 -4
- package/dist/cli/chunk-LY352GTC.js.map +1 -0
- package/dist/cli/{chunk-C5543CRX.js → chunk-NYP2DDDV.js} +41 -2
- package/dist/cli/chunk-NYP2DDDV.js.map +1 -0
- package/dist/cli/{chunk-BJ376EN3.js → chunk-T5U5JO7Q.js} +12 -9
- package/dist/cli/chunk-T5U5JO7Q.js.map +1 -0
- package/dist/cli/{chunk-K6W64QVE.js → chunk-XOIDSPMQ.js} +27 -7
- package/dist/cli/chunk-XOIDSPMQ.js.map +1 -0
- package/dist/cli/{chunk-RNSZYYGB.js → chunk-YJKLNYCP.js} +122 -33
- package/dist/cli/chunk-YJKLNYCP.js.map +1 -0
- package/dist/cli/{code-6C5A2CY3.js → code-GTE65OUT.js} +28 -21
- package/dist/cli/code-GTE65OUT.js.map +1 -0
- package/dist/cli/{commands-FE2UDFBC.js → commands-R4JWISND.js} +3 -4
- package/dist/cli/{commands-FE2UDFBC.js.map → commands-R4JWISND.js.map} +1 -1
- package/dist/cli/{commit-3IAGB22T.js → commit-TQ4DMUNS.js} +2 -3
- package/dist/cli/{commit-3IAGB22T.js.map → commit-TQ4DMUNS.js.map} +1 -1
- package/dist/cli/{doctor-DKD34EFD.js → doctor-GGK2JKTA.js} +7 -8
- package/dist/cli/{events-P27CX7LN.js → events-SQXPVV7B.js} +3 -3
- package/dist/cli/index.js +38 -37
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/{mcp-2RDEQST6.js → mcp-M7I23TQ7.js} +2 -3
- package/dist/cli/{mcp-2RDEQST6.js.map → mcp-M7I23TQ7.js.map} +1 -1
- package/dist/cli/{mcp-browse-VM5GLRBQ.js → mcp-browse-TWO7RYT4.js} +2 -3
- package/dist/cli/{mcp-browse-VM5GLRBQ.js.map → mcp-browse-TWO7RYT4.js.map} +1 -1
- package/dist/cli/prompt-ODPFOKSH.js +13 -0
- package/dist/cli/{prune-sessions-ERL6B4G5.js → prune-sessions-FCFOYCBP.js} +2 -2
- package/dist/cli/{replay-D7RT2DR7.js → replay-R3QRXPI2.js} +13 -9
- package/dist/cli/replay-R3QRXPI2.js.map +1 -0
- package/dist/cli/{run-AG4Y45X7.js → run-WGSPYYOJ.js} +9 -10
- package/dist/cli/{run-AG4Y45X7.js.map → run-WGSPYYOJ.js.map} +1 -1
- package/dist/cli/{server-GNHR5K3N.js → server-IZPWQYG3.js} +98 -53
- package/dist/cli/{server-GNHR5K3N.js.map → server-IZPWQYG3.js.map} +1 -1
- package/dist/cli/{sessions-MHRF3GU4.js → sessions-E4UH5JYL.js} +9 -10
- package/dist/cli/{sessions-MHRF3GU4.js.map → sessions-E4UH5JYL.js.map} +1 -1
- package/dist/cli/{setup-IIAJXHP4.js → setup-FTZNN3TZ.js} +60 -15
- package/dist/cli/setup-FTZNN3TZ.js.map +1 -0
- package/dist/cli/{version-7AL4JZ63.js → version-MDVCFTKA.js} +9 -10
- package/dist/cli/{version-7AL4JZ63.js.map → version-MDVCFTKA.js.map} +1 -1
- package/dist/index.d.ts +9 -2
- package/dist/index.js +714 -54
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/cli/chunk-4D6TT2IB.js.map +0 -1
- package/dist/cli/chunk-BHLHOS5Y.js.map +0 -1
- package/dist/cli/chunk-BJ376EN3.js.map +0 -1
- package/dist/cli/chunk-C5543CRX.js.map +0 -1
- package/dist/cli/chunk-K6W64QVE.js.map +0 -1
- package/dist/cli/chunk-MLXUGPJE.js.map +0 -1
- package/dist/cli/chunk-NHV5YGTB.js.map +0 -1
- package/dist/cli/chunk-RNSZYYGB.js.map +0 -1
- package/dist/cli/chunk-S4GF3HPO.js.map +0 -1
- package/dist/cli/chunk-WUI3P4RA.js +0 -319
- package/dist/cli/chunk-WUI3P4RA.js.map +0 -1
- package/dist/cli/code-6C5A2CY3.js.map +0 -1
- package/dist/cli/prompt-QSEB7HNQ.js +0 -11
- package/dist/cli/replay-D7RT2DR7.js.map +0 -1
- package/dist/cli/setup-IIAJXHP4.js.map +0 -1
- /package/dist/cli/{chat-QSM6JKUA.js.map → chat-FPEYKTMI.js.map} +0 -0
- /package/dist/cli/{chunk-T52GAWPP.js.map → chunk-3VTV4WAH.js.map} +0 -0
- /package/dist/cli/{chunk-G3XNWSFN.js.map → chunk-6NMWJSES.js.map} +0 -0
- /package/dist/cli/{chunk-4Q3GRJIU.js.map → chunk-AATCLE5N.js.map} +0 -0
- /package/dist/cli/{chunk-ZJR4QLXB.js.map → chunk-FB46F6H4.js.map} +0 -0
- /package/dist/cli/{chunk-XQIFIB3U.js.map → chunk-JOFZ6AW5.js.map} +0 -0
- /package/dist/cli/{chunk-IPCPEZWQ.js.map → chunk-LMNAMITH.js.map} +0 -0
- /package/dist/cli/{doctor-DKD34EFD.js.map → doctor-GGK2JKTA.js.map} +0 -0
- /package/dist/cli/{events-P27CX7LN.js.map → events-SQXPVV7B.js.map} +0 -0
- /package/dist/cli/{prompt-QSEB7HNQ.js.map → prompt-ODPFOKSH.js.map} +0 -0
- /package/dist/cli/{prune-sessions-ERL6B4G5.js.map → prune-sessions-FCFOYCBP.js.map} +0 -0
package/README.md
CHANGED
|
@@ -9,6 +9,8 @@
|
|
|
9
9
|
·
|
|
10
10
|
<a href="https://esengine.github.io/DeepSeek-Reasonix/">Website</a>
|
|
11
11
|
·
|
|
12
|
+
<a href="https://esengine.github.io/DeepSeek-Reasonix/configuration.html">Guide</a>
|
|
13
|
+
·
|
|
12
14
|
<a href="./docs/ARCHITECTURE.md">Architecture</a>
|
|
13
15
|
·
|
|
14
16
|
<a href="./benchmarks/">Benchmarks</a>
|
|
@@ -46,49 +48,6 @@
|
|
|
46
48
|
|
|
47
49
|
<br/>
|
|
48
50
|
|
|
49
|
-
## Web search
|
|
50
|
-
|
|
51
|
-
Reasonix includes `web_search` and `web_fetch` tools. By default it uses **Mojeek** (no setup required). You can switch to a **self-hosted SearXNG** instance — a metasearch engine that aggregates whatever upstream engines your instance is configured for.
|
|
52
|
-
|
|
53
|
-
### Switching engines (persists to disk)
|
|
54
|
-
|
|
55
|
-
The `/search-engine` slash command (alias `/se`) writes your choice to `~/.reasonix/config.json` immediately — it survives restarts:
|
|
56
|
-
|
|
57
|
-
```
|
|
58
|
-
/search-engine mojeek # default, no external deps
|
|
59
|
-
/search-engine searxng # SearXNG at http://localhost:8080
|
|
60
|
-
/search-engine searxng http://192.168.1.100:8888 # custom endpoint
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
Equivalent `~/.reasonix/config.json`:
|
|
64
|
-
|
|
65
|
-
```json
|
|
66
|
-
{
|
|
67
|
-
"webSearchEngine": "searxng",
|
|
68
|
-
"webSearchEndpoint": "http://localhost:8080"
|
|
69
|
-
}
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
The tool picks up the change on the next call — no restart needed.
|
|
73
|
-
|
|
74
|
-
### Starting SearXNG
|
|
75
|
-
|
|
76
|
-
```sh
|
|
77
|
-
podman run -d --replace --name searxng -p 8080:8080 docker.io/searxng/searxng
|
|
78
|
-
# or: docker run -d -p 8080:8080 searxng/searxng
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
Verify it's running:
|
|
82
|
-
|
|
83
|
-
```sh
|
|
84
|
-
curl http://localhost:8080/search?q=test
|
|
85
|
-
# → HTML search results page
|
|
86
|
-
```
|
|
87
|
-
|
|
88
|
-
> **Note:** The endpoint must include the protocol (`http://`). `localhost:8080` alone will fail — the tool will show a clear error telling you to install SearXNG if the server is unreachable.
|
|
89
|
-
|
|
90
|
-
<br/>
|
|
91
|
-
|
|
92
51
|
## Install
|
|
93
52
|
|
|
94
53
|
```bash
|
|
@@ -96,55 +55,68 @@ cd my-project
|
|
|
96
55
|
npx reasonix code # paste a DeepSeek API key on first run; persists after
|
|
97
56
|
```
|
|
98
57
|
|
|
99
|
-
Requires Node ≥ 22.
|
|
58
|
+
Requires Node ≥ 22. Works on macOS · Linux · Windows (PowerShell · Git Bash · Windows Terminal). Grab a [DeepSeek API key →](https://platform.deepseek.com/api_keys) · `reasonix code --help` for flags.
|
|
100
59
|
|
|
101
|
-
`npx` is the recommended path — no global install, always
|
|
60
|
+
`npx` is the recommended path — no global install, always latest. If you use Reasonix daily and want it on `PATH`, run `reasonix update` once.
|
|
102
61
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
| Command | When to use |
|
|
62
|
+
| Command | When |
|
|
106
63
|
|---|---|
|
|
107
|
-
| `reasonix code [dir]` |
|
|
108
|
-
| `reasonix chat` | Plain chat — no filesystem
|
|
109
|
-
| `reasonix run "task"` | One-shot, streams
|
|
110
|
-
| `reasonix doctor` |
|
|
64
|
+
| `reasonix code [dir]` | The coding agent. **Start here.** |
|
|
65
|
+
| `reasonix chat` | Plain chat — no filesystem or shell tools. |
|
|
66
|
+
| `reasonix run "task"` | One-shot, streams to stdout. Good for pipes. |
|
|
67
|
+
| `reasonix doctor` | Health check: Node, API key, MCP wiring. |
|
|
111
68
|
| `reasonix update` | Upgrade Reasonix itself. |
|
|
112
69
|
|
|
113
|
-
Other subcommands (`replay` · `diff` · `events` · `stats` · `index` · `mcp` · `prune-sessions`) are
|
|
70
|
+
Other subcommands (`replay` · `diff` · `events` · `stats` · `index` · `mcp` · `prune-sessions`) are in `reasonix --help` and the [CLI reference](https://esengine.github.io/DeepSeek-Reasonix/#cli).
|
|
114
71
|
|
|
115
|
-
|
|
72
|
+
<details>
|
|
73
|
+
<summary><strong>Working in another folder · chat vs. code · author a skill</strong></summary>
|
|
116
74
|
|
|
117
|
-
|
|
75
|
+
**Working in a different folder.** Reasonix scopes filesystem tools to the launch directory; pass `--dir` to retarget. Mid-session switching isn't supported by design (memory paths would tangle with stale roots) — quit and relaunch.
|
|
118
76
|
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
| SEARCH/REPLACE edit blocks → `/apply` review | ✓ | — |
|
|
123
|
-
| Shell tool (with confirm gate, `/mode yolo` to skip) | ✓ | — |
|
|
124
|
-
| Plan mode · `submit_plan` · `/todo` · `/skill new` · `/mcp add` scaffolding | ✓ | — |
|
|
125
|
-
| Memory tools (`remember` / `recall_memory`) | project + global | global only |
|
|
126
|
-
| Web search · `ask_choice` · MCP servers from config | ✓ | ✓ |
|
|
127
|
-
| Coding-focused system prompt (SEARCH/REPLACE, repo etiquette) | ✓ | generic |
|
|
128
|
-
| Session scope | per-directory (`code-<basename>`) | shared default |
|
|
77
|
+
```bash
|
|
78
|
+
npx reasonix code --dir /path/to/project
|
|
79
|
+
```
|
|
129
80
|
|
|
130
|
-
`chat`
|
|
81
|
+
**Picking `chat` vs `code`.** `code` is the default and the only mode with filesystem / shell tools and SEARCH/REPLACE review. `chat` is the lighter, tools-off shell — reach for it when you want a thinking partner with MCP attached but no disk access.
|
|
131
82
|
|
|
132
|
-
|
|
83
|
+
| What you get | `code` | `chat` |
|
|
84
|
+
|---|---|---|
|
|
85
|
+
| Filesystem tools + `edit_file` | ✓ | — |
|
|
86
|
+
| SEARCH/REPLACE → `/apply` review | ✓ | — |
|
|
87
|
+
| Shell tool (gated) | ✓ | — |
|
|
88
|
+
| Plan mode · `/todo` · `/skill new` · `/mcp add` | ✓ | — |
|
|
89
|
+
| Memory (`remember` / `recall_memory`) | project + global | global only |
|
|
90
|
+
| MCP servers from config · web search · `ask_choice` | ✓ | ✓ |
|
|
91
|
+
| Coding system prompt | ✓ | generic |
|
|
92
|
+
| Session scope | per-directory | shared default |
|
|
93
|
+
|
|
94
|
+
**Author your first skill.** No remote registry — write them directly. Edit the file (`description:` frontmatter + body), then `/skill list`. Add `runAs: subagent` to spawn an isolated subagent loop instead of inlining the body.
|
|
133
95
|
|
|
134
96
|
```bash
|
|
135
|
-
|
|
97
|
+
/skill new my-skill # <project>/.reasonix/skills/my-skill.md
|
|
98
|
+
/skill new my-skill --global # ~/.reasonix/skills for cross-project use
|
|
136
99
|
```
|
|
137
100
|
|
|
138
|
-
|
|
101
|
+
</details>
|
|
139
102
|
|
|
140
|
-
|
|
103
|
+
<br/>
|
|
141
104
|
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
/
|
|
145
|
-
```
|
|
105
|
+
## Configuration
|
|
106
|
+
|
|
107
|
+
One JSON file at `~/.reasonix/config.json` plus per-project overrides under `<project>/.reasonix/`. The full bilingual reference — every key, every slash command, the on-disk shape of skills/memory/hooks — lives at:
|
|
146
108
|
|
|
147
|
-
|
|
109
|
+
> 📘 **[Configuration Guide](https://esengine.github.io/DeepSeek-Reasonix/configuration.html)** · [中文](https://esengine.github.io/DeepSeek-Reasonix/configuration.html?lang=zh)
|
|
110
|
+
|
|
111
|
+
| Topic | Quick read |
|
|
112
|
+
|---|---|
|
|
113
|
+
| [MCP servers](https://esengine.github.io/DeepSeek-Reasonix/configuration.html#mcp) | stdio · SSE · Streamable HTTP. One spec format works for both `config.json` and `--mcp`. |
|
|
114
|
+
| [Skills](https://esengine.github.io/DeepSeek-Reasonix/configuration.html#skills) | Markdown playbooks the model can invoke. `inline` or `subagent` mode. |
|
|
115
|
+
| [Memory](https://esengine.github.io/DeepSeek-Reasonix/configuration.html#memory) | User-private knowledge pinned into the prefix. `user` / `feedback` / `project` / `reference` types. |
|
|
116
|
+
| [Hooks](https://esengine.github.io/DeepSeek-Reasonix/configuration.html#hooks) | Shell commands on lifecycle events. `PreToolUse` (gating) · `PostToolUse` · `UserPromptSubmit` · `Stop`. |
|
|
117
|
+
| [Permissions](https://esengine.github.io/DeepSeek-Reasonix/configuration.html#permissions) | Per-workspace shell allowlist. Exact-prefix match. |
|
|
118
|
+
| [Web search](https://esengine.github.io/DeepSeek-Reasonix/configuration.html#search) | Mojeek by default; switch to self-hosted SearXNG with `/search-engine`. |
|
|
119
|
+
| [Semantic index](https://esengine.github.io/DeepSeek-Reasonix/configuration.html#index) | `reasonix index` — local Ollama or any OpenAI-compatible embedding endpoint. |
|
|
148
120
|
|
|
149
121
|
<br/>
|
|
150
122
|
|
|
@@ -190,6 +162,7 @@ For live cache-hit rates, costs, and methodology, see [`benchmarks/`](./benchmar
|
|
|
190
162
|
## Documentation
|
|
191
163
|
|
|
192
164
|
- [**Architecture**](./docs/ARCHITECTURE.md) — three pillars: cache-first loop, tool-call repair, cost control
|
|
165
|
+
- [**CLI Reference**](./docs/CLI-REFERENCE.md) — every shell subcommand, every slash command, every keybinding
|
|
193
166
|
- [**Benchmarks**](./benchmarks/) — τ-bench-lite harness, transcripts, cost methodology
|
|
194
167
|
- [**Website**](https://esengine.github.io/DeepSeek-Reasonix/) — getting started, dashboard mockup, TUI mockup
|
|
195
168
|
- [**Contributing**](./CONTRIBUTING.md) — comment policy, error-handling rules, library-over-hand-rolled
|
package/README.zh-CN.md
CHANGED
|
@@ -9,6 +9,8 @@
|
|
|
9
9
|
·
|
|
10
10
|
<a href="https://esengine.github.io/DeepSeek-Reasonix/">官方网站</a>
|
|
11
11
|
·
|
|
12
|
+
<a href="https://esengine.github.io/DeepSeek-Reasonix/configuration.html?lang=zh">配置指南</a>
|
|
13
|
+
·
|
|
12
14
|
<a href="./docs/ARCHITECTURE.md">架构文档</a>
|
|
13
15
|
·
|
|
14
16
|
<a href="./benchmarks/">基准测试</a>
|
|
@@ -50,55 +52,68 @@ cd my-project
|
|
|
50
52
|
npx reasonix code # 首次运行粘贴 DeepSeek API Key,之后会记住
|
|
51
53
|
```
|
|
52
54
|
|
|
53
|
-
要求 Node ≥ 22
|
|
54
|
-
|
|
55
|
-
`npx` 是推荐路径 —— 不用全局安装,每次都拿到最新版本。如果你天天用、想把 `reasonix` 装到 `PATH` 上,跑一次 `reasonix update` 就行,它会替你跑 `npm install -g`。
|
|
55
|
+
要求 Node ≥ 22。在 macOS · Linux · Windows(PowerShell · Git Bash · Windows Terminal)都跑得顺。[去拿 DeepSeek API Key →](https://platform.deepseek.com/api_keys) · 完整 flag 看 `reasonix code --help`。
|
|
56
56
|
|
|
57
|
-
|
|
57
|
+
`npx` 是推荐路径 —— 不用全局安装,每次都拿最新版。如果你天天用、想把 `reasonix` 装到 `PATH`,跑一次 `reasonix update`。
|
|
58
58
|
|
|
59
|
-
| 命令 |
|
|
59
|
+
| 命令 | 何时用 |
|
|
60
60
|
|---|---|
|
|
61
|
-
| `reasonix code [dir]` |
|
|
62
|
-
| `reasonix chat` | 纯聊天 ——
|
|
63
|
-
| `reasonix run "task"` |
|
|
64
|
-
| `reasonix doctor` |
|
|
61
|
+
| `reasonix code [dir]` | 编码 agent。**先用这个。** |
|
|
62
|
+
| `reasonix chat` | 纯聊天 —— 不挂文件系统 / shell 工具。 |
|
|
63
|
+
| `reasonix run "task"` | 一次性,结果流到 stdout。适合 shell 管道。 |
|
|
64
|
+
| `reasonix doctor` | 体检:Node 版本、API Key、MCP 接线。 |
|
|
65
65
|
| `reasonix update` | 升级 Reasonix 本身。 |
|
|
66
66
|
|
|
67
|
-
其他子命令(`replay` · `diff` · `events` · `stats` · `index` · `mcp` · `prune-sessions
|
|
67
|
+
其他子命令(`replay` · `diff` · `events` · `stats` · `index` · `mcp` · `prune-sessions`)在 `reasonix --help` 和 [CLI 参考](https://esengine.github.io/DeepSeek-Reasonix/#cli)。
|
|
68
68
|
|
|
69
|
-
|
|
69
|
+
<details>
|
|
70
|
+
<summary><strong>切换工作区 · chat vs. code · 写第一个 Skill</strong></summary>
|
|
70
71
|
|
|
71
|
-
|
|
72
|
+
**切换工作区。** Reasonix 把文件系统工具作用域绑定在启动目录,传 `--dir` 可以指别处。中途切换是有意不支持的(消息日志和 memory 路径会和旧根目录混在一起)—— 退出再启动。
|
|
72
73
|
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
| Plan 模式 · `submit_plan` · `/todo` · `/skill new` · `/mcp add` 脚手架 | ✓ | — |
|
|
79
|
-
| 记忆工具(`remember` / `recall_memory`) | 项目 + 全局 | 仅全局 |
|
|
80
|
-
| Web 搜索 · `ask_choice` · 从配置加载的 MCP 服务 | ✓ | ✓ |
|
|
81
|
-
| 编码导向系统提示词(SEARCH/REPLACE、仓库礼仪) | ✓ | 通用 |
|
|
82
|
-
| Session 作用域 | 按目录(`code-<basename>`) | 共享默认 |
|
|
74
|
+
```bash
|
|
75
|
+
npx reasonix code --dir /path/to/project
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
**`chat` 还是 `code`?** `code` 是默认入口、唯一带文件系统 / shell 工具和 SEARCH/REPLACE 审阅的模式。`chat` 是更轻量的纯对话壳——想要一个挂着 MCP 但没有磁盘权限的“思路助手”时用它。
|
|
83
79
|
|
|
84
|
-
`
|
|
80
|
+
| 你拿到什么 | `code` | `chat` |
|
|
81
|
+
|---|---|---|
|
|
82
|
+
| 文件系统工具 + `edit_file` | ✓ | — |
|
|
83
|
+
| SEARCH/REPLACE → `/apply` 审阅 | ✓ | — |
|
|
84
|
+
| Shell 工具(带 gate) | ✓ | — |
|
|
85
|
+
| Plan 模式 · `/todo` · `/skill new` · `/mcp add` | ✓ | — |
|
|
86
|
+
| Memory(`remember` / `recall_memory`) | 项目 + 全局 | 仅全局 |
|
|
87
|
+
| 配置里的 MCP · web 搜索 · `ask_choice` | ✓ | ✓ |
|
|
88
|
+
| 编码导向系统提示词 | ✓ | 通用 |
|
|
89
|
+
| Session 作用域 | 按目录 | 共享默认 |
|
|
85
90
|
|
|
86
|
-
|
|
91
|
+
**写第一个 Skill。** 暂无在线市场——自己写。编辑文件(`description:` frontmatter + 正文),然后 `/skill list` 就能看到。frontmatter 加 `runAs: subagent` 会以隔离 subagent 跑,而不是把正文内联进父 prompt。
|
|
87
92
|
|
|
88
93
|
```bash
|
|
89
|
-
|
|
94
|
+
/skill new my-skill # <project>/.reasonix/skills/my-skill.md
|
|
95
|
+
/skill new my-skill --global # ~/.reasonix/skills,跨项目共用
|
|
90
96
|
```
|
|
91
97
|
|
|
92
|
-
|
|
98
|
+
</details>
|
|
93
99
|
|
|
94
|
-
|
|
100
|
+
<br/>
|
|
95
101
|
|
|
96
|
-
|
|
97
|
-
/skill new my-skill # 在 <project>/.reasonix/skills/my-skill.md 生成模板
|
|
98
|
-
/skill new my-skill --global # 或者放到 ~/.reasonix/skills,跨项目共用
|
|
99
|
-
```
|
|
102
|
+
## 配置
|
|
100
103
|
|
|
101
|
-
|
|
104
|
+
一个全局 JSON 文件 `~/.reasonix/config.json`,加上项目级 `<project>/.reasonix/` 下的覆盖。完整的双语参考 —— 每一个 key、每一条斜杠命令、skills / memory / hooks 在磁盘上的形状 —— 都在这里:
|
|
105
|
+
|
|
106
|
+
> 📘 **[配置指南](https://esengine.github.io/DeepSeek-Reasonix/configuration.html?lang=zh)** · [English](https://esengine.github.io/DeepSeek-Reasonix/configuration.html)
|
|
107
|
+
|
|
108
|
+
| 主题 | 速读 |
|
|
109
|
+
|---|---|
|
|
110
|
+
| [MCP 服务器](https://esengine.github.io/DeepSeek-Reasonix/configuration.html?lang=zh#mcp) | stdio · SSE · Streamable HTTP。`config.json` 和 `--mcp` 共用同一种 spec 格式。 |
|
|
111
|
+
| [Skills](https://esengine.github.io/DeepSeek-Reasonix/configuration.html?lang=zh#skills) | 模型可以调用的 markdown 剧本。`inline` 或 `subagent` 两种模式。 |
|
|
112
|
+
| [Memory](https://esengine.github.io/DeepSeek-Reasonix/configuration.html?lang=zh#memory) | 用户私有的知识,钉进前缀。`user` / `feedback` / `project` / `reference` 四类。 |
|
|
113
|
+
| [Hooks](https://esengine.github.io/DeepSeek-Reasonix/configuration.html?lang=zh#hooks) | 生命周期事件触发的 shell 命令。`PreToolUse`(拦截)· `PostToolUse` · `UserPromptSubmit` · `Stop`。 |
|
|
114
|
+
| [权限](https://esengine.github.io/DeepSeek-Reasonix/configuration.html?lang=zh#permissions) | 按工作区的 shell 白名单,精确前缀匹配。 |
|
|
115
|
+
| [Web 搜索](https://esengine.github.io/DeepSeek-Reasonix/configuration.html?lang=zh#search) | 默认 Mojeek;用 `/search-engine` 可切到自托管的 SearXNG。 |
|
|
116
|
+
| [语义索引](https://esengine.github.io/DeepSeek-Reasonix/configuration.html?lang=zh#index) | `reasonix index` —— 本地 Ollama,或任何 OpenAI 兼容的 embedding 接口。 |
|
|
102
117
|
|
|
103
118
|
<br/>
|
|
104
119
|
|
|
@@ -142,6 +157,7 @@ npx reasonix code --dir /path/to/project # 也可以用相对路径
|
|
|
142
157
|
## 文档
|
|
143
158
|
|
|
144
159
|
- [**架构**](./docs/ARCHITECTURE.md) —— 四大支柱、缓存优先循环、思维提取、脚手架
|
|
160
|
+
- [**CLI 参考**](./docs/CLI-REFERENCE.md) —— 每个 shell 子命令、每个 slash 命令、每个快捷键
|
|
145
161
|
- [**基准测试**](./benchmarks/) —— τ-bench-lite harness、transcript、成本方法论
|
|
146
162
|
- [**官方网站**](https://esengine.github.io/DeepSeek-Reasonix/) —— 入门、Dashboard 设计稿、TUI 设计稿
|
|
147
163
|
- [**贡献指南**](./CONTRIBUTING.md) —— 注释规则、错误处理、用现成库不手写
|
|
@@ -1,42 +1,41 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
chatCommand
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-4PNXH2MH.js";
|
|
5
5
|
import "./chunk-BQNUJJN7.js";
|
|
6
6
|
import "./chunk-RFX7TYVV.js";
|
|
7
7
|
import "./chunk-MRLXEMZ7.js";
|
|
8
8
|
import "./chunk-CPOV2O73.js";
|
|
9
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-YJKLNYCP.js";
|
|
10
10
|
import "./chunk-UNMYFZPZ.js";
|
|
11
11
|
import "./chunk-XJLZ4HKU.js";
|
|
12
12
|
import "./chunk-XHQIK7B6.js";
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
15
|
-
import "./chunk-
|
|
13
|
+
import "./chunk-A63QT566.js";
|
|
14
|
+
import "./chunk-3VTV4WAH.js";
|
|
15
|
+
import "./chunk-FB46F6H4.js";
|
|
16
16
|
import "./chunk-MHDNZXJJ.js";
|
|
17
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-T5U5JO7Q.js";
|
|
18
18
|
import "./chunk-DAEAAVDF.js";
|
|
19
19
|
import "./chunk-KMWKGPFZ.js";
|
|
20
20
|
import "./chunk-3Q3C4W66.js";
|
|
21
21
|
import "./chunk-4DCHFFEY.js";
|
|
22
22
|
import "./chunk-WJ3YX4PZ.js";
|
|
23
|
-
import "./chunk-
|
|
23
|
+
import "./chunk-NYP2DDDV.js";
|
|
24
24
|
import "./chunk-SOZE7V7V.js";
|
|
25
|
-
import "./chunk-
|
|
26
|
-
import "./chunk-
|
|
27
|
-
import "./chunk-
|
|
25
|
+
import "./chunk-6NMWJSES.js";
|
|
26
|
+
import "./chunk-LY352GTC.js";
|
|
27
|
+
import "./chunk-XOIDSPMQ.js";
|
|
28
28
|
import "./chunk-FM57FNPJ.js";
|
|
29
|
-
import "./chunk-
|
|
30
|
-
import "./chunk-
|
|
29
|
+
import "./chunk-JOFZ6AW5.js";
|
|
30
|
+
import "./chunk-LMNAMITH.js";
|
|
31
31
|
import "./chunk-5X7LZJDE.js";
|
|
32
|
-
import "./chunk-
|
|
33
|
-
import "./chunk-
|
|
34
|
-
import "./chunk-
|
|
35
|
-
import "./chunk-WUI3P4RA.js";
|
|
32
|
+
import "./chunk-6CXT5JRM.js";
|
|
33
|
+
import "./chunk-FYKZB6TX.js";
|
|
34
|
+
import "./chunk-BW2HWSYH.js";
|
|
36
35
|
import "./chunk-ZTLZO42A.js";
|
|
37
36
|
import "./chunk-ORM6PK57.js";
|
|
38
37
|
import "./chunk-CRPQUBP6.js";
|
|
39
38
|
export {
|
|
40
39
|
chatCommand
|
|
41
40
|
};
|
|
42
|
-
//# sourceMappingURL=chat-
|
|
41
|
+
//# sourceMappingURL=chat-FPEYKTMI.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
useColor
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-FB46F6H4.js";
|
|
5
5
|
|
|
6
6
|
// src/cli/ui/keystroke-context.tsx
|
|
7
7
|
import { useInput } from "ink";
|
|
@@ -559,4 +559,4 @@ export {
|
|
|
559
559
|
SingleSelect,
|
|
560
560
|
MultiSelect
|
|
561
561
|
};
|
|
562
|
-
//# sourceMappingURL=chunk-
|
|
562
|
+
//# sourceMappingURL=chunk-3VTV4WAH.js.map
|