HangYu8123/HarnessFlow

Harness coding workflow for codex, claude, github copilot

HarnessFlow – 可移植的 AI 编码工作流包

是什么 – 一组可直接复制的 Markdown 文件,将 Claude Code、Codex CLI 或 GitHub Copilot 转变为多步骤、自我审查的编码助手。该仓库本身不包含任何可执行代码;它仅提供目标 AI 工具从仓库中读取的 指令模板、代理定义 和 工作流文件。

核心理念

  • 请求驱动 – 除非你粘贴来自 request_template/ 的已填写模板(例如 code_request_template.md),否则不会执行任何操作。
  • 并行分析 – 三个子代理(Focus、Broad、Free)读取代码库,然后由“高级工程师”综合生成计划。
  • 自我挑战 – 在编写任何代码之前,通过“魔鬼辩护者”步骤对计划进行压力测试。
  • QA 与审批 – QA 工程师验证变更;你可以添加审批门禁。
  • 持久化仓库记忆 – 结果存储在 repo_info/ 中,使后续请求能基于上下文启动,而非重新推导。
  • 三种工作流模式 – general(全面)、fast(高效)、skill(使用社区审核的技能)。

支持平台

平台 安装脚本创建的入口点
Claude Code CLI 仓库根目录的 CLAUDE.md
Codex CLI / VS Code 中的 Codex 仓库根目录的 AGENTS.md
VS Code + GitHub Copilot .github/copilot-instructions.md
其他基于 LLM 的助手(如 Aider) 手动引用工作流文件

安装方法

  1. 将仓库克隆到某处,并将其内容复制到目标仓库的 .github/HarnessFlow/ 目录下(README 提供了 rsync 命令,可排除 repo_info/ 和基准测试产物等内部文件)。
  2. 运行相应的设置脚本:
    # 用于 Claude 或 Codex CLI
    bash .github/HarnessFlow/cli_setup.sh
    
    # 用于 VS Code + Copilot
    bash .github/HarnessFlow/setup.sh
    
    脚本会生成路由器文件(CLAUDE.md、AGENTS.md、.github/copilot-instructions.md),并创建空的 repo_info/ 文件。

开始使用

  1. 初始化仓库记忆 – 复制 request_template/initialize_request_template.md,填写占位符,然后粘贴到你的 AI 助手中。这将把代码库概览填充到 repo_info/ 中。
  2. 提交任务 – 选择合适的模板(如 code_request_template.md、debug_request_template.md、pr_request_template.md),编辑任务描述,然后粘贴整个文件。mode: 头部选择工作流家族(fast 为默认;如需可切换至 general 或 skill)。

你可以让它做什么 – 九种请求类型,每种都有自己的工作流文件:

  • 实现新功能
  • 重构现有代码
  • 调试失败
  • 回答问题 / 生成文档
  • 执行正确性检查 / 测试
  • 执行脚本或命令并验证结果
  • 将大变更拆分为堆叠的 PR
  • 启动或重新初始化仓库记忆
  • 循环执行任务直到满足条件

基准测试(仓库中报告的结果)

  • Ponytail 基准测试(5 任务代码生成套件) – HarnessFlow-Fast 在保持 100% 正确性(45/45 通过)的同时,相比裸模型减少了 34–76% 的生成代码行数。其表现优于 fastworkflow 基线,后者代码量多出 1.6–3.4 倍且正确性更低。
  • Fast vs. General – 在一个 1,000 行的 OpenCV+scikit-learn 项目和 SWE-bench 的 bug 修复任务中,fast 工作流在仅使用 general 39–50% 的 token 预算的情况下,实现了相同的成功结果,并生成了最精简的代码(860 行 vs. 1,173 行)。
  • 详细日志和方法论存储在 experiment/、experiment_swe/ 和 experiment_ponytail/ 中(源仓库中被 git 忽略)。

仓库结构(概览)

.github/HarnessFlow/
├─ AGENTS.md / CLAUDE.md          # 生成的路由器
├─ copilot-instructions.md        # VS Code Copilot 路由器
├─ cli_setup.sh / setup.sh       # 安装脚本
├─ sync_agent_definitions.py     # 重新生成原生代理文件
├─ _lib/                         # 共享契约、安全规则、工具
├─ philosophy/                   # 代理行为指导
├─ workflow/                     # 三种家族:general、fast、skill
├─ agents/                       # 源代理定义(MD/TOML)
├─ request_template/             # 用户端模板
├─ skills/                       # 社区投票的技能定义(用于 skill 模式)
└─ repo_info/                    # 生成的记忆文件(git 忽略)

为何重要 – 通过将编排逻辑外部化为纯 Markdown,HarnessFlow 可与任何能够读取仓库本地指令文件的 AI 编码助手兼容。它为开发者提供了一个可重复、可审计的流程(规划 → 自我挑战 → QA → 记忆),无需额外运行时或包安装。


以上所有信息均直接来自仓库的 README;未推断任何额外功能。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目