Beaconchain
Use this skill to reduce validator-check anxiety: do one concise daily health check, then only surface issues.
Quick Start
- Set credentials as env vars:
BEACONCHAIN_API_KEYBEACONCHAIN_DASHBOARD_ID
- Run:
python3 skills/beaconchain/scripts/check_dashboard.py --json
- Interpret exit code:
0= good2= bad (needs attention)1= error (auth/rate-limit/endpoint failure)
Monitoring Workflow
- Run
scripts/check_dashboard.pyonce per day. - If
status=good, respond with a short reassurance and avoid extra detail. - If
status=bad, report:- BeaconScore (if available)
- Which signal tripped (missed/penalty fallback)
- Next action: inspect dashboard details and validator logs.
- If
status=error, report key checks:- API key validity
- dashboard ID
- plan/rate-limit permissions.
Command Patterns
Basic check
python3 skills/beaconchain/scripts/check_dashboard.py
JSON output (for cron/parsing)
python3 skills/beaconchain/scripts/check_dashboard.py --json
Custom threshold
python3 skills/beaconchain/scripts/check_dashboard.py --warn-threshold 75
Notes
- Script uses
POST /api/v2/ethereum/validators/performance-aggregatewith dashboard selector and readsdata.beaconscore.totaldirectly. - Default window is
24h; supported windows:24h,7d,30d,90d,all_time. - Keep responses intentionally terse when healthy to support low-anxiety operations.
Security & Transparency
- Runtime:
python3only, using Python standard library (argparse,json,urllib,datetime). - Credentials: reads
BEACONCHAIN_API_KEYandBEACONCHAIN_DASHBOARD_ID(or equivalent CLI flags). - Network egress: only
https://beaconcha.in/api/v2/ethereum/validators/performance-aggregate. - Local filesystem: no writes, no shell execution, no subprocess spawning.
References
- API overview:
references/api-notes.md