dsh-browser
DeepSeek Harness 的受控浏览器自动化:agent_browser 工具与 BrowserAutomationService 通过 agent-browser CLI 驱动真实 Chromium / Chrome 页面(或指定 CDP 端点),支持 allowedDomains 域名收敛与单次调用输出上限。
kasenri
@kasenri
⬇ 1
★ 0
main
安装
dsh plugin --profile web add github:kasenri/dsh-browser
需要可复现安装时,可在仓库后追加 #commit 固定提交。
DeepSeek Harness 的受控浏览器自动化:agent_browser 工具与 BrowserAutomationService 通过 agent-browser CLI 驱动真实 Chromium / Chrome 页面(或指定 CDP 端点),支持 allowedDomains 域名收敛与单次调用输出上限。
该插件未提供要点说明,请参考仓库 README。
agent-browserbrowser-automationdeepseek-harnessdsh-plugin
- 安装并启动 DeepSeek Harness:
npx @deepseek-ai/dsh web - 在终端执行上面的安装命令(CLI 会解析插件并核验来源)
- 用 dsh plugins list 确认已安装,必要时重启 Harness 生效
插件以当前 dsh 进程的权限运行,安装时可能执行代码。请先通读仓库源码与许可证,确认无破坏性命令与越权访问;本站只做索引,不对第三方插件安全性作担保。
| 代码仓库 | github.com/kasenri/dsh-browser |
| 许可证 | MIT |
| 主要语言 | main |
| 下载量 | 1 |
| GitHub 星标 | 0 |
| 最近推送 | 2026-09-14 |
| 收录日期 | 2026-09-19 |
| 分类 | 工具与能力 |
事实信息来自公开插件目录快照(2026-10-01),介绍文案由本站再加工。
以下为插件仓库 README 全文(原始内容,由公开目录抓取整理)。
# @kasenri/dsh-browser
> This repository is an installable release mirror for @kasenri/dsh-browser 0.1.0.
> Canonical source: https://github.com/KasenRi/dsh-orbit-browser-plugins/tree/main/packages/browser
> Do not develop features here; publish changes from the canonical source monorepo.
Community plugin for [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) (DSH).
Not affiliated with or endorsed by DeepSeek.
Exposes controlled **browser automation** to DSH as a Cordis plugin:
- a `BrowserAutomationService` on `ctx.browserAutomation`
- a model-facing `agent_browser` tool that drives the
[`agent-browser`](https://www.npmjs.com/package/agent-browser) CLI
```text
Harness native infrastructure (agents, tools, sessions)
│
▼
@kasenri/dsh-browser
│ BrowserAutomationService + agent_browser tool
▼
agent-browser CLI → Chromium / Chrome (or an explicit CDP endpoint)
```
## Requirements
| Component | Tested with |
|---|---|
| `@deepseek-ai/dsh` | `0.1.5-rc.2` |
| `@deepseek-ai/cordis` | `4.0.2` |
| `agent-browser` | `0.33.2` (must be on `PATH`) |
| Node.js | `>= 22.19.0` |
| Browser | Chromium / Google Chrome (or an Electron/CDP debug endpoint) |
DSH is in developer preview and evolves quickly; this package is tested with the
versions above, not with every future DSH release.
## Install
The package is published to the npm Registry; the dedicated Git distribution
mirror remains available when a Git source is preferred:
```bash
dsh plugin --profile web add @kasenri/dsh-browser
# Git source alternative, tracks the mirror repository HEAD:
# dsh plugin --profile web add github:KasenRi/dsh-browser
```
The package declares a `dsh.bundle` patch, so `dsh plugin add` registers it as a
profile layer automatically. Restart the profile (or start a new session) after
installing.
The canonical source is maintained in the
[source monorepo](https://github.com/KasenRi/dsh-orbit-browser-plugins/tree/main/packages/browser).
The source monorepo's versioned Release tarballs remain available for manual or
offline fallback, but the Market uses this dedicated Git repository so updates
can compare the locked commit with `HEAD`.
If `agent-browser` is not on `PATH`, point the plugin at an executable with the
`command` config key, the `executablePath` config key, or the
`DSH_BROWSER_EXECUTABLE_PATH` environment variable.
## Tool input modes
`agent_browser` accepts exactly one of:
| Mode | Purpose |
|---|---|
| `args` | Raw `agent-browser` argv (e.g. `["open", "https://…"]`, `["snapshot", "-i"]`). |
| `semanticAction` | Stable target: `action` + `locator`/`role`/`name`/`selector`. |
| `job` | Short deterministic multi-step batch (`steps`, `failFast`). |
| `qa` | Page QA preset (`url` or `attached`, expected text/selector, diagnostics). |
| `electron` | Explicit CDP attach: `{ action: "connect", port | url }` or `{ action: "probe" }`. |
| `sourceLookup` | Candidate source locations from DOM/React evidence + bounded workspace scan. |
| `networkSourceLookup` | Failed-request evidence + candidate source/workspace hints. |
Standard workflow: `open` → `snapshot -i` → use the current `@refs` →
`click`/`fill`/`select` → `snapshot -i` again after the page changes.
Other options: `stdin` (only for `batch`, `eval --stdin`,
`auth save --password-stdin`), `outputPath` (atomic `0600` write of the
structured result), `timeoutMs`, `sessionMode` (`auto` | `fresh`).
## What it protects
- **Stale refs** — refs are page-scoped; mutations against refs that are not in
the latest snapshot of the same target are blocked before any browser call.
- **Tab drift** — an unexpected active-target change (including `about:blank`)
invalidates refs and triggers exactly one deterministic recovery via
`tab list` + `tab `; ambiguity fails as `tab-drift` instead of guessing.
- **Artifacts** — screenshots, downloads, PDFs, HAR/trace/record files are
verified on disk (existence, size, type) before success is reported.
- **Secrets and protected state** — `.agent-browser` state, password stores and
cookie databases are blocked; credential-shaped values are redacted from all
tool output.
- **Domain containment** — when `allowedDomains` is configured, known URLs are
preflighted, the managed context launches with upstream `--allowed-domains`,
and the final URL is verified. CDP attach (`electron`/`connect`) is refused
while containment is enabled, because it cannot be enforced on an
existing browser context.
- **Human verification** — CAPTCHA, OTP, passkey, WebAuthn and 2FA are never
bypassed; the tool reports what it saw and stops.
Large outputs are compacted into a bounded preview plus a spill file instead of
being pushed into the model context.
## Configuration
| Key | Default | Meaning |
|---|---|---|
| `command` | `agent-browser` | Executable to invoke. |
| `namespace` | — | Optional agent-browser namespace. |
| `executablePath` | `DSH_BROWSER_EXECUTABLE_PATH` | Chromium/Chrome executable for the managed context. |
| `timeoutMs` | `35000` | Default per-call subprocess timeout. |
| `maxOutputChars` | `8000` | Inline output budget before spilling. |
| `maxOutputLines` | `120` | Inline line budget before spilling. |
| `spillDir` | `~/.dsh/browser-artifacts` | Where compacted outputs are written. |
| `allowedDomains` | `[]` | Domain allowlist for strict containment. |
| `registerTool` | `true` | Register the `agent_browser` tool. |
## License
MIT
数据来源:公开的 DeepSeek Harness 插件目录与各插件 GitHub 仓库。本站为独立第三方目录,与 DeepSeek、幻方(High-Flyer)及插件作者均无隶属或背书关系。