スキルOfficialdevelopment
🔔idmp-notification
- プラグイン
- idmp-plugin
- ソース
- GitHub で見る ↗
説明
IDMP通知スキル。グローバル通知の設定、連絡先、テンプレート、配信履歴、テンプレートレベルのルール(個別の通知ごとのルール)、テスト送信の動作を確認・検査するために使用します。
原文を表示
IDMP notification skill. Use it to inspect global notification config, contact points, templates, delivery history, template-level rules, and test-send behavior.
ユースケース
- ✓グローバル通知の設定を確認する
- ✓連絡先情報をチェックする
- ✓テンプレートを検査する
- ✓配信履歴を確認する
- ✓テスト送信の動作を検証する
本文(日本語訳)
通知機能
先に ../idmp-shared/SKILL.md をお読みください。
書き込み処理の前に: 🛑 破壊的な操作の確認プロトコルに従ってください。読み込み専用のコマンドはここでも読み込み専用のままですが、削除・書き込み・更新の処理フローでは、共有の確認ゲートが必要です。
このスキルがカバーする内容
- グローバル通知設定、連絡先、デフォルト連絡先、テンプレートの読み込み
- トラブルシューティング用の配信履歴とメッセージ詳細の確認
- グローバルインフラストラクチャと要素単位または要素テンプレート単位の通知ルールの区別
- テスト通知の実送信が許容される場合にのみ
try-sendを使用
推奨されるショートカット
| ショートカット | 目的 |
|---|---|
+config |
通知設定を表示 |
+contacts |
通知の連絡先一覧を表示 |
+default |
デフォルト連絡先を表示 |
+details |
通知配信の詳細一覧を表示 |
+rules |
1つの要素テンプレートの通知ルール一覧を表示 |
推奨される参照資料
事前に解決が必要な情報
| 情報 | 副作用が生じる前に解決すべき理由 |
|---|---|
| スコープの種類 | グローバル通知インフラストラクチャ、要素単位の通知ルール、またはテンプレート単位の通知ルールのどれを読み込むかを決定する必要があります。 |
| 所有者スコープ | タスクが通知ルールに関わる場合、事前に正確な elementId または elementTemplateId が必要です。 |
| 配信の意図 | 履歴と設定の読み込みだけが必要か、実際の try-send による副作用が許容されるかを決定します。 |
| テンプレート ID のソース | テンプレートの id が未知の場合、まず生成されたテンプレート一覧コマンド notification notification templates を使用してください。 |
| ルールの対象 | 最終的なルールがカバーすべき連絡先、テンプレート、重要度(エスカレーション段階)、再送ポリシーを決定します。 |
| 確認期間 | 再送または try-send 後に配信履歴を再度確認する方法を決定します。 |
制限された動作ルール
- 要素単位の調査には
notification notify-rules listを使用します。テンプレート単位の調査にはnotification notify-rules list-getを使用します。 notification template getには生成されたリスト機能がありますが、notification notification templatesという複雑なパスに配置されています。テンプレート ID を推測する前にこのリストを使用してください。try-sendは--dry-runなしで実行される場合、実際の通知送信となるため、操作者が明示的に検証を承認した場合にのみ実行してください。- タスクが実際のイベントに対する安全なペイロード(データ構造)プレビューだけを必要とする場合は、
try-send --dry-run --ack-riskを優先します。これを配信完了の証拠ではなく、コマンド形式の検証として扱ってください。 notification page listは再送試行の生データではなく、メッセージ詳細ページに基づいています。再送は既存の詳細行を更新し、その下に記録を追加する場合があり、新しいトップレベルの行を作成する場合ばかりではありません。- 配信履歴は再送や
try-sendより後から反映される場合があるため、最初の結果を最終版と仮定せず、notification page listを再度確認してください。 - 配信の再試行はイベントの最小通知間隔によって制限される場合があるため、「まだ明らかな新しい行がない」ことが送信失敗を意味するわけではありません。
- グローバル通知設定と連絡先は、対象イベントテンプレートまたは重要度にルールがバインドされていなくても正常な状態である可能性があります。
- タスクが本当はアラート配信バインディングの作成または修復についてである場合は、
../idmp-workflow-alert-create/SKILL.mdまたは../idmp-workflow-alert-debug/SKILL.mdに切り替えてください。
完了の証拠
- グローバル設定の読み込みは、再度読み込んだ結果が要約した設定またはオブジェクトと同じ場合にのみ完了です。
- ルールワークフローは、スコープ内の
notify-rulesの再読み込みが同じ所有者の意図したバインディングを表示する場合にのみ完了です。 - 配信の証拠は、
notification page listまたはメッセージ詳細の再読み込みが主張した送信または再送の結果を反映する場合にのみ完了です。
操作者のワークフロー
config、contact-point、default、template/templatesをグローバル通知インフラストラクチャとして扱います。notify-rulesをグローバル設定ではなく、要素または要素テンプレート上のバインディングとして扱います。- テンプレート ID が未知の場合、
template getの前にnotification notification templatesを使用します。 - 配信履歴とメッセージレベルのトラブルシューティングには
page listとdetails getを使用します。 - 再送の可視性は詳細中心であることを忘れずに。再試行は新しい行の代わりに既存詳細の下に追加記録として表示される場合があります。
- ペイロード検証だけの安全なプレビューには
try-send --dry-run --ack-riskを使用し、実際の通知送信を伴う非ドライラン版のtry-sendは操作者が明示的に副作用を承認した場合だけ使用します。 - 変更後は、必ず設定またはルールを再読み込みして確認してから、配信履歴を確認します。
主要コマンド
idmp-cli schema notification.config.list
idmp-cli notification config list
idmp-cli schema notification.list.list
idmp-cli notification list list
idmp-cli schema notification.notification.templates
idmp-cli notification notification templates
idmp-cli schema notification.template.get
idmp-cli notification template get --params '{"id":123}'
idmp-cli schema notification.notify-rules.list-get
idmp-cli notification notify-rules list-get --params '{"elementTemplateId":123}'
idmp-cli schema notification.page.list
idmp-cli notification page list --params '{"current":1,"size":20}'
idmp-cli schema notification.try-send.create-post
idmp-cli notification try-send create-post --ack-risk --data '{...}' --params '{"elementTemplateId":123}'
idmp-cli schema notification.try-send.create
idmp-cli notification try-send create --dry-run --ack-risk --data '{...}' --params '{"elementId":123}'
例外とエラー処理
- グローバル設定が不足または無効: 通知ルールが存在しても配信は実行されない場合があります。
- 連絡先またはテンプレート読み込みが失敗: 現在のアカウントが通知管理アクセス権を持っていることを確認してください。
- テンプレート ID がない状態でテンプレート読み込みが必要: 先に
idmp-cli notification notification templatesを使用してください。環境に再利用可能なテンプレートが本当にない場合にのみ、一時的なテンプレート(見本)を作成してください。 - テンプレートルール一覧が空: これを配信停止の証拠ではなく「バインディングがまだ存在しない」として扱ってください。
- ドライラン版の
try-sendは成功するが通知履歴がない: これは予想される動作です。ドライランはペイロード形式とプレビュー経路の証明だけです。 - 非ドライラン版の
try-sendは実行されるが通知が到着しない: 連絡先、テンプレート内容、チャネル設定、配信履歴を確認してください。 - 再送後に配信履歴が空に見える: ページングまたは時間範囲を広げて、既存の詳細行を確認し、最小間隔制限を考慮に入れてから再試行が試みられなかったと判断してください。
検証シナリオ
idmp-cli notification config listでグローバル通知設定を読み込みます。idmp-cli notification list listで連絡先一覧を表示します。idmp-cli notification notification templatesでテンプレート一覧を表示し、idmp-cli notification template get --params '{"id":123}'で1つのテンプレートを読み込みます。idmp-cli notification notify-rules list-get --params '{"elementTemplateId":123}'でテンプレートルール一覧を表示するか、スコープが要素モードの場合はidmp-cli notification notify-rules list --params '{"elementId":123}'で要素ルール一覧を表示します。idmp-cli notification page list --params '{"current":1,"size":20}'で配信履歴を確認するか、ペイロード検証だけで十分な場合はidmp-cli notification try-send create --dry-run --ack-risk --data '{...}' --params '{"elementId":123}'で安全な要素単位のドライラン版プレビューを実行します。
原文(English)を表示
notification
Read ../idmp-shared/SKILL.md first.
Before any write: Follow the 🛑 Destructive op confirmation protocol. Read-only commands stay read-only here, but delete / write / patch flows still require the shared yes-gate.
What this skill covers
- Read global notification configuration, contact points, default contact point, and templates.
- Read delivery history and message details for troubleshooting.
- Distinguish global infrastructure from element or element-template notify rules.
- Use
try-sendonly when a real test notification is acceptable.
Recommended shortcuts
| Shortcut | Purpose |
|---|---|
+config |
Show notification config |
+contacts |
List notification contact points |
+default |
Show the default contact point |
+details |
List notification delivery details |
+rules |
List notification rules for one element template |
Recommended reference
Notification read flows../idmp-workflow-alert-create/SKILL.md../idmp-workflow-alert-debug/SKILL.md
Missing context to resolve first
| Context | Why it must be resolved before side effects |
|---|---|
| Scope type | Decide whether you are reading global notification infrastructure, element-scoped notify rules, or template-scoped notify rules. |
| Owner scope | If the task touches notify rules, you need the exact elementId or elementTemplateId first. |
| Delivery intent | Decide whether you only need history and config reads or whether a real try-send side effect is allowed. |
| Template ID source | If you do not already know a template id, start with the generated template-list command notification notification templates. |
| Rule target | Decide which contact point, template, severity, and resend policy the final rule should cover. |
| Verification window | Decide how you will reread delivery history after resend or try-send. |
Constrained live behaviors
- Element-scoped investigations use
notification notify-rules list; template-scoped investigations usenotification notify-rules list-get. notification template getdoes have a generated list companion, but it lives under the awkward pathnotification notification templates. Use that list before you guess a template ID.try-sendis a real notification side effect when it runs without--dry-run, and it should run only when the operator explicitly accepts that validation.- If the task only needs a safe payload preview on a real event, prefer
try-send --dry-run --ack-risk; treat that as validation of command shape, not proof that delivery completed. notification page listis backed by message-detail pages, not by raw resend attempts. A resend can update an existing detail row and append records under it instead of creating a new top-level page row.- Delivery history can lag behind resend or
try-send, so rereadnotification page listinstead of assuming the first response is final. - Delivery retries can also be throttled by the event's minimum notification interval, so “no obvious new row yet” is not always a send failure.
- Global notification config and contact points can be healthy even when no rule binds the target event template or severity.
- If the task is really about creating or repairing alert delivery bindings, switch to
../idmp-workflow-alert-create/SKILL.mdor../idmp-workflow-alert-debug/SKILL.md.
Evidence of completion
- A global config read is only complete when the reread exposes the same config or contact-point object you summarized.
- A rule workflow is only complete when the scoped
notify-rulesreread shows the intended binding on the same owner. - A delivery proof is only complete when
notification page listor the message-detail reread reflects the send or resend outcome you claimed.
Operator workflow
- Treat
config,contact-point,default, andtemplate/templatesas global notification infrastructure. - Treat
notify-rulesas bindings on elements or element templates, not as global config. - Use
notification notification templatesbeforetemplate getwhen no template ID is already known. - Use
page listanddetails getfor delivery history and message-level troubleshooting. - Remember that resend visibility is detail-centric: a retry can land as an extra record under an existing detail instead of a brand-new page row.
- Use
try-send --dry-run --ack-riskfor safe preview-only validation, and use non-dry-runtry-sendonly when the operator explicitly accepts a real notification side effect. - After any change, verify by re-reading config or rules and then checking delivery history.
Key commands
idmp-cli schema notification.config.list
idmp-cli notification config list
idmp-cli schema notification.list.list
idmp-cli notification list list
idmp-cli schema notification.notification.templates
idmp-cli notification notification templates
idmp-cli schema notification.template.get
idmp-cli notification template get --params '{"id":123}'
idmp-cli schema notification.notify-rules.list-get
idmp-cli notification notify-rules list-get --params '{"elementTemplateId":123}'
idmp-cli schema notification.page.list
idmp-cli notification page list --params '{"current":1,"size":20}'
idmp-cli schema notification.try-send.create-post
idmp-cli notification try-send create-post --ack-risk --data '{...}' --params '{"elementTemplateId":123}'
idmp-cli schema notification.try-send.create
idmp-cli notification try-send create --dry-run --ack-risk --data '{...}' --params '{"elementId":123}'
Exception and failure handling
- Global config is missing or disabled: notify rules may exist but delivery still will not happen.
- Contact-point or template reads fail: confirm the current account has notification administration access.
- You need a template read but have no template ID: use
idmp-cli notification notification templatesfirst, and create a temporary template fixture only if the environment truly has no reusable template to inspect. - A template rule list is empty: treat that as “no binding exists yet,” not as proof of a delivery outage.
- Dry-run
try-sendsucceeds but there is no notification history: that is expected; dry-run only proves the payload shape and preview path. - Non-dry-run
try-sendruns but no message arrives: inspect contact points, template content, channel settings, and delivery history. - Delivery history looks empty after resend: widen the paging or time scope, inspect the existing detail row, and consider minimum-interval throttling before deciding no retry was attempted.
Validation scenarios
- Read global notification config with
idmp-cli notification config list. - List contact points with
idmp-cli notification list list. - List templates with
idmp-cli notification notification templates, then read one template withidmp-cli notification template get --params '{"id":123}'. - List template rules with
idmp-cli notification notify-rules list-get --params '{"elementTemplateId":123}', or list element rules withidmp-cli notification notify-rules list --params '{"elementId":123}'when the scope is element mode. - Query delivery history with
idmp-cli notification page list --params '{"current":1,"size":20}', or preview a safe element-scopedtry-sendwithidmp-cli notification try-send create --dry-run --ack-risk --data '{...}' --params '{"elementId":123}'when a live test only needs payload validation.
原文・著作権は Anthropic および各プラグイン作者に帰属します。日本語訳は Claude API による自動翻訳です。