goose는 단일 에이전트에게 순차적으로 지시하는 방식뿐 아니라 여러 서브에이전트와 외부 ACP provider를 조율하는 오케스트레이션 흐름을 지원한다. 핵심은 복잡한 작업을 독립 가능한 단위로 분해하고, 읽기 작업은 병렬화하며, 쓰기 작업은 충돌이 나지 않도록 단계화하는 것이다.
오케스트레이션이 하는 일
오케스트레이션은 서브에이전트 위의 조율 계층이다.
| 계층 | 역할 |
|---|---|
| Subagents | 독립 작업 실행 |
| Async delegates | 백그라운드 실행과 결과 수집 |
| ACP providers | Claude Code, Codex, Amp 같은 외부 에이전트 연결 |
| Orchestration | 누가 무엇을 언제 할지 결정하고 결과를 합친다 |
예를 들어 코드베이스 이해 작업은 다음처럼 병렬화할 수 있다.
이 코드베이스를 이해해야 한다. 병렬로:
- 프로젝트 구조와 핵심 의존성 요약
- 주요 엔트리포인트와 데이터 흐름 식별
- TODO와 알려진 이슈 검색세 작업은 모두 읽기 중심이므로 동시에 실행해도 충돌이 적다.
단계형 워크플로
모든 작업을 병렬화할 수는 없다. 구현은 이전 조사 결과에 의존하고, 테스트는 구현 이후에 의미가 있다. Goose에는 자연어로 단계와 의존성을 적을 수 있다.
재고 시스템 REST API를 만든다.
1. 먼저 src/models와 src/routes 패턴을 동시에 조사한다.
2. 그 결과를 바탕으로 API route를 구현한다.
3. 마지막으로 통합 테스트와 보안 리뷰를 동시에 진행한다.이 구조에서 1단계와 3단계는 병렬화되고, 2단계는 1단계 결과를 기다린다.
ACP provider 혼합
Goose는 ACP provider를 통해 다른 코딩 에이전트에도 일을 맡길 수 있다.
Claude Code로 auth 모듈을 명확하게 리팩터링하고,
그다음 테스트를 작성한 뒤,
Codex로 API 문서를 생성한다.이 방식은 에이전트마다 강점이 다르거나, 조직이 이미 여러 도구를 쓰고 있을 때 유용하다. 단 provider 설정이 먼저 되어 있어야 한다.
실무 팁
- 읽기 작업은 적극적으로 병렬화한다.
- 같은 파일을 수정하는 쓰기 작업은 순차화한다.
- delegate는 부모 세션의 모든 맥락을 자동으로 공유하지 않는다고 보고, 필요한 제약을 명시한다.
- 처음부터 거대한 오케스트레이션을 만들기보다 독립적인 2~3개 작업으로 시작한다.
- 실패 시 병합 단계에서 무엇을 버리고 무엇을 재시도할지 기준을 적는다.
관련 문서
- goose — Linux Foundation 산하 오픈소스 범용 AI 에이전트
- subagent-tips-patterns-2026 — 서브에이전트 아키텍처 패턴
- coding-agent-tips-harness-comparison-2026 — 코딩 에이전트 하네스 비교
참고 자료
- Orchestrate Complex Workflows Across Multiple Agents with goose — Goose Docs (2026-05-05)