유대선

진행 중 · 2026년 5월 25일

Talkak

내 Claude Code / Codex를 감싸는 콕핏 — 위험한 에이전트 액션을 승인 게이트 뒤에 세우고, 'done' 주장 뒤의 명령을 다시 돌려 거짓을 잡아내며, 결정을 검색 가능한 프로젝트 메모리 그래프로 남기는 네이티브 AI 작업 운영체제. Tauri + Rust, macOS.

에이전트 액션 승인 게이트 · 'done' 주장 재실행 검증 · 결정 자동 캡처 그래프 · tmux-persistent panes · 토큰 마크업 0% · BYO Claude/Codex

역할
Solo (Claude Code 페어 프로그래밍)
스택
Tauri 2 · Rust · React 19 · TypeScript · xterm.js · portable-pty · tmux

claude / codex 바이너리를 운영 레이어로 감싸는 네이티브 macOS 앱. 워크스페이스마다 다중 터미널 페인을 띄우고 — 각 페인은 영구 tmux 세션이라 에이전트 작업이 앱 재시작 후에도 살아남음 — 거기에 raw 터미널에는 없는 세 가지를 더한다: 위험한 액션을 멈춰 세우는 승인 게이트, "done" 주장 뒤의 명령을 다시 돌려 거짓을 잡는 검증 패스, 작업을 검색 가능한 프로젝트 메모리로 만드는 append-only 이벤트/그래프 스토어. 내가 직접 쓰려고 만들었음 — 맥북 데스크톱 12개를 동시에 띄워놓고 각 에이전트가 실제로 뭘 했는지 놓치고 있었음.

무엇을 하는가

핵심 동작은 "사용자 본인의 로컬 claude 바이너리를 조작하고, 그게 뭘 했는지 검증 가능한 기록으로 남기는 것." 브라우저 탭은 프로세스 트리를 소유하거나 셸 명령을 다시 돌릴 수 없음 — web-only로는 승인+검증 레이어가 본질적으로 불가능. Tauri(Rust 백엔드 + 시스템 WebKit)로 ~10MB 번들에 파일 시스템 + 프로세스 트리 소유권 유지. Warp / iTerm가 "1 프로젝트 = 1 윈도우" 가정인 것과 달리 멀티-스타트업이 first-class라는 점이 차별화 지점.

상태

14일 로컬 앱 체험판 제공 중(macOS 13+, Apple Silicon). 토큰 마크업 0% — 본인의 Claude Code / Codex를 들고 오고, Talkak은 토큰을 되팔지 않음. 유료 결제는 준비 중: 구독 약관이 아직 출시 단계가 아님.

짚을 만한 엔지니어링 포인트

프로젝트 로그

이 프로젝트를 만들면서 남긴 트러블슈팅 · 회고 · 업데이트의 시간순 기록.

5 로그됨
마지막 업데이트: 2026년 7월 13일
필터
2026년 7월 13일 주3 · 2 트러블슈팅 · 1 기술 회고
  1. 배포는 됐는데 브라우저는 백지 — curl 200이 '됨'이 아니었다

    트러블슈팅

    2026년 7월 13일 · 4

    진짜 Vite/React 앱을 딸깍 PaaS로 배포했다. curl로 HTML·JS 모두 200에 내용까지 정상 — '된다'고 선언. 그런데 실제 브라우저는 완전 백지였다. 원인은 자산 업로드 시 Content-Type 누락. 그리고 진짜 교훈은 내 검증이 가짜였다는 것.

  2. 인프라는 두 층이다 — Control Plane은 IaC, Data Plane은 API

    기술 회고

    2026년 7월 13일 · 11

    딸깍 PaaS를 '테라폼 같은 IaC로 정교하게' 만들 수 있냐는 질문에서 출발. 7개 PaaS(Vercel·Netlify·Railway·Render·Fly·Supabase·Cloudflare) 실제 방식과 1차 출처를 확인해보니 답은 '두 층으로 나눠라'였다. 우리 코드가 이미 가진 것과 빠진 것까지 정리한 학습노트.

  3. 시크릿 가드가 'work-desk'를 OpenAI 키로 오인한 날

    트러블슈팅

    2026년 7월 13일 · 2

    sk- 패턴에 좌측 경계가 없어 work-desk 문서 경로가 API 키로 오탐되어 커밋이 차단됐다. lookbehind 한 조각과 회귀 테스트로 수리 — 그리고 수리된 가드는 곧바로 포스트모템 속 인용 문자열을 다시 잡아냈다.

2026년 6월 15일 주2 · 2 기술 회고
  1. 닮은꼴 ≠ 모순: 기억 충돌 탐지를 코사인에서 LLM 심판까지 (하루치 상세 정리)

    기술 회고

    2026년 6월 20일 · 18

    AI 에이전트가 읽는 '운영 기억'이 서로 모순되는 걸 어떻게 막을까. 코사인 유사도로 시작해 그게 모순을 판정 못 한다는 걸 실데이터로 깨닫고, claude -p 'LLM 심판'으로 넘어간 하루. 4겹 방어, 각 층이 언제 작동하는지, 그리고 '모순을 확실히 0으로 만드는 건 불가능하다'는 정직한 결론까지.

  2. 에이전트를 운영기억(operating memory)에 연결하기 — MCP로 읽기·쓰기 루프 닫고, 왜곡을 막다

    기술 회고

    2026년 6월 20일 · 19

    딸깍의 기억 그래프는 이미 만들어져 있었지만, 작업 중인 에이전트(Claude·Codex)가 그걸 '읽지'를 못했다. MCP로 케이블을 잇고, 기억이 썩는 길(낡은 사실·프롬프트 인젝션)을 막은 과정을 — 아무것도 모르는 사람이 읽어도 이해되게 — 처음부터 끝까지 기록한다.