Microsoft Research가 여러 코딩 에이전트를 한 팀으로 묶는 하네스 Agensh를 오픈소스로 공개했다. 작업을 나누고 합치는 중앙 지휘 에이전트를 두지 않고, 각 에이전트가 할 일을 스스로 고르고 결과를 공용 Git 저장소에 병합하는 구조다.
코드는 MIT 라이선스로 풀렸고 Linux에서 Docker Compose로 돌린다. 기본 설정은 단일 노드에 작업자 8개이며, 실험에서는 GitHub Copilot CLI 위에 얹어 에이전트를 1개부터 1,024개까지 늘려 가며 성능을 쟀다. Microsoft Research는 토큰 비용을 밝히지 않았다.1
지휘자 없이 도는 5단계 루프
기존 멀티 에이전트 방식은 대개 리드 에이전트가 계획을 세우고 일을 배분하고 결과를 합친다. Agensh 논문은 이런 구조의 예로 Claude Code의 에이전트 팀, Codex 서브 에이전트, Copilot fleet, Kimi Agent Swarm을 들었고, Agensh는 이 조율을 작업자들이 직접 맡게 한다.
작업자는 모두 같은 5단계 루프를 동시에, 비동기로 돈다. 먼저 목표와 동료의 진행 상황, 메시지, 발견한 내용을 읽는다. 다음으로 하위 작업을 맡겠다는 CLAIM을 올리고, 겹치면 직접 메시지로 정리한다. 이어 도구로 로컬에서 작업하며 쓸 만한 발견을 일찍 공유하고, 하위 작업의 인수 기준에 맞는지 검증한 뒤, 공유 저장소에 병합하고 진행 상황을 올리고 처음으로 돌아간다.
작업자를 잇는 서비스는 셋이다. Gitea가 브랜치, PR, 병합 충돌을 다루는 공유 작업 공간을 맡고, Mattermost는 팀 채널과 급한 충돌용 개인 메시지를 담당한다. DeLM에서 가져와 고친 공유 컨텍스트 보드에는 OBSERVED, FACT, FAIL, CLAIM, PATCH_SUMMARY 같은 유형별 메모가 쌓인다.
이 루프는 실행 코드가 아니라 프롬프트에 들어 있다. 모든 작업자는 ID만 다르고 프롬프트는 같다. Agensh는 단일 에이전트 하네스 위에 얹는 방식이며, 논문은 얇은 어댑터로 Claude Code 같은 다른 하네스도 연결할 수 있다고 밝혔다.1
ProgramBench 결과
Microsoft 연구팀은 ProgramBench에서 가장 어려운 5개 과제인 FFmpeg, gromacs, pandoc, PHP-src, ctags를 골랐다. 에이전트는 프로그램의 관찰된 동작만 보고 오프라인에서 6시간 안에 그 프로그램을 다시 만든다. 기준 저장소의 파일 수는 pandoc 2,767개부터 PHP-src 26,266개까지 다양하다.
GPT-5.6-sol을 추론 강도 high로 쓴 5개 과제 평균 최종 테스트 통과율은 에이전트 1개일 때 19.31%, 8개일 때 20.68%, 32개일 때 26.52%, 128개일 때 28.78%였다. 1개에서 128개로 9.47%포인트, 상대적으로 약 49% 올랐다. 1개에서 8개로 늘렸을 때 오른 폭은 1.37%포인트에 그쳤다.
pandoc 한 과제만 보면 1개 33.89%, 8개 41.75%, 32개 43.11%, 128개 50.94%, 1,024개 55.06%였다. 속도도 빨라져, 128개 에이전트는 30분 시점에 통과율 30%를 넘겼고 32개와 8개는 각각 60분, 90분이 걸렸다. 소개 글은 에이전트를 늘리자 5개 과제 모두에서 점수가 오르고 그 점수에 더 일찍 닿았다고 정리했다.
저장소 README에는 더 새로운 모델의 수치도 있다. GPT-6.1-sol로 pandoc을 돌리면 에이전트 1개일 때 56.19%에서 32개일 때 79.59%로, 상대적으로 41.64% 올랐다. 소개 글은 이 79.59%를 이번 실험의 최고 기록으로 꼽았고, 이 수치는 논문 v1에는 없다.1
규모별로 나타난 협업 방식
연구팀이 규모별 작업 기록을 추적한 결과는 다음과 같다. 역할은 어느 것도 코드로 정해 두지 않았다.
- 8개: 동료끼리 인터페이스에 합의하고 겹친 작업을 스스로 정리했다.
- 32개: 동료가 공유 작업을 서로 검토했고, 반례가 나오자 승인 하나가 철회됐다.
- 128개: 믿을 만한 검토자를 다시 찾아 쓰고 통합 절차를 표준화했다.
- 1,024개: 여러 작업자가 통합 담당으로 움직였고, 실패한 작업은 동료가 복구했다.1
다른 하네스와의 차이, 실행 조건
Claude Code 문서에 따르면 에이전트 팀에서는 팀원이 작업 목록을 공유하고 일을 직접 맡으며 서로 메시지를 주고받는다. 팀을 만들고 조율하는 주체는 메인 세션인 리드다. 이 기능은 실험 단계라 환경 변수 CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS를 1로 설정해야 켜진다. 팀원마다 별도 Claude 인스턴스가 돌아 서브 에이전트보다 토큰 비용이 높고, 세션당 팀은 하나이며 팀원이 또 다른 팀원을 만들 수도 없다.2
| 항목 | Agensh | Claude Code 에이전트 팀 | Kimi Agent Swarm | Copilot CLI /fleet |
|---|---|---|---|---|
| 조율 방식 | 오케스트레이터 없음, 동료가 작업 선점 | 고정된 리드 세션이 팀원 조율 | 오케스트레이터가 작업 분해 | Copilot이 서브 에이전트에 분배 |
| 에이전트 규모 | 1,024개 시험 | 상한 없음, 3~5개 권장 | 서브 에이전트 최대 100개 | 공개 안 됨 |
| 공유 상태 | Gitea 저장소와 공유 컨텍스트 보드 | 파일 잠금이 있는 공유 작업 목록 | 공개 안 됨 | plan 모드의 계획 |
| 메시지 | Mattermost 채널과 개인 메시지 | 팀원 간 메일함 메시지 | 공개 안 됨 | 공개 안 됨 |
| 모델 | 모델 무관, GPT-5.6-sol과 GPT-6.1-sol로 시험 | Claude 모델 | Kimi K2.5 | 공개 안 됨 |
| 속도 주장 | pandoc 30% 도달 30분(128개) | 공개 안 됨 | Kimi 측 자체 보고: 순차 실행보다 4.5배 빠름 | 공개 안 됨 |
| 제공 형태 | 오픈소스, MIT | Claude Code 내 실험 기능, 기본 꺼짐 | 최상위 구독자 대상 연구 프리뷰 | Copilot CLI에 포함 |
실행하려면 Docker Engine, Compose v2, systemd, cgroup v2, Python 3.11 이상이 깔린 Linux가 필요하다. 릴리스에는 단일 노드 Docker Compose 팀과 단일 에이전트 기준선이 들어 있고, 둘 다 Copilot의 네이티브 ACP 세션을 쓴다. 기본값은 작업자 8개, 작업당 6시간, 추론 강도 high의 gpt-5.6-sol이다. ProgramBench(v1.2.5로 검증)와 모델 API 토큰도 있어야 하며, 자세한 절차는 재현 가이드에 있다.
자원 조건도 있다. 작업자마다 입력 272,000토큰, 출력 128,000토큰 한도가 있고 메모리 상한은 64 GiB다. 1,024개 실험은 노드 16대에 에이전트를 64개씩 나눠 돌렸다.1
출처
- Microsoft Open-Sources Agensh: A Multi-Agent Harness for 1,024 Agents marktechpost.com
- Orchestrate teams of Claude Code sessions - Claude Code Docs code.claude.com