← 返回藏书阁

Shared Language

wiki/ai/concepts/Shared-Language.md
分类:ai / concepts · 更新:2026-06-14 00:33

Shared Language

来自 Eric Evans《Domain-Driven Design》的 Ubiquitous Language 概念。Matt Pocock 将其适配到 AI 编码场景。

问题

Agent 被丢进项目后需要自行摸索术语,导致:

  • 20 个词说 1 个词就能说清的事
  • 变量/函数命名不一致
  • 代码库导航困难
  • Token 浪费在冗余描述上

解决方案:CONTEXT.md

一个 纯术语表(不是 spec,不是 scratch pad,不含实现细节)。

格式

# {Context Name}

简短描述

## Language

**Order**:
一句话定义。
_Avoid_: Purchase, transaction

**Customer**:
一句话定义。
_Avoid_: Client, buyer, account

多 Context 支持

大多数 repo 用单一 CONTEXT.md。Monorepo 可用 CONTEXT-MAP.md 指向多个子 context。

与 ADR 配合

docs/adr/ 存储架构决策。Skill 在 grilling 中按需创建,三条件全部满足才创建 ADR:

  1. 难以逆转
  2. 没有上下文会令人困惑
  3. 真正有权衡

效果

  • Agent 通信 token 下降 ~75%(配合 /caveman 模式)
  • 代码命名一致
  • 代码库导航更容易
  • "materialization cascade" vs "lesson made real in file system" — 精确 vs 啰嗦

与已有概念