← 모든 글

세션이 곧 커밋 메시지다

From the guide: Claude Code Comprehensive Guide

한 개발자가 코드베이스를 물려받습니다. git blame을 실행하면 하나의 커밋에서 47개 파일이 변경된 것으로 나옵니다. 커밋 메시지에는 “refactor auth module”이라고 적혀 있습니다. 커밋 작성자는 인간 개발자로 표시되어 있습니다. 실제 작성자는 90분 동안 실행되며 200개 파일을 읽고, 세 가지 대안적 접근법을 평가하고, 구체적인 이유를 들어 두 가지를 기각한 뒤, 모든 인증 엔드포인트에 영향을 미치는 변경 사항을 만들어낸 코딩 에이전트였습니다. 설계 결정, 기각된 대안, 논의된 엣지 케이스가 담긴 90분간의 세션은 사라졌습니다. Git은 무엇이 변경되었는지를 보존했습니다. 왜 변경되었는지는 아무것도 보존하지 않았습니다.

인지 부채 포스트에서는 에이전트의 출력 속도와 개발자의 이해 속도 사이의 격차를 “인지 부채”라고 명명했습니다 — 리뷰되지 않은 커밋이 쌓일수록 복리로 불어나는 부채입니다.1 100 HN 포인트와 124개의 댓글을 모은 Memento 프로젝트는 그 다음 질문을 던집니다: 세션에 추론 과정이 담겨 있다면, 세션이 커밋의 일부가 되어야 하지 않을까요?2

요약

Git은 무엇이 변경되었는지를 기록합니다. 에이전트 세션은 왜 변경되었는지를 기록합니다. 에이전트가 코드를 작성할 때, 세션 트랜스크립트가 진짜 설계 문서이며, 트랜스크립트를 버리는 모든 워크플로우는 출처 정보를 버리는 것입니다. Memento(오픈소스 git 확장)는 AI 세션 트랜스크립트를 git notes로 커밋에 첨부하여 커밋에서 추론 과정까지 이어지는 출처 체인을 만듭니다. Claude Code의 새로운 LSP 통합은 세션 트랜스크립트를 더욱 정밀하게 만드는 구조적 코드 이해 기능을 추가합니다: grep 대신 go-to-definition을, 추측 대신 타입 시그니처를 사용합니다. 아래에서 다루는 내용: 출처 격차, 세션 메타데이터의 네 가지 계층, Memento가 구축하는 것, LSP가 세션 데이터의 품질을 어떻게 변화시키는지, 그리고 오늘 바로 구현할 수 있는 최소한의 출처 관리 방법입니다.


출처 격차

Git은 모든 변경 사항에 대해 다섯 가지를 추적합니다: 누가 만들었는지, 언제 만들었는지, 어떤 파일이 변경되었는지, diff, 그리고 커밋 메시지입니다. 사람이 작성한 코드의 경우, 커밋 메시지가 diff와 의도 사이의 격차를 연결합니다. 좋은 메시지는 변경이 존재하는 이유를 설명합니다. 나쁜 메시지(“fix stuff”)는 리뷰어가 코드에서 의도를 재구성하도록 만듭니다.

에이전트가 작성한 코드는 다른 출처 구조를 가집니다. 의도가 개발자의 머릿속에 있지 않습니다. 의도는 세션 안에 있습니다: 작업을 시작한 프롬프트, 에이전트가 읽은 파일들, 평가한 대안들, 호출한 도구들, 완료 보고 시 인용한 근거 등입니다. 90분간의 에이전트 추론을 한 줄로 요약하는 커밋 메시지는 의사결정 컨텍스트의 99.9%를 버리는 것입니다.

이 손실은 이론적인 것이 아닙니다. 제 오케스트레이션 시스템은 모든 스토리 완료, 리뷰어 판정, 증거 게이트 결과를 기록하는 세션 상태 파일(jiro.state.json, jiro.progress.json)을 생성합니다.3 리뷰어가 “에이전트가 서킷 브레이커 대신 지수 백오프를 사용한 이유는?”이라고 물으면, 세션 상태 파일에 답이 있습니다: 에이전트가 두 패턴을 모두 평가했고, 업스트림 서비스가 Retry-After 헤더와 함께 재시도 가능한 503을 반환한다는 것을 발견했으며, 헤더 값을 준수하기 위해 지수 백오프를 선택했습니다. 커밋 메시지에는 “refactor: standardize retry patterns”라고 적혀 있습니다. 세션 상태에는 그 이유가 적혀 있습니다.

