stratagate-dsh 0.2.60 → 0.2.61
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/CHANGELOG.md +10 -30
- package/LICENSE +21 -21
- package/README.zh-CN.md +43 -43
- package/dist/client.js +4 -4
- package/dist/index.js +18 -156
- package/dist/index.js.map +1 -1
- package/docs/ARCHITECTURE.md +29 -29
- package/docs/DSH.md +13 -14
- package/docs/DSH.zh-CN.md +11 -12
- package/docs/EXTERNAL_MEMORY_IMPORT.zh-CN.md +54 -54
- package/package.json +23 -23
- package/screenshots.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,33 +1,13 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
|
|
3
|
-
##
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
-
|
|
8
|
-
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
## 0.2.59 - 2026-09-08
|
|
13
|
-
|
|
14
|
-
- Increase the structured model task timeout from 45 to 120 seconds so Event extraction has enough time to complete on slower model responses.
|
|
15
|
-
|
|
16
|
-
## 0.2.58 - 2026-09-08
|
|
17
|
-
|
|
18
|
-
- Style normal background memory processing with the blue informational theme, reserving red danger styling for failures.
|
|
19
|
-
|
|
20
|
-
## 0.2.57 - 2026-09-07
|
|
21
|
-
|
|
22
|
-
- Add an explicit per-Block Summary retry action for terminal failures, with affected conversation details and separate status refresh behavior.
|
|
23
|
-
- Give a user-requested retry a fresh bounded attempt budget while preserving raw conversation data and continuing downstream Event and graph processing only after Summary succeeds.
|
|
24
|
-
|
|
25
|
-
## 0.2.56 - 2026-09-07
|
|
26
|
-
|
|
27
|
-
- Include Block Summary failures in workspace alerts, diagnostics, and system status instead of reporting only downstream Event and graph jobs.
|
|
28
|
-
- Derive pending Block presentation from the persisted Summary job and use workspace-wide job totals on the system page.
|
|
29
|
-
|
|
30
|
-
## 0.2.55 - 2026-09-07
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## 0.2.61 - 2026-09-09
|
|
4
|
+
|
|
5
|
+
- Run folded-turn ingestion on a count-triggered, per-session background drain so the agent hot path does not wait for memory processing; failed and unprocessed turns are restored in order for a later retry or explicit flush.
|
|
6
|
+
- Keep automatic long-term-memory retrieval keyed to the current user message, avoiding stale previous-topic context during consecutive conversations.
|
|
7
|
+
- Safely omit `reasoningEffort` when model capability lookup fails or times out, and emit at most one fallback warning for each provider/model route.
|
|
8
|
+
- Expose the `structuredReasoningEffort` policy (`auto` or `force-off`) as a user-editable plugin setting; unsupported `force-off` requests fall back to the model default instead of failing the structured call.
|
|
9
|
+
|
|
10
|
+
## 0.2.55 - 2026-09-07
|
|
31
11
|
|
|
32
12
|
- Let the Agent unobtrusively offer a local feedback draft only for clear, unresolved or disruptive errors, with conversation-scoped suggestion and problem deduplication enforced by prompt instructions.
|
|
33
13
|
- Keep direct feedback requests authorized and unrestricted while preserving fact-only drafts, manual submission, and clickable local draft links.
|
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2026 diqier
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 diqier
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.zh-CN.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
|
|
3
|
-
<img src="docs/assets/stratagate-avatar.png" alt="StrataGate Agent Memory 横幅" width="100%" />
|
|
3
|
+
<img src="docs/assets/stratagate-avatar.png" alt="StrataGate Agent Memory 横幅" width="100%" />
|
|
4
4
|
|
|
5
5
|
# StrataGate
|
|
6
6
|
|
|
@@ -8,14 +8,14 @@
|
|
|
8
8
|
|
|
9
9
|
StrataGate 让长期运行的 AI Agent 跨会话记住信息,同时避免把每条记忆都当成不需要核对的事实。
|
|
10
10
|
|
|
11
|
-
[](https://github.com/diqierjia/StrataGate-AgentMemory/actions/workflows/ci.yml)
|
|
12
|
-
[](https://www.npmjs.com/package/stratagate-dsh)
|
|
13
|
-
[](LICENSE)
|
|
14
|
-
[](https://www.typescriptlang.org/)
|
|
15
|
-
[](https://awesome-dsh-plugin.com)
|
|
16
|
-
[](CONTRIBUTING.zh-CN.md)
|
|
11
|
+
[](https://github.com/diqierjia/StrataGate-AgentMemory/actions/workflows/ci.yml)
|
|
12
|
+
[](https://www.npmjs.com/package/stratagate-dsh)
|
|
13
|
+
[](LICENSE)
|
|
14
|
+
[](https://www.typescriptlang.org/)
|
|
15
|
+
[](https://awesome-dsh-plugin.com)
|
|
16
|
+
[](CONTRIBUTING.zh-CN.md)
|
|
17
17
|
|
|
18
|
-
[English](README.md) · [DeepSeek Harness 插件说明](docs/DSH.zh-CN.md) · [架构说明](docs/ARCHITECTURE.md) · [完整评测](docs/EVALUATION.md)
|
|
18
|
+
[English](README.md) · [DeepSeek Harness 插件说明](docs/DSH.zh-CN.md) · [架构说明](docs/ARCHITECTURE.md) · [完整评测](docs/EVALUATION.md)
|
|
19
19
|
|
|
20
20
|
<strong>当前公开结果:</strong>在 LoCoMo `conv-26` 上,StrataGate 经过 10 次独立评审的平均准确率为 <strong>80.46%</strong>,Mem0 base 为 <strong>63.22%</strong>。[查看测试范围与方法](#实验结果)。
|
|
21
21
|
|
|
@@ -58,7 +58,7 @@ dsh plugin --profile web add stratagate-dsh
|
|
|
58
58
|
DSH_HOME/stratagate/memory.db
|
|
59
59
|
```
|
|
60
60
|
|
|
61
|
-
移除插件不会删除数据库。截图、配置项、记忆工具和自动记录规则见 [DeepSeek Harness 插件中文说明](docs/DSH.zh-CN.md)。
|
|
61
|
+
移除插件不会删除数据库。截图、配置项、记忆工具和自动记录规则见 [DeepSeek Harness 插件中文说明](docs/DSH.zh-CN.md)。
|
|
62
62
|
|
|
63
63
|
## 这些设计要解决什么问题
|
|
64
64
|
|
|
@@ -128,7 +128,7 @@ StrataGate 的目标不是让 Agent 每次检索更多,而是让它知道:**
|
|
|
128
128
|
|
|
129
129
|
默认每 12 轮完整对话封存为一个记忆块。尚未达到边界的消息保留在 open tail 中,不会提前压缩或抽取。
|
|
130
130
|
|
|
131
|
-
这是核心库的默认值。DeepSeek Harness 插件为了更及时地产生 Event,默认每 6 轮封存一个 Block,并允许用户通过 `blockTurnSize` 自定义。Block 的 age 是它与同一线程中最新已就绪 Block 的距离,因此 open tail 和模型待处理 Block 不会触发衰减;默认 Block 衰减系数为 `0.30`。
|
|
131
|
+
这是核心库的默认值。DeepSeek Harness 插件为了更及时地产生 Event,默认每 6 轮封存一个 Block,并允许用户通过 `blockTurnSize` 自定义。Block 的 age 是它与同一线程中最新已就绪 Block 的距离,因此 open tail 和模型待处理 Block 不会触发衰减;默认 Block 衰减系数为 `0.30`。
|
|
132
132
|
|
|
133
133
|
每个已封存的块包含六种详细程度:
|
|
134
134
|
|
|
@@ -141,7 +141,7 @@ StrataGate 的目标不是让 Agent 每次检索更多,而是让它知道:**
|
|
|
141
141
|
| L4 | 接近原文的可读对话 | 核对自然语言上下文和工具结果 |
|
|
142
142
|
| L5 | 完整消息和工具记录 | 最终来源 |
|
|
143
143
|
|
|
144
|
-
Block 到达边界时,StrataGate 会在任何模型调用之前,先原子地保存永久 L5 与确定性生成的 L4、L3。随后 Block 保持模型待处理状态,不能替换原生对话历史,也不参与衰减;只有 L0–L2 校验和 Event 处理完成后才进入就绪状态。随着后续就绪 Block 增加,默认展示层级逐渐变浅;需要更多细节时,可以重新展开。
|
|
144
|
+
Block 到达边界时,StrataGate 会在任何模型调用之前,先原子地保存永久 L5 与确定性生成的 L4、L3。随后 Block 保持模型待处理状态,不能替换原生对话历史,也不参与衰减;只有 L0–L2 校验和 Event 处理完成后才进入就绪状态。随着后续就绪 Block 增加,默认展示层级逐渐变浅;需要更多细节时,可以重新展开。
|
|
145
145
|
|
|
146
146
|
L0–L4 都是同一份来源的派生视图,不会覆盖或重写 L5。事件卡同样只能引用原始块,不能反向修改来源。
|
|
147
147
|
|
|
@@ -185,7 +185,7 @@ L0–L4 都是同一份来源的派生视图,不会覆盖或重写 L5。事件
|
|
|
185
185
|
|
|
186
186
|
将“提及时间”和“发生时间”分开,可以避免把消息日期直接当成事件日期,也让系统有条件正确解析“上周”“下个月”等相对时间。
|
|
187
187
|
|
|
188
|
-
L0–L2 校验完成后,Event 抽取会独立运行,不再等待块 `N+1`。抽取器可以读取前一个 Block 和最近可用的后续就绪 Block 作为上下文,但新增事实和引用必须来自目标块 `N`。
|
|
188
|
+
L0–L2 校验完成后,Event 抽取会独立运行,不再等待块 `N+1`。抽取器可以读取前一个 Block 和最近可用的后续就绪 Block 作为上下文,但新增事实和引用必须来自目标块 `N`。
|
|
189
189
|
|
|
190
190
|
<a id="current-state-graph"></a>
|
|
191
191
|
|
|
@@ -243,10 +243,10 @@ expand_block
|
|
|
243
243
|
因此,搜索只更新可观测的检索记录,不会直接增加记忆权重。回答完成后,应用需要显式调用:
|
|
244
244
|
|
|
245
245
|
```ts
|
|
246
|
-
await memory.recordMemoryUse({ eventIds, elementIds });
|
|
246
|
+
await memory.recordMemoryUse({ eventIds, elementIds });
|
|
247
247
|
```
|
|
248
248
|
|
|
249
|
-
只有真正被答案采用的事件,或图谱证据背后的来源事件,才会更新长期权重。仍使用旧版元素卡的接入方式也继续受到支持。
|
|
249
|
+
只有真正被答案采用的事件,或图谱证据背后的来源事件,才会更新长期权重。仍使用旧版元素卡的接入方式也继续受到支持。
|
|
250
250
|
|
|
251
251
|
这样可以避免一个常见反馈循环:
|
|
252
252
|
|
|
@@ -277,7 +277,7 @@ await memory.recordMemoryUse({ eventIds, elementIds });
|
|
|
277
277
|
|
|
278
278
|
库导出 `EXTERNAL_MEMORY_EXPORT_PROMPT_ZH_CN`、`EXTERNAL_MEMORY_DECIDER_PROMPT_ZH_CN` 和 `externalMemoryJsonExtractor`,可让外部 AI 输出可校验的 `stratagate.external-memory.v2` JSON,再由本地模型从五种处理方式中选择。v2 将记忆性质与内容分类分开;时间字段严格区分“被提及时间”和“实际发生时间”。日期不确定时,系统会省略日期并保留原始说法,不会根据当前日期或聊天顺序猜测。
|
|
279
279
|
|
|
280
|
-
完整接入示例和提示词说明见 [`docs/EXTERNAL_MEMORY_IMPORT.zh-CN.md`](docs/EXTERNAL_MEMORY_IMPORT.zh-CN.md)。DeepSeek Harness 管理界面会先预览导入,JSON 不合格时使用模型兜底恢复,确定性忽略完全重复项,并让当前模型结合 Top-K 本地匹配选择新增、合并、取代、冲突或忽略。导入分析及逐条进度会持久化,关闭后重新打开页面可继续查看;高置信度判断自动采用,低置信度项可人工选择具体动作;提交后可按批次撤销。
|
|
280
|
+
完整接入示例和提示词说明见 [`docs/EXTERNAL_MEMORY_IMPORT.zh-CN.md`](docs/EXTERNAL_MEMORY_IMPORT.zh-CN.md)。DeepSeek Harness 管理界面会先预览导入,JSON 不合格时使用模型兜底恢复,确定性忽略完全重复项,并让当前模型结合 Top-K 本地匹配选择新增、合并、取代、冲突或忽略。导入分析及逐条进度会持久化,关闭后重新打开页面可继续查看;高置信度判断自动采用,低置信度项可人工选择具体动作;提交后可按批次撤销。
|
|
281
281
|
|
|
282
282
|
新事件可以取代旧事件,但旧事件及其来源仍然保留。遗忘可以让事件退出搜索,同时不破坏来源链路。
|
|
283
283
|
|
|
@@ -393,40 +393,40 @@ npm run build
|
|
|
393
393
|
|
|
394
394
|
代码与文档的主要入口:
|
|
395
395
|
|
|
396
|
-
- [`packages/core/examples/basic.ts`](packages/core/examples/basic.ts):核心引擎最小示例;
|
|
397
|
-
- [`packages/core/src/store.ts`](packages/core/src/store.ts):核心状态、Block/Event/图谱生命周期、导入和检索;
|
|
398
|
-
- [`packages/core/src/events.ts`](packages/core/src/events.ts):统一事件类型;
|
|
399
|
-
- [`packages/core/src/elements.ts`](packages/core/src/elements.ts):校验来源的元素投影与时间视图;
|
|
400
|
-
- [`packages/core/src/graph.ts`](packages/core/src/graph.ts):校验来源的知识图谱整理和状态维护;
|
|
401
|
-
- [`packages/core/src/external-memory.ts`](packages/core/src/external-memory.ts):外部记忆格式、提示词、解析和提取;
|
|
402
|
-
- [`packages/core/src/search.ts`](packages/core/src/search.ts):确定性 BM25 排序和 RRF 融合;
|
|
403
|
-
- [`packages/core/src/retrieval.ts`](packages/core/src/retrieval.ts):证据门规范化与约束校验;
|
|
404
|
-
- [`packages/core/src/blocks.ts`](packages/core/src/blocks.ts):分层规则与确定性精简;
|
|
396
|
+
- [`packages/core/examples/basic.ts`](packages/core/examples/basic.ts):核心引擎最小示例;
|
|
397
|
+
- [`packages/core/src/store.ts`](packages/core/src/store.ts):核心状态、Block/Event/图谱生命周期、导入和检索;
|
|
398
|
+
- [`packages/core/src/events.ts`](packages/core/src/events.ts):统一事件类型;
|
|
399
|
+
- [`packages/core/src/elements.ts`](packages/core/src/elements.ts):校验来源的元素投影与时间视图;
|
|
400
|
+
- [`packages/core/src/graph.ts`](packages/core/src/graph.ts):校验来源的知识图谱整理和状态维护;
|
|
401
|
+
- [`packages/core/src/external-memory.ts`](packages/core/src/external-memory.ts):外部记忆格式、提示词、解析和提取;
|
|
402
|
+
- [`packages/core/src/search.ts`](packages/core/src/search.ts):确定性 BM25 排序和 RRF 融合;
|
|
403
|
+
- [`packages/core/src/retrieval.ts`](packages/core/src/retrieval.ts):证据门规范化与约束校验;
|
|
404
|
+
- [`packages/core/src/blocks.ts`](packages/core/src/blocks.ts):分层规则与确定性精简;
|
|
405
405
|
- [`docs/ARCHITECTURE.md`](docs/ARCHITECTURE.md):完整系统边界与实现不变量;
|
|
406
406
|
- [`docs/EVALUATION.md`](docs/EVALUATION.md):完整实验过程与失败分析。
|
|
407
407
|
|
|
408
|
-
`packages/core/examples/basic.ts` 用于展示核心接口,而不是完整复现 benchmark 中的 Agent 工具循环。评测所使用的模型调用、工具编排和 Judge 协议见评测文档。
|
|
408
|
+
`packages/core/examples/basic.ts` 用于展示核心接口,而不是完整复现 benchmark 中的 Agent 工具循环。评测所使用的模型调用、工具编排和 Judge 协议见评测文档。
|
|
409
409
|
|
|
410
410
|
## 文档与复现
|
|
411
411
|
|
|
412
412
|
| 资源 | 内容 |
|
|
413
413
|
| --- | --- |
|
|
414
|
-
| [`docs/ARCHITECTURE.md`](docs/ARCHITECTURE.md) | 数据流、分层规则、事件/元素协议、检索、证据门约束、权重和存储不变量 |
|
|
414
|
+
| [`docs/ARCHITECTURE.md`](docs/ARCHITECTURE.md) | 数据流、分层规则、事件/元素协议、检索、证据门约束、权重和存储不变量 |
|
|
415
415
|
| [`docs/EXTERNAL_MEMORY_IMPORT.zh-CN.md`](docs/EXTERNAL_MEMORY_IMPORT.zh-CN.md) | 外部记忆导出格式、导入流程和接入示例 |
|
|
416
416
|
| [`docs/EVALUATION.md`](docs/EVALUATION.md) | R1–R8 实验、模型敏感性、Mem0 对比、失败分析和报告边界 |
|
|
417
417
|
| [`benchmarks/locomo-conv26-r8-final.json`](benchmarks/locomo-conv26-r8-final.json) | 当前结果、逐阶段统计、运行信息和源产物哈希 |
|
|
418
|
-
| [`packages/core/examples/basic.ts`](packages/core/examples/basic.ts) | 最小代码示例 |
|
|
418
|
+
| [`packages/core/examples/basic.ts`](packages/core/examples/basic.ts) | 最小代码示例 |
|
|
419
419
|
|
|
420
420
|
## 项目结构
|
|
421
421
|
|
|
422
422
|
```text
|
|
423
|
-
src/ DeepSeek Harness Host 与 Web client 适配层
|
|
424
|
-
tests/ DeepSeek Harness 集成测试
|
|
425
|
-
cordis.patch.yml 根目录 DSH bundle 清单
|
|
426
|
-
packages/core/ 共享记忆引擎、核心测试和示例
|
|
427
|
-
integrations/workbuddy/ WorkBuddy Host Adapter 与 MCP 接入
|
|
428
|
-
docs/ DSH 使用、架构和完整评测文档
|
|
429
|
-
benchmarks/ 机器可读实验结果
|
|
423
|
+
src/ DeepSeek Harness Host 与 Web client 适配层
|
|
424
|
+
tests/ DeepSeek Harness 集成测试
|
|
425
|
+
cordis.patch.yml 根目录 DSH bundle 清单
|
|
426
|
+
packages/core/ 共享记忆引擎、核心测试和示例
|
|
427
|
+
integrations/workbuddy/ WorkBuddy Host Adapter 与 MCP 接入
|
|
428
|
+
docs/ DSH 使用、架构和完整评测文档
|
|
429
|
+
benchmarks/ 机器可读实验结果
|
|
430
430
|
```
|
|
431
431
|
|
|
432
432
|
## 什么情况下适合使用 StrataGate
|
|
@@ -442,14 +442,14 @@ benchmarks/ 机器可读实验结果
|
|
|
442
442
|
|
|
443
443
|
如果你最需要的是自由编辑记忆内容、跨产品的云端多人协作,或者只想维护一个简单的手写便签文件,应先考虑其他插件。StrataGate 已提供以查看和追溯为主的知识图谱界面,但它更适合自动、本地、证据可追溯的 Agent 记忆工作流,而不是多人知识库编辑。
|
|
444
444
|
|
|
445
|
-
DeepSeek Harness 用户可以从[快速开始](#quick-start-deepseek-harness)安装。DSH 适配层的行为、工具、配置和失败恢复方式见 [DeepSeek Harness 插件中文文档](docs/DSH.zh-CN.md)。
|
|
446
|
-
|
|
447
|
-
## 参与贡献
|
|
448
|
-
|
|
449
|
-
欢迎各种形式的贡献:修复问题、完善文档、增加集成,或探索更好的记忆与检索方案都可以。
|
|
450
|
-
|
|
451
|
-
请先阅读 [`CONTRIBUTING.zh-CN.md`](CONTRIBUTING.zh-CN.md),其中包含 monorepo 开发环境、检查与测试命令、适合参与的方向,以及提交 Pull Request 的建议。如果还不确定一个想法是否适合项目,建议先[创建 Issue](https://github.com/diqierjia/StrataGate-AgentMemory/issues),再投入较大的改动。
|
|
452
|
-
|
|
453
|
-
## 许可证
|
|
445
|
+
DeepSeek Harness 用户可以从[快速开始](#quick-start-deepseek-harness)安装。DSH 适配层的行为、工具、配置和失败恢复方式见 [DeepSeek Harness 插件中文文档](docs/DSH.zh-CN.md)。
|
|
446
|
+
|
|
447
|
+
## 参与贡献
|
|
448
|
+
|
|
449
|
+
欢迎各种形式的贡献:修复问题、完善文档、增加集成,或探索更好的记忆与检索方案都可以。
|
|
450
|
+
|
|
451
|
+
请先阅读 [`CONTRIBUTING.zh-CN.md`](CONTRIBUTING.zh-CN.md),其中包含 monorepo 开发环境、检查与测试命令、适合参与的方向,以及提交 Pull Request 的建议。如果还不确定一个想法是否适合项目,建议先[创建 Issue](https://github.com/diqierjia/StrataGate-AgentMemory/issues),再投入较大的改动。
|
|
452
|
+
|
|
453
|
+
## 许可证
|
|
454
454
|
|
|
455
455
|
StrataGate 使用 [MIT License](LICENSE)。
|