# envoy-dsh 中文文档

规范地址：https://npmcn.com/package/envoy-dsh/

版本：0\.1\.44
npm 元数据更新时间：2026-11-03T14:01:06.624Z
中文译文更新时间：2026-11-03T14:38:37.064Z
软件包许可：Apache-2\.0

本文由上游 README 机器翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/envoy-dsh
原文对照：https://npmcn.com/package/envoy-dsh/?lang=original
项目主页：https://github.com/regrevia/Envoy/tree/main/integrations/dsh/envoy-dsh#readme
源码仓库：https://github.com/regrevia/Envoy

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：191 kB，14 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- Node.js 要求：\>=20
- 运行依赖：0 个
- 首次发布：2026-10-25T06:40:10.724Z
- 最新版本发布：2026-11-03T14:01:06.206Z
- 已发布版本数：15（近 12 个月 15 个）

## 中文简介

粘贴链接；代理读取它。小红书、抖音、哔哩哔哩、微信、文章、pdf和音频成为wiki或知识库中可引用的Markdown。在60回合有vs没有：完成阅读22% -> 92%（+70分），超时68% -> 0%，回答“”

## 安装

```sh
npm install envoy-dsh
```

也可以使用：`pnpm add envoy-dsh`、`yarn add envoy-dsh`、`bun add envoy-dsh`

## README

# DeepSeek Harness的特使

