diff --git a/00-inbox/2026-03-24-agent-friendly-architecture.md b/00-inbox/2026-03-24-agent-friendly-architecture.md
new file mode 100644
index 0000000..399bf39
--- /dev/null
+++ b/00-inbox/2026-03-24-agent-friendly-architecture.md
@@ -0,0 +1,761 @@
+---
+id: "2026-03-24-agent-friendly-architecture"
+title: "Agent Friendly 概念关系与架构全景图"
+slug: "agent-friendly-architecture"
+status: "inbox"
+content_type: "article"
+channels: ["wechat", "x"]
+language: "zh-CN"
+source_urls:
+ - "https://www.anthropic.com/research/building-effective-agents"
+ - "https://modelcontextprotocol.io/specification/2025-06-18/server/tools"
+ - "https://a2a-protocol.org"
+ - "https://agentexperience.ax/"
+assets: []
+cover_image: ""
+template: "article"
+owner: "content-forge"
+created_at: "2026-03-24T00:00:00+08:00"
+updated_at: "2026-03-24T00:00:00+08:00"
+published_at: null
+tags: ["agent-friendly", "architecture", "concept-map", "MCP", "A2A", "AX"]
+---
+
+# Agent Friendly 概念关系与架构全景图
+
+---
+
+## 一、总体架构:五层模型
+
+```
+┌─────────────────────────────────────────────────────────────────────┐
+│ │
+│ ⑤ 治理与生态层 (Governance) │
+│ │
+│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌───────────────────┐ │
+│ │ AAIF │ │ CoSAI │ │ OWASP │ │ OpenAPI Initiative│ │
+│ │ 标准治理 │ │ 安全联盟 │ │ 安全标准 │ │ API 描述标准 │ │
+│ └──────────┘ └──────────┘ └──────────┘ └───────────────────┘ │
+│ │
+├─────────────────────────────────────────────────────────────────────┤
+│ │
+│ ④ 发现与身份层 (Discovery) │
+│ │
+│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
+│ │ llms.txt │ │AGENTS.md │ │ Agent │ │ KYA │ │
+│ │ 文档发现 │ │ 项目指令 │ │ Card │ │ 身份验证 │ │
+│ └──────────┘ └──────────┘ │ 能力声明 │ └──────────┘ │
+│ ┌──────────┐ ┌──────────┐ └──────────┘ ┌──────────┐ │
+│ │ JSON-LD │ │Schema.org│ │ OpenAPI │ │
+│ │ 语义标注 │ │ 词汇表 │ │ API 描述 │ │
+│ └──────────┘ └──────────┘ └──────────┘ │
+│ │
+├─────────────────────────────────────────────────────────────────────┤
+│ │
+│ ③ 协议与连接层 (Protocol) │
+│ │
+│ ┌───────────────────────┐ ┌───────────────────────┐ │
+│ │ MCP │ │ A2A │ │
+│ │ Agent ←→ Tool │ │ Agent ←→ Agent │ │
+│ │ 垂直连接(纵向) │ │ 水平互操作(横向) │ │
+│ │ JSON-RPC 2.0 │ │ HTTP / SSE / gRPC │ │
+│ └───────────────────────┘ └───────────────────────┘ │
+│ ┌───────────────────────┐ ┌───────────────────────┐ │
+│ │ Agentic Commerce │ │ A2UI │ │
+│ │ Protocol │ │ Agent → 富 UI 渲染 │ │
+│ │ Agent 支付/商务 │ │ │ │
+│ └───────────────────────┘ └───────────────────────┘ │
+│ │
+├─────────────────────────────────────────────────────────────────────┤
+│ │
+│ ② 设计与实现层 (Design) │
+│ │
+│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
+│ │ AX 设计 │ │ ACI 接口 │ │ Tool │ │ Agent │ │
+│ │ 10 原则 │ │ 设计方法 │ │ Design │ │ Skills │ │
+│ └──────────┘ └──────────┘ │ 7 子规约 │ │ 可移植知识│ │
+│ ┌──────────┐ ┌──────────┐ └──────────┘ └──────────┘ │
+│ │ Schema- │ │ Outcome- │ ┌──────────┐ ┌──────────┐ │
+│ │ First │ │ Oriented │ │Idempotent│ │ Content │ │
+│ │ 契约优先 │ │ 结果导向 │ │ 幂等设计 │ │Negotiation│ │
+│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
+│ │
+├─────────────────────────────────────────────────────────────────────┤
+│ │
+│ ① 安全与运维层 (Security & Ops) │
+│ │
+│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
+│ │ Least │ │ Sandbox │ │ Policy │ │ Audit │ │
+│ │ Agency │ │ /MicroVM │ │ Engine │ │ Trail │ │
+│ │ 最小代理权│ │ 沙箱隔离 │ │ 策略引擎 │ │ 审计日志 │ │
+│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
+│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
+│ │ HITL │ │ Circuit │ │ Token │ │ Kill │ │
+│ │ 人在环路 │ │ Breaker │ │ Exchange │ │ Switch │ │
+│ │ │ │ 熔断器 │ │ 令牌交换 │ │ 紧急停止 │ │
+│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
+│ │
+└─────────────────────────────────────────────────────────────────────┘
+```
+
+**阅读方式**:从下往上。安全是地基,设计是砖墙,协议是管道,发现是门牌,治理是法规。
+
+---
+
+## 二、层间依赖关系
+
+```
+⑤ 治理层 ─── 制定规则 ──→ 所有下层必须遵循
+ │
+ │ 产出标准
+ ▼
+④ 发现层 ─── 让 Agent 找到你 ──→ 是协议层的前提
+ │
+ │ 提供元数据
+ ▼
+③ 协议层 ─── 让 Agent 连接你 ──→ 是设计层的载体
+ │
+ │ 定义通信方式
+ ▼
+② 设计层 ─── 让 Agent 正确使用你 ──→ 是安全层的对象
+ │
+ │ 约束行为边界
+ ▼
+① 安全层 ─── 让 Agent 安全运行 ──→ 保护所有上层
+```
+
+**关键洞察**:每一层都是上一层的前提条件。没有安全层的设计是裸奔;没有发现层的协议是隐身;没有治理层的生态是丛林。
+
+---
+
+## 三、协议层关系图:MCP vs A2A vs 商务协议
+
+```
+ ┌─────────────┐
+ │ 人类用户 │
+ └──────┬──────┘
+ │ 委托
+ ▼
+ ┌─────────────┐
+ │ AI Agent │
+ │ (客户端) │
+ └──┬───┬───┬──┘
+ │ │ │
+ ┌────────────┘ │ └────────────┐
+ │ │ │
+ ▼ ▼ ▼
+ ┌────────────────┐ ┌────────────┐ ┌────────────────┐
+ │ MCP 协议 │ │ A2A 协议 │ │ 商务协议 │
+ │ Agent → Tool │ │ Agent → │ │ Agent → 支付 │
+ │ │ │ Agent │ │ │
+ │ "我需要用工具" │ │ "我需要 │ │ "我需要付款" │
+ │ │ │ 别的Agent │ │ │
+ │ │ │ 帮忙" │ │ │
+ └───────┬────────┘ └─────┬──────┘ └───────┬────────┘
+ │ │ │
+ ▼ ▼ ▼
+ ┌────────────────┐ ┌────────────┐ ┌────────────────┐
+ │ MCP Server │ │ 其他 Agent │ │ Stripe / Visa │
+ │ (工具/数据) │ │ (协作者) │ │ (支付网关) │
+ │ │ │ │ │ │
+ │ 数据库、API、 │ │ 客服Agent、│ │ ACP, TAP, │
+ │ 文件系统 │ │ 分析Agent │ │ Agent Pay │
+ └────────────────┘ └────────────┘ └────────────────┘
+
+ ─── 垂直连接 ─── ── 水平互操作 ── ── 商务能力 ──
+```
+
+**核心关系**:MCP 和 A2A **互补而非竞争**。
+
+| 维度 | MCP | A2A |
+|------|-----|-----|
+| 方向 | 垂直(Agent→Tool) | 水平(Agent→Agent) |
+| 类比 | USB 线(连接设备) | WiFi(设备间通信) |
+| 对方可见性 | Agent 知道 Tool 内部实现 | Agent 对另一个 Agent 不透明 |
+| 发现机制 | Server 定义 Tool 列表 | Agent Card (.well-known) |
+| 典型场景 | 查数据库、调 API | 跨组织 Agent 协作 |
+
+---
+
+## 四、发现层关系图:Agent 如何找到你
+
+```
+Agent 寻找能力
+ │
+ ├─── ① 我要找一个网站/产品的信息
+ │ │
+ │ ▼
+ │ ┌──────────┐ ┌───────────────┐
+ │ │ llms.txt │────▶│ llms-full.txt │
+ │ │ 摘要索引 │ │ 完整内容 │
+ │ └──────────┘ └───────────────┘
+ │ │
+ │ │ 结构化理解
+ │ ▼
+ │ ┌──────────┐ ┌──────────┐
+ │ │ JSON-LD │◀───▶│Schema.org│
+ │ │ 语义标注 │ │ 词汇表 │
+ │ └──────────┘ └──────────┘
+ │
+ ├─── ② 我要调用一个 API
+ │ │
+ │ ▼
+ │ ┌──────────┐ ┌──────────┐
+ │ │ OpenAPI │────▶│ Arazzo │
+ │ │ 端点描述 │ │ 工作流序列│
+ │ └──────────┘ └──────────┘
+ │
+ ├─── ③ 我要在一个代码仓库工作
+ │ │
+ │ ▼
+ │ ┌──────────┐ ┌──────────┐
+ │ │AGENTS.md │ │CLAUDE.md │
+ │ │ 通用指令 │ │ Claude专属│
+ │ └──────────┘ └──────────┘
+ │
+ └─── ④ 我要找另一个 Agent 协作
+ │
+ ▼
+ ┌──────────┐ ┌──────────┐
+ │Agent Card│────▶│ KYA 验证 │
+ │ 能力声明 │ │ 身份信任 │
+ └──────────┘ └──────────┘
+```
+
+**关键洞察**:四种发现场景使用四种不同的元数据格式——但它们共享一个原则:**机器可读 > 人类可读**。
+
+---
+
+## 五、安全层关系图:纵深防御
+
+```
+ ┌─────────────────────┐
+ │ 人类用户 │
+ │ (最终权限来源) │
+ └──────────┬──────────┘
+ │ 委托 + 权限边界
+ ▼
+┌──────────────────────────────────────────────────────────────┐
+│ ┌──────────────────────────────────────────────────────┐ │
+│ │ Kill Switch(紧急停止) │ │
+│ │ 随时可中断所有 Agent 活动的全局开关 │ │
+│ └──────────────────────────────────────────────────────┘ │
+│ │
+│ ┌─── 第 1 道防线:身份与授权 ──────────────────────────┐ │
+│ │ │ │
+│ │ KYA ──→ Token Exchange ──→ Scoped Token │ │
+│ │ 身份验证 权限降级 有限范围临时令牌 │ │
+│ │ │ │
+│ │ Policy Engine (OPA/Cedar) ──→ 每次调用实时鉴权 │ │
+│ │ │ │
+│ └──────────────────────────────────────────────────────┘ │
+│ │ │
+│ ▼ │
+│ ┌─── 第 2 道防线:输入验证与消毒 ──────────────────────┐ │
+│ │ │ │
+│ │ Agent Gateway ──→ 元数据扫描(工具投毒检测) │ │
+│ │ │ │ │
+│ │ └──→ Prompt 注入检测 ──→ 外部数据消毒 │ │
+│ │ │ │
+│ │ JSON Schema 验证 ──→ 每个工具调用参数校验 │ │
+│ │ │ │
+│ └──────────────────────────────────────────────────────┘ │
+│ │ │
+│ ▼ │
+│ ┌─── 第 3 道防线:执行隔离 ────────────────────────────┐ │
+│ │ │ │
+│ │ Sandbox / MicroVM ──→ 每个 MCP Server 独立隔离 │ │
+│ │ │ │ │
+│ │ └──→ 零信任网络(显式允许 > 默认放行) │ │
+│ │ │ │
+│ │ 四层预算 ──→ 成本 + Token + 步骤 + 时间 │ │
+│ │ │ │
+│ └──────────────────────────────────────────────────────┘ │
+│ │ │
+│ ▼ │
+│ ┌─── 第 4 道防线:运行时保护 ──────────────────────────┐ │
+│ │ │ │
+│ │ HITL ──→ 不可逆操作前人类确认 │ │
+│ │ │ │ │
+│ │ Intent Preview ──→ 意图预览 + Dry-run │ │
+│ │ │ │ │
+│ │ Circuit Breaker ──→ 连续失败自动熔断 │ │
+│ │ │ │
+│ │ Graceful Degradation ──→ 降级而非崩溃 │ │
+│ │ │ │
+│ └──────────────────────────────────────────────────────┘ │
+│ │ │
+│ ▼ │
+│ ┌─── 第 5 道防线:审计与追溯 ──────────────────────────┐ │
+│ │ │ │
+│ │ Audit Trail ──→ 不可篡改 + 密码学可验证 │ │
+│ │ │ │ │
+│ │ └──→ 全链路追踪(who/what/why/tools/outcome) │ │
+│ │ │ │
+│ │ A2A 链路 ──→ 每次交接独立验证身份/权限/负载 │ │
+│ │ │ │
+│ └──────────────────────────────────────────────────────┘ │
+│ │
+└──────────────────────────────────────────────────────────────┘
+```
+
+**关键关系**:
+
+```
+Least Privilege(能访问什么)
+ └──→ Least Agency(能做什么 + 做多少次)
+ └──→ HITL(高风险操作人类确认)
+ └──→ Kill Switch(极端情况全局停止)
+
+四者是递进关系:权限 → 行为 → 确认 → 中断
+```
+
+---
+
+## 六、攻击面与防御映射
+
+```
+┌─────────────────────────────────────────────────────────────┐
+│ 攻击面全景 │
+├──────────────────┬──────────────────┬───────────────────────┤
+│ 输入侧攻击 │ 元数据侧攻击 │ 链路侧攻击 │
+├──────────────────┼──────────────────┼───────────────────────┤
+│ │ │ │
+│ Direct Prompt │ Tool Poisoning │ Cascading │
+│ Injection │ 工具投毒 │ Hallucination │
+│ 直接注入 │ │ 级联幻觉 │
+│ │ │ Schema Poisoning │ │ │
+│ │ │ Schema 投毒 │ Memory Poisoning │
+│ Indirect Prompt │ │ 记忆投毒 │
+│ Injection │ MPMA │ │ │
+│ 间接注入 │ 偏好操纵攻击 │ Slopsquatting │
+│ │ │ 包名抢注 │
+│ │ │ │
+├──────────────────┼──────────────────┼───────────────────────┤
+│ 防御措施 │ 防御措施 │ 防御措施 │
+├──────────────────┼──────────────────┼───────────────────────┤
+│ │ │ │
+│ 输入消毒 │ 元数据扫描 │ 独立验证输入 │
+│ 模式匹配检测 │ 版本锁定 │ 不可变共享上下文 │
+│ RAG 隔离 │ 代码签名 │ 行为基线监控 │
+│ 外部数据消毒 │ 基线监控 │ 依赖锁定 + hash │
+│ │ │ │
+└──────────────────┴──────────────────┴───────────────────────┘
+```
+
+---
+
+## 七、设计概念关系图:从理念到实现
+
+```
+ ┌──────────────┐
+ │ AX (理念) │
+ │ Agent 体验学科 │
+ └───────┬──────┘
+ │ 具体化为
+ ┌───────────┼───────────┐
+ ▼ ▼ ▼
+ ┌──────────┐ ┌──────────┐ ┌──────────┐
+ │ ACI │ │ 10 条 │ │ LLMO │
+ │接口设计法 │ │ AX 原则 │ │搜索优化法 │
+ └────┬─────┘ └────┬─────┘ └────┬─────┘
+ │ │ │
+ ┌──────────┤ ┌──────┤ ┌──────┤
+ ▼ ▼ ▼ ▼ ▼ ▼
+ ┌─────────┐┌──────┐┌─────┐┌─────┐┌─────┐┌──────┐
+ │Schema- ││Tool ││Idem-││HATE-││JSON-││llms. │
+ │First ││Annot.││poten││OAS ││LD ││txt │
+ │契约优先 ││工具注解││幂等 ││自描述││语义 ││文档 │
+ └─────────┘└──────┘└─────┘└─────┘└─────┘└──────┘
+ │ │ │ │ │ │
+ └──────────┴──────┴──────┴──────┴──────┘
+ │
+ ▼
+ ┌──────────────────┐
+ │ Outcome-Oriented │
+ │ Tool Design │
+ │ 面向结果的工具设计 │
+ └──────────────────┘
+ │
+ ┌──────────┼──────────┐
+ ▼ ▼ ▼
+ ┌──────────┐┌──────────┐┌──────────┐
+ │ 更少工具 ││ 更扁 Schema││ 更丰富描述│
+ │ (粒度) ││ (结构) ││ (四要素) │
+ └──────────┘└──────────┘└──────────┘
+```
+
+**核心逻辑**:AX 是顶层理念 → ACI/原则/LLMO 是三个实现方向 → 每个方向分解为具体设计模式 → 所有模式汇聚到"面向结果的工具设计"这一实操方法。
+
+---
+
+## 八、评估体系关系图
+
+```
+┌─────────────────────────────────────────────────────────────┐
+│ 评估体系全景 │
+├─────────────────────────────────────────────────────────────┤
+│ │
+│ ┌─── API 层面(你的 API 对 Agent 友好吗?)────────────┐ │
+│ │ │ │
+│ │ Postman 48 Checks (0-100 分) │ │
+│ │ └─→ 8 支柱 × 6 项 = 48 项检查 │ │
+│ │ └─→ 通过线:≥70 分 + 0 Critical 失败 │ │
+│ │ │ │
+│ └──────────────────────────────────────────────────────┘ │
+│ │ │
+│ │ API 通过后 │
+│ ▼ │
+│ ┌─── 工具层面(你的 Tool 设计合格吗?)────────────────┐ │
+│ │ │ │
+│ │ 工具质量 10 项评分 (binary pass/fail) │ │
+│ │ └─→ 名称/描述/类型/扁平/示例/返回/错误/效率/职责/ns│ │
+│ │ └─→ 通过线:≥8/10 │ │
+│ │ │ │
+│ └──────────────────────────────────────────────────────┘ │
+│ │ │
+│ │ 工具通过后 │
+│ ▼ │
+│ ┌─── 安全层面(你的安全措施到位吗?)──────────────────┐ │
+│ │ │ │
+│ │ SlowMist MCP 安全清单 (~90 项, High/Med/Low) │ │
+│ │ └─→ 通过线:所有 High 项通过 │ │
+│ │ │ │
+│ │ CoSAI 白皮书 8 项优先建议 │ │
+│ │ └─→ 通过线:8/8 实施 │ │
+│ │ │ │
+│ └──────────────────────────────────────────────────────┘ │
+│ │ │
+│ │ 安全通过后 │
+│ ▼ │
+│ ┌─── 系统层面(你的 Agent 系统整体可靠吗?)──────────┐ │
+│ │ │ │
+│ │ Google Cloud 三支柱 (A/B/C/F) │ │
+│ │ ├─→ 最终输出(集成测试) │ │
+│ │ ├─→ 决策过程(单元测试) │ │
+│ │ └─→ 韧性(压力测试) │ │
+│ │ │ │
+│ │ 复合精度公式 │ │
+│ │ └─→ 端到端成功率 = (单步准确率)^步骤数 │ │
+│ │ └─→ 10 步工作流通过线:≥80% │ │
+│ │ │ │
+│ └──────────────────────────────────────────────────────┘ │
+│ │
+└─────────────────────────────────────────────────────────────┘
+```
+
+**评估顺序**:API → 工具 → 安全 → 系统。每一层是下一层的前提。
+
+---
+
+## 九、治理组织关系图
+
+```
+ ┌──────────────────────┐
+ │ Linux Foundation │
+ │ 开源治理伞组织 │
+ └──────────┬───────────┘
+ │
+ ┌────────────────┼────────────────┐
+ ▼ ▼ ▼
+ ┌────────────────┐ ┌────────────┐ ┌────────────────┐
+ │ AAIF │ │ AGNTCY │ │ A2A Project │
+ │ Agentic AI │ │ Agent │ │ Agent-to-Agent │
+ │ Foundation │ │ 互联网 │ │ Protocol │
+ │ │ │ │ │ │
+ │ 创始: │ │ 75+ 公司 │ │ 创始: Google │
+ │ Anthropic │ │ Cisco │ │ 150+ 组织 │
+ │ OpenAI │ │ LangChain │ │ │
+ │ Block │ │ Galileo │ │ │
+ ├────────────────┤ └────────────┘ └────────────────┘
+ │ 治理项目: │
+ │ ├── MCP │
+ │ ├── AGENTS.md │ ┌─────────────────────┐
+ │ └── goose │ │ 独立标准组织 │
+ └────────────────┘ ├─────────────────────┤
+ │ CoSAI → MCP 安全 │
+ │ OWASP → LLM/Agent │
+ │ 安全 Top 10 │
+ │ OpenAPI → API 描述 │
+ │ Initiative 标准 │
+ └─────────────────────┘
+```
+
+---
+
+## 十、时间线:从碎片到标准化
+
+```
+2024
+│
+├── 09 ── Jeremy Howard 提出 llms.txt 规范
+│
+├── 11 ── Anthropic 发布 MCP (Model Context Protocol)
+│
+│
+2025
+│
+├── 01 ── Matt Biilmann 命名 AX (Agent Experience)
+│
+├── 04 ── Google 发布 A2A 协议 (Cloud Next)
+│
+├── 07 ── A2A 捐赠给 Linux Foundation
+│
+├── 08 ── AGENTS.md 标准发布 (OpenAI + 多方)
+│ 60,000+ 仓库采纳
+│
+├── 11 ── MCP spec 更新 (服务端身份、异步操作)
+│ Mastercard Agent Pay 全美上线
+│ Visa 完成数百笔 Agent 交易
+│
+├── 12 ── AAIF 成立 (Linux Foundation)
+│ Anthropic 捐赠 MCP
+│ Agent Skills 标准发布
+│ OWASP Top 10 for Agentic Applications
+│ Meta 收购 Manus
+│
+│
+2026
+│
+├── 01 ── CoSAI MCP 安全白皮书
+│ A2A 达到 RC 1.0
+│ Google 发布 Universal Commerce Protocol
+│
+├── 02 ── Google 发布 WebMCP (Chrome Canary)
+│
+├── 03 ── MCP Tool Annotations 博客发布
+│ Microsoft 发布端到端 Agent 安全指南
+│
+└── ── 当前位置 ──
+
+ ┌──────────────────────────────────────────┐
+ │ 从"各自为政"到"统一标准"用了不到 2 年 │
+ │ 类比 HTTP 标准化花了 ~5 年 (1991-1996) │
+ │ Agent 生态标准化的速度快了 2.5 倍 │
+ └──────────────────────────────────────────┘
+```
+
+---
+
+## 十一、概念分类矩阵:按角色 × 关注层
+
+```
+ 你是谁?
+ │
+ ├── API/产品开发者 ──────────────────────────────┐
+ │ "我要让 Agent 能用我的 API" │
+ │ │
+ │ 必须掌握: │
+ │ ├── AX 10 原则 │
+ │ ├── OpenAPI spec 完整度 │
+ │ ├── llms.txt │
+ │ ├── 错误响应格式 │
+ │ ├── Idempotency │
+ │ ├── Content Negotiation │
+ │ ├── Postman 48 Checks │
+ │ └── JSON-LD / Schema.org │
+ │ │
+ ├── MCP Server 开发者 ───────────────────────────┤
+ │ "我要给 Agent 提供工具" │
+ │ │
+ │ 必须掌握: │
+ │ ├── ACI (Agent-Computer Interface) │
+ │ ├── Tool Design 7 子规约 │
+ │ │ (命名/描述/inputSchema/outputSchema/ │
+ │ │ 错误/注解/粒度) │
+ │ ├── Outcome-Oriented 设计 │
+ │ ├── Schema-First │
+ │ ├── MCP 协议细节 │
+ │ ├── SlowMist 安全清单 │
+ │ └── 工具质量 10 项评分 │
+ │ │
+ ├── Agent 系统架构师 ────────────────────────────┤
+ │ "我要构建多 Agent 系统" │
+ │ │
+ │ 必须掌握: │
+ │ ├── A2A 协议 + Agent Card │
+ │ ├── Agent Skills │
+ │ ├── Least Agency (非仅 Least Privilege) │
+ │ ├── 纵深防御五道防线 │
+ │ ├── 级联幻觉 / 记忆投毒防御 │
+ │ ├── 复合精度公式 │
+ │ ├── Google 三支柱评估 │
+ │ ├── KYA (Know Your Agent) │
+ │ └── Token Exchange (RFC 8693) │
+ │ │
+ └── 安全工程师 ──────────────────────────────────┤
+ "我要保证 Agent 系统安全" │
+ │
+ 必须掌握: │
+ ├── 10 条不可协商安全约束 │
+ ├── 8 类攻击向量 + 防御映射 │
+ ├── CoSAI 白皮书 8 项建议 │
+ ├── OWASP LLM/Agentic Top 10 │
+ ├── SlowMist MCP 安全清单 │
+ ├── Prompt 不是安全边界(铁律) │
+ ├── Sandbox / MicroVM 隔离 │
+ ├── Policy Engine (OPA/Cedar) │
+ └── 不可篡改审计日志 │
+ │
+ ────────────────────────────────────────────────┘
+```
+
+---
+
+## 十二、一张图总结:Agent Friendly 的本质
+
+```
+┌─────────────────────────────────────────────────────────────┐
+│ │
+│ Agent Friendly 的本质 │
+│ │
+│ = 好工程实践 × 强制化程度 │
+│ │
+│ ┌────────────────────┐ ┌────────────────────┐ │
+│ │ 人类开发者时代 │ │ Agent 消费者时代 │ │
+│ ├────────────────────┤ ├────────────────────┤ │
+│ │ 好命名 → "建议" │ ──▶│ 好命名 → "必须" │ │
+│ │ 类型化 → "最好有" │ ──▶│ 类型化 → "必须" │ │
+│ │ 错误信息 → "方便" │ ──▶│ 错误信息 → "必须" │ │
+│ │ 文档 → "对人有帮助" │ ──▶│ 文档 → "对机器可解析"│ │
+│ │ 幂等性 → "好实践" │ ──▶│ 幂等性 → "必须" │ │
+│ │ 最小权限 → "安全建议"│ ──▶│ 最小权限 → "不可协商"│ │
+│ └────────────────────┘ └────────────────────┘ │
+│ │
+│ ────────────────────────────────────────────────── │
+│ │
+│ 每一个"新"标准都不是新发明: │
+│ │
+│ MCP ──────────── 借鉴了 ──→ LSP (Language Server Protocol) │
+│ llms.txt ──────── 借鉴了 ──→ robots.txt │
+│ Agent Card ────── 借鉴了 ──→ .well-known URI (RFC 5785) │
+│ AX ──────────── 借鉴了 ──→ DX (Developer Experience) │
+│ AGENTS.md ────── 借鉴了 ──→ README.md / CONTRIBUTING.md │
+│ A2A ──────────── 借鉴了 ──→ HTTP + Service Discovery │
+│ Tool Annotations ─ 借鉴了 ─→ HTTP Method Semantics │
+│ │
+│ ────────────────────────────────────────────────── │
+│ │
+│ Agent Friendly 不是革命,是好设计的自然演进。 │
+│ 人类容忍的模糊性,Agent 不能容忍。 │
+│ 当 Agent 成为主要消费者,"建议"变成了"必须"。 │
+│ │
+└─────────────────────────────────────────────────────────────┘
+```
+
+---
+
+## 十三、完整画面:被调用方 + 构建方
+
+```
+ Agent Friendly 完整画面
+┌─────────────────────────────────────────────────────────────┐
+│ │
+│ 被调用方(你的系统) 构建方(Agent Harness) │
+│ Agent Friendly 规约 Harness Engineering │
+│ ══════════════════ ═══════════════════ │
+│ │
+│ "怎么让 Agent 用好 "怎么给 Agent 建好 │
+│ 你的系统" 运行环境" │
+│ │
+│ ┌──────────────┐ ┌──────────────┐ │
+│ │ §5 发现层 │ │ s05 知识加载 │ │
+│ │ llms.txt │◀──找到──▶ │ 两层按需加载 │ │
+│ │ Agent Card │ │ │ │
+│ ├──────────────┤ ├──────────────┤ │
+│ │ §2 工具设计 │ │ s02 工具调度 │ │
+│ │ Schema/描述 │◀──调用──▶ │ 调度映射+沙箱 │ │
+│ │ 7 子规约 │ │ │ │
+│ ├──────────────┤ ├──────────────┤ │
+│ │ §3 API 设计 │ │ s01 Agent Loop│ │
+│ │ 10 条 AX 原则 │◀──交互──▶ │ 30 行核心循环 │ │
+│ ├──────────────┤ ├──────────────┤ │
+│ │ §4 安全规约 │ │ s04/s12 隔离 │ │
+│ │ 10 条安全约束 │◀──保护──▶ │ Subagent + │ │
+│ │ │ │ Worktree │ │
+│ ├──────────────┤ ├──────────────┤ │
+│ │ §6 评估规约 │ │ 12 课渐进验证 │ │
+│ │ Postman 48 │ │ 3.6KB → 36KB │ │
+│ └──────────────┘ └──────────────┘ │
+│ │ │ │
+│ └───────────┬───────────────┘ │
+│ ▼ │
+│ ┌────────────────┐ │
+│ │ Agent 成功完成 │ │
+│ │ 用户的任务 │ │
+│ └────────────────┘ │
+│ │
+│ 共享哲学根基: │
+│ 1. 模型比你想的更聪明 → 给好 Schema,不预设工作流 │
+│ 2. 约束是最好的礼物 → NEVER 清单 > 功能列表 │
+│ 3. 好设计是透明的 → 你几乎忘记它的存在 │
+│ │
+└─────────────────────────────────────────────────────────────┘
+```
+
+### Harness 12 课与规约概念的逐项映射
+
+```
+┌─────────────────────────────────┬────────────────────────────────┐
+│ Harness Engineering │ Agent Friendly 规约 │
+│ (构建方) │ (被调用方) │
+├─────────────────────────────────┼────────────────────────────────┤
+│ s01 Agent Loop │ — (规约不涉及 Agent 内部循环) │
+│ s02 Tool dispatch + safe_path │ §2 Tool Design + §4 Least Agency│
+│ s03 TodoWrite 一次一个 │ P2 约束>能力 │
+│ s04 Subagent 上下文隔离 │ §4 Sandbox / 隔离 │
+│ s05 Skill 两层加载 │ §5 发现层 (llms.txt 索引+全文) │
+│ s06 Context Compact │ — (Harness 独有:内部记忆管理) │
+│ s07 Task DAG 磁盘持久 │ Agent Skills 标准 │
+│ s08 Background tasks │ — (Harness 独有:异步执行管理) │
+│ s09 Team mailbox │ A2A 协议 (简化版) │
+│ s10 Shutdown/Plan protocols │ HITL + Agent 协商 │
+│ s11 Autonomous task claiming │ Agent Card 发现 (去中心化) │
+│ s12 Worktree isolation │ §4 Sandbox / MicroVM (轻量版) │
+│ mcp-builder skill │ §2 + §3 全部 (MCP Server 构建) │
+│ "Trust the model" (全局) │ P2 约束>能力 (同一哲学) │
+├─────────────────────────────────┼────────────────────────────────┤
+│ 独有领域:循环、上下文、持久化 │ 独有领域:Schema、发现、评分 │
+│ 关注动词:加载、隔离、持久化 │ 关注动词:暴露、描述、约束 │
+└─────────────────────────────────┴────────────────────────────────┘
+```
+
+---
+
+## 附录:五份文档的关系
+
+```
+┌─────────────────────────────────────────────────────────────┐
+│ │
+│ deep-research.md 本质:证据层 │
+│ 原始研究素材 "数据和来源在这里" │
+│ (289 行) │
+│ │ │
+│ │ 提炼出 │
+│ ▼ │
+│ glossary.md 本质:知识层 │
+│ 概念与名词解释 "每个概念是什么意思" │
+│ (1001 行, ~115 概念) │
+│ │ │
+│ │ 揭示关系 │
+│ ▼ │
+│ architecture.md 本质:结构层 │
+│ 概念关系与架构图 "概念之间如何连接" │
+│ (761 行, 13 张图) │
+│ │ │
+│ │ 转化为约束 │
+│ ▼ │
+│ development-spec.md 本质:规约层 │
+│ 开发规约 v1.0 "必须/禁止做什么" │
+│ (519 行, 25 NEVER) │
+│ │ │
+│ │ 补充构建方视角 │
+│ ▼ │
+│ harness-engineering.md 本质:实现层 │
+│ Harness Engineering 分析 "Agent 内部怎么运作" │
+│ (359 行, 12 课映射) │
+│ │
+│ 五层关系: 证据 → 知识 → 结构 → 约束 → 实现 │
+│ │
+└─────────────────────────────────────────────────────────────┘
+```
diff --git a/00-inbox/2026-03-24-agent-friendly-deep-research.md b/00-inbox/2026-03-24-agent-friendly-deep-research.md
new file mode 100644
index 0000000..3acb72d
--- /dev/null
+++ b/00-inbox/2026-03-24-agent-friendly-deep-research.md
@@ -0,0 +1,289 @@
+---
+id: "2026-03-24-agent-friendly-deep-research"
+title: "Agent Friendly 深度研究:让系统对 AI Agent 友好的设计范式"
+slug: "agent-friendly-deep-research"
+status: "inbox"
+content_type: "article"
+channels: ["wechat", "x"]
+language: "zh-CN"
+source_urls:
+ - "https://agentexperience.ax/"
+ - "https://llmstxt.org/"
+ - "https://agents.md/"
+ - "https://modelcontextprotocol.io/specification/2025-11-25"
+ - "https://a2a-protocol.org"
+ - "https://github.com/stefanbuck/ai-api-best-practices"
+ - "https://github.com/janwilmake/agent-friendly"
+ - "https://workos.com/blog/build-agent-friendly-products"
+ - "https://biilmann.blog/articles/introducing-ax/"
+ - "https://blogs.mulesoft.com/automation/api-design-for-agentic-ai/"
+ - "https://www.apideck.com/blog/api-design-principles-agentic-era"
+ - "https://refactoring.fm/p/how-to-design-apis-for-an-ai-world"
+ - "https://www.postman.com/ai/ai-ready-apis/"
+ - "https://arxiv.org/abs/2505.02279"
+ - "https://arxiv.org/abs/2504.16736"
+assets: []
+cover_image: ""
+template: "article"
+owner: "content-forge"
+created_at: "2026-03-24T00:00:00+08:00"
+updated_at: "2026-03-24T00:00:00+08:00"
+published_at: null
+tags: ["agent-friendly", "AX", "MCP", "A2A", "API-design", "agentic-AI"]
+---
+
+# Agent Friendly 深度研究报告
+
+## 一、定义与演进
+
+**Agent Friendly** = 让 AI Agent 能自主**发现、理解、调用、验证**你的系统,无需人类在旁翻译。
+
+类比链:
+```
+Mobile Friendly (2010s) → Developer Friendly / DX (2011) → Agent Friendly / AX (2025)
+ 网站适配手机 API 适配开发者 系统适配 AI Agent
+```
+
+**AX(Agent Experience)** 由 Netlify CEO **Matt Biilmann** 于 2025 年初正式命名,定位为 UX → DX 之后的第三代体验设计范式。
+
+> "Your documentation is now your product's UI -- for agents." — WorkOS
+
+---
+
+## 二、为什么现在重要?
+
+| 数据点 | 来源 |
+|--------|------|
+| 89% 开发者日常使用 AI 工具,但仅 **24%** 为 Agent 设计 API | Postman 2025 |
+| Cloudflare 2024 年首次报告自动化流量超过人类流量 | Cloudflare |
+| RAG Agent 流量 2025 年初飙升 **49%** | Apideck |
+| Gartner:2026 年底 **40%** 企业应用将嵌入 AI Agent | Gartner |
+| Gartner:2028 年 **90%** B2B 采购由 Agent 代理,涉及 **$15T** | Gartner |
+| AI 引荐流量转化率高 **31%**,单次访问收入高 **254%** | Adobe |
+| Agentic AI 市场:$7B (2025) → **$236B (2034)** | 多方预测 |
+
+---
+
+## 三、协议栈全景(The "Big Five")
+
+```
+┌──────────────────────────────────────────────────────────────┐
+│ Agentic AI Foundation (AAIF) │
+│ Linux Foundation · Anthropic + OpenAI + Block │
+├──────────────────────────────────────────────────────────────┤
+│ │
+│ ┌─────────────┐ ┌─────────────┐ ┌─────────────────────┐ │
+│ │ llms.txt │ │ AGENTS.md │ │ Schema.org/JSON-LD│ │
+│ │ 文档发现层 │ │ 项目指令层 │ │ 结构化数据层 │ │
+│ └──────┬──────┘ └──────┬──────┘ └──────────┬──────────┘ │
+│ │ │ │ │
+│ ┌──────▼──────────────────────────────────────▼──────────┐ │
+│ │ MCP (Model Context Protocol) │ │
+│ │ Agent ←→ Tool 垂直连接 │ │
+│ │ Anthropic 创建,97M+ 月下载 │ │
+│ └──────────────────────┬────────────────────────────────┘ │
+│ │ │
+│ ┌──────────────────────▼────────────────────────────────┐ │
+│ │ A2A (Agent-to-Agent Protocol) │ │
+│ │ Agent ←→ Agent 水平互操作 │ │
+│ │ Google 创建,150+ 组织支持,RC 1.0 │ │
+│ └───────────────────────────────────────────────────────┘ │
+│ │
+└──────────────────────────────────────────────────────────────┘
+```
+
+### 协议对比
+
+| 维度 | MCP | A2A | llms.txt | AGENTS.md |
+|------|-----|-----|----------|-----------|
+| **层** | Agent→Tool | Agent→Agent | 文档发现 | 项目指令 |
+| **传输** | JSON-RPC, stdio | HTTP, SSE, gRPC | 静态文件 | 静态文件 |
+| **发现** | 服务端定义 | Agent Card (.well-known) | /llms.txt | 仓库根目录 |
+| **治理** | AAIF/Linux Foundation | Linux Foundation | 社区 | AAIF |
+| **采纳量** | 10,000+ MCP Server | 150+ 组织 | 600+ 网站 | 60,000+ 仓库 |
+
+---
+
+## 四、Agent Friendly 的 10 条设计原则
+
+综合自 Apideck、Stefan Buck、O'Reilly、The New Stack、WorkOS 等多个权威来源。
+
+| # | 原则 | 说明 |
+|---|------|------|
+| 1 | **Schema-First** | 完整 OpenAPI 3.0+ spec,每个端点/参数/响应都有富描述 |
+| 2 | **可预测 & 一致** | 统一命名、一致 JSON 结构、类型化错误码 |
+| 3 | **自描述** | 响应中包含足够上下文让 Agent 知道下一步做什么(HATEOAS) |
+| 4 | **可组合** | 小而可链的端点,非巨型操作 |
+| 5 | **程序化认证** | API Key / OAuth 2.0,无 CAPTCHA、无"联系销售" |
+| 6 | **丰富错误响应** | 说明 WHY 失败 + HOW 修复 + is_retriable + retry_after |
+| 7 | **机器可读文档** | llms.txt、Markdown-first、结构化元数据 |
+| 8 | **逻辑下沉到 API** | 计算和验证在 API 端完成,LLM 只做语言理解 |
+| 9 | **安全机制** | dry-run 模式、不可逆操作确认步、成本感知 |
+| 10 | **内容协商** | 按 Accept header 返回 HTML(浏览器)或 Markdown/JSON(Agent) |
+
+---
+
+## 五、标杆实践
+
+### Stripe — 当前最完整的 Agent Friendly 生态
+
+```
+┌─────────────────────────────────────────────┐
+│ Stripe Agent 生态 │
+├─────────────┬───────────────────────────────┤
+│ Agent Toolkit │ @stripe/agent-toolkit │
+│ (SDK 集成) │ OpenAI / LangChain / CrewAI │
+├─────────────┼───────────────────────────────┤
+│ Remote MCP │ mcp.stripe.com (OAuth) │
+├─────────────┼───────────────────────────────┤
+│ ACP 协议 │ Agentic Commerce Protocol │
+│ │ (与 OpenAI 联合,Apache 2.0) │
+├─────────────┼───────────────────────────────┤
+│ 集成基准 │ 首个生产级 Agent 集成评测 │
+│ │ "支付必须 100% 正确" │
+├─────────────┼───────────────────────────────┤
+│ llms.txt │ 含 instructions section │
+│ │ 主动纠正模型漂移 │
+└─────────────┴───────────────────────────────┘
+```
+
+### 其他标杆
+
+| 公司 | Agent Friendly 举措 |
+|------|---------------------|
+| **Shopify** | 双 MCP Server(Dev + Storefront)、Catalog API(数十亿商品)、Checkout Kit |
+| **Twilio** | AI Assistants 框架、ConversationRelay(电话→LLM)、BYOLLM |
+| **HubSpot** | 双 MCP 架构(远程 CRM + 本地开发) |
+| **Clerk** | 全自动 Agent 认证流程(零人工介入) |
+| **Visa** | Trusted Agent Protocol (TAP),2025 年底完成数百笔 Agent 交易 |
+| **Mastercard** | Agent Pay,2025 年 11 月全美上线 |
+
+---
+
+## 六、文档发现层三剑客
+
+| 标准 | 角色 | 格式 | 采纳 |
+|------|------|------|------|
+| **llms.txt** | "robots.txt for AI" — 网站摘要 | Markdown @ `/llms.txt` | 600+ 网站 |
+| **llms-full.txt** | 完整文档单文件 | Markdown @ `/llms-full.txt` | Mintlify/Anthropic 联合 |
+| **Agent Card** | Agent 能力声明 | JSON @ `/.well-known/agent-card.json` | A2A 生态 |
+
+**现实检查**:截至 2025 年 8 月,主要 LLM 爬虫(GPTBot、ClaudeBot)尚未主动读取 llms.txt。robots.txt 仍是实际控制机制。llms.txt 更多被 MCP/RAG 管道消费。
+
+---
+
+## 七、Agent SEO — 让 Agent 发现你
+
+```
+传统 SEO Agent SEO (LLMO)
+───────────────── ─────────────────
+关键词密度 结构化数据 (JSON-LD)
+反向链接 llms.txt + Agent Card
+HTML
Schema.org markup
+Google SERP 排名 AI Overview 引用率
+点击率 (CTR) 零点击占比 (58.5%)
+```
+
+关键数据:
+- 58.5% Google 搜索零点击
+- AI Overview 出现时,有机 CTR 下降 **61%+**
+- Google(2025 年 5 月)官方推荐 JSON-LD
+- SearchVIU 测试确认 ChatGPT/Claude/Perplexity/Gemini 均处理 Schema Markup
+
+---
+
+## 八、中国生态:智能体友好
+
+国内 MCP 采纳爆发式增长:
+- 支付宝 MCP 服务(首个国内 AI 支付场景工具)
+- MiniMax 多模态 MCP 服务
+- 多个"MCP 广场"(市场)上线
+- 讯飞星辰(StarAgent)支持 MCP Server 发布
+
+国内实践共识的 4 层 Agent 架构:
+
+```
+┌─────────────────────────┐
+│ 认知层 (Cognitive) │ LLM 意图理解 + 任务分解
+├─────────────────────────┤
+│ 技能层 (Skill) │ 原子执行单元,明确输入/输出 Schema
+├─────────────────────────┤
+│ 连接层 (Connection) │ MCP / 数据库 / SaaS / 企业内网
+├─────────────────────────┤
+│ 持续层 (Persistence) │ 状态、记忆、任务检查点管理
+└─────────────────────────┘
+```
+
+---
+
+## 九、学术论文
+
+| 论文 | arXiv | 焦点 |
+|------|-------|------|
+| Survey of Agent Interoperability Protocols | 2505.02279 | MCP→ACP→A2A→ANP 分阶段采纳路线图 |
+| A Survey of AI Agent Protocols | 2504.16736 | 类比早期碎片化 Internet |
+| Multi-Agent Collaboration Mechanisms | 2501.06322 | 协作维度可扩展框架 |
+| Orchestration of Multi-Agent Systems | 2601.13671 | 统一架构框架 |
+| Evolution of AI Agent Registry Solutions | 2508.03095 | 5 种注册发现架构对比 |
+
+---
+
+## 十、关键引用
+
+> "Designing for AI agents is designing for the strictest, most literal and tireless user imaginable." — Apidog
+
+> "APIs weren't built for machines that think." — MuleSoft
+
+> "Your documentation is now your product's UI -- for agents." — WorkOS
+
+> "All the usual best practices in API design matter **more** when making an API agent-ready. LLMs are pattern-followers." — Apideck
+
+> "Gartner predicts that by 2026, over 30% of the growing demand for APIs will come not from human developers, but from AI agents."
+
+---
+
+## 十一、核心资源链接
+
+### 协议 & 标准
+- MCP 规范: https://modelcontextprotocol.io/specification/2025-11-25
+- A2A 协议: https://a2a-protocol.org
+- llms.txt 规范: https://llmstxt.org
+- AGENTS.md: https://agents.md
+- AAIF: https://www.linuxfoundation.org/press/linux-foundation-announces-the-formation-of-the-agentic-ai-foundation
+- Agentic Commerce Protocol (Stripe + OpenAI): https://stripe.com/blog/developing-an-open-standard-for-agentic-commerce
+
+### 设计指南
+- AX 官网: https://agentexperience.ax
+- Stefan Buck AI API 最佳实践: https://github.com/stefanbuck/ai-api-best-practices
+- Agent-Friendly Web 原则: https://github.com/janwilmake/agent-friendly
+- AX 设计模式库 (26 patterns): https://agent-experience.dev
+- Apideck 设计原则: https://www.apideck.com/blog/api-design-principles-agentic-era
+- WorkOS "How to build agent-friendly products": https://workos.com/blog/build-agent-friendly-products
+- Biilmann "Introducing AX": https://biilmann.blog/articles/introducing-ax/
+- MuleSoft "API Design for Agentic AI": https://blogs.mulesoft.com/automation/api-design-for-agentic-ai/
+- Refactoring.fm "APIs for an AI World": https://refactoring.fm/p/how-to-design-apis-for-an-ai-world
+- O'Reilly "How to Write a Good Spec for AI Agents": https://www.oreilly.com/radar/how-to-write-a-good-spec-for-ai-agents/
+
+### 评估工具
+- Postman API Agent Readiness (48 项检查): https://www.postman.com/ai/ai-ready-apis/
+- FourWeekMBA Readiness Checker: https://fourweekmba.com/api-agent-readiness-checker/
+
+### 行业报告
+- Postman 2025 State of API: https://voyager.postman.com/doc/postman-state-of-the-api-report-2025.pdf
+
+### 关键人物
+- **Matt Biilmann** (Netlify CEO) — 命名 AX (Agent Experience)
+- **Jeremy Howard** (Answer.AI) — 提出 llms.txt 规范
+- **janwilmake** — Agent-Friendly Web 原则
+- **Stefan Buck** — AI API 最佳实践
+
+---
+
+## 十二、写作角度备选
+
+1. **"好设计的自然延伸"** — Agent Friendly 不是新概念,MCP 借鉴 LSP,llms.txt 借鉴 robots.txt,Agent Card 借鉴 .well-known,每个"新"标准都是已验证设计智慧的重组
+2. **"从 DX 到 AX"** — 开发者体验演进史,UX→DX→AX 三代范式对比
+3. **"API 的新用户不是人"** — 从 Postman 89% vs 24% 的数据切入,Agent 作为 API 第一消费者
+4. **"Agent Friendly = 约束 > 能力"** — 与 content-forge 项目设计哲学呼应,好的 Agent Friendly 设计是消除 Agent 需要猜测的一切
+5. **"协议战争"** — MCP vs A2A vs ACP,类比 HTTP 早期标准化历史
+6. **"中国智能体友好生态"** — 国内 MCP 广场爆发、4 层架构共识、安全挑战
diff --git a/00-inbox/2026-03-24-agent-friendly-development-spec.md b/00-inbox/2026-03-24-agent-friendly-development-spec.md
new file mode 100644
index 0000000..6a95c41
--- /dev/null
+++ b/00-inbox/2026-03-24-agent-friendly-development-spec.md
@@ -0,0 +1,519 @@
+---
+id: "2026-03-24-agent-friendly-development-spec"
+title: "Agent Friendly 开发规约 v1.0 — 构建对 AI Agent 友好的系统"
+slug: "agent-friendly-development-spec"
+status: "inbox"
+content_type: "article"
+channels: ["wechat", "x"]
+language: "zh-CN"
+source_urls:
+ - "https://www.anthropic.com/research/building-effective-agents"
+ - "https://www.anthropic.com/engineering/writing-tools-for-agents"
+ - "https://www.anthropic.com/engineering/effective-context-engineering-for-ai-agents"
+ - "https://modelcontextprotocol.io/specification/2025-06-18/server/tools"
+ - "https://www.philschmid.de/mcp-best-practices"
+ - "https://engineering.block.xyz/blog/blocks-playbook-for-designing-mcp-servers"
+ - "https://workos.com/blog/build-agent-friendly-products"
+ - "https://www.apideck.com/blog/api-design-principles-agentic-era"
+ - "https://github.com/stefanbuck/ai-api-best-practices"
+ - "https://github.com/slowmist/MCP-Security-Checklist"
+ - "https://github.com/cosai-oasis/ws4-secure-design-agentic-systems/blob/main/model-context-protocol-security.md"
+ - "https://www.postman.com/ai/ai-ready-apis/"
+assets: []
+cover_image: ""
+template: "article"
+owner: "content-forge"
+created_at: "2026-03-24T00:00:00+08:00"
+updated_at: "2026-03-24T00:00:00+08:00"
+published_at: null
+tags: ["agent-friendly", "development-spec", "MCP", "AX", "API-design", "security"]
+---
+
+# Agent Friendly 开发规约 v1.0
+
+> "Designing for AI agents is designing for the strictest, most literal and tireless user imaginable." — Apidog
+
+---
+
+## §0 元信息
+
+| 字段 | 值 |
+|------|-----|
+| 版本 | 1.0.0 |
+| 日期 | 2026-03-24 |
+| 适用范围 | MCP Server、API、Tool/Function、文档、Agent 系统架构 |
+| 核心来源 | Anthropic 官方指南、MCP 规范、Postman 8 Pillars、CoSAI 安全白皮书、Block MCP Playbook、SlowMist 安全清单 |
+
+---
+
+## §1 基本原则(5 条铁律)
+
+### P1: Schema-First — 先契约后代码
+
+> 数据结构和协议是万恶之源,也是万善之源。
+
+- 所有能力必须有机器可读的 Schema(OpenAPI / MCP inputSchema / JSON Schema)
+- 先定义接口契约,再实现逻辑
+- Schema 即文档、Schema 即验证、Schema 即测试
+
+### P2: 约束 > 能力 — 定义边界比扩展功能更重要
+
+> Agent 不需要更多能力,需要更清晰的边界。
+
+- 70% 精力花在「不做什么」(NEVER 清单),30% 花在「怎么做」
+- 消除 Agent 需要猜测的一切
+- 如果人类工程师无法明确判断该用哪个工具,Agent 更不可能判断对
+
+### P3: 最小惊讶 — 可预测性是 Agent 的氧气
+
+> LLM 是模式跟随者(pattern-followers),不一致性会导致幻觉。
+
+- 统一命名、统一结构、统一错误格式
+- 同类操作的行为必须一致
+- 10 个一致的端点胜过 50 个风格各异的端点
+
+### P4: 最小权限 + 最小代理权 — 不信任 Agent 的自律
+
+> "请不要删除客户记录" 不是安全策略——那是许愿。
+
+- 通过策略引擎(而非 prompt)限制行为
+- 每次工具调用独立鉴权,而非连接时一次性授权
+- 危险能力通过 allowlist 移除,而非通过 prompt 禁止
+
+### P5: 可观测性 — 看不到的就无法修复
+
+> "没有 trace 级可观测性就上线 Agent 系统,是工程事故。"
+
+- 每个 Agent 动作必须记录:谁发起、调了什么工具、什么参数、什么结果、什么授权范围
+- 不只记输入输出,还要记被拒绝的候选工具和推理链
+- 审计日志不可篡改、有时间戳、可密码学验证
+
+---
+
+## §2 工具设计规约(Tool Design)
+
+### 2.1 命名
+
+| 规则 | 正确 | 错误 |
+|------|------|------|
+| 动词优先 + 资源 | `search_documents`, `create_issue` | `do_stuff`, `process`, `run` |
+| 服务前缀消歧义 | `slack_send_message`, `jira_create_issue` | `send_message`(哪个服务?) |
+| 统一大小写 | 全 `snake_case` 或全 `kebab-case` | 混用 `getUser` 和 `search_issues` |
+| 长度 ≤ 60 字符 | `asana_projects_search` | `asana_project_management_system_search_all_projects_v2` |
+| 自解释 | 读名字就知道功能 | 需要看描述才懂 |
+
+### 2.2 描述
+
+**最低 3-4 句,包含四要素**:
+
+```
+1. 做什么(一句话)
+2. 何时用 / 何时不用(与相似工具的边界)
+3. 返回什么(响应结构的关键字段)
+4. 限制和前提(频率限制、前置条件、不返回什么)
+```
+
+**示例**:
+
+```
+BAD: "Gets data from the system"
+GOOD: "Search for issues in the project tracker by keyword, status, or assignee.
+ Returns issue ID, title, status, and assignee for each match.
+ Results are paginated (max 50 per page); use the `cursor` parameter for subsequent pages.
+ Does NOT return issue comments or attachments -- use get_issue for full details.
+ Use when the user wants to find, filter, or list issues."
+```
+
+**影响**:经过优化的工具描述将工具激活可靠性从 ~20% 提升到 ~90%。Anthropic 报告:在 SWE-bench Verified 上,仅调整工具描述就产生了显著分数提升。
+
+### 2.3 输入 Schema
+
+| 规则 | 说明 |
+|------|------|
+| **扁平化** | 顶层原语类型,禁止 3 层以上嵌套 |
+| **严格类型** | 每个参数有 type + description + format |
+| **枚举约束** | 有限值域必须用 enum,不用 freeform string |
+| **required 显式** | 所有 properties 字段列入 required,可选字段用 `["string", "null"]` |
+| **additionalProperties: false** | 禁止未定义字段 |
+| **参数 ≤ 20** | 超过拆分工具 |
+| **提供 examples** | 复杂参数附 input_examples |
+
+**反模式**:手写 JSON Schema(必然出错)→ 从 OpenAPI spec 自动生成。
+
+### 2.4 输出 Schema
+
+| 规则 | 说明 |
+|------|------|
+| 高信号字段 | 只返回 Agent 需要推理的字段,非整个数据库记录 |
+| 稳定标识符 | 返回 slug/UUID,非自增 ID 或内部引用 |
+| 分页 | 列表操作必须返回 `next_cursor` + `has_more` |
+| 截断 | 默认限制响应 ≤ 25,000 token,超出提供续取指令 |
+| 双格式 | structuredContent (typed) + TextContent (backward compat) |
+
+### 2.5 错误响应
+
+**铁律:工具错误放在 result 中,不要抛协议级错误。**
+
+```json
+{
+ "content": [{"type": "text", "text": "Failed to create issue: title field is required and was empty. Provide a non-empty title string."}],
+ "isError": true
+}
+```
+
+| 必含字段 | 说明 |
+|---------|------|
+| WHY | 为什么失败 |
+| HOW | 怎么修复 |
+| is_retriable | 是否可重试 |
+| retry_after | 重试等待时间 |
+| alternative_action | 建议替代操作(可选) |
+
+**反模式**:返回 stack trace、返回 "An error occurred"、静默吞掉错误。
+
+### 2.6 工具注解(MCP Annotations)
+
+```typescript
+interface ToolAnnotations {
+ readOnlyHint?: boolean; // 不修改环境 → 客户端可自动批准
+ destructiveHint?: boolean; // 可能破坏数据 → 客户端应加确认步骤
+ idempotentHint?: boolean; // 重复调用 = 相同效果
+ openWorldHint?: boolean; // 与外部实体交互
+}
+```
+
+| 工具 | readOnly | destructive | idempotent | openWorld |
+|------|----------|-------------|------------|-----------|
+| `search_documents` | true | - | - | false |
+| `create_issue` | false | false | false | false |
+| `update_issue` | false | false | true | false |
+| `delete_issue` | false | true | true | false |
+| `send_notification` | false | false | false | true |
+
+**注解是提示(hints),不是安全保证。客户端不得仅基于注解做安全关键决策。**
+
+### 2.7 工具粒度
+
+```
+┌──────────────────────────────────────────────┐
+│ 粒度决策树 │
+├──────────────────────────────────────────────┤
+│ 工具数 > 20? → 审查重叠,合并 │
+│ 工具数 < 5 但 → 审查过度合并,拆分 │
+│ 每个 > 15 参数? (硬限制 ≤ 20,见 §2.3)│
+│ 两个工具人类无法 → 合并或重写描述消歧义 │
+│ 区分何时用哪个? │
+│ 常见任务需要 > 3 → 提供组合工具 │
+│ 次连续调用? │
+│ 一个工具混合读写? → 拆分为独立风险级别 │
+└──────────────────────────────────────────────┘
+```
+
+**Block 经验**:Linear MCP server 从 30+ 工具重建三次,最终缩减到 2 个。GitHub Copilot 从 40 个工具缩减到 13 个后基准测试提升。
+
+> "更多工具 = 对数级递减的选择准确率。"
+
+---
+
+## §3 API 设计规约(API Design)
+
+### 3.1 十条 AX 设计原则
+
+| # | 原则 | 检查标准 |
+|---|------|---------|
+| 1 | **机器可读 spec 在固定位置** | `/.well-known/openapi.json` 可访问 |
+| 2 | **语义化操作摘要** | 每个端点有 operationId + summary + description |
+| 3 | **扁平可预测 JSON** | 无深层嵌套,含元数据(分页、类型、可用动作) |
+| 4 | **可执行错误响应** | 含 why + how + is_retriable + retry_after |
+| 5 | **频率限制透明** | 响应头含 X-RateLimit-Remaining/Limit/Reset |
+| 6 | **幂等键** | 状态变更操作支持 idempotency key |
+| 7 | **批量端点** | 高频操作提供 batch 接口 |
+| 8 | **引导下一步** | 响应含 recommendedNextAction / availableActions |
+| 9 | **Dry-run 模式** | 破坏性操作支持无副作用预演 |
+| 10 | **内容协商** | 按 Accept header 返回 HTML / Markdown / JSON |
+
+### 3.2 Postman 8 支柱 48 项检查(摘录核心项,完整清单见 [Postman Agent Readiness](https://www.postman.com/ai/ai-ready-apis/))
+
+**通过阈值:总分 ≥ 70/100 且 0 项 Critical 失败。**
+
+| 支柱 | Critical 项 | 核心检查 |
+|------|------------|---------|
+| **META** 元数据 | operationId | 每个操作有 operationId + summary + description |
+| **ERR** 错误 | 4xx 定义 + 错误 Schema | 含机器可读 ID + 人类可读消息 + 429 定义 |
+| **INTRO** 内省 | 参数类型 + required 标记 | 枚举约束 + 请求/响应示例 |
+| **NAME** 命名 | — | 一致大小写 + RESTful 路径 + 正确 HTTP 语义 |
+| **PRED** 可预测性 | 响应 Schema 定义 | 一致响应信封 + 分页文档 + ISO 8601 |
+| **DOC** 文档 | 认证文档 | 频率限制文档 + API 概述 |
+| **PERF** 性能 | — | 频率限制头 + 缓存头 + 批量端点 |
+| **DISC** 发现 | Server URL 定义 | OpenAPI 3.0+ + 多环境文档 + 版本化 |
+
+**8 项 Critical(必须全部通过)**:
+META_001(operationId), ERR_001(4xx), ERR_002(错误Schema), INTRO_001(参数类型), INTRO_002(required), PRED_001(响应Schema), DOC_001(认证文档), DISC_002(Server URL)
+
+---
+
+## §4 安全规约(Security)
+
+### 4.1 十条不可协商的安全约束
+
+| # | 约束 | 一句话规则 |
+|---|------|-----------|
+| 1 | **最小代理权** | 每次工具调用通过策略引擎鉴权,而非仅在 token 签发时 |
+| 2 | **临时凭证** | 短期、有限范围 token;任务完成即撤销;禁止长期 standing access |
+| 3 | **Prompt 不是安全边界** | 危险能力通过 allowlist/策略移除,绝不通过 system prompt |
+| 4 | **扫描所有元数据** | MCP 网关扫描工具名、描述、参数中的隐藏 prompt 注入 |
+| 5 | **不可逆操作必须 HITL** | 意图预览 + diff + 确认弹窗,任何无法撤销的操作 |
+| 6 | **四层预算** | 成本 + token + 步骤 + 时间预算在运行时强制执行 |
+| 7 | **每次交接验证** | A2A 链路中每一跳独立验证身份、权限和负载 |
+| 8 | **沙箱隔离** | 代码执行用 microVM(Firecracker/Kata);容器不够 |
+| 9 | **不可篡改审计** | who + what + why + tools + outcome + auth scope,密码学可验证 |
+| 10 | **Kill Switch 永远可用** | 带键盘快捷键的全局停止机制,中断所有 Agent 活动 |
+
+### 4.2 权限模型
+
+```
+┌─────────────────────────────────────────────────────┐
+│ 权限层级模型 │
+├─────────────────────────────────────────────────────┤
+│ │
+│ 人类用户身份 │
+│ └── 委托给 Agent(继承用户权限) │
+│ └── 每个任务签发 Scoped Token │
+│ └── 每次工具调用实时鉴权 │
+│ └── 策略引擎(OPA/Cedar/Oso) │
+│ │
+│ 用户失去权限 → Agent 立即失去权限 │
+│ 任务完成 → Token 立即撤销 │
+│ Session 内权限不得累积 │
+│ │
+└─────────────────────────────────────────────────────┘
+```
+
+### 4.3 Prompt 注入防御
+
+| 防御层 | 措施 |
+|--------|------|
+| **工具元数据** | MCP 网关扫描 tool name / description / parameter schema 中的隐藏指令 |
+| **外部数据** | Agent 检索的网页/邮件/文档必须消毒后再注入 LLM 上下文 |
+| **版本锁定** | MCP Server 锁定版本 + 代码签名验证,防 rug pull 攻击 |
+| **RAG 隔离** | 检索管道独立隔离,验证上下文数据完整性 |
+| **能力裁剪** | 不需要的工具从 catalog 中移除,而非靠 prompt 禁止 |
+
+### 4.4 已知攻击向量
+
+| 攻击类型 | 描述 | 防御 |
+|---------|------|------|
+| **直接 Prompt 注入** | "ignore previous rules" | 模式匹配检测 + 输入消毒 |
+| **间接 Prompt 注入** | 外部数据中嵌入恶意指令 | 数据消毒 + RAG 隔离 |
+| **工具投毒** | 工具描述/输出中引导模型执行危险操作 | 元数据扫描 + 版本锁定 |
+| **Schema 投毒** | 操纵 Schema 字段影响工具选择 | Schema 校验 + 基线监控 |
+| **级联幻觉** | Agent A 的错误通过 Agent B/C 毫秒级传播 | 每个 Agent 独立验证输入 |
+| **记忆投毒** | 污染共享上下文影响后续决策 | 不可变存储 + 密码学验证 |
+| **Slopsquatting** | LLM 幻觉出不存在的包名,攻击者注册 | 依赖锁定 + hash 校验 |
+| **偏好操纵 (MPMA)** | 改变 Agent 排序和选择工具的方式 | 工具选择基线监控 |
+
+---
+
+## §5 文档规约(Documentation)
+
+### 5.1 文档发现层
+
+| 文件 | 路径 | 用途 | 格式 |
+|------|------|------|------|
+| `llms.txt` | `/llms.txt` | 站点摘要(robots.txt for AI) | Markdown |
+| `llms-full.txt` | `/llms-full.txt` | 完整文档单文件 | Markdown |
+| `openapi.json` | `/.well-known/openapi.json` | API Schema | JSON/YAML |
+| Agent Card | `/.well-known/agent-card.json` | Agent 能力声明(A2A) | JSON |
+| `AGENTS.md` | 仓库根目录 | 编码 Agent 项目指令 | Markdown |
+
+### 5.2 文档质量标准
+
+| 维度 | 要求 |
+|------|------|
+| **机器可读** | Schema 优先于散文;结构化 frontmatter 优先于自由文本 |
+| **自包含** | 所有必要上下文内联,减少跳转;Agent 无法"点击链接" |
+| **显式假设** | 前提条件和约束显式声明,不依赖读者推断 |
+| **示例驱动** | 每个端点/工具至少 1 个完整示例 |
+| **内容协商** | 按 Accept header 返回 HTML(浏览器)或 Markdown(Agent) |
+| **结构化数据** | JSON-LD / Schema.org 标记主要实体 |
+
+---
+
+## §6 评估规约(Evaluation)
+
+### 6.1 工具质量评分(10 项,二值通过)
+
+| # | 检查项 | Pass | Fail |
+|---|--------|------|------|
+| 1 | 名称清晰度 | 动词+资源,自解释 | 泛化(`do_stuff`)或歧义 |
+| 2 | 描述完整度 | 四要素齐全(做什么/何时用/返回什么/限制) | 一句话或无描述 |
+| 3 | 参数类型化 | 每个参数有 type+description+format | 缺类型或缺描述 |
+| 4 | Schema 扁平度 | 顶层原语,≤ 2 层 | 深层嵌套 |
+| 5 | 示例提供 | 至少 1 个 input example | 无示例 |
+| 6 | 返回结构化 | 有 status key + 人类可读字段 | 自由文本或内部代码 |
+| 7 | 错误可执行 | 含 why + how + 重试建议 | 不透明错误码 |
+| 8 | Token 效率 | 分页+过滤+截断 | 返回全量数据 |
+| 9 | 单一职责 | 一个工具=一个任务=一个风险级别 | 混合读写或多动作 |
+| 10 | 命名空间 | `{service}_{action}_{resource}` | 无前缀,歧义 |
+
+**阈值:≥8/10 = 可接受。7/10 = 需改进。≤6/10 = 必须重新设计。**
+
+### 6.2 系统级评估(Google Cloud 三支柱)
+
+| 支柱 | 测试类型 | 指标 |
+|------|---------|------|
+| **最终输出** | 集成测试 | 任务完成率、正确性、一致性、事实基础 |
+| **决策过程** | 单元测试 | 工具选择准确率、推理逻辑、效率 |
+| **韧性** | 压力测试 | 优雅降级、错误恢复、对抗鲁棒性 |
+
+**评分**:A(全通过)、B(2/3 通过)、C(1/3 通过)、F(全不通过)
+
+### 6.3 生产准入检查清单
+
+```
+□ 所有工具通过 §6.1 质量评分 ≥ 8/10
+□ OpenAPI spec 通过 Postman 48 项检查 ≥ 70 分且 0 Critical
+□ §6.2 三支柱评估 ≥ B 级(至少 2/3 支柱通过)
+□ 安全检查通过 SlowMist MCP 安全清单所有 High 项
+□ 错误注入测试覆盖:超时、500、频率限制、畸形响应
+□ Agent 在 10 步工作流中端到端成功率 ≥ 80%
+□ Trace 级可观测性已部署
+□ Kill Switch 功能验证通过
+□ 审计日志不可篡改性验证通过
+□ 权限模型通过最小代理权审查
+□ llms.txt / AGENTS.md / openapi.json 发现层完备
+```
+
+---
+
+## §7 NEVER 清单(反模式速查)
+
+### 工具设计 NEVER
+
+| # | NEVER | 正确做法 |
+|---|-------|---------|
+| N1 | 1:1 包装 REST 端点为 MCP 工具 | 按用户目标设计组合工具 |
+| N2 | 手写 JSON Schema | 从 OpenAPI spec 自动生成 |
+| N3 | 返回数百条无分页记录 | 分页 + 截断 + 续取指令 |
+| N4 | 泛化工具名(`process`, `run`) | `{service}_{action}_{resource}` |
+| N5 | 描述只写一句话 | 四要素:做什么/何时用/返回什么/限制 |
+| N6 | 返回 stack trace | 消毒后的高层消息 + 修复建议 |
+| N7 | 工具错误抛协议级异常 | 错误放在 result 中 + isError: true |
+| N8 | 同一工具混合读写操作 | 按风险级别拆分 |
+| N9 | Session 中途改变工具列表 | 工具集稳定,按需动态加载 |
+| N10 | 返回低信号技术标识符 | 返回人类可读的高信号字段 |
+
+### 安全 NEVER
+
+| # | NEVER | 正确做法 |
+|---|-------|---------|
+| N11 | 靠 prompt 指令当安全策略 | 策略引擎 (OPA/Cedar) 强制执行 |
+| N12 | 给 Agent 全权限 token | Token Exchange (RFC 8693) 签发有限范围临时 token |
+| N13 | 连接时一次性授权 | 每次工具调用实时鉴权 |
+| N14 | 不可逆操作自动执行 | HITL 确认 + 意图预览 + diff |
+| N15 | 只靠 dashboard 配置预算 | 运行时四层预算强制执行 |
+| N16 | 合并人类和 Agent 审计日志 | 分开记录,标注 Agent 身份 |
+| N17 | 多个 MCP Server 共享沙箱 | 每个 Server 独立隔离上下文 |
+| N18 | 信任上游 Agent 的输出 | 每个 Agent 独立验证输入 |
+| N19 | 未锁定 MCP Server 版本 | 版本锁定 + 代码签名 |
+| N20 | 人类认证流程给 Agent 用 | 无 CAPTCHA/MFA 的程序化认证 |
+
+### 架构 NEVER
+
+| # | NEVER | 正确做法 |
+|---|-------|---------|
+| N21 | 单 Agent 没跑通就上多 Agent | 先证明单 Agent 方案的痛点 |
+| N22 | 把所有数据灌进向量库期望 LLM 自己搞定 | 精选高信号上下文 |
+| N23 | 跳过错误注入测试 | 注入超时/500/畸形响应并断言恢复行为 |
+| N24 | 只做输入输出日志 | Trace 级:含被拒绝的候选工具和推理链 |
+| N25 | 让 LLM 决定何时放弃重试 | 硬编码退出标准:max retries + timeout + circuit breaker |
+
+---
+
+## §8 复合精度公式
+
+> Agent 准确率的数学是残酷的。
+
+```
+端到端成功率 = (单步准确率) ^ 步骤数
+
+| 单步准确率 | 5 步 | 10 步 | 20 步 |
+|-----------|------|-------|-------|
+| 95% | 77% | 60% | 36% |
+| 90% | 59% | 35% | 12% |
+| 85% | 44% | 20% | 4% |
+| 80% | 33% | 11% | 1% |
+```
+
+**含义**:
+- 每一个工具设计决策都在影响那个「单步准确率」
+- 好的工具描述将激活准确率从 ~20% 提升到 ~90%
+- 更少的步骤 = 指数级更高的可靠性 → 组合工具减少链式调用
+
+---
+
+## §9 协议栈速查
+
+```
+┌──────────────────────────────────────────────────────────┐
+│ 发现层 │
+│ llms.txt + AGENTS.md + openapi.json + Agent Card │
+├──────────────────────────────────────────────────────────┤
+│ 工具连接层 (MCP) │
+│ Agent ←→ Tool · JSON-RPC 2.0 · 三原语:工具/资源/提示 │
+├──────────────────────────────────────────────────────────┤
+│ Agent 互操作层 (A2A) │
+│ Agent ←→ Agent · HTTP/SSE/gRPC · Agent Card 发现 │
+├──────────────────────────────────────────────────────────┤
+│ 安全层 │
+│ OAuth 2.1 + 策略引擎 + 沙箱 + 审计 + KYA(Know Your Agent)│
+├──────────────────────────────────────────────────────────┤
+│ 商务层 │
+│ ACP(Stripe+OpenAI) + Agent Pay(Visa/MC) + x402(微支付) │
+└──────────────────────────────────────────────────────────┘
+```
+
+---
+
+## §10 参考来源
+
+### 权威指南
+- [Anthropic — Building Effective Agents](https://www.anthropic.com/research/building-effective-agents)
+- [Anthropic — Writing Tools for Agents](https://www.anthropic.com/engineering/writing-tools-for-agents)
+- [Anthropic — Effective Context Engineering](https://www.anthropic.com/engineering/effective-context-engineering-for-ai-agents)
+- [MCP 规范 (2025-06-18)](https://modelcontextprotocol.io/specification/2025-06-18/server/tools)
+- [OpenAI — Function Calling Guide](https://platform.openai.com/docs/guides/function-calling)
+
+### 设计最佳实践
+- [Phil Schmid — MCP Best Practices](https://www.philschmid.de/mcp-best-practices)
+- [Block — MCP Server Design Playbook](https://engineering.block.xyz/blog/blocks-playbook-for-designing-mcp-servers)
+- [Stefan Buck — AI API Best Practices](https://github.com/stefanbuck/ai-api-best-practices)
+- [Apideck — API Design for Agentic Era](https://www.apideck.com/blog/api-design-principles-agentic-era)
+- [WorkOS — Build Agent-Friendly Products](https://workos.com/blog/build-agent-friendly-products)
+
+### 安全标准
+- [CoSAI — MCP Security Whitepaper](https://github.com/cosai-oasis/ws4-secure-design-agentic-systems/blob/main/model-context-protocol-security.md)
+- [SlowMist — MCP Security Checklist](https://github.com/slowmist/MCP-Security-Checklist)
+- [OWASP — Top 10 for LLM Applications 2025](https://owasp.org/www-project-top-10-for-large-language-model-applications/)
+- [OWASP — Top 10 for Agentic Applications](https://genai.owasp.org/2025/12/09/owasp-top-10-for-agentic-applications/)
+
+### 评估框架
+- [Postman — API Agent Readiness (48 Checks)](https://www.postman.com/ai/ai-ready-apis/)
+- [Google ADK — Evaluation Criteria](https://google.github.io/adk-docs/evaluate/criteria/)
+- [Anthropic — Demystifying Evals for AI Agents](https://www.anthropic.com/engineering/demystifying-evals-for-ai-agents)
+
+### 行业报告
+- [Postman 2025 State of API Report](https://voyager.postman.com/doc/postman-state-of-the-api-report-2025.pdf) — 89% 用 AI, 24% 为 Agent 设计
+- Gartner — 40% 企业应用嵌入 Agent (2026), 90% B2B 采购 Agent 代理 (2028) [付费报告,无公开链接]
+
+---
+
+## 附录 A:本规约与 content-forge 项目设计原则的对应关系
+
+| 本规约原则 | content-forge CLAUDE.md 对应 | 映射 |
+|-----------|---------------------------|------|
+| P1 Schema-First | CLAUDE.md §10.7 Frontmatter-First | frontmatter 是机器可读契约层 |
+| P2 约束 > 能力 | CLAUDE.md §10.7 约束 > 能力 | 70% NEVER + 30% 执行步骤 |
+| P3 最小惊讶 | CLAUDE.md §4.2 frontmatter 统一规范 | 一致字段命名和状态机 |
+| P4 最小权限 | CLAUDE.md §6.1.1 NEVER 规则 | Agent 只读 Vault,不写 |
+| P5 可观测性 | CLAUDE.md §4.3 阶段退出标准 | frontmatter 状态可追踪 |
diff --git a/00-inbox/2026-03-24-agent-friendly-glossary.md b/00-inbox/2026-03-24-agent-friendly-glossary.md
new file mode 100644
index 0000000..56c8460
--- /dev/null
+++ b/00-inbox/2026-03-24-agent-friendly-glossary.md
@@ -0,0 +1,1001 @@
+---
+id: "2026-03-24-agent-friendly-glossary"
+title: "Agent Friendly 概念与名词解释词典"
+slug: "agent-friendly-glossary"
+status: "inbox"
+content_type: "article"
+channels: ["wechat", "x"]
+language: "zh-CN"
+source_urls:
+ - "https://www.anthropic.com/research/building-effective-agents"
+ - "https://www.anthropic.com/engineering/writing-tools-for-agents"
+ - "https://modelcontextprotocol.io/specification/2025-06-18/server/tools"
+ - "https://agentexperience.ax/"
+ - "https://llmstxt.org/"
+ - "https://agents.md/"
+ - "https://a2a-protocol.org"
+ - "https://github.com/shareAI-lab/learn-claude-code"
+assets: []
+cover_image: ""
+template: "article"
+owner: "content-forge"
+created_at: "2026-03-24T00:00:00+08:00"
+updated_at: "2026-03-24T00:00:00+08:00"
+published_at: null
+tags: ["agent-friendly", "glossary", "AX", "MCP", "A2A", "agentic-AI"]
+---
+
+# Agent Friendly 概念与名词解释词典
+
+> 本词典按主题分组,每个词条包含:定义、核心要点、与其他概念的关系、出处。
+
+---
+
+## 一、核心范式
+
+### Agent Friendly(智能体友好)
+
+**定义**:一种系统设计理念——让 AI Agent 能自主发现、理解、调用、验证你的系统,无需人类在旁翻译或适配。
+
+**类比**:如同 "Mobile Friendly" 让网站适配手机,"Agent Friendly" 让数字基础设施适配 AI Agent 作为一等公民消费者。
+
+**核心层面**:
+- Agent-Friendly API:自描述、Schema-first、可预测响应、类型化错误
+- Agent-Friendly Documentation:机器可读文档(llms.txt、Markdown-first)
+- Agent-Friendly Product:程序化认证、即时 onboarding、无 CAPTCHA 墙
+- Agent-Friendly Web:内容协商(同一 URL 按 user-agent 返回 HTML 或 Markdown/JSON)
+
+**关系**:Agent Friendly 是 AX 的实现手段;AX 是 Agent Friendly 的学科化表达。
+
+---
+
+### AX(Agent Experience,智能体体验)
+
+**定义**:Agent Experience 的缩写,由 Netlify CEO Matt Biilmann 于 2025 年初命名。指为 AI Agent 设计产品、API、文档的用户体验学科,与 UX(用户体验)和 DX(开发者体验)平行。
+
+**演进链**:
+```
+UX (User Experience, 1993, Don Norman)
+ → DX (Developer Experience, 2011, Jeremiah Lee Cohick)
+ → AX (Agent Experience, 2025, Matt Biilmann)
+```
+
+**三个核心维度**:
+- **Context**(上下文):Agent 能否理解你的站点/API 做什么?
+- **Access**(访问):Agent 能否通过程序化方式认证和操作?
+- **Navigation**(导航):Agent 能否通过机器可读路径在产品中导航?
+
+**关键洞察**:AX 改善 DX,而非替代 DX。让 API 对 Agent 更友好的改进,同时让人类开发者受益。
+
+**出处**:[agentexperience.ax](https://agentexperience.ax/)、[Matt Biilmann - Introducing AX](https://biilmann.blog/articles/introducing-ax/)
+
+---
+
+### ACI(Agent-Computer Interface,智能体-计算机接口)
+
+**定义**:Anthropic 提出的概念,指 Agent 与外部工具/系统交互的界面设计。类比 HCI(Human-Computer Interface),强调 Agent 的工具接口设计需要与人类界面设计同等的投入和迭代。
+
+**核心原则**:
+- 投入与 HCI 同等精力设计 ACI
+- 从模型视角思考:"仅凭工具名和描述,是否显而易见该如何使用?如果不是,模型也会困惑。"
+- 好的工具定义 = 给一个靠谱但字面理解一切的初级工程师写文档
+- 用 Claude 自身协作改进工具定义,比人工创建效果更好
+
+**关系**:ACI 是 AX 在工具层的具体实现方法论。
+
+**出处**:[Anthropic - Building Effective Agents](https://www.anthropic.com/research/building-effective-agents)
+
+---
+
+### LLMO(Large Language Model Optimization,大语言模型优化)
+
+**定义**:针对 AI 大语言模型(而非搜索引擎)优化内容的实践。目标是让你的内容被 LLM 正确理解、引用和推荐,类似于 SEO 针对 Google 的优化。
+
+**也称为**:GEO(Generative Engine Optimization)、AIO(AI Optimization)、Agent SEO
+
+**关键区别**:
+| 维度 | 传统 SEO | LLMO |
+|------|---------|------|
+| 优化对象 | Google 爬虫 | LLM / AI Agent |
+| 核心手段 | 关键词、反向链接 | 结构化数据 (JSON-LD)、llms.txt |
+| 成功指标 | SERP 排名、CTR | AI Overview 引用率、Agent 调用率 |
+| 内容格式 | HTML | Markdown、JSON Schema |
+
+**数据**:58.5% Google 搜索已零点击;AI Overview 出现时有机 CTR 下降 61%+。
+
+---
+
+## 二、协议与标准
+
+### MCP(Model Context Protocol,模型上下文协议)
+
+**定义**:由 Anthropic 于 2024 年 11 月创建的开放协议,标准化 AI Agent 与工具/数据源的连接方式。2025 年 12 月捐赠给 Linux Foundation AAIF。
+
+**架构**:客户端-服务器模型,基于 JSON-RPC 2.0(受 LSP 启发)。
+
+**三个原语**:
+- **Tools**(工具):模型控制的可调用函数,如 `search_documents`、`create_issue`
+- **Resources**(资源):应用控制的数据源,如文件、数据库记录
+- **Prompts**(提示):用户控制的预定义提示模板
+
+**采纳规模**:10,000+ 已发布 MCP Server;97M+ 月 SDK 下载;Claude、ChatGPT、Cursor、Gemini、VS Code、Copilot 均支持。
+
+**定位**:**垂直连接**——Agent 到 Tool/Data 的标准通道。
+
+**关系**:与 A2A 互补(MCP 管 Agent→Tool,A2A 管 Agent→Agent)。
+
+**出处**:[modelcontextprotocol.io](https://modelcontextprotocol.io/)
+
+---
+
+### A2A(Agent-to-Agent Protocol,智能体间协议)
+
+**定义**:Google 于 2025 年 4 月在 Cloud Next 发布的开放协议,标准化不同 Agent 之间的跨平台通信。2025 年 7 月捐赠给 Linux Foundation,2026 年 1 月达到 RC 1.0。
+
+**架构**:基于 HTTP、SSE、JSON-RPC 的客户端-服务器模型,支持 gRPC(v0.3+)。
+
+**关键概念**:
+- **Agent Card**(智能体名片):JSON 元数据文件,发布在 `/.well-known/agent-card.json`,描述 Agent 的名称、能力和端点
+- **Task**(任务):跨 Agent 的工作单元,有可追踪的 ID 和生命周期
+- 支持多模态交互(包括音视频流)
+
+**定位**:**水平互操作**——Agent 到 Agent 的跨组织通信。
+
+**支持者**:150+ 组织,包括 Salesforce、SAP、PayPal、Atlassian、IBM、Microsoft。
+
+**实际应用**:Tyson Foods 和 Gordon Food Service 用于供应链 Agent 协作。
+
+**出处**:[a2a-protocol.org](https://a2a-protocol.org)
+
+---
+
+### AAIF(Agentic AI Foundation,智能体 AI 基金会)
+
+**定义**:2025 年 12 月在 Linux Foundation 下成立的开放治理组织,旨在统一 Agent 生态标准,防止供应商锁定和碎片化。
+
+**创始成员**:Anthropic、OpenAI、Block(三方联合创立)。
+**白金会员**:AWS、Google、Microsoft、Bloomberg、Cloudflare。
+
+**治理的三个创始项目**:
+- **MCP**(Anthropic 捐赠):Agent→Tool 连接
+- **AGENTS.md**(OpenAI 联合创建):项目级 Agent 指令
+- **goose**(Block 捐赠):开源本地优先 Agent 框架
+
+**类比**:如同 W3C 之于 Web 标准,AAIF 之于 Agent 标准。
+
+**出处**:[Linux Foundation AAIF 公告](https://www.linuxfoundation.org/press/linux-foundation-announces-the-formation-of-the-agentic-ai-foundation)
+
+---
+
+### llms.txt
+
+**定义**:由 Jeremy Howard(Answer.AI 联合创始人)于 2024 年 9 月提出的标准,在网站根目录放置一个 `/llms.txt` 文件,为 LLM 提供优化的站点摘要。被称为"AI 版 robots.txt"。
+
+**格式**:Markdown 文件,包含站点标题(H1)、结构化分区、链接及一句话描述。
+
+**配套文件**:
+- `/llms.txt`:轻量摘要 + 链接索引
+- `/llms-full.txt`:完整文档内容编译为单一 Markdown 文件(Mintlify + Anthropic 联合定义)
+
+**采纳**:600+ 网站,包括 Anthropic、Stripe、Perplexity、Cursor、Zapier、Cloudflare、Hugging Face。
+
+**关键洞察**:
+- AI Agent 访问 `llms-full.txt` 的频率是 `llms.txt` 的 **2 倍以上**
+- Stripe 利用 llms.txt 的 instructions section 主动纠正模型漂移
+- 截至 2025 年 8 月,主要 LLM 爬虫(GPTBot、ClaudeBot)**尚未主动读取** llms.txt;更多被 MCP/RAG 管道消费
+
+**出处**:[llmstxt.org](https://llmstxt.org/)
+
+---
+
+### AGENTS.md
+
+**定义**:为编码 AI Agent 提供项目级指令的开放标准。纯 Markdown 文件,放置在仓库根目录。
+
+**设计哲学**:极致简洁——单文件、纯 Markdown、工具无关、人类优先。
+
+**采纳**:60,000+ 开源仓库;GitHub Copilot、Codex、Gemini CLI、Cursor、Devin、Factory、Jules、VS Code 均支持。
+
+**优先级规则**:离编辑文件最近的 AGENTS.md 优先;用户的显式 prompt 覆盖一切。
+
+**关系**:AGENTS.md 是通用标准;CLAUDE.md 是 Claude Code 专属的项目指令文件(功能类似但仅 Claude 识别)。
+
+**类似物**:
+| 文件 | 适用工具 |
+|------|---------|
+| `AGENTS.md` | 所有支持的 AI 编码工具(通用) |
+| `CLAUDE.md` | Claude Code |
+| `.cursorrules` / `.cursor/rules/*.mdc` | Cursor |
+| `.github/copilot-instructions.md` | GitHub Copilot |
+| `.windsurfrules` | Windsurf |
+
+**出处**:[agents.md](https://agents.md/)
+
+---
+
+### Agent Card(智能体名片)
+
+**定义**:A2A 协议中的标准化 JSON 元数据文件,发布在 `/.well-known/agent-card.json`,描述一个 Agent 的身份、能力、技能和服务端点。
+
+**功能**:让其他 Agent 能够**发现**并**理解**你的 Agent 能做什么,类似于 OpenAPI spec 描述 API 能力。
+
+**字段示例**:名称、描述、能力列表、认证方式、端点 URL。
+
+**意义**:第一个被 IANA 注册的 AI Agent 专属 `.well-known` 条目。
+
+---
+
+### Agent Skills(智能体技能)
+
+**定义**:Anthropic 于 2025 年 12 月提出的标准化可移植程序化知识格式。让 Agent 能够携带和共享结构化的操作知识(步骤、约束、NEVER 规则)。
+
+**结构**:SKILL.md 文件包含——精确步骤、边缘情况处理、NEVER 列表、输入/输出规范。
+
+**设计三原则**(Block):
+1. **Take away from the agent**:一致性关键行为写入脚本/模板/规则,不靠 LLM 推理
+2. **Let agent reason where it adds value**:解释、选择、对话是 Agent 的领地
+3. **Constitutional constraints**:SKILL.md 是契约——精确步骤 + 边缘情况 + NEVER 规则
+
+**出处**:[The New Stack - Agent Skills](https://thenewstack.io/agent-skills-anthropics-next-bid-to-define-ai-standards/)
+
+---
+
+### ACP(Agent Communication Protocol,智能体通信协议)
+
+**定义**:由 Cisco、LangChain、Galileo 联合推动的"Agent 互联网"协议。
+
+**也称为**:AGNTCY 项目的核心协议之一。
+
+**定位**:组织内部 Agent 协调(比 A2A 更偏内部场景)。
+
+**状态**:规范阶段,75+ 公司参与。后期 IBM 的 ACP 实现也合并进入 A2A 生态。
+
+---
+
+### ANP(Agent Naming Protocol / Agent Network Protocol)
+
+**定义**:去中心化的 Agent 注册和发现协议,基于 DID(去中心化标识符)实现点对点 Agent 发现。
+
+**定位**:开放互联网上的 Agent 发现(无中心注册机构)。
+
+**类比**:如同 DNS 之于域名,ANP 之于 Agent 身份。
+
+**状态**:早期规范阶段。
+
+---
+
+### Agentic Commerce Protocol(智能体商务协议)
+
+**定义**:Stripe 与 OpenAI 联合开发的开放规范,让 AI 平台能嵌入商务流程(搜索、选品、结账、支付)。
+
+**关键机制**:Shared Payment Tokens (SPTs)——仅需一行代码变更即可实现 Agent 支付。
+
+**许可**:Apache 2.0 开源。
+
+**出处**:[Stripe Blog](https://stripe.com/blog/developing-an-open-standard-for-agentic-commerce)
+
+---
+
+### WebMCP
+
+**定义**:Google 于 2026 年 2 月提出的协议,让 AI Agent 在浏览器中与网站进行结构化交互(而非模拟点击)。
+
+**状态**:Chrome Canary 预览阶段。
+
+---
+
+### A2UI(Agent-to-User Interface,智能体到用户界面协议)
+
+**定义**:Google 开源(Apache 2.0)的协议,让 Agent 能跨信任边界发送富 UI 组件。Agent 发送声明式组件描述,客户端用原生 widget 渲染。
+
+**解决问题**:Agent 需要产生可视化输出,但直接执行渲染代码有安全风险。
+
+**出处**:[a2ui.org](https://a2ui.org/)
+
+---
+
+### x402
+
+**定义**:复活 HTTP 402 "Payment Required" 状态码的协议,用于 Agent 到 API 的实时微支付。
+
+**场景**:Agent 调用付费 API 时,API 返回 402 + 支付指令,Agent 自动完成支付后重试请求。
+
+---
+
+## 三、工具与 Schema 概念
+
+### Tool(工具)
+
+**定义(MCP 语境)**:MCP 服务器暴露的可调用函数,由模型控制调用。每个 Tool 有 name、description、inputSchema,可选 outputSchema 和 annotations。
+
+**设计核心**:一个 Tool = 一个用户目标 = 一个风险级别。
+
+**与 Function Calling 的关系**:Tool 是 MCP 协议内的术语;Function Calling 是 OpenAI/Anthropic API 层的术语。本质相同——让 LLM 调用外部函数。
+
+---
+
+### Function Calling(函数调用)
+
+**定义**:LLM API 提供的能力,让模型在对话中识别何时需要调用外部函数,并生成结构化的函数调用参数。
+
+**工作流**:
+```
+用户提问 → LLM 判断需要调用函数 → 生成 {name, arguments} JSON
+→ 客户端执行函数 → 结果返回 LLM → LLM 整合回答
+```
+
+**提供商**:OpenAI(function_call / tool_choice)、Anthropic(tool_use)、Google(function_calling)。
+
+---
+
+### inputSchema / outputSchema
+
+**定义(MCP)**:Tool 的输入和输出数据结构定义,遵循 JSON Schema 规范。
+
+**inputSchema 规则**:
+- 必须是 `"type": "object"` 的 JSON Schema
+- 扁平化(顶层原语,禁止 3 层+嵌套)
+- 所有字段列入 required(可选字段用 `["string", "null"]`)
+- `additionalProperties: false`
+- 有限值域用 enum
+
+**outputSchema 规则**(MCP spec 2025-06-18+):
+- 返回 `structuredContent`(类型化 JSON)+ `TextContent`(向后兼容文本)
+- 只返回高信号字段,非全量数据
+
+---
+
+### Tool Annotations(工具注解)
+
+**定义(MCP spec 2025-03-26+)**:附加在 Tool 上的元数据提示,帮助客户端做 UI/安全决策。
+
+| 注解 | 含义 | 默认值 |
+|------|------|--------|
+| `readOnlyHint` | 不修改环境(读操作) | false |
+| `destructiveHint` | 可能破坏数据(删除操作) | true |
+| `idempotentHint` | 重复调用结果相同 | false |
+| `openWorldHint` | 与外部实体交互 | true |
+
+**关键警告**:注解是**提示**(hints),不是安全保证。客户端不得仅基于注解做安全关键决策。
+
+---
+
+### OpenAPI / Swagger
+
+**定义**:描述 RESTful API 的标准规范(当前版本 3.1)。定义端点、参数、请求/响应 Schema、认证方式等。
+
+**与 Agent 的关系**:OpenAPI spec 是 Agent 理解 API 的基础"地图"。Agent 通过解析 OpenAPI spec 来选择端点、构造请求、解析响应。
+
+**Agent 要求**:
+- 每个操作必须有 `operationId`(Critical)
+- 每个操作必须有 `summary` + `description`
+- 参数必须有 type + description + format
+- 错误响应必须有 Schema 定义
+
+---
+
+### JSON Schema
+
+**定义**:描述 JSON 数据结构的标准(当前 Draft 2020-12)。定义字段类型、约束、必填性、枚举值等。
+
+**在 Agent 生态中的角色**:
+- MCP Tool 的 inputSchema/outputSchema 基于 JSON Schema
+- OpenAI Function Calling 的参数定义基于 JSON Schema
+- Agent 通过 JSON Schema 验证输入/输出,减少幻觉
+
+---
+
+### JSON-LD(JSON for Linking Data)
+
+**定义**:在 JSON 中嵌入语义化链接数据的 W3C 标准。用 `@context` 和 `@type` 将 JSON 数据连接到 Schema.org 等词汇表。
+
+**与 Agent 的关系**:
+- Google(2025 年 5 月)官方推荐 JSON-LD 作为 AI 优化内容的格式
+- SearchVIU 测试确认 ChatGPT、Claude、Perplexity、Gemini 均处理 JSON-LD
+- Agent 通过 JSON-LD 理解实体关系(作者、发布者、日期、权威性信号)
+
+**常用 Schema 类型**:FAQPage、HowTo、Product、Review、Article、Organization。
+
+---
+
+### Schema.org
+
+**定义**:Google、Microsoft、Yahoo、Yandex 联合创建的结构化数据词汇表。为网页内容提供标准化的语义标注。
+
+**与 Agent 的关系**:Schema.org 标记让 Agent 能理解网页中实体的类型和关系,而非仅解析文本。
+
+---
+
+### Arazzo
+
+**定义**:OpenAPI Initiative 推出的标准,定义 API 操作的序列(workflow)。不同于 OpenAPI 描述单个端点,Arazzo 描述多个端点如何组合成完整工作流。
+
+**与 Agent 的关系**:Agent 执行多步任务时,Arazzo 提供"路线图"——先调什么、再调什么、用什么条件分支。
+
+---
+
+### HATEOAS(Hypermedia as the Engine of Application State)
+
+**定义**:REST 架构约束,要求 API 响应中包含导航链接,告诉客户端下一步可以做什么。
+
+**与 Agent 的关系**:HATEOAS 式响应减少 Agent 幻觉——不需要猜测下一步该调什么接口,响应本身就告诉它。
+
+**示例**:
+```json
+{
+ "order_id": "12345",
+ "status": "pending",
+ "_links": {
+ "cancel": "/orders/12345/cancel",
+ "pay": "/orders/12345/pay"
+ }
+}
+```
+
+---
+
+## 四、安全概念
+
+### Least Privilege(最小权限)
+
+**定义**:只授予完成任务所需的最小权限集合。安全基础原则。
+
+**在 Agent 语境中**:Agent 只获得当前任务需要的工具、数据和操作权限。
+
+---
+
+### Least Agency(最小代理权)
+
+**定义**:比 Least Privilege 更进一步的约束。不仅限制"能访问什么",还限制"能做什么动作"和"做多少次"。
+
+**为什么需要**:一个拥有 `email:send` 权限的 Agent 技术上可以给通讯录每个人发邮件。Least Privilege 允许这么做(有权限),Least Agency 不允许(超出代理范围)。
+
+**实现**:通过集中化策略引擎(OPA/Cedar/Oso)在每次特权操作时检查。
+
+**出处**:OWASP LLM06 (Excessive Agency)
+
+---
+
+### KYA(Know Your Agent,了解你的智能体)
+
+**定义**:类比金融领域的 KYC(Know Your Customer),KYA 是识别和验证 AI Agent 身份的框架。
+
+**三个问题**:
+1. **Who is this agent?**(身份)
+2. **Who controls it?**(权限方)
+3. **Can it be trusted?**(信誉)
+
+**实现**:密码学签名、数字证书、Agent 身份注册。
+
+**行业动态**:78% 金融机构预计 AI 购物 Agent 将带来欺诈风险上升。
+
+**出处**:[Sumsub](https://sumsub.com/blog/know-your-agent/)、[AgentFacts KYA Standard](https://agentfacts.org/kya/)
+
+---
+
+### Prompt Injection(提示注入)
+
+**定义**:通过精心构造的输入文本,覆盖或绕过 LLM 的系统指令,使其执行非预期行为。Agent 安全的头号威胁。
+
+**两种形式**:
+- **直接注入**:用户输入中包含 "ignore previous instructions"
+- **间接注入**:Agent 检索的外部数据(网页、邮件、文档)中嵌入恶意指令
+
+**防御原则**:Prompt 不是安全边界。危险能力通过策略/allowlist 移除,而非通过 prompt 禁止。
+
+---
+
+### Tool Poisoning(工具投毒)
+
+**定义**:攻击者通过操纵 MCP Tool 的元数据(name、description、parameter schema)或输出内容,引导 LLM 执行恶意操作。
+
+**攻击方式**:
+- 在工具描述中嵌入隐藏 prompt 指令
+- 在工具返回值中注入影响后续推理的内容
+- 修改工具定义后重新部署(rug pull)
+
+**防御**:MCP 网关层扫描所有工具元数据;版本锁定 + 代码签名。
+
+---
+
+### Schema Poisoning(Schema 投毒)
+
+**定义**:操纵工具的 JSON Schema 字段(如描述、默认值、示例)来影响 LLM 的工具选择和参数生成。
+
+---
+
+### Cascading Hallucination(级联幻觉)
+
+**定义**:多 Agent 系统中,一个 Agent 的幻觉输出被下游 Agent 当作事实处理,在链路中逐级放大。
+
+**示例**:Agent A 幻觉出一个不存在的 SKU → Agent B 查询价格 → Agent C 检查库存 → Agent D 生成订单——全部基于虚假数据。
+
+**防御**:每个 Agent 独立验证输入;不信任上游 Agent 的输出。
+
+---
+
+### Memory Poisoning(记忆投毒)
+
+**定义**:污染 Agent 的共享记忆/上下文存储,影响所有后续决策。
+
+**数据**:Galileo AI 研究显示,初始记忆投毒后 4 小时内 87% 的下游决策受到影响。
+
+**防御**:共享上下文使用不可变存储 + 密码学验证。
+
+---
+
+### Slopsquatting
+
+**定义**:利用 LLM 幻觉出不存在的软件包名这一特性,在 npm/PyPI 等包管理平台注册这些虚假包名,嵌入恶意代码。
+
+**数据**:一项 2.23M 样本研究发现 LLM 幻觉包名的比率高达 19.7%。
+
+**防御**:所有依赖锁定版本 + hash 校验。
+
+---
+
+### MPMA(MCP Preference Manipulation Attack,MCP 偏好操纵攻击)
+
+**定义**:攻击者改变 Agent 排序和选择工具的方式,使其优先使用恶意工具或绕过安全工具。
+
+**防御**:建立工具选择行为基线,监控偏离。
+
+---
+
+### Circuit Breaker(熔断器)
+
+**定义**:借鉴电路熔断的软件设计模式。当连续失败达到阈值时自动"断开"(停止调用),周期性探测恢复。
+
+**在 Agent 中的应用**:防止 Agent 在工具失败时陷入无限重试循环。N 次连续失败后自动熔断,避免资源浪费。
+
+---
+
+### HITL(Human-in-the-Loop,人在环路中)
+
+**定义**:在 Agent 自动执行流程中保留人类审批/确认节点。对于不可逆或高影响操作是强制要求。
+
+**MCP 规范原文**:"For trust & safety and security, there SHOULD always be a human in the loop with the ability to deny tool invocations."——业界共识:将 SHOULD 视为 MUST。
+
+---
+
+### Dry-run(干跑/预演)
+
+**定义**:执行操作的所有步骤但不产生实际副作用。用于让 Agent(或人类)在提交前预览操作结果。
+
+**实现**:API 提供 `?dry_run=true` 参数;返回"如果真正执行会发生什么"的结果。
+
+---
+
+### Intent Preview(意图预览)
+
+**定义**:在 Agent 执行多步或破坏性操作前,以人类可读的方式展示计划执行的所有步骤。
+
+**包含**:
+- 每一步的动作摘要
+- 每步的可逆性标记
+- 人类可编辑/取消的能力
+- 永不自动消失
+
+---
+
+### Token Exchange(令牌交换,RFC 8693)
+
+**定义**:OAuth 2.0 扩展,允许将一个高权限 token 交换为一个范围更小、时间更短的 token。
+
+**在 Agent 中的应用**:人类用户的全权限 token 不直接传给 Agent,而是通过 Token Exchange 签发仅限特定任务、特定时间的受限 token。
+
+---
+
+## 五、评估框架
+
+### Postman 8 Pillars / 48 Checks(Postman 八支柱 / 48 项检查)
+
+**定义**:Postman 开发的 API Agent 就绪度评估框架。对任何 OpenAPI spec 执行 48 项检查,产生 0-100 分。
+
+**八个支柱**:
+1. **META**(元数据):operationId、summary、description
+2. **ERR**(错误):4xx/5xx 定义、错误 Schema、429 定义
+3. **INTRO**(内省):参数类型、required 标记、枚举、示例
+4. **NAME**(命名):一致大小写、RESTful 路径、HTTP 语义
+5. **PRED**(可预测性):响应 Schema、分页、日期格式
+6. **DOC**(文档):认证、频率限制、API 概述
+7. **PERF**(性能):频率限制头、缓存头、批量端点
+8. **DISC**(发现):OpenAPI 版本、Server URL、多环境
+
+**通过阈值**:≥ 70 分且 8 项 Critical 全部通过。
+
+**出处**:[Postman AI-Ready APIs](https://www.postman.com/ai/ai-ready-apis/)
+
+---
+
+### SlowMist MCP Security Checklist(慢雾 MCP 安全清单)
+
+**定义**:慢雾安全团队开发的 MCP 安全检查清单,涵盖 ~90+ 检查项。
+
+**六大类**:MCP Server 安全、MCP Client/Host 安全、LLM 适配安全、多 MCP 场景、加密特定、自评工具。
+
+**优先级**:High(必须实现)/ Medium(强烈推荐)/ Low(推荐)。
+
+**出处**:[github.com/slowmist/MCP-Security-Checklist](https://github.com/slowmist/MCP-Security-Checklist)
+
+---
+
+### CoSAI MCP Security Whitepaper(CoSAI MCP 安全白皮书)
+
+**定义**:Coalition for Secure AI(安全 AI 联盟)于 2026 年 1 月发布的 MCP 安全白皮书。识别 12 类威胁、~40 个具体威胁,提出 8 项优先建议。
+
+**八项优先建议**:端到端 Agent 身份追踪、最小权限、输入消毒(严格 allowlist)、所有 LLM/MCP 输出视为不可信、沙箱隔离 MCP Server、传输保护(mTLS)、敏感操作 HITL、供应链控制(代码签名 + 依赖锁定)。
+
+**出处**:[CoSAI GitHub](https://github.com/cosai-oasis/ws4-secure-design-agentic-systems/blob/main/model-context-protocol-security.md)
+
+---
+
+### OWASP Top 10 for LLM Applications
+
+**定义**:OWASP 针对 LLM 应用的十大安全风险清单(2025 版)。
+
+**Agent 相关重点**:
+- **LLM01 Prompt Injection**:提示注入
+- **LLM06 Excessive Agency**:过度代理权(三个根因:过度功能、过度权限、过度自治)
+- **LLM10 Unbounded Consumption**:无限制资源消耗
+
+**扩展**:2025 年 12 月另发布了 **OWASP Top 10 for Agentic Applications**(专门针对 Agent 系统)。
+
+---
+
+### Google Cloud 三支柱评估
+
+**定义**:Google Cloud 提出的 Agent 系统评估方法论。
+
+| 支柱 | 测试类型 | 测什么 |
+|------|---------|--------|
+| 最终输出 | 集成测试 | 任务完成率、正确性、事实基础 |
+| 决策过程 | 单元测试 | 工具选择准确率、推理逻辑 |
+| 韧性 | 压力测试 | 优雅降级、错误恢复、对抗鲁棒性 |
+
+**评分**:A / B / C / F
+
+---
+
+### 复合精度公式
+
+**定义**:多步 Agent 工作流的端到端成功率计算公式。
+
+```
+端到端成功率 = (单步准确率) ^ 步骤数
+```
+
+**含义**:95% 单步准确率的 Agent 在 10 步工作流中只有 60% 成功率。每一个工具设计决策都在影响单步准确率;更少的步骤 = 指数级更高的可靠性。
+
+---
+
+## 六、设计概念
+
+### Schema-First(Schema 优先)
+
+**定义**:先定义数据契约(Schema),再实现业务逻辑。Schema 同时充当文档、验证规则和测试基准。
+
+**在 Agent 语境中**:Agent 通过 Schema 理解如何调用你的系统。没有 Schema = Agent 只能猜测。
+
+**关系**:与 content-forge 的 "Frontmatter-First" 原则同构。
+
+---
+
+### Content Negotiation(内容协商)
+
+**定义**:HTTP 机制,客户端通过 `Accept` header 告知服务器期望的响应格式,服务器返回对应格式。
+
+**Agent Friendly 应用**:
+- 浏览器请求 → 返回 HTML(人类可读)
+- Agent 请求 → 返回 Markdown 或 JSON(机器可读)
+- 通过 User-Agent 或 Accept header 区分
+
+---
+
+### Idempotency(幂等性)
+
+**定义**:同一操作执行多次,结果与执行一次相同。
+
+**为什么对 Agent 关键**:Agent 在不确定时会重试。网络可能中断。没有幂等性,重试会导致重复状态变更(重复创建订单、重复发送邮件)。
+
+**示例**:
+- 幂等:`DELETE /file/123`(删除已删除的文件是无操作)
+- 非幂等:`POST /send-email`(每次调用都发一封新邮件)
+
+**实现**:客户端生成 Idempotency Key,服务端去重。
+
+---
+
+### Progressive Autonomy(渐进式自治)
+
+**定义**:Agent 从最低权限/最多人工确认开始,随着用户建立信任,逐步增加自动化程度。
+
+**原则**:每个动作默认可逆;高风险操作永远需要确认。
+
+---
+
+### Graceful Degradation(优雅降级)
+
+**定义**:当工具/服务不可用或 Agent 遇到错误时,系统有序地降低功能级别(而非崩溃或幻觉)。
+
+**Agent 应用**:
+- 预算耗尽 → 降级到更便宜的模型
+- 工具超时 → 返回缓存结果或明确告知失败
+- 外部服务不可用 → 建议替代操作路径
+
+---
+
+### Outcome-Oriented Tool(面向结果的工具)
+
+**定义**:工具设计围绕用户最终目标,而非 API 端点的 1:1 映射。
+
+**示例**:
+- 面向端点:`get_customer_by_email` → `list_customer_orders` → `get_order_status`(3 次调用)
+- 面向结果:`track_order(email)`(1 次调用,内部完成 3 步)
+
+**Block 经验**:Linear MCP 从 30+ 工具重建三次,最终缩减到 2 个。
+
+---
+
+### Task-Oriented vs Entity-Oriented
+
+**定义**:两种工具设计哲学。
+
+- **Entity-Oriented**(实体导向):CRUD 操作映射到数据实体——`create_user`、`get_user`、`update_user`、`delete_user`
+- **Task-Oriented**(任务导向):映射到用户实际想完成的任务——`onboard_new_employee`、`schedule_meeting`、`track_order`
+
+**Agent 偏好**:Task-Oriented 减少链式调用步骤,提高端到端成功率。
+
+---
+
+## 七、基础设施概念
+
+### MCP Server
+
+**定义**:实现 MCP 协议的服务端程序,暴露 Tools、Resources、Prompts 供 Agent 使用。
+
+**类比**:如同 Web Server 服务网页,MCP Server 服务 Agent 工具。
+
+**运行模式**:
+- **stdio**:通过标准输入/输出通信(本地进程)
+- **HTTP + SSE**:通过 HTTP 通信(远程/云端)
+
+---
+
+### MCP Client / MCP Host
+
+**定义**:
+- **MCP Client**:Agent 侧的 MCP 协议实现,负责连接 MCP Server、调用工具
+- **MCP Host**:运行 MCP Client 的应用(如 Claude Desktop、VS Code、Cursor)
+
+**关系**:Host 包含 Client;Client 连接 Server。
+
+---
+
+### Agent Gateway(智能体网关)
+
+**定义**:Agent 与外部工具/API 之间的中间层,集中处理认证、授权、流量控制、安全扫描、审计。
+
+**功能**:
+- MCP 元数据扫描(检测工具投毒)
+- 请求级鉴权(策略引擎集成)
+- 流量限制和预算执行
+- 审计日志集中收集
+
+**类比**:如同 API Gateway 之于微服务,Agent Gateway 之于 Agent 工具调用。
+
+---
+
+### Sandbox / MicroVM
+
+**定义**:隔离执行环境,限制 Agent/代码的系统访问能力。
+
+**隔离级别**(从弱到强):
+1. 进程隔离(最弱)
+2. 容器(Docker/gVisor)——不足以作为安全边界
+3. **MicroVM**(Firecracker/Kata)——推荐
+4. 完全虚拟化
+
+**Agent 规则**:每个 MCP Server 应运行在独立隔离上下文中。合并多个 Server(如 Git + Filesystem)会创建"有毒组合"。
+
+---
+
+### Policy Engine(策略引擎)
+
+**定义**:外部化的授权决策系统,将权限规则从应用代码中解耦。
+
+**主流工具**:
+- **OPA**(Open Policy Agent):通用策略引擎,Rego 语言
+- **Cedar**(AWS):类似 IAM 策略的声明式语言
+- **Oso**:嵌入式授权引擎
+
+**在 Agent 中的角色**:每次工具调用时,策略引擎实时判断"这个 Agent 在这个上下文下能否执行这个操作"。
+
+---
+
+## 八、Harness Engineering 概念
+
+### Harness(驾驶舱 / 运行环境)
+
+**定义**:Agent(模型)运行所需的一切外围代码和基础设施。模型是司机,Harness 是车辆。
+
+**公式**:
+```
+Harness = Tools + Knowledge + Observation + Action Interfaces + Permissions
+```
+
+**核心原则**:模型决定,Harness 执行。模型推理,Harness 提供上下文。好的 Harness 代码是"几乎无聊的"——简单循环、清晰工具定义、干净的上下文管理。
+
+**来源**:[shareAI-lab/learn-claude-code](https://github.com/shareAI-lab/learn-claude-code)
+
+---
+
+### Harness Engineering(驾驶舱工程)
+
+**定义**:构建 Agent 运行环境的工程学科。与 Agent Friendly(被调用方视角)互补——Harness Engineering 是构建方视角。
+
+**核心工作**:
+- 实现工具(给 Agent 手)
+- 策划知识(给 Agent 专业领域)
+- 管理上下文(给 Agent 清晰记忆)
+- 控制权限(给 Agent 边界)
+- 采集 Task-Process 数据(给未来模型训练信号)
+
+**关键心智转换**:"我不是在写智能。我是在构建智能栖息的世界。"
+
+---
+
+### Agent Loop(智能体循环)
+
+**定义**:Agent 运行的核心循环——调用 LLM、检查是否需要工具调用、执行工具、将结果返回 LLM、重复。
+
+**最小实现**:~30 行 Python,`while True` + `stop_reason != "tool_use"` 作为退出条件。
+
+**设计不变量**:所有后续机制(规划、压缩、团队)叠加在循环**周围**,循环本身从不改变。
+
+**Agent-Friendly 关键**:模型决定何时停止,代码永不强制决策。
+
+---
+
+### Tool Dispatch Map(工具调度映射)
+
+**定义**:`{tool_name: handler_function}` 的字典/映射,Harness 通过它将 LLM 的工具调用请求路由到正确的处理函数。
+
+**意义**:添加新工具 = 添加一个 handler + Schema,核心循环无需改变。
+
+**关系**:Dispatch Map 是构建方的概念;对应被调用方的 MCP Tool 定义和 OpenAPI operationId。
+
+---
+
+### Context Compact / Compression(上下文压缩)
+
+**定义**:管理 Agent 上下文窗口的三层策略,防止长会话中记忆过载。
+
+**三层**:
+1. **微压缩**(每轮):替换旧 tool_result 为占位符
+2. **自动压缩**(>50K token):完整记录存磁盘,LLM 生成摘要
+3. **手动压缩**:模型主动调用 compact 工具
+
+**关键**:信息不丢失,只是从活跃上下文移到磁盘。模型可以随时触发手动压缩。
+
+**独有领域**:这是 Harness Engineering 独有概念,Agent Friendly 规约不涉及(规约关注被调用方接口,不管 Agent 内部记忆)。
+
+---
+
+### Subagent(子智能体)
+
+**定义**:从主 Agent 分叉出的一次性子 Agent,获得空白 messages 上下文,执行完后只返回摘要文本。所有中间消息丢弃。
+
+**与 Agent Teams 的区别**:Subagent 是一次性的(执行完即消失);Team Agent 是持久化的(跨多轮工作)。
+
+**关键约束**:子 Agent 不能再生子 Agent(禁止递归)。
+
+**对应规约概念**:§4 安全 / Sandbox 隔离——上下文隔离是一种轻量级沙箱。
+
+---
+
+### Task DAG(任务有向无环图)
+
+**定义**:磁盘持久化的任务依赖图。每个任务是一个 JSON 文件,包含 `blockedBy`/`blocks` 依赖关系。完成一个任务自动解锁其依赖者。
+
+**回答三个问题**:什么能做?什么被阻塞?什么已完成?
+
+**意义**:任务图是所有后续机制(团队、自治)的协调骨架。跨会话持久,不受上下文压缩影响。
+
+---
+
+### Agent Teams(智能体团队)
+
+**定义**:多个持久化 Agent 通过 JSONL 邮箱通信,各自运行完整 Agent Loop。每个 Agent 有名字、角色和状态生命周期(WORKING↔IDLE↔SHUTDOWN)。
+
+**与 A2A 的关系**:Team mailbox 是 A2A 协议的简化版——同一进程内的 Agent 间通信,而非跨组织通信。
+
+---
+
+### Autonomous Task Claiming(自治任务领取)
+
+**定义**:Agent 在 IDLE 状态时自动轮询任务板(5 秒间隔),领取未被认领的、未被阻塞的任务。无需领导者分配。
+
+**关键机制**:60 秒空闲无任务 → 自动关闭。身份重注入——上下文压缩后如果消息 ≤ 3 条,自动重新注入 Agent 身份信息。
+
+**对应规约概念**:Agent Card 发现 + 去中心化自组织。
+
+---
+
+### Worktree Isolation(工作树隔离)
+
+**定义**:每个任务获得独立的 Git worktree(工作树),通过 Task ID 绑定。两个平面分离:控制面(`.tasks/`,做什么)和执行面(`.worktrees/`,在哪做)。
+
+**对应规约概念**:§4 Sandbox / MicroVM 的轻量级版本——目录级别的隔离而非进程/VM 级别。
+
+---
+
+### Nag Reminder(催促提醒)
+
+**定义**:Harness 在 Agent 连续 3 轮未更新 TodoWrite 时自动注入的提醒消息,督促模型回到计划轨道。
+
+**设计思想**:不干预决策,只提醒纪律。约束聚焦,非限制。
+
+---
+
+### Identity Re-injection(身份重注入)
+
+**定义**:上下文压缩后,如果 Agent 的消息数量 ≤ 3 条,自动重新注入 Agent 身份信息块(名字、角色、职责)。
+
+**解决问题**:压缩后 Agent 可能"忘记自己是谁"。身份重注入确保 Agent 保持自我意识。
+
+---
+
+### Task-Process Data(任务-过程数据)
+
+**定义**:Agent 在 Harness 中执行任务时产生的感知-推理-行动序列数据。这些数据是训练下一代 Agent 模型的原始材料。
+
+**意义**:Harness 不仅服务当前 Agent,还为未来 Agent 改进提供训练信号。
+
+---
+
+## 九、关键人物
+
+| 人物 | 角色 | 贡献 |
+|------|------|------|
+| **Matt Biilmann** | Netlify CEO | 命名 AX (Agent Experience),推动 AX 作为设计学科 |
+| **Jeremy Howard** | Answer.AI 联合创始人 | 提出 llms.txt 规范 |
+| **janwilmake** | 开发者 | 创建 Agent-Friendly Web 原则仓库 |
+| **Stefan Buck** | 开发者 | 创建 AI API Best Practices 仓库 |
+| **Phil Schmid** | Hugging Face → 独立 | MCP 最佳实践 6 条规则 |
+| **Simon Willison** | Django 联合创始人 | MCP 安全(Prompt Injection)深度分析 |
+| **Dario Amodei / Anthropic** | Anthropic CEO | 推动 MCP 标准 + AAIF 成立 |
+
+---
+
+## 九、行业组织
+
+| 组织 | 定位 | 成员 |
+|------|------|------|
+| **AAIF** | Agent 标准治理(Linux Foundation) | Anthropic, OpenAI, Block, AWS, Google, Microsoft |
+| **CoSAI** | 安全 AI 联盟 | 多方联合,发布 MCP 安全白皮书 |
+| **OWASP** | Web/应用安全标准 | 社区驱动,发布 LLM/Agentic Top 10 |
+| **AGNTCY** | "Agent 互联网"生态 | 75+ 公司,Linux Foundation |
+| **OpenAPI Initiative** | API 描述标准 | Google, Microsoft, IBM 等 |
+
+---
+
+## 十、市场数据速查
+
+| 指标 | 数值 | 来源 |
+|------|------|------|
+| 开发者日常使用 AI 工具 | 89% | Postman 2025 |
+| 为 Agent 设计 API 的比例 | 24% | Postman 2025 |
+| 自动化流量超过人类流量 | 2024 年首次 | Cloudflare |
+| RAG Agent 流量增长 | 49% (2025 Q1) | Apideck |
+| AI 引荐流量转化率提升 | +31% | Adobe |
+| AI 引荐单次访问收入提升 | +254% | Adobe |
+| AI 零售支出 | $20.9B (2026) | eMarketer |
+| Agentic AI 市场 | $7B → $236B (2025→2034) | 多方 |
+| B2B 采购 Agent 代理比例 | 90% by 2028 | Gartner |
+| B2B Agent 交易规模 | $15T by 2028 | Gartner |
+| 企业应用嵌入 Agent | 40% by 2026 | Gartner |
+| 组织有 Agent 在生产 | 11% (2025) | Deloitte |
+| Agent 项目失败率预测 | 40%+ by 2027 | Gartner |
+| Google 搜索零点击比例 | 58.5% | SEM 研究 |
+| AI Overview 出现时 CTR 下降 | 61%+ | 行业测试 |
diff --git a/00-inbox/2026-03-24-harness-engineering-analysis.md b/00-inbox/2026-03-24-harness-engineering-analysis.md
new file mode 100644
index 0000000..7372434
--- /dev/null
+++ b/00-inbox/2026-03-24-harness-engineering-analysis.md
@@ -0,0 +1,359 @@
+---
+id: "2026-03-24-harness-engineering-analysis"
+title: "Harness Engineering 分析 — learn-claude-code 仓库逆向解读"
+slug: "harness-engineering-analysis"
+status: "inbox"
+content_type: "article"
+channels: ["wechat", "x"]
+language: "zh-CN"
+source_urls:
+ - "https://github.com/shareAI-lab/learn-claude-code"
+assets: []
+cover_image: ""
+template: "article"
+owner: "content-forge"
+created_at: "2026-03-24T00:00:00+08:00"
+updated_at: "2026-03-24T00:00:00+08:00"
+published_at: null
+tags: ["harness-engineering", "agent-friendly", "claude-code", "agent-loop", "MCP"]
+---
+
+# Harness Engineering 分析
+
+> 来源仓库:[shareAI-lab/learn-claude-code](https://github.com/shareAI-lab/learn-claude-code)
+> 定位:将 Claude Code 架构逆向工程为 12 课的 Harness Engineering 教程
+
+---
+
+## 一、核心论点
+
+### 1.1 Agent = Model,不是代码
+
+```
+Agent 的历史证据链:
+
+2013 DeepMind DQN → 一个神经网络学会玩 49 款 Atari 游戏
+2019 OpenAI Five → 五个网络打败 Dota 2 世界冠军 OG
+2019 AlphaStar → 星际争霸 II 登顶 Grandmaster(前 0.15%)
+2019 腾讯绝悟 → 王者荣耀 5v5 击败 KPL 职业选手
+2024 LLM Coding Agents → 读代码库、写实现、调试、团队协作
+
+共同真相:Agent 从来不是代码,Agent 始终是模型。
+```
+
+### 1.2 Harness = 驾驶舱,不是司机
+
+```
+Harness = Tools + Knowledge + Observation + Action + Permissions
+
+模型决定。Harness 执行。
+模型推理。Harness 提供上下文。
+模型是司机。Harness 是车辆。
+```
+
+### 1.3 对 "Prompt Plumbing" 的批判
+
+仓库明确批判了一整个行业:拖拽工作流构建器、无代码 "AI Agent" 平台、Prompt 链编排库——它们不是 Agent,是"带有幻想的 shell 脚本"。
+
+> "You cannot engineer your way to agency. Agency is learned, not programmed."
+
+---
+
+## 二、12 课架构
+
+### 2.1 全景层级图
+
+```
+Phase 1: 循环 Phase 2: 规划与知识
+┌───────────────────┐ ┌───────────────────┐
+│ s01 Agent Loop │ │ s03 TodoWrite │
+│ 30 行 Python │ │ 模型自管计划 │
+│ = 完整 Agent │ │ 一次一个 in_prog. │
+│ │ │ │
+│ s02 Tool Use │ │ s04 Subagent │
+│ 调度映射表 │ │ 上下文隔离 │
+│ 路径沙箱 │ │ 子任务清洁上下文 │
+│ │ │ │
+│ │ │ s05 Skills │
+│ │ │ 两层按需加载 │
+│ │ │ │
+│ │ │ s06 Compact │
+│ │ │ 三层上下文压缩 │
+└───────────────────┘ └───────────────────┘
+
+Phase 3: 持久化 Phase 4: 团队
+┌───────────────────┐ ┌───────────────────┐
+│ s07 Task System │ │ s09 Agent Teams │
+│ 任务 DAG 磁盘持久 │ │ 持久化队友 + 邮箱 │
+│ 依赖自动解锁 │ │ │
+│ │ │ s10 Protocols │
+│ s08 Background │ │ 结构化握手协议 │
+│ 后台线程异步执行 │ │ shutdown/plan │
+│ 通知队列注入 │ │ │
+│ │ │ s11 Autonomous │
+│ │ │ 自组织领取任务 │
+│ │ │ 60s 空闲自动退出 │
+│ │ │ │
+│ │ │ s12 Worktree │
+│ │ │ Git worktree 隔离│
+│ │ │ 控制面 + 执行面 │
+└───────────────────┘ └───────────────────┘
+```
+
+### 2.2 每课核心机制
+
+| 课 | Harness 层 | 核心机制 | 代码量 |
+|---|-----------|---------|--------|
+| s01 | Loop | `while True` + `stop_reason != "tool_use"` 退出 | 3.6KB |
+| s02 | Tool dispatch | `{tool_name: handler}` 调度映射 + `safe_path()` 沙箱 | ~5KB |
+| s03 | Planning | TodoManager 状态机(pending→in_progress→completed),一次一个 | ~7KB |
+| s04 | Context isolation | 子 Agent 清空 messages,只返回摘要文本 | ~9KB |
+| s05 | Knowledge | 两层注入:系统提示含索引(~100 token/skill)+ load_skill 工具返回全文 | ~11KB |
+| s06 | Compression | 三层压缩:每轮微压 → 50K token 自动压 → 手动压缩工具 | ~14KB |
+| s07 | Persistence | JSON 文件 DAG,blockedBy/blocks 依赖,完成自动解锁 | ~17KB |
+| s08 | Async | 守护线程 + 通知队列,每次 LLM 调用前排空队列 | ~19KB |
+| s09 | Teams | 持久化队友 + JSONL 邮箱,WORKING↔IDLE↔SHUTDOWN 生命周期 | ~21KB |
+| s10 | Protocols | request_id FSM(pending→approved/rejected),一个状态机两种协议 | ~23KB |
+| s11 | Autonomy | IDLE 轮询(5s 间隔)+ 任务板自主领取 + 身份重注入 | ~25KB |
+| s12 | Isolation | Git worktree 绑定 Task ID,控制面(.tasks/) + 执行面(.worktrees/) | 25.9KB |
+
+### 2.3 设计不变量
+
+每一课都叠加在 s01 的循环之上,**循环本身从不改变**:
+
+```python
+# s01: 永不改变的核心循环
+while True:
+ response = client.messages.create(
+ model=model,
+ system=system_prompt,
+ messages=messages,
+ tools=tools
+ )
+
+ # 模型决定何时停止
+ if response.stop_reason != "tool_use":
+ break
+
+ # Harness 执行工具调用
+ for block in response.content:
+ if block.type == "tool_use":
+ result = dispatch[block.name](block.input)
+ messages.append(tool_result(block.id, result))
+```
+
+---
+
+## 三、Harness Engineering 七原则
+
+### P1: 循环永不改变(The Loop Never Changes)
+
+每一课在循环**周围**添加机制,而非**修改**循环。Agent(模型)拥有循环;Harness 拥有机制。
+
+### P2: 工具是 Agent 的手(Tools Are Hands)
+
+原子、可组合、描述清晰。调度映射模式(`{name: handler}`)意味着添加能力无需改变核心。
+
+### P3: 知识按需加载,不预加载(Knowledge On-Demand)
+
+两层 Skill 加载——系统提示中的廉价索引(~100 token)+ tool_result 中的昂贵内容(~2000 token)——是标准模式。
+
+### P4: 上下文是珍贵资源(Context Is Precious)
+
+三种策略保护上下文:子 Agent 隔离(s04)、三层压缩(s06)、磁盘持久化(s07)。
+
+### P5: 约束聚焦,非限制(Constraints Focus, Not Limit)
+
+"一次一个 in_progress"(s03)、"只读子 Agent"(s04)、"路径沙箱"(s02)——都是让模型性能**更好**的护栏。
+
+### P6: 持久化跨越会话(Persistence Outlives Sessions)
+
+磁盘任务(s07)、团队配置 JSON(s09)、事件 JSONL(s12)——Harness 维护模型上下文窗口无法持有的状态。
+
+### P7: 信任模型(Trust the Model)
+
+最强主题。不预设工作流。不构建决策树。给工具和知识,让模型推理。
+
+> "You are not writing intelligence. You are building the world intelligence inhabits."
+
+---
+
+## 四、附带 Skills
+
+### agent-builder
+
+核心哲学:"模型已经知道如何做 Agent。你的工作是让开。"
+
+三要素:Capabilities(能做什么)+ Knowledge(知道什么)+ Context(发生了什么)
+
+渐进复杂度:从 3-5 个能力起步。大多数 Agent 不需要超过 Level 2(规划)。
+
+反模式清单:过度工程、工具太多、刚性工作流、预加载知识、微管理。
+
+### mcp-builder
+
+MCP Server 构建模板(Python + TypeScript)。最佳实践:清晰工具描述、输入验证、错误处理、默认异步、安全、幂等。
+
+### code-review
+
+五维审查:安全(Critical)→ 正确性 → 性能 → 可维护性 → 测试。结构化输出:摘要 + 关键问题 + 改进 + 亮点 + 结论。
+
+### pdf
+
+PDF 读取(pdftotext/PyMuPDF)、创建(pandoc/reportlab)、合并/拆分。实用工具检测 + 大文件逐页处理。
+
+---
+
+## 五、与 Agent Friendly 开发规约的对照
+
+### 5.1 同一枚硬币的两面
+
+```
+┌──────────────────────────────────────────────────────────┐
+│ │
+│ Agent Friendly 规约 Harness Engineering │
+│ (被调用方视角) (构建方视角) │
+│ │
+│ "怎么让 Agent 用好 "怎么给 Agent 建好 │
+│ 你的系统" 运行环境" │
+│ │
+│ ┌──────────┐ ┌──────────┐ │
+│ │ 你的 API │◀── MCP ──────────▶│ Agent │ │
+│ │ 你的工具 │ A2A │ Harness │ │
+│ │ 你的文档 │ │ 循环+工具 │ │
+│ └──────────┘ └──────────┘ │
+│ │
+│ 规约约束: Harness 约束: │
+│ - Schema-First - 循环永不改变 │
+│ - 工具设计 7 子规约 - 工具原子可组合 │
+│ - 10 条安全约束 - 路径沙箱 │
+│ - 25 条 NEVER - 信任模型 │
+│ │
+└──────────────────────────────────────────────────────────┘
+```
+
+### 5.2 概念映射表
+
+| Harness Engineering 概念 | Agent Friendly 规约对应 | 关系 |
+|---|---|---|
+| **Agent Loop**(s01)| — | Harness 独有概念,规约不涉及 Agent 内部循环 |
+| **Tool dispatch map**(s02)| §2 Tool Design 7 子规约 | 构建方的调度 = 被调用方的 Schema |
+| **safe_path() 沙箱**(s02)| §4.1 Least Agency | 同一约束的两侧实现 |
+| **TodoWrite 一次一个**(s03)| P2 约束>能力 | 约束聚焦的典型实例 |
+| **Subagent 上下文隔离**(s04)| §4 安全 / Sandbox | 隔离是双方共识 |
+| **Skill 两层加载**(s05)| §5 文档发现层 (llms.txt) | 索引层+内容层 = 同一模式 |
+| **Context Compact**(s06)| — | Harness 独有(管理 Agent 内部记忆) |
+| **Task DAG 磁盘持久**(s07)| Agent Skills 标准 | 持久化知识的不同形式 |
+| **Background tasks**(s08)| — | Harness 独有(异步执行管理) |
+| **Team mailbox**(s09)| A2A 协议 | 邮箱 = 简化版 A2A |
+| **Shutdown/Plan protocols**(s10)| HITL + Agent 协商 | 结构化握手 = Agent 间礼仪 |
+| **Autonomous task claiming**(s11)| Agent Card 发现 | 自组织 = 去中心化发现 |
+| **Worktree isolation**(s12)| §4 Sandbox / MicroVM | 目录隔离 ≈ 轻量级沙箱 |
+| **"Trust the model"**(全局)| P2 约束>能力 | 同一哲学的不同表达 |
+| **mcp-builder skill** | §2 + §3 全部 | MCP Server 构建 = 规约的执行 |
+
+### 5.3 互补关系全景
+
+```
+ Agent Friendly 完整画面
+ ────────────────────────
+
+ 被调用方(你的系统) 构建方(Agent Harness)
+ ════════════════ ═══════════════════
+
+ §5 发现层 s05 Skill 两层加载
+ llms.txt / Agent Card 系统提示索引 + 按需加载
+ │ │
+ │ Agent 找到你 │ Agent 获取知识
+ ▼ ▼
+ §2 工具设计 s02 Tool dispatch
+ Schema / 描述 / 注解 调度映射 + 沙箱
+ │ │
+ │ Agent 理解你 │ Agent 执行工具
+ ▼ ▼
+ §3 API 设计 s01 Agent Loop
+ 10 条 AX 原则 while True 核心循环
+ │ │
+ │ Agent 调用你 │ Agent 决策
+ ▼ ▼
+ §4 安全规约 s04/s12 隔离
+ 10 条安全约束 子 Agent + Worktree
+ │ │
+ │ Agent 安全运行 │ Agent 安全执行
+ ▼ ▼
+ §6 评估规约 agent-builder skill
+ Postman 48 / 10 项评分 渐进复杂度 + 反模式
+ │ │
+ └───────────┬───────────────┘
+ │
+ ▼
+ ┌────────────────┐
+ │ Agent 成功完成 │
+ │ 用户的任务 │
+ └────────────────┘
+```
+
+### 5.4 核心差异
+
+| 维度 | Agent Friendly 规约 | Harness Engineering |
+|------|-------------------|-------------------|
+| **视角** | 被调用方(API/工具提供者) | 构建方(Agent 运行环境) |
+| **关注点** | 接口契约、发现性、安全 | 循环、上下文、持久化 |
+| **不涉及** | Agent 内部循环和记忆管理 | API/工具的 Schema 设计 |
+| **核心动词** | "暴露"、"描述"、"约束" | "加载"、"隔离"、"持久化" |
+| **评估方式** | 量化评分(48 Checks) | 12 课渐进验证 |
+| **共识** | 约束 > 能力;信任模型;Schema-First | 约束聚焦;信任模型;循环不变 |
+
+---
+
+## 六、整合洞察
+
+### 6.1 Agent Friendly 的完整定义(整合后)
+
+```
+Agent Friendly = 被调用方友好 + 构建方友好
+
+被调用方友好(规约):
+ 让 Agent 能发现、理解、调用、验证你的系统
+
+构建方友好(Harness):
+ 让 Agent 有清晰的感知、精准的行动、丰富的知识、安全的边界
+
+两者的交汇点:
+ 工具设计 ←→ 工具调度
+ 文档发现 ←→ 知识加载
+ 安全约束 ←→ 沙箱隔离
+ Agent 协议 ←→ 团队通信
+```
+
+### 6.2 为什么两个视角都需要
+
+```
+只有规约(被调用方):
+ → Agent 能找到你的 API,但不知道怎么高效使用
+ → 好的菜单,但没有好的厨房
+
+只有 Harness(构建方):
+ → Agent 有好的运行环境,但外部工具难以对接
+ → 好的厨房,但食材(API)质量参差不齐
+
+两者结合:
+ → Agent 能发现好的工具 + 在好的环境中高效使用它们
+ → 好的厨房 + 好的食材 = 好的菜
+```
+
+### 6.3 共享的哲学根基
+
+两个视角共享三条根本信念:
+
+**信念 1:模型比你想的更聪明**
+- 规约:不要猜测 Agent 的意图,给它好的 Schema 它会自己搞定
+- Harness:不要预设工作流,给它工具和知识让它推理
+
+**信念 2:约束是最好的礼物**
+- 规约:NEVER 清单比功能列表更重要(§10.7 约束>能力)
+- Harness:一次一个 in_progress 让模型更专注(s03)
+
+**信念 3:好设计是透明的**
+- 规约:好的工具描述让 Agent 像读文档一样理解接口
+- Harness:好的循环设计让你几乎忘记它的存在