코딩 에이전트 예시
examples/에 있는 세 가지 실행 가능한 예시 크레이트,
각각 실제 에이전트 (모의 객체 아님)로서 작업을 수행하고 생성된 코드를 실행하여 결과를 독립적으로 검증합니다. 모두 기본적으로 Gemini 3 모델을 사용합니다. 먼저 키를 설정하세요:
export GOOGLE_API_KEY=… # or GEMINI_API_KEY
# or: CODING_PROVIDER=openai OPENAI_API_KEY=…
coding_agent
네 가지 모드로 작동하는 하네스:
# Multi-language demo (Rust, Python, JavaScript) in a temp workspace:
cargo run --manifest-path examples/coding_agent/Cargo.toml
# Build a medium program over a persistent multi-turn session:
cargo run --manifest-path examples/coding_agent/Cargo.toml -- multiturn
# Scenario tour — increasing complexity, each independently verified:
cargo run --manifest-path examples/coding_agent/Cargo.toml -- tour
# A single task in your own directory:
cargo run --manifest-path examples/coding_agent/Cargo.toml -- ./some/dir "make tests pass"
- 데모 — 여러 언어에 걸친 일회성 작업 (
rustc/python3/node를 작성하고 실행합니다). - 투어 — 복잡도가 증가하는 다섯 가지 시나리오 (
hello→multifile→fixtest→debug→refactor), 각각 PASS/FAIL 요약으로 자체 검증됩니다. - 멀티턴 — 하나의 agent/runner/session이 다섯 턴에 걸쳐 Python
todoCLI를 성장시키고 (추가/목록 → 완료 → 제거 → 강력한 오류 → 테스트), 이전 작업을 기반으로 구축됩니다. 테스트 스위트를 실행하여 검증됩니다.
이것을 읽어보세요: CodingAgent 하네스, plan→act→observe 루프, 멀티턴 컨텍스트 유지.
coding_graph
adk-graph StateGraph로서의 초고속 검토 워크플로우:
구현 → 병렬 정확성/엣지 케이스/스타일 검토자 → 합성 (지연된 팬인) → 수정 루프 → 최종화.
cargo run --manifest-path examples/coding_graph/Cargo.toml
이것을 읽어보세요: 하나의 슈퍼 스텝에서 병렬 에이전트, add_deferred_node_fn 팬인,
조건부 순환 라우팅. 생성된 함수를 임포트하고 사양 + 엣지 케이스를 단언하여 검증합니다.
coding_goal
내구성 있는 체크포인트를 갖춘 자율 /goal 모드: 버그 있는 모듈 + 실패하는 테스트를 시드하고, python3 test_stats.py가 통과할 때까지 plan→act→verify를 반복하고, 지속된 체크포인트를 출력한 다음, 재개를 시연합니다 (완료된 목표는 아무 작업도 하지 않습니다).
cargo run --manifest-path examples/coding_goal/Cargo.toml
이것을 읽어보세요: 검증자-게이트 목표 루프, 원자적 목표 상태 체크포인트, 재시작 간 재개.
streaming_bash
**단일 EventStream**에서 LlmAgent의 도구 활동을 실시간으로 렌더링하는 웹 UI (Axum + WebSocket): 스트리밍 bash stdout/stderr와 일회성
read_file / grep / glob 결과가 각각 자체 카드로 표시됩니다.
cargo run --manifest-path examples/streaming_bash/Cargo.toml # web UI
cargo run --manifest-path examples/streaming_bash/Cargo.toml -- cli
이것을 읽어보세요: ToolContext::emit_progress 스트리밍, 그리고 UI가 모든 도구의 출력을 일반적으로 렌더링할 수 있도록 하는 일급
Event::tool_calls() / Event::tool_results() / event.tool_progress_stream() 접근자.
Streaming Tool Progress를 참조하세요.
제안된 경로
coding_agent(tour) — 복잡도가 증가하는 작업을 하네스가 해결하는 것을 보세요.coding_agent(multiturn) — 세션 동안 프로그램이 구축되는 것을 지켜보세요.coding_goal— 자율적이고 검증자-게이트 방식의 내구성 있는 목표 모드.coding_graph— 병렬 초고속 검토 오케스트레이션.
CLI (code / goal / ultracode)는 이러한 패턴을 일급 명령으로 패키징합니다.
← 코딩 에이전트 개요로 돌아가기