mirror of
https://github.com/tiennm99/claude-status-webhook.git
synced 2026-04-17 13:21:01 +00:00
- Hash inputs in timingSafeEqual to prevent length leak side-channel - Add quote escaping to escapeHtml for defense in depth - Normalize chatId to Number in parseKvKey for type consistency - Log Retry-After header on 429 rate limit responses - Slim README to focused overview, move details to docs/ - Add docs/: system-architecture, setup-guide, feature-decisions - Add documentation section and README guidelines to CLAUDE.md
51 lines
2.1 KiB
Markdown
51 lines
2.1 KiB
Markdown
# claude-status-webhook
|
|
|
|
Telegram bot that forwards [Claude Status](https://status.claude.com/) updates to subscribed users. Instant notifications when Claude goes down — incidents, component changes, and resolutions.
|
|
|
|
Fully serverless on [Cloudflare Workers](https://workers.cloudflare.com/) (free tier). Zero infrastructure to manage.
|
|
|
|
## Features
|
|
|
|
- **Real-time incident alerts** — new incidents, updates, and resolutions with impact severity
|
|
- **Component status changes** — e.g., API goes from Operational → Degraded Performance
|
|
- **Subscription preferences** — incidents only, components only, or both
|
|
- **Component filtering** — subscribe to specific components (e.g., API only)
|
|
- **Supergroup topic support** — notifications routed to the topic where `/start` was sent
|
|
- **Live status check** — `/status` fetches current data from status.claude.com
|
|
- **Self-healing** — automatically removes subscribers who block the bot
|
|
|
|
## Bot Commands
|
|
|
|
| Command | Description |
|
|
|---------|-------------|
|
|
| `/help` | Detailed command guide with examples |
|
|
| `/start` | Subscribe to notifications |
|
|
| `/stop` | Unsubscribe from notifications |
|
|
| `/status [name]` | Current system status (optionally for a specific component) |
|
|
| `/subscribe <type>` | Set preferences: `incident`, `component`, or `all` |
|
|
| `/subscribe component <name>` | Filter to a specific component |
|
|
| `/history [count]` | Recent incidents (default 5, max 10) |
|
|
| `/uptime` | Component health overview |
|
|
|
|
## Quick Start
|
|
|
|
```bash
|
|
git clone https://github.com/tiennm99/claude-status-webhook.git
|
|
cd claude-status-webhook
|
|
npm install
|
|
```
|
|
|
|
See [Setup Guide](docs/setup-guide.md) for full deployment instructions.
|
|
|
|
## Documentation
|
|
|
|
| Doc | Description |
|
|
|-----|-------------|
|
|
| [Setup Guide](docs/setup-guide.md) | Prerequisites, deployment, Telegram & Statuspage configuration |
|
|
| [System Architecture](docs/system-architecture.md) | Entry points, data flow, KV schema, queue processing |
|
|
| [Feature Decisions](docs/feature-decisions.md) | Evaluated features and rationale for decisions |
|
|
|
|
## License
|
|
|
|
[Apache-2.0](LICENSE)
|