저의 네 명의 Claude Code 에이전트가 뉴스레터를 운영합니다. 제가 이들이 기억을 잃지 않게 하는 방법입니다.
요약
글쓴이는 네 명의 Claude Code 에이전트를 활용하여 뉴스레터 운영 등 복잡한 업무를 처리하는 시스템을 구축했습니다. 핵심은 장기간 작업 시 발생하는 컨텍스트 손실 문제를 해결하는 것입니다. 이를 위해 'Managed Auto-Refresh' 기능을 도입하여, 컨텍스트 임계치 도달 시 버전 관리 가능한 체크포인트(캡슐)를 생성하고 작업을 지속시키는 방법을 제시합니다.
핵심 포인트
- 에이전트가 장기간 작업 중 컨텍스트 손실 없이 일관성을 유지하는 것이 핵심 과제입니다.
- 'Managed Auto-Refresh'는 컨텍스트 임계치(기본 80%) 도달 시 작동합니다.
- 체크포인트 파일인 '캡슐'을 생성하여 Git으로 버전 관리가 가능합니다.
- 에이전트는 특정 응답(`Capsule Complete, Ready For Clear`)으로 확인 과정을 거칩니다.
저는 Will입니다. 저는 작은 사업체를 운영하고 있으며, 일상 업무 대부분은 네 명의 Claude Code 에이전트들, 즉 Titus, Pheme, Davinci, 그리고 Metis가 처리합니다. 이들은 제가 구축한 오픈 소스 하네스인 aigent-os에서 작동하며, v1.1.0 버전이 오늘(2026-10-25) 안정화된 Managed Auto-Refresh 기능과 함께 출시되었습니다.

