Skip to content

Latest commit

Β 

History

History
127 lines (87 loc) Β· 6.96 KB

File metadata and controls

127 lines (87 loc) Β· 6.96 KB

CodePet

Codex, Google Antigravity(AGY), Claude Code의 μž‘μ—… μƒνƒœμ™€ 계정별 ν•œλ„λ₯Ό ν•œκ³³μ—μ„œ 보여 μ£ΌλŠ” λ°μŠ€ν¬ν†± νŽ«μž…λ‹ˆλ‹€. μ„Έ ν”„λ‘œκ·Έλž¨μ˜ λŒ€ν™”λ₯Ό λ™μ‹œμ— 감지해 λ§ν’μ„ μœΌλ‘œ ν‘œμ‹œν•˜κ³ , μ„€μ • μ°½μ—μ„œ κ³„μ •Β·ν…Œλ§ˆΒ·κΈ€κΌ΄μ„ κ΄€λ¦¬ν•©λ‹ˆλ‹€.

Codex CLI의 펫 에셋(~/.codex/pets)을 κ·ΈλŒ€λ‘œ κ°€μ Έλ‹€ μ“°κΈ° λ•Œλ¬Έμ—, Codexμ—μ„œ νŽ«μ„ μ„€μΉ˜ν•΄λ’€λ‹€λ©΄ 별도 μ„€μ • 없이 λ°”λ‘œ 골라 μ“Έ 수 μžˆμŠ΅λ‹ˆλ‹€.

μ‹€ν–‰

npm install
npm run start

exe둜 λ½‘μœΌλ €λ©΄:

npm run dist

artifacts/CodePet-0.3.0.exe 포터블 μ‹€ν–‰ 파일이 λ‚˜μ˜΅λ‹ˆλ‹€. μ„€μΉ˜ κ³Όμ • 없이 μ‹€ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€. λΉŒλ“œλŠ” 앱을 끈 μƒνƒœμ—μ„œ λŒλ €μ•Ό ν•©λ‹ˆλ‹€(μ‹€ν–‰ 쀑이면 파일 잠금 λ•Œλ¬Έμ— μ‹€νŒ¨).

DevToolsκ°€ ν•„μš”ν•˜λ©΄ μ΄λ ‡κ²Œ μΌœμ„Έμš”.

$env:PET_DEVTOOLS="1"
npm run dev

뭘 ν•˜λŠ” 앱인가

μ‚¬μš©λŸ‰ 확인

νŽ«μ„ λ”λΈ”ν΄λ¦­ν•˜λ©΄ μ„€μ •μ˜ ν•œλ„ 화면이 μ—΄λ¦½λ‹ˆλ‹€. Codex, AGY, Claude의 ν˜„μž¬ 계정 ν•œλ„λ₯Ό μΉ΄λ“œλ‘œ ν•¨κ»˜ ν‘œμ‹œν•˜λ©° 계정 μ „ν™˜ κΈ°λŠ₯은 μΉ΄λ“œμ— λ„£μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. CodexλŠ” κ³ μ •λœ 5μ‹œκ°„ 주기둜 μΆ”μ •ν•˜μ§€ μ•Šκ³  μ„œλ²„κ°€ λ³΄λ‚΄λŠ” μ‹€μ œ 기간을 읽어 5μ‹œκ°„Β·μ£Όκ°„Β·μ›”κ°„ ν•œλ„μ™€ λͺ¨λΈλ³„ μΆ”κ°€ ν•œλ„λ₯Ό λ™μ μœΌλ‘œ ν‘œμ‹œν•©λ‹ˆλ‹€. μ‚¬μš©λ₯ μ΄ 70%λ₯Ό λ„˜μœΌλ©΄ κ²Œμ΄μ§€κ°€ λ…Έλž€μƒ‰, 90%λ₯Ό λ„˜μœΌλ©΄ 빨간색이 λ©λ‹ˆλ‹€.

Codex μ‚¬μš©λ₯ μ΄ 90%λ₯Ό λ„˜μœΌλ©΄ μ΄ˆκΈ°ν™” μ£ΌκΈ°λ‹Ή ν•œ 번 κ²½κ³  말풍선을 ν‘œμ‹œν•©λ‹ˆλ‹€.

계정 μΆ”κ°€/μ „ν™˜/μ‚­μ œ

