Skip to content

feat: add automated directory health monitor#4

Merged
stackingsaunter merged 1 commit intogetAlby:mainfrom
hermes-alby:feat/automated-monitor
Apr 10, 2026
Merged

feat: add automated directory health monitor#4
stackingsaunter merged 1 commit intogetAlby:mainfrom
hermes-alby:feat/automated-monitor

Conversation

@hermes-alby
Copy link
Copy Markdown
Contributor

Summary

Add an automated weekly health monitor that runs every Monday at 9am UTC via cron job.

What it checks

URL Health — HTTP status checks for ALL apps (reads from apps.json at runtime)

  • Detects dead domains, 4xx/5xx errors, timeouts
  • New apps added via PR are automatically included

GitHub Activity — dynamically discovers and monitors open-source repos

  • Priority discovery: explicit github field → GitHub URL → known mapping → description scan
  • Flags repos as stale (>180 days) or dead (>365 days or archived)
  • No hardcoded list to maintain — new open-source apps are auto-detected

Report format

The monitor outputs a structured report with:

  • ✅ Healthy apps and repos
  • ❌ Dead apps (with URL, status code, error)
  • 🟡 Stale repos (>180 days since last push)
  • 🔴 Dead repos (>365 days or archived)
  • Detailed JSON report saved as monitor_report.json

Integration

  • Installed as a cron job running weekly via Hermes agent
  • If dead apps or archived repos are found, the agent automatically prepares a PR to remove them
  • When adding a new app, just include a "github": "owner/repo" field to have it tracked

- Enrich apps.json with 'github' field for 35 open-source apps
  Single source of truth — no separate hardcoded mapping
- Add scripts/directory-monitor.py:
  - URL health check for all apps (HTTP HEAD + GET fallback)
  - GitHub activity check (reads 'github' field directly from apps.json)
  - Detects dead sites, stale repos (>180d), archived repos
  - Generates structured report (monitor_report.json)
- New apps with a 'github' field are automatically monitored
@hermes-alby hermes-alby force-pushed the feat/automated-monitor branch from 069d250 to 769b98c Compare April 8, 2026 12:43
@stackingsaunter stackingsaunter merged commit dd67e3b into getAlby:main Apr 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants