AI VIDEO BRIEFING

GitHub Copilot fleet — AI 에이전트 5개 병렬 리팩터링 실전기

GitHub Copilot의 fleet 명령으로 서브 에이전트 5개를 동시에 돌려 레거시 코드를 마이그레이션하는 방법과, 충돌을 막는 계획·권한·드라이런 전략을 정리했습니다.

GitHub Copilot의 /fleet로 AI 에이전트 5개를 병렬 실행해 대규모 리팩터링하기 영상 대표 이미지

핵심 메시지

  • Copilot의 fleet 명령은 터미널에서 여러 서브 에이전트를 병렬로 오케스트레이션해 대규모 리팩터링을 수행한다.
  • 에이전트를 풀어놓기 전에 plan.md로 컴포넌트와 에이전트의 경계를 명확히 나눠야 충돌과 병합 갈등을 막을 수 있다.
  • fleet의 진짜 장점은 속도가 아니라 "컨텍스트 위생"이다. 각 서브 에이전트는 중간 기록을 버리고 최종 diff만 돌려준다.
  • 오케스트레이터는 자동 병합을 강요하지 않고 격리된 diff와 별도 브랜치를 넘겨주어 개발자가 검토 후 안전하게 병합한다.

쉽게 이해하기

영상은 하나의 명령으로 다섯 개의 터미널 인스턴스가 떠서 50개의 레거시 Angular 컴포넌트를 Next.js 15로 옮기는 장면으로 시작한다. 일반적인 단일 에이전트는 실제 운영 애플리케이션을 리팩터링할 때 너무 많은 파일을 읽다가 컨텍스트 윈도가 흔들리며 무너지는데, 새로운 Copilot fleet 명령이 이를 막아준다.

핵심은 에이전트를 풀기 전에 "지도"를 그리는 것이다. 그냥 fleet를 입력하고 엔터를 치면 에이전트들이 서로 충돌하고 덮어쓴다. 먼저 plan.md를 만들어 한 컴포넌트를 한 서브 에이전트에 매핑하되, "컴포넌트를 업데이트하라" 같은 모호한 지시 대신 1번 에이전트는 인증, 2번 에이전트는 내비게이션 사이드바처럼 파일 경계를 명시해야 나중의 병합 갈등을 막을 수 있다.

컨텍스트 붕괴는 화이트보드에 비유된다. 일반 채팅에서는 파일을 읽을 때마다 새 그림이 더해져 곧 알아볼 수 없게 되지만, fleet는 각 서브 에이전트에게 빈 화이트보드를 주어 작은 문제만 풀고 보드를 지운 뒤 최종 코드만 건네게 한다. 또 agent.md로 에이전트별 도구 사용을 제한할 수 있어, 프런트엔드 에이전트가 실수로 DB 마이그레이션을 돌리지 못하도록 읽기 전용 권한을 줘 연쇄적 장애를 예방한다.

절대 fleet를 맹목적으로 실행하지 말고 먼저 드라이런 플래그를 쓴다. 드라이런은 코드를 쓰지 않고 오케스트레이션을 시뮬레이션해 마크다운 문법을 검증하고 파일 경로가 실제로 존재하는지 확인하므로 오타로 API 호출을 낭비하지 않는다.

실제 실행 시 작업 대시보드에는 다섯 개의 진행 바가 뜨고, 각 에이전트가 지금 읽는 파일과 스레드별 토큰 소비량이 보인다. 한 에이전트가 빠진 의존성을 가져오려다 실패해 빨갛게 변해도 나머지는 정상 동작하며, 실패가 격리된 채 해당 에이전트가 오류를 읽고 재시도해 다시 초록으로 바뀐다.

주요 인사이트

  • 사람들이 fleet를 속도 도구로 오해하지만 본질은 컨텍스트 위생이다. 영상에 따르면 2026년 4월 GitHub 엔지니어링 블로그는 서브 에이전트가 중간 기록을 버리고 최종 diff만 반환해 컨텍스트 비대화를 없애고 대규모 리팩터링의 전체 토큰 소비를 크게 줄인다고 밝혔다.
  • git status를 실행하면 새 로컬 브랜치 다섯 개가 보인다. 오케스트레이터는 main 브랜치에 지저분한 자동 병합을 강요하지 않고 격리된 diff를 넘겨, 개발자가 하나씩 로직을 검토하고 안전하게 병합하도록 통제권을 남긴다.
  • 개발 서버를 띄우고 테스트 스위트를 돌리면 50개의 레거시 파일이 모두 Next.js 15에서 정상 컴파일된다. 몇 주가 걸리던 수작업이 약 10분의 오케스트레이션으로 대체된다.
  • 에이전트를 다루는 사람은 더 이상 코드를 직접 짜는 사람이 아니라 팀을 관리하는 시니어 아키텍트의 역할을 맡게 된다.

자주 묻는 질문

fleet를 실행하기 전에 왜 plan.md가 필요한가요?

계획 없이 fleet를 실행하면 에이전트들이 서로 충돌하며 같은 파일을 덮어씁니다. plan.md로 한 컴포넌트를 한 에이전트에 명시적으로 매핑해 파일 경계를 나누면 병합 갈등을 막을 수 있습니다.

한 에이전트가 실패하면 전체 작업이 멈추나요?

아닙니다. 일반 채팅 세션에서는 실패가 전체 프로세스를 중단시키지만, fleet에서는 실패가 격리되어 나머지 에이전트는 계속 동작하고, 실패한 에이전트는 오류를 읽고 재시도합니다.

fleet의 핵심 이점은 속도인가요?

영상은 핵심이 속도가 아니라 컨텍스트 위생이라고 강조합니다. 서브 에이전트가 중간 기록을 버리고 최종 diff만 반환해 컨텍스트 비대화를 없애고 토큰 소비를 줄입니다.

원문과 출처

이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.

YouTube 원본 영상 보기 ↗

관련 AI 소식

#GitHubCopilot#AI에이전트#리팩터링#NextJS#개발생산성