关于 spectrum
Spectrum 是面向使用 Photon 消息 SDK `spectrum-ts` 的开发者的技能,提供针对特定版本的开发指引。内容涵盖 iMessage、WhatsApp Business、Terminal 和自定义提供方的消息处理,以及能力支持与回退行为。
主要功能
- 01`spectrum-ts` 12.2.0 开发指引
- 02统一的 `app.messages` 处理模式
- 03提供方专属实现参考
- 04能力、回退与错误说明
- 05自定义提供方编写指引
适用场景
- 01构建多提供方消息处理器
- 02使用提供方方法前核实支持情况
- 03实现自定义 Spectrum 提供方
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ photon-hq/ skills --skill spectrum安装后在 Claude Code 中输入/spectrum确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
best-practices.mdcapability-semantics.mdcontent.mdcustom-events-and-lifecycle.mdcustom-platforms.mdgetting-started.mdmessages.mdplatform-narrowing.mdreactions-and-replies.mdspaces-and-users.mdproviders/imessage.mdterminal.mdwhatsapp-business.md详细介绍
Spectrum
Spectrum 是 Photon's 的统一消息 SDK。针对一个 app.messages 流编写处理程序逻辑,并通过 iMessage、WhatsApp Business、Terminal 或自定义提供方发送消息。本技能适用于 spectrum-ts 12.2.0;代码示例使用 TypeScript。
契约检查
编写提供方专属代码前,先确定提供方并加载其主题文件。只有当每个导入、方法、内容形状、平台 ID、回退方案和抛出的错误都属于 spectrum-ts 12.2.0 及所选提供方的契约时,示例才算完整。通用方法的存在并不能证明每个提供方都实现了该方法;当支持情况会影响正确性时,请阅读 capability-semantics.md。
本技能的组织方式
每个主题都位于此目录中的独立文件内。请阅读与用户问题相关的文件。
| 文件 | 适用场景 |
|---|---|
getting-started.md | 安装、Spectrum() 应用实例、多平台配置、四个核心原语。 |
messages.md | 接收消息、Message 形状、按 content.type 缩窄类型、过滤自己的消息。 |
content.md | 用于发送消息的内容构建器:text、markdown、attachment、voice、contact、richlink、app、poll、group、custom。 |
spaces-and-users.md | Space 接口、正在输入指示器、responding、创建私信和群组。 |
reactions-and-replies.md | message.react(...)、线程式 message.reply(...),以及两者的适用场景。 |
capability-semantics.md | 原生支持与回退、警告并跳过、接受但不执行,以及抛出错误。 |
platform-narrowing.md | 从通用 Spectrum 原语中恢复平台专属类型。 |
providers/imessage.md | iMessage——独立的云端/本地提供方、共享/专用云线路模式、按电话号码路由、消息效果、点按回应。 |
providers/terminal.md | Terminal TUI 提供方——聊天侧边栏、回应、回复、附件、斜杠命令。 |
providers/whatsapp-business.md | WhatsApp Business Cloud API。仅支持一对一。 |
custom-events-and-lifecycle.md | 按提供方划分的事件流(app.typing 等)、app.stop()、信号处理。 |
custom-platforms.md | 使用 definePlatform 编写自己的提供方——完整字段参考。 |
best-practices.md | Photon 内部使用的生产架构模式——防抖流水线、进行中请求取消、向前传递、幂等重试、按资源存储记忆、作业失败审计日志。 |
另请参阅
评论
支持 Markdown