Claude Code의 기원부터 기술 스택, 아키텍처, 빠른 프로토타이핑과 릴리스 방식, 권한 시스템, 기능 설계 철학까지 — Anthropic 팀이 어떻게 제품을 만들고 운영하는지 살펴본다.
Claude Code는 5월에 일반 공개(General Availability)된 이후 개발자 세계를 강타했습니다. 이 도구는 현재 연간 환산(run-rate) 매출이 5억 달러를 넘기고 있으며, 5월 출시 이후 3개월 동안 사용량이 10배 이상 폭증했습니다.
최근 저는 Claude Code를 만든 창립 엔지니어 두 명인 Boris Cherny (초기 프로토타입을 만든 엔지니어이자 프로젝트의 창립 엔지니어), Sid Bidasaria (Claude Code의 두 번째 엔지니어이자 Claude Code 서브에이전트의 창시자), 그리고 창립 PM인 Cat Wu와 함께 이야기를 나눴습니다.
저는 Claude Code가 어떻게 만들어졌는지, 그리고 성공적인 “AI-퍼스트 엔지니어링 팀”이 어떻게 운영되는지에 대한 인사이트를 얻었습니다. 마치 수정 구슬을 들여다보며, 빠르게 움직이는 스타트업이 앞으로 어떻게 운영될지의 한 가능성을 엿본 느낌이었죠. 좋은 소식이라면, 그 미래에서도 소프트웨어 엔지니어는 여전히 강한 수요가 있어 보인다는 점입니다…
오늘 다룰 내용:
모든 것은 어떻게 시작됐나. Claude Code의 아이디어는 Claude를 이용해 “회사에서 엔지니어가 어떤 음악을 듣고 있는지”를 알려주는 커맨드라인 도구에서 출발했습니다. 파일시스템 접근 권한을 부여하자 Anthropic 내부에서 순식간에 퍼졌고, 오늘날 Claude Code는 완전한 전담 팀을 갖춘 제품이 되었습니다.
기술 스택과 아키텍처. TypeScript, React, Ink, Yoga, Bun. 기술 스택은 “모델의 분포 내(on distribution)”에 있도록, 그리고 모델의 강점을 최대한 활용할 수 있도록 선택되었습니다. 재미있는 사실: Claude Code 코드의 90%는 Claude Code 스스로가 작성했습니다!
수 주가 아니라 ‘며칠’ 만에 기능을 만들고 배포하기. 팀은 매우 빠른 속도로 일하며, 엔지니어당 하루 약 5번의 릴리스가 이뤄집니다. 프로토타이핑도 놀랄 만큼 빠릅니다. 새로운 기능을 위해 10개 이상의 실제 프로토타입을 거칩니다. AI 에이전트가 반복(iteration)을 정말로 가속하는 듯합니다.
터미널 UX 재설계. Claude Code는 LLM이 구동하는 터미널과 상호작용할 수 있게 되기 전에는 필요하지 않았던, 터미널 사용자 경험에 대한 여러 혁신적 기능을 도입했습니다. 그중 일부를 살펴봅니다.
“AI-퍼스트” 소프트웨어 엔지니어링의 모습. 코드 리뷰와 테스트에 AI 에이전트를 쓰고, 테스트 주도 개발(TDD)의 르네상스, 인시던트 대응 자동화, 기능 플래그를 조심스럽게 사용하는 방식까지. 이것이 미래의 “AI-퍼스트” 엔지니어링 팀이 일하는 모습을 예고하는 걸까요?
서브에이전트 만들기. 서브에이전트 기능이 불과 3일 만에 만들어진 과정을 살펴봅니다. 그중 이틀치 작업은 결국 버려졌습니다.
AI 보조 엔지니어링 팀의 미래? Anthropic의 운영 방식에서 다른 엔지니어링 팀이 배울 점, 그리고 Anthropic만의 고유함 때문에 그대로 옮기기 어려울 수 있는 점들을 정리합니다.
참고로, 테크 업계에서 일한다면 Claude Code를 못 들어봤다는 건 바위 밑에서 살고 있는 수준이겠죠. 단, 가트너(Gartner)만 본다면 예외입니다. 최신 AI 코딩 어시스턴트 보고서에서 Gartner는 Claude Code를 아예 언급하지도 않으며, 다른 많은 부분도 크게 틀렸습니다. 테크 업계를 따라가기 위해 The Pragmatic Engineer를 구독해야 하는 또 하나의 이유입니다 — 아니면 Gartner 덕분에 몇 달, 몇 년 뒤처질 수도요.
관련해서, 실전 엔지니어링 과제 시리즈의 다른 딥다이브:
Boris Cherny는 2024년 9월 Anthropic에 합류했고, Claude 3.6 모델로 여러 가지 프로토타입을 만들기 시작했습니다. 당시 그는 Anthropic의 퍼블릭 API에 더 익숙해지고 싶어 했습니다. Boris는 그 시기를 이렇게 회상합니다:
“터미널에서 Claude로 이것저것 해킹해 보기 시작했어요. 첫 버전은 아주 미니멀했습니다. 파일도 읽지 못했고, bash도 못 썼고, 엔지니어링 작업은 전혀 할 수 없었죠. 하지만 컴퓨터와 상호작용은 할 수 있었어요.
이 프로토타입을 AppleScript에 연결했죠: 일을 하면서 어떤 음악을 듣고 있는지 말해줄 수 있었습니다. 그리고 제 입력에 따라 재생 중인 음악을 바꾸는 것도 가능했고요.
괜찮은 데모였지만, 그리 흥미롭진 않았습니다.”
한편 Cat Wu는 AI 에이전트의 컴퓨터 사용(computer usage)과, 에이전트가 이를 사용할 때 새로 생기는 역량을 연구하고 있었습니다. Cat과의 대화 이후 Boris는 터미널에 AppleScript 이상의 능력을 주자는 아이디어를 떠올렸습니다. 그는 이렇게 말합니다:
“파일시스템과 배치(batch)와 상호작용할 수 있는 몇 가지 도구를 붙여보기로 했습니다. 파일을 읽고, 쓰고, 배치 명령을 실행할 수 있게 했죠.
그러자 이 에이전트가 정말로 흥미로워졌습니다. 우리 코드베이스에서 실행하고 코드에 대해 질문하기 시작했어요. 그러면 Claude가 파일시스템을 탐색하며 파일을 읽기 시작했죠. 예를 들어 파일 하나를 읽고 import를 본 다음, 그 import에 정의된 파일을 또 읽어요! 만족스러운 답을 찾을 때까지 계속했습니다. Claude가 파일시스템을 탐색하는 걸 보고 저는 정말 충격을 받았어요. 이전엔 이런 도구를 써본 적이 없었거든요.
AI에서는 ‘제품 오버행(product overhang)’을 이야기하는데, 우리가 이 프로토타입에서 발견한 것이 바로 그거였습니다. 제품 오버행이란 모델이 특정 일을 할 수는 있는데, AI가 돌아가는 제품이 그 역량을 ‘포착’하도록 만들어져 있지 않은 상태를 뜻해요. Claude가 파일시스템을 탐색하는 능력은 순수한 제품 오버행이었습니다. 모델은 이미 할 수 있었지만, 그 능력을 중심으로 만들어진 제품이 없었던 거죠!”
Boris는 이 프로토타입을 매일 업무에서 사용하기 시작했습니다. 이후 훗날 Claude Code 핵심 팀이 되는 사람들에게 공유했고, 동료 개발자들도 매일 사용하게 되었습니다.
Boris와 Claude Code 팀은 2024년 11월, 첫 프로토타입에서 두 달 만에 ‘도그푸딩(dogfooding) 가능한’ 버전을 릴리스했습니다. 첫날 엔지니어링 팀의 약 20%가 이를 사용했고, 5일째에는 엔지니어링의 50%가 Claude Code를 쓰고 있었습니다. 이 시점에서 Boris는 Claude Code가 외부에서도 히트할 수 있겠다는 확신이 꽤 들었다고 합니다.
하지만 이 도구를 정말로 출시해야 하는지, 아니면 내부 전용으로 남겨야 하는지를 두고 내부 논쟁이 있었습니다. Boris는 이렇게 회상합니다:
“사실 Claude Code를 공개 출시할지조차 확신이 없었습니다. 우리가 경쟁 우위를 갖게 해주는, 일종의 ‘비밀 소스(secret sauce)’일 수도 있다고 생각했거든요. 우리에게 이점이 된다면, 굳이 왜 출시해야 하지?
결국 우리가 도달한 결론은 이랬습니다:
- Anthropic은 본질적으로 모델 안전성(model safety) 회사다
- 모델의 안전성과 역량을 배우는 방식은 사람들이 쓰는 도구를 만드는 것이다
- Claude Code는 Anthropic 내부 모두가 중독될 정도였으니, 거의 확실하게 사람들이 쓰는 도구가 될 것이다
그래서 이 도구를 출시하면 모델 안전성과 역량에 대해 훨씬 더 많이 배울 수 있다.”
초기에 팀은 Boris 혼자였지만, 11월 Sid Bidasaria가 Anthropic에 합류해 Claude Code의 초기 버전을 접했습니다. Sid는 아이디어가 마음에 들어 Boris와 함께 프로젝트에 참여했습니다.
두 사람으로 이뤄진 팀은 일하는 방식에 큰 자율성이 있었습니다. Sid는 이렇게 말했습니다:
“우리가 한 일의 대부분은 정말 빠르게 프로토타입을 만들고, 기본 모델이 얼마나 강력한지 보여주는 제품을 만드는 것이었어요. 팀 내부에 공식 프로세스가 거의 없었습니다. 모든 게 매우 유동적이었죠. 거의 뭐든 하고 싶은 걸 할 수 있었고, 그래서 가장 유망한 아이디어를 계속 선택해 나갔습니다.”
팀은 7월에 엔지니어 약 10명 정도로 성장했으며, 이후에도 채용을 이어가고 있습니다. 오늘날은 엔지니어, PM, 디자이너, 데이터 사이언티스트까지 갖춘 완전한 제품 팀이고, 여전히 채용 중입니다.
현재 Anthropic에서 코드를 작성하는 엔지니어의 80% 이상이 Claude Code를 일상적으로 사용하지만, 사용자 범위는 엔지니어에만 국한되지 않습니다. Boris:
“사무실에 들어가다 데이터 사이언티스트 한 명의 화면을 흘끗 봤는데, Claude Code를 켜 두고 있더라고요. ‘잠깐, 왜 Claude Code를 돌리고 있어요?’라고 물었더니 ‘이거 실행하는 법을 알아냈고, 쿼리를 대신 작성하게 만들 수 있더라’라고 하더군요.
요즘은 데이터 사이언티스트들이 앉아 있는 줄을 지나가면, 다들 Claude Code를 켜두고 있어요. 여러 인스턴스를 띄워 둔 사람도 많고요. 쿼리를 실행하고, 시각화를 만들고, 그 밖의 여러 도움 되는 작업을 합니다.”
흥미로운 점은 Boris가 처음에는 Claude Code를 소프트웨어 엔지니어만을 위해 만들었다는 사실입니다(이름부터가 그렇죠!). 하지만 제품은 다른 영역에서도 유용함을 보여주고 있습니다.
엔지니어 1인당 PR(pull request) 수라는 지표를 보면, 엔지니어링 팀이 빠르게 두 배로 늘면 보통 이 지표는 떨어집니다. 기존 엔지니어는 온보딩에 더 많은 시간을 쓰고 코딩을 덜 하게 되며, 새로 합류한 사람은 처음엔 업무 흐름에 익숙해지는 시간이 필요하기 때문입니다. 어떤 지표든 완벽하지 않지만, 엔지니어당 PR 수는 반복 속도를 가늠하는 데 도움은 됩니다. PR 처리량은 GitHub, Dropbox, Monzo, Adyen 등 여러 회사가 측정하는 지표이기도 합니다.
그런데 Anthropic은 팀 규모가 두 배로 늘었음에도 PR 처리량이 67% 증가했습니다 — Claude Code 덕분에요. 보통이라면 ‘엔지니어당 평균 머지 PR’ 지표가 떨어질 법한데, 오히려 올랐습니다. 공은 Claude Code에 돌아갑니다. 엔지니어가 Claude Code를 통해 PR을 더 빨리 완성하기 때문입니다. 어떤 면에서는 운이 좋았던 사건의 조합이었을 수도 있는데, Anthropic이 엔지니어링 헤드카운트를 두 배로 늘린 시기가 Claude Code가 전 엔지니어링 조직에 도입된 시기와 겹쳤습니다.
저 역시 Claude Code로 작업을 끝내는 속도가 확실히 빨라지고, 코딩 작업에서 더 나은 진척을 내는 것을 체감했습니다. 또한 Claude Code가 프로그램을 실행해 출력값을 확인하거나 테스트를 돌려 코드의 정확성을 검증할 수 있는 작업이라면 특히 도움이 됩니다.
Claude Code의 기술 스택:
TypeScript: Claude Code는 이 언어로 구축됨
React + Ink: UI는 React로 작성되며, 인터랙티브 커맨드라인 요소를 위해 Ink 프레임워크를 사용
Yoga: Meta가 오픈소스로 공개한 레이아웃 시스템. 제약 기반(constraints-based) 레이아웃으로 잘 동작함. 터미널 기반 애플리케이션은 모든 크기의 터미널을 지원해야 하므로, 이를 실용적으로 처리하려면 레이아웃 시스템이 필요함
Bun: 빌드 및 패키징에 사용. Webpack, Vite 등 다른 빌드 시스템보다 빠르다는 이유로 선택
Ink 프레임워크는 터미널에서 보기 좋은 UI를 만들 수 있게 해주는 멋진 구성 요소입니다. 예를 들어 이런 UI를 만들 수 있습니다:
React로 코드를 작성하면 됩니다:
콘솔에서 업데이트되는 카운터 코드. 출처: GitHub의 Ink
Claude Code 배포에는 npm이 사용됩니다. Node 생태계에서 가장 대중적인 패키지 매니저입니다. Claude Code를 시작하려면 Node 18 이상이 설치돼 있어야 하며, 아래를 실행합니다:
npm install -g @anthropic-ai/claude-code
설치가 끝나면 Claude 명령으로 도구를 실행할 수 있습니다.
이 기술 스택은 Claude 모델 관점에서 “분포 내(on distribution)”가 되도록 선택되었습니다. AI에서는 “on distribution”과 “off distribution”이라는 용어를 사용합니다. “on distribution”은 모델이 이미 잘하는 영역을 뜻하고, “off distribution”은 모델이 잘하지 못하는 영역을 뜻합니다.
팀은 Claude가 이미 잘할 수 있는 “on distribution” 기술 스택을 원했습니다. TypeScript와 React는 모델이 매우 잘 다루는 기술이어서 자연스러운 선택이었습니다. 반대로 Claude가 그다지 잘하지 못하는 더 이색적인 스택을 선택했다면 “off distribution” 스택이 됐을 겁니다. Boris는 이렇게 정리합니다:
“off-distribution 스택도 모델이 학습할 수는 있어요. 하지만 그걸 가르치고, 그에 필요한 작업을 해줘야 합니다. 우리는 가르칠 필요가 없는 기술 스택을 원했습니다. Claude Code가 스스로를 만들 수 있는 스택 말이죠. 그리고 아주 잘 작동하고 있습니다. Claude Code의 약 90%는 Claude Code로 작성됐습니다.”
흥미롭게도 Claude Code는 클라이언트 측에서 모듈이나 컴포넌트, 복잡한 비즈니스 로직이 그리 많지 않습니다. 파일시스템과 코드베이스를 탐색하는 등 꽤 복잡한 일을 하는 도구치고는 의외입니다! 하지만 Claude Code는 Claude 모델 위에 얹힌 가벼운 셸(shell)에 가깝습니다. 모델이 거의 모든 일을 하기 때문입니다:
Claude Code 팀은 가능한 한 비즈니스 로직을 적게 쓰려고 합니다. Boris는 이렇게 말합니다:
“이상하게 들릴 수도 있지만, 우리가 이걸 만드는 방식은 사람들이 모델을 가능한 한 날것(raw) 그대로 느끼게 하려는 겁니다. 우리는 모델이 오늘날의 제품들이 가능하게 해주는 것보다 훨씬 더 많은 일을 할 수 있다고 믿어요.
많은 코딩 제품은 모델의 길을 막습니다. UI 요소와 다른 구성물들을 덧붙여 ‘스캐폴딩’을 만들고, 그게 복잡함을 유발해, 그 도구 안에서 동작하는 모델이 마치 한 발로 절뚝이는 것처럼 느껴지죠. 사용자에게 도움이 되라고 만든 기능이 오히려 모델을 제한해 버립니다. 그래서 우리는 UI를 가능한 한 미니멀하게 만들려고 합니다.
새 모델이 출시될 때마다 우리는 코드를 꽤 많이 삭제합니다. 예를 들어 4.0 모델에서는 시스템 프롬프트의 약 절반을 삭제했어요. 더 이상 필요 없었거든요. 우리는 모델 주변의 코드를 가능한 적게 두려 하고, 여기에는 프롬프팅 최소화와 도구 개수 최소화가 포함됩니다. 우리는 계속해서 도구를 삭제하고, 새 도구를 실험합니다.”
Claude Code는 가상화(virtualization)를 사용하지 않고 로컬에서 실행됩니다. 중요한 설계 결정 중 하나는 Claude Code를 가상 머신(예: Docker 컨테이너)이나 클라우드에서 돌려 샌드박스 환경을 만들지 여부였습니다. 하지만 팀은 단순함(simplicity)을 이유로 로컬 실행을 선택했습니다. Boris:
“모든 설계 결정에서 우리는 거의 항상 가능한 가장 단순한 옵션을 선택합니다. ‘배치 명령은 어디서 실행하나?’, ‘파일시스템은 어디서 읽나?’에 대한 가장 단순한 답은 로컬에서 하는 거죠.
그래서 이렇게 갔습니다. Claude Code는 배치 명령을 로컬에서 실행하고, 파일시스템을 읽고 쓰며, 가상화는 없습니다.”
Claude Code에서 가장 복잡한 부분은 권한(permissions) 시스템입니다. 로컬에서 Claude Code를 실행할 때의 리스크는 에이전트가 하면 안 되는 ‘되돌릴 수 없는’ 일을 할 수 있다는 점입니다. 예를 들어 파일을 삭제하는 것처럼요. 이를 어떻게 안전하게 처리할 수 있을까요?
여기서도 팀은 단순함을 택했고, 어떤 동작을 실행하기 전에 권한을 요청하는 권한 시스템을 만들었습니다. 사용자는 다음 중 하나를 선택할 수 있습니다:
파일 삭제 전에 권한을 요청하는 Claude Code
Boris는 권한을 제대로 설계하는 데 노력이 들었다고 말합니다:
“우리의 가장 중요한 원칙은 이겁니다. Claude Code를 실행했다면, 권한 없이 시스템에서 어떤 것도 바꾸면 안 됩니다. 그건 위험할 수 있어요.
하지만 사람들에게 ‘내가 일하는 이 컨텍스트에서는 매번 권한을 주고 싶지 않다’처럼 옵션을 제공해야도 합니다.
권한 시스템에는 꽤 많은 미묘함이 있어요. 예를 들어 어떤 명령이 들어오면, 정적 분석을 해서 설정 파일(settings.json)에 이미 허용된 것인지 확인합니다.
설정 시스템은 프로젝트 단위, 사용자 단위, 회사 단위로 구성할 수 있는 다층(multi-tiered) 시스템입니다. 팀과 설정을 공유할 수도 있어요. 우리가 관찰한 바로는, 팀들이 Claude Code가 권한을 묻지 않도록 특정 명령(예: 소스 컨트롤에 체크인)을 화이트리스트하는 설정 파일을 공유하기도 합니다.”
Claude Code는 어떤 면에서는 단순하지만, 복잡도를 높이는 수십 가지 기능이 있습니다. 일부는 문서화되어 있습니다. 그중 눈여겨볼 만한 것들:
훅(Hooks): Claude Code가 사용할 커스텀 셸 명령을 생성
MCP 지원: MCP 서버에 연결해 Claude Code에 더 많은 능력을 부여. Model Context Protocol(MCP) 딥다이브 참고
GitHub 및 GitLab 지원: GitHub Actions를 사용하고, Claude Code를 GitLab CI/CD에 통합
출력 스타일(Output styles): 출력 스타일로 전환하거나 직접 정의할 수 있음. 내장 스타일 예시:
Explanatory: 구현 선택에 대해 교육하는 스타일
Learning: Claude가 사용자에게 작은 작업을 직접 해보게 요청하는 협업 스타일. 흐름을 놓치지 않고, 직접 손을 움직이며 배우게 해주는 매우 영리한 접근입니다! 경험이 적은 엔지니어나 익숙하지 않은 사람에게 좋은 방식일 수 있습니다.
설정(Configuration): 다양한 설정 파일과 세팅으로 터미널, 모델, 상태 표시줄 등 여러 항목을 구성
서브에이전트(Subagents): 아래에서 다룸
엔터프라이즈 기능: 조직 전체에서 Claude Code를 쓰기 위한 IAM(Identity and Access Management) 설정, 사용량을 추적하기 위한 조직 전체 분석(analytics) 접근
Claude Code SDK: Claude Code를 구동하는 에이전트 하네스(agent harness)를 이용해 커스텀 AI 에이전트를 구축
…그리고 Claude Code의 최근 신규 기능 모음 참고
약 12명 규모 팀치고는 속도가 정말 빠릅니다:
내부 릴리스 ~60–100회/일. 엔지니어가 Claude Code에 변경을 만들 때마다 내부용 npm 패키지 새 버전을 릴리스합니다. Anthropic 전 직원은 내부 버전을 사용하며, 개발 팀은 빠른 피드백을 받습니다.
여름 동안 엔지니어들은 하루 약 5개의 PR을 올렸습니다. 대부분의 테크 기업에서 하루 1–2개의 PR이 일반적인 것에 비하면 훨씬 빠른 속도입니다.
외부 릴리스 1회/일. 거의 매일 패키지의 새 버전이 배포(deployment)의 일부로 릴리스됩니다.
제가 놀란 점은, 이 팀이 제가 익숙했던 것보다 훨씬 더 많은 프로토타이핑을 Claude Code로 한다는 것입니다. 예를 들어 Boris는 새로운 기능인 todo 리스트를 만들기 위해, 이틀 동안 몇 시간만에 약 20개의 프로토타입을 만든 과정을 설명해 주었습니다.
Boris는 여러 반복(iteration)에 사용한 실제 프롬프트도 공유해 줬습니다. 각 반복마다 Boris는:
아이디어: todo 리스트는 Claude가 얼마나 잘 진행되고 있는지 추적하는 가장 쉬운 방법 중 하나이니, 가장 최근 도구 호출 바로 아래에 리스트를 두어 보자는 시도였습니다.
프롬프트:
make it so instead of todos showing up as they come in, we hide the tool use and result for todos, and render a fixed todo list above the input. title it "/todo (1 of 3)" in grey
결과:
프로토타입 #1
또 다른 변형은 각 todo 업데이트를 인라인으로 보여주는 방식이었습니다.
프롬프트:
actually don't show a todo list at all, and instead render the tool used inline, as bold headings when the model starts working on a todo. keep the "step 2 of 4" or whatever, and add middot /todo to see after in grey
결과:
프로토타입 #2
todo를 인터랙티브 ‘필(pill)’(콘솔 하단의 직사각형)로 만들어서 백그라운드 태스크처럼 진행 상황을 꺼내 볼 수 있다면 어떨까요?
프롬프트와 결과:
also add a todo pill under the text input, similar to bg tasks. it should render "todos: 1 of 3" or whatever
프로토타입 #3
make the pill interactive, like the bg tasks pill
프로토타입 #4
todo가 사이드에서 미끄러져 들어오는 ‘서랍(drawer)’ 형태라면 어떨까요?
프롬프트와 결과:
actually undo both the pill and headings. instead, make the todo list render to the right of the input, vertically centered with a grey divider. show it when todos are active, hide it when it's done
it's a little jumpy, can you also animate it like a drawer
todo 리스트를 최대한 눈에 띄게 하려고, 입력창 위에 항상 표시하는 방식도 시도했습니다.
프롬프트와 결과:
actually what if you show the todo list above the input instead
프로토타입 #7
truncate at 5 and show "... and 4 more" or whatever
프로토타입 #8
add a heading "Todo:" in grey text
프로토타입 #9
Boris는 todo 리스트의 가시성을 어디에 두는 게 좋을지 계속 실험했고, 몇 개의 프로토타입을 더 거쳤습니다. 결국 todo 리스트를 스피너(spinner) 쪽으로 옮겨 가시성을 극대화하는 방향으로 가면서 감이 잡히기 시작했습니다. 몇 번 더 반복한 끝에, 공개로 배포한 버전에 도달했습니다.
가시성과 스피너를 만지며 조정한 끝의 프로토타입 #20 즈음
커뮤니티로부터 “모든 todo를 보고 싶다”는 피드백이 많이 들어오자, 팀은 CTRL + T로 토글할 수 있는 기능을 추가했습니다. 이것이 현재 라이브로 동작하는 방식입니다!
이 반복(대략 #21 즈음)은 현재 프로덕션에 반영되어 있으며, Tab 키를 누르면 실행 중인 단계(step) 목록이 토글됩니다.
AI 에이전트를 쓰면 하루에 5–10개의 프로토타입 아이디어를 만들고 테스트하는 것이 가능해집니다. 예전에는 프로토타이핑이 워낙 시간이 많이 들어서 이틀의 시간이 있어도 운이 좋으면 서로 다른 프로토타입 2개를 만들 수 있는 정도였습니다. 하지만 지금은 에이전트가 프로토타입을 매우 빠르게 만들 수 있어, Claude Code 팀처럼 하루에 5–10개 프로토타입을 테스트하는 것이 어렵지 않습니다.
물론 모두가 그렇게 많은 프로토타입을 그렇게 빨리 만들 수 있다고 말하려는 것은 아닙니다. 다만 프로토타입이 예전처럼 얼마나 오래 걸렸는지에 대한 감각은 잊는 게 합리적이라고 생각합니다. 이런 도구들은 프로토타이핑 속도를 바꿔 놓습니다!
이 프로토타이핑의 상당 부분은 UI가 “손에 착 감기게(feel good)” 만드는 데 초점이 있었습니다. 애니메이션 프로토타입은 이 스레드에서 볼 수 있습니다. 기능이 어떻게 진화했는지, 그리고 Boris가 어떻게 여러 아이디어를 시도하며 오늘날 도구 안의 todo 리스트 형태로 수렴했는지 감을 잡기 위해 영상들을 보는 것을 추천합니다.
Claude Code는 팀이 신선한 아이디어를 많이 내놓을 수 있는 이유가 있는데, LLM이 각 명령에 응답해주면서 터미널이 처음으로 ‘진짜 인터랙티브’해졌기 때문입니다. 몇 가지 예시: