Circuit은 다단계 Claude Code 및 OpenAI Codex 에이전트 (agents)를 오케스트레이션하기 위한 드래그 앤 드롭 (drag-and-drop) 워크플로 디자이너 및 실행 엔진 (execution engine)입니다. 실시간 스트리밍 (real-time streaming), 노드 간 참조 보간 (reference interpolation), 유연한 제어 흐름 (control flow)을 통해 다단계 워크플로를 실행할 수 있습니다.
시각적 워크플로 에디터 (Visual Workflow Editor)
-
에이전트 워크플로 구축을 위한 드래그 앤 드롭 인터페이스
멀티 에이전트 지원 (Multi-Agent Support)
-
Claude Code 및 OpenAI Codex 에이전트 노드
제어 흐름 (Control Flow)
-
분기 로직을 위한 조건 (Condition) 및 병합 (merge) 노드
워크플로 지속성 (Workflow Persistence)
-
워크플로를 YAML로 저장 및 로드하여 워크플로를 vibe code 할 수 있음
-
Node.js 18+
에이전트 노드를 사용하려면 각 제공업체(provider)와 인증해야 합니다:
옵션 1: 환경 변수 (Environment Variables)
export ANTHROPIC_API_KEY=your-anthropic-key # Claude 에이전트 노드용
export OPENAI_API_KEY=your-openai-key # Codex 에이전트 노드용
옵션 2: OAuth 로그인 (OAuth Login)
워크플로가 실행될 머신의 Claude Code/Codex CLI에서 OAuth를 통해 로그인하십시오.
# 저장소 클론 (Clone the repository)
git clone https://github.com/smogili1/circuit.git
cd circuit
...
# 개발 서버 시작 (권장)
make dev-start
# 로그 확인
...
앱은 http://localhost:3001 에서 실행됩니다.
npm run dev
# docker-compose를 이용한 빠른 시작
docker-compose up -d
# 또는 수동으로 빌드 및 실행
...
데이터는 circuit-data 볼륨 (컨테이너 내 /app/data)에 지속됩니다.
실행하기 전에 API 키를 환경 변수로 설정하십시오:
export ANTHROPIC_API_KEY=your-key
export OPENAI_API_KEY=your-key
docker-compose up -d
또는 docker run으로 직접 전달하십시오:
docker run -d -p 3001:3001 \
-v circuit-data:/app/data \
-e ANTHROPIC_API_KEY=your-key \
...
| 명령 (Command) | 설명 (Description) |
|---|
make dev-start | 핫 리로드 (hot reload)와 함께 백그라운드에서 서버 시작 |
make dev-stop | 백그라운드 서버 중지 |
make logs | 서버 로그 추적 (Tail) |
make test | 모든 테스트 실행 |
make build | 프로덕션 (production)용 빌드 |
circuit/
├── backend/ # Node.js + Express + Socket.io
│ └── src/
...
| 유형 (Type) | 설명 (Description) |
|---|
| Input | 초기 데이터가 포함된 시작점 |
| Claude Agent | 도구 (Tools)를 사용한 Claude Code 실행 |
| Codex Agent | OpenAI Codex 실행 |
| Condition | 표현식 (Expression)에 기반한 분기 |
| Merge | 여러 분기 결합 |
| Output | 워크플로 (Workflow) 결과 |
노드 (Nodes)는 상위 노드 (Upstream nodes)의 출력값을 참조할 수 있습니다:
{{PlanAgent.result}} # 전체 결과
{{DataFetcher.output.items}} # 중첩된 경로 (Nested path)
{{Analyzer.transcript}} # 에이전트 기록 (Agent transcript)
GET /api/workflows
-
모든 워크플로 목록 조회
POST /api/workflows
-
워크플로 생성
GET /api/workflows/:id
-
워크플로 조회
PUT /api/workflows/:id
-
워크플로 수정
DELETE /api/workflows/:id
-
워크플로 삭제
클라이언트에서 서버로 (Client to Server):
save-workflow
-
워크플로 변경 사항 저장
control
-
실행 시작/중단/재개
서버에서 클라이언트로 (Server to Client):
workflows
# 모든 테스트 실행
make test
# 백엔드 (Backend) 전용
...
Apache 2.0