An AI-powered Python dependency resolution system built with Cloudflare Workers and specialized AI agents. This system intelligently resolves Python package dependencies while detecting deprecated packages, suggesting alternatives, and handling version conflicts.
- Intelligent Resolution: Uses specialized AI agents for complex dependency resolution
- Deprecation Detection: Automatically identifies deprecated packages and suggests modern alternatives
- Conflict Resolution: Handles version conflicts with intelligent recommendations
- Security Analysis: Identifies known vulnerabilities and maintenance status
- Automated PR Analysis: Get AI-powered dependency analysis comments on every pull request
- Status Checks: Block deployments with critical dependency conflicts
- Real-time Notifications: Instant feedback on deprecated packages and conflicts
- Zero Configuration: Install the GitHub App once, works across all your repositories
- Edge Computing: Runs on Cloudflare's global edge network for fast response times
- Multi-Agent System: Specialized AI agents working together for different aspects of resolution
- Intelligent Caching: KV storage for package information and R2 for reports
- Real-time UI: React/TypeScript interface with live updates
# Clone and setup
git clone https://github.com/your-org/agents-starter.git
cd agents-starter
npm install
# Configure environment
cp .dev.vars.example .dev.vars
# Edit .dev.vars with your API keys
# Start development server
npm start# Basic dependency resolution
curl -X POST https://python-dependency-resolver.bugzer.workers.dev/agents/dependency-resolver-agent/resolve \
-H "Content-Type: application/json" \
-d '{
"requirements": [
{"name": "requests", "operator": ">=", "version": "2.25.0", "original_spec": "requests>=2.25.0"}
],
"python_version": "3.9"
}'- Install GitHub App: Visit our GitHub App page
- Configure Repositories: Select which repos to analyze
- Automatic Analysis: PRs with
requirements.txtchanges get automatic analysis
Our comprehensive documentation covers all aspects of the system:
| Guide | Description | Audience |
|---|---|---|
| π Documentation Index | Complete documentation overview | All Users |
| π§ Development Guide | Setup, testing, and contribution guide | Developers |
| π API Reference | Complete API documentation with examples | API Users |
| π Deployment Guide | Production deployment and infrastructure | DevOps |
| π¨ Components | React component library documentation | Frontend Devs |
| π GitHub Integration | GitHub App setup and configuration | Teams |
graph TB
A[Frontend React App] --> B[Cloudflare Worker]
B --> C[Dependency Resolver Agent]
B --> D[Package Research Agent]
B --> E[Report Generator Agent]
C --> F[PyPI API]
D --> G[Google Search API]
D --> H[AI Provider]
E --> I[R2 Storage]
B --> J[KV Cache]
B --> K[GitHub API]
L[GitHub Webhooks] --> B
- π€ AI Agents: Specialized agents for dependency resolution, package research, and report generation
- β‘ Cloudflare Workers: Edge computing runtime for global performance
- π¨ React Frontend: Modern TypeScript interface with Tailwind CSS
- πΎ Smart Caching: KV for package data, R2 for reports
- π Integrations: GitHub, PyPI, Google Search, AI providers
Backend
- Cloudflare Workers (V8 isolates)
- TypeScript + Durable Objects
- Vercel AI SDK (OpenAI/Azure OpenAI)
- Cloudflare KV + R2 Storage
Frontend
- React 19 + TypeScript
- Tailwind CSS v4
- Vite + Vitest
- Radix UI + GSAP
DevOps
- Wrangler CLI
- GitHub Actions
- Biome + Prettier
- Visit the app: python-dependency-resolver.bugzer.workers.dev
- Enter requirements: Paste your Python requirements
- Configure options: Set Python version, preferences
- Get results: View analysis, requirements.txt, and detailed reports
// Resolve dependencies
const response = await fetch('/agents/dependency-resolver-agent/resolve', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
requirements: [
{ name: 'django', operator: '>=', version: '4.0', original_spec: 'django>=4.0' }
],
python_version: '3.11',
exclude_deprecated: true
})
});
const { id, status } = await response.json();
// Check status
const statusResponse = await fetch(`/agents/dependency-resolver-agent/status?id=${id}`);
const result = await statusResponse.json();Once installed, the GitHub App automatically:
- π Analyzes
requirements.txtchanges in PRs - π¬ Comments with detailed dependency analysis
- β Status checks for CI/CD integration
- π¨ Alerts on deprecated or vulnerable packages
- Node.js 18+
- Cloudflare account with Workers plan
- OpenAI or Azure OpenAI API key
# Install dependencies
npm install
# Start development server (includes hot reloading)
npm start
# Run tests
npm test
# Deploy to development
npm run deploy:devagents-starter/
βββ src/
β βββ agents/ # Durable Object agents
β βββ components/ # React UI components
β βββ services/ # Business logic
β βββ app.tsx # Main React app
β βββ server.ts # Worker entry point
βββ docs/ # Comprehensive documentation
βββ examples/ # Usage examples
βββ scripts/ # Setup scripts
βββ tests/ # Test files
# Run all tests
npm test
# Run with coverage
npm run test:coverage
# Run specific test
npm test -- dependency-resolver.test.ts
# Watch mode
npm run test:watch# Deploy to production
npm run deploy
# Deploy with custom environment
CLOUDFLARE_ENVIRONMENT=production npm run deploy- Configure Cloudflare resources (KV, R2, Durable Objects)
- Set secrets for API keys
- Verify deployment with health checks
See the Deployment Guide for detailed instructions.
# Run the setup script
chmod +x scripts/setup-github-integration.sh
./scripts/setup-github-integration.sh- Create GitHub App with repository permissions
- Configure webhook endpoint
- Install on repositories you want to analyze
- Set secrets in Cloudflare Worker
See the GitHub Integration Guide for complete setup.
django>=4.0
requests>=2.25.0
fabric==1.14.0
numpy
- β django>=4.0: Current, well-maintained
- β requests>=2.25.0: Security update available (β 2.28.1)
β οΈ fabric==1.14.0: DEPRECATED β Usefabric2orinvoke- β numpy: Latest version resolved (1.24.3)
# Generated by Python Dependency Analyzer
# Python 3.11 compatible
# Generated on 2024-01-15
django==4.2.7
requests==2.28.1
# fabric==1.14.0 # DEPRECATED - consider fabric2 or invoke
numpy==1.24.3We welcome contributions! Please see our Development Guide for:
- Setup instructions
- Coding standards
- Testing guidelines
- Pull request process
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit changes (
git commit -m 'Add amazing feature') - Push to branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- π Documentation: Complete guides
- π Issues: GitHub Issues
- π¬ Discussions: GitHub Discussions
- π§ Contact: maintainers@example.com
- Cloudflare Workers for edge computing platform
- Vercel AI SDK for AI integration
- PyPI for package information
- React + TypeScript for modern web development
Built with β€οΈ using Cloudflare Workers, AI, and modern web technologies
π Try it now β’ π Read the docs β’ β Star on GitHub