세션 출처 정보가 없으면, 에이전트가 작성한 변경 사항에 대한 코드 리뷰는 고고학이 됩니다. 리뷰어는 diff를 읽고, 추론 과정을 역으로 추적하며, 변경이 존재하는 이유에 대한 이론을 세웁니다. 그 이론은 틀릴 수 있습니다. 에이전트의 실제 추론은 세션 트랜스크립트에 기록되어 있어 확인할 수 있습니다. 업계 표준 워크플로우(커밋, 푸시, diff 리뷰)는 그 추론을 버립니다.

이 문제는 에이전트 합성과 함께 배가됩니다. 제 오케스트레이션 시스템은 코드 리뷰를 위한 전문화된 서브에이전트를 생성합니다: 정확성 리뷰어, 보안 리뷰어, 컨벤션 리뷰어.5 각 서브에이전트는 자체 세션을 실행하고, 자체 파일을 읽고, 자체 결론을 형성합니다. 부모 에이전트가 판정을 종합합니다. 최종 커밋 메시지에는 “3 reviewers: approve”라고 적혀 있습니다. 세 개의 개별 리뷰 세션 — 각각 구체적인 발견, 엣지 케이스 분석, 승인 근거를 포함하는 — 은 커밋이 참조하지 않는 별도의 트랜스크립트에 존재합니다. 에이전트 위임의 각 계층은 보이지 않는 추론의 또 다른 계층을 추가합니다.

출처 문제는 기존의 세 가지 실패 패턴과 연결됩니다. 조작 방화벽은 출력 게이트가 없을 때 에이전트가 검증되지 않은 주장을 게시하는 방법을 식별했습니다.6 세션 출처가 있었다면 조작을 더 일찍 발견했을 것입니다: 세션 트랜스크립트에서 에이전트가 아무도 리뷰하지 않은 토큰 계산 방법론을 만들어내는 것이 보였습니다. 보이지 않는 에이전트는 명시적 계측 없이 에이전트 행동이 모니터링되지 않는 방법을 문서화했습니다.7 세션 출처는 가시성 스택이 생성하는 감사 추적입니다. NIST 공개 의견은 에이전트 행동에 대한 표준화된 감사 로깅을 권고했습니다.9 세션 트랜스크립트를 저장하는 Git notes는 해당 권고의 하나의 구현입니다.

제 품질 시스템의 증거 게이트는 에이전트가 각 품질 기준에 대해 구체적인 증거를 인용하도록 요구합니다: 패턴의 이름을 대고, 대안을 설명하고, 엣지 케이스를 나열하고, 테스트 출력을 첨부하는 것입니다.10 증거 게이트는 에이전트가 그렇지 않으면 존재하지 않았을 추론 및 검증 계층 데이터를 생성하도록 강제합니다. 게이트가 없으면, 에이전트는 “완료”라고 보고하고 세션에는 프로세스 데이터(도구 호출)만 포함됩니다. 게이트가 있으면, 세션에는 리뷰어가 코드와 대조하여 검증할 수 있는 명시적 근거가 포함됩니다.

Git만으로는 90분간의 신중한 추론을 나타내는 47개 파일 커밋과 리뷰 없이 90분간 제약 없이 실행된 에이전트의 47개 파일 커밋을 구별할 수 없습니다. git 문서에서는 notes를 “객체 자체를 변경하지 않고 객체에 첨부할 수 있는 추가 정보”라고 설명합니다.8 세션 트랜스크립트는 이 정의에 정확히 부합합니다: 커밋 해시, diff, 히스토리를 변경하지 않는 커밋 출처에 대한 추가 정보입니다.


Memento 질문

Memento 프로젝트는 git 확장으로 출처 격차에 답합니다.2 이 도구는 AI 코딩 세션 트랜스크립트를 캡처하여 refs/notes/commitsrefs/notes/memento-full-audit에 git notes로 커밋에 첨부합니다.

워크플로우는 다음과 같습니다: git memento init이 저장소를 설정합니다. git memento commit <session-id>git commit을 대체하여, 설정된 AI 제공자(Codex 또는 Claude Code)에서 세션 트랜스크립트를 자동으로 가져와 커밋에 구조화된 메타데이터로 저장합니다.

