跳到主要内容
AI教程

设置并使用 dsh-superagent 执行主动式 GitHub 编码任务

了解 dsh-superagent 如何接收经过授权的请求,在隔离的代理会话中运行编码任务,将结果返回到原始对话,并突出显示需要人工关注的决策。本指南涵盖引导式设置、文档、日常使用、验证、授权、部署准备和扩展点。

设置并使用 dsh-superagent 执行主动式 GitHub 编码任务

什么是 dsh-superagent?

dsh-superagent 是一个主动式编码代理,专为配合单个 GitHub 仓库工作而设计。它以 DeepSeek Harness 软件包的形式分发,并监听来自 GitHub 以及可选的飞书请求。

当获授权的用户要求它执行任务时,系统会创建一个工作项、建立专用的代理会话和目录、完成任务,并在原始对话中回复。结果可能包括一个拉取请求。Web 面板会显示需要人工关注的工作项。

dsh-superagent 是供参考的研究原型,并非 DeepSeek 官方产品,也不是可用于生产环境的系统。

公开发布的仓库与团队内部版本不同,也与 探索超级代理设计:迈向更自主的代理系统 一文中讨论的实现不同。该文章中的一些想法描述的是未来方向,尚未在此原型中实现。

核心设计原则

该项目旨在尽可能减少对人工注意力的占用,同时尽可能提供更大价值。由于团队级代理也可能消耗团队的注意力,dsh-superagent 遵循两项重要约束:

  • 只有在有人要求它行动,或团队定义的规则允许该行动时,它才会执行操作。
  • 只有在有人必须采取行动,或有人可以使用已完成的结果时,它才会发言。

部署代理前,请阅读理念文档。该文档解释了这一运行原则,以及运行系统的人员所承担的责任。

主要功能

  • 专注于单个仓库:每次部署只处理一个 GitHub 仓库。
  • GitHub 集成:代理监听来自 GitHub 的授权请求。
  • 可选的飞书集成:团队也可以使用飞书作为请求来源。
  • 工作项跟踪:已接受的请求会成为一个工作项。
  • 隔离执行:每项任务都在独立的代理会话和目录中运行。
  • 理解对话的回复:结果会返回到请求发起的对话中。
  • 人工关注面板:Web 面板会标识需要人员参与的工作。
  • 规则控制的行为:代理只会响应请求或明确的团队规则执行操作。

安装前须知

请将此仓库视为研究代码。它可能包含缺陷、不一致的编码风格,或不适合你所在环境的工程决策。在依赖它之前,请审查实现并进行调整。

配置包含许多步骤,因此项目建议与编码代理协作完成,而不是手动猜测所需的配置。

引导式安装与配置

步骤 1:使用编码代理打开仓库

让你的编码代理可以访问已克隆或已检出的仓库。然后向它提供项目推荐的配置指令:

Read SETUP.md in this repository and set up dsh-superagent with me.

编码代理应以 SETUP.md 作为事实依据。

步骤 2:回答配置问题

配置流程设计为每次提出一个简短问题。请提供有关仓库、集成和环境的所需信息。即使流程有代理协助,也不要因为这个原因跳过审核步骤。

步骤 3:审查完整计划

收集所需信息后,编码代理会一次性展示完整计划。在允许安装或更改配置前,请仔细审查该计划。尤其要确认计划与您打算让代理管理的仓库,以及您打算启用的请求来源相符。

步骤 4:让代理安装并配置项目

批准计划后,编码代理会根据 SETUP.md 安装并配置系统。由于 README 将详细配置流程交给该文件,请遵循其中的当前说明,不要依赖未记录的命令。

步骤 5:验证项目

进行开发验证时,请运行:

pnpm check

此命令会运行类型检查、测试和构建。成功运行后,即可综合检查项目的类型、测试套件和构建流程。

运行代理前先了解文档

