LLM 에이전트가 어려움을 겪는 가장 큰 영역 중 하나는 긴 호라이즌(long-horizon) 태스크다. 수천, 수만 번의 행동에 걸쳐 일관된 추론을 유지해야 하는 환경 — 예컨대 ARC-AGI-3의 게임들이 그런 설정이다. 최근 Duke University의 연구진이 발표한 PRO-LONG은, 코딩 에이전트의 프로그래밍 능력을 활용해 이 문제에 우아한 해법을 제시한다.

핵심 아이디어는 단순하다: 모든 관찰과 행동을 버리지 말고 로그에 append하고, 코드로 검색하라. 이른바 programmatic memory다.

문제: 컨텍스트 관리의 딜레마

긴 호라이즌 에이전트에서 메모리 시스템은 근본적인 트레이드오프에 직면한다:

  • 쓰기(write) 시점에 너무 많이 요약·압축하면 나중에 필요한 정보가 사라진다
  • 너무 많이 보존하면 **검색(read)**이 어려워진다
  • 임베딩 기반 검색, 요약 노트, 스크래치패드 등 기존 방법은 각각 이 딜레마의 다른 측면을 타협한다

기존 하네스들은 — WorldModeler, Arcgentica, Schema 등 — 각각 복잡한 전략으로 이 문제에 접근한다. 600줄짜리 프롬프트, 서브에이전트 분할, 커스텀 MCP 도구 12개… PRO-LONG은 이것을 약 30줄의 프롬프트로 대체한다.

Figure 1: PRO-LONG의 전체 아키텍처 개요. 코딩 에이전트에 프로그래밍 가능한 메모리를 통합하는 방식

PRO-LONG의 세 가지 설계 원칙

1. 단순성 (Simplicity)

쓰기: 하네스가 모든 관찰, 행동, 결과를 구조화된 로그(logs.txt)에 append한다. 학습된 휴리스틱도, 임베딩 인덱스도, 벡터 데이터베이스도 필요 없다.

읽기: 코드 기반 검색. grep으로 스코어 변화를 찾거나, 정규식으로 특정 패턴을 추적하거나, Python 스크립트를 작성해 전체 로그를 리플레이하는 식이다.

2. 무손실 (Losslessness)

아무것도 압축하거나 요약하지 않는다. 로그는 환경 상태의 충실한 기록(faithful record)이다. 100k+ 줄의 로그에서도 검색이 실용적(tractable)이라는 것을 실험으로 확인했다.

3. 코딩 에이전트와의 최대 호환성

프로그래밍 가능한 검색은 코딩 에이전트에게 네이티브한 능력이다. 정규식, 코드 작성, 파일 조작 — 이런 것들은 Codex나 Claude Code가 이미 잘하는 일이다. PRO-LONG은 이 능력을 메모리 검색에 그대로 활용한다.

실제로 PRO-LONG 에이전트가 regress.py라는 스크립트를 작성해, logs.txt의 모든 행동을 리플레이하며 자신이 코딩한 게임 모델이 로그된 보드 상태를 정확히 예측하는지 검증하는 사례도 관찰되었다.

성과: ARC-AGI-3에서 SOTA 달성

Figure 2: PRO-LONG이 4.2–5.8× 적은 토큰으로 기존 최고 성능을 match 또는 능가한다

결과가 인상적이다:

모델PRO-LONG pass@1기존 최고토큰 절감
GPT-5.541.2%45.1% (WorldModeler)5.8×
Opus 4.642.4%9.1% (Arcgentica)
Fable 5best@2 97.4% ($1,750)

베이스 코딩 에이전트 대비 평균 18.0 percentage points 향상. 그리고 이 단순한 접근법이 600줄 프롬프트와 12개 커스텀 도구를 쓰는 복잡한 하네스들과 동등하거나 더 나은 성능을 낸다.

무엇이 성능을 이끄는가: 도구 사다리 실험

가장 흥미로운 발견은 단계적 도구 추가 실험에서 나온다. 베이스 에이전트에 도구를 하나씩 추가하면서 성능 변화를 측정했다:

  1. 로깅만 추가 (append-only log) → 이미 큰 향상
  2. grep 추가 → 추가 향상
  3. Python 실행 추가 → 더 큰 향상
  4. 영구 워크스페이스, 노트 도구 추가 → 효과 미미

즉, 정보 무손실 로깅 + 프로그래밍 가능한 검색이 핵심이며, 그 위에 쌓는 추가 추상화는 큰 도움이 되지 않는다. 이것은 “더 많은 도구 = 더 좋은 에이전트”라는 단순한 믿음에 대한 반례다.

게임별 분석: 언제 프로그래밍 메모리가 빛을 발하는가

Figure 4: 25개 게임별 스코어 분석. 현재 보드만으로는 게임 규칙을 완전히 알 수 없을 때 PRO-LONG의 강점이 가장 크다

PRO-LONG의 이득이 가장 큰 게임들은 현재 보드 상태만으로 게임 규칙을 완전히 결정할 수 없는 게임들이었다. 예를 들어:

  • tu93: 미로 게임에서 터렛을 해제해야 하는데, 터렛의 행동 패턴을 과거 경험에서 추론해야 함
  • g50t: “되감기” 기능이 이전 경로의 유령을 만들어내서, 과거 행동이 현재 보드에 영향을 미침

이런 게임에서는 과거 기록을 검색해 규칙을 역추론하는 능력이 결정적이다. 반면 현재 보드가 모든 정보를 담고 있는 게임에서는 베이스 에이전트와의 차이가 작았다.

의의: 에이전트 메모리 설계의 새로운 기준

PRO-LONG이 제시하는 통찰은 단순하지만 깊다:

  1. 버리지 마라 — 정보가 나중에 중요해질지 지금 알 수 없다
  2. 코드로 검색하라 — 코딩 에이전트에게 이것은 자연스러운 능력이다
  3. 복잡한 것을 더하지 마라 — 단순한 로깅 + 검색이 복잡한 하네스를 이긴다

이것은 LLM 에이전트의 메모리 설계에 있어 **“무엇을 버릴 것인가”**라는 기존 패러다임에서 **“모두 보존하고 효율적으로 검색할 것인가”**로의 전환을 시사한다. 최신 코딩 에이전트의 프로그래밍 능력이 충분히 강력해졌기에 가능한 접근이다.

논문에서는 이것을 programmatic memory라 부르지만, 본질적으로는 에이전트에게 완전한 기억을 주고, 스스로 필요한 것을 찾게 하는 것이다. 인지 과학적으로도 흥미로운 — 외부 기억 장치(expanded memory)와 실행 제어(executive control)의 분리에 가깝다.

더 실습해보고 싶은 분들께

에이전트 하네스, 루프 엔지니어링, 긴 컨텍스트 에이전트 설계에 관심이 있다면:

실제 에이전트 루프를 설계하고 메모리 전략을 실험해보는 데 도움이 될 것이다.


참고문헌: Wang, J., Rosu, P., & Dhingra, B. (2026). PRO-LONG: Programmatic Memory Enables Long-Horizon Reasoning. arXiv:2607.20064. 코드 및 로그