clawd-on-desk
무엇인가
Clawd on Desk는 AI 코딩 에이전트의 실행 상태를 데스크톱 위 픽셀 캐릭터 애니메이션으로 옮겨 보여주는 Electron 기반 데스크톱 애플리케이션이다. 터미널 안에서만 보이던 에이전트의 진행 상황을 화면 한쪽에 상시 띄워 두는 상태 표시 계층에 해당한다. 기본 테마는 픽셀 게 Clawd, 삼색 고양이 Calico, 구름 캐릭터 Cloudling 세 가지이며 커스텀 테마와 Codex Pet 애니메이션 팩 가져오기를 받는다.
어떻게 동작하나
동작은 각 에이전트의 설정 파일에 훅을 등록하는 방식으로 이뤄진다. Claude Code는 명령 훅과 HTTP 권한 훅을 함께 쓰고, Codex CLI는 공식 훅과 `~/.codex/sessions/`의 JSONL 폴백을 병행한다. 훅은 로컬 HTTP 엔드포인트 `/state`로 라이프사이클 이벤트를 POST하고, 앱은 이를 idle·thinking·working·sleeping·error·attention·sweeping 상태로 매핑해 애니메이션을 바꾼다. 권한 훅이 등록된 에이전트는 Allow/Always/Deny 선택을 데스크톱 말풍선으로 되돌려준다. 서브에이전트가 뜨면 세션별로 애니메이션이 분기한다.
무엇과 다른가
터미널 출력을 파싱하거나 별도 대시보드를 띄우는 방식과 달리, 상시 표시되는 데스크톱 창이 상태를 대신한다. 권한 결정도 터미널 프롬프트가 아니라 데스크톱 말풍선에서 이뤄진다. 여러 에이전트를 동시에 등록하면 세션마다 캐릭터가 따로 반응한다. 에이전트별 훅은 해당 CLI의 기존 설정 파일에 주입되므로 별도 데몬을 두지 않는다.
어떻게 쓰나
릴리스에서 Windows x64/ARM64 설치 파일이나 macOS·Ubuntu/Linux 빌드를 받아 실행한다. 소스에서 빌드할 때는 Node.js가 필요하다. 연동은 Settings → Agents에서 켜거나 에이전트별 설치 스크립트를 직접 실행한다. 예를 들어 Gemini CLI는 `npm run install:gemini-hooks`, CodeBuddy는 `node hooks/codebuddy-install.js`, opencode는 `node hooks/opencode-install.js`를 쓴다. 훅은 `~/.gemini/settings.json`, `~/.cursor/hooks.json`, `~/.kimi/config.toml`, `~/.qwen/settings.json`, `~/.zcode/cli/config.json` 같은 각 CLI의 설정 파일에 기록된다.
전제와 한계
Antigravity CLI(agy)는 상태만 반영하고 권한 말풍선을 띄우지 않는다. WorkBuddy는 상태와 알림까지만 처리하고 권한 훅을 등록하지 않는다. CodeWhale과 Reasonix CLI는 1단계로 라이프사이클 애니메이션만 구동하며 권한 결정은 각 터미널 흐름에 남긴다. opencode와 MiMo Code의 `task` 도구가 만든 자식 세션은 헤드리스라 애니메이션 분기에 참여하지 않는다. 커스텀 HTTP 에이전트 등록은 훅을 설치하지 않고 상태 전달만 한다. ZCode에서는 명시적 `enabled:false` 설정을 보존하고 외부 `PermissionRequest` 훅 위에 덮어쓰지 않는다.
관련 논문 2
유사 도구
- cc-hahaClaude Code 세션에 다중 에이전트·Git worktree·권한 승인·모델 선택 절차를 데스크톱 앱으로 묶어 적용하는 워크스페이스 스킬이다.
- claude-code-hooksClaude Code의 모든 도구 호출을 PreToolUse·PostToolUse 훅으로 가로채 비밀 유출·위험 명령·설정 변조를 런타임에 차단하는 설치형 플러그인 마켓플레이스다.
- PiDeck로컬 프로젝트 디렉터리마다 pi·DSH 에이전트 세션을 모아 관리하는 Electron 데스크톱 워크벤치다. Codex·Claude 세션을 가져와 통합 열람·복구한다.
- oh-my-claude프롬프트에 ultrawork 트리거를 넣으면 병렬 실행·서브에이전트 위임·검증 게이트를 강제하는 Claude Code 플러그인이다.
- claude-brainClaude Code의 메모리·스킬·에이전트·규칙·설정을 git 원격 저장소로 동기화하고, 세션 시작·종료 훅에서 의미 기반 병합을 수행하도록 규정하는 플러그인이다.
- agentsysAI 에이전트 오케스트레이션 런타임이자 플러그인 마켓플레이스다. 작업 선택부터 PR·배포까지 단계 게이트로 묶고 세션 간 상태를 유지한다.