找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

4458

积分

0

好友

614

主题
发表于 2 小时前 | 查看: 2| 回复: 0

你有没有遇到过这种情况:让AI帮忙写代码,它倒是“唰唰”地输出了一大段,结果一看,不是跑不通,就是缺失关键的测试,甚至还夹杂着一堆炫技但实际用不上的复杂逻辑?

你试图纠正它,却发现它像一头倔驴,越改方向越偏。这其实不是AI不够聪明,而是我们缺少一套能让它遵循工程纪律、有序高效工作的“管理方法”。

今天介绍的主角——Superpowers,正是这样一套旨在让AI Agent像专业软件工程师一样工作的框架。它不试图改变底层AI模型,而是为AI设计了一套严谨的行为准则和工作流,引导其在正确的轨道上高效奔跑。目前该项目在GitHub上已经收获了超过12.2万颗星,热度颇高。

Superpowers GitHub仓库截图

1. Superpowers 解决了什么痛点?

当前直接使用AI进行编程辅助,常常面临几个明显的痛点:

  • 缺乏需求澄清:AI往往拿到模糊指令就直接开写,不会主动提问以明确边界和细节。
  • 缺乏规划:直接跳入代码实现,不进行任务分解和步骤设计。
  • 缺乏验证:代码写完就结束,不编写测试用例,也不验证功能是否符合预期。

结果就是,AI产出的代码质量不稳定、难以维护、更无法进行有效的团队协作。更糟糕的是,开发者需要花费大量时间去纠正AI,而不是让它真正解放生产力。

Superpowers的解决思路很明确:为AI制定一套软件工程师的行为准则,让它像一个有经验的老手一样工作

2. Superpowers 的核心机制:技能与强制工作流

Superpowers的核心是“技能(Skills)”与“强制工作流”的结合。它将软件开发的关键实践(如设计评审、TDD、代码审查等)封装成一个个可自动或手动触发的“技能”,并规定它们必须在特定工作流阶段执行。

内嵌的强制工作流阶段如下:

阶段名称 激活条件/时机 操作描述
brainstorming 编程前 通过提问细化粗略想法、探索替代方案、分模块展示设计以供验证,并保存设计文档。
using-git-worktrees 设计审批后 在新分支创建隔离的工作区,运行项目初始化,验证测试基线是否干净。
writing-plans 设计审批后 将工作拆解为多个耗时2-5分钟的微任务;每个任务包含精确的文件路径、完整的代码和验证步骤。
subagent-driven-developmentexecuting-plans 有可用计划时 每个任务派发给新的子代理执行(分两阶段评审:规格合规性 → 代码质量),或批量执行并设置人工检查点。
test-driven-development 实现阶段 强制执行红绿重构流程:编写失败测试 → 见证失败 → 编写最少可通过代码 → 见证通过 → 提交;删除未通过测试的代码。
requesting-code-review 任务间 基于计划评审代码,按严重性报告问题;关键问题将阻塞后续进度。
finishing-a-development-branch 所有任务完成后 验证测试状态、提供操作选项(合并/拉取请求/保留/丢弃)、清理工作区。

内置的核心技能 (Skills) 包括:

Skill 名称 作用 触发条件
brainstorming 通过提问澄清需求,生成设计文档。 自动(当需求模糊时)
writing-plans 基于需求撰写多步实施计划。 自动(拥有需求文档且开始编码前)
executing-plans 执行书面实施计划,在独立会话中落地代码并配合审查检查。 手动(需输入 /superpowers:execute-plan 命令)
test-driven-development 为功能或Bug修复编写测试用例,指导后续编码。 自动(开始编写实现代码前)
requesting-code-review 在提交前请求代码审查,确保代码符合要求。 自动(完成主要功能或准备合并时)
subagent-driven-development 通过创建子代理来执行独立任务,推进实施计划。 自动(执行计划中包含独立任务时)
using-git-worktrees 通过Git工作树隔离特性分支工作区,准备独立的开发环境。 自动(需要隔离环境时)
finishing-a-development-branch 处理开发分支完成后的集成决策(合并/清理)。 自动(检测到所有测试通过且任务完成时)

触发机制说明:

  • 自动触发:系统根据上下文条件(如需求模糊、测试通过、检测到Bug)自动执行相应技能,无需用户输入命令。
  • 手动触发:需要用户主动输入特定的命令(如 /superpowers:execute-plan)来启动。

一个典型的工作流可能是:brainstorming(自动)→ 用户确认需求 → writing-plans(自动)→ 用户输入 /superpowers:execute-plan(手动)→ test-driven-development(自动)→ finishing-a-development-branch(自动)。

3. 如何使用 Superpowers?

1. 安装
安装方法根据你使用的AI编程工具有所不同:

  • 对于 Claude Code 用户,可直接执行:
    /plugin install superpowers@claude-plugins-official
  • 对于 Cursor 用户,可直接在对话框输入:
    /add-plugin superpowers
  • 对于 OpenCode 用户,可直接执行:
    Fetch and follow instructions from https://raw.githubusercontent.com/obra/superpowers/refs/heads/main/.opencode/INSTALL.md

2. 开始使用
安装后,直接向你的AI助手描述需求即可,例如:“帮我添加一个用户登录功能”。

AI会自动触发 brainstorming 技能,开始向你提问以澄清需求,例如:“你需要支持哪种登录方式?(邮箱/手机号/第三方登录)”。

3. 确认方案并启动执行
在你确认设计后,输入命令:/superpowers:write-plan
AI会生成一份详细的实施计划,例如:

1. 创建 login.html
   - 验证:页面加载后显示登录表单
2. 实现登录API
   - 验证:POST /login 返回 JWT
......

然后,输入命令:/superpowers:execute-plan
AI将自动开始执行该计划,并且每一步都会严格遵循 测试驱动开发 (TDD) 的流程:

  • 先写一个会失败的测试(RED)
  • 再编写最少量的代码使测试通过(GREEN)
  • 最后对代码进行重构优化(REFACTOR)

你可以随时使用 /superpowers:help 命令查看所有可用的技能。

项目地址https://github.com/obra/superpowers

通过引入 Superpowers 这样的框架,我们能够将AI Agent从无序的代码生成器,转变为遵循工程实践的可靠协作者。这不仅是工具的升级,更是开发范式的进步。如果你对这类提升开发效率的开源实战项目感兴趣,欢迎到云栈社区的对应板块交流讨论,分享你的使用心得。




上一篇:RouteRAG:基于强化学习的可学习RAG检索策略,优化问答效率与准确性
下一篇:技术博客SEO优化:如何识别并清理无效的旧文章
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-3-31 06:46 , Processed in 0.621847 second(s), 42 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表