π Automated Software Development with ChatDev 2.0 and GLM-5
Builder Agent v3 is an automated software development system that:
- Discovers project ideas from multiple sources (GitHub Trending, Security News, etc.)
- Develops projects using ChatDev 2.0 multi-agent collaboration
- Publishes completed projects to GitHub automatically
ββββββββββββββββββββ ββββββββββββββββ ββββββββββββββββ
β Topic Discoverer βββββΆβ ChatDev 2.0 βββββΆβ Git Publisherβ
ββββββββββββββββββββ ββββββββββββββββ ββββββββββββββββ
β β β
βΌ βΌ βΌ
- GitHub Trending - CEO - Repo Create
- CVE Database - CTO - File Upload
- Security News - Programmer - README
- arXiv - Reviewer - CI/CD
- Tester - Push
- CTO Final
- GitHub Trending analysis
- CVE database monitoring
- Security news aggregation
- Hacker News trends
- Predefined project pool
- CEO - Requirements analysis
- CTO - Architecture design
- Programmer - Code generation
- Reviewer - Code quality review
- Tester - Test generation
- CTO Final - Final verification
- GitHub repository creation
- README generation
- Requirements.txt
- .gitignore
- GitHub Actions CI/CD
cd /Users/nabang/Documents/OpenClaw/builder-agent-v3
# Install dependencies
pip install -r requirements.txt
# Configure environment
cp .env.example .env
# Edit .env with your API keys# ChatDev 2.0
CHATDEV_URL=http://localhost:6400
# GLM API
BASE_URL=https://api.z.ai/api/coding/paas/v4
API_KEY=your_glm_api_key
# GitHub
GITHUB_TOKEN=your_github_token
GITHUB_USERNAME=rebugui# Telegram Notifications
TELEGRAM_BOT_TOKEN=your_bot_token
TELEGRAM_CHAT_ID=your_chat_idpython main.py discover --limit 10python main.py develop \
--name my-tool \
--description "A useful CLI tool" \
--type cli_app# Run as daemon (continuous)
python main.py scheduler
# Run once (for testing)
python main.py scheduler --oncepython main.py checkBy default, Builder Agent v3 runs:
- Daily at 9:00 AM - Discovers and develops 1 project
- Weekdays at 10:00 AM - Additional weekday-only development
Edit config.yaml to customize the schedule.
security_tool- Security analysis toolsdevelopment_tool- Development utilitiesdata_analysis- Data analysis toolsautomation- Automation scriptscli_app- Command-line applicationsweb_app- Web applicationsapi_service- API serviceslibrary- Reusable libraries
-
Discovery (9:00 AM)
- Scan GitHub Trending, CVE DB, Security News
- Select top 5 project ideas
- Prioritize by relevance and difficulty
-
Development (9:30 AM)
- ChatDev 2.0 multi-agent collaboration
- CEO β CTO β Programmer β Reviewer β Tester β CTO Final
- ~30-60 minutes per project
-
Publishing (10:30 AM)
- Create GitHub repository
- Upload files
- Generate README
- Configure CI/CD
-
Notification (10:45 AM)
- Send Telegram notification with repo URL
Each generated project includes:
- β Complete Python code
- β Unit tests (pytest)
- β README.md
- β requirements.txt
- β .gitignore
- β GitHub Actions CI/CD
| Project | Description | URL |
|---|---|---|
| robots-scanner | robots.txt scanner for bulk domain analysis | github.com/rebugui/robots-scanner |
- Language: Python 3.9+
- AI Model: GLM-5 (Zhipu AI)
- Framework: ChatDev 2.0
- Scheduling: APScheduler
- GitHub API: PyGithub
- CLI: Click + Rich
builder-agent-v3/
βββ main.py # Main entry point
βββ requirements.txt # Python dependencies
βββ config.yaml # Configuration
βββ .env.example # Environment template
βββ discoverer/
β βββ topic_discoverer.py # Idea discovery
βββ orchestrator/
β βββ chatdev_client.py # ChatDev 2.0 integration
βββ publisher/
β βββ github_publisher.py # GitHub publishing
βββ scheduler/
β βββ scheduler.py # Job scheduling
βββ models/
β βββ idea.py # Data models
βββ logs/
βββ *.log # Log files
# Check logs
tail -f logs/builder_agent.log
# Check project history
cat logs/project_history.json
# Check discovered ideas
cat logs/discovered_ideas.jsoncd /Users/nabang/Documents/OpenClaw/chatdev-v2
python server_main.py --port 6400# Generate token at: https://github.com/settings/tokens
export GITHUB_TOKEN=ghp_xxxx# Check API key
echo $API_KEY
# Test API
curl -X POST https://api.z.ai/api/coding/paas/v4/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "glm-5", "messages": [{"role": "user", "content": "Hello"}]}'MIT License
Generated by Builder Agent v3
- ChatDev 2.0: https://github.com/OpenBMB/ChatDev
- GLM-5: https://www.zhipuai.cn
- Repository: https://github.com/rebugui