124개의 댓글이 달린 HN 토론에서 네 가지 입장이 나타났습니다:

입장 1: 세션은 필수적인 컨텍스트다. 에이전트 세션에는 커밋 메시지가 담을 수 없는 추론 과정이 포함되어 있습니다. 세션을 커밋에 첨부하면 출처 체인이 보존됩니다. 리뷰어는 모든 코드 라인을 커밋, 세션, 원래 프롬프트까지 추적할 수 있습니다.

입장 2: 세션은 노이즈다. 90분짜리 세션 트랜스크립트는 수천 줄의 대화입니다. 대부분은 최종 변경 사항과 무관합니다. 전체 트랜스크립트를 첨부하면 신호가 노이즈에 묻히고, 리뷰를 더 쉽게 만드는 것이 아니라 더 어렵게 만듭니다.

입장 3: 트랜스크립트가 아닌 요약. 세션은 구조화된 요약으로 정제되어야 합니다: 작업 설명, 고려된 대안, 결정 근거, 인용된 증거. 요약은 노이즈 없이 출처를 보존합니다. Memento는 사용자와 어시스턴트 턴으로 레이블된 마크다운 요약을 생성합니다.

입장 4: 개인정보 및 보안 우려. 세션 트랜스크립트에는 API 키, 내부 URL, 다른 파일의 독점 코드, 또는 개발자가 영구적인 git 기록에 남기고 싶지 않은 대화 내용이 포함될 수 있습니다. 세션은 첨부 전에 정제가 필요합니다.

네 가지 입장 모두 타당합니다. 세션의 출처 가치는 부인할 수 없습니다. 노이즈 문제는 실재합니다. 개인정보 우려는 구조적입니다. Memento는 입장 1과 3(마크다운 변환을 통한 트랜스크립트 저장)과 입장 4(요약 생성 시 트랜스크립트를 신뢰할 수 없는 데이터로 취급)를 다룹니다. 입장 2는 열린 설계 질문으로 남아 있습니다: 얼마나 많은 세션 컨텍스트면 충분할까요?


출처의 네 가지 계층

에이전트 세션 메타데이터는 네 가지 계층으로 조직되며, 각각 변경 사항에 대한 다른 질문에 답합니다.

계층 질문 데이터 예시
의도 작업이 무엇이었는가? 원래 프롬프트, 참조된 이슈, 인수 기준 “만료된 토큰을 처리하도록 로그인 엔드포인트 수정”
프로세스 에이전트가 어떻게 작업했는가? 도구 호출, 읽은 파일, 실행한 명령, 소요 시간 47개 파일 읽기, 12개 작성, pytest 3회 실행, 총 90분
추론 왜 이런 선택을 했는가? 평가된 대안, 근거가 있는 기각, 트레이드오프 서킷 브레이커 고려, 기각(503에 Retry-After가 있으므로)
검증 어떻게 검증되었는가? 테스트 결과, 리뷰어 판정, 증거 게이트 결과 pytest: 47 통과, 0 실패. 리뷰어 3명: 승인.

각 계층은 비용을 추가합니다. 전체 의도 계층(원래 프롬프트)을 저장하는 것은 저렴합니다: 텍스트 필드 하나입니다. 90분 세션의 전체 프로세스 계층(모든 도구 호출)을 저장하면 수 메가바이트의 JSON이 생성됩니다. 추론 계층을 저장하려면 에이전트가 의사결정 과정을 명시적으로 서술해야 하는데, 대부분의 에이전트는 기본적으로 이를 수행하지 않습니다. 검증 계층을 저장하려면 테스트 러너 및 리뷰 시스템과의 통합이 필요합니다.

제 오케스트레이션 시스템은 다양한 메커니즘을 통해 네 가지 계층 모두를 캡처합니다.3 캡처를 가능하게 하는 훅 인프라는 15개 이벤트 유형에 걸쳐 84개의 훅으로 구성됩니다.5 의도: UserPromptSubmit 훅이 원래 프롬프트를 기록합니다. 프로세스: PostToolUse 훅이 모든 도구 호출과 결과를 기록합니다. 추론: 증거 게이트가 에이전트에게 각 품질 기준에 대한 구체적인 근거를 인용하도록 요구합니다. 검증: jiro.state.json 파일이 테스트 출력과 리뷰어 판정을 기록합니다.

훅은 또한 에이전트가 어떤 스킬을 어떤 순서로 호출했는지 추적합니다.11 /review 스킬을 먼저 실행한 후 /test 스킬을 실행한 결과로 만들어진 커밋은 단일 비구조화 세션에서 만들어진 커밋과 다른 출처 프로필을 가집니다. 스킬 순서는 워크플로우 패턴을 드러냅니다: 테스트 전에 리뷰를 했는지, 리뷰 전에 테스트를 했는지. 순서는 품질 보증 범위를 이해하는 데 중요합니다. 데이터는 여러 상태 파일에 걸쳐 존재합니다. 문제는 이 중 어느 것도 git 커밋에 첨부되지 않는다는 것입니다.


출처 연결 다리로서의 LSP

Claude Code의 새로운 LSP(Language Server Protocol) 통합은 세션 출처 데이터의 품질을 변화시킵니다.4

LSP 이전에, Claude Code은 grep과 파일 읽기를 통해 코드베이스를 탐색했습니다. 에이전트가 함수의 정의를 찾아야 할 때, 모든 파일에서 함수 이름을 검색했습니다. 검색은 모호한 결과를 반환했습니다: 다수의 매칭, 부분 매칭, 주석에 함수 이름을 포함하는 테스트 파일 등. 에이전트는 가장 유력한 매칭을 선택했습니다. 세션 트랜스크립트에는 다음과 같이 기록되었습니다: “authenticate_user를 검색, auth.py, test_auth.py, middleware.py에서 발견.” 출처 데이터에는 검색, 모호성, 에이전트의 최선의 추측이 포함됩니다.

LSP를 사용하면, 에이전트는 goToDefinition을 호출하여 약 50밀리초 안에 정확한 파일과 줄 번호를 받습니다.4 세션 트랜스크립트에는 다음과 같이 기록됩니다: “authenticate_userauth.py:47에 정의됨.” 출처 데이터는 정밀하고, 모호하지 않으며, 기계적으로 검증 가능합니다. 세션을 읽는 리뷰어는 에이전트가 다른 모듈의 유사한 이름의 함수가 아닌 올바른 정의를 찾았다고 신뢰할 수 있습니다.

개선 효과는 세션 전반에 걸쳐 복리로 작용합니다. grep을 사용하여 200개 파일을 읽는 에이전트는 “X를 검색, 잠재적 매칭 A, B, C 발견, A 선택”으로 가득한 세션 데이터를 생성합니다. LSP를 사용하여 200개 파일을 읽는 에이전트는 “X는 file:line에 정의됨, 참조는 file:line, file:line, file:line에 있음”이라고 말하는 세션 데이터를 생성합니다. LSP 기반 세션은 에이전트의 코드 이해에 대한 정밀한 지도입니다. grep 기반 세션은 모호한 근사치입니다.

LSP는 출처 품질을 향상시키는 여섯 가지 기능을 추가합니다:

기능 이전 (grep) 이후 (LSP)
정의 찾기 모든 파일 검색, 추측 정확한 file:line, 50ms
참조 찾기 심볼 이름으로 grep 모든 사용 위치, 타입 정보 포함
타입 정보 소스 코드 읽기, 추론 hover로 시그니처 반환
진단 별도로 린터 실행 실시간 오류 감지
호출 계층 코드를 통해 수동 추적 incomingCalls/outgoingCalls
심볼 검색 정규식으로 grep 워크스페이스 전체, 구조화됨

출처에 대한 시사점: LSP가 활성화된 에이전트의 세션 트랜스크립트는 모든 코드 탐색 단계가 검증 가능하기 때문에 설계 문서로서 더 높은 가치를 지닙니다. 리뷰어는 에이전트의 코드베이스 이해가 단지 그럴듯한 것이 아니라 정확했는지 확인할 수 있습니다.


세션 메타데이터의 실제 모습

제 오케스트레이션 시스템의 실제 예시입니다. 스토리: “인증 엔드포인트에 속도 제한 추가.”

의도 계층 (UserPromptSubmit 훅에서):