编号文档是按顺序累积编写的。请按顺序阅读,因为每份文档只假设你已经了解此前文档介绍的内容:

  1. 000 理念:了解最大限度减少注意力占用的运行原则以及操作员的职责。
  2. 001 领域模型:了解项目的核心概念及其相互关系。
  3. 002 授权:确定哪些人有权要求代理执行工作。
  4. 003 执行:了解已接受的任务如何执行。
  5. 004 提示词:查看指导代理行为的提示词。
  6. 005 面板:了解 Web 面板如何呈现需要人工关注的事项。
  7. 006 部署:遵循手动设置、配置、升级和故障排除指南。
  8. 007 架构:研究系统的技术结构。
  9. 008 指南:了解如何添加 Source。

基本用法

提交已授权的请求

设置完成后,获准用户可以通过 GitHub,或在启用可选集成时通过飞书,要求代理执行仓库工作。典型请求应说明期望的仓库变更以及相关验收标准。

例如,获准用户可以要求代理调查仓库问题、进行适当的代码变更并返回结果。具体的请求方式和获准用户取决于配置的 Source 及授权规则。

让代理创建并执行工作项

请求获接受后,dsh-superagent 会创建一个工作项,并在其独立的代理会话和目录中执行任务。这种执行模型使任务的工作上下文保持隔离。

在原上下文中接收结果

代理会在原始对话中回复,而不是迫使用户去单独的渠道查找结果。根据所执行的工作,回复中可能包含拉取请求。

使用面板进行人工跟进

检查 Web 面板中需要人员处理的工作。面板通过呈现需要人工操作的事项,支持项目的注意力管理目标,而不是为每个内部步骤生成不必要的沟通。

授权与安全运行

授权是设计的核心。能够跨团队仓库执行操作的主动式代理不应接受任意请求。请使用授权文档来定义谁可以发起工作以及需要满足哪些条件。

  • 限制请求者:仅允许指定人员或系统创建可执行的请求。
  • 审查团队规则:确保自动化操作仅在团队明确制定的规则下执行。
  • 保留人工审查:将代理生成的变更视为可能需要检查和调整的工作。
  • 扩大使用前进行测试:开发变更后运行 pnpm check,并在你的环境中验证行为。

高级技巧

使用部署指南执行手动操作

如果需要手动设置、更改配置、升级项目或排查问题,请参阅006 部署。README 将该文档列为这些运维流程的详细来源。

调整行为时审查提示词

在更改代理解释或执行工作的方式前,请阅读004 提示词。提示词变更可能影响代理何时沟通、如何处理任务,以及遵循项目注意力最小化理念的程度。

修改任务隔离前研究执行机制

系统为每个工作项提供独立的代理会话和目录。在修改此行为前,请审阅003 执行和007 架构,以确保变更与项目的执行模型和系统模型保持一致。

谨慎添加新的 Source

Source 是系统接收工作的集成方式。如果希望在现有 GitHub 和可选飞书路径之外添加新的 Source,请遵循008 指南。引入新的请求渠道时,不要绕过授权模型。

以有用的静默为目标

调整系统时,同时评估操作的价值及其通知带来的注意力成本。优先在人员必须采取行动或可用结果已经准备就绪时进行沟通。这能使扩展和运维规则与项目的核心理念保持一致。

开发工作流

修改代码后,使用项目的综合验证命令:

pnpm check

由于该命令会运行类型检查、测试和构建,因此在分享或部署变更前应将其作为常规检查点。通过此命令并不意味着这个研究原型已经达到生产就绪状态;你仍须审查其行为、安全假设、授权机制以及是否适合你的环境。

结语

dsh-superagent 提供了一种面向研究的模型,用于在尽量减少人工注意力需求的同时,委派单个 GitHub 仓库上的工作。请从引导式的 SETUP.md 工作流开始,按顺序阅读编号文档,谨慎配置授权,使用 pnpm check 验证变更,并通过面板将人工精力集中在真正需要的地方。