juxt/allium
The specification language that talks back
解决的问题
Allium 解决了在代理工程中出现的“意图漂移”问题,即 LLM 在长时间会话或跨不同会话时会丢失原始设计目标。它防止了系统 应该做什么(意图)与 实际做什么(实现)之间的混淆,确保错误或权宜之计的编码决策不会被误认为是预期行为。
如何工作
Allium 引入了一种行为规范语言,允许用户在代码旁维护一个 .allium 文件。该文件描述实体和规则(由触发器、前提条件和结果组成),但不包含实现细节。
它通过一系列特定技能的循环运作:
/elicit:从关于意图的对话中构建规范。/distill:从现有代码中提取规范。/propagate:根据规范生成测试。/tend:在需求变更时编辑规范。/weed:调和规范与代码之间的分歧。
配套的 CLI 工具可验证语法并执行结构检查(如追踪数据流、发现死胡同),提供 LLM 无法可靠生成的形式化验证信号。
适用人群
专为使用代理式编码工具(如 Claude Code、Cursor、Windsurf、Aider 或 GitHub Copilot)的开发者设计,希望以持久且形式化的方式捕捉系统需求,并验证实现是否符合其意图。
亮点
- 行为规范:聚焦于可观测行为,而非实现细节。
- 形式化验证:使用 CLI 捕捉自然语言需求容易遗漏的设计缺口和矛盾。
- 可移植技能:通过纯 Markdown 技能在 40 多个 AI 编码环境中通用。
- 双向工作流:可从意图到代码(规范优先)或从现有代码到正式规范(代码优先)双向推进。
相关
- Dispatch
- Dispatch
- 项目
- 项目
- 项目