Prompt: "Implement rate limiting on POST /auth/login.
  Use sliding window, 5 attempts per minute per IP.
  Return 429 with Retry-After header."

프로세스 계층 (PostToolUse 훅에서):

Files read: 14 (auth/, middleware/, tests/)
Files written: 3 (rate_limiter.py, auth.py, test_rate_limit.py)
Bash commands: 7 (pytest x3, pip install x1, curl x3)
Duration: 23 minutes
Token usage: 87K input, 24K output

추론 계층 (증거 게이트에서):

Pattern: Sliding window (token bucket rejected
  because per-IP granularity requires separate
  counters, sliding window handles this natively)
Edge cases: IPv6 normalization, proxy headers
  (X-Forwarded-For validated against trusted proxy list)

검증 계층 (jiro.state.json에서):

Tests: 12 passed, 0 failed, 0 skipped
Reviewers: correctness (approve), security (approve),
  conventions (approve with note: add docstring to
  rate_limiter.py:RateLimiter class)
Evidence gate: 6/6 criteria met

동일한 변경에 대한 커밋 메시지: “feat: add rate limiting to auth endpoint.” 14개 단어입니다. 세션 메타데이터에는 2,300단어의 구조화된 출처 정보가 포함되어 있습니다. 커밋 메시지와 세션 컨텍스트 사이의 격차는 두 자릿수입니다.


출처의 비용

세션 출처는 무료가 아닙니다. 세 가지 비용이 도입을 제약합니다.

저장 공간. 90분간의 에이전트 세션은 500KB-2MB의 원시 트랜스크립트를 생성합니다. 하루 10개의 커밋 기준으로, 전체 트랜스크립트는 매일 5-20MB를 git 저장소에 추가합니다. Git notes는 데이터를 메인 히스토리 외부에 저장하므로(기본적으로 git clone 크기에 영향을 미치지 않음), refs/notes/memento-full-audit의 감사 추적은 누적됩니다. Memento의 마크다운 변환은 원시 크기를 약 60% 줄입니다.2

개인정보. 세션 트랜스크립트에는 에이전트가 본 모든 것이 포함됩니다: 파일 내용, 환경 변수, API 응답, 스택 트레이스가 포함된 오류 메시지. 공개 저장소에 첨부된 트랜스크립트는 내부 구현 세부 사항을 노출합니다. Memento는 트랜스크립트를 신뢰할 수 없는 데이터로 취급하고 요약 모델에 내장된 지시를 무시하도록 안내하지만, 전체 감사 추적의 원시 트랜스크립트에는 접근 제어가 필요합니다.2

신호 대 노이즈. 에이전트가 200개 파일을 읽어 12개를 변경하는 90분 세션에는 188개 파일 분량의 무관한 프로세스 데이터가 포함됩니다. 과제는 탐색(노이즈)과 결정 지점(신호)을 구별하는 것입니다. 네 가지 계층 모델이 도움이 됩니다: 의도와 추론은 높은 신호, 프로세스는 혼합, 검증은 높은 신호입니다. 기본적으로 의도와 추론을 저장하고 프로세스는 필요에 따라 저장하는 출처 시스템은 핵심 의사결정 컨텍스트를 잃지 않으면서 노이즈를 줄입니다.


오늘 바로 구현할 수 있는 것

새로운 도구 없이도 적용할 수 있는 네 가지 최소한의 출처 관리 방법입니다:

1. 구조화된 커밋 메시지. “refactor auth module” 대신 구조화된 형식을 사용하세요:

feat: add rate limiting to auth endpoint

Task: sliding window rate limiter, 5/min per IP
Alternatives: token bucket (rejected: per-IP overhead)
Evidence: 12 tests pass, 3 reviewers approve
Session: 23 min, 87K tokens, 14 files read

이 형식은 네 가지 출처 계층의 수동 버전입니다. 메시지가 의도(task), 추론(alternatives), 검증(evidence)에 네 줄로 답합니다. 별도의 도구가 필요하지 않습니다.

2. 세션 트랜스크립트를 커밋과 함께 저장. 에이전트 세션 후, 트랜스크립트를 저장소의 파일로 내보내세요(예: .sessions/2026-03-02-auth-rate-limit.md). 공개 저장소의 경우 .gitignore에 추가하고, 내부 저장소의 경우 커밋하세요. git notes 인프라 없이도 리뷰 시 트랜스크립트를 사용할 수 있습니다.

