Thumbnail for 지난주에 클로드를 삭제했어. by 노마드 코더 Nomad Coders

지난주에 클로드를 삭제했어.

노마드 코더 Nomad Coders

5m 27s840 words~5 min read
Auto-Generated

[0:00]지난주에 클로드를 삭제했어. 더 많은 기능이 있는 걸 찾았기 때문이 아니야. 거의 아무것도 하지 않는 걸 찾았기 때문이야. 근데 이상하게도, 그게 바로 핵심이더라. 나는 1년 넘게 매일 클로드를 썼었어. 그게 내 기본값이었지. 그러다가 한 번도 들어본 적 없는 어떤 하네스를 설치했어. 그리고 48시간도 안 돼서 클로드를 아예 안 열게 됐어. 참고로 이 하네스는 오픈클로를 구동하는 데 쓰이는 거야. 겉으로 보면 클로드랑 비교하면 질 수밖에 없어. MCP 지원도 없고, 서브에이전트도 없어. 플랜 모드도 없어. 권한 시스템도 없어. 거의 텅 비어 있는 수준이야. 그러나 왜 이 하네스가 특별한지 얘기하기 전에, 우리는 먼저 하네스가 뭔지 이해해야 해. 컴퓨터라고 생각해보면 돼. 모델. Claude, GPT, Gemini. 그게 CPU야. 컨텍스트 윈도우는 RAM이야. 하네스는 운영체제야. 모델을 관리하지. 모델이 어떤 도구를 호출할 수 있는지 결정해. 너무 커지면 컨텍스트를 정리해줘. 그래서 클로드도 하네스야. 커서도 하네스고, 오픈코드도 하네스야. 얘네는 전부 모델을 돌려. 그냥 감싸는 방식이 다를 뿐이야. 왜 하네스가 중요할까? 같은 모델이라도 다른 하네스에 넣으면 완전히 다른 에이전트처럼 행동할 수 있기 때문이야. 클로드 Opus를 가져다가 평범한 하네스에 넣으면 평범한 결과가 나와. 아니면 Kimi K2 같은 작은 모델을 가져다가 제대로 된 하네스에 넣으면 비싼 모델을 이기는 걸 보게 될 거야. 이게 내가 Pi를 쓰기 시작하면서 깨달은 거야. Pi는 미니멀한 터미널 코딩 하네스야. 미니멀리즘, 커스터마이징, 확장성. 이 3가지만 신경 써. 클로드가 우주선이라면, 배워야 할 기능이 잔뜩 들어있고, 사실은 안 쓰는 것들도 많지. Pi는 레고 조각 더미야. 몇 개의 조각만 있고, 나머지는 네가 직접 만들어. 아니면 Pi한테 만들어달라고 하면 돼. Pi의 핵심 아이디어는, 네가 직접 하네스를 바꿀 수 있어야 한다는 거야. 워크플로우가 아니라. 대부분의 코딩 툴은 반대로 작동해. 클로드는 릴리즈마다 바뀌어. 시스템 프롬프트, 도구, 내부 동작도. Pi는 블랙박스가 아니야. 오픈소스야. 시스템 프롬프트도 엄청 작아. 모든 도구가 다 보이고, Pi에 기능이 없으면 npm으로 Pi 패키지를 설치해서 확장하면 돼. 아니면 Pi한테 직접 기능을 만들어달라고 하고, 핫 리로드되는 걸 보면 돼. 핫 리로드되면 정말 멋지지. Pi는 주요 제공자들의 수백 개 모델을 지원해. 그리고 대화 중간에도 모델을 바꿀 수 있어. 그래서 대부분은 Kimi K2 같은 싸고 빠른 모델을 쓰다가, 어려운 문제가 나오면 클로드 Opus로 바꾸고, 다시 바꿔. 세션은 트리 구조로 저장되고, 대화에서 일어났던 모든 걸 볼 수 있어. 도구 호출, 토큰 수, 비용까지 포함해서 말이야. 이전 메시지로 돌아가서 브랜치를 만들 수도 있어. 아이디어를 테스트하거나, 다른 접근을 시도하거나, 사이드 퀘스트를 돌릴 수도 있지. 메인 대화를 더럽히지 않고 말이야. 세션은 포크하거나, 복제하거나, 공유할 수도 있어. 그리고 공개 URL도 만들 수 있어. 이제 compaction 얘기로 넘어가 보자. LLM은 컨텍스트 윈도우가 제한되어 있어. 그래서 대화가 길어지면 하네스가 이전 내용을 요약해. 클로드는 자기는 방식대로 compaction을 해. 이게 일어났다는 건 보이지만, 어떻게 하는지는 제어할 수 없어. Pi에서는 compaction 방식을 직접 커스터마이즈할 수 있어. You choose when it happens, and you choose how many messages to compact. 심지어 어떤 모델이 compaction을 할지도 선택할 수 있어. 부족하면, 확장 기능으로 compaction 방식을 완전히 바꿀 수도 있어. 이제 extensions 얘기로 넘어갈게. 내가 Pi로 갈아탄 가장 큰 이유야. extensions는 Pi를 너만의 것으로 만드는 방법이야. 이건 Pi의 동작을 바꾸는 작은 TypeScript 파일들이야. 새로운 도구를 추가할 수도 있고, 기존 도구를 수정할 수도 있고, 에이전트 루프에 개입할 수도 있고, 자체 UI를 만들 수도 있어. 사람들은 온갖 것들을 위한 extension을 만들었어. 권한 게이트도 있고, Git 체크포인트도 있고, 심지어 에이전트가 생각하는 동안 할 수 있는 게임도 있어. 클로드가 웹사이트를 읽을 때 쓰는 WebFetch 도구를 보자. Pi에서는 Pi Web Access extension으로 이걸 확장할 수 있어. 유튜브 영상 자막을 가져오고, 영상 프레임을 추출하고, GitHub 레포를 클론하고, PDF를 다운로드해서 읽을 수도 있어. termDraw extension을 쓰면 터미널에서 그림을 그리고 그 스케치를 모델에 넘길 수도 있어. 아니면 네가 좋아하는 클로드 기능만 다시 만들 수도 있어. Sub Agents용 extension도 있고, Guardrails용도 있고, MCP 지원용도 있고, Ask User Tools용도 있어. 그리고 많지. 클로드에서 아쉬웠던 것들은 전부 Pi extension으로 대체할 수 있었어. 어떤 경우에는 오히려 더 개선되기도 했고. 테마도 설치하고 커스터마이즈할 수 있어. 그게 취향이라면 말이야. 그리고 필요한 게 있는데 찾을 수 없다면, 직접 만들 수도 있고 Pi한테 만들어달라고 해도 돼. Pi한테 synthwave 테마를 만들어달라고 했어. 네온 핑크랑 시안 색으로. Pi가 테마 파일을 만들어. 우리가 /reload 명령어를 실행하면, 인터페이스 전체 색이 바뀌어. 오썸! 하지만 너만의 extension도 직접 만들 수 있어. 여기 실행되기 전에 rm -rf 명령어를 막는 간단한 예시가 있어. 이건 전부야. TypeScript로 한 10줄 정도야. 이건 모든 tool 호출에 훅을 걸어. 이게 bash 명령인지 확인하고, rm -rf가 있는지 찾고, Pi가 실행하기 전에 나한테 확인을 요청해. 확인 안 하면 실행을 막아. 모든 Pi extension은 이런 식이야. 작고, 읽기 쉽고, 네 거야. 이 코드를 Pi의 extensions 폴더에 TypeScript 파일로 저장해. 그리고 Pi한테 폴더를 삭제하라고 하면, 확인 다이얼로그가 떠. .env 파일을 못 읽게 막는 extension을 만들 수도 있고, git push --force를 못 하게 막을 수도 있고, 코드 변경마다 linter를 자동 실행해서 경고를 Pi에게 보여주는 extension도 만들 수 있어. 이런 건 클로드나 코덱스에는 없어. 그런 도구들에서는 그냥 하네스를 빌려 쓰는 거야. Pi에서는 네가 그걸 소유하는 거지. 그리고 이게 바로 클로드에 대한 진짜 위협이야. Pi가 더 좋은 기능을 가지고 있어서가 아니야. Pi는 모든 사용자가 자기 기능을 직접 만들게 한다는 점이야. Anthropic은 개발자들이 뭘 원하는지 결정해야 하고, Pi는 그냥 박스만 만들면 돼. 나머지는 개발자들이 만들 거니까. 그래서 나는 클로드가 진짜 위험하다고 생각해. 이제 너한테 묻고 싶어. Pi 써봤어? 써볼 생각 있어? 어떤 모델로 쓸 거야? 나는 OpenCode Zen에서 Kimi K2랑 Opus 같이 써. 여러분은 어때? 댓글로 알려줘. See you in the next one. 언제나 감사하고, 사랑합니다! See you in the next one. 다음에 봐요. Bye bye.

Need another transcript?

Paste any YouTube URL to get a clean transcript in seconds.

Get a Transcript