要点まとめ
- NotiFerryを使えば、XcodeがmacOS通知センターに出すBuild Succeeded / Build Failed通知をスクリプト不要でiPhoneへ自動転送できます。
- Xcode単体を無料で通知したい場合は、Xcode → Settings → Behaviors の Run スクリプトから curl で ntfy.sh へPOSTできます。
- CLIの xcodebuild や Fastlane でも、コマンド完了後にntfyへ通知を送るワンライナーがそのまま使えます。
- iPhoneの画面がロックされていれば、ビルド完了通知はそのまま手首のApple Watchへミラーリングされます。
方法1:NotiFerryでXcodeの通知を自動転送する
Xcodeはデフォルトで、ウィンドウがバックグラウンドにあるときのビルド成功・失敗・テスト完了をmacOS通知センターへ通知します。NotiFerryを使うと、シェルスクリプトを書くことなくこれらの通知をiPhoneへ転送できます。
- macOSの通知設定を確認:
システム設定 → 通知 → Xcodeで通知がオンになっていることを確認します。 - NotiFerryでXcodeを選択: NotiFerryの転送対象アプリで Xcode を有効にします。短時間の連続ビルドで通知が鳴りすぎないよう、バースト集約(Burst Collapsing)が自動的に機能します。
- iPhoneのntfyで受信: ビルドを開始して別ウィンドウに切り替えるか席を離れると、完了時にiPhoneへ「Build Succeeded」または「Build Failed」が届きます。
方法2:Xcode Behaviorsにntfyスクリプトを設定する(無料)
Xcodeには、ビルド開始・成功・失敗、テスト完了などのイベント時に任意の実行ファイル(スクリプト)を起動できるBehaviors機能が標準搭載されています。
- 以下の内容で
~/bin/xcode-ntfy.shを作成し、chmod +x ~/bin/xcode-ntfy.shで実行権限を付与します。 - Xcodeメニューの
Xcode → Settings… → Behaviorsを開きます。 - 左側のリストから Builds → Succeeds(および Fails、Testing → Completes)を選択し、右側の Run にチェックを入れて作成したスクリプトを指定します。
#!/bin/sh
# ~/bin/xcode-ntfy.sh (chmod +x を付与して Xcode Behaviors の "Run" に指定)
TOPIC="your-private-topic"
STATUS="${1:-Build event}"
PROJECT="${XcodeProject:-Xcode}"
curl -s \
-H "Title: Xcode: ${STATUS}" \
-d "${PROJECT} on $(scutil --get ComputerName)" \
"https://ntfy.sh/${TOPIC}" >/dev/null 2>&1 &方法3:ターミナルのxcodebuildやFastlaneから通知する
CIやローカルのターミナルで xcodebuild を実行する場合は、コマンドの成否に応じて curl を呼び出すワンライナーが便利です。
xcodebuild -scheme MyApp -destination 'platform=iOS Simulator,name=iPhone 16' test \
&& curl -s -H "Title: xcodebuild 成功" -d "テストがすべて通過しました" https://ntfy.sh/your-private-topic \
|| curl -s -H "Title: xcodebuild 失敗" -H "Priority: high" -d "ビルドまたはテストが失敗しました" https://ntfy.sh/your-private-topicApple Watchの手元でビルド完了を確認する
デスクから離れてキッチンや別室にいるとき、iPhoneをポケットから出さずにApple Watchの振動だけでビルド結果を確認できます。iPhone側でntfyの通知が許可されていれば、iPhoneの画面がロックされている間、iOSが自動的にApple Watchへ通知を中継します。詳しい設定はntfyでMacの通知をApple Watchで受け取るガイドをご覧ください。
MacとiPhoneでの動作イメージ
macOSの通知センターフォルダに読み取り専用アクセスを許可し(フルディスクアクセス不要)、iPhoneの無料アプリ「ntfy」で専用トピックを購読します。テスト通知の受信を確認すると、7日間の無料トライアルが開始されます。

よくある質問
XcodeにはiPhoneへ直接ビルド通知を送る標準機能はありますか?
いいえ。Xcodeはビルド成功・失敗やテスト完了をMacの通知センターに表示しますが、macOSはその通知をiPhoneへ転送しません。iPhoneで受け取るには、Xcode Behaviorsからntfyへスクリプトを実行するか、NotiFerryでmacOS通知センターから転送する必要があります。
短時間に連続してビルドした場合、iPhoneに通知が大量に届きませんか?
NotiFerryにはアプリ単位のクールダウンとバースト集約(burst collapsing)機能があり、短時間に連続したXcodeの通知を1件のサマリー通知(例:「+4 earlier notifications」)にまとめてiPhoneへ配信できます。
Xcode BehaviorsのスクリプトとNotiFerryはどちらを選ぶべきですか?
XcodeのGUIビルド完了だけを無料で通知したい場合は、Xcode Behaviorsのシェルスクリプトで十分です。一方、Xcodeに加えてClaude Code、Cursor、ターミナルのビルドスクリプト、その他のMacアプリの通知も一括で管理したい場合や、バースト集約・オフライン再送キューを使いたい場合はNotiFerryが適しています。
Xcodeのビルド完了通知をApple Watchで受け取ることはできますか?
はい。通知がiPhoneのntfyアプリに届けば、iPhoneがロックされている間、iOSが自動的にApple Watchへ通知をミラーリングします。