내가 기다리던 AI 코딩 채팅들을 놓치지 않기 위해, 어깨를 톡 건드리는 고양이를 만들었습니다.
요약
사용자가 여러 AI 코딩 채팅을 동시에 사용할 때 발생하는 '대기 상태' 문제를 해결하기 위해 Kodama라는 데스크톱 고양이 인터페이스를 개발했습니다. 이 도구는 각 채팅의 현재 상태(작업, 대기, 검색 등)를 애니메이션과 시각적 신호로 직관적으로 보여줍니다. 또한, 어떤 채팅이 도움을 필요로 하는지 알려주는 알림 기능을 제공하여 작업 흐름의 연속성을 유지하도록 돕습니다.
핵심 포인트
- 고양이 애니메이션으로 AI 채팅의 상태(대기, 작업 등)를 시각화합니다.
- 어떤 채팅이 도움을 필요로 하는지 고유 이름과 함께 알려줍니다.
- Thinking, Running Command 등 상세한 작업 진행률까지 표시합니다.
- Claude Code, Codex 등 다양한 AI 코딩 도구와 동시에 작동 가능합니다.

얼마 전 제 의지와 상관없이 작업 흐름이 바뀌었습니다. 저는 한 에디터에서 코드를 작성하는 것을 멈추고, 여러 AI 코딩 채팅을 동시에 실행하기 시작했습니다. 하나는 무언가를 리팩토링(refactoring)하고, 하나는 테스트를 작성하며, 또 다른 하나는 확신하지 못했던 아이디어를 탐색했죠. 이 각각의 채팅들은 몇 분 동안 독립적으로 작동하다가 저에게 질문을 던지며 멈춥니다.
문제가 발생한 부분은 바로 이것이었습니다. 채팅이 한 단계를 완료하고 “이 명령을 실행할까요?”라고 물어본 다음, 그저 기다리기만 합니다. 화면 어디에도 아무것도 표시되지 않습니다. 저는 다른 창을 보느라 몰두하다가 15분 후에 돌아와 보니, 채팅 하나가 그 시간 내내 가만히 대기하며 단 하나의 “예”를 기다리고 있는 것을 발견하곤 했습니다.
제가 먼저 시도해 본 것들
당연한 해결책은 알림(Notification)이었습니다. 주의가 필요한 순간에 소리가 나는 것이죠. 이것이 약간 도움이 되기는 했지만, 두 가지 문제가 있었습니다.
첫째, 어떤 채팅이 호출하는지 알려주지 않습니다. 네 개의 채팅창이 열려 있을 때 “무언가가 당신을 필요로 합니다”라는 메시지는 절반의 답변일 뿐입니다. 둘째, 컴퓨터 앞에 앉아 있을 때만 작동합니다. 커피를 마시러 일어난다면, 채팅은 여전히 기다리고 있었고, 돌아와서 대답할 방법이 없었습니다.
제가 실제로 원했던 것은 동료가 몸을 숙여 “야, 두 번째 것이 권한 문제로 멈췄어”라고 말해주는 것과 비슷한 것이었습니다. 그래서 저는 그것을 만들었고, 고양이의 모습으로 만들었습니다.
Kodama
Kodama는 Windows 데스크톱 시계 옆에 사는 작고 손으로 애니메이션화된 고양이입니다. 이 고양이는 채팅들이 어떤 상태인지에 따라 자세를 취합니다: 기다리거나, 작업하거나, 당신에게 글을 쓰거나, 당신의 답변을 받거나, 잠들거나, 혹은 멈추는 것이죠. 저는 예상보다 애니메이션에 더 많은 시간을 할애했습니다. 왜냐하면 핵심은 아무것도 읽지 않고도 한눈에 상태를 이해할 수 있어야 하기 때문입니다. 또한 이 고양이는 채팅이 생각하고 있는지(thinking), 명령을 실행하는지(running a command), 검색 중인지(search), 서브 에이전트(subagent)를 사용하는지 여부와 “3/7”과 같은 작업 진행률까지 보여줍니다.
채팅이 필요할 때, 고양이에게서 작은 캡슐이 나와 알림과 빠른 답장을 제공합니다. 기다리는 채팅 목록이 있으며, 각 채팅은 고유한 이름이 있어 어떤 것이 요청하는지 알 수 있습니다. 이 기능은 Claude Code, Codex, Antigravity와 동시에 작동하며, 저처럼 여러 도구를 혼합하여 사용하는 경우 중요합니다.
휴대폰으로 답장하기

