본문으로 건너뛰기

Tura의 에이전트 실행 최적화

Tura가 명령 그래프와 문맥 관리로 coding agent의 반복 호출을 줄입니다.

이 요약은 AI가 원문을 분석해 생성했습니다. 정확한 내용은 원문 기준으로 확인하세요.

TL;DR

Tura는 ReAct coding agent가 도구 결과마다 LLM을 다시 호출하는 구조를 command_run 기반의 런타임 명령 그래프로 바꿔 여러 작업을 한 turn에 실행합니다. 공개된 20개 DeepSWE v1.1 task 비교에서 Tura Direct는 Codex CLI보다 aggregate token을 77.5% 줄이면서 verifier success rate 65.0%를 기록했고, Balanced는 token 31.1% 절감과 80.0% success rate를 함께 기록했습니다. 또한 목표 상태에서 거꾸로 실패 경로를 복원하는 Backward Reasoning과 task_status 기반 문맥 관리를 사용해 코드 위치와 테스트 상태를 보존합니다. 다만 command_run의 단독 효과를 검증한 ablation test는 없고, provider·운영체제·UI latency를 포함한 폭넓은 비교는 아직 문서화된 roadmap과 evidence gap으로 남아 있습니다.

섹션별 상세

기존 ReAct 기반 coding agent는 환경 조사, patch 적용, build, test, lint처럼 서로 이어지는 작업에서도 각 도구 결과마다 모델을 다시 호출합니다. 이 과정은 다음 행동을 결정하는 데 필요한 실제 작업과 별개로 system prompt와 누적 context를 반복 전송하게 만듭니다. Tura는 여러 작은 도구 대신 command_run이라는 macro tool을 제공하고, 모델이 만든 명령 그래프를 런타임에서 연속 실행해 같은 workflow를 한 번의 LLM turn으로 처리합니다.
근거
  • Tura Balanced는 Codex CLI와 비교해 token을 31.1% 적게 사용하면서 success rate 80.0%를 기록했습니다. README의 성능 요약과 FULL BENCHMARK REPORT에 있는 DeepSWE 비교 수치 출처
  • Tura Direct는 Codex CLI보다 aggregate tokens를 77.5% 줄였고 verifier success rate는 65.0% 대 63.3%로 비슷했습니다. README 첫 성능 비교 문단의 Direct 수치 출처
Tura의 핵심 실행 경로는 명령을 step과 command_type으로 묶어 입력받은 뒤 의존 순서에 따라 shell command와 apply_patch를 실행하는 방식입니다. 예시에서는 두 번의 ripgrep 검색 뒤 handler.rs patch, cargo build, cargo test, cargo clippy가 하나의 구조화된 요청에 들어갑니다. 다만 command_run만으로 낮은 turn 수와 token 사용량이 발생했다는 ablation test는 없으며, 전체 DeepSWE 비교에서 Balanced는 Codex CLI보다 turn 35.8%, token 31.1%를 줄였고 Direct는 각각 69.1%, 77.5%를 줄였습니다.
text
# Turn 1 : inspect environment
rg -n "TODO|command_run|handler" crates/
rg --files crates/runtime/src crates/tools/src
# Turn 2 : apply patch
*** Begin Patch ***
*** Update File: crates/tools/src/command_run/handler.rs
@@
- // old command handler logic
+ // patched command handler logic
*** End Patch
# Turn 3 : build
cargo build -p runtime
# Turn 4 : run tests
cargo test -p runtime --lib
# Turn 5 : run lint validation
cargo clippy -p runtime --all-targets

일반적인 tool-calling coding agent가 검색, patch, build, test, lint를 다섯 번의 LLM turn으로 처리하는 예시입니다.

json
{
  "name": "command_run",
  "arguments": {
    "commands": [
      {
        "step": 1,
        "command_type": "shell_command",
        "command_line": "rg -n \"TODO|command_run|handler\" crates/"
      },
      {
        "step": 1,
        "command_type": "shell_command",
        "command_line": "rg --files crates/runtime/src crates/tools/src"
      },
      {
        "step": 2,
        "command_type": "apply_patch",
        "command_line": "*** Begin Patch\
*** Update File: crates/tools/src/command_run/handler.rs\
@@\
- // old command handler logic\
+ // patched command handler logic\
*** End Patch"
      },
      {
        "step": 3,
        "command_type": "shell_command",
        "command_line": "cargo build -p runtime"
      },
      {
        "step": 4,
        "command_type": "shell_command",
        "command_line": "cargo test -p runtime --lib"
      },
      {
        "step": 4,
        "command_type": "shell_command",
        "command_line": "cargo clippy -p runtime --all-targets"
      }
    ]
  }
}

