바탕화면을 돌아다니는 데스크톱 마스코트 + 작업 도우미. 작업 표시줄을 걸어다니고, 앉고, 자고, 가끔 말을 겁니다. 할 일 · 스티커 메모 · 알림도 챙겨 줍니다.
↑ 실제로 앱에서 쓰는 캐릭터입니다. 클릭해 보세요.
가만히 두면 알아서 돌아다니고, 필요할 땐 일을 거듭니다.
작업 표시줄 위를 걷고, 앉고, 가끔 잠듭니다. 창을 가리지 않게 클릭은 그대로 통과합니다.
시간대와 상황에 맞춰 혼잣말을 합니다. 아침엔 인사하고, 밤늦으면 자라고 잔소리합니다.
빌드가 끝났거나 알림이 오면 대화와 구분되는 알림 카드로 전달합니다. 놓친 알림은 배지로 남고, 리마인더도 걸 수 있습니다.
마크다운 파일 하나로 관리하는 할 일 — 일자별 · 분류 · 반복 · 기한. 화면의 할 일 카드에서 바로 체크하고, 정각마다 남은 일을 캐릭터가 말해 줍니다.
메모 한 장이 작은 창 하나입니다. 어느 모니터로든 끌어다 놓고, 바로 쓰면 저절로 저장됩니다. 굵게 · 밑줄 같은 글자 서식, 색 다섯 가지, 닫아도 남는 메모.
어느 창에서든 단축키로 — 빠른 메모, 클립보드 기록, 자주 여는 폴더 · 주소 바로가기, Claude 에게 한 줄 물어보기.
Claude Code 작업이 끝나거나 허락이 필요하면 캐릭터가 알려 주고, 알림을 누르면 그 터미널 창으로 갑니다. (Windows)
드래그해서 집어 던지면 속도가 실려 날아가고, 바닥에서 통통 튑니다.
동료를 한 명 불러 두 마리가 함께 돌아다닙니다. 가끔 둘이 대화를 주고받고, 짝이 맞는 캐릭터끼리는 껴안기도 합니다.
내 그림(PNG · GIF)을 끌어다 놓으면 배경을 지워 캐릭터로 만들어 줍니다. Spine 2D 스켈레톤이나 스프라이트 시트도 넣을 수 있고, 만든 캐릭터는 파일로 주고받습니다.
모니터가 여럿이면 어느 모니터에서 돌아다닐지 메뉴에서 고릅니다. 모델 이름으로 구분됩니다.
상태마다 여러 동작 중 하나를 골라 움직이고, 캐릭터에 따라 무장 모드나 "원작처럼" 분위기를 켤 수 있습니다.
설치도 관리자 권한도 필요 없습니다. 끄고 싶으면 메뉴에서 종료 한 번.
새 버전이 나오면 캐릭터가 알려 줍니다. 누르면 받아서 바꿔 끼우고 다시 켜집니다. 캐릭터 · 설정 · 할 일은 그대로 남습니다.
전부 캐릭터를 클릭하는 데서 시작합니다.
| 캐릭터 좌클릭 | 메뉴 — 동작 · 할 일 · 도구 · Claude 세션 · 캐릭터 · 리마인더 · 설정 · 숨기기 · 종료 |
| 캐릭터 드래그 | 집어서 던지기 |
| 말풍선 클릭 | 넘기기 (알림 카드는 그 터미널로) |
| 스티커 메모 | 머리줄을 끌어 옮기기(어느 모니터로든), 본문에 바로 쓰기, × 닫기 · 🗑 지우기 |
| Ctrl+Alt+Space · V · O · Q | 빠른 메모 · 클립보드 기록 · 바로가기 · Claude 에게 물어보기 |
| 트레이 아이콘 | 놓친 알림 · 도구 · 닫은 메모 · 캐릭터 · 설정 · 업데이트 확인 · 종료 |
DeskPet-x.y.z.exe 다운로드
macOS — Releases 의 DeskPet-mac-x.y.z.zip(mac-v버전)을 풀어 응용 프로그램 폴더로 옮긴 뒤,
터미널에서 한 번 xattr -cr /Applications/DeskPet.app. Claude Code 연동과 deskpet.ps1 은 아직 Windows 전용입니다.
기본 캐릭터가 하나 들어 있습니다. 가장 쉬운 방법은 내 그림으로 만들기입니다 —
설정 창 → 캐릭터에 PNG · GIF 를 끌어다 놓으면 배경을 지우고 좌우를 맞춰 캐릭터가 됩니다 (대기 그림 한 장만 있어도 됩니다).
만든 캐릭터는 .deskpet 파일로 내보내 주고받을 수 있습니다.
Spine 2D 스켈레톤이나 2D 스프라이트 시트가 있으면 직접 넣을 수도 있습니다.
%APPDATA%\deskpet\characters\내캐릭터\
character.json
foo.skel
foo.atlas
foo.png
character.json 은 이렇게 씁니다.
{
"name": "표시할 이름",
"renderer": "spine",
"skeleton": "foo.skel",
"atlas": "foo.atlas",
"height": 250,
"animations": {
"idle": "Relax", "walk": "Move", "sit": "Sit",
"sleep": "Sleep", "pet": "Interact"
}
}
Spine 런타임도 한 번 받아서 아래 경로에 두면 됩니다. 3.8 브랜치여야 합니다.
%APPDATA%\deskpet\vendor\spine\spine-webgl.js
https://raw.githubusercontent.com/EsotericSoftware/spine-runtimes/3.8/spine-ts/build/spine-webgl.js
칸을 넘기는 2D 캐릭터는 "renderer": "sprite" 로 넣습니다.
RPG Maker MV 게임은 레시피(어느 파일의 몇 번째 칸을 쓸지만 적은 JSON)로
내 PC에 설치된 게임에서 캐릭터를 뽑아 씁니다.
저장소에 레시피 예시가 들어 있습니다.
node tools/rpgmv-extract.js "<게임 폴더>" tools/recipes/…/캐릭터.json
자세한 형식은 개발 문서에 있습니다.
앱은 127.0.0.1:45678 에만 열리는 작은 서버를 띄웁니다.
빌드 스크립트든 뭐든 캐릭터에게 말을 시킬 수 있습니다.
curl -X POST http://127.0.0.1:45678/say ^
-H "Content-Type: application/json; charset=utf-8" ^
-d "{\"text\":\"빌드 끝났어\",\"mood\":\"happy\"}"
mood 는 normal / happy / alert 이고,
말풍선 색과 캐릭터 반응이 달라집니다.
같은 서버로 할 일 · 스티커 메모도 넣을 수 있고(/todo · /note), Windows 에서는 앱이 만들어 두는
deskpet.ps1 로 빌드가 끝났을 때 알리거나 할 일을 넣습니다.
자세한 건 README.