본문으로 건너뛰기
HF Daily Papers조회 1

StateAct: 픽셀 대신 프로그램 상태로 장기 데스크톱 작업을 수행하는 에이전트 하니스

StateAct는 에이전트의 기본 인터페이스를 파일·백엔드·DOM 같은 프로그램 상태로 옮기고 시각 상호작용은 전담 GUI 하위에 위임하여 Claude Opus 4.8의 OSWorld 2.0 바이너리 성공률을 20.6%에서 26.9%로 올리고 작업당 비용을 약 9배 절감했다.

왜 중요한가

장기간 연속된 데스크톱 작업에서는 렌더된 스크린샷이 상태 정보를 손실해 작은 오독이 누적된 결과물을 만들기 쉽다. StateAct는 에이전트가 코드로 프로그램 상태를 직접 읽고 쓰며 결과물을 구조적으로 검증하도록 설계해 이러한 누적 오류를 줄였다. 장기 작업에서 인지 퍼셉션이 아닌 추론·값 정확성이 병목이 된다는 점을 실험적으로 확인해 실무용 자동화의 비용과 신뢰도를 동시에 개선할 수 있음을 보였다.

핵심 기여

상태-우선 에이전트 아키텍처

메인 에이전트가 persistent bash와 Python을 통해 파일·백엔드·DOM에 직접 접근하고, 화면 기반 상호작용은 전담 GUI 하위에 위임하는 아키텍처를 제안했다. 이 구조는 주된 행동 공간을 코드와 구조화된 연산으로 한정해 시각적 채널을 소수의 불가피한 하위목표에만 사용하도록 했다. 아키텍처 설계는 에이전트의 관찰·행동·검증 흐름을 상태로 통합하고 장기 메모리 관리 메커니즘을 포함한다.

독립적 구조 검증기(종결 게이트)

메인 에이전트의 내러티브를 보지 않는 독립적 finish gate를 도입해 영구 저장물에서 구조적 결함(미저장·잘못된 경로·포맷 불일치)을 검증하도록 설계했다. 게이트는 기계적 접근만으로 산출물을 확인하고 불일치 시 최대 세 차례의 재시도를 허용해 회귀 수정 루프를 제공했다. 이 검증 방식은 내러티브 기반 판정 편향을 제거하면서 구조적 오류를 높은 정밀도로 잡는 데 기여했다.

장기 실행을 위한 컨텍스트 관리와 위임 정책

긴 에피소드에서 컨텍스트 폭주를 방지하기 위해 하위 작업마다 별도 컨텍스트를 사용하고 오래된 접두사는 요약·압축하는 자동 컴팩션, 그리고 외부화된 계획 체크리스트를 재주입하는 전략을 적용했다. 메인 에이전트는 시각적 하위목표만 GUI 하위로 위임하도록 엄격한 위임 규칙을 적용해 주 컨텍스트를 단순하고 신선하게 유지했다. 이 구성은 평균 모델 턴 수를 관리 가능한 수준으로 유지하면서 상태-기반 작업 흐름을 안정화했다.

OSWorld 2.0에서 비용·정확도 동시 개선 실험

동일 백본(Claude Opus 4.8)에서 기존 CUA(reference) 대비 StateAct를 적용하면 바이너리 성공이 20.6%에서 26.9%로 증가하고 평균 부분 점수는 54.8%에서 61.6%로 상승했음을 보고했다. 출력 토큰은 224K에서 100K로 줄었고 작업당 비용은 약 72달러에서 7.8달러로 약 9배 절감되었다. 추가적으로 구성 요소 제거 실험에서 행위-상태 결합이 가장 큰 성능 기여자임이 확인되었다.

핵심 아이디어 이해하기

