Outworked – Claude Code Agents를 위한 Open Source Office UI
Outworked – An Open Source Office UI for Claude Code Agents
배경 및 소개
최근 LLM 기반 agent orchestration이 빠르게 보급되고 있는데요. 코드 작성, 리포 정리, 파일 편집 등 실제 개발 흐름에 agent를 투입하려면 도구 접근, 역할 분담, 안전 장치가 한꺼번에 필요합니다. 하지만 대부분은 CLI나 추상적 설정에 머물러 진입 장벽이 높았습니다. Outworked는 이 간극을 메우겠다는 시도로, Claude Code를 바탕으로 8-bit 오피스 메타포를 입힌 데스크톱 앱입니다. 각 agent를 책상과 스프라이트를 가진 “직원”으로 시각화하고, orchestrator를 “Boss”로 둬 업무를 쪼개 배정하는데요. 이는 agent 협업을 눈으로 보고 클릭하며 관리할 수 있게 만든 HCI적 접근이라는 점에서 주목할 만합니다. Hacker News에서는 “페르소나 기반 agent가 실제로 단일 agent보다 나은가”라는 근본 질문이 제기되었고, 제작자는 “입문자에게 Claude Code를 손쉽게 쓰게 하는 UI 레이어”라는 의도를 밝혔습니다. 개인적으로는 이 가시화가 학습 곡선을 낮추고 신뢰·통제감을 주는 설계라고 볼 수 있습니다.
주요 내용
Outworked의 핵심은 “보이는 오케스트레이션”인데요. Phaser로 구현된 8-bit 오피스에서 agent가 걷고 앉고 협업하며, 사용자는 이름, 역할, system prompt 기반의 personality, 모델, 스프라이트까지 커스터마이즈합니다. 목표를 자연어로 적으면 router가 태스크를 분해해 agent에 할당하고, 필요 시 임시 agent를 띄우거나 병렬 실행을 택합니다. agent 간에는 공유 버스와 [ASK:AgentName] 포맷으로 메시지를 주고받아 협업 흐름을 만들고요. 실행 엔진은 Claude Code로, Bash·Edit·Read 등 툴 접근이 그대로 살아 있어 실제 코드베이스에 손을 대는 작업이 가능합니다. 앱 내 대화창은 Markdown 렌더링과 코드 하이라이트, diff를 지원하고, Git Panel에서 status·staged changes·브랜치·PR 생성까지 끝낼 수 있습니다. 파일 브라우저는 agent 편집과 동기화되어 실시간으로 워크스페이스 변화를 보여주며, token과 비용을 agent·세션·일자 단위로 집계하는 Cost Dashboard로 거버넌스를 돕습니다. 설치는 GitHub Releases의 .dmg를 내려받아 Applications로 드래그하면 되는데요. 전제 조건은 Claude Code 설치 및 인증이며, 소스에서 빌드할 경우 Node.js v18 이상이 필요합니다. Electron 기반의 데스크톱 구조에 Frontend는 React 19·TypeScript·Tailwind, 빌드는 Vite, 그래픽은 Phaser 3로 구성되었습니다. 프로젝트는 components, lib, basic-skills, phaser, electron 디렉터리로 나뉘어 UI·오케스트레이션·터미널·저장소·비용·게임 로직을 분리했는데요. Skills는 markdown의 YAML frontmatter를 쓰는 SKILL.md 포맷으로 정의합니다. 기본 번들은 GitHub API, openai-whisper 음성 전사, apple-notes/reminders 연동, nano-pdf 읽기·추출, mcporter를 통한 MCP 서버 지원이 포함되며, 에이전트별 커스텀 스킬을 부여할 수 있습니다. 안전 측면은 defense-in-depth 전략을 택했는데, 삭제·설치·네트워크 변경 같은 위험 명령은 명시적 승인 없이는 차단하고, shell 명령 allowlist/blocklist, 작업 디렉터리 제한, 장기 작업 타임아웃, 전체 감사 로그를 제공합니다. 실행 전 plan 제시와 권한 대시보드로 가시성도 확보했는데요. 이는 실제 코드 작업을 다루는 agent 환경에서 필수적인 가드레일을 UI로 제도화했다는 점에서 의미가 있습니다. 여기에 데스크톱 알림과 8-bit 사운드까지 더해 몰입감을 높였고, macOS dmg/zip, Windows exe, Linux AppImage 패키징 스크립트도 갖췄지만 현재는 macOS 위주로 테스트됐습니다. 개인적으로는 이처럼 “업무 단위·권한·비용”을 한 화면에 접목한 설계가 학습과 디버깅, 팀 내 데모에 강점을 준다고 봅니다. 반면 실제 성과는 router 품질과 Claude Code 도구 체인의 안정성에 크게 좌우될 것이라는 점도 분명합니다.
결론 및 시사점
Outworked는 보이지 않던 agent 협업을 8-bit 오피스로 물질화해, “무엇이 언제 누구에 의해 실행되는가”를 즉시 파악하게 해줍니다. 이는 HCI 관점에서 mental model 형성과 신뢰도 제고에 유리한데요. 비용 대시보드와 권한 승인, 감사 로그를 한데 엮은 점도 엔터프라이즈 거버넌스에 맞춘 설계라고 볼 수 있습니다. 다만 페르소나를 쌓는 것이 단일 agent 프롬프트보다 항상 낫냐는 질문은 여전히 유효합니다. 복잡한 태스크 분해와 병렬화가 이득을 주는 문제군에서는 유리하겠지만, 단순 요청에는 오케스트레이션 오버헤드가 비용과 지연으로 돌아올 수 있습니다. 또한 Claude Code 의존성과 macOS 중심 테스트는 도입 환경을 가를 변수입니다. 그럼에도 오픈소스·플러그형 SKILL.md·UI 기반 안전장치 조합은 실험과 내재화를 가속할 기반인데요. 개인적으로는 팀 내 PoC와 교육, 에이전트 협업 패턴의 관찰·평가에 특히 적합하다고 생각합니다. 커뮤니티 플러그인과 스프라이트 생태계가 커지면, 가볍지만 실용적인 멀티-agent 워크스테이션으로 진화하지 않을까 하는 기대가 있습니다.
💡 멀티-agent가 효과적인 업무군을 선정해 Outworked로 태스크 분해·병렬화·권한 승인·비용을 한 화면에서 실험해보는 것이 좋겠습니다. 연구 측면에서는 가시화된 협업 로그를 활용해 agent 역할·스킬 구성이 성과와 오류율에 미치는 영향을 정량 평가할 수 있습니다.
뉴스레터 구독
매주 금요일, 주간 HCI 하이라이트를 이메일로 받아보세요.