3. 에이전트 작성 커밋에 태그 지정. git trailer를 사용하여 에이전트가 생성한 커밋을 표시하세요:

Agent: Claude Code (Opus)
Session-Duration: 23m
Files-Read: 14
Files-Written: 3

trailer는 에이전트 관여에 대한 기계 파싱 가능한 기록을 만듭니다. git log --grep="Agent: Claude Code"으로 모든 에이전트 작성 커밋을 나열할 수 있습니다. 메타데이터는 소급 주석 없이 출처 체인을 재구성할 수 있는 미래의 도구를 가능하게 합니다.

4. 에이전트 커밋에 증거 게이트 요구. 에이전트가 커밋하기 전에 여섯 가지 질문에 답하도록 요구하세요: 코드가 어떤 패턴을 따르는지? 더 단순한 대안이 있는지? 어떤 엣지 케이스를 처리했는지? 테스트가 통과하는지? 회귀를 위해 어떤 파일을 확인했는지? 변경이 실제 문제를 해결하는지?10 답변이 추론 및 검증 계층을 형성합니다. 게이트가 없으면, 에이전트는 “완료”라고 보고하고 세션에는 프로세스 데이터만 포함됩니다. 게이트가 있으면, 품질 보증의 부산물로 모든 커밋이 구조화된 출처를 생성합니다.

증거 게이트 관행은 더 넓은 출처 논증과 연결됩니다. 커밋 전에 결정을 정당화해야 하는 에이전트는 제약 없이 실행되는 에이전트보다 더 높은 품질의 세션 메타데이터를 생성합니다. 게이트는 출처를 수동적 부산물(무슨 일이 있었는지 기록)에서 능동적 품질 신호(무슨 일이 있었는지와 왜 그랬는지를 에이전트가 설명하도록 요구)로 전환합니다.


핵심 요점

엔지니어링 매니저를 위해: 한 줄짜리 메시지가 달린 모든 에이전트 작성 커밋은 설계 문서를 버리는 것입니다. 세션 트랜스크립트에 추론 과정이 있습니다. 그 추론이 팀의 코드 리뷰, 온보딩, 인시던트 대응 워크플로우에 가치가 있는지 판단하세요. 답이 ‘예’라면, 최소한 구조화된 커밋 메시지부터 구현하세요.

개발자를 위해: 에이전트가 작성한 코드를 물려받을 때, 커밋 메시지는 무엇이 변경되었는지 알려줍니다. 세션 트랜스크립트는(보존되었다면) 왜 변경되었는지 알려줍니다. 팀의 에이전트 워크플로우에서 세션 출처를 도입하도록 추진하세요. Memento 프로젝트가 git 네이티브 접근법을 제공합니다. 구조화된 커밋 메시지는 인프라 없이 시작할 수 있는 출발점입니다.

도구 개발자를 위해: LSP 통합은 모호한 grep 기반 탐색을 정밀하고 검증 가능한 코드 참조로 대체하여 세션 트랜스크립트의 가치를 높입니다. 에이전트의 코드 이해력이 향상될 때마다 세션이 생성하는 출처 데이터의 품질도 향상됩니다. 네 가지 출처 계층을 보존하는 내보내기 형식을 구축하세요.


FAQ

세션 출처란 무엇인가요? 세션 출처는 코딩 세션 중 AI 에이전트의 추론 과정에 대한 기록입니다: 원래 작업, 읽은 파일, 평가한 대안, 내린 결정, 생성한 증거. 세션 트랜스크립트는 커밋 메시지와 diff가 담을 수 없는 “왜”를 포착합니다.

Memento란 무엇인가요? Memento는 AI 코딩 세션 트랜스크립트를 캡처하여 git notes로 커밋에 첨부하는 오픈소스 git 확장입니다. 이 도구는 Codex와 Claude Code을 지원하고, 마크다운 요약을 생성하며, PR 통합을 위한 GitHub Action을 제공합니다.2

LSP는 에이전트 세션을 어떻게 개선하나요? Language Server Protocol은 에이전트에게 구조적 코드 이해를 제공합니다: 정확한 정의, 타입이 지정된 참조, 호출 계층, 실시간 진단. LSP가 활성화된 에이전트의 세션 트랜스크립트에는 모호한 grep 결과 대신 정밀하고 검증 가능한 코드 탐색 데이터가 포함됩니다.4

