独立复验 Agent 的完成声明,全部必选检查通过才签发证书
27.6/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/9/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add 245678000000/dsh-autopilot该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · tool
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 79 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
可执行外部命令读写/删除本地文件发起外部网络请求
查看扫描证据(共 18 处,展示前 18 条)
- 读取本地文件src/acceptance/loader.ts:10
const text = await readFile(path, "utf8"); - 发起网络请求src/environment/lifecycle.ts:100
const status = httpGet ? await httpGet(url) : (await fetch(url)).status; - 执行外部命令来自配置/变量src/evaluators/command-runner.ts:41
? spawn(argv[0] ?? request.command, argv.slice(1), { cwd, env, signal: request.signal }) - 执行外部命令来自配置/变量src/evaluators/command-runner.ts:42
: spawn(request.command, { - 读取本地文件src/evaluators/file.ts:27
const info = await stat(fullPath); - 读取本地文件src/evaluators/file.ts:30
const buf = await readFile(fullPath); - 发起网络请求src/evaluators/http.ts:23
const response = await fetch(input.url, { - 发起网络请求src/evaluators/http.ts:71
const response = await client.request({ - 读取本地文件src/evaluators/regex.ts:20
contents = await readFile(fullPath, "utf8"); - 写入本地文件src/storage/artifact-store.ts:18
await mkdir(dir, { recursive: true }); - 写入本地文件src/storage/artifact-store.ts:23
await writeFile(filePath, clipped.text, "utf8"); - 读取本地文件src/storage/json-store.ts:23
const raw = await readFile(this.pathFor(goalId), "utf8"); - 读取本地文件src/storage/json-store.ts:32
const raw = await readFile(join(this.rootDir, "latest.json"), "utf8"); - 写入本地文件src/storage/json-store.ts:42
await mkdir(dirname(path), { recursive: true }); - 写入本地文件src/storage/json-store.ts:44
await writeFile(tmp, JSON.stringify(state, null, 2), "utf8"); - 写入本地文件src/storage/json-store.ts:45
await rename(tmp, path); - 写入本地文件src/storage/json-store.ts:48
await writeFile(latestTmp, JSON.stringify({ goalId: state.goal.id }, null, 2), "utf8"); - 写入本地文件src/storage/json-store.ts:49
await rename(latestTmp, latest);
扫描于 2026/11/3(1 天前) · 范围 全包扫描(包内未声明入口) · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-agent@deepseek-ai/dsh-commands@deepseek-ai/dsh-goal@deepseek-ai/dsh-jobs@deepseek-ai/dsh-session@deepseek-ai/dsh-tools给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 复验完成声明
- 必选检查全通过
- 签发验收证书
面向 DeepSeek Harness 的验收驱动自主完成机制:验证通过才算完成。
README
由 DeepSeek 最新模型翻译生成dsh-autopilot
完成即已验证。
面向 DeepSeek Harness 的验收驱动自动完成引擎。
Agent 说「做完了」,不等于任务完成。
flowchart TD
A["Agent:Done."] --> B[Autopilot 独立验收]
B --> C["第一轮:Build / Feature 未过"]
C --> D[NOT DONE]
D --> E[按失败项修复]
E --> F["第二轮:全部必选检查通过"]
F --> G[VERIFIED COMPLETE]
| 检查 | Agent 自称完成 | 修复后再验 |
| Tests | 通过 | 通过 |
| Typecheck | 通过 | 通过 |
| Build | 未过 | 通过 |
| Feature | 未过 | 通过 |
| 结论 | 不能签发 | VERIFIED COMPLETE |
模型声称完成 ≠ 任务已经完成。只有 验收标准 → 独立验证 → 全部必选检查通过,才能签发证书。
安装
需要 Node.js 20.19+,以及已安装的 DeepSeek Harness(npx @deepseek-ai/dsh web 或源码检出)。
展开完整文档(README 剩余 1 节)
dsh-autopilot
完成即已验证。
面向 DeepSeek Harness 的验收驱动自动完成引擎。
Agent 说「做完了」,不等于任务完成。
flowchart TD
A["Agent:Done."] --> B[Autopilot 独立验收]
B --> C["第一轮:Build / Feature 未过"]
C --> D[NOT DONE]
D --> E[按失败项修复]
E --> F["第二轮:全部必选检查通过"]
F --> G[VERIFIED COMPLETE]
| 检查 | Agent 自称完成 | 修复后再验 |
| Tests | 通过 | 通过 |
| Typecheck | 通过 | 通过 |
| Build | 未过 | 通过 |
| Feature | 未过 | 通过 |
| 结论 | 不能签发 | VERIFIED COMPLETE |
模型声称完成 ≠ 任务已经完成。只有 验收标准 → 独立验证 → 全部必选检查通过,才能签发证书。
安装
需要 Node.js 20.19+,以及已安装的 DeepSeek Harness(npx @deepseek-ai/dsh web 或源码检出)。
作为 Harness 插件
从本仓库安装到某个 Harness profile
dsh plugin add https://github.com/245678000000/dsh-autopilot
或用本地 checkout 做 overlay
pnpm dsh web --patch /absolute/path/to/dsh-autopilot/cordis.patch.yml
插件入口是 cordis.patch.yml。装好后会在官方 Goal 栈之后插入 Autopilot,不替换 ctx.goals。
独立 CLI(不需要跑完整 Harness)
git clone https://github.com/245678000000/dsh-autopilot.git
cd dsh-autopilot
npm install
npm run build
node dist/cli.js evaluate --cwd ./fixtures/file-only
项目里的 shell 验收默认不执行。只有你明确授权时才跑:
node dist/cli.js evaluate --cwd ./examples/login --allow-commands
常用命令:
dsh-autopilot evaluate [--cwd ] [--spec ] [--allow-commands]
dsh-autopilot status
dsh-autopilot criteria
dsh-autopilot certificate
它解决什么问题
常见 Agent 工作流是:改几个文件,跑一下命令,然后说「Done.」。这句话后面可能藏着测试失败、构建失败、漏掉的需求、残留 TODO,或接口状态码不对。
Autopilot 挂在官方 agent/turn-stopping 上,用确定性评估器独立验收。只有 canCertifyCompletion() 放行,才会调用 ctx.goals.complete()。
验收标准
在项目根目录放 .autopilot.yml:
version: 1
goal:
objective: 实现登录 budget: maxRepairAttempts: 5 criteria:
- id: tests
description: 单元测试通过 required: true evaluator: type: command command: npm test expect: exitCode: 0
完整编码示例见 examples/login/.autopilot.yml。
完成认证
全仓库只有一扇门:canCertifyCompletion()。
签发 VERIFIED COMPLETE 必须同时满足:
- 每一项 必选 标准都有当前结果
- 结果是 passed
- PASS 带有 可观察证据
- 工作区改动后,结果不是 过期(stale) 的
- 必选但无法验证的项不会被放行
Worker 说「Done.」只会被记成一份被忽略的提议。
通过后会写出 CompletionCertificate:
VERIFIED COMPLETE
6 / 6 required checks passed
✓ tests
✓ typecheck
✓ build
✓ login success case
✓ login failure case
✓ no placeholder
Attempts:
3
重试与阻断
可修复的失败会生成结构化反馈(期望 / 实际 / 输出摘录 / 回归),并用 agent.steer(...) 让当前 turn 继续。若设置 continuationMode: goal-round,则交给官方 @deepseek-ai/dsh-goal-round-driver 排下一轮。
重试有上限。默认:maxRepairAttempts = 5,maxEvaluations = 10,maxRounds = 8,墙钟 30 分钟。
不是所有失败都该再试。缺密钥、缺人决策、审批拒绝、必选标准无法验证,会变成 BLOCKED,并写明 need / resolvedWhen。缺 API key 不会空转 20 轮。
回归、无进展、振荡
每次评估都会和上一轮对比。PASS → FAIL 会标成 REGRESSION DETECTED。
连续三次相同失败指纹是 NO_PROGRESS。A/B 来回翻转是 OSCILLATION。各自最多触发 一次 策略重置;再犯就 BLOCKED。
和官方 Goal 的关系
Autopilot 不替换 @deepseek-ai/dsh-goal。
| 验收结果 | 官方 API |
| 认证通过 | ctx.goals.complete(agent, ref) |
| 需要人 / 预算耗尽 / 无进展 | ctx.goals.block(agent, ref, { code, message }) |
| 可修复失败 | Goal 保持 active;steer 或交给官方 driver |
模型调用的 update_goal complete 会在 tools/pre-execute 被拦截,只当提议。
人类 /goal 不变。Autopilot 额外提供 /autopilot。
对照的 Harness commit:47f943859b(0.1.0-rc.5)。细节见 docs/harness-integration.md。
评估器
| 类型 | 查什么 |
| command | 真实 exit code / stdout / stderr |
| file | exists / contains / notContains / sha256 |
| regex | 匹配次数 |
| git | 工作区是否脏、允许改哪些路径 |
| http | status / headers / JSON path(防 SSRF) |
| manual | 等人确认,否则 blocked |
| agent | 最后手段的独立评判;schema 校验;从不默认 PASS |
优先级:确定性检查 → 结构化工具检查 → LLM 评判。
安全
.autopilot.yml 视为不可信项目配置。危险命令会拒绝。HTTP 默认只允许 localhost。云 metadata(169.254.169.254)会被拦住。评估器没有工作区写权限。Autopilot 不会绕过 Harness 审批。见 docs/security.md。
Demo
npm run demo
1. Agent 说「Done!」——构建和错误密码用例失败——修复——VERIFIED COMPLETE
2. 自信说错:「测试都过了」对照 exit code 1
3. 连续 4/5 同样失败 → BLOCKED
4. 测试先 PASS 再 FAIL → REGRESSION
npm run bench
合成场景,只跑控制器,不编造数字。
限制
- 没有可观察测试的标准,验不了。
- LLM 评估器是概率性的。非法输出记为 error,不是 pass。
- 写坏的验收标准会签发错误证书。
- 外部系统可能不可用。
- 有些任务必须由人判断。
- 测试通过在数学上不能证明软件正确。
- Autopilot 提高完成可靠性,不保证完美结果。
- 受信任的进程内插件如果直接调用 ctx.goals.complete(),官方 Goal 服务仍然认。Autopilot 拦截的是模型工具,不是所有 in-process 调用。
路线图
- v0.1 — 编码验收、command/file/http/git、官方 Goal + turn-stopping、修复循环、回归/无进展/振荡、证书
- v0.2 — 浏览器评估器、界面验收、可选 Time Machine 检查点
- v0.3 — 研究 / 数据管道评估器、多 Agent 独立核验
- v0.4 — CI 与 GitHub PR 验收、团队策略包
License
MIT预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
245678000000/dsh-autopilot
独立复验 Agent 的完成声明,全部必选检查通过才签发证书
相关插件 · 工具 / 效率
破甲管控台kingcharleslzy-ai/dsh-purge
dsh-purge Community · DeepSeek Harness 社区维护版:宿主兼容、状态诊断、提示词管理、更新与本机备份回滚。基于小杨 / YuJunZhiXue 的 dsh-purge。
★ 4,330已汉化DeepSeek 客户端
74.5
网文长卷lingfengQAQ/webnovel-writer
基于 Claude Code 的长篇网文辅助创作系统,解决 AI 写作中的「遗忘」和「幻觉」问题,支持 200…
★ 7,826已汉化DSH
72.2
花束设计alchaincyf/huashu-design
一句话生成网页、原型、PPT 与信息图等可交付设计
★ 28,638已汉化DSH
71.7
多智能体协作HKUDS/AutoSwarm
AutoSwarm: Unify Your Agents. Unify Your Context (Codex · Claude Code · DeepSeek Harness · Muse · Grok · WorkBuddy· nanobot · and more)
★ 2,349已汉化DSH
71.6
Vox 拼贴视频生成Alisa0808/vox-director
🎬 Vox Director拼贴动效导演
★ 2,129已汉化DSH
71.4
Agent 演化引擎Q00/ouroboros
智能体 OS:智能体自己变聪明,我们只守住底线:面试准入、分阶段评估、带预算的进化循环。MCP 服务器,14 种运行时:Claude Code、Codex CLI、Gemini CLI、OpenCode、Copilot、Kiro 等。
★ 6,311已汉化DSH
71.4
这是你的仓库?认领条目