<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>openspec on Two Tigers Engineering</title>
    <link>https://blog.twotigers.xyz/tags/openspec/</link>
    <description>Recent content in openspec on Two Tigers Engineering</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <lastBuildDate>Tue, 12 May 2026 00:00:00 +0800</lastBuildDate><atom:link href="https://blog.twotigers.xyz/tags/openspec/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>OpenSpec 与 Superpowers 结合使用：从需求脑暴到规格归档的 AI Coding 工作流</title>
      <link>https://blog.twotigers.xyz/posts/openspec-superpowers-workflow/</link>
      <pubDate>Tue, 12 May 2026 00:00:00 +0800</pubDate>
      
      <guid>https://blog.twotigers.xyz/posts/openspec-superpowers-workflow/</guid>
      <description>最近我尝试把 OpenSpec 和 Superpowers 结合起来，用 Claude Code 做一个“英语自然拼读学习网站”。这篇文章整理这次探索过程：为什么要同时使用这两个工具、每个阶段应该产出什么文件、提示词应该怎么写，以及实现完成后如何归档 spec。
核心结论很简单：
Superpowers 负责过程纪律。 OpenSpec 负责长期规格事实。 实现阶段只以 OpenSpec change 为需求来源。 如果只用 Superpowers，AI agent 的执行过程会更稳，但需求容易停留在聊天或临时设计文档里。
如果只用 OpenSpec，需求和规格更清楚，但 agent 执行时仍可能跳步骤、少测试或扩范围。
两者结合后，比较理想的分工是：
Superpowers：帮助想清楚、拆清楚、按 TDD 做清楚。 OpenSpec：把确认后的需求变成仓库里的正式规格。 整体流程 我最终采用的流程是：
Superpowers brainstorming/spec -&amp;gt; OpenSpec change -&amp;gt; OpenSpec validate/review -&amp;gt; Superpowers implementation plan -&amp;gt; Superpowers TDD execution -&amp;gt; Review/verify -&amp;gt; OpenSpec archive 每一步都有明确边界。最关键的一点是：Superpowers 先帮助形成设计共识，但一旦 OpenSpec change 被确认，OpenSpec 就成为唯一需求基线。
这样做是为了避免需求源冲突：
Superpowers 草稿说 A OpenSpec change 说 B 代码到底按哪个做？ 所以进入实现阶段后，规则应该是：</description>
    </item>
    
  </channel>
</rss>
