状态:Preview(示例索引)。 本页只把已有文档中的可执行代码称为示例;在可复制仓库、版本锁定和自动化验证就绪前,不把任何条目称为官方 Starter。
目标与适用场景
本页面向希望从最小代码开始的外部开发者。你可以按交付形态选择 Node headless、React Web 嵌入或 HARP HTTP 应用路径,并在复制前确认其成熟度和边界。
当前示例
| 示例路径 | 状态 | 环境 | 使用能力 | 当前交付物 |
|---|---|---|---|---|
| Node Headless | Preview | Node.js 20+、可访问的 Gateway | @fellow.work/client、Thread、Run、SSE | 快速开始中的可复制代码 |
| React Embed | Preview | React、Integration App、后端 token exchange | @fellow.work/client/react、短期 Token | React App Kit中的 Widget 示例 |
| 自定义 React UI | Preview,接口可能变化 | React | useFellowConversation 或 Headless Client | API 入口说明;按已安装包类型检查具体签名 |
| HARP HTTP App | 部分落地 | 支持 HARP HTTP Runtime 子集的 Fellow Host | harp.json、HTTP Runtime ABI | HARP中的最小包 |
| Host Adapter | Experimental | 自定义宿主 | 自有 adapter、显式能力检测与 Consent | 设计路径,不是稳定 Starter |
| Mobile App | Experimental | 自选移动端技术栈 | 公开 Interaction 契约、自有 adapter | 当前没有稳定 Mobile App Kit Starter |
| 跨端 App Manifest | Proposed | — | 目标应用描述模型 | 当前没有可执行 Starter |
示例一:Node Headless
前置条件
- Node.js 20 或更高版本;
- 可访问的 Fellow Gateway;
- 仅存放在服务端环境变量中的 Integration App API Key。
步骤
- 安装
@fellow.work/client。 - 使用
createClient创建 Client。 - 创建 Thread,在该 Thread 中发起 Run。
- 使用异步迭代消费事件,直到 Run 终态。
- 验证异常会被捕获,API Key 不进入浏览器 bundle 或日志。
完整可复制代码见 快速开始。该示例验证 Interaction 链路,不包含 React UI、Host 能力或 Console 管理 API。
示例二:React Embed
前置条件
- 已在 Console 创建 Integration App;
- 生产域名已加入
allowed_origins; - 你的后端能够安全保存
fkey_…并交换短期 Token。
步骤
- 后端调用 Client SDK 的
createAccessToken。 - 只把
access_token和所需 API 地址返回浏览器。 - 前端从
@fellow.work/client/react导入FellowChatWidget或FellowChatLite。 - 用短期 Token 挂载组件。
- 检查 token exchange、CORS、事件流和刷新后的用户隔离。
具体代码与检查项见 React App Kit和嵌入指南。
示例三:HARP HTTP 应用
当前 Fellow Host 只部分实现 HARP HTTP Runtime。可执行路径是创建含 harp.json 的应用目录,让进程读取 HOST、PORT 和 APP_DATA_DIR,并提供匿名健康检查。
在目标 Host 上使用前,必须单独确认安装、启动、数据保留和权限强制行为。validate、logs、start.platforms、非 HTTP Runtime 与完整网络隔离不能按已稳定能力处理。
官方应用案例与 Starter 的区别
Fellow Desktop、Web、Mobile 属于 Applications 产品线。它们用于 dogfood 公开 SDK、验证端到端产品形态,并可作为设计参考;它们不是 Developer Platform,也不会因为是官方产品就自动成为第三方 Starter。
只有同时满足以下条件的资产才应称为 Starter:
- 外部开发者可取得完整源码或模板;
- 标明 SDK、协议和运行环境版本;
- 有可重复的安装步骤与 smoke test;
- 不依赖第三方不可获得的私有接口。
本页目前不宣称存在满足上述条件的官方 Starter 仓库。
边界
- 示例代码不扩大 Client SDK 的职责范围;它仍只覆盖 Interaction。
- 浏览器不得直接持有
fkey_…。 - Host Adapter、Mobile App Kit 与 App Manifest 尚未稳定,示意设计不能当作已发布 API。
- HARP 目标规范中的字段和 Host API 不等于当前 Fellow Host 全部支持。