其他
完整应用
deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
PROJECT README
通过 Chrome DevTools Protocol 控制一台专用 Chrome 实例(独立临时用户目录 + --remote-debugging-port),提供 16 个模型工具:
| 工具 | 作用 |
|---|---|
chrome_open / chrome_close |
启动/关闭专用 Chrome(可 headless) |
chrome_status |
标签页列表与当前状态 |
chrome_goto / chrome_back / chrome_forward / chrome_reload |
导航 |
chrome_new_tab / chrome_close_tab |
标签页管理 |
chrome_dom |
可见可交互元素 DOM 快照(nid + 坐标) |
chrome_click / chrome_type / chrome_keypress / chrome_scroll |
交互(DOM 节点或视口坐标) |
chrome_screenshot |
截图(视口/整页,PNG 落盘) |
chrome_eval |
页面内只读 JS 求值 |
Host 插件 --stdin/stdout JSON-RPC--> chrome-helper.mjs(Node>=22, 全局 WebSocket)
--> --remote-debugging-port 启动专用 Chrome --> CDP(浏览器级 WS + Target.sendMessageToTarget)
host.js —— 动态插件 Host 半源码(= cordis_define 的 code.host 原文),供会话内 cordis_define + cordis_run 恢复。chrome-helper.mjs —— Node 辅助进程(CDP 桥),运行时资产。preset/plugin.js —— 同一功能的预设平面版(真实 Cordis 插件,零外部依赖),用于挂进 agent preset(如 vue-admin),见 preset 种子 custom-plugins/presets/vue-admin/。chrome-helper.mjs 复制到目标工作区的 .dsh-chrome/ 目录(host.js 从此路径读取并 spawn)。host.js 内容 → cordis_define(kind: new + idPrefix,如 chrom)→ cordis_run。纯 Host 插件,无 Client 半,无需 UI 授权。preset/plugin.js + chrome-helper.mjs 放进预设目录,并在 agent.cordis.yml 加行:- id: chrome-control
name: './chrome-control/plugin.js'
相对行以预设目录为基准;plugin.js 刻意不 import 任何 @deepseek-ai/*(用户预设目录无 node_modules),工具定义手写 ToolDefinition。
WebSocket);Chrome 可执行文件(Windows 注册表 App Paths / 常见安装路径 / DSH_CHROME_PATH 环境变量)。Target.attachToTarget(flatten:false) + sendMessageToTarget(直连 /devtools/page/* 与 flatten 会话可能无响应)。node --check host.js;node --check preset/plugin.js。chrome_click 坐标点击依赖视口坐标;DOM 节点点击会自动滚动到可见后点中心。CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。