목록으로
제품2026년 5월 13일 AM 08:41

AI 코딩 에이전트 가드레일 'Statewright' 공개, Claude Code 등 5종 지원

AI 코딩 에이전트의 도구 사용을 단계별로 제한하는 상태머신 기반 가드레일 도구 'Statewright'가 공개됐다. 개발자는 워크플로를 한 번 정의해 Claude Code, Codex, Cursor, opencode, Pi 등 다섯 가지 코딩 에이전트에 동일하게 적용할 수 있다. 슬로건은 "Agents are suggestions, states are laws(에이전트는 제안일 뿐, 상태가 법칙이다)".

작동 방식은 단순하다. 상태(state)마다 허용 도구를 정의하고, 그 외 도구는 모델에게 아예 보이지 않게 한다. 예를 들어 planning 상태에서는 Read·Grep·Glob 같은 읽기 전용 도구만, implementing 상태에서는 Read·Edit·Write가, testing 상태에서는 Read·Bash 일부 명령(pytest, cargo test, npm test 등)만 허용된다. 허용되지 않은 도구를 호출하면 "현재 가능한 도구는 무엇이고 어떻게 전이해야 하는지"가 메시지로 돌아온다.

개발자가 모델을 키우는 대신 문제를 작게 만들자는 가설이 핵심이다. 모델에 40개가 넘는 도구와 자유로운 문제를 주면 출발조차 못하는 경우가 많은데, 상태머신으로 한 단계에 보이는 도구 수를 줄이면 모델이 표류하지 않고 추론한다는 것이다. 옵저버빌리티는 사후에 무엇이 잘못됐는지 알려줄 뿐 예방하지는 못한다는 점도 함께 지적했다.

효과는 작은 모델에서 가장 두드러졌다. SWE-bench 5개 과제 부분집합에서 gpt-oss:20b(13.8GB)와 gemma4:31b(19.9GB)는 기본 상태에서 2/10에 머물렀지만 Statewright 제약을 적용하자 5/5을 모두 통과해 10/10이 됐다. llama3.3(42.5GB)은 5개 중 2개 과제에서 PASS를 받았고, gemma4:e2b(7.2GB)는 26줄짜리 버그 수정 과제는 특수한 edit_line 도구 적용으로 통과했으나 SWE-bench는 통과하지 못했다. 3.3GB짜리 gemma3는 모두 실패했다. 개발자는 "13GB 미만에서는 모델이 도구 호출은 만들어도 파일 내용을 충분히 기억하지 못해 정확한 편집이 안 된다. 이는 Statewright의 한계가 아니라 하한선"이라고 설명했다.

가드레일은 여러 층으로 들어가 있다. 상태별 도구 차단, Bash 인식(리다이렉트·rm·shred 같은 파괴적 작업과 스크립트 인터프리터를 비-쓰기 상태에서 차단), 한 상태에서 편집 가능한 줄 수와 파일 수 제한, 명령어 접두어 허용 목록, 가드 조건이 붙은 전이, 사람 승인이 필요한 게이트, 환경 변수 스코프, CLAUDE_SESSION_ID 단위 세션 격리 등을 워크플로 정의에 함께 적을 수 있다.

통합 방식은 에이전트별로 다르다. Claude Code는 Hooks와 MCP를 함께 써 프로토콜 레이어에서 도구 호출을 차단하는 'Hard' 강제이고, Codex(Hooks), opencode(TypeScript 플러그인), Pi(Skills extension)도 알파 상태에서 Hard로 동작한다. Cursor는 MCP와 규칙으로 동작하지만 아키텍처 한계로 Advisory(권고) 단계에 머물러 있다고 명시했다.

엔진은 Rust로 작성됐고 결정론적(deterministic)이며 LLM이 루프에 들어가지 않는다. 상태·전이·가드·도구 제약을 평가하는 본체 위에 코딩 에이전트와 MCP로 통신하는 플러그인 레이어가 얹혀, 워크플로를 켜면 훅이 자동으로 상태별 제약을 강제한다. 워크플로는 사람이 직접 작성하는 것을 기본으로 하되 에이전트가 statewright_create_workflow 도구로 생성할 수도 있다.

가격은 개인 개발자에게는 무료이며, 관리형 클라우드 statewright.ai에서 저장·실행 히스토리·MCP 게이트웨이를 제공한다. Free는 워크플로 3개·월 200회 전이·72시간 히스토리에 $0, Pro는 10개·2500회·7일에 월 $29, Team은 30개·1만 회·90일에 월 $99로 책정됐고 Enterprise는 별도 협의다.

라이선스는 엔진(crates/engine)이 Apache 2.0이며 임베드용으로 런타임 의존성이 없다. 일부 코드는 FSL-1.1-ALv2로 시작해 2029년 5월 3일 Apache 2.0으로 자동 전환된다. 단일 개발자와 단일 팀의 풀스택 셀프 호스팅도 FSL 라이선스 하에 허용된다.

AI인사이트 편집팀

이 기사는 AI 기술을 활용해 작성되었으며, 편집팀이 검수했습니다.

관련 기사