Back to home

flg1217

dsh-llm-agy

AGY (Antigravity CLI) integration for DeepSeek Harness: LLM adapter subagents, deep web search, connectivity diagnostics panel

Stars
1
Language
JavaScript
Created
Aug 16, 2026
Updated
Aug 17, 2026

Introduction

dsh-llm-agy

AGY(Antigravity CLI)— DeepSeek Harness 的智能体增强引擎 将 Google 的 AI 编程代理 Antigravity(由 Gemini 驱动)深度集成进 dsh: 独立推理子代理、深度网页搜索、文本模型图片输入、一键连通性诊断。开箱即用,零源码改动。


一、这是什么

dsh-llm-agy 是面向 DeepSeek Harness(dsh) 的开源插件,把 Google 出品的 AI 编程代理 Antigravity CLI(AGY,基于 Gemini)无缝接入 dsh 生态,为你的工作流提供以下增强通道:

能力说明
独立推理子代理将前端/UI 等任务委派给 AGY 驱动的子代理(Gemini 3.7 Flash High),与主代理并行,长线会话可复用
深度网页搜索web_search 工具经由 AGY 的 Google 搜索通道完成完整深度检索——搜索、打开来源、阅读全文、综合成文,而非简单链接列表
文本模型图片输入纯文本主模型(如 DeepSeek V4 Flash)也能在输入栏直接粘贴图片:后端把图片自动落盘并转为路径文本,主代理用 read_image_agy 看图。全程无感,不新增模型路由、不切换模型
连通性诊断面板dsh 设置 → 插件内的 AntiGravity 卡片:检测本机安装与登录状态、发起真实连通性测试、一键复制各平台安装命令

插件严格遵循 dsh 官方扩展机制(profile bundle patch / registerModelDiscovery / registerSearchProvider / llm/stream waterfall / 客户端 slot),不修改 dsh 任何源码,可随 dsh 平滑升级。

二、核心功能

1. 独立推理子代理(provider 路由 agy)

主代理可随时将任务委派给 AGY——一个由 Gemini 驱动、具备独立思维链与工具面的第二大脑:

  • 通过 agentOptions.provider: 'agy' 将任意子代理切换为 AGY 推理
  • 内置开箱工具:subagent_agy_ui(前端/UI 设计、样式研究、视觉实现、截图核验,可复用长线会话)
  • 复杂大任务可拆分为多个独立子任务并行调度,再汇总整合

2. 文本模型图片输入(全局,零配置)

纯文本主模型(如 DeepSeek V4 Flash)不支持图片输入,但本插件让"输入栏贴图"开箱即用:

  • 粘贴即用:在任意输入栏粘贴图片,原生走 ImageBlock;插件在后端把图片落盘到工作区 .dsh-llm-agy/tmp/pasted-images/,替换为路径文本后交回原模型路由
  • read_image_agy 工具(全局常驻):主代理直接调用即可看图——AGY/Gemini 读图并返回文字描述,任何文本模型都可用
  • 完全透明:不新增 provider 路由、不切换模型、不改前端,用户无感知
  • 工具使用提示词:插件注入全局 system prompt section,引导主代理"看图直接用 read_image_agy、禁止委派子代理读图、不轮询后台子代理"(设置面板可关闭)

3. 深度网页搜索(搜索 provider agy)

将 dsh 的 web_search 工具从"返回链接列表"升级为"完成深度调研":

  • 经由 AGY 的 search_web(Google 搜索)发起检索
  • AGY 自主完成:搜索 → 打开每个来源阅读全文 → 综合撰写准确、完整、带引用的回答
  • 结果语言跟随提问语言;全程不写入会话记录
  • 一键切换:web.searchProvider = 'agy'(设置 → 模型,或 profile patch)

4. 连通性诊断面板(设置 → 插件 → AntiGravity)

无需命令行即可完成 AGY 环境体检:

  • 检测安装/登录:一键确认本机是否已安装 AGY、是否已登录
  • 连通性测试:发起真实指令,直接展示 AGY 的实际回复内容
  • 安装命令:Windows(winget)/ macOS(Homebrew)/ Linux(curl)/ npm 四平台命令,一键复制
  • 工具说明:内置工具速查(subagent_agy_ui / read_image_agy / web_search)
  • 开关:"注入工具使用提示词"——控制是否注入全局工具使用提示词(默认开)
  • 面板交互走官方模型探测通道(api.llm.discoverModels),不占用会话

三、快速开始

系统要求

  • dsh(web profile,npx 版或源码版均可)
  • Node.js ≥ 20
  • AGY CLI(见下方安装命令)

安装插件

