跳到主要内容

dsh-augmentor

已验证

dsh-augmentor · v0.2.13 · SEE LICENSE IN LICENSE

Augmentor for DeepSeek Harness: DSH plugin + Chrome extension that drives the user's real browser from any DSH session — live page snapshot, click, type, tabs — with save-to-workspace chat sessions.

安装

dsh plugin add dsh-augmentor

用 dsh --profile default --dump-config 确认 layer 已生效 —— 参见安装指南。

源码

标签

作者

说明文档

dsh-augmentor (DSH plugin)

The DSH-side half of Augmentor: it mounts into a DeepSeek Harness web profile and gives any DSH session the tools to drive the user's real Chromium-based browser (page snapshot, click, type, tabs) through the Augmentor Chrome extension, plus the chat-lifecycle surface (dedicated chat dir, save-to-workspace sessions) the extension panel uses.

The package is a cordis bundle: dsh plugin add installs it into a profile and its dsh.bundle.patch layer mounts the plugin automatically.

Version 0.2.11 pins the security-fixed ws 8.21.3. Use the matching Browser and companion from the complete release. Updating this npm plugin alone does not update an older companion or extension.

Requirements

  • Node.js ≥ 22.18 (the DSH host requirement)
  • A DSH web profile (e.g. web)
  • Chromium-based browser with the Augmentor extension installed (see the repo root README)

Install

Published npm package (check its version and shipped license):

dsh plugin --profile web add [email protected]

From git (no npm needed):

git clone https://github.com/ManoloRemiddi/augmentor-agent.git
dsh plugin --profile web add /path/to/augmentor-agent/apps/browser/plugin

dsh plugin is a thin pnpm forwarder: it installs the package into the profile's node_modules, sees the dsh.bundle.patch declaration, and adds the package to dsh.profile.bundles — the next profile boot composes the plugin's patch layer and mounts it.

Note on build scripts: the prepare script rebuilds dist/index.js (the bundled entry) with esbuild. A pre-built dist/ ships in the repo, so if pnpm's build-script policy blocks prepare (pnpm ≥ 10 default), the install still works — or allow the build in the profile's pnpm-workspace.yaml under allowBuilds and re-run.

Configuration

Declared in the profile's cordis.patch.yml (the plugin's patch layer supplies the entry; config rows can be added there):

key default meaning
apiPath /api/augmentor HTTP handshake route under the DSH app
wsPath /api/augmentor/ws WS upgrade route for the pipe channel
commandTimeoutMs 30000 per-action browser round-trip timeout
wsToken (empty) action-channel token; empty = per-machine secret file ~/.dsh/augmentor-ws-token (created 0600 on first boot)
chatDir ~/Augmentor dedicated directory Augmentor chats live in (~ expands)
agentPreset augmentor agent preset for extension sessions (carries the browser-control persona)
workspaceTitle Augmentor workspace the Save button attaches sessions to

Wire protocol

The pipe (the extension's native-messaging host) connects to wsPath, gated by the token (header x-augmentor-token, legacy ?token= fallback on the plugin side). Frames are JSON objects; the canonical vocabulary lives in ../wire.mjs (shared by pipe, plugin, and the extension service worker):

  • welcome {name, protocol, version} — plugin → pipe, once on connect
  • request {id, method, params} / reply {id, result | error} — both directions; browser/execute goes to the active pipe only, and its reply must come from that same socket

Tools exposed to the agent

browser_tabs_list, browser_navigate, browser_snapshot, browser_click, browser_type — each one round trip through the active pipe to the extension.

License

MIT with Augmentor Resale Restriction. Free personal/business use and modification; resale requires prior written permission from Manolo Remiddi.