Finn-loop Skill:Linear+GitHub 上的三技能 AI 软件工厂

想象一个工作流:你在 Linear 里提一个想法 → AI 自动追问澄清需求并写入 issue → 标注 agent-ready 后 AI 自动领任务、coding、提 PR → AI review 审核 PR → 你只需点一个 Merge。

Finn-loop 做的正是这件事——一个围绕 Linear + GitHub 运转的「3 技能 AI 软件工厂」,核心理念:Humens merge(人负责合并,AI 负责生产)。

功能与原则

Finn-loop 由三个 Claude Code 技能构成完整流水线:

  • /finn-spec — 研究代码库,通过追问将模糊想法澄清为带验收标准(AC-N)和非目标(NG-N)的 Linear issue
  • /finn-build — 认领下一个标注了 agent-ready 的 issue,实现功能、验证、提 PR;支持 /loop 持续运行
  • /finn-review — 审查所有 open PR,对照 Linear 合同和 GitHub checks 输出三段式裁定(must-fix / suggestions / approved);支持 /loop 持续运行

设计原则:
Linear 是唯一事实来源:issue 以外不存在指令
人负责合并:AI 永远不开 auto-merge,只有 loop-approved + 全绿 + 无冲突时才放行
最小可行工厂:三技能 + 一个 approval label,极简起步,验证核心循环后再扩展

认可度

  • GitHub Star:229(截至 2026-07-28, repo 创建于 2026-07-22,仅 6 天)
  • Forks:38
  • 近期在 GitHub Trending 出现(Python/TypeScript 双语言列表均有露出)
  • 出自资深开发者 finna(GitHub @finna,2012 年注册,长期关注开发者工作流基础设施)

链接

GitHub:https://github.com/finna/Finn-loop

原作者

  • GitHub: @finna(finna)
  • 定位: 开发者工作流基础设施研究者,长期关注 AI 辅助编程的工程化边界

介绍

Finn-loop 诞生于一个核心观察:AI coding agent 之所以在团队环境中难以落地,不是因为模型不够强,而是因为缺乏结构化的任务输入和人工审核节点。没有清晰的合同(spec),AI 会自行扩展 scope;没有人工审核,错误代码直接上生产。

项目将 Linear 的 issue 系统作为「AI 与人的协作协议」:spec 阶段确保需求无歧义,build 阶段确保交付符合合同,review 阶段确保改动安全。三阶段全部通过自然语言完成,底层是 Claude Code 的 tool use 能力,触发条件是 Linear label 和 GitHub status check 的状态变化。

安装只需将三个 SKILL.md 文件复制到 .claude/skills/ 目录,替换 TEAM 占位符为你的 Linear 团队 key,运行 /reload-skills 即完成接入。后续每天的节奏就是:提 idea → 标注 agent-ready → 看 AI 提 PR → merge。

特点

  • 三技能分工明确:spec(需求)/ build(实现)/ review(审核),各自独立、可单独使用
  • Linear + GitHub 双平台集成:Linear 管任务状态,GitHub 管代码状态,两者通过 API 联动
  • 支持 /loop 持续运行:build 和 review 都可以持续轮询,不需反复手动触发
  • 人工边界清晰:issue contract 是唯一 scope,非目标(NG-N)具有约束力,PR 评论不能扩展范围
  • 可扩展架构:当前是最小工厂,原项目作者给出了 Self-converging PRs / Slack 控制平面 / Risk-aware merging / Verification gates 四层扩展路径

使用方法

安装步骤:

  1. 在 Claude Code 项目根目录运行
  2. 按指引复制三个 SKILL.md:
    skills/finn-spec/SKILL.md → .claude/skills/finn-spec/SKILL.md
    skills/finn-build/SKILL.md → .claude/skills/finn-build/SKILL.md
    skills/finn-review/SKILL.md → .claude/skills/finn-review/SKILL.md
  3. 替换 TEAM 占位符为 Linear 团队 key(如 ENG
  4. 确认 Claude Code 版本 ≥ 2.1.71,Linear connector 可用,gh 已认证
  5. 创建标签:agent-ready / blocked(Linear),loop-approved / loop-changes-requested / needs-human-review(GitHub)
  6. 运行 /reload-skills,确认三个技能出现在 /skills 列表中

基本调用:

/finn-spec         → 启动需求澄清对话,完成后在 Linear 生成带 AC/NG 的 issue
/loop /finn-build  → 持续扫描 agent-ready issues,认领后提 PR
/loop /finn-review → 持续扫描 open PRs,输出三段式裁定

使用场景与人群

  • 适用场景: 小型开发团队希望用 AI 提升工程产出的结构化程度;个人开发者想为重复性 coding 任务建立自动化流水线;AI coding agent 在团队环境下的工程化落地
  • 目标用户: 有 Linear + GitHub 工作流的开发团队;使用 Claude Code 2.1.71+ 的个人开发者;对「AI 提 PR → 人工审核 → 合并」模式有需求的工程团队

输入与输出案例

场景 1:Spec 阶段

  • 输入: 你告诉 /finn-spec:「我想给登录页面加一个记住我的复选框」
  • 输出: /finn-spec 通过多轮追问(Cookie 时长?影响范围?与 session 的关系?),最终在 Linear 生成结构化 issue,包含 AC-1「复选框勾选后 30 天内免登录」、AC-2「取消勾选立即清除持久 cookie」等具体可验证条件,以及 NG-1「不实现跨设备同步」等明确非目标

场景 2:Build + Review 阶段

  • 输入: 你在 Linear 标注 issue agent-ready,运行 /loop /finn-build
  • 输出: /finn-build 认领 issue、实现功能、自测、提 PR;/finn-review 检查 PR 是否符合 Linear 合同、GitHub checks 是否全绿,输出「✅ loop-approved」或「❌ needs-human-review: AC-1 未覆盖错误处理」

GitHub:https://github.com/finna/Finn-loop


GitHub: https://github.com/finna/Finn-loop

评论区

0 条评论

登录后可评论。

Skill超级捕获手 30 阅读