dsh-continual-evolve 0.1.0 → 0.1.1
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 +17 -4
- package/README.zh.md +15 -12
- package/package.json +24 -14
package/README.md
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
[中文](README.zh.md) | English
|
|
4
4
|
|
|
5
5
|
[](https://awesome-dsh-plugin.com)
|
|
6
|
+
[](https://www.npmjs.com/package/dsh-continual-evolve)
|
|
6
7
|
[](https://github.com/ZK-Andy/dsh-continual-evolve/actions/workflows/ci.yml)
|
|
7
8
|
[](LICENSE)
|
|
8
9
|
[](package.json)
|
|
@@ -120,6 +121,18 @@ dsh-continual-evolve/
|
|
|
120
121
|
└── test/ # 20 files, 184 tests
|
|
121
122
|
```
|
|
122
123
|
|
|
124
|
+
## Install
|
|
125
|
+
|
|
126
|
+
```bash
|
|
127
|
+
# from npm (installs and activates — ships its own bundle patch)
|
|
128
|
+
dsh plugin --profile web add dsh-continual-evolve
|
|
129
|
+
|
|
130
|
+
# or from source (first GitHub installs require approving the allowBuilds build step)
|
|
131
|
+
dsh plugin --profile web add github:ZK-Andy/dsh-continual-evolve
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
Swap `web` for your profile name (`headless`, or a custom profile).
|
|
135
|
+
|
|
123
136
|
## In-session usage (after restart)
|
|
124
137
|
|
|
125
138
|
```
|
|
@@ -145,7 +158,7 @@ Model-facing tools: `evolve_list`, `evolve_add`, `evolve_update`, `evolve_delete
|
|
|
145
158
|
|
|
146
159
|
## Memory layer
|
|
147
160
|
|
|
148
|
-
Beyond the persisted store itself,
|
|
161
|
+
Beyond the persisted store itself, four features keep injected memory
|
|
149
162
|
"understanding you" as entries grow (gap analysis vs. Mem0 / Letta / Zep /
|
|
150
163
|
LangMem; no external services — everything is pure functions):
|
|
151
164
|
|
|
@@ -224,7 +237,7 @@ acceptance:
|
|
|
224
237
|
The evaluator does not grade model common sense — it inspects the actual
|
|
225
238
|
harness state under test (grep, `evolve_list`) and scores against it, so a
|
|
226
239
|
harness change measurably moves the score. Earlier runs in the same session
|
|
227
|
-
produced honest `REJECTED` decisions (0 → 0
|
|
240
|
+
produced honest `REJECTED` decisions (0 → 0 stub cases, and 100 → 100
|
|
228
241
|
where the baseline was already perfect).
|
|
229
242
|
|
|
230
243
|
## Configuration
|
|
@@ -261,6 +274,7 @@ Example (profile `cordis.patch.yml`):
|
|
|
261
274
|
|
|
262
275
|
```bash
|
|
263
276
|
pnpm install # install dev deps
|
|
277
|
+
pnpm dev # tsc --watch
|
|
264
278
|
pnpm build # tsc -> lib/
|
|
265
279
|
pnpm test # vitest run
|
|
266
280
|
pnpm lint # oxlint src test
|
|
@@ -268,7 +282,6 @@ pnpm lint # oxlint src test
|
|
|
268
282
|
|
|
269
283
|
Hit a wall? See [`docs/FAQ.md`](docs/FAQ.md) — real failure/fix records (service planes, schema DSL, structured output, gate counting, verifying prompt injection).
|
|
270
284
|
|
|
271
|
-
|
|
272
285
|
## Roadmap
|
|
273
286
|
|
|
274
287
|
**Shipped**
|
|
@@ -283,7 +296,7 @@ Hit a wall? See [`docs/FAQ.md`](docs/FAQ.md) — real failure/fix records (servi
|
|
|
283
296
|
- **automatic rollback on benchmark rejection** — the acceptance loop is closed: when the code-owned decision rejects a candidate, the refinement is reverted automatically through the same engine path as `/evolve rollback` (deterministic inverse edits, snapshotted and audited; configurable via `autoRollbackOnReject`, on by default). Failures report the manual fallback instead of throwing
|
|
284
297
|
- **per-session log filtering** — `/evolve log [tail N] [session <id>]` keeps only the lines mentioning a given session id (exact token match, drawn from the rendered message and raw args); gate records now carry the session id in their log line
|
|
285
298
|
|
|
286
|
-
The
|
|
299
|
+
The upcoming/candidates list is empty for now — future work is driven by real usage.
|
|
287
300
|
|
|
288
301
|
## License
|
|
289
302
|
|
package/README.zh.md
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
[English](README.md) | 中文
|
|
4
4
|
|
|
5
5
|
[](https://awesome-dsh-plugin.com)
|
|
6
|
+
[](https://www.npmjs.com/package/dsh-continual-evolve)
|
|
6
7
|
[](https://github.com/ZK-Andy/dsh-continual-evolve/actions/workflows/ci.yml)
|
|
7
8
|
[](LICENSE)
|
|
8
9
|
[](package.json)
|
|
@@ -97,6 +98,18 @@ dsh-continual-evolve/
|
|
|
97
98
|
└── test/ # 20 个文件,184 个测试
|
|
98
99
|
```
|
|
99
100
|
|
|
101
|
+
## 安装
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
# 从 npm 安装(安装即激活,自带 bundle patch)
|
|
105
|
+
dsh plugin --profile web add dsh-continual-evolve
|
|
106
|
+
|
|
107
|
+
# 或从源码安装(首次 GitHub 安装需按提示授权 allowBuilds 构建步骤)
|
|
108
|
+
dsh plugin --profile web add github:ZK-Andy/dsh-continual-evolve
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
将 `web` 换成你的 profile 名(`headless`,或自定义 profile)。
|
|
112
|
+
|
|
100
113
|
## 会话内用法(安装后)
|
|
101
114
|
|
|
102
115
|
```
|
|
@@ -143,7 +156,7 @@ tail -f ~/.dsh/evolve/plugin.log # 实时跟随
|
|
|
143
156
|
## benchmark 驱动验证(Phase 3)
|
|
144
157
|
|
|
145
158
|
```
|
|
146
|
-
/evolve benchmark new <title>
|
|
159
|
+
/evolve benchmark new <title> [runs] 创建 benchmark(runs = 每个 case 重复次数,默认 1)
|
|
147
160
|
/evolve benchmark add-case <bid> <title> <statement> <rubric>
|
|
148
161
|
/evolve benchmark list 列出 benchmark
|
|
149
162
|
/evolve benchmark status <bid> 查看计分板 + 决策
|
|
@@ -197,16 +210,6 @@ tail -f ~/.dsh/evolve/plugin.log # 实时跟随
|
|
|
197
210
|
reviewIntervalTurns: 6
|
|
198
211
|
```
|
|
199
212
|
|
|
200
|
-
## 安装
|
|
201
|
-
|
|
202
|
-
```bash
|
|
203
|
-
# 从 npm 安装(安装即激活,自带 bundle patch)
|
|
204
|
-
dsh plugin --profile web add dsh-continual-evolve
|
|
205
|
-
|
|
206
|
-
# 或从源码安装
|
|
207
|
-
dsh plugin --profile web add /path/to/dsh-continual-evolve
|
|
208
|
-
```
|
|
209
|
-
|
|
210
213
|
## 开发
|
|
211
214
|
|
|
212
215
|
```bash
|
|
@@ -233,7 +236,7 @@ pnpm lint # oxlint src test
|
|
|
233
236
|
- **benchmark 拒绝自动回滚**——接受闭环已闭合:代码所有决策拒绝候选时,refinement 经与 `/evolve rollback` 相同的引擎路径自动撤销(确定性逆编辑、快照 + 审计;`autoRollbackOnReject` 配置,默认开)。失败时给出手动回滚提示而不是抛错
|
|
234
237
|
- **日志按会话过滤**——`/evolve log [tail N] [session <id>]` 只保留提及指定会话 id 的行(精确 token 匹配,取自渲染消息与原始 args);门禁记录的行现在携带会话 id
|
|
235
238
|
|
|
236
|
-
|
|
239
|
+
候选/待办清单暂时为空——后续工作随真实使用驱动。
|
|
237
240
|
|
|
238
241
|
## License
|
|
239
242
|
|
package/package.json
CHANGED
|
@@ -1,8 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dsh-continual-evolve",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "Continual self-evolution plugin for DeepSeek Harness: versioned, auditable, rollback-safe harness state (prompt notes, memories, skills, subagent specs) refined from session trajectories.",
|
|
5
5
|
"license": "MIT",
|
|
6
|
+
"repository": {
|
|
7
|
+
"type": "git",
|
|
8
|
+
"url": "https://github.com/ZK-Andy/dsh-continual-evolve.git"
|
|
9
|
+
},
|
|
10
|
+
"homepage": "https://github.com/ZK-Andy/dsh-continual-evolve",
|
|
11
|
+
"bugs": {
|
|
12
|
+
"url": "https://github.com/ZK-Andy/dsh-continual-evolve/issues"
|
|
13
|
+
},
|
|
6
14
|
"type": "module",
|
|
7
15
|
"main": "lib/index.js",
|
|
8
16
|
"types": "lib/index.d.ts",
|
|
@@ -32,9 +40,20 @@
|
|
|
32
40
|
"engines": {
|
|
33
41
|
"node": "^22.19.0 || >=24.0.0"
|
|
34
42
|
},
|
|
43
|
+
"packageManager": "pnpm@11.7.0",
|
|
35
44
|
"publishConfig": {
|
|
36
45
|
"access": "public"
|
|
37
46
|
},
|
|
47
|
+
"scripts": {
|
|
48
|
+
"build": "tsc -p tsconfig.json",
|
|
49
|
+
"prepare": "tsc -p tsconfig.json",
|
|
50
|
+
"dev": "tsc -p tsconfig.json --watch",
|
|
51
|
+
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
52
|
+
"test": "vitest run",
|
|
53
|
+
"test:watch": "vitest",
|
|
54
|
+
"lint": "oxlint src test",
|
|
55
|
+
"clean": "rm -rf lib"
|
|
56
|
+
},
|
|
38
57
|
"peerDependencies": {
|
|
39
58
|
"@deepseek-ai/cordis": "^4.0.1",
|
|
40
59
|
"@deepseek-ai/dsh-home-paths": "^0.1.0-rc.6",
|
|
@@ -43,25 +62,16 @@
|
|
|
43
62
|
},
|
|
44
63
|
"devDependencies": {
|
|
45
64
|
"@deepseek-ai/cordis": "^4.0.1",
|
|
46
|
-
"@deepseek-ai/dsh-home-paths": "0.1.0-rc.6",
|
|
47
|
-
"@deepseek-ai/dsh-llm": "0.1.0-rc.6",
|
|
48
|
-
"@deepseek-ai/dsh-tools": "0.1.0-rc.6",
|
|
49
65
|
"@deepseek-ai/dsh-agent": "0.1.0-rc.6",
|
|
50
66
|
"@deepseek-ai/dsh-commands": "0.1.0-rc.6",
|
|
67
|
+
"@deepseek-ai/dsh-home-paths": "0.1.0-rc.6",
|
|
68
|
+
"@deepseek-ai/dsh-llm": "0.1.0-rc.6",
|
|
51
69
|
"@deepseek-ai/dsh-system-prompt": "0.1.0-rc.6",
|
|
70
|
+
"@deepseek-ai/dsh-tools": "0.1.0-rc.6",
|
|
52
71
|
"@deepseek-ai/schemastery": "^3.18.1",
|
|
53
72
|
"@types/node": "^22.10.0",
|
|
54
73
|
"oxlint": "^0.16.0",
|
|
55
74
|
"typescript": "^5.9.0",
|
|
56
75
|
"vitest": "^3.2.0"
|
|
57
|
-
},
|
|
58
|
-
"scripts": {
|
|
59
|
-
"build": "tsc -p tsconfig.json",
|
|
60
|
-
"dev": "tsc -p tsconfig.json --watch",
|
|
61
|
-
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
62
|
-
"test": "vitest run",
|
|
63
|
-
"test:watch": "vitest",
|
|
64
|
-
"lint": "oxlint src test",
|
|
65
|
-
"clean": "rm -rf lib"
|
|
66
76
|
}
|
|
67
|
-
}
|
|
77
|
+
}
|