Tura가 command_run 하나로 여러 shell command와 patch 작업의 순서를 지정하는 매크로 실행 요청입니다.

Tura는 현재 상태에서 목표까지 순차적으로 전진하는 대신 목표 직전 상태를 먼저 추정한 뒤 실패 경로를 거꾸로 복원하는 Backward Reasoning을 사용합니다. frontend bug 수정 같은 작업에서는 코드를 곧바로 생성하기보다 최종 실행 상태, 재현 경로, 근본 원인을 먼저 연결한 뒤 수정 단계로 이동하도록 LLM의 추론 순서를 바꿉니다. rock-paper-scissors의 공정한 선택처럼 LLM의 token 확률만으로 보장하기 어려운 문제에는 randint(1, 3) 같은 외부 도구를 사용해야 한다는 사례가 이 접근의 경계를 함께 드러냅니다.
근거
  • Tura Balanced는 DeepSWE 비교에서 Codex CLI보다 60개 binary task verifier 중 10개를 더 통과했습니다. Backward Reasoning 절의 published DeepSWE comparison 문단 출처
Tura는 장기 세션의 문맥을 단순히 Markdown skill 파일로 계속 쌓지 않고 task_status, runtime prompts, recursive execution manuals를 런타임 상태와 연결합니다. 문맥을 압축할 때에도 느슨한 요약만 남기는 대신 code locations, patches, tests, task status를 task_status.compact_context에 보존하고 CLI에서 관련 없는 문맥을 제거하거나 교체할 수 있습니다. 공개 benchmark 세션에서 compaction 뒤 실행 재개까지 평균 2.6 rounds가 걸렸으며, Codex의 동등한 이벤트가 공개되지 않아 입력 token 급감 지점으로 추정한 5.4 rounds보다 짧았습니다.
근거
  • 공개 benchmark에서 Tura의 compaction 후 실행 재개 평균은 2.6 rounds이며 Codex의 5.4 rounds는 입력 token 감소 지점으로 추정된 값입니다. Runtime Context and Prompt Manager 절 및 각 benchmark round contract footnote 출처

용어 해설

ReAct 아키텍처(ReAct Architecture)
LLM이 현재 상태를 읽고 도구를 호출한 뒤 결과를 다시 입력으로 받아 다음 행동을 결정하는 에이전트 구조입니다. 도구 결과마다 모델 호출이 반복되므로 시스템 프롬프트와 누적 문맥을 매번 재전송해야 하는 비용이 발생합니다.
명령 그래프(Command Graph)
여러 명령과 실행 순서를 하나의 구조로 표현한 실행 계획입니다. 모델이 각 명령 사이에 다시 개입하지 않아도 런타임이 의존 관계에 따라 shell command, patch, build, test를 이어서 처리할 수 있습니다.
역방향 추론(Backward Reasoning)
현재 상태에서 목표로 전진하는 대신 목표 직전 상태를 먼저 추정하고 필요한 이전 상태를 거꾸로 복원하는 추론 방식입니다. 코드 수정 전에 실패 경로와 근본 원인을 재구성하도록 유도하는 데 사용됩니다.
문맥 압축(Context Compaction)
대화와 도구 출력이 누적되어 입력 문맥이 커졌을 때 내용을 줄여 새 실행을 이어가는 과정입니다. Tura는 단순 요약 대신 코드 위치, patch, 테스트, task status를 task_status.compact_context에 보존하는 방식으로 실행 상태를 관리합니다.
매크로 도구(Macro Tool)
작은 도구 호출 여러 개를 하나의 고수준 도구 요청으로 묶는 실행 인터페이스입니다. Tura의 command_run은 검색, patch 적용, 빌드, 테스트 같은 명령을 하나의 구조화된 workflow로 받아 모델 왕복 횟수를 줄입니다.

기술

  • Tura
  • command_run
  • DeepSWE v1.1
  • Codex CLI
  • Rust
  • NPM
  • GitHub Packages
  • task_status.compact_context

활용 사례

  • 장기 코딩 작업의 검색·patch·build·test·lint 자동 실행
  • 여러 세션의 동시 coding agent 작업
  • 문맥 압축 후 코드 수정과 테스트 실행 재개
  • TUI, GUI, CLI 기반 LLM agent 운영

언급된 리소스

AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 08. 12.수집 2026. 08. 12.출처 타입 RSS

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.