这个包是一个DeepSeek线束 [特使](https://npmcn.com/README.md)． 它 在一次安装中做三件事：

1.  安装Envoy的工作室MCP桥 `@deepseek-ai/dsh-mcp-client`；
2.  在public上注册一个改编的特使代理技能 `ctx.skills` 服务;
3.  听 `agent/pre-step` 事件和，就踏出了一个转身的第一步 用户消息包含一个公共链接，前置一个短路由消息。

改编版保留了Envoy的阅读，发现，扩展，视觉传递，以及 能力的行为。它只改变了集成表面：技能使用 这个 `mcp__envoy__*` DeepSeek Harness分配给挂载的工具名称 服务器。

[中文快速安装](https://npmcn.com/package/README.md) · [特使](https://npmcn.com/skills/envoy/INSTALL.md)

## 输入一个链接，输出人工智能材料

不管你在看什么，交出它，把你想要的东西拿出来。 Markdown，一个wiki页面，一个知识库条目。抖音、哔哩哔哩、小红书、 知乎、微信的帖子、文章、pdf和播客都走同样的道路。一个读 返回带有时间戳、帧和 `material_id` 你可以引用，这样经纪人就会根据实际所说的话来写，而不是根据标题。对于整个饲料， `envoy collect` 检查点每个项目，因此中断的运行会继续 重新启动。

通过对这些平台上123个实时链接的测量： **80%可用作源 材料** ——93%的链接都回复了 **0的失败** 和每一个缺口命名。

每只手臂同样转60圈，带和不带捆绑包： **结尾通常不用说 无法读取22%→92%**， **超时68%→0**， **答案至少命中一个 参考事实关键字23%→82%**。 A/B是探索性的（不同的大小写，没有人为的正确性审查）；每次读的 行为是测试所断言的。 安全带已系好 `docs/experiments/link-compatibility.md`;重新运行它 `scripts/acceptance/link_coverage.py`。

Codex和Claude Code拥有相同的Envoy技能；这个包裹是 DeepSeek Harness构建，交付物是相同的Markdown， wiki或 所有三个主机上的知识库材料。

## 安装后会发生什么变化

相同的模型，相同的链接。不同之处在于read在 代理。

| 问 | 自行控制 | 有了这个包 |
| --- | --- | --- |
| 长文，b微信帖子，知乎专栏 | 截断的文本，或只有摘要 | 带有标题和源定位符的正文文本 |
| PDF | 首页，或者页面的截图 | 带有页码和定位符的每页文本 |
| 视频（抖音、哔哩哔哩） | 标题，封面，描述，丹玛库 | 绑定播放器文件；附有承保数字的说明文字或ASR；当主机声明可以显示帧时 |
| 音频 | 没有可用的 | 时间戳记录;缺乏自信和沉默寡言是公开的，而不是隐藏的 |
| 登录墙 | 403、空正文或验证码页面 | `challenge_required` 再加上人工步骤：为一个站点范围导入cookie，或者登录一次 |
| 阅读页面 | 似是而非的猜测 | `partial` 有读过的部分，还有缺口的名称 |

我们运行的转弯水平A/B是探索性的，而不是声明：两个手臂有 不同的时限（900秒和2400秒），一只手臂被分级为仅终端。 文章级的引用计数在每臂60次以上的噪音中得到了水平。 这个bundle保证的是上面的每次读取行为和测试 维护它。

## 没有捆绑包什么都一样

没有特使阅读链接仍然有效。捆绑包添加的不是新的 模型缺乏的功能，但有一个有限的功能：声明的视觉输入 保留的材料可以搜索而不是重新获取，当 无法读取源文件，并且使用人工步骤代替可执行命令 当页面需要的时候。

## 需求

-   带插件管理器的DeepSeek线束(`engines.dsh` 是 `>=0.1.5`）.
-   macOS、Linux或Windows。启动器是普通的Node (`node -e <script>`）， 写一次 `launch.cjs`因此，每个平台都安装在同一座桥上。在 私有运行时所在的Windows `%LOCALAPPDATA%\envoy-dsh\runtime` 它的可执行文件是 `Scripts\envoy.exe` / `Scripts\python.exe`。

什么都没有。没有单独的CLI安装，没有 `envoy browser setup`，没有Python 预飞行：第一次使用绑定运行时轮的bundle条款 `~/.local/share/envoy-dsh/runtime` （`%LOCALAPPDATA%\envoy-dsh\runtime` 在 窗户) `uv` 或者系统Python的 `venv`，分离的铬为 第一次安装的页面实际上需要浏览器。一个 `envoy` 已经在 当PATH足够新时，就按原样使用。唯一一台它无法覆盖的机器 既不 `envoy` 也不 `uv` 也不 `python`;然后挂载失败，只有一行 命名 `uv`． 浏览器配置文件、ASR和OCR仍然是可选的和按需的 [INSTALL.md](https://npmcn.com/skills/envoy/INSTALL.md) 当任务需要它们时。

## 可见窗口不是代理可以打开的

特使读得不知所云。当页面需要用户的标识时，工具返回 `requires_human: true` 内部 `details.needs_user_action`;传递问题和 选项，停止，并等待他们的回答。不要设置 `ENVOY_VISIBLE_BROWSER`，不要运行打开窗口的命令。可见 模式只适用于人机交互终端（标准输入和标准输出） TTY，明确选择加入)；CLI在这个插件的工作室下拒绝它 传输，因此期望在屏幕上没有窗口的登录提示符。

## 安装

在应用程序中：插件管理器→搜索 `Envoy` →安装。这就是整个流程 bundle会发布自己的Harness补丁，所以配置文件中的任何内容都不会被编辑 的手。

从shell中，一个命令（它在桌面应用程序中找到CLI） `dsh` 不在PATH上)：

```bash
curl -fsSL https://raw.githubusercontent.com/regrevia/Envoy/main/integrations/install.sh | sh -s -- dsh
```

如果没有脚本，它是相同的单个命令，可选地使用 `--profile <name>`：

```text
dsh plugin --profile web add envoy-dsh
```

释放tarball (`envoy-dsh-<version>.tgz` 在GitHub发布)安装 使用相同的命令，并且不等待NPM注册表，该注册表发布 分开。

用签出代替开发：插件管理器→安装包→ `/absolute/path/to/Envoy/integrations/dsh/envoy-dsh`,或 `plugin_manager` 与 `action: install_bundle` 这个目录是 `target`。

第一个链接读取比其他链接慢：这是一次性运行时 下载，当页面需要浏览器时再加上Chromium安装。集 `ENVOY_DISABLE_AUTO_BROWSER_SETUP=1` 在Harness开始保持浏览器之前 安装手册(`envoy browser setup`)。

## 它落在哪个侧写

包安装的目标是一个配置文件，因此具有多个配置文件的机器可以 其中一个有特使，而另一个没有。确认会话的配置文件 在结束语前实际使用：

```bash
echo "$DSH_PROFILE"                                  # the profile this shell serves
readlink ~/.dsh/profiles/$DSH_PROFILE/node_modules/envoy-dsh
```

指向此目录的符号链接意味着repo副本是活动的，并且可以应用编辑 没有重新安装。这个 `envoy` 出现在技能目录中的技能是 同样的证据也出现在治疗过程中。

bundle插入两行：

| 行 | 包 | 目的 |
| --- | --- | --- |
| `envoy-mcp` | `@deepseek-ai/dsh-mcp-client` | 开始 `envoy mcp` （核心工具集），并将四个链接工具公开为 `mcp__envoy__*`。 |
| `envoy-skill` | `envoy-dsh` | 注册Envoy技能提供程序和链路路由 `agent/pre-step` 钩。 |

`core` 公开 `envoy_read`， `envoy_expand`， `envoy_search`, `envoy_observe`。这个 `full` 工具集增加了本地视频，发现， 收集、回放、视觉历史和医生工具。出口 `ENVOY_MCP_TOOLSET=full` 在Harness环境中重新启动bundle 当需要的时候。从 `core` 使输入每个请求前缀的MCP工具声明保持较小 用于普通链接阅读。对于流程生命周期，该选择是静态的。

## 运行时解决

Harness GUI可能不会继承登录shell的PATH，因此补丁会在 通常的uv和Homebrew条目，然后取第一个答案：

| 订单 | 来源 | 当它适用时 |
| --- | --- | --- |
| 1 | `ENVOY_BIN` | 固定的二进制文件，包括比发布轮更新的构建。 |
| 2 | `envoy` 在路径 | `uv tool install`，自制或手动安装。 |
| 3 | `~/.local/share/envoy-dsh/runtime/bin/envoy` | 第一次启动时由固定的释放轮提供。 |

集 `ENVOY_DSH_VERSION` 提供另一个已发布版本。指向 桥接在源签出或开发构建中 `ENVOY_BIN` 对其 绝对路径。 `toolCallTimeoutMs` 比Envoy的默认值高300秒 180秒的工作预算。

## 验证

安装完成后，请检查：

-   插件管理器显示 **特使链接阅读器** / **使节** 与 捆绑鸟图标。
-   代理工具列表包含 `mcp__envoy__envoy_read`， `mcp__envoy__envoy_expand`， `mcp__envoy__envoy_search`, `mcp__envoy__envoy_observe`． 高级工具只在a之后出现 重新启动, `ENVOY_MCP_TOOLSET=full` 在Harness环境中。
-   技能目录包含 `envoy`;加载显示 `# Envoy Link Reader in DeepSeek Harness` 和 `mcp__envoy__` 工具名称。
-   `envoy doctor --json` 报告 `0.1.9` 以及预期的能力目录。 当桥与跑 `full`， `mcp__envoy__envoy_doctor` 是等价的。
-   在 **第一步** 在包含公共URL的回合中，模型会看到一个 注射 `[envoy-link-routing]` 消息。一个没有链接的提示，一个后续步骤， 本地主机/私有URL，或者包含 `不要用 Envoy` 没有得到 注入。钩子打不开：如果有什么东西抛出，就按原来的转 持续不变。

`failOnStartupError: true` 使丢失或损坏的运行时可见为 失败的 `envoy-mcp` ，而不是在没有 工具。概要文件的其余部分仍然可用。

## 布局

```text
integrations/dsh/envoy-dsh/
├── package.json           # bundle manifest and display exports
├── cordis.patch.yml       # MCP client + skill provider rows
├── index.js               # skill provider + agent/pre-step link hook
├── locale/{en,zh}.json    # Plugin Manager title and description
├── icon.png               # downscaled Envoy bird artwork
├── skill/
│   ├── envoy.md           # generated DSH skill body
│   ├── manifest.json      # generated name/description
│   └── references/
│       └── protocol.md    # generated protocol reference
├── README.md
├── LICENSE
└── NOTICE
```

`index.js` 是手写的，并镜像共享策略 `packages/envoy-cli/src/envoy_cli/hooks.py` URL提取，私有地址 过滤，选择退出，六点措辞)不导入主机内部。保持 两者在政策变化时保持同步； `tests/test_dsh_plugin.py` 运行 通过两个实现实现相同的奇偶语料库。

技能资产是从规范生成的 `integrations/skills/envoy/SKILL.md` 和 `integrations/skills/envoy/references/protocol.md`． 不要手工编辑。

## 再生和测试

```bash
python3 scripts/build_envoy_dsh_plugin.py
python3 scripts/build_envoy_dsh_plugin.py --check
pytest -q tests/test_dsh_plugin.py
```

生成器为Envoy工具名称添加前缀，保持CLI命令不变， 将通用的“mcp兼容主机”启动部分替换为 DeepSeek Harness主机描述，并同步包版本 `packages/envoy-cli/pyproject.toml`。

## 许可证

apache - 2.0。看到 [许可证](https://npmcn.com/package/envoy-dsh/LICENSE) 和 [请注意](https://npmcn.com/package/envoy-dsh/NOTICE)． 图标是使者 来自 `frontend/public/brand/envoy-bird.png`，重新分配于 相同的许可证。

## 常见问题

### envoy-dsh 是什么？

粘贴链接；代理读取它。小红书、抖音、哔哩哔哩、微信、文章、pdf和音频成为wiki或知识库中可引用的Markdown。在60回合有vs没有：完成阅读22% -\> 92%（\+70分），超时68% -\> 0%，回答“”

### 如何安装 envoy-dsh？

在项目目录运行 npm install envoy-dsh，或使用 pnpm add / yarn add / bun add。

### envoy-dsh 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/envoy-dsh 是否存在。

### envoy-dsh 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### envoy-dsh 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=20。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### envoy-dsh 可以商用吗？

envoy-dsh 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### envoy-dsh 还在维护吗？

最新版本 0\.1\.44 发布于 2026/11/03（今天）；至今共发布 15 个版本，其中过去 12 个月发布了 15 个；首次发布于 2026/10/25。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

