Boxdawn

루프 밖에서.

에이전트 시스템 내부를 들여다보고, 이미 한 일을 다시 하는 지점을 찾아내는 오픈소스 도구리서치.

멀티에이전트 파이프라인, 코딩 에이전트, 툴 호출 루프 — 이미 한 일을 다시 합니다. 그 비용은 누군가 트레이스에서 찾아내기 전에 청구서에 먼저 도착합니다. Boxdawn은 그 반복을 결정론적으로 잡아내는 오픈소스 도구입니다 — CLI로 직접 실행하면 LLM 판정을 켜지 않는 한 여러분의 머신 밖으로 나가지 않습니다 — 그리고 측정이 무엇을 보여주고 무엇을 보여주지 않는지 그대로 공개합니다. 세 코퍼스 총 16,864건 세션에서 실행 — 실제 Claude Code 세션 28건, 22개 프론티어 모델의 공개 벤치마크 트래젝토리 6,780건, Exgentic 에이전트-LLM 트레이스 10,056건.

$ pip install "boxdawn[detect]"

오픈소스 · 로컬 실행 · 기본은 결정론 · LLM-judge는 opt-in


02/the problem

낭비는 에이전트 안이 아니라, 에이전트 사이에 있습니다.

APM은 서비스를, 추적 도구는 단일 에이전트를, 게이트웨이는 개별 호출을 감시합니다. 프로덕션에서 가장 비싼 실패 — 이미 끝낸 일을 다시 하는 에이전트 — 는 그 사이의 틈에서 발생합니다.

동일한 질의에 두 번 발동하는 리트리버. 위임했다가 같은 결과를 돌려받고 다시 위임하는 플래너. 이미 답을 알고 있는데도 다시 묻는 팀. 어느 것도 단일 스팬 안에서는 보이지 않습니다.


03/how it works

값싼 필터가 먼저, 비싼 검증은 그다음.

Boxdawn은 트레이스를 그래프로 읽어 2단 캐스케이드로 실행합니다. 구조 패스는 마이크로초 단위로 후보를 걸러내고, 의미 패스는 살아남은 것만 봅니다 — 전체를 훑지 않습니다.

  trace.json  ─▶  ┌────────────────────────────┐
                  │  1. STRUCTURAL PASS        │
                  │     (byte-exact, O(n))     │
                  │     provable duplicate     │
                  └──────────┬─────────────────┘
                             │
                  ┌──────────▼─────────────────┐
                  │  2. CONTEXT RESEND         │
                  │     (chunk-level match)    │
                  │     input-side accounting  │
                  └──────────┬─────────────────┘
                             │
                  ┌──────────▼─────────────────┐
                  │  3. REDUNDANT READ         │
                  │     (file re-read events)  │
                  └──────────┬─────────────────┘
                             │
                  ┌──────────▼─────────────────┐
                  │  4. LLM-JUDGE (opt-in)     │
                  │     (semantic paraphrase)  │
                  │     API key required       │
                  └──────────┬─────────────────┘
                             ▼
                        report.md
패턴
repeat_node

같은 에이전트가 같은 입력으로 다시 실행됩니다. 그 사이에 새로 유입된 정보는 없습니다.

패턴
pingpong

두 에이전트가 새로운 상태를 만들지 않고 서로에게 계속 넘깁니다.

구현됨 — 실제 트레이스에서는 아직 관측되지 않음

패턴
context_resend

매 API 호출마다 대화 전체가 다시 전송됩니다. 긴 에이전트 세션에서는 input 토큰의 약 97%가 재전송 컨텍스트(byte-exact 청크 매칭)로 누적됩니다.

패턴
redundant_read

같은 파일이 사이에 쓰기 없이 여러 번 Read 됩니다. 컨텍스트에 이미 있는 것을 잊는 코딩 에이전트에서 흔합니다.

패턴
semantic_duplicate

바이트는 다르지만 의미가 같은 두 메시지 청크(paraphrased 재전송). opt-in LLM-judge 층이 감지 · 기본 비활성 · API 키 필요.

Opt-in 전용 · ANTHROPIC_API_KEY 필요

pingpong은 실제 멀티에이전트 트레이스가 있어야 나타납니다. 단일 에이전트 코딩 세션이나 Toolathlon에서는 발생하지 않습니다.

참고 — 네 번째 후보 패턴이었던 regen_handoff은(는) 사전 등록 기준을 통과하지 못해 제외되었습니다. Proven / Not Yet 섹션 참조.


04/proven / not yet

증명된 것. 아직 아닌 것.