데스크톱 작업의 실질적 산출물은 렌더된 픽셀이 아니라 파일·응용 프로그램 백엔드·DOM 등 프로그램 상태이다. 렌더링 함수는 비가역적이므로 서로 다른 상태가 같은 화면을 만들 수 있고 화면만으로는 값·포뮬러·숨김 행과 같은 작업 핵심 정보를 복원할 수 없다. 장기적으로는 매 단계의 손실이 누적되어 최종 결과물이 크게 왜곡될 수 있으므로 상태를 직접 읽고 쓰는 것이 유리하다. 상태 채널은 파일 로드, 셀 값 읽기, 데이터베이스 쿼리 같은 명시적 조회·변경을 제공해 오독을 제거한다. 예를 들어 워크북의 B7 셀을 load_workbook(...)["B7"].value로 읽으면 수식과 리터럴을 정확히 복원할 수 있으며 같은 값을 직접 쓸 수 있어 스크린 기반 조작보다 확정적이다. 따라서 메인 에이전트는 코드 중심의 행동 공간으로 상태를 조작하고 GUI는 렌더-전용 하위작업에만 호출하도록 역할을 분리했다. 상태 기반 동작과 독립 검증을 결합하면 실패 모드가 퍼셉션에서 추론으로 이동한다. 구조적 오류(미저장, 잘못된 경로 등)는 finish gate로 잡아내는 반면, 값의 올바름을 결정하려면 에이전트의 추론 능력이 필요하다. 본문 실험은 이 전환을 수치로 보여주며 장기 작업에서 시스템 설계의 초점을 인지 향상에서 추론 향상으로 옮겨야 함을 시사한다.

관련 Figure

픽셀 경로와 상태 경로의 차이를 보여주는 코드 예시로 화면 기반 조작과 워크북 직접 조작을 대비하고 있다.
Screenshot

좌측 코드 예시는 스크린샷·좌표 클릭·타입 입력 같은 픽셀 경로를, 우측 예시는 openpyxl을 이용해 워크북을 직접 로드하고 셀 값을 읽고 저장하는 상태 경로를 보여준다. 이 Figure는 상태 채널이 수식·숨김 행 등 픽셀로는 보이지 않는 정보를 정확히 복원하고 수정할 수 있음을 직관적으로 보강한다.

픽셀 경로와 상태 경로의 차이를 보여주는 코드 예시로 화면 기반 조작과 워크북 직접 조작을 대비하고 있다.

방법론

전체 접근 방식은 메인 에이전트가 프로그램 상태에 대한 읽기·쓰기 권한을 갖고 행동 공간으로 persistent bash, Python 스크립트, 파일 편집기를 사용하게 하는 것이다. 메인 에이전트는 GUI 조작(마우스·키 입력)을 직접 사용하지 못하며 화면 상호작용이 필요할 때만 전담 GUI 하위에게 위임한다. 위임은 대상 아티팩트에 코드 경로가 존재하지 않거나 효과 자체가 렌더된 상호작용으로만 표현될 때 발생한다. 검증 메커니즘으로 독립된 finish gate를 설계해 에이전트의 대화 기록을 배제하고 작업 지시와 기계적 접근만으로 저장된 결과물을 재검사하게 했다. 이 게이트는 구조적 불일치를 탐지하면 명시적 실패를 반환하고 최대 세 차례의 수정-재검증 루프를 허용한다. 게이트는 내러티브 편향을 제거하지만 값 정확성 재도출에는 한계가 있음을 실험적으로 확인했다. 장기 실행의 컨텍스트 문제는 세 가지 기법으로 다뤘다. 하위 위임은 각 작업을 별도 컨텍스트로 실행해 메인 컨텍스트를 신선하게 유지하고, 자동 컴팩션은 오래된 접두사를 요약해 컨텍스트 예산을 회복하며, 외부화된 계획 체크리스트는 핵심 태스크 사실을 보존해 반복 요약에도 참조 가능하게 했다. 이들 구성요소의 제거 실험은 act-on-state가 성능에 가장 큰 영향을 미친다는 것을 입증했다.

관련 Figure

StateAct 아키텍처 다이어그램으로 메인 에이전트, 프로그램 상태, 컨텍스트 매니저, 종결 게이트, 그리고 여러 일회용 전담 하위의 관계를 보여준다.
Diagram

다이어그램은 메인 에이전트가 프로그램 상태를 관찰·조작하고 GUI·웹·일반 하위에게 하위목표를 위임하는 흐름을 시각화한다. 또한 finish gate가 내러티브를 보지 않고 독립적으로 저장된 산출물을 검사하는 역할과 컨텍스트 매니저가 계획·요약·컴팩션을 통해 장기 실행을 유지하는 메커니즘을 명확히 연결한다.

