nac — 긴 작업에서도 원래 목표를 잃지 않게 해주는 AI 에이전트 하네스
목차
AI 에이전트에게 큰일을 맡겨본 적 있나요? 처음엔 잘 나가다가, 어느 순간 원래 목표와는 다른 방향으로 열심히 일하고 있는 걸 발견하게 됩니다. Arcee가 만든 nac은 바로 그 문제를 구조로 해결하려는 도구입니다.
이게 뭐에요?
nac은 오래 걸리고 야심 찬 작업을 AI 에이전트에게 맡기기 위한 오픈소스 하네스입니다. 실험 돌리기, 학습 실행 감독하기, 인프라 작업, 빠른 프로토타이핑처럼 한 번에 몇 시간, 길게는 며칠씩 이어지는 일을 원래 의도에서 벗어나지 않게 굴리는 게 목표입니다. 핵심은 스레드-에피소드(thread-and-episode) 구조입니다. 중앙의 오케스트레이터가 일을 계획하고 쪼개지만, 명령을 실행하거나 파일을 직접 고치지는 못합니다. 오케스트레이터가 할 수 있는 유일한 행동은 스레드를 실행시키는 것뿐이고, 스레드 안의 워커가 실제 작업을 마친 뒤에는 에피소드라는 구조화된 요약을 남깁니다. 이 아이디어는 Random Labs의 Slate에서 가져왔고, nanocode와 pi에서도 영감을 받았습니다.
뭐가 재밌어요?
- 계획하는 쪽과 실행하는 쪽이 완전히 분리됩니다: 오케스트레이터는 "무엇을 할지"만 정하고, "어떻게 할지"는 스레드의 워커에게 맡깁니다. 오케스트레이터가 직접 손을 대지 못하게 막아두니, 계획이 실행 중에 오염될 여지가 줄어듭니다.
- 컨텍스트 로트(context rot)에 대한 답입니다: 긴 작업에서 조사 과정, 도구 출력, 시행착오, 계획 변경이 하나의 대화 기록에 계속 쌓이면 모델 성능이 떨어지고, 중요한 맥락이 묻힙니다. nac은 "행동에 필요한 임시 맥락"과 "작업을 이어가기 위한 지속 상태"를 분리합니다. 워커의 실행 맥락은 작업이 끝나면 버리고, 에피소드만 스레드에 남깁니다.
- 스레드 위빙(thread weaving)으로 일을 엮습니다: 새 워커를 띄울 때 다른 스레드의 최신 에피소드를 맥락으로 가져올 수 있습니다. 같은 묶음 안의 스레드 호출은 의존성 그래프로 엮여, 독립적인 일은 병렬로 돌고 의존하는 일은 순서대로 실행됩니다. 순환 의존성이 생기면 시작 전에 거부됩니다.
- 긴 작업에 특화된 쓰임새가 분명합니다: 논문의 머신러닝 실험을 정해진 결과까지 재현하거나, 큰 코드베이스를 언어를 바꿔 포팅하면서 동작을 유지하는 일처럼, 목표가 크고 쪼갤 수 있으며 완료 기준이 명확한 작업에 잘 맞습니다. 코드 리뷰를 잘게 나눠 합치거나, 같은 코드를 여러 번 리뷰하는 best-of-N 패턴에도 쓸 수 있습니다.
- MCP로 바깥 에이전트와 연결됩니다: Claude Code나 Codex 같은 에이전트가 MCP를 통해 nac 작업을 지시하고, 들여다보고, 조종할 수 있습니다. 사람과 대화하는 빠른 루프는 그대로 두고, 무거운 일은 nac의 느린 루프가 백그라운드에서 돌리는 식입니다. MCP 서버 자체는 파일이나 셸 도구를 노출하지 않습니다.
- 대시보드가 딸려 옵니다: 설치 스크립트 한 줄로 설치한 뒤 nac-web을 실행하면 브라우저 대시보드(기본 주소 127.0.0.1:3210)가 뜹니다. 모델은 Arcee 계정 로그인, ChatGPT Codex 계정 OAuth, 또는 OpenAI 호환 API 키 중 하나로 연결합니다.
지금 상태는?
저장소는 2026년 3월 28일에 만들어졌고, 확인 시점(2026-11-13) 기준 GitHub 스타 약 300개, 포크 32개, 커밋 890개, 릴리스 11개입니다. Rust로 만들어졌고 라이선스는 Apache-2.0입니다. Arcee가 자기들 내부 작업용으로 만들어 공개한 프로젝트라, 아직은 빠르게 다듬어지는 단계입니다. 작은 변경 한 번이면 굳이 nac을 거칠 필요가 없다는 점도 블로그 글에 솔직히 적혀 있습니다. 일이 쪼개지고, 오래 가고, 완료 기준이 분명할 때 비로소 이 구조가 값을 합니다.
한 줄 평: "에이전트에게 일을 맡길 때 제일 무서운 건 일을 잘못 이해한 채 열심히 하는 것인데, nac은 그걸 구조로 막아보려는 시도."
링크 모음
- GitHub: https://github.com/arcee-ai/nac
- 공식 블로그 글: https://arcee.ai/blog/nac
댓글 0
아직 댓글이 없어요. 첫 댓글을 남겨 주세요.
댓글 남기기
댓글 입력창은 Blogger(Google)가 제공해요.