대부분의 도구는 이 섹션을 숨깁니다. 우리는 이게 곧 제품이라고 생각합니다.

Proven
  • 문제는 실재합니다. 토큰 비용은 멀티에이전트 시스템의 최상위 운영 통증이며, 낭비는 에이전트 안이 아니라 사이에 있습니다. (공개 시장 데이터, 출처 링크)
  • 외부 증거 · 문제 실재. F1 0.72 · 1,575건 LangGraph 에이전트 트레이스 — hybrid 방식, 별개 구현 (arXiv:2511.10650).
Not yet
  • 실측 데이터에서의 의미 층 분리. 실측 프로브에서 위양성 0은 구조 층에서 나왔고, 의미 층은 동일 주제 출력을 깔끔히 분리하지 못했습니다. 우리는 이 결과를 숨기지 않고 공개했습니다.
  • 실측 절감. 아직 프로덕션에서 1달러도 절감을 측정하지 못했습니다. 사용자 수, 후기 없음 — 아직 없기 때문입니다.

오른쪽 항목이 왼쪽으로 옮겨질 때, 이곳에서 가장 먼저 읽으시게 됩니다.


05/open source

오픈소스입니다. 신뢰 자체가 곧 제품이니까요.

Boxdawn은 MIT 라이선스이며 기본값은 결정론입니다. 네 개의 디텍터 — provable duplicate, context resend, redundant read, pingpong 후보 — 가 로컬에서 실행됩니다. API 호출 없음, 가입 없음. 다섯 번째 층 semantic-duplicate LLM-judge는 opt-in 전용입니다: 기본 비활성이며, ANTHROPIC_API_KEY와 CLEW_ENABLE_LLM_JUDGE=1을 명시적으로 설정해야 활성화됩니다. 결정론 층은 같은 트레이스가 들어가면 매번 같은 리포트가 나옵니다.

$ pip install "boxdawn[detect]"
$ boxdawn analyze your_trace.json

OpenTelemetry SDK JSON과 OpenInference 트레이스 익스포트를 지원합니다 — LangGraph, CrewAI, AutoGen, LlamaIndex, 그리고 표준을 따르는 모든 것.

MITlocal-first결정론 우선결정론적opt-in LLM-judge702 tests · CI greenOTel / OpenInference

06/about boxdawn

Box + Dawn.

Box — 에이전트가 실행되는 불투명한 런타임입니다. 매 호출은 페이로드가 들어가고 응답이 나오는 사이의 일 — 그 안에서 무엇이 일어났는지는 트레이스에 남지 않습니다. 그게 black box입니다. Dawn — 그 안에 숨어 있던 낭비가 처음 드러나는 순간입니다. 결정론적 디텍터가 트레이스를 읽어 같은 일을 두 번 처리한 반복을 표면으로 끌어올립니다. 그게 dawn입니다. 두 단어, 하나의 제품.

Boxdawn은 서울에서 전세원이 창업한, 공개적으로 만들어가는 1인 기업입니다. 핵심 규율은 anti-self-deception — 결과를 보기 전에 기준을 등록하고, 평가는 단 한 번만 실행하며, 부정적인 발견도 성공과 함께 공개합니다. 이 제품의 첫 버전은 자체 사전 등록 시험을 통과하지 못했습니다 — 우리는 그것을 폐기하고, 공개적으로 밝히고, 그 위에서 이 버전을 만들었습니다.

서울에서 만들고 있습니다. 공개적으로 만들고 있습니다.


07/the ask

프로덕션에서 멀티에이전트를 돌리고 계신가요? 여러분의 트레이스를 원합니다.

Boxdawn은 세 공개 벤치마크 코퍼스 총 16,864건 세션(실제 Claude Code 세션 28건, Toolathlon 트래젝토리 6,780건, Exgentic 에이전트-LLM 트레이스 10,056건)으로 검증되었습니다. 다음 정직한 단계는 팀의 프로덕션 트레이스입니다 — 그리고 그건 여러분에게 달려 있습니다. 실행 트레이스(OTel 또는 OpenInference JSON)를 보내주시면 Boxdawn에 통과시켜 정확히 무엇을 찾았는지 — 위양성을 포함해 — 회신드립니다. 가입 없음, 아무것도 팔지 않습니다.

외부에 데이터를 공유할 수 없나요? 좋습니다 — 그게 바로 local-first의 목적입니다. Boxdawn을 직접 실행하시고 숫자만 공유해주세요. 어느 쪽이든 여러분의 트레이스는 재보정에 직접 반영되며, 원하시면 공개적으로 크레딧을 남깁니다.