Builder Agent
개요
보안 도구와 DevOps 유틸리티를 자동으로 생성하는 개발 에이전트입니다. ChatDev 2.0의 7개 에이전트가 협업하여 요구사항 분석부터 배포까지 전 과정을 자동화합니다.
자가 수정 루프: 에러 발생 시 자동으로 수정 후 재시도 (최대 3회)
워크플로우
CODEBLOCK0
주요 기능
1. 아이디어 발굴 (Discovery)
- - GitHub Trending: 인기 프로젝트 분석
- CVE 데이터베이스: 최신 취약점 기반 도구
- Security News: 보안 뉴스 기반 유틸리티
- Notion 큐: 아이디어 자동 등록
2. ChatDev 2.0 개발 (Development)
7개 에이전트 협업:
| 에이전트 | 역할 | 담당 업무 |
|---|
| CEO | 최고경영자 | 요구사항 분석, 방향성 결정 |
| CPO |
최고제품책임자 | 제품 기획, 기능 정의 |
| CTO | 최고기술책임자 | 아키텍처 설계, 기술 스택 결정 |
| Programmer | 개발자 | 코드 생성, 구현 |
| Reviewer | 리뷰어 | 코드 리뷰, 품질 검증 |
| Tester | 테스터 | 테스트 코드 작성, 실행 |
| CTO Final | 최종검토자 | 최종 검증, 배포 승인 |
3. 자가 수정 루프 (Self-Correction)
CODEBLOCK1
4. GitHub 자동 배포 (Publishing)
- - 저장소 생성: 자동으로 GitHub 저장소 생성
- 코드 업로드: 완성된 코드 자동 푸시
- README 생성: 자동 문서화
- 릴리즈 생성: v1.0.0 자동 릴리즈
설치 방법
1. 저장소 클론
CODEBLOCK2
2. ChatDev 2.0 설정
CODEBLOCK3
3. 의존성 설치
CODEBLOCK4
4. 환경 변수 설정
CODEBLOCK5
INLINECODE0 파일 수정:
CODEBLOCK6
5. ChatDev 서버 시작
CODEBLOCK7
사용법
수동 실행
1. 아이디어 발굴
CODEBLOCK8
2. 개발 실행
CODEBLOCK9
3. 큐 모니터링
CODEBLOCK10
스케줄러 등록
OpenClaw 스케줄러에 등록하여 자동 실행:
CODEBLOCK11
설정 파일
config.yaml
CODEBLOCK12
파일 구조
CODEBLOCK13
Notion 데이터베이스 설정
아이디어 데이터베이스
- -
Title (제목) - INLINECODE3 (선택: Idea, Developing, Testing, Completed, Failed)
- INLINECODE4 (선택: High, Medium, Low)
- INLINECODE5 (선택: GitHub, CVE, News)
- INLINECODE6 (생성일)
- INLINECODE7 (URL)
예시 프로젝트
생성된 프로젝트들
- 1. secure_app - 보안 설정 자동화 도구
- cve-scanner-v2 - CVE 취약점 스캐너
- file-integrity-monitor - 파일 무결성 모니터링
프로젝트 구조
CODEBLOCK14
성공/실패 기록
성공한 프로젝트 (2026-02-22 ~ 2026-02-23)
- 1. secure_app ✅ (2026-02-22 18:08)
- cve-scanner-v2 ✅ (2026-02-23 12:17)
- cve-scanner-v6 ✅ (2026-02-23 13:41)
- cve-scanner-v7 ✅ (2026-02-23 13:46)
- cve-scanner-v8 ✅ (2026-02-23 14:10)
실패한 프로젝트
- 1. file-integrity-monitor ❌ - 테스트 실패
- cve-scanner-v3 ❌ - 테스트 실패
- cve-scanner-v5 ❌ - 테스트 실패
공통 문제: 테스트 코드가 구현 로직과 일치하지 않음 → 프롬프트 개선 필요
문제 해결
ChatDev 연결 실패
CODEBLOCK15
테스트 실패
CODEBLOCK16
GitHub 배포 실패
CODEBLOCK17
의존성
- - Python 3.11+
- ChatDev 2.0
- GLM-5 API
- GitHub Personal Access Token
- Notion API
라이선스
MIT License
참고
- - 저장소: https://github.com/rebugui/builder-agent
- ChatDev 2.0: https://github.com/OpenBMB/ChatDev
- 메인 저장소: https://github.com/rebugui/OpenClaw
Builder Agent
概述
自动生成安全工具和DevOps实用程序的开发代理。ChatDev 2.0的7个代理协同工作,实现从需求分析到部署的全流程自动化。
自我修正循环:发生错误时自动修正后重试(最多3次)
工作流程
创意发掘(GitHub Trending、CVE、安全新闻)
↓
Notion队列注册(创意数据库)
↓
ChatDev 2.0开发(7个代理协同)
├─ CEO:需求分析
├─ CPO:产品规划
├─ CTO:架构设计
├─ Programmer:代码生成
├─ Reviewer:代码审查
├─ Tester:测试生成
└─ CTO Final:最终验证
↓
自动测试执行
↓
发生错误?→ 修正 → 重试(最多3次)
↓
创建GitHub仓库并部署
主要功能
1. 创意发掘(Discovery)
- - GitHub Trending:分析热门项目
- CVE数据库:基于最新漏洞的工具
- 安全新闻:基于安全新闻的实用程序
- Notion队列:自动注册创意
2. ChatDev 2.0开发(Development)
7个代理协同:
| 代理 | 角色 | 负责任务 |
|---|
| CEO | 首席执行官 | 需求分析、方向决策 |
| CPO |
首席产品官 | 产品规划、功能定义 |
| CTO | 首席技术官 | 架构设计、技术栈决策 |
| Programmer | 开发者 | 代码生成、实现 |
| Reviewer | 审查者 | 代码审查、质量验证 |
| Tester | 测试者 | 测试代码编写、执行 |
| CTO Final | 最终审查者 | 最终验证、部署审批 |
3. 自我修正循环(Self-Correction)
测试执行
↓
发现错误
↓
错误分析 → 制定修正方案
↓
代码修正
↓
重新测试
↓
成功?→ 部署 / 失败?→ 重试(最多3次)
4. GitHub自动部署(Publishing)
- - 创建仓库:自动创建GitHub仓库
- 上传代码:自动推送完成的代码
- 生成README:自动文档化
- 创建发布:自动发布v1.0.0版本
安装方法
1. 克隆仓库
bash
git clone --recursive https://github.com/rebugui/OpenClaw.git
cd OpenClaw/submodules/builder-agent
2. 设置ChatDev 2.0
bash
cd ../chatdev-v2
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
3. 安装依赖
bash
cd ../builder-agent
pip install -r requirements.txt
4. 设置环境变量
bash
cp .env.example .env
修改.env文件:
bash
GLM API(智谱AI)
GLM
APIKEY=your
glmapi_key
GLM
BASEURL=https://api.z.ai/api/coding/paas/v4
GitHub
GITHUB
TOKEN=yourgithub_token
GITHUB
USERNAME=yourusername
Notion
NOTION
APIKEY=your
notionapi_key
NOTION
DATABASEID=your
databaseid
ChatDev
CHATDEV_URL=http://localhost:6400
5. 启动ChatDev服务器
bash
cd ../chatdev-v2
python server_main.py --port 6400
API: http://localhost:6400
使用方法
手动执行
1. 创意发掘
bash
python main.py discovery
2. 开发执行
bash
从Notion队列获取创意并开发
python main.py develop
开发特定项目
python main.py develop --project cve-scanner
3. 队列监控
bash
python queue_monitor.py
注册调度器
注册到OpenClaw调度器实现自动执行:
yaml
config.yaml
jobs:
# 创意发掘(每天08:00、20:00)
- id: builder_discovery
name: Builder Discovery - 每天上午8点/下午8点创意发掘
enabled: true
module: submodules.builder-agent.main
class: BuilderAgentV3
method: run_discovery
trigger:
type: cron
day
ofweek: mon-sun
hour: 8,20
minute: 0
# 开发队列处理(每6小时)
- id: builderqueueprocessor
name: Builder Queue Processor - 每6小时处理开发/改进队列
enabled: true
module: submodules.builder-agent.main
class: BuilderAgentV3
method: rundevelopmentfrom_notion
trigger:
type: interval
hours: 6
# 队列监控(每6小时)
- id: builderqueuemonitor
name: Builder Queue Monitor - 每6小时检查队列状态并通知
enabled: true
module: modules.builder.queue_monitor
function: main
trigger:
type: interval
hours: 6
配置文件
config.yaml
yaml
discovery:
sources:
- github_trending
- cve_database
- security_news
max_ideas: 5
keywords:
- vulnerability
- scanner
- automation
development:
max_retries: 3
test_timeout: 300
output_dir: ./projects
chatdev:
url: http://localhost:6400
model: glm-5
timeout: 1800
github:
auto_publish: true
private: false
license: MIT
文件结构
builder-agent/
├── main.py # 主执行文件
├── config.yaml # 配置文件
├── .env.example # 环境变量示例
├── requirements.txt # 依赖
│
├── discoverer/ # 创意发掘
│ ├── github_trending.py
│ ├── cve_analyzer.py
│ └── news_monitor.py
│
├── orchestrator/ # 开发编排
│ ├── chatdev_client.py
│ ├── test_runner.py
│ └── github_publisher.py
│
├── improvement/ # 改进系统
│ └── improvement_pipeline.py
│
├── models/ # 数据模型
│ └── project.py
│
└── logs/ # 日志
└── builder.log
Notion数据库设置
创意数据库
- - Title(标题)
- Status(选项:Idea、Developing、Testing、Completed、Failed)
- Priority(选项:High、Medium、Low)
- Source(选项:GitHub、CVE、News)
- Created(创建日期)
- Repository(URL)
示例项目
已生成的项目
- 1. secure_app - 安全设置自动化工具
- cve-scanner-v2 - CVE漏洞扫描器
- file-integrity-monitor - 文件完整性监控
项目结构
cve-scanner-v2/
├── README.md
├── requirements.txt
├── setup.py
├── src/
│ ├── init.py
│ ├── main.py
│ └── utils.py
└── tests/
├── init.py
└── test_main.py
成功/失败记录
成功的项目(2026-02-22 ~ 2026-02-23)
- 1. secure_app ✅(2026-02-22 18:08)
- cve-scanner-v2 ✅(2026-02-23 12:17)
- cve-scanner-v6 ✅(2026-02-23 13:41)
- cve-scanner-v7 ✅(2026-02-23 13:46)
- cve-scanner-v8 ✅(2026-02-23 14:10)
失败的项目
- 1. file-integrity-monitor ❌ - 测试失败
- cve-scanner-v3 ❌ - 测试失败
- cve-scanner-v5 ❌ - 测试失败
常见问题:测试代码与实现逻辑不一致 → 需要改进