用途:构建事件驱动 API 架构,通过出站 Webhook、Server-Sent Events(SSE)和消息代理集成,在 API 变更后发射事件,并管理订阅、投递与审计。
主要能力:识别应发射事件的 API 变更操作(POST、PUT、PATCH、DELETE),事件类型按 resource.action 命名(如 order.created、user.updated);定义带版本的事件模式,包含 eventId、eventType、version、timestamp、source、data;实现事件发射服务,采用事务性发件箱模式避免崩溃丢事件;提供 Webhook 订阅管理 API(POST /webhooks、GET /webhooks、DELETE /webhooks/:id),含 URL 校验、事件类型过滤与签名密钥;Webhook 投递使用 HMAC-SHA256 签名,支持指数退避重试(1min、5min、30min、2hr、24hr),连续失败后自动停用订阅;提供 SSE 端点 GET /events/stream,支持 Last-Event-ID 重连与漏发事件重放;为耗尽重试的事件建立死信队列,支持告警与手动重放;编写覆盖事件发射、Webhook 签名验证、SSE 重连与死信队列的集成测试。
使用方式:技能会读取代码定位事件产生点,生成事件发射器、模式定义、Webhook 投递与签名、SSE 流、订阅管理 API、死信队列及测试等文件,完整实现指南见 ${CLAUDE_SKILL_DIR}/references/implementation.md。
适用场景:订单生命周期事件(order.created、order.payment_received、order.shipped、order.delivered)驱动仓储、邮件、分析等下游服务;浏览器通过 SSE 接收实时通知并自动重连;事务性发件箱配合 Kafka 实现至少一次投递。
限制与前置条件:需要消息代理(Redis Pub/Sub、RabbitMQ、Kafka 或 AWS SNS/SQS)、持久化存储(PostgreSQL、MongoDB)、带重试队列的 Webhook 投递设施、事件模式注册表以及支持 SSE 的 Web 框架。需注意崩溃丢事件、投递失败、事件乱序、SSE 连接内存泄漏与模式版本不匹配等错误,处理方式见 ${CLAUDE_SKILL_DIR}/references/errors.md。具体收费、价格与平台支持暂未提供。