우클릭 메뉴와 μ‹œμŠ€ν…œ νŠΈλ ˆμ΄μ—μ„œ Codex, AGY, Claude λͺ¨λ‘ 같은 ν˜•νƒœμ˜ μ €μž₯ 계정 λͺ©λ‘κ³Ό 둜그인 / 계정 μΆ”κ°€ ν•­λͺ©μ„ μ œκ³΅ν•©λ‹ˆλ‹€. 계정 μ‚­μ œλŠ” 섀정… β†’ κ³„μ •μ—μ„œ ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

  • Codex: 별도 둜그인 ν”„λ‘œν•„μ—μ„œ μƒˆ 계정을 μΆ”κ°€ν•˜κ³  μ €μž₯된 인증 정보λ₯Ό μ›μžμ μœΌλ‘œ μ „ν™˜ν•©λ‹ˆλ‹€.
  • AGY: ν˜„μž¬ Windows 자격 증λͺ…을 ν”„λ‘œν•„λ‘œ μ €μž₯ν•˜κ³ , μ„ νƒν•œ κ³„μ •μœΌλ‘œ λ°”κΎΌ λ’€ AGYλ₯Ό λ‹€μ‹œ μ‹œμž‘ν•©λ‹ˆλ‹€.
  • Claude: ν˜„μž¬ Claude 자격 νŒŒμΌμ„ ν”„λ‘œν•„λ‘œ μ €μž₯ν•˜κ³  μ „ν™˜ν•©λ‹ˆλ‹€. 이미 μ—΄λ¦° μ„Έμ…˜μ€ μœ μ§€λ˜λ©° μƒˆ μ„Έμ…˜λΆ€ν„° μ„ νƒν•œ 계정을 μ‚¬μš©ν•©λ‹ˆλ‹€.

ν”„λ‘œν•„ μ €μž₯μ†ŒλŠ” ~/.codepet/codex-switch, ~/.codepet/antigravity-switch, ~/.codepet/claude-switchμž…λ‹ˆλ‹€. μ„€μ • ν™”λ©΄μ—λŠ” λΉ„λ°€ 값이 λ…ΈμΆœλ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

ν˜„μž¬ μ‚¬μš© 쀑인 계정은 μ‚­μ œν•  수 μ—†μœΌλ©°, λ‹€λ₯Έ κ³„μ •μœΌλ‘œ μ „ν™˜ν•œ λ’€ μ €μž₯된 ν”„λ‘œν•„λ§Œ μ‚­μ œν•  수 μžˆμŠ΅λ‹ˆλ‹€.

μž‘μ—… μ‹€μ‹œκ°„ ν‘œμ‹œ

Codex의 ~/.codex/sessions, AGY의 둜컬 transcript, Claude의 ν”„λ‘œμ νŠΈ JSONL을 tailν•΄ μ„Έ ν”„λ‘œκ·Έλž¨μ˜ μž‘μ—…μ„ ν•¨κ»˜ κ°μ§€ν•©λ‹ˆλ‹€.

  • μž‘μ—… μ‹œμž‘/응닡 μž‘μ„± β†’ 펫이 μ‚΄νŽ΄λ³΄κΈ° λͺ¨μ…˜μœΌλ‘œ λ°”λ€œ. Codex rollout에 ν™•μΈλœ Sol/Terra/Luna λͺ¨λΈ 정보가 있으면 제λͺ©μ— ν‘œμ‹œλ©λ‹ˆλ‹€. λ™μ‹œ λŒ€ν™”λŠ” κ³΅κΈ‰μžλ₯Ό 합쳐 μ‹œμž‘ μˆœμ„œλŒ€λ‘œ μ΅œλŒ€ 5개λ₯Ό 보여 μ£Όλ©°, 각 제λͺ© λ°”λ‘œ μ•„λž˜μ— ν•΄λ‹Ή λŒ€ν™” λ‚΄μš©μ΄ ν‘œμ‹œλ©λ‹ˆλ‹€.
  • 파일 μˆ˜μ •, λͺ…λ Ή, ν…ŒμŠ€νŠΈ, λΉŒλ“œ β†’ μž‘μ—… 쀑 λͺ¨μ…˜κ³Ό ν˜„μž¬ μƒνƒœκ°€ 말풍선에 ν‘œμ‹œλ¨
  • Codex μ‚¬μš©μž μž…λ ₯ λ˜λŠ” μ‹€ν–‰ 승인 λŒ€κΈ° β†’ 기닀리기 λͺ¨μ…˜μœΌλ‘œ λ°”λ€œ. 말풍선을 ν΄λ¦­ν•˜λ©΄ ν•΄λ‹Ή Codex λŒ€ν™”λ₯Ό λ°”λ‘œ μ—΄ 수 있음(μ„Έμ…˜ λ‘œκ·Έμ— ꡬ쑰화 μ΄λ²€νŠΈκ°€ μžˆμ„ λ•Œ)
  • μž‘μ—… μ™„λ£Œ β†’ 폴짝 λ›°κ³  λ§ˆμ§€λ§‰ λ©”μ‹œμ§€λ₯Ό ν‘œμ‹œν•¨. μ™„λ£Œ 말풍선을 ν΄λ¦­ν•˜λ©΄ ν•΄λ‹Ή Codex μ±„νŒ…μœΌλ‘œ 이동함
  • μž‘μ—… 쀑단 β†’ μ“°λŸ¬μ§

