요즘 Claude Code, Codex 사용 근황: Opus 5.5, 직접 만든 macOS 앱, 리빙 문서
영상 요약
화이트보드에 대충 정리해 두고, 요즘 Claude Code와 Codex로 어떻게 개발하는지 편하게 이야기한 영상이다. 구현은 거의 Opus 5.5에 맡기고 있고 토큰 사용량은 1200억을 조금 넘었다. GPT는 이미지 생성과 Astra 코드 리뷰에 쓴다. 작업은 직접 만든 macOS 앱 Muster에서 하는데, Claude Mods로 세션마다 리포트를 옆 웹뷰에 띄워 둔다. 릴리스 노트는 이제 챙겨 보지 않고, 요즘 가장 재미있는 건 게임 개발이다. Fable 6를 기다리는 이유도 게임 때문이다.
모델: 구현은 Opus 5.5, 이미지와 리뷰는 GPT
요즘은 Opus 5.5를 압도적으로 많이 쓴다. Fable을 쓰던 때와 비교하면 토큰이 거의 닳지 않아서 그만큼 많이 쓸 수 있다. 얼마 전 사용량을 확인해 보니 1200억 토큰이 조금 넘었고, 쓰는 속도는 계속 빨라지고 있다.
토큰을 낭비해서 그런 건 아니다. 한 번 굴려 두면 2시간, 3시간씩 도는 작업이 많아졌다. 그 사이에 놀 수는 없으니 작업을 던져 두고 다른 일을 하고, 또 던져 두고 다른 일을 한다. 그러다 보니 동시에 돌아가는 작업이 많아졌다.
요금제는 Claude가 Max, GPT가 Pro다. GPT는 이미지 생성과 Astra 코드 리뷰 위주로 쓴다. 최근 Codex 팀 리더 Tibo가 한 달 동안 매일 새 기능을 내고, 못 내는 날은 사용량을 리셋해 주겠다고 했다. 실제로 2~3일에 한 번꼴로 리셋되고 있어서 사용량 걱정은 크게 없다. 다만 fast 모드를 켜면 토큰이 녹는 건 똑같다.
| 일 | 맡기는 곳 |
|---|---|
| 구현 코드 | Opus 5.5 |
| 이미지 생성 | GPT |
| 코드 리뷰 | GPT (Astra) |
Grok은 요즘 거의 계륵이 됐다. 일을 맡겼다가 실수하면 그걸 또 검수해야 하니, 차라리 Opus 5.5 미디움 정도에 시키거나 GPT에 시킨다. 예전에 Fable을 쓸 때는 사용량이 모자라서 Grok도 같이 썼는데 지금은 잘 쓰지 않는다. 크로스 리뷰를 GPT와 Grok 둘 다에게 시킬 수도 있지만, 그러면 1시간에 끝날 작업이 3~4시간으로 늘어나서 그렇게까지는 하지 않는다.
작업 환경: 직접 만든 macOS 앱 Muster
개발은 직접 만든 macOS 앱에서 한다. 이름은 Muster다. must에 er을 붙여 지었다. 들어간 것은 이렇다.
- Swift, SwiftUI
- libghostty: Ghostty 터미널을 라이브러리로 쓸 수 있게 Ghostty가 직접 제공하는 것이다. 이걸 쓰면 Ghostty 터미널을 다른 앱 안에 넣어 쓸 수 있다.
- herdr
- 웹뷰 (WKWebView)
디자인은 엉망이다. 디자인을 신경 쓸 시간이 없어서 구현 위주로 만들었다. 가운데에 터미널 세션이 있고 herdr가 보이고, 옆에 사이드 패널과 탭, 사용량을 볼 수 있는 화면이 있다. 오른쪽이 웹뷰인데, 내가 만든 리포트를 여기서 본다.
예를 들어 Claude Code 세션에서 "최근에 Opus 5.5랑 Astra 대결하는 유튜브 영상 찍었던 거, 그 작업 문서 웹뷰에 띄워줘"라고 하면, 문서를 찾은 뒤 오른쪽에 띄워 준다. "지금 대화로 리포트 만들어줘"라고 하면 리포트를 HTML로 만들고 그 자리에 바로 뜬다.
이렇게 만든 이유는 이전 방식이 정신없어서다. 리포트 서버를 따로 두고 Chrome 탭을 여러 개 띄워서 탭을 바꿔 가며 봤는데, 탭과 세션이 짝지어지지 않으니 어느 탭이 어느 작업인지 헷갈렸다. 지금은 세션 하나에 웹뷰 페이지 하나가 짝지어지도록 해 두었다. 다른 세션으로 돌아가면 웹뷰도 그 세션의 페이지로 바뀐다.
리빙 문서: 세션마다 리포트가 웹뷰에 뜬다
요즘 가장 중요하게 생각하는 건, 내가 전체를 파악할 수 있게 그림으로 보여 주는 문서다. 추적하는 방식에 따라 리빙 문서(living documents)라고도 부른다.
새로운 방식은 아니다. 예전부터 있던 방식인데 최근 더 신경 쓰게 됐다. 작업 범위가 커지고 한 번에 맡기는 일이 많아지면서 내가 맥락을 따라가지 못하게 됐기 때문이다. 그래서 지금 이해하고 싶은 상황에 맞는 다이어그램을 그려 달라고 하고, 그걸 보고 이해한다.
결제 시스템을 붙인다면 결제 흐름을 시퀀스 다이어그램으로 그려 달라고 한다. 보고 이해가 되면 넘어간다. 이해가 안 되면 그때부터 왜 그렇게 되어 있는지, 로직과 코드가 어떻게 되어 있는지 묻는다. 줄글은 한계가 분명했다. 정확히는 내 한계였다. 리포트를 두세 페이지씩 만들어 주는데 더는 못 읽겠더라. 그래서 다이어그램에 집착하기 시작했고, HTML 문서를 잘 만드는 데 공을 들이고 있다.
Claude Mods로 웹뷰에 띄우기
리포트를 웹뷰에 띄우는 건 Claude Mods로 만들었다. Claude Mods는 Claude Code가 돌아가는 코드 안에서 실행되는 내 코드라고 보면 된다. 원래 있던 훅보다 한 단계 위라고 생각하면 된다. $ 안에 쓸 수 있는 메서드와 컨텍스트가 다 들어 있어서 $.model.haiku 같은 식으로 쓸 수 있다(문법이 정확한지는 자신 없다).
리포트를 띄우는 흐름은 이렇다.
- Claude Code에서
turn.complete이벤트가 온다. 내가 말을 걸고 Claude가 답을 마쳐 턴이 끝났다는 뜻이다. - agentId를 찾는다.
findReports로 이 세션의 HTML 리포트를 찾는다. 이미 있는 파일이면 새로 만들지 않고 그 파일을 고치는 게 맞기 때문이다.- 리포트가 있으면
open -g로 Muster를 불러 웹뷰에 띄운다.
이벤트 이름으로 핸들러를 걸어 두면, 그 이벤트가 들어올 때 async 함수가 돈다. 이런 코드를 다뤄 본 사람에게는 익숙한 패턴일 것이다. $.clock의 after에 0을 주면 0초 뒤, 그러니까 바로 실행된다. 타임아웃 같은 함수다. 이런 식으로 커스텀할 수 있는 폭이 크게 넓어졌다.
만들 때는 plugin-authoring 스킬을 쓰면 된다. "Claude Mods로 ○○ 기능 만들어줘"라고 하면 알아서 만들어 준다.
REC 모드와 그 밖의 모드
화면 녹화용으로 만든 REC 모드도 Claude Mods다. 모드는 세션이 도는 중간에 끼어들어 실행되기 때문에, 화면에 나오기 전에 원하는 글자를 바로 가릴 수 있다. Anthropic API 키처럼 생긴 예시 값을 입력하고 엔터를 치면 가려진 글자로 바뀌어 나온다.
그 밖에 따로 만든 것도 있다. side-question은 옆에서 질문을 던지면 답해 주는 모드인데, 필요할 것 같아 만들었지만 막상 쓸 일은 별로 없었다. /pin을 치면 터미널 안에 버튼이 있는 UI가 뜬다. 다만 터미널 안 UI는 꾸밀 수 있는 데 한계가 있어서, 아예 Muster의 웹뷰로 빼서 HTML로 보게 바꿨다. 그쪽이 더 편하다.
요즘 안 하는 것: 릴리스 노트 챙겨 보기
Claude Code와 Codex의 새 릴리스는 원래 Grok Bot 같은 걸로 추적을 시켰는데, 이제는 보지 않는다. 신규 기능보다는 새 모델을 더 기다리고 있다. 최근 관심 있게 본 기능을 굳이 꼽자면 Claude Mods 정도다.
대신 해외 유튜브 영상을 본다. 새 기능은 보통 한국 시간으로 새벽에 나오기 때문에 해외 영상이 더 빨리 올라온다. 거기서 같은 기능이 반복해서 나오면 그때 한번 찾아보고, 그렇지 않으면 굳이 보지 않는다.
이유는 단순하다. 너무 피곤하다. 기능 하나하나 1, 2, 3, 4 테스트해서 영상으로 찍는 것도 재미가 없었다.
요즘 재밌는 것: 게임 개발, 그리고 Fable 6
요즘 재미를 붙인 건 게임 개발 영상이다. 실제로 가장 열심히 개발하는 것도 게임이다. 원래 2D 게임 위주로 만들었고, 3D 게임은 유튜브를 찍으면서 처음 해 봤다.
게임은 예전부터 해 보고 싶던 분야였다. 게임 쪽에 꿈이 있어서라기보다, 게임이 일종의 종합 예술이라서다. 음악과 사운드, 효과음을 챙겨야 하고, 에셋도 만들어야 하고, 마케팅도 해야 하고, 무엇보다 재미있어야 하니 기획력이 중요하다. 개발도 프론트엔드 하나가 아니라 화면부터 데이터까지 풀스택으로 다 해야 한다. 그래서 게임 만드는 사람들이 정말 대단하다고 생각했고, 나도 해 보고 싶었다.
반대로 쉬운 웹 서비스는 결제까지 들어가는 정도의 큰 시스템이 아니면 붙어서 만들 흥미가 잘 생기지 않는다. 게임은 다르다. 요즘 올리는 Meshy, Blender, Higgsfield를 쓴 영상들도 시간을 많이 들여 만들고 있다.
보는 사람들도 재미있어하는 것 같다. 개발 얘기가 재미없는 건 아니지만 내가 재미있게 찍지를 못하는 것 같았다. 유튜브를 계속하려면 돈을 잘 벌거나 재미가 있거나 둘 중 하나는 있어야 하는데, 요즘 게임 쪽에서 그 재미가 느껴져서 계속 해 보고 싶다.
Fable 6가 나온다는 이야기가 많은데, 내가 기대하는 이유도 사실 게임 때문이다.
마치며
요즘은 예전처럼 Claude Code와 Codex의 기능 하나하나를 따라가며 지내지는 않는다. 나보다 잘 쓰는 분들이 훨씬 많을 거라 생각하고, 이런 근황 이야기는 가끔 또 찍어 보려 한다.
영상으로 보기: https://youtu.be/RPRZ31bjWOo
댓글
아직 댓글이 없습니다. 첫 댓글을 남겨보세요!