Rudder: 자체 개선형 에이전트 팀 구축
요약
Rudder는 목표, 작업, 채팅, 이슈 등을 결합하여 에이전트 팀을 위한 업무 루프를 제공하는 프레임워크입니다. 이 시스템은 인간과 에이전트가 협력하며 작업을 진행하고, 검토 및 피드백을 통해 지속적으로 학습하고 개선할 수 있는 구조화된 환경을 구축합니다. 벤치마크 결과, Rudder는 주변 환경(Harness)의 중요성을 강조하며, Agents에게 컨텍스트와 조정 도구 등을 제공하여 강력한 성능 향상을 입증했습니다.
핵심 포인트
- Rudder는 에이전트 팀을 위한 업무 루프를 제공합니다.
- Goal-Plan-Run-Review-Feedback의 순환 구조로 학습 및 개선을 유도합니다.
- 벤치마크에서 Rudder가 높은 점수를 기록하며 환경(Harness)의 중요성을 입증했습니다.

Rudder
스스로 발전하는 Agent Team을 구축하세요.
실제 업무를 통해 생각하고, 만들고, 플레이하며 학습하는 Agents.
Website | Docs | Code signing policy | Privacy | Discord
Rudder는 목표(goals), 작업(tasks), 채팅(chats), 이슈(issues), 에이전트 실행(agent runs), 검토(reviews), 피드백을 결합하여 Agent Team을 위한 업무 루프(work loop)를 만듭니다. 이는 인간과 Agents가 작업을 진전시키고, Agents를 실행하며, 결과물을 검토하고, 지출을 통제하고, 다음 실행을 더 좋게 만들 교훈들을 보존하기 위한 공유된 운영 구조를 제공합니다.
Rudder는 Paperclip의 초기 버전 포크(fork)로 시작되었습니다. 이는 프로젝트에 Agent 운영을 위한 실질적인 출발점을 제공했습니다. 이제 Rudder는 'Agent 팀이 실제 업무가 남기는 지속 가능한 컨텍스트, 결정, 피드백, 그리고 재사용 가능한 운영 패턴을 통해 개선된다'라는 더 명확한 제품 아이디어를 중심으로 진화하고 있습니다.
Rudder는 Agent의 작업이 단일 프롬프트처럼 보이는 단계에서 실제 팀처럼 보이기 시작하는 순간을 위해 구축되었습니다.
Agent 작업을 위한 더 나은 하네스(Harness)
저희는 OpenAI의 GDPval 데이터셋에서 추출한 무작위 전문 업무 샘플들을 사용하여 Rudder, Codex CLI, 그리고 Claude Code를 벤치마킹했습니다. 모든 시스템이 동일한 모델과 추론 노력을 요청하도록 했습니다. 그 결과, Rudder가 저희 로컬 케이스-동등(case-equal) 루브릭 지표에서 가장 높은 점수를 달성했습니다.