StateAct 아키텍처 다이어그램으로 메인 에이전트, 프로그램 상태, 컨텍스트 매니저, 종결 게이트, 그리고 여러 일회용 전담 하위의 관계를 보여준다.

주요 결과

OSWorld 2.0에서 동일 백본 Claude Opus 4.8을 사용한 비교에서 StateAct는 바이너리 성공을 20.6%에서 26.9%로, 평균 부분 점수를 54.8%에서 61.6%로 끌어올렸다. 출력 토큰은 224K에서 100K로 감소했고 작업당 비용은 약 72달러에서 약 7.8달러로 약 9배 감소해 비용-정확도 측면의 동시 개선을 보였다. 시스템 간 비용-정확도 전선에서 StateAct는 고정된 백본 대비 상위 좌측에 위치해 더 높고 저렴한 결과를 동시에 달성했다. 구성요소 제거(ablation) 실험에서는 act-on-state 제거가 가장 큰 성능 저하를 낳아 부분 점수가 61.6%에서 51.3%로 감소했으며 검증기와 컨텍스트 지속성 제거는 각각 작은 하락을 초래했다. 재귀적 위임을 도입한 구성은 일부 시나리오에서 성능이 떨어지거나 거의 발동하지 않아 단일 수준(flat delegation) 설계가 실전에서는 우수함이 확인되었다. 실패 원인 분석에서 79개의 비완전 작업을 감사한 결과 추론 오류가 38개로 지배했고 구조적 검증의 한계로 인해 finish gate가 값 오류를 판정하지 못해 지나친 통과가 다수 발생했다. 게이트는 76개의 도달된 케이스 중 8개만을 정확히 거부하고 68개를 잘못 통과시켜 게이트가 구조적 결함 검출에는 효과적이지만 값 정확성에는 한계가 있음을 정량적으로 보여주었다.

관련 Figure

OSWorld 2.0 벤치마크에서 StateAct가 Claude Opus 4.8에 적용되었을 때 바이너리 성공률과 작업당 비용 비교를 보여주는 성능-비용 그래프이다.
Chart

그래프는 동일 백본에서 StateAct가 참조 CUA(harness) 대비 바이너리 성공을 20.6%에서 26.9%로 끌어올리고 작업당 비용을 약 72달러에서 약 7.8달러로 감소시켰음을 시각적으로 나타낸다. 공시된 다른 공개 시스템들과 비교해 StateAct가 상위 좌측에 자리해 비용과 정확도를 동시에 개선했음을 강조하며 절대적 수치와 퍼포먼스 프런티어 위치를 전달한다.

OSWorld 2.0 벤치마크에서 StateAct가 Claude Opus 4.8에 적용되었을 때 바이너리 성공률과 작업당 비용 비교를 보여주는 성능-비용 그래프이다.

기술 상세

전체 아키텍처는 메인 에이전트, 전담 GUI·웹 하위(필요시), 독립 finish gate, 그리고 외부화된 컨텍스트 관리기로 구성된다. 메인 에이전트의 행동 공간은 persistent bash와 Python을 통한 파일·백엔드·DOM 조작으로 한정되며 GUI 조작 명령은 하위에게 위임된다. 웹 작업은 별도의 웹 하위가 DOM 직렬화·CSS 선택자로의 클릭·JavaScript 실행을 통해 처리한다. 핵심 메커니즘은 두 관찰 채널의 수학적 분리이다. 픽셀 채널은 o_pix = f_render(s)로 모델링되며 비가역성으로 인해 f_render의 역함수가 존재하지 않는 경우가 많다. 상태 채널은 o_state = g(s)로 모델링되며 파일 읽기나 DB 쿼리 같은 연산으로 실질적 서브스테이트를 복원할 수 있어 긴 시퀀스에서 누적 오류를 억제한다. 이 차이가 장기 작업에서 성능 차이를 만든다는 정량적 증거를 제시했다. 학습·실행 세부사항은 공개 트레이스 기반 벤치마크 실행을 따랐다. 모든 실험은 Claude Opus 4.8 백본을 주로 사용했고 메인 에이전트 예산은 최대 200 턴으로 설정했다. 턴 회계는 메인 에이전트 평균 약 57 턴, 하위 위임 포함 총 약 155 모델 턴을 사용한 값을 표준으로 삼아 비용 계산을 수행했다. 추가로 bash-only, 소형 GUI 하위 전환 등 구성 비교를 통해 각 요소의 비용·성능 기여를 계량화했다.