(이 GIF는 화면 녹화가 아닌 일러스트레이션입니다.)
한 이슈의 시작부터 끝까지
작업 게시판 (job board)에서 시작됩니다. Metis가 작업 게시판에 작업을 할당합니다. 다른 에이전트들이 이를 가져가서 실행합니다. 아무도 제가 프롬프트를 입력하여 하루를 진행시키기를 기다리지 않습니다.
주요 저장소 (featured repo). 각 이슈에는 그날의 주요 저장소가 있습니다. 이 하나가 모든 다운스트림 작업을 구동시킵니다.
저의 승인 (sign-off). 제가 승인하기 전까지는 아무것도 완료되지 않습니다. 이것은 확고한 규칙입니다. 에이전트들이 거래나 캠페인에 대한 실무 작업(legwork)을 할 수는 있지만, '예'라고 말하는 사람은 저입니다. 제 승인 앞에는 또 다른 검토 과정도 있습니다. Pheme가 이슈가 스케줄링되기 전에 부정확성 등을 매일 포착합니다.
같은 에이전트들은 교육 코스도 만듭니다. 사용자의 Claude나 ChatGPT 앱에서 네이티브로 실행되는 맞춤형 AI 코스입니다.
실제 어려운 문제
위의 어떤 작업 자체도 단독으로 어렵지는 않습니다. 어려운 부분은 네 명의 에이전트들이 컨텍스트를 잃지 않고 몇 주 동안 일관성을 유지하도록 하는 것입니다.
Claude Code는 창(window)이 가득 찼을 때 두 가지 내장 옵션을 제공합니다. Compaction은 대화를 요약하고 계속 진행하게 합니다. 주요 작업은 보통 살아남지만, “이 파일이 생성되었으니 템플릿을 수정해라”와 같은 작은 결정들은 누락될 수 있으며, 나중에 에이전트가 이미 거부된 작업을 수행할 수도 있습니다. /clear는 깨끗한 창을 제공하고 모든 것을 잊게 만들므로, 사용자가 직접 재브리핑(re-brief)해야 합니다.
저는 세 번째 방법을 원했습니다: 중요한 내용을 기록하고, 지우고, 다시 시작하는 것입니다.
Managed Auto-Refresh 작동 방식
- 컨텍스트 임계값(Context threshold, 기본 80%)에 도달하면 러너(runner)는 에이전트에게 '캡슐(capsule)'을 작성하도록 요청합니다. 캡슐은 git에 저장되는 체크포인트 파일이기 때문에 버전 관리가 가능하며 diff를 하거나 롤백할 수 있습니다.
- 에이전트는 자신의 텍스트 내에서 정확히 한 줄, 즉
Capsule Complete, Ready For Clear로 응답해야 합니다. 단순히 이 구문을 언급하는 문장이나 사고 블록(thinking blocks), 도구 입력(tool inputs)은 모두 카운트되지 않습니다. - 이 확인(ack)이 이루어진 후에야 러너는
/clear명령을 전송합니다. - 이후 러너는 새 세션이 시작되었음을 증명하는
SessionStart훅 수신(hook receipt)을 기다립니다. 단순히/clear를 입력하는 것은 증거로 간주되지 않습니다. - 새로운 세션은 하나의 재개 프롬프트(resume prompt)를 받고 캡슐부터 작업을 이어갑니다.
제가 가장 중요하게 생각하는 규칙은 '최대 한 번'입니다. 확인(ack) 한 번은 최대 한 번의 clear를 보장하며, 확인은 자신의 사이클에 대해서만 카운트됩니다. 만약 상황이 모호해지면, 예를 들어 운영자 입력이 준비된 clear를 방해할 경우, 러너는 눈에 보이는 알림과 함께 HOLD:clear-stalled-after-ack 상태에서 멈춥니다. 재시도하지 않습니다. 더블 클리어(double clear)나 절반만 진행된 세션은 멈추고 저에게 질문하는 것보다 나쁩니다.
캡슐은 명령을 내리지 않는다
재개 시, 캡슐은 참조용일 뿐입니다. 이는 새 세션에 데이터로 표시되며, 충돌이 발생할 경우 실시간 상태(live state)가 우선합니다. 캡슐은 단계를 추가하거나 목표를 변경할 수 없습니다.
작성자가 무언가가 보류 중인지 알 수 없는 경우, 해당 필드는 Unknown으로 작성됩니다. 빈 필드는 '보류된 것이 없다'는 의미로 해석되는데, 이는 거짓말입니다. Unknown은 다음 세션이 확인하도록 만듭니다.
메모리 및 온보딩
장기 기억(Long-term memory)은 에이전트별 볼트(per-agent vaults)에 존재하므로, Titus의 노트가 Pheme의 노트와는 다릅니다. 첫 실행 시 aigent-os는 사용자에게 인터뷰를 진행합니다: 세 가지 일반 질문 후, 최초 계획을 수립하는 식입니다. 이것으로 끝납니다.
여전히 약한 부분
이것을 이슈(issues)에서 찾는 것보다 여기서 읽어주시면 좋겠습니다.
- 증거(Evidence)는 단일 좌석 기반입니다. 공개된 결과는 하나의 Windows 좌석에서 11회 중 11회의 새로 고침 주기(refresh cycles)를 기준으로 합니다. 이는 플릿(fleet)이나 신뢰성 주장이 아니며, 새로 고침이 압축(compaction)보다 우수하다는 주장도 하고 있지 않습니다.
- 실행기(runner)가 여전히 권한 대화 상자를 놓치고 응답할 수 있습니다 (#104). 가드(guard) 기능은 존재하지만, Claude Code가 스크립트를 늦게 작성하기 때문에 실제 실행 4회 중 1회에서 이를 놓쳤습니다. 자동 입력(Automatic input)은 기본적으로 비활성화되어 있습니다. 권한 프롬프트에 직면할 수 있는 좌석에는 이 기능을 켜지 말고, 새로 고침 주기 동안 해당 좌석을 주의 깊게 관찰하십시오.
- 다른 Claude Code 세션 내부에서 좌석을 실행하면 스크립트(transcript)를 잃을 수 있습니다 (#98). 당분간은 일반 터미널에서 실행하거나
CLAUDE_CODE_FORCE_SESSION_PERSISTENCE를 설정하십시오. - 좌석 창을 스크롤하면 임의의 입력이 전송됩니다 (#99). 새로 고침 주기 동안 좌석 터미널에서 스크롤하는 것을 피하십시오.
- 완료된 항목(Done items)은 검증되지 않았습니다 (#80). 캐슐(capsule)의 '완료' 섹션에는 에이전트가 무언가를 배포했다고 주장할 수 있는 내용만 담겨 있습니다. 참고는 프레이밍 제한을 통해 피해를 줄일 수는 있지만, 아직 각 항목을 확인하는 기능은 없습니다.
- Stop 훅(hook)은 조언할 뿐, 차단하지 않습니다 (#82). 또한 새로 고침 중에 발생하는 외부 부작용(side effects in flight)은 아직 추적되지 않습니다 (#81).
- macOS가 가장 적은 사용량을 보였습니다. Windows에서는 Git Bash가 필요합니다.
곧 출시될 기능 (What's coming)
독립적인 컨텍스트 캐슐 Claude Code 플러그인이 검토 중입니다(PR #103). 아직 배포되지 않았으므로, 곧 나올 기능으로 간주해 주십시오.
사용 방법 (Try it)
Claude Code, npm이 설치된 Node 18+, 그리고 bash가 필요합니다.
git clone https://github.com/wrg32786/aigent-os.git
cd aigent-os
git checkout v1.1.0
...
드라이 런(dry run)을 실행하면 모든 변경 사항이 출력될 뿐 아무것도 작성하지 않습니다. 결과가 올바르게 보이면, bash install.sh를 실행하고 새 터미널을 열어 aigent를 실행하십시오.
직접 사용해 보신다면, 루프가 여전히 세션을 이중으로 클리어하거나 고립시킬 수 있는 부분이 어디인지 알려주십시오. 이슈(Issues)와 PR은 환영합니다.
-
릴리스 노트: https://github.com/wrg32786/aigent-os/releases/tag/v1.1.0
-
인스타그램 (Instagram): https://www.instagram.com/the_aigent_news/
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기