第 01 章 引言

1.1 文档目的

本规范定义 Telepathy Protocol(TP) 的技术契约:消息格式、交互流程、状态机、安全要求与一致性级别。它是蓝图(docs/{lang}/blueprint/)所描绘协议愿景的可实施版本——蓝图回答「为什么需要 TP」,本规范回答「如何正确实现 TP」。

1.2 适用范围

1.2.1 本规范覆盖

  • Fay 与 Fay 之间通过 TP 进行通信的全部消息格式
  • 共享语境(SharedContext)的生命周期、资源挂载、访问控制与同步
  • 目标(Goal)的协商、执行、子目标 DAG 与咨询模式
  • 身份辨识(DID)、人类原型授权(FP 引用)与端到端加密
  • 协议协商与跨协议传输(A2A / MCP / REST / Prompt)的映射规则
  • 错误处理与三级一致性合规要求

1.2.2 本规范不覆盖

主题在何处定义
Fay 内部架构、记忆图谱实现实现自由
自然人到 iFay 的身份绑定FP(Faying Protocol)
人 ↔ Fay 的自然语言交互ICP(Interactive Conversation Protocol)
Fay 对硬件/客户端的接管CAP(Control Authority Protocol)
硬件/OS 向 Fay 推送的环境数据DTP(Data Tunnel Protocol)
Fay 技能发现SSP(Skill Sharing Protocol)

TP 在协议消息中引用这些姊妹协议的产物(如 FP 授权引用),但不规定它们的内部细节。

1.3 读者对象

  • 协议实现者:构建 TP SDK、桥接器、运行时的工程师
  • Fay 开发者:基于 TP 实现 iFay 或 coFay 业务能力的工程师
  • 集成方:将既有 A2A/MCP Agent 接入 TP 生态的工程师
  • 审计与合规人员:评估 TP 部署是否满足合规级别要求的角色

1.4 文档结构

章内容必读对象
01 引言范围、术语、版本约定所有
02 合规性RFC 2119 关键字、三级一致性级别所有
03 架构概览三层模型与跨切关注点所有
04 身份辨识层DID、FayProfile、人类原型授权实现者、集成方
05 认知分享层SharedContext、资源、ACL、同步实现者
06 目标协商层Goal 状态机、子目标 DAG、咨询实现者、Fay 开发者
07 隐私与安全加密、选择性披露、凭证、审计实现者、合规
08 协议协商通信级别、ProtocolContract 协商实现者、集成方
09 传输绑定TP over A2A / MCP / REST / Prompt集成方
10 错误处理错误码体系、可恢复性分类实现者
11 数据模型链接 schema 三件套实现者
12 术语表规范化术语定义所有

附录:

  • 完整的端到端会话示例
  • 测试一致性套件指引
  • 与 A2A / MCP 的并存策略

1.5 文档惯例

1.5.1 规范性关键字

本规范使用 RFC 2119 / RFC 8174 定义的关键字:MUST、MUST NOT、SHOULD、SHOULD NOT、MAY。详见 §02.1。

1.5.2 代码与示例

  • JSON 示例:使用 JSON Schema Draft 2020-12 验证;字段命名采用 snake_case。
  • TypeScript 类型:与 schema/{version}/schema.ts 中的定义一一对应。
  • Mermaid 时序图:用于描述消息序列;箭头方向 = 消息发送方向。
  • MUST / SHOULD / MAY 在示例和图表中出现时为规范性约束,非斜体的同形词为普通叙述。

1.5.3 标识符与字段命名

类型规范示例
Fay ID全局唯一字符串,URI 安全字符集fay:medical-clinic-shanghai-007
消息 IDUUID v7(时序可排序)01902c4f-1a2b-7000-8000-000000000001
关联 IDUUID v4 或 v7同上
时间戳ISO 8601,UTC,毫秒精度2026-05-27T08:30:00.000Z
持续时间ISO 8601 durationPT15M(15 分钟)
字段名snake_casehost_authorization、mounted_resources

1.5.4 版本标注

  • 协议版本(tp_version):遵循语义化版本 SemVer 2.0.0。
  • 规范文档版本:以发布日期标识(YYYY-MM-DD),与 schema/{date}/ 同步。
  • draft 状态的规范允许不兼容变更;正式版本目录(如 2025-10-25/)一经发布即冻结。

1.6 与蓝图的关系

蓝图章规范章关系
第 1 章 为什么需要 TP—设计动机背景,规范不复述
第 2 章 TP 的核心定位§03 架构概览蓝图给视角,规范给结构
第 3 章 三大独特能力§05、§07、§08蓝图给概念,规范给契约
第 4 章 应用场景附录 端到端示例蓝图给故事,规范给消息
第 5 章 生态定位§09 传输绑定蓝图给关系,规范给映射
第 6 章 设计原则§02 合规性的根据原则 → 规范化要求
第 7 章 交付物与路线图—项目治理,本规范不涵盖

1.7 与 Schema 的关系

本规范的所有数据结构均在 schema/{version}/ 中给出三种等价表达:

文件用途
schema.jsonJSON Schema Draft 2020-12,机器可校验
schema.tsTypeScript 类型定义,IDE 友好
schema.mdx人类可读文档,字段说明

三件套必须保持同步。任何字段添加、删除、类型变更都必须同时更新三个文件,并在 schema/CHANGELOG.md 中记录。

本规范文本(docs/{lang}/specification/)与 schema 之间的关系是:

  • 规范定义行为(流程、状态机、约束、错误恢复)
  • Schema 定义形状(字段、类型、必填性)
  • 当二者出现冲突时,Schema 是数据契约的事实标准;规范行文必须修正以与 Schema 对齐。

1.8 反馈与贡献

本规范处于 draft 状态,社区反馈通过以下渠道收集:

  • GitHub Issues:协议设计讨论、bug 报告
  • GitHub Discussions:开放性问题、用例提议
  • RFC 流程:重大变更(详见 docs/{lang}/community/rfc-process.md,待发布)

draft 阶段的目标是将规范打磨到 2025-10-25 正式版本。届时规范进入冻结状态,后续变更通过新的日期版本目录管理。