한계점

종결 게이트는 구조적 결함을 높은 정밀도로 잡아내는 반면 값의 정확성(value correctness)은 재도출이 불가능하면 판정 못하는 한계가 있다. 76개의 게이트 도달 케이스 중 68개가 잘못된 통과를 했는데 이는 동일한 소스와 동일한 해석으로 재도출 시 에이전트의 잘못된 값을 게이트가 재현해 검증 불가로 이어지기 때문이다. 이 한계 때문에 성능 향상은 퍼셉션에서 추론으로 병목을 이동시키는 데 그쳤으며 값 오류를 줄이려면 외부의 정답 레퍼런스나 더 강한 이론적·데이터적 근거가 필요하다.

키워드

StateAct(상태 기반 에이전트 하니스)State-grounding(프로그램 상태 접지)Finish Gate(종결 검증기)OSWorld 2.0(장기 데스크톱 벤치마크)GUI subagent(전담 GUI 하위)

용어 해설

상태-기반 접지(State-grounding)
프로그램의 파일·백엔드·DOM과 같은 실제 상태를 주 관측 인터페이스로 삼아 에이전트가 코드로 직접 읽고 쓰게 하는 설계 방식이다. 이 방식은 렌더된 픽셀 대신 원천 상태를 조회·수정하고 저장된 결과를 구조적으로 검증함으로써 장기 연속 작업에서 누적된 인지 오류를 줄인다. 본문에서는 주요 성능 향상 원인으로 제시되며 GUI 상호작용은 보조 전담 하위에 위임된다.
종결 게이트(Finish Gate)
메인 에이전트가 작업 종료를 선언하면 독립적으로 영구 저장물(파일·백엔드·DOM)을 재검사해 구조적 결함만을 판정하는 검증 모듈이다. 게이트는 에이전트의 내러티브를 보지 않고 기계적 접근으로 불일치나 저장 누락을 잡아내며 실패 시 제한된 회귀를 허용한다. 본문에서는 값 오류를 판정하지 못하는 한계와 함께 구조적 오류 검출의 정밀도를 보고했다.
OSWorld 2.0
장기 연속 데스크톱 작업을 평가하는 공개 벤치마크로 총 108개 작업을 포함한다. 각 작업은 화면 인식·상태 접근·다중 소스 추론 등 다양한 역량을 요구하며 바이너리 성공·부분 점수·작업당 비용을 측정한다. 본문 실험은 이 벤치마크에서 StateAct와 여러 비교 시스템을 평가하는 데 사용되었다.

코드 예제

text
# read a total off the screen
screenshot()  # "cell shows 1,240"
# display may omit formula,
# hidden rows, or precision
click(x=734, y=512)
# coordinate-based
type("=SUM(B2:B6)")
# depends on focus

픽셀 기반 경로의 예시로 스크린샷을 찍고 좌표 클릭과 키 입력으로 화면에 보이는 값을 조작하는 절차를 보여준다. 이 방식은 렌더된 픽셀을 직접 제어하는 전형적 GUI 상호작용을 나타내며 포커스·숨김·표시 정밀도에 의존함을 드러낸다.

python
import openpyxl as x
wb = x.load_workbook("r.xlsx")
c = wb["Sheet1"]["B7"]
print(c.value)  # stored formula
c.value = "=SUM(B2:B6)"
wb.save("r.xlsx")  # persisted

상태 기반 경로의 예시로 워크북을 직접 로드해 셀 값을 읽고 수식으로 써서 파일에 영구 저장하는 절차를 보여준다. 이 코드는 렌더된 픽셀을 거치지 않고 프로그램 상태를 정확히 읽고 수정하는 장점을 설명하는 데 사용된다.

AI 분석 전체 내용 보기

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

출처 · 인용 안내

원문 발행 2026. 07. 24.수집 2026. 07. 29.출처 타입 PAPER

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