# 从 Git 仓库安装(免构建——lib/ 已随仓库提交)
git clone https://github.com/flg1217/dsh-llm-agy.git
cd dsh-llm-agy
pnpm install          # 安装插件依赖(dsh 以 link: 方式挂载本地目录,需插件自身带 node_modules)
dsh plugin --profile web add <dsh-llm-agy 目录>

安装完成后重启 dsh web,进入 设置 → 插件 应能看到 AntiGravity 卡片;展开卡片,点击"检测安装/登录"确认环境就绪。

安装 AGY(Antigravity CLI)

# Windows
winget install --id Google.Antigravity

# macOS
brew install --cask antigravity

# Linux / macOS(通用)
curl -fsSL https://antigravity.google/install | bash

# 或 npm 全局
npm install -g @antigravity/cli

官方文档:https://antigravity.google/docs/cli/install

配置项

配置默认值说明
commandagyAGY 可执行文件命令
modelgemini-3.7-flash-high推理模型
efforthigh推理强度(low / medium / high)
proxyhttp://127.0.0.1:7890流量代理(空字符串禁用)
searchProviderIdagydsh web 搜索 provider 的 id(空字符串禁用搜索接入)
delegationGuidetrue注入全局"工具使用提示词"系统提示(设置面板可切)

可在设置面板直接修改,或编辑 profile 的 cordis.patch.yml

四、典型用法

网页搜索走 AGY 深度调研

# profile patch(~/.dsh/profiles/web/cordis.patch.yml)
- id: web
  config:
    searchProvider: agy

此后主代理调用 web_search 时,将获得 AGY 深度检索后撰写的完整回答与来源引用。

文本模型读图

无需任何配置——read_image_agy 工具全局常驻,任何会话(含纯文本模型)的输入栏粘贴图片后,主代理会直接调用它看图:

用户:请分析这张图片(粘贴图片)
主代理:调用 read_image_agy → 返回 AGY/Gemini 的文字描述 → 继续分析

子代理委派给 AGY

在 agent 预设或工具行中配置:

- id: tool-subagent-agy-ui
  name: '@deepseek-ai/dsh-tool-subagent'
  config:
    provider: spawn
    toolName: subagent_agy_ui
    agentOptions:
      provider: agy            # 由 AGY/Gemini 完成推理
      model: gemini-3.7-flash-high

前端/UI 类任务:委派 subagent_agy_ui,由独立 Gemini 模型完成设计、实现与截图核验。

诊断命令行

/agy status        # 检测 AGY 安装与登录状态
/agy test          # 发起真实测试,展示 AGY 回复
/agy               # 帮助

五、工作原理

插件为双面结构,由 dsh 官方扩展机制装配:

┌─────────────── 宿主进程(node 半)───────────────────┐
│ index.ts       插件入口                              │
│ adapter.ts     AgyLlmAdapter — spawn agy 推理适配     │
│ search.ts      ctx.web.registerSearchProvider         │
│ settings.ts    settings + registerModelDiscovery      │
│ image-paste.ts llm/stream 监听器 + resolveModelInfo   │
│                包装:ImageBlock → 工作区路径文本       │
│ read-image.ts  read_image_agy 工具(全局常驻)          │
│ delegate-guide.ts 全局工具使用提示词 section          │
└──────────────────────────────────────────────────────┘
┌─────────────── 浏览器(web 半)───────────────────────┐
│ client/index.js  settings.plugin.item 卡片            │
│                  复用官方组件与样式                    │
└──────────────────────────────────────────────────────┘
  • 装配:cordis.patch.yml(bundle patch)+ package.json 的 dsh.bundle/dsh.client 清单,dsh plugin add 一键完成
  • 推理:服务端 spawn AGY CLI(stream-json 协议),实时流式输出与 token 统计由 dsh harness 统一呈现
  • 图片输入:包装 llm.resolveModelInfo 为文本模型声明 image 能力(绕过 dsh 的拒绝校验);llm/stream waterfall 监听器把 ImageBlock 落盘为路径文本后直接调用原 adapter——不新增 provider、不切换模型、不改前端
  • 读图:read_image_agy 直接 spawn AGY 读图返回文字描述
  • 搜索:search() 直接调用 AGY,由其自主完成检索与综合
  • 面板:检测/测试经官方 api.llm.discoverModels 通道触发,服务端执行、结果回显,不写会话、不改 dsh 源码

六、参与开发

git clone https://github.com/flg1217/dsh-llm-agy.git
cd dsh-llm-agy
pnpm install
pnpm build          # tsc 服务端 + 客户端 bundle 拷贝
pnpm typecheck
pnpm test

详见 docs/CONTRIBUTING.zh.md

七、许可证

MIT