2672243194/dsh-read-url
2672243194★ 0JavaScript最后同步: 2026-08-15
—
README 摘要
dsh-read-url DeepSeek Harness 的 URL 阅读插件:抓取任意网页, 自动识别编码(GBK/GB2312/UTF-8/Big5) ,提取干净正文,输出 省 token 的紧凑文本或结构化 Markdown 。 零依赖(Node 20+ 内置能力),免 API key,免服务端,装完即用。 为什么做它 DSH 的 Agent 能搜索(返回链接和片段),但缺"把 URL 读成干净正文"这一步。官方 tool-web 的 web fetch 是 整页 turndown 转换 (导航/广告/侧栏全保留),默认上限 20 万字符——token 黑洞。本插件只返回模型真正需要的: 净化后的正文 + 必要元数据 ,并默认截断。 同类插件对比(2026-08-15 实测源码/文档) 能力 官方 tool-web web fetch dsh-webfetch dsh-scrape-webpage dsh-read-url 正文净化(容器级提取) ❌ 整页渲染 ⚠️ 标签级去噪,nav/footer 仍混入 ⚠️ 自研,含噪音 ✅ article/main 容器 + 噪音剥离 默认输出上限 200000 字符 50000 字符 30000 字符 6000 字符 + 段落级截断 中文 GBK/GB2312 视 provider ⚠️ 未归一化,GB2312 易乱码 ❌ 未处理 ✅ 归一化 + 乱码回退 会话级缓存 ❌ ❌ ❌ ✅ 5 分钟 TTL 走 ctx.web seam ✅ 官方本体 ❌ 全局 fetch ❌ ✅ 优先 seam,缺失回退 ctx.effect 卸载清理 ✅ ❌ ❌ ✅ 协作式超时(不暴露给模型) ✅ ⚠️ 自管 ⚠️ 自管 ✅ timeoutMs + exec.signal 模型视角输出 整页 Markdown 紧凑文本 15 字段 JSON 紧凑文本(无需解析 JSON) 依赖 官方 TS 需构建 零依赖 零依赖(JS ESM 即装即用) 遵循 DSH 架构理念 按官方文档实现( docs/capability-seams.md 、 docs/cordis-primer.md 、 docs/tool-execution-pipeline.md ): 1. 网络访问走 ctx.web 能力缝 ——所有 web 访问优先通过 ctx.web.fetch() (seam 内解析 provider,与官方 tool-web 一致),seam 缺失时回退全局 fetch。网络层可替换,不绑定任何具体 provider; 2. 可逆副作用 ——会话缓存注册在 ctx.effect 下,插件卸载即自动清理(时间可组合性); 3. 协作式工具调用超时 —— ToolDefinition.timeoutMs 声明预算, execute(args…
在 GitHub 查看完整 README →