μ„Έμ…˜ μ—¬λŸ¬ 개λ₯Ό λ™μ‹œμ— λŒλ €λ„ 각각 μΆ”μ ν•˜κ³ , μ™„λ£Œ μ΄λ²€νŠΈκ°€ μ—†λŠ” μž‘μ—…μ€ κ³΅κΈ‰μžλ³„ quiet-time λ˜λŠ” stale 처리 λ’€ μ›λž˜ μƒνƒœλ‘œ λŒμ•„μ˜΅λ‹ˆλ‹€.

말풍선 κ°œμΈμ •λ³΄ μˆ˜μ€€μ€ μ„€μ •μ˜ 일반 ν™”λ©΄μ—μ„œ μ„ νƒν•©λ‹ˆλ‹€.

  • "전체 λ‚΄μš©" β€” μš”μ²­, 쀑간 λ©”μ‹œμ§€, 파일λͺ…κ³Ό λͺ…령을 ν‘œμ‹œ
  • "μƒνƒœλ§Œ" β€” μž‘μ—… 쀑, ν…ŒμŠ€νŠΈ 쀑, 승인 λŒ€κΈ° 같은 μƒνƒœλ§Œ ν‘œμ‹œ
  • "끄기" β€” μžλ™ μž‘μ—… λ§ν’μ„ λ§Œ 끔. 펫 λͺ¨μ…˜μ€ κ·ΈλŒ€λ‘œ λ™μž‘

ν™”λ©΄ μ„€μ •

μ„€μ •μ˜ 일반 ν™”λ©΄μ—μ„œ 라이트, 닀크, μ‹œμŠ€ν…œ ν…Œλ§ˆλ₯Ό 선택할 수 μžˆμŠ΅λ‹ˆλ‹€. μ„€μΉ˜λœ Windows 글꼴을 κ²€μƒ‰ν•˜κ³  μ„ νƒν•˜λ©΄ μ„€μ • μ°½κ³Ό 말풍선에 ν•¨κ»˜ μ μš©λ©λ‹ˆλ‹€.

펫 λ°”κΎΈκΈ°

우클릭 β†’ "펫 λ°”κΎΈκΈ°"μ—μ„œ κ³ λ₯΄λ©΄ μ¦‰μ‹œ λ°”λ€Œκ³ , 선택은 λ‹€μŒ μ‹€ν–‰ λ•Œλ„ μœ μ§€λ©λ‹ˆλ‹€. λͺ©λ‘μ— λ‚˜μ˜€λŠ” μˆœμ„œλŠ”:

  1. exe μ˜† pet/spritesheet.webp β€” 직접 λ§Œλ“  μŠ€ν”„λΌμ΄νŠΈλ₯Ό μ“°κ³  싢을 λ•Œ
  2. ~/.codex/pets에 μ„€μΉ˜λœ νŽ«λ“€ β€” Codexμ—μ„œ νŽ«μ„ μΆ”κ°€ν•˜λ©΄ 여기에도 μžλ™μœΌλ‘œ λ‚˜νƒ€λ‚¨
  3. λ‚΄μž₯ κΈ°λ³Έ 펫

μ‘°μž‘λ²•

