对比列表

SpecScore vs CodeSpeak

对于"规范应当用来做什么"的两种答案。CodeSpeak 把规范当作源代码——由 LLM 编译它,你维护规范而非代码。 SpecScore 把规范当作一份持久、开放的契约—— 你保留你的代码,任何代理(或不用代理)都能读取、lint 并追溯它。

两者的共同点。

  • 两者都把规范置于软件开发的中心。
  • 两者都为 AI 辅助的世界而生——先有意图,再有实现。
  • 两者都致力于通过改变规范来让软件更易于变更。

CodeSpeak 的优势。

CodeSpeak是一个由 LLM 驱动的编程系统,能把结构化英文规范编译成代码。

大胆的论点,论证可信

"维护规范,而非代码"是一次真正的重新定义,而非增量式的小修小补。 它出自 Kotlin 语言的设计者,值得认真对待:如果规范才是源码, 那么生成的代码就成了一个实现细节。

代码到规范的接管

codespeak takeover 读取现有源码并产出一份 捕获其行为的规范——为存量代码提供低摩擦的入口匝道, 据报道规范对代码的压缩比约为 5–10×。

从代理会话中恢复意图

CodeSpeak 的 Intent Studio 从先前的代理会话中提取需求—— 收割你已经表达过的意图,而不是让你从一张白纸开始撰写 规范。

功能对比。

两者下的是不同的赌注,所以这张表对比的是理念与机制,而非胜负。

能力CodeSpeakSpecScore
事实来源规范(编译输入)规范是契约;代码是交付物
生成的代码由 LLM 产出,非手工维护你和你的代理编写并拥有代码
规范格式纯英文,由 CodeSpeak 定义开放的 Markdown + YAML 标准,已发布 schema
规范 → 代码核心功能(专有 LLM 编译器)不在范围内 — 由任意代理实现
脱离厂商仍可用规范需经 CodeSpeak 编译可以 — 规范适用于任意代理,或不用代理
规范 linting无文档说明内容质量 — 模糊动词、缺失验收标准、悬空引用
代码到规范的可追溯性通过重新生成specscore: 注解 + Verifies: 尾注
确定性LLM 编译(非确定性)确定性的 CLI 查询;代码照常编写
代码 → 规范codespeak takeoversurvey + 撰写
开放性专有系统开放 — CC BY 4.0 格式,MIT / Apache-2.0 工具
阶段Alpha 预览已发布

SpecScore 的不同之处。

你保留你的代码

CodeSpeak 生成并重新生成实现;代码是一种输出,而非一项资产。 SpecScore 把代码留在它该在的地方——在你手中、用你的语言、 可逐行审查。规范在不带走代码的前提下,增添清晰度 和可追溯性。

你的规范是可移植的

一份 CodeSpeak 规范之所以有价值,是因为 CodeSpeak 编译它。一份 SpecScore 规范本身就有价值——它是结构良好的 Markdown,任何 代理都能读取,而且即便完全没有安装任何 SpecScore 工具,它依然有用。 用任意工具采用它,或不用工具。随时离开。

歧义在产生代价之前被捕获

使用 LLM 编译器时,一份有歧义的规范会在构建时变成错误的代码。 SpecScore 的 lint 会在代理据此行动之前, 浮现出模糊动词、缺失的验收标准和悬空引用。

$ specscore lint checkout/apply-discount.md
  ✗ R3  no acceptance criteria
  ✗ verb  "handle gracefully" — unmeasurable

确定性与可追溯性

CodeSpeak 对"哪些代码实现了这个?"的回答是"全部,重新生成"。 SpecScore 的回答是一个具体的文件和行号,通过specscore code refs 和 Verifies: 提交 尾注——确定性、可审计、可 diff。

结构化的工件图谱

CodeSpeak 的单元是一份散文形式的规范文件。SpecScore 拥有类型化的 层级结构——Idea 晋升为 Feature,Feature 携带带 ID 的 Requirement 和 Acceptance Criteria,Plan 引用 AC,Task 引用 Plan—— 所有这些都可机器导航。

构建路径中没有厂商

SpecScore 是单个 Go 二进制文件。Lint 在 CI 和 pre-commit 钩子中运行, 无需账户、无需服务调用、构建中没有 LLM 往返。

何时使用哪个。

以下场景适合使用 CodeSpeak……

  • 你想停止维护代码,让规范成为源码。
  • 你乐于为那份杠杆而依赖某厂商的编译器。
  • 你想把一个现有代码库压缩成一份短得多的规范。

以下场景适合使用 SpecScore……

  • 你想要比任何单一工具都更长久的规范——在构造上即可移植。
  • 你想保留你的代码,用你的语言,可审查、可拥有。
  • 你需要规范质量的强制执行——lint 尽早捕获歧义。
  • 你需要确定性的代码到规范可追溯性。
  • 你想要构建路径中没有厂商、没有 LLM 往返。

两种不同的赌注。

CodeSpeak 押注于编译器:把规范交给它,并信任它产出 并复现代码。SpecScore 押注于格式:让规范保持开放 且可移植,让代码归你所有,并让任何代理基于它工作。

一方以可移植性换取杠杆。另一方让你保持自由——而且可 lint。

反馈

通过检查的规范。

发现翻译问题或有改进此页面的想法? 告诉我们.