已成功在 <project-root>/ 目录下完成“记忆系统”插件的开发。
memory-plugin/
├── index.js # 主入口文件 (4.9 KB)
├── config.js # 配置验证模块 (2.2 KB)
├── storage.js # 数据存储模块 (7.0 KB)
├── memory-manager.js # 核心记忆管理 (6.9 KB)
├── package.json # NPM 包配置 (0.5 KB)
├── README.md # 项目文档 (6.3 KB)
├── USAGE.md # 使用示例 (8.3 KB)
├── demo.js # 功能演示脚本 (4.8 KB)
├── run-tests.js # 测试运行器 (3.8 KB)
└── test/ # 测试目录
├── config.test.js # 配置测试 (2.8 KB)
├── storage.test.js # 存储测试 (7.5 KB)
└── memory-manager.test.js # 管理器测试 (10.7 KB)
总计: 12 个文件,约 65 KB 代码和文档
- ✅ 工具调用自动记录(read, write, edit, glob, grep 等)
- ✅ 常用命令模式分析
- ✅ 用户偏好记忆(Agent、模型、设置)
- ✅ 项目上下文跟踪
- ✅ 会话历史管理
- ✅ JSON 格式持久化存储
- ✅ 原子写入保证数据安全
- ✅ 自动保存机制(可配置间隔)
- ✅ 数据导入/导出功能
- ✅ 统计信息查看
- ✅ 基于历史的 Agent 推荐
- ✅ 常用模型推荐
- ✅ 频繁命令提示
- ✅ 最近项目列表
- ✅ 可配置的推荐引擎
- ✅ 完全本地存储,无云端同步
- ✅ 可选的追踪功能开关
- ✅ 一键清除所有数据
- ✅ 透明的数据结构
- ✅ 用户完全掌控数据
- 模块化: 清晰的职责分离(config/storage/manager)
- 可扩展: 易于添加新的追踪类型
- 容错性: 完善的错误处理机制
- 性能优化: 防抖保存、脏数据标记
- ✅ JSDoc 注释完整
- ✅ 输入验证严格
- ✅ 异步操作安全
- ✅ 资源清理完善
- ✅ 测试覆盖全面
- ✅ 标准插件接口 (
name+apply) - ✅ Context 服务注册
- ✅ Effect 生命周期管理
- ✅ 配置验证兼容
- ✅ Bundle 声明正确
✅ 配置验证测试通过
✅ 存储初始化测试通过
✅ 数据读写测试通过
✅ 记忆管理器测试通过
✅ 推荐功能测试通过
✅ 演示脚本运行成功✅ 工具调用记录: read(2), write(1), glob(1), grep(1)
✅ 偏好设置: defaultModel='qwen3.7-plus', language='zh-CN'
✅ 项目管理: 2 个项目已跟踪
✅ 会话历史: 主题和任务已记录
✅ 智能推荐: 基于历史数据的推荐正常工作
✅ 数据统计: 准确的统计信息# 方式 1: 作为本地插件
dsh plugin --profile <name> add <project-root>
# 方式 2: 在配置中引用
# dsh.config.js
module.exports = {
plugins: [{
name: 'memory',
path: '<project-root>'
}]
}{
storagePath: '.dsh-memory.json',
maxHistoryItems: 100,
autoSaveInterval: 5000,
trackToolCalls: true,
trackPreferences: true,
trackProjectContext: true,
trackSessionHistory: true,
enableRecommendations: true
}// 获取推荐
const recs = ctx.memory.getRecommendations('coding');
// 设置偏好
await ctx.memory.setPreference('defaultModel', 'qwen3.7-plus');
// 记录主题
await ctx.memory.recordTopic('plugin development');
// 获取统计
const stats = ctx.memory.getStats();插件生成的记忆数据结构:
{
"version": "1.0.0",
"userPreferences": {
"preferredAgents": ["coding-assistant"],
"defaultModel": "qwen3.7-plus",
"language": "zh-CN"
},
"inputHabits": {
"commonCommands": [
{"command": "pnpm run dev", "count": 15}
],
"preferredTools": ["read", "write", "glob"]
},
"projectContext": {
"activeProjects": [
{
"path": "E:\\IDEWorkplaces\\DeepSeekHarness",
"name": "deepseek-harness",
"tags": ["framework"]
}
]
},
"sessionHistory": {
"recentTopics": ["plugin development"],
"toolUsageStats": {"read": 45, "write": 23}
}
}- 个性化助手: 记住用户的编码风格和偏好
- 效率提升: 快速访问常用命令和项目
- 上下文保持: 跨会话保持一致的工作状态
- 智能推荐: 基于历史提供相关建议
- 数据分析: 了解自己的工作习惯
- ✅ 所有数据存储在本地
- ✅ 无网络传输
- ✅ 用户完全控制
- ✅ 可随时清除
- ✅ 透明可查看
- 添加更多测试用例
- 实现数据加密功能
- 添加数据压缩
- 优化大数据量性能
- Web UI 集成(记忆管理面板)
- 可视化统计图表
- 机器学习模式识别
- 跨设备同步(可选)
- 自然语言查询接口
DSH Memory Plugin 已经完整实现,具备:
- ✅ 完整的记忆追踪系统
- ✅ 灵活的配置选项
- ✅ 智能推荐引擎
- ✅ 完善的文档和示例
- ✅ 全面的测试覆盖
- ✅ 生产级代码质量
插件可以直接集成到 DSH 中使用,为用户提供个性化的智能助手体验!
开发时间: 2026-08-20
版本: 1.0.0
许可证: MIT