세션 트랜스크립트를 git에 커밋해야 하나요? 답은 저장소의 개인정보 요구 사항에 따라 다릅니다. 내부 저장소의 경우, 트랜스크립트를 커밋하면 출처가 보존됩니다. 공개 저장소의 경우, git notes(기본적으로 clone 시 전송되지 않음)나 커밋 참조가 있는 별도 저장소가 더 안전한 접근법입니다.2

세션 출처에 얼마나 많은 저장 공간이 필요한가요? 일반적인 30분 에이전트 세션은 200KB-800KB의 원시 트랜스크립트를 생성합니다. Git notes는 데이터를 메인 오브젝트 데이터베이스 외부에 저장하므로 기본적으로 git clone 크기는 변하지 않습니다. Memento의 마크다운 변환은 원시 크기를 약 60% 줄입니다. 하루 10-20개의 에이전트 세션을 실행하는 팀의 경우, 매일 2-10MB의 출처 데이터를 예상할 수 있으며, 이는 세션당 중간 해상도 스크린샷 한 장에 해당합니다.2

에이전트 관측성과 세션 출처의 관계는 무엇인가요? 에이전트 관측성은 에이전트가 실시간으로 무엇을 하는지 모니터링합니다: 리소스 소비, 정책 준수, 런타임 동작.7 세션 출처는 에이전트가 무엇을 결정했고 왜 그랬는지를 사후에 기록합니다. 관측성은 “에이전트가 지금 올바르게 동작하고 있는가?”에 답합니다. 출처는 “지난 화요일에 에이전트가 왜 이런 선택을 했는가?”에 답합니다. 두 시스템은 서로 보완적입니다: 관측성은 문제를 실시간으로 포착하고, 출처는 사후에 문제를 설명합니다.


출처


  1. Crosley, Blake, “Your Agent Writes Faster Than You Can Read,” blakecrosley.com, February 2026. Cognitive debt framework, five independent research groups converging on the same problem. 

  2. mandel-macaque, “Memento: Git extension for AI session tracking,” GitHub, 2026. Git notes storage, markdown conversion, multi-provider support. 100 HN points, 124 comments. 

  3. Author’s production telemetry. 84 hooks across 15 event types, session state files (jiro.state.json, jiro.progress.json), 60+ daily Claude Code sessions, February-March 2026. 

  4. Bansal, Karan, “Claude Code LSP,” karanbansal.in, 2026. LSP integration enabling goToDefinition, findReferences, hover, diagnostics. 75 HN points, 39 comments. 

  5. Crosley, Blake, “Anatomy of a Claw: 84 Hooks as an Orchestration Layer,” blakecrosley.com, February 2026. 

  6. Crosley, Blake, “The Fabrication Firewall: When Your Agent Publishes Lies,” blakecrosley.com, February 2026. Confabulation feedback loop, output firewalls, blast radius classification. 

  7. Crosley, Blake, “The Invisible Agent: Why You Can’t Govern What You Can’t See,” blakecrosley.com, March 2026. Three-layer visibility stack, runtime auditing. 

  8. Git Documentation: git-notes, git-scm.com. Notes storage in refs/notes/, per-commit metadata attachment. 

  9. Crosley, Blake, “What I Told NIST About AI Agent Security,” blakecrosley.com, February 2026. Standardized audit logging recommendation. 

  10. Crosley, Blake, “Jiro: A Quality Philosophy for AI-Assisted Engineering,” blakecrosley.com, February 2026. Evidence gate, quality loop, seven failure modes. 

  11. Crosley, Blake, “Building Custom Skills for Claude Code,” blakecrosley.com, February 2026. Skill authoring, slash command patterns. 

관련 게시물

Silent Egress: The Attack Surface You Didn't Build

A malicious web page injected instructions into URL metadata. The agent fetched it, read the poison, and exfiltrated the…

16 분 소요

The Invisible Agent: Why You Can't Govern What You Can't See

Anthropic silently dropped a 10GB VM on users' Macs. Agent observability requires three layers: resource metering, polic…

17 분 소요

Your Agent Writes Faster Than You Can Read

Five research groups published about the same problem this week: AI agents produce code faster than developers can under…

16 분 소요