Short answer
Tambahkan step dengan if: failure() di workflow. Simpan NERVE_DSN di GitHub Secrets dan kirim repo, branch, serta run URL di alert.
Query yang sering muncul bisa berupa “GitHub Actions notifikasi WhatsApp”, “GitHub Actions Telegram”, atau “CI/CD alert HP”. Pola bersihnya: CI hanya mengirim signal; diskusi manusia menyusul.
Workflow snippet
- uses: actions/setup-go@v5
with:
go-version: "1.25.x"
- name: Notify Nerve on failure
if: failure()
env:
NERVE_DSN: ${{ secrets.NERVE_DSN }}
run: |
go install github.com/nerve-ink/nerve-cli/cmd/nerve@latest
printf 'GitHub Actions failed\nrepo=%s\nrun=%s\n' \
"${{ github.repository }}" \
"${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" \
| "$(go env GOPATH)/bin/nerve" send --severity critical
Why not a chat bot first
Chat apps are good for human discussion. CI failures are machine signals. Send a quiet phone alert first, then discuss the incident in Slack, Telegram, WhatsApp, or GitHub after someone sees it.
Security boundary
FAQ
Bagaimana mengirim alert GitHub Actions ke ponsel?
Tambahkan step nerve send dengan if: failure() dan simpan NERVE_DSN sebagai GitHub Actions secret.
Apakah sender DSN bisa membaca alert lama?
Tidak. Sender DSN hanya bisa mengirim encrypted signals ke satu pipe.
Apakah perlu menjalankan agent untuk menerima alerts?
Tidak. Agent opsional dan dipakai untuk signed actions di mesin tepercaya.