문제의 두 번째 부분은 책상에서 떨어져 있을 때 발생했습니다. Kodama는 동일한 정보를 휴대폰으로 전송할 수 있으며, 거기서 답장할 수 있습니다: 채팅에 답장을 보내거나, '허용(Allow)', '거부(Deny) (이유와 함께)', "항상 허용(Always allow this)", 또는 "이 작업을 위해 허용(Allow for this task)"을 통해 권한을 승인할 수 있습니다.
연결 방법은 두 가지입니다. 하나는 다른 설치가 필요 없는 Telegram이고, 다른 하나는 Tailscale을 사용하여 사용자의 사설 네트워크(private network) 위에서 실행되는 휴대폰 앱입니다. 또한 작은 안전 계층도 추가했습니다: 만약 휴대폰이 아닌 장치가 사용자 계정에 로그인하면 알람이 울리고 해당 장치는 들어오지 못하게 하며, PC에서 휴대폰을 잠글 수 있습니다.
작동 방식 (간략)
Kodama는 모니터링하는 도구의 설정에 후크(hooks)를 설치하고(원본 파일 백업 포함), Windows 예약 작업(scheduled task)을 사용합니다. 이 후크들이 각 채팅의 상태를 보고하며, 고양이와 휴대폰 앱이 이를 표시합니다. 가볍게 유지하려고 노력했습니다: 아무것도 변경되지 않으면 고양이는 깊은 잠에 빠져 CPU 사용량이 훨씬 적고, 마우스 움직임이나 알림으로 깨어납니다.
설치는 PowerShell에서 한 줄의 명령으로 하거나, 사용자 본인의 Claude에게 "github.com/LShinox/kodama에서 Kodama를 설치해 줘(Install Kodama from github.com/LShinox/kodama)"라고 말할 수 있으며, 그러면 README에 있는 지침을 따르면서 아무것도 건드리기 전에 질문합니다. 업데이트는 서명되어 있으며, 일치하지 않는 파일은 설치되지 않습니다.
제한 사항
제한 사항에 대해 명확히 말씀드리고 싶습니다.
현재는 Windows 전용입니다. Mac과 Linux 버전은 계획 중이지만 아직 구현되지 않았습니다.
설치 프로그램이 아직 코드 서명(code-signed)되지 않았기 때문에, Windows에서 "알 수 없는 게시자(unknown publisher)" 경고가 표시될 수 있습니다. 인증서 확보는 프로젝트의 첫 번째 희망 목록 항목입니다.
무료이지만 오픈 소스는 아닙니다. 코드는 비상업적 사용을 허용하는 PolyForm Noncommercial 1.0.0 라이선스 하에 소스 코드가 제공됩니다. 고양이 아트와 이름은 예약되어 있습니다.
한 사람이 만들었기 때문에 일부 미흡한 부분이 있을 수 있습니다. 고양이 메뉴에는 버그를 찾는 데 필요한 정보가 사용자 메시지나 키 없이 파일로 생성되는 "문제 보고(Report a problem)" 옵션이 있습니다.
제가 알고 싶은 것
만약 사용자님도 여러 AI 채팅을 동시에 사용하신다면, 저와 같은 경험을 하시는지 궁금합니다. 그리고 오늘 고양이가 보여주었으면 하는 상태가 있다면 어떤 것인지요. 이슈 트래커(issue tracker)에는 아이디어를 위한 라벨과 더 큰 제안을 위한 "희망(wish)" 라벨이 있습니다.
Repo: https://github.com/LShinox/kodama
Site: https://lshinox.github.io/kodama/
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기