メインコンテンツへスキップ
このクックブックでは、Droidがあなたの入力を必要としている時や、セッション中に重要なイベントが発生した時に知ることができるカスタム通知の設定方法を説明します。

仕組み

通知フックは以下のことができます:
  1. 複数のイベントでトリガー: 通知、停止、サブエージェント停止、セッション終了
  2. 複数のチャンネルに対応: デスクトップ通知、システム音、Slack、メール、webhook
  3. コンテキストを提供: セッション詳細、タスク完了状況、エラーメッセージを含む
  4. インテリジェントフィルタリング: 重要なイベントのみを通知
  5. クロスプラットフォーム対応: macOS、Linux、Windows

前提条件

お使いのプラットフォーム用の通知ツールをインストール:
Slack通知については、api.slack.com/messaging/webhooksでwebhookを作成してください。

基本的な通知

Droidが待機している時のデスクトップ通知

Droidがあなたの入力を待っている時に通知を受け取ります。 .factory/hooks/notify-wait.shを作成:
~/.factory/hooks.jsonに追加(ユーザー全体):

タスク完了時の音声アラート

Droidが終了した時に音を再生します。 .factory/hooks/completion-sound.shを作成:
~/.factory/hooks.jsonに追加:

高度な通知

Slack連携

Droidがタスクを完了した時にSlackメッセージを送信します。 .factory/hooks/slack-notify.shを作成:
webhook URLを設定:
~/.factory/hooks.jsonに追加:

メール通知

重要なイベントのメールアラートを送信します。 .factory/hooks/email-notify.shを作成:
環境を設定:

アクション付きリッチデスクトップ通知

アクションボタン付きのmacOS通知。 .factory/hooks/rich-notify-macos.shを作成:

Webhook連携

カスタムwebhookに通知を送信: .factory/hooks/webhook-notify.shを作成:

実際の使用例

例1: フォーカスモード通知

デスクから離れている時のみ通知: .factory/hooks/smart-notify.shを作成:

例2: チーム通知ダッシュボード

すべてのイベントを共有ダッシュボードに記録: .factory/hooks/team-logger.shを作成:

ベストプラクティス

1

通知スクリプトを高速に保つ

Droidをブロックしないよう短いタイムアウトを使用します:
2

失敗を適切に処理する

通知に失敗しても実行をブロックしないでください:
3

ユーザー設定を尊重する

オプトアウト用の環境変数を確認します:
4

通知をテストする

テストのために手動でフックをトリガーします:
5

適切な通知レベルを使用

イベントごとに適切な緊急度は異なります:
  • Notification: 緊急度高(Droidが待機中)
  • Stop: 緊急度中(タスク完了)
  • SessionEnd: 緊急度低(参考情報のみ)

トラブルシューティング

問題: 通知が表示されない 解決策: 通知の権限を確認:
問題: Slackメッセージが送信されない 解決策: webhookを直接テスト:
問題: アラートスパムを受け取る 解決策: レート制限を追加:
問題: 音声アラートが鳴らない 解決策: 音声システムを確認:

関連項目