λ™μž‘ λ°˜μ‘
클릭 인사
더블클릭 점프 + μ„€μ •μ˜ ν•œλ„ ν™”λ©΄ μ—΄κΈ°
λ“œλž˜κ·Έ μ°½ 이동
λ“œλž˜κ·Έ μ’…λ£Œ / 크기 쑰절 μ’…λ£Œ ν˜„μž¬ μœ„μΉ˜μ™€ 크기λ₯Ό μ €μž₯ν•˜κ³ , λ‹€μŒ μ‹€ν–‰ λ•Œ ν˜„μž¬ ν™”λ©΄ μ•ˆμ—μ„œ 볡원
우클릭 메뉴 (μ„€μ •, 계정, 펫 λ°”κΎΈκΈ°, λͺ¨μ…˜, μΌμ‹œμ •μ§€, 마우슀 따라가기, μžλ™ μ‹€ν–‰, 숨기기 λ“±)
μ‹œμŠ€ν…œ 트레이 μ„€μ •, 보이기, 숨기기, 계정, 펫 λ°”κΎΈκΈ°, μ™„μ „ μ’…λ£Œ
μ™„λ£ŒΒ·μž…λ ₯ λŒ€κΈ°Β·μŠΉμΈ λŒ€κΈ° 말풍선 클릭 ν•΄λ‹Ή Codex μ±„νŒ… μ—΄κΈ°
κ·Έ μ™Έ 말풍선 클릭 λ‹«κΈ°

우클릭 λ©”λ‰΄μ˜ "숨기기"λŠ” 창만 감좔고 앱은 μ‹œμŠ€ν…œ νŠΈλ ˆμ΄μ— λ‚¨κΉλ‹ˆλ‹€. μ™„μ „νžˆ 끄렀면 μ‹œμŠ€ν…œ 트레이 μ•„μ΄μ½˜μ„ μš°ν΄λ¦­ν•΄μ„œ "μ™„μ „ μ’…λ£Œ"λ₯Ό λˆ„λ₯΄λ©΄ λ©λ‹ˆλ‹€.

우클릭 λ©”λ‰΄μ˜ "μœˆλ„μš° μ‹œμž‘ μ‹œ μžλ™ μ‹€ν–‰"을 켜면 λ‘œκ·ΈμΈν•  λ•Œ 같이 λœΉλ‹ˆλ‹€.

μ»€μŠ€ν…€ μŠ€ν”„λΌμ΄νŠΈ λ§Œλ“€κΈ°

Codex 펫 μŠ€ν”„λΌμ΄νŠΈ κ·œκ²©μ„ κ·ΈλŒ€λ‘œ λ”°λ¦…λ‹ˆλ‹€.

  • 전체 크기 1536x1872, μ…€ 192x208의 8μ—΄ x 9ν–‰ κ·Έλ¦¬λ“œ
  • rowκ°€ μƒνƒœ, column이 ν”„λ ˆμž„
row μƒνƒœ ν”„λ ˆμž„ 수
0 idle 6
1 runningRight 8
2 runningLeft 8
3 waving 4
4 jumping 5
5 failed 8
6 waiting 8
7 running 8
8 review 8

이 규격으둜 λ§Œλ“  spritesheet.webpλ₯Ό exe μ˜† pet/ 폴더에 λ„£μœΌλ©΄ 메뉴에 "μ»€μŠ€ν…€"으둜 λ‚˜νƒ€λ‚©λ‹ˆλ‹€.

μ½”λ“œ ꡬ쑰

  • src/main.js β€” μ°½ 관리, 이동 둜직, 메뉴, 말풍선 μ œμ–΄. 이동 μ†λ„λ‚˜ 말풍선 크기 같은 값은 μƒλ‹¨μ˜ MOVEMENT_CONFIG, BUBBLE_CONFIG에 λͺ¨μ—¬ 있음
  • src/codex-watcher.js, antigravity-watcher.js, claude-watcher.js β€” μ„Έ ν”„λ‘œκ·Έλž¨μ˜ 둜컬 μž‘μ—… 둜그 κ°μ‹œ
  • src/codex-account-switcher.js, antigravity-account-switcher.js, claude-account-switcher.js β€” κ³΅κΈ‰μžλ³„ 계정 μ €μž₯/μ „ν™˜/μ‚­μ œ
  • src/account-submenu.js β€” CodexΒ·AGYΒ·Claude 곡톡 계정 메뉴 ꡬ성
  • src/codex-usage-label.js β€” Codex μ„œλ²„ ν•œλ„ κΈ°κ°„κ³Ό λͺ¨λΈ λ²”μœ„μ— λ§žλŠ” ν‘œμ‹œ 이름 생성
  • src/provider-usage.js β€” AGYΒ·Claude ν•œλ„ 쑰회 및 μ •κ·œν™”
  • src/settings.html / settings.js β€” μ„€μ •, 계정, ν•œλ„ ν™”λ©΄
  • src/renderer.js β€” μŠ€ν”„λΌμ΄νŠΈ μ• λ‹ˆλ©”μ΄μ…˜ μž¬μƒ. μƒνƒœ μ •μ˜λŠ” PET_STATES
  • src/bubble.html / bubble.js β€” 톡합 μž‘μ—… 말풍μ„