用途:为 Gamma API 集成搭建本地开发循环,便于在构建自动化脚本、本地测试 API 调用时进行离线开发与验证。
前提条件:需先完成 gamma-install-auth 设置;Node.js 18+ 并配合 tsx 执行 TypeScript;在 .env 中配置 GAMMA_API_KEY。
主要能力:项目结构包含可复用的 Gamma API 客户端(src/client.ts)、生成流程(src/generate.ts)与轮询助手(src/poll.ts),以及离线 mock 服务器与集成测试。客户端封装提供 generate、poll、listThemes、listFolders 方法,使用请求头 X-API-KEY。轮询助手 waitForCompletion 支持间隔与超时参数(默认 5000ms 间隔、120000ms 超时),在状态为 completed 时返回,failed 时报错,超时则抛出轮询超时错误。mock 服务器在 9876 端口模拟生成、轮询(第 3 次轮询后完成)、主题与文件夹接口,供离线开发使用。
使用方式:通过 npm 脚本运行,如 dev:mock 启动 mock 服务器,dev:generate 执行生成,test 运行测试,test:integration 指向本地 mock 执行集成测试;离线测试时设置 GAMMA_BASE=http://localhost:9876/v1.0;实时测试需提供 GAMMA_API_KEY 后运行 tsx src/generate.ts。
适用场景:本地开发与自动化脚本编写、离线 API 行为验证、集成测试。
限制与注意事项:绝不提交私密演示内容、查看者数据或密钥;本地验证回执应包含 fixture 版本、schema 结果、所有者与脱敏失败引用。常见问题包括缺少 GAMMA_API_KEY、mock 端口或路径错误导致 404、mock tick 阈值过高导致轮询超时、Node.js 低于 18 时 fetch 未定义。Gamma 为 REST API,无官方 SDK。后续可参考 gamma-sdk-patterns 获取可复用 API 封装模式。