DSH 插件,做 AST 上下文压缩、测试日志过滤和 token 预算守卫
33/100
综合分
4
GitHub 星标
2,160
npm 周下载
—/5
用户评分
数据截至 2026/10/23 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add @goodandready/dsh-context-lensnpm 源 · @goodandready/dsh-context-lens 的发布者账号已校验与本仓库一致
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · chat
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 11 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查✓ 自动检查通过展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包@goodandready/dsh-context-lens @ 0.1.34
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/21 02:58:04
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-settings@deepseek-ai/dsh-tools@deepseek-ai/schemastery给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- AST上下文压缩
- 测试日志过滤
- token预算守卫
最近更新
在 GitHub 查看全部 →v0.1.352026-10-23
· 变更内容
· 通过 context_lens_code 中的 filePath 直接读取文件(#128):省略代码时,context_lens_code 现在能直接从磁盘读取文件,省去骨架化之前那些耗费 token 的冗余 read_file 往返。新增文件大小上限(MAX_DIRECT_READ_BYTES = 1 MiB)、目录防护和自动语言检测(detectLanguageFromPath)。
· 客户端 CSS 回退主题 token(#128):移除 lib/client.js 中 .cl-btn-primary 里硬编码的 #ffffff 回退,严格遵循 DSH 规范主题 token,并清除预检警告。
· 按需架构与设置说明(#128):让 README.md(英文、俄文、中文)与按需工具执行模型保持一致,补充直接读取文件参数的说明,并澄清 context_lens_log 中 autoCompressThreshold 的用法。在 docs/design/DESIGN.md 中记录第 11 节「按需语义执行与直接读取文件约定」。
· 质量门禁:全部 101 项测试通过(npm test),dsh-plugin-preflight FAIL=0,包体积 29.7 KB(< 256 KB)。
· 发布元数据
· 插件版本:0.1.35
· 兼容 DSH 版本:v0.2.0-rc.2
· Gitea 提交:7e40c90aa9278122170098a9ddc50fe4e6d97f8c
· 镜像提交:448126849ee7335686e7c0a7eddc2d13ffaa4e71
v0.1.342026-10-19
· 变更内容
· 绝对文件路径的相对焦点模式匹配(#125):修复了相对焦点模式和目录名(如 src、lib/foo.ts、./src、/src)在 context_lens_code 中无法匹配绝对文件路径(如 /repo/src/a.js)的问题,该问题会导致焦点文件被骨架化。在 lib/tools.js 中实现了带边界检查的目录段匹配和前导 ./ 归一化,对部分文件夹名冲突(my-src 与 src)零误报。
· 设计契约已更新:在 docs/design/DESIGN.md 中记录了会话焦点路径匹配契约。
· 质量门禁:全部 96 项测试通过(npm test),dsh-plugin-preflight FAIL=0,包体积 28.5 KB(< 256 KB)。
· 发布元数据
· 插件版本:0.1.34
· 兼容 DSH 版本:v0.2.0-rc.2
· Gitea 提交:bc455b2f3ac1100ce7bc992eacc0c999bfe2e84c
· 镜像提交:7850e4eda5addecbc199b392bc146aa3c74fec88
v0.1.302026-10-10
· 变更说明 · 解包 Schemastery Volatile 对象:确保 lib/index.js 里初始 readConfig 和 teardown 兜底都经 plainConfig 包一层,避免原始 Schemastery Volatile 对象 { get: [Function] } 流到工具使用方(astSkeletonMaxDepth、compressionMode、autoCompressThreshold),也避免出现 NaN 或 [object Object] 比较。 · 主动刷新实时配置缓存:新增本地缓存 cachedLiveSettings,在 settings/document-updated 事件触发时主动刷新,去掉空壳处理函数,工具执行时也不再反复同步查询 describe()。 · 清理死代码:从宿主配置读取中移除走不到的旧分支 sctx.settings.get,并清理 lib/tools.js 里未使用的模块级变量 lastActiveSession。
数据来自仓库的 GitHub Release,可能与插件实际版本不一致。
README
由 DeepSeek 最新模型翻译生成📦 @goodandready/dsh-context-lens
DeepSeek Harness 语义 AST 代码骨架提取与测试日志压缩插件
🇬🇧 English •
🇷🇺 Русский •
🇨🇳 中文说明
⭐ 如果您喜欢本插件,请在 GitHub 上点亮 Star —— 这能让我了解插件对您有所帮助,并激励我持续维护和演进它。
🐛 如遇问题或有功能建议,欢迎使用任意语言提交 GitHub Issue —— 您的所有实用建议都将在后续版本中得到评估和实现。
⚡ 核心定位与职责划分
说明:上下文预算控制、Token 计数、工具输出头尾截断 (dsh-compaction-tool-result-pruner) 以及大文件溢出落盘 (dsh-spill-policy, dsh-token-meter) 由 DSH 核心引擎 (>= 0.1.5) 原生负责。
dsh-context-lens 专注于核心不具备的能力 —— 语义压缩:
1. AST 代码骨架生成:提取函数签名、接口、类型定义及文档注释,去除冗长实现体(支持 9+ 种语言)。
2. 焦点路径机制:正在编辑的文件保留全量内容,周边工作区文件生成骨架。
3. 测试与构建日志压缩:保留失败信息、错误栈及汇总结果,剔除冗余输出。
展开完整文档(README 剩余 1 节)
📦 @goodandready/dsh-context-lens
DeepSeek Harness 语义 AST 代码骨架提取与测试日志压缩插件
🇬🇧 English •
🇷🇺 Русский •
🇨🇳 中文说明
⭐ 如果您喜欢本插件,请在 GitHub 上点亮 Star —— 这能让我了解插件对您有所帮助,并激励我持续维护和演进它。
🐛 如遇问题或有功能建议,欢迎使用任意语言提交 GitHub Issue —— 您的所有实用建议都将在后续版本中得到评估和实现。
⚡ 核心定位与职责划分
说明:上下文预算控制、Token 计数、工具输出头尾截断 (dsh-compaction-tool-result-pruner) 以及大文件溢出落盘 (dsh-spill-policy, dsh-token-meter) 由 DSH 核心引擎 (>= 0.1.5) 原生负责。
dsh-context-lens 专注于核心不具备的能力 —— 语义压缩:
1. AST 代码骨架生成:提取函数签名、接口、类型定义及文档注释,去除冗长实现体(支持 9+ 种语言)。
2. 焦点路径机制:正在编辑的文件保留全量内容,周边工作区文件生成骨架。
3. 测试与构建日志压缩:保留失败信息、错误栈及汇总结果,剔除冗余输出。
graph LR
subgraph RawContext [原始输入]
Code[📁 源代码] --> Lens[dsh-context-lens 语义引擎]
Logs[📋 测试与构建日志] --> Lens
end
subgraph Lens [语义压缩处理]
Lens --> Focus{路径焦点判断}
Focus -->|聚焦文件| FullCode[保留完整代码]
Focus -->|周边文件| AST[AST 骨架提取]
Lens --> LogCompress[日志压缩: 错误/堆栈/汇总]
end
subgraph Output [优化后上下文]
FullCode --> Agent[🤖 Agent 上下文]
AST --> Agent
LogCompress --> Agent
Agent --> Core[⚙️ DSH 核心截断与溢出策略]
end
style RawContext fill:#1e1e2e,stroke:#89b4fa,stroke-width:2px,color:#cdd6f4
style Lens fill:#181825,stroke:#cba6f7,stroke-width:2px,color:#cdd6f4
style Output fill:#11111b,stroke:#a6e3a1,stroke-width:2px,color:#cdd6f4
🛠️ Agent 工具参考 (归并至 2 个工具)
所有工具完全符合 DeepSeek Harness 规范,output.render 统一返回 ContentBlock[] 数组。
| 工具名 | 操作模式 | 参数 | 描述 |
| context_lens_code | action: "skeleton" (默认) | filePath?, code?, language?, maxDepth?, sessionId? | 直接从 filePath 读取并生成 AST 骨架(无需预先读取完整文件,节省上下文),或基于传入的 code 处理。若处于焦点内则返回完整代码 |
| context_lens_code | action: "focus" | paths: string[], sessionId? | 设置当前会话的焦点路径列表 |
| context_lens_code | action: "get_focus" | sessionId? | 获取当前会话的焦点状态 |
| context_lens_code | action: "clear_focus" | sessionId? | 清空当前会话的焦点路径 |
| context_lens_log | N/A | text (或 log), mode?, maxLines?, auto?, command? | 压缩测试或构建日志,保留错误、堆栈及总结信息 |
⚙️ 配置项
在 DSH 设置中心 (plugins.row.config / plugins.item) 中配置:
| 配置项 | 类型 | 默认值 | 描述 |
| compressionMode | string | 'balanced' | 日志压缩模式 (raw, balanced, aggressive) |
| astSkeletonMaxDepth | number | 3 | AST 骨架最大嵌套深度 |
| autoCompressThreshold | number | 4000 | 调用 context_lens_log (auto: true) 时自动压缩触发的字符阈值(设为 0 禁用) |
📄 授权协议
MIT © GooDAnDReaDY预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
GooDAnDReaDY/dsh-context-lens
DSH 插件,做 AST 上下文压缩、测试日志过滤和 token 预算守卫
相关插件 · 对话 / 记忆
上下文中枢oceanbase/powercontext
上下文跟着工作走 —— 跨会话、跨智能体、跨人。
★ 1,487已汉化DSH
73
智能体记忆库plastic-labs/honcho
Honcho 是记忆基础设施,用来构建有状态的智能体。这些智能体能理解不断变化的人、智能体、群组、项目和想法。
★ 7,894已汉化DSH
71.7
长程智能体控制面loopx-project/loopx
给 Agent 一个目标,让工作持续向前。
★ 6,358已汉化DSH
71.3
智能体上下文数据库volcengine/OpenViking
给 AI 智能体用的上下文数据库
★ 41,379已汉化DSH
71.3
长效机器人团队Fei2411/DS-Bot
DS Bot 是一个基于 DeepSeek Harness简称 dsh的 bot 插件,插件将 dsh 改造为 bot…
★ 5,084已汉化DSH
71.1
可携带记忆层EverMind-AI/EverOS
为什么选择 EverOS
★ 13,778已汉化DSH
71.1
这是你的仓库?认领条目