모델의 효과는 주변 환경에 달려 있습니다. Rudder는 Agents에게 지속 가능한 컨텍스트, 조정된 도구(coordinated tools), 구조화된 작업, 검토 피드백, 예산(budgets), 그리고 메모리—를 제공하여, Agents가 집중력을 유지하고, 학습한 것을 보존하며, 실제 업무 전반에 걸쳐 더 강력한 결과를 산출하도록 돕습니다.
이 벤치마크는 하네스와 작업 환경의 중요성에 대한 방향성 있는 증거를 제공할 뿐이며, 공식적인 GDPval 점수나 리더보드 결과가 아닙니다. 방법론 및 증거 한계 읽기
업무 루프(The Work Loop)
Rudder는 에이전트 작업의 복리 효과를 만들어내는 루프를 중심으로 설계되었습니다:
Goal -> Plan -> Chat or Issue -> Agent run -> Review -> Feedback -> Learning -> Better future runs
이 루프는 검사 가능한 실행(inspectable execution)과 적절한 구조가 필요합니다. 목표(Goals)는 작업이 존재하는 이유를 설명합니다. 채팅(Chat)은 대화 주도형 실행을 지원하고, 이슈(Issues)는 명시적인 조정 필드를 추가합니다. 에이전트 실행(Agent run)은 실행 과정을 가시적으로 유지합니다. 검토 및 승인(Reviews and approvals)은 자율성을 관리 가능하게 합니다. 피드백(Feedback), 댓글, 문서, 실행 기록(run history), 그리고 스킬(skills)은 팀이 배운 것을 보관할 장소를 제공합니다.
Rudder는 모든 교훈이 자동으로 새로운 스킬이나 워크플로우로 승격된다고 가정하지 않습니다. 제품의 방향성은 이러한 승격 경로를 채팅 기록이나 일회성 프롬프트 속에 묻어두기보다는, 명시적이고, 검토 가능하며, 재사용할 수 있도록 만드는 것입니다.
설계 아이디어
에이전트와 작업하는 가장 유용한 방식은 인간이 서로 조정하는 방식과 가깝습니다.
사람들은 공유된 목표(shared goals), 명시적인 역할(explicit roles), 지속 가능한 작업 객체(durable work objects), 작업에 첨부된 컨텍스트, 명확한 인계(clear handoffs), 그리고 판단이나 승인이 필요할 때의 에스컬레이션 경로를 통해 작업합니다. 팀은 또한 가시성이 필요합니다: 무엇이 진행 중인지, 무엇이 막혔는지, 비용이 얼마나 드는지, 개입이 필요한 곳이 어디인지를 말입니다.
- 작업은 느슨한 실타래가 아닌 조직에 속해야 합니다
- 모든 이슈는 목표로 추적되어야 합니다
- 에이전트는 역할, 런타임 설정(runtime config), 기능(capabilities), 그리고 스킬을 가집니다
- 채팅과 이슈는 실행이 검사 가능한 실행, 출력물, 검토 및 기록에 연결된 방식으로 작업을 진전시킬 수 있는 대화형 및 구조적 방법을 제공합니다.
- 자율성은 읽기 가능하고(legible), 관리 가능하며(governable), 예산 인식이 되어야 합니다.
Rudder란 무엇인가
Rudder는 에이전트 작업을 할당, 실행, 검토 및 개선하기 위한 오픈 소스 소프트웨어입니다. 하나의 Rudder 인스턴스는 여러 조직을 운영할 수 있으며, 각 조직은 고유한 목표, 에이전트, 이슈, 예산, 승인, 피드백, 그리고 거버넌스를 가집니다.
| Human 팀 패턴 | Rudder 대응 기능 |
|---|---|
| 미션 (Mission) | 조직 목표 (Organization goal) |
| ... | |
| Rudder는 에이전트들을 조정합니다. 특정 런타임, 모델, 프롬프트 형식 또는 실행 환경을 강제하지 않습니다. |
자체 런타임 사용하기 (Bring Your Own Runtime)
Rudder는 코디네이션 계층(coordination layer)이며, 모델 제공자가 아닙니다. Codex, Claude Code, Cursor, OpenClaw, Bash 또는 자체 HTTP 서비스 등 이미 사용하는 로컬 도구 및 프로바이더 계정으로 에이전트를 실행할 수 있습니다. 로컬 런타임은 기존 설치, 로그인 및 자격 증명을 유지하며, Rudder는 이들을 중심으로 할당(assignment), 컨텍스트, 실행(execution), 검토(review), 예산(budgets) 및 메모리 기능을 연결합니다.
시작하기 (Get Started)
Rudder 사용해 보기 (Try Rudder)
가장 빠른 방법은 일치하는 영구 CLI/런타임을 준비하고, 사용자별 앱으로 Rudder를 여는 것입니다:
npx @rudderhq/cli@latest start
Windows에서는 start 명령어가 Smart App Control을 읽지만(변경하지는 않음), 적용이 활성화되어 있고 Rudder Desktop 채널이 아직 서명되지 않은 경우, 실행 파일 설치 대신 시작 메뉴 바로가기를 생성하고 Microsoft Edge 앱 모드에서 동일한 로컬 작업 공간을 엽니다. 포터블 Electron 경로를 명시적으로 유지하려면 --desktop-mode native를 사용하거나, 호환성 경로를 직접 선택하려면 --desktop-mode browser를 사용하세요. 이 루프백 전용 폴백(fallback)은 패키징되지 않은 local_trusted 클라이언트이며, 패키지된 Desktop Account Gate를 사용하지 않습니다.
데스크톱 앱을 설치해서는 안 되는 서버 또는 헤드리스 호스트의 경우, 서버 런타임과 영구 CLI만 준비하면 됩니다:
npx @rudderhq/cli@latest start --server-only
영구 CLI가 사용 가능해지면, 직접 rudder 형식은 동일한 명령 표면을 가집니다:
rudder start
rudder start --server-only
Rudder 개발하기 (Develop Rudder)
레포지토리 자체에서 작업하는 기여자들을 위한 방법입니다:
git clone https://github.com/Undertone0809/rudder
pnpm install
pnpm dev
이것은 API 서버와 UI를 http://localhost:3100에서 시작합니다.
Rudder는 개발 환경에서 기본적으로 임베디드 PostgreSQL을 사용합니다. DATABASE_URL이 설정되어 있지 않다면 별도의 데이터베이스를 프로비저닝할 필요가 없습니다.
일반적인 Rudder 워크플로우
- 조직(organization)을 생성합니다.
- 조직 목표(goal)를 정의합니다.
- 명확한 역할과 런타임(runtime)을 가진 기본 에이전트(agent)를 생성하거나 사용합니다.
- 반복적인 작업에 안정적인 소유권(ownership)이 필요할 때만 더 많은 에이전트를 추가합니다.
- 대화 기반 실행을 위해 Chat을 선택하거나, 구조화된 조정(coordination)을 위해 Issue를 선택합니다.
- 에이전트가 Chat 턴(turns) 또는 이슈 하트비트 호출(heartbeat invocations)을 통해 실행되도록 합니다.
- 보드에서 출력물(outputs), 승인(approvals), 활동, 지출액을 검토합니다.
- 대화, 실행(run), 이슈, 또는 출력물에 피드백을 남깁니다.
- 재사용 가능한 교훈을 더 나은 컨텍스트(context), 스킬(skills), 결정(decisions), 또는 워크플로우로 보존합니다.
- 미래의 실행은 개선된 팀 컨텍스트를 사용합니다.
모든 지속적인 작업물은 여전히 하나의 질문에 답해야 합니다: 이 작업이 존재하는 이유는 무엇인가? Rudder에서 그 답변은 Chat 또는 이슈 컨텍스트로부터 조직 목표까지 추적 가능해야 합니다.
기여(Contributing)
작고 집중된 풀 리퀘스트(pull requests)가 검토하고 병합하기 가장 쉽습니다. 더 큰 변경 사항의 경우, 구현 전에 토론을 시작하거나 명확하게 범위를 지정한 이슈로 시작하십시오.
작업을 인계하기 전에 기여자들은 자신이 건드린 영역에 대한 관련 유효성 검사(validation)를 실행해야 합니다. 표준 레포지토리 전체 기준선은 다음과 같습니다:
pnpm -r typecheck
pnpm test:run
pnpm build
만약 데스크톱 시작, 패키징, 마이그레이션 또는 로컬 프로필 라우팅을 건드렸다면 다음도 실행하십시오:
pnpm desktop:verify
커뮤니티(Community)
설정 도움, 빌드 로그, 제품 피드백 및 2주마다 열리는 Build Review를 위해 Rudder Discord에 참여하세요. 재현 가능한 버그와 구체적인 코드 변경 사항은 GitHub Issues를 사용하십시오.
또한 Rudder는 LINUX DO에서도 찾을 수 있습니다.
라이선스(License)
Rudder는 프로젝트 레벨에서 Apache-2.0으로 라이선스가 부여되었습니다. LICENSE, NOTICE를 참조하십시오.
코드 서명 정책
Rudder는 Windows 데스크톱 릴리스 아티팩트에 대해 SignPath Foundation 프로그램에 신청하고 있습니다. 애플리케이션이 승인되고 릴리스 파이프라인이 구성될 때까지, 배포된 바이너리는 SignPath로 서명되지 않습니다.
SignPath.io에서 무료 코드 서명을 제공하며,
SignPath Foundation으로부터 인증서를 받습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 개발 자료 GitHub · 9ffce42f의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기