alerting-stacklisted
Install: claude install-skill Xipher-Labs/walter-os
# Walter-VM alerting stack — the simple version
PagerDuty and Opsgenie are overkill for a one-operator self-hosted setup.
You want: "ping me on Telegram if something breaks". Four tiers cover
every realistic failure mode.
## The bot (one bot, all tiers)
You already have:
- Telegram bot via @BotFather (skill: `telegram-bot-cli`)
- Bot token in `WALTER_TELEGRAM_BOT_TOKEN`
- Your chat ID in `WALTER_TELEGRAM_CHAT_ID`
Every tier below pushes to the same bot. One pinned chat, one mute toggle,
one "shut up" button when you're sleeping.
## Tier 1 — Service uptime (Uptime-Kuma → Telegram)
**Covers**: any HTTP/TCP/DNS service down, including Plane / Forgejo /
LiteLLM / Infisical / n8n / public sites you care about.
**Setup** (in https://status.${WALTER_DOMAIN}):
1. Settings → **Notifications** → **Setup Notification**
2. Type: **Telegram**
3. Friendly name: `walter-bot`
4. Bot Token: paste `WALTER_TELEGRAM_BOT_TOKEN`
5. Chat ID: paste `WALTER_TELEGRAM_CHAT_ID`
6. Click **Test** — should arrive instantly.
7. **Default Enabled** + **Apply on all existing monitors** — checked.
8. Save.
Then add monitors for:
| Monitor | Type | Target | Interval |
|---|---|---|---|
| Plane | HTTP(s) keyword | https://plane.${WALTER_DOMAIN}, expect 200/302/CF Access redirect | 60s |
| Forgejo | HTTP(s) | https://git.${WALTER_DOMAIN} | 60s |
| LiteLLM | HTTP(s) | https://llm.${WALTER_DOMAIN}/health | 60s |
| Infisical | HTTP(s) | https://secrets.${WALTER_DOMAIN} | 60s |
| n8n | HTTP(s) | https://n8