reasonix 0.30.4 → 0.31.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 CHANGED
@@ -98,6 +98,20 @@ npx reasonix code # paste a DeepSeek API key on first run; persists after
98
98
 
99
99
  Requires Node ≥ 22. Tested on macOS · Linux · Windows (PowerShell · Git Bash · Windows Terminal). Get a [DeepSeek API key →](https://platform.deepseek.com/api_keys) · `reasonix code --help` for flags.
100
100
 
101
+ `npx` is the recommended path — no global install, always picks up the latest version. If you'll use Reasonix daily and want `reasonix` on your `PATH`, run `reasonix update` once and it'll do the `npm install -g` for you.
102
+
103
+ ### Subcommand cheatsheet
104
+
105
+ | Command | When to use |
106
+ |---|---|
107
+ | `reasonix code [dir]` | Coding agent rooted at a project. **Start here.** |
108
+ | `reasonix chat` | Plain chat — no filesystem tools, just a conversation with persisted history. |
109
+ | `reasonix run "task"` | One-shot, streams the answer to stdout. Good for shell pipes. |
110
+ | `reasonix doctor` | Environment health check (Node version, API key, MCP wiring). |
111
+ | `reasonix update` | Upgrade Reasonix itself. |
112
+
113
+ Other subcommands (`replay` · `diff` · `events` · `stats` · `index` · `mcp` · `prune-sessions`) are listed in `reasonix --help` and on the [CLI reference](https://esengine.github.io/DeepSeek-Reasonix/#cli).
114
+
101
115
  **Working in a different folder:** Reasonix scopes filesystem tools to the launch directory. To work elsewhere, pass `--dir`:
102
116
 
103
117
  ```bash
@@ -106,6 +120,15 @@ npx reasonix code --dir /path/to/project # or use a relative path
106
120
 
107
121
  Mid-session switching isn't supported by design (the message log + memory paths get tangled with stale roots). Quit and relaunch with a new `--dir` to retarget. `/status` always shows the current pinned workspace.
108
122
 
123
+ **Author your first skill:** Skills are markdown playbooks the model can invoke (`/skill <name>`). There's no remote registry yet — you author them directly:
124
+
125
+ ```bash
126
+ /skill new my-skill # scaffolds <project>/.reasonix/skills/my-skill.md
127
+ /skill new my-skill --global # or under ~/.reasonix/skills for cross-project use
128
+ ```
129
+
130
+ Edit the file (`description:` frontmatter + body), then `/skill list` to see it. Add `runAs: subagent` to the frontmatter to spawn an isolated subagent loop instead of inlining the body.
131
+
109
132
  <br/>
110
133
 
111
134
  ## What makes Reasonix different
package/README.zh-CN.md CHANGED
@@ -52,6 +52,20 @@ npx reasonix code # 首次运行粘贴 DeepSeek API Key,之后会记住
52
52
 
53
53
  要求 Node ≥ 22。已在 macOS · Linux · Windows(PowerShell · Git Bash · Windows Terminal)测过。[去拿 DeepSeek API Key →](https://platform.deepseek.com/api_keys) · 完整 flag 看 `reasonix code --help`。
54
54
 
55
+ `npx` 是推荐路径 —— 不用全局安装,每次都拿到最新版本。如果你天天用、想把 `reasonix` 装到 `PATH` 上,跑一次 `reasonix update` 就行,它会替你跑 `npm install -g`。
56
+
57
+ ### 子命令速查
58
+
59
+ | 命令 | 适用场景 |
60
+ |---|---|
61
+ | `reasonix code [dir]` | 锁在某个项目根目录的编码 agent。**先用这个。** |
62
+ | `reasonix chat` | 纯聊天 —— 不挂文件系统工具,只是带历史的对话。 |
63
+ | `reasonix run "task"` | 一次性,把答案直接流到 stdout。适合 shell 管道。 |
64
+ | `reasonix doctor` | 环境体检(Node 版本、API Key、MCP 接线)。 |
65
+ | `reasonix update` | 升级 Reasonix 本身。 |
66
+
67
+ 其他子命令(`replay` · `diff` · `events` · `stats` · `index` · `mcp` · `prune-sessions`)见 `reasonix --help` 和 [CLI 参考](https://esengine.github.io/DeepSeek-Reasonix/#cli)。
68
+
55
69
  **在其他目录工作:** Reasonix 把文件系统工具作用域绑定在启动目录。要在别的目录工作,传 `--dir`:
56
70
 
57
71
  ```bash
@@ -60,6 +74,15 @@ npx reasonix code --dir /path/to/project # 也可以用相对路径
60
74
 
61
75
  中途切换工作区是有意不支持的(消息日志和 memory 路径会和旧的根目录混在一起,状态错乱)。退出后用新的 `--dir` 重新启动来切换。`/status` 始终显示当前锁定的工作区。
62
76
 
77
+ **写第一个 Skill:** Skills 是模型可以调用的 markdown 剧本(`/skill <name>`)。暂无在线市场 —— 自己写:
78
+
79
+ ```bash
80
+ /skill new my-skill # 在 <project>/.reasonix/skills/my-skill.md 生成模板
81
+ /skill new my-skill --global # 或者放到 ~/.reasonix/skills,跨项目共用
82
+ ```
83
+
84
+ 编辑文件(`description:` frontmatter + 正文),然后 `/skill list` 就能看到。frontmatter 里加 `runAs: subagent` 会以独立 subagent 跑,而不是把正文内联进父 prompt。
85
+
63
86
  <br/>
64
87
 
65
88
  ## Reasonix 的不同之处
package/dashboard/app.css CHANGED
@@ -2019,6 +2019,155 @@ input:focus, textarea:focus, select:focus { border-color: var(--c-brand); }
2019
2019
  max-height: 200px;
2020
2020
  }
2021
2021
 
2022
+ .modal-picker-search {
2023
+ width: 100%;
2024
+ background: var(--bg-elev-2);
2025
+ border: 1px solid var(--bd);
2026
+ border-radius: var(--r);
2027
+ color: var(--fg-1);
2028
+ padding: 6px 10px;
2029
+ font-size: 13px;
2030
+ margin-bottom: 8px;
2031
+ }
2032
+
2033
+ .modal-picker-list {
2034
+ display: flex;
2035
+ flex-direction: column;
2036
+ gap: 2px;
2037
+ max-height: 320px;
2038
+ overflow-y: auto;
2039
+ border: 1px solid var(--bd);
2040
+ border-radius: var(--r);
2041
+ background: var(--bg-elev-2);
2042
+ padding: 4px;
2043
+ margin-bottom: 8px;
2044
+ }
2045
+
2046
+ .modal-picker-row {
2047
+ display: grid;
2048
+ grid-template-columns: 1fr auto;
2049
+ gap: 4px 8px;
2050
+ align-items: baseline;
2051
+ padding: 6px 8px;
2052
+ background: transparent;
2053
+ border: 1px solid transparent;
2054
+ border-radius: var(--r-sm, 4px);
2055
+ color: var(--fg-1);
2056
+ text-align: left;
2057
+ cursor: pointer;
2058
+ }
2059
+
2060
+ .modal-picker-row:hover {
2061
+ background: var(--bg-elev-3, var(--bg-elev-2));
2062
+ }
2063
+
2064
+ .modal-picker-row.selected {
2065
+ border-color: var(--accent, #fcd34d);
2066
+ background: var(--bg-elev-3, var(--bg-elev-2));
2067
+ }
2068
+
2069
+ .modal-picker-title {
2070
+ grid-column: 1;
2071
+ font-weight: 500;
2072
+ }
2073
+
2074
+ .modal-picker-badge {
2075
+ grid-column: 2;
2076
+ font-size: 11px;
2077
+ color: var(--fg-2);
2078
+ padding: 1px 6px;
2079
+ border-radius: 999px;
2080
+ background: var(--bg-elev-1, var(--bg-elev-2));
2081
+ }
2082
+
2083
+ .modal-picker-subtitle {
2084
+ grid-column: 1 / 3;
2085
+ font-size: 12px;
2086
+ color: var(--fg-2);
2087
+ }
2088
+
2089
+ .modal-picker-meta {
2090
+ grid-column: 1 / 3;
2091
+ font-size: 11px;
2092
+ color: var(--fg-3, var(--fg-2));
2093
+ }
2094
+
2095
+ .modal-picker-empty {
2096
+ padding: 16px;
2097
+ text-align: center;
2098
+ color: var(--fg-2);
2099
+ font-size: 12px;
2100
+ }
2101
+
2102
+ .modal-picker-more {
2103
+ align-self: center;
2104
+ margin: 0 auto 8px;
2105
+ font-size: 12px;
2106
+ }
2107
+
2108
+ .modal-picker-form {
2109
+ display: flex;
2110
+ flex-direction: column;
2111
+ gap: 8px;
2112
+ margin-bottom: 8px;
2113
+ }
2114
+
2115
+ .modal-picker-form input {
2116
+ width: 100%;
2117
+ background: var(--bg-elev-2);
2118
+ border: 1px solid var(--bd);
2119
+ border-radius: var(--r);
2120
+ color: var(--fg-1);
2121
+ padding: 6px 10px;
2122
+ font-size: 13px;
2123
+ }
2124
+
2125
+ .modal-viewer-steps {
2126
+ list-style: none;
2127
+ padding: 0;
2128
+ margin: 0 0 8px;
2129
+ display: flex;
2130
+ flex-direction: column;
2131
+ gap: 4px;
2132
+ }
2133
+
2134
+ .modal-viewer-step {
2135
+ display: grid;
2136
+ grid-template-columns: 18px 1fr;
2137
+ gap: 6px;
2138
+ padding: 4px 8px;
2139
+ border-radius: var(--r-sm, 4px);
2140
+ background: var(--bg-elev-2);
2141
+ align-items: baseline;
2142
+ }
2143
+
2144
+ .modal-viewer-step-mark {
2145
+ text-align: center;
2146
+ font-weight: 600;
2147
+ color: var(--fg-2);
2148
+ }
2149
+
2150
+ .modal-viewer-step-done .modal-viewer-step-mark {
2151
+ color: #86efac;
2152
+ }
2153
+
2154
+ .modal-viewer-step-title {
2155
+ color: var(--fg-1);
2156
+ font-size: 13px;
2157
+ }
2158
+
2159
+ .modal-viewer-step-done .modal-viewer-step-title {
2160
+ color: var(--fg-2);
2161
+ }
2162
+
2163
+ .modal-viewer-body {
2164
+ margin-top: 4px;
2165
+ font-size: 13px;
2166
+ color: var(--fg-1);
2167
+ max-height: 360px;
2168
+ overflow-y: auto;
2169
+ }
2170
+
2022
2171
  /* Side-by-side diff for the edit-review modal — left is "before" (red
2023
2172
  * tint), right is "after" (green tint), context rows render unchanged.
2024
2173
  * Lines hljs-highlight per the file's language. */