Run multiple agents at once with /fleet in Copilot CLI

개요

Copilot CLI의 /fleet 기능은 여러 서브 에이전트가 병렬로 동시에 작업할 수 있도록 하여, 복잡한 작업을 여러 파일이나 코드베이스의 다른 부분에 분산시켜 효율적으로 처리할 수 있게 합니다.

주요 내용

* /fleet은 GitHub Copilot CLI의 슬래시 명령어(slash command)로, 단일 작업 대신 여러 개의 하위 에이전트를 병렬로 실행하여 작업을 분해하고 동시에 처리한다.
* /fleet 명령어 사용 시, 내부 오케스트레이터가 작업을 분리 가능한 작업 항목으로 분해하고, 의존성을 파악하며, 병렬 실행 가능한 항목과 순차 실행이 필요한 항목을 식별하여 동시에 여러 에이전트에게 작업을 할당한다.
* 효과적인 /fleet 프롬프트 작성을 위해 작업 항목을 파일, 테스트 스위트, 문서 섹션과 같은 구체적인 결과물로 명시하고, 파일 또는 모듈 경계, 제약 조건, 검증 기준을 명확히 설정하는 것이 중요하다.
* 작업 간 의존성이 존재하는 경우 프롬프트에 명시해야 하며, 오케스트레이터는 이를 바탕으로 작업을 순차적으로 실행하고 나머지 작업을 병렬로 처리한다.
* .github/agents/ 디렉토리에 사용자 정의 에이전트를 정의하고 프롬프트에서 참조하여 특정 작업에 맞춤화된 모델, 도구, 지침을 사용할 수 있다.
* 하위 에이전트가 동일한 파일을 덮어쓰는 것을 방지하기 위해 프롬프트에서 각 에이전트에 고유한 파일 할당 또는 임시 경로 사용, 순서 명시 등의 방법을 사용해야 한다.
* 하위 에이전트는 독립적인 컨텍스트 창을 가지지만 파일 시스템을 공유하며, 직접적인 통신 없이 오케스트레이터를 통해서만 조율된다.
* /fleet은 여러 파일에 걸친 리팩토링, 다수의 컴포넌트 동시 문서화, API/UI/테스트에 걸친 기능 구현, 독립적인 코드 수정 등에 효과적이며, 선형적이거나 단일 파일 작업에는 일반 Copilot CLI 프롬프트가 더 적합하다.
* 진행 중인 플릿 작업을 안내하기 위해 작업 우선순위 변경, 현재 활성 에이전트 목록 및 작업 내용 확인, 완료 조건 명시 등의 후속 프롬프트를 사용할 수 있다.

시사점

/fleet은 Copilot CLI의 작업을 병렬화하여 복잡하고 여러 파일에 걸친 개발 작업을 크게 가속화하며, 프롬프트 엔지니어링을 통해 최적의 분산 및 협업을 이끌어낼 수 있는 강력한 기능을 제공한다.

원문 읽기 →
원문을 불러오는 중...

댓글

GitHub Discussions