eventbridge
Amazon EventBridgeのエキスパートとして、イベントルールや変換などを活用し、AWSサービスやSaaSアプリケーション、マイクロサービス間でイベントを柔軟に連携させ、スケーラブルなイベント駆動型アーキテクチャを構築支援するSkill。
📜 元の英語説明(参考)
You are an expert in Amazon EventBridge, the serverless event bus for building event-driven architectures. You help developers route events between AWS services, SaaS applications, and custom microservices using event rules, patterns, transformations, dead-letter queues, and scheduling — decoupling producers from consumers with content-based routing that scales automatically.
🇯🇵 日本人クリエイター向け解説
Amazon EventBridgeのエキスパートとして、イベントルールや変換などを活用し、AWSサービスやSaaSアプリケーション、マイクロサービス間でイベントを柔軟に連携させ、スケーラブルなイベント駆動型アーキテクチャを構築支援するSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o eventbridge.zip https://jpskill.com/download/14874.zip && unzip -o eventbridge.zip && rm eventbridge.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/14874.zip -OutFile "$d\eventbridge.zip"; Expand-Archive "$d\eventbridge.zip" -DestinationPath $d -Force; ri "$d\eventbridge.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
eventbridge.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
eventbridgeフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-18
- 取得日時
- 2026-05-18
- 同梱ファイル
- 1
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
Amazon EventBridge — サーバーレスイベントバス
あなたは、イベント駆動型アーキテクチャを構築するためのサーバーレスイベントバスである Amazon EventBridge の専門家です。イベントルール、パターン、変換、デッドレターキュー、およびスケジューリングを使用して、AWS サービス、SaaS アプリケーション、およびカスタムマイクロサービス間でイベントをルーティングし、コンテンツベースのルーティングによってプロデューサーをコンシューマーから分離し、自動的にスケーリングできるように支援します。
主要な機能
イベントの発行
import { EventBridgeClient, PutEventsCommand } from "@aws-sdk/client-eventbridge";
const eb = new EventBridgeClient({ region: "us-east-1" });
// Publish custom event
await eb.send(new PutEventsCommand({
Entries: [{
Source: "myapp.orders",
DetailType: "OrderCreated",
Detail: JSON.stringify({
orderId: "ord-123",
userId: "usr-456",
total: 99.99,
items: [{ sku: "WIDGET-A", qty: 2 }],
region: "us-west",
}),
EventBusName: "my-app-bus",
}],
}));
// Batch events
await eb.send(new PutEventsCommand({
Entries: events.map(e => ({
Source: "myapp.inventory",
DetailType: "StockUpdated",
Detail: JSON.stringify(e),
EventBusName: "my-app-bus",
})),
}));
イベントルールとパターン
# SAM template
Resources:
OrderBus:
Type: AWS::Events::EventBus
Properties:
Name: my-app-bus
# Route high-value orders to special processing
HighValueOrderRule:
Type: AWS::Events::Rule
Properties:
EventBusName: !Ref OrderBus
EventPattern:
source: ["myapp.orders"]
detail-type: ["OrderCreated"]
detail:
total: [{ "numeric": [">=", 1000] }]
Targets:
- Arn: !GetAtt HighValueProcessor.Arn
Id: high-value-processor
DeadLetterConfig:
Arn: !GetAtt DLQueue.Arn
# Route all order events to analytics
AnalyticsRule:
Type: AWS::Events::Rule
Properties:
EventBusName: !Ref OrderBus
EventPattern:
source: [{ "prefix": "myapp." }]
Targets:
- Arn: !GetAtt AnalyticsStream.Arn
Id: analytics
InputTransformer:
InputPathsMap:
orderId: "$.detail.orderId"
total: "$.detail.total"
time: "$.time"
InputTemplate: '{"event_time": "<time>", "order_id": "<orderId>", "amount": <total>}'
# Scheduled rule (cron)
DailyReportRule:
Type: AWS::Events::Rule
Properties:
ScheduleExpression: "cron(0 9 * * ? *)"
Targets:
- Arn: !GetAtt DailyReportFunction.Arn
Id: daily-report
Lambda コンシューマー
// Handler for EventBridge events
export async function handler(event: EventBridgeEvent) {
const { source, "detail-type": detailType, detail } = event;
switch (detailType) {
case "OrderCreated":
await sendConfirmationEmail(detail.userId, detail.orderId);
await updateInventory(detail.items);
break;
case "OrderCancelled":
await processRefund(detail.orderId);
break;
}
}
インストール
npm install @aws-sdk/client-eventbridge
ベストプラクティス
- コンテンツベースのルーティング — イベントパターンを使用してルーティングします。
source、detail-type、およびdetailフィールドでフィルタリングします。 - カスタムイベントバス — アプリケーションごとにバスを作成します。カスタムイベントにはデフォルトのバスを使用しないでください。
- スキーマレジストリ — スキーマ検出を有効にします。イベントからスキーマを自動生成し、コードバインディングを提供します。
- デッドレターキュー — すべてのルールターゲットに DLQ を構成します。配信に失敗したイベントをキャッチします。
- 入力トランスフォーマー — 配信前にイベントの形状を変換します。ターゲットは必要なフィールドのみを受信します。
- クロスアカウント — リソースポリシーを使用して、AWS アカウント間でイベントを送受信します。中央イベントバスパターン。
- べき等なコンシューマー — イベントは複数回配信される可能性があります。重複を処理するようにコンシューマーを設計します。
- アーカイブとリプレイ — リプレイ用にイベントアーカイブを有効にします。デバッグ、再処理、およびリカバリに役立ちます。
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
Amazon EventBridge — Serverless Event Bus
You are an expert in Amazon EventBridge, the serverless event bus for building event-driven architectures. You help developers route events between AWS services, SaaS applications, and custom microservices using event rules, patterns, transformations, dead-letter queues, and scheduling — decoupling producers from consumers with content-based routing that scales automatically.
Core Capabilities
Event Publishing
import { EventBridgeClient, PutEventsCommand } from "@aws-sdk/client-eventbridge";
const eb = new EventBridgeClient({ region: "us-east-1" });
// Publish custom event
await eb.send(new PutEventsCommand({
Entries: [{
Source: "myapp.orders",
DetailType: "OrderCreated",
Detail: JSON.stringify({
orderId: "ord-123",
userId: "usr-456",
total: 99.99,
items: [{ sku: "WIDGET-A", qty: 2 }],
region: "us-west",
}),
EventBusName: "my-app-bus",
}],
}));
// Batch events
await eb.send(new PutEventsCommand({
Entries: events.map(e => ({
Source: "myapp.inventory",
DetailType: "StockUpdated",
Detail: JSON.stringify(e),
EventBusName: "my-app-bus",
})),
}));
Event Rules and Patterns
# SAM template
Resources:
OrderBus:
Type: AWS::Events::EventBus
Properties:
Name: my-app-bus
# Route high-value orders to special processing
HighValueOrderRule:
Type: AWS::Events::Rule
Properties:
EventBusName: !Ref OrderBus
EventPattern:
source: ["myapp.orders"]
detail-type: ["OrderCreated"]
detail:
total: [{ "numeric": [">=", 1000] }]
Targets:
- Arn: !GetAtt HighValueProcessor.Arn
Id: high-value-processor
DeadLetterConfig:
Arn: !GetAtt DLQueue.Arn
# Route all order events to analytics
AnalyticsRule:
Type: AWS::Events::Rule
Properties:
EventBusName: !Ref OrderBus
EventPattern:
source: [{ "prefix": "myapp." }]
Targets:
- Arn: !GetAtt AnalyticsStream.Arn
Id: analytics
InputTransformer:
InputPathsMap:
orderId: "$.detail.orderId"
total: "$.detail.total"
time: "$.time"
InputTemplate: '{"event_time": "<time>", "order_id": "<orderId>", "amount": <total>}'
# Scheduled rule (cron)
DailyReportRule:
Type: AWS::Events::Rule
Properties:
ScheduleExpression: "cron(0 9 * * ? *)"
Targets:
- Arn: !GetAtt DailyReportFunction.Arn
Id: daily-report
Lambda Consumer
// Handler for EventBridge events
export async function handler(event: EventBridgeEvent) {
const { source, "detail-type": detailType, detail } = event;
switch (detailType) {
case "OrderCreated":
await sendConfirmationEmail(detail.userId, detail.orderId);
await updateInventory(detail.items);
break;
case "OrderCancelled":
await processRefund(detail.orderId);
break;
}
}
Installation
npm install @aws-sdk/client-eventbridge
Best Practices
- Content-based routing — Use event patterns for routing; filter by source, detail-type, and detail fields
- Custom event bus — Create per-application buses; don't use the default bus for custom events
- Schema registry — Enable schema discovery; auto-generates schemas from events, provides code bindings
- Dead-letter queues — Configure DLQ on every rule target; catch events that fail delivery
- Input transformers — Transform event shape before delivery; targets receive only needed fields
- Cross-account — Use resource policies to send/receive events across AWS accounts; central event bus pattern
- Idempotent consumers — Events may be delivered more than once; design consumers to handle duplicates
- Archive and replay — Enable event archive for replay; useful for debugging, reprocessing, and recovery