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.
Files changed (3) hide show
  1. package/README.md +17 -4
  2. package/README.zh.md +15 -12
  3. package/package.json +24 -14
package/README.md CHANGED
@@ -3,6 +3,7 @@
3
3
  [中文](README.zh.md) | English
4
4
 
5
5
  [![awesome · DSH plugin](https://awesome-dsh-plugin.com/badge.svg)](https://awesome-dsh-plugin.com)
6
+ [![npm](https://img.shields.io/npm/v/dsh-continual-evolve)](https://www.npmjs.com/package/dsh-continual-evolve)
6
7
  [![CI](https://github.com/ZK-Andy/dsh-continual-evolve/actions/workflows/ci.yml/badge.svg)](https://github.com/ZK-Andy/dsh-continual-evolve/actions/workflows/ci.yml)
7
8
  [![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
8
9
  [![Node](https://img.shields.io/badge/node-%5E22.19%20%7C%7C%20%3E%3D24-339933)](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, three features keep injected memory
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 placeholder cases, and 100 → 100
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 planned/candidates list is empty for now — future work is driven by real usage.
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
  [![awesome · DSH plugin](https://awesome-dsh-plugin.com/badge.svg)](https://awesome-dsh-plugin.com)
6
+ [![npm](https://img.shields.io/npm/v/dsh-continual-evolve)](https://www.npmjs.com/package/dsh-continual-evolve)
6
7
  [![CI](https://github.com/ZK-Andy/dsh-continual-evolve/actions/workflows/ci.yml/badge.svg)](https://github.com/ZK-Andy/dsh-continual-evolve/actions/workflows/ci.yml)
7
8
  [![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
8
9
  [![Node](https://img.shields.io/badge/node-%5E22.19%20%7C%7C%20%3E%3D24-339933)](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> 创建 benchmark
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.0",
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
+ }