Repository Intelligence Platform
Pricing
Pay per event
Repository Intelligence Platform
Comprehensive GitHub repository health monitoring for DevOps teams, open-source maintainers, and engineering managers
Pricing
Pay per event
Rating
0.0
(0)
Developer

Cody Churchwell
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 days ago
Last modified
Categories
Share
Comprehensive GitHub repository health monitoring for DevOps teams, open-source maintainers, and engineering managers
๐ฏ What It Does
Repository Intelligence Platform provides automated, comprehensive health monitoring for GitHub repositories. Get actionable insights across six critical dimensions: code quality, dependency health, security vulnerabilities, documentation coverage, community engagement, and CI/CD status.
Perfect for:
- DevOps Teams: Monitor infrastructure repos and catch issues before they become incidents
- Open Source Maintainers: Track community health and prioritize maintenance work
- Engineering Managers: Get visibility into code health across multiple projects
- Security Teams: Identify and track security vulnerabilities systematically
โจ Key Features
๐ Six-Dimensional Health Analysis
-
Code Quality
- File structure analysis
- Large file detection
- Language distribution
- Complexity indicators
-
Dependency Health
- Outdated package detection
- Deprecated dependency tracking
- Major version upgrade alerts
- Package freshness scoring
-
Security Analysis
- Vulnerability scanning (critical, high, medium, low)
- Security policy presence
- Dependabot configuration check
- Real-time security alert integration
-
Documentation Coverage
- README quality assessment
- Essential file detection (LICENSE, CONTRIBUTING, CHANGELOG)
- Documentation completeness scoring
- Example code availability
-
Community Health
- Star/fork/watcher metrics
- Stale issue/PR detection
- Community file presence (CODE_OF_CONDUCT, templates)
- Engagement indicators
-
CI/CD Monitoring
- GitHub Actions workflow detection
- Build success rate tracking
- Recent workflow run analysis
- Failed run identification
๐จ Intelligent Alerting
- Configurable Thresholds: Set your own alert criteria for each metric
- Severity Levels: Critical, warning, and info alerts
- Actionable Insights: Each alert includes specific remediation context
๐ Flexible Reporting
- Detailed Mode: Full metrics, scores, and insights for each repository
- Summary Mode: High-level overview with key scores and alert counts
- Alerts-Only Mode: Focus on repositories requiring immediate attention
๐ Use Cases
DevOps: Multi-Repo Monitoring
Monitor all infrastructure and service repositories in one run:
{"repositories": ["company/api-gateway","company/auth-service","company/payment-processor"],"healthChecks": {"security": true,"cicd": true,"dependencies": true},"alertThresholds": {"securityVulnerabilities": 1,"outdatedDependenciesCount": 5}}
Open Source: Community Health Tracking
Track engagement and maintenance needs:
{"repositories": ["my-org/popular-library"],"healthChecks": {"community": true,"documentation": true},"alertThresholds": {"staleIssuesDays": 60,"stalePRsDays": 30,"minDocumentationScore": 70},"outputFormat": "detailed"}
Security Audit: Vulnerability Scanning
Focus on security across all projects:
{"repositories": ["company/frontend","company/backend","company/mobile-app"],"healthChecks": {"security": true,"dependencies": true},"alertThresholds": {"securityVulnerabilities": 0,"outdatedDependenciesCount": 3},"outputFormat": "alerts-only"}
๐ฅ Input Configuration
Required Fields
- repositories (array of strings): GitHub repositories in
owner/repoformat- Example:
["facebook/react", "microsoft/vscode"]
- Example:
Optional Fields
-
githubToken (string, secret): GitHub Personal Access Token
- Increases rate limits from 60 to 5,000 requests/hour
- Required for private repositories and vulnerability data
- Scopes needed:
repo,security_events
-
healthChecks (object): Enable/disable specific analysis modules
{"codeQuality": true,"dependencies": true,"security": true,"documentation": true,"community": true,"cicd": true} -
alertThresholds (object): Configure when to flag issues
{"outdatedDependenciesCount": 5,"securityVulnerabilities": 1,"minDocumentationScore": 60,"staleIssuesDays": 90,"stalePRsDays": 30} -
outputFormat (string): Choose report detail level
"detailed": Full metrics and insights (default)"summary": Scores and alert counts only"alerts-only": Only repositories with alerts
๐ค Output Data
Detailed Report Format
{"repository": "facebook/react","timestamp": "2025-11-24T15:00:00.000Z","overallScore": 87,"alerts": [{"severity": "warning","category": "Dependencies","message": "5 dependencies are outdated","details": { "outdatedCount": 5 }}],"metrics": {"codeQuality": {"score": 95,"totalFiles": 247,"largeFiles": 2,"languages": { "JavaScript": 82450, "TypeScript": 45320 }},"security": {"score": 100,"vulnerabilities": { "critical": 0, "high": 0, "medium": 0, "low": 0 },"securityPolicyExists": true,"dependabotEnabled": true}}}
Additional Outputs
- Key-Value Store:
aggregate_report- Summary across all analyzed repositories
๐ GitHub Token Setup
- Go to GitHub โ Settings โ Developer settings โ Personal access tokens
- Generate new token (classic) with scopes:
repo- Full repository accesssecurity_events- View security alerts
- Copy token and add to Actor input (marked as secret)
๐ก Best Practices
Rate Limiting
- Without Token: 60 requests/hour (suitable for 1-2 repositories)
- With Token: 5,000 requests/hour (suitable for 50+ repositories)
- Tip: Always use a token for production monitoring
Scheduling
Set up periodic runs in Apify:
- Daily: Critical production repositories
- Weekly: All active projects
- Monthly: Archived or low-activity repositories
Alert Integration
Export results to:
- Slack via webhooks (use Apify integrations)
- Email reports (use Apify notifications)
- JIRA/GitHub Issues (automated issue creation)
- Custom dashboards (consume dataset via API)
Optimization Tips
- Start with
"alerts-only"mode to identify problem repositories - Use
"summary"mode for regular monitoring - Run
"detailed"mode when deep-diving into specific issues - Disable unused health checks to reduce API calls
๐ Scoring System
Each metric is scored 0-100:
- 90-100: Excellent health
- 70-89: Good, minor improvements needed
- 50-69: Fair, attention required
- Below 50: Poor, immediate action needed
Overall score is the average of all enabled health check scores.
๐ Integration Examples
Slack Alert Integration
// Use Apify webhook integrationif (result.overallScore < 70 || result.alerts.some(a => a.severity === 'critical')) {// Send to Slack webhookawait sendSlackNotification({text: `โ ๏ธ Repository ${result.repository} health score: ${result.overallScore}`,alerts: result.alerts});}
Dashboard Visualization
Use the dataset API to build custom dashboards:
$curl "https://api.apify.com/v2/datasets/YOUR_DATASET_ID/items"
๐ Technical Details
- Runtime: Node.js 20
- Key Dependencies:
octokit- GitHub API clientsemver- Version comparisondate-fns- Date utilities
- API Rate Limits: Respects GitHub API rate limits with exponential backoff
- Error Handling: Continues on repository failures, reports errors in output
๐ Example Workflows
Weekly Health Report
- Schedule Actor to run every Monday at 9 AM
- Set
outputFormat: "summary" - Enable all health checks
- Send results to team Slack channel
Security Audit Pipeline
- Run Actor daily for critical repositories
- Enable only
securityanddependencieschecks - Set
securityVulnerabilitiesthreshold to 0 - Create JIRA tickets for any critical alerts
Open Source Maintenance
- Run Actor weekly for all your OSS projects
- Focus on
communityanddocumentationchecks - Track stale issues and PR response times
- Generate monthly health trend reports
๐ค Contributing
Found a bug? Have a feature request? Please open an issue on the GitHub repository.
๐ License
MIT License - feel free to use in your projects!
๐ Apify $1M Challenge
Built as part of the Apify $1M Challenge. Help us improve by:
- Using the Actor and providing feedback
- Starring the repository
- Sharing with your team
- Suggesting new health check modules
Made with โค๏ธ for the developer community
