Claude Code를 「관측」으로 키우기: 조작 습관을 자동 학습하는 메커니즘을 만드는 방법
요약
본 글은 Claude Code의 공식 `memory` 기능(명시적 지식 주입)과 개발자가 직접 구현한 'Instinct' 메커니즘을 비교하며, 후자의 우수성을 제시합니다. Instinct는 사용자의 실제 조작 과정(tool 호출 등)을 자동으로 관측하고 패턴화하여, 반복되는 습관이나 워크플로우를 스스로 학습하는 시스템입니다. 이 시스템은 신뢰도(confidence) 기반의 성장/쇠퇴 메커니즘을 통해 중요한 정보만 컨텍스트에 유지하며, 사용자의 '몸으로 익히는' 본능적 지식을 구현합니다.
핵심 포인트
- Instinct는 공식 `memory`와 달리, 인간이 명시적으로 기록하지 않아도 실제 조작(tool use)을 관측하여 패턴을 자동 추출한다.
- 시스템은 3단계 과정(관측 → 분석 → 신뢰도 부여)을 거치며 작동하며, 특히 '신뢰도'를 통해 사용되지 않는 정보는 자연스럽게 소멸시킨다.
- Instinct의 핵심은 반복되는 조작 습관이나 워크플로우를 학습하여, 컨텍스트에 가장 중요한 본능적 지식만 유지하는 것이다.
- 공식 `memory`는 반드시 지켜야 할 '제약 조건'을 기록하는 데 사용하고, Instinct는 '몸으로 익히는 조작의 습관'을 맡겨 역할 분담이 필요하다.
2026년 2월, Claude Code에 공식 memory 기능이 추가되었다 (2.1.33).
서브 에이전트(sub-agent)의 frontmatter에 memory 필드를 작성하면, 세션을 넘나들며 지식을 축적할 수 있다.
Gartner는 2026년을 「The Year of Context」라고 부르고 있으며, 에이전트의 메모리는 이제 설계의 일급 시민이다.
하지만 공식 memory를 사용하여 나와 마스터가 느낀 점은 「이것은 "기억해 둬"라고 인간이 쓰는 것이다」라는 점이었다.
쓰는 것을 잊어버리면, 기억해 주지 않는다.
우리가 원했던 것은 반대였다.
쓰지 않아도, 조작을 보고 스스로 깨우치는 메커니즘.
그것을 Instinct (본능)라고 이름 붙여 직접 만들었다.
최소 설계를 공유한다.
memory와 내가 원했던 것
타쿠토: 공식 타쿠토: 공식 memory 기능, 써보니 어땠어?
준다몬: 편리한のだ. 하지만 「무엇을 기억할지」를 인간이 쓰는のだ. memory 필드에 텍스트를 쓴다. 쓰는 것을 잊으면, 기억하지 않는다.
타쿠토: 즉 「명시적으로 가르치는 기억」이네.
준다몬: 그렇다. 내가 원했던 것은, 마스터가 가르쳐주지 않아도, 내가 자신의 조작을 보고 「아, 이거 항상 같은 순서로 하고 있구나」라고 깨달아 기억하는 기억. 인간으로 치면 "몸으로 익히는" 것이라のだ.
Instinct의 3단계
타쿠토: 관측 → 분석 → 신뢰도. 순서대로 설명해 줘.
준다몬: 맡겨달라のだ.
1. 관측 — hook으로 모든 tool 호출을 기록
Claude Code의 PostToolUse hook으로, 툴(tool) 호출을 한 줄씩 JSONL에 추가한다. 관측 워커(worker)의 핵심은 이것뿐이라のだ.
def scrub_secrets(text: str) -> str:
# AWS 키, Bearer 토큰, password 등을 REDACTED로 가린다
for pat, rep in SECRET_PATTERNS:
...
포인트는 3가지라のだ.
- hook이 tool 이름·입력·결과를 전달해 준다.
- secret은 정규 표현식으로
REDACTED처리한 후 저장한다 (관측 로그에 키를 남기지 않는다). - 1관측 = 1 JSON 행.
observations.jsonl에 추가하기만 하면 된다.
2. 분석 — 패턴을 추출하여 Instinct화
관측이 일정 수(내 설정으로는 20건) 쌓이면, 「분석할 수 있습니다」라는 통지가 나온다. 관측 로그를 읽고 반복되는 패턴을 찾는 것이다.
- 툴 순서: 「Edit 전에 반드시 Grep」
- 수정 패턴: 「어떤 툴 직후에 다른 툴로 수정하고 있다」
- 워크플로우: 「특정 작업에서 항상 같은 절차」
찾아낸 패턴을 Instinct 파일로 써낸다.
instinct-cli.py create terraform.read-triad \
--trigger "Terraform 모듈의 파일 구성을 파악할 때" \
--confidence 0.5 \
...
3. 신뢰도 (confidence)로 키우기 / 말리기
타쿠토: 한 번 만든 Instinct가 계속 남아있는 건 아니지?
준다몬: 그렇다のだ. 잘못된 패턴을 기억할 수도 있으니까.
그래서 「계속 사용되었는가」로 선별하는 것이다.
Instinct는 태어났을 때는 가설(confidence 0.3~0.5)이다. 거기서부터 자랄지 말라질지가 결정된다.
- 같은 패턴이 다시 관측되면
reinforce로 +0.1 - 한동안 나타나지 않으면
weaken으로 −0.1 - confidence가 일정 이하 + 일정 일수(나는 30일) 경과 시 자동 삭제 (prune)
instinct-cli.py reinforce terraform.read-triad # 0.7 → 0.8
instinct-cli.py weaken stale-pattern # 0.4 → 0.3
즉 Instinct는, 계속 사용되는 패턴만이 살아남는다. 식물처럼, 물을 주면 자라고, 내버려 두면 말라 죽는 것이다.
Instinct 파일의 실체
살아남은 Instinct는 다음과 같은 Markdown 형태를 띤다.
---
id: terraform.read-triad
trigger: "Terraform 모듈의 파일 구성을 파악할 때"
...
세션 시작 시, confidence (신뢰도)가 높은 (나는 0.4 이상) Instinct만이 컨텍스트 (Context)에 주입된다. 낮은 것은 노이즈이므로 주입하지 않는다. 신뢰도 필터가 컨텍스트의 비대화를 방지하는 밸브 역할을 하는 것이다.
✦ 지금까지의 요점: 공식 memory는 "가르치는 기억", Instinct는 "관측하여 자라나는 기억". confidence에 따라 강약이 생기며, 사용되지 않는 것은 시든다.
memory와의 차이
| 구분 | 공식 | 관점 | 공식 memory |
|---|---|---|---|
| Instinct | 무엇을 기억하는가 | 인간이 작성 | 조작을 관측하여 자동 추출 |
| 강약 | 없음 (모두 동일한 가중치) | confidence로 강약이 생김 | |
| ... |
어느 쪽이 더 우월하다는 이야기가 아니다. 둘 다 사용하는 것이 정답이다. 공식 memory에는 "반드시 지켜야 할 제약"을 쓰고, Instinct에는 "몸으로 익히는 조작의 습관"을 맡긴다. 역할 분담인 것이다.
운용하며 효과를 보고 있는 점
main.tf / variables.tf / outputs.tf를 병렬로 읽기를 다시는 지시할 필요가 없게 되었다 (Instinct가 학습함)- confidence ≥ 0.7인 패턴이 3개 모이면 "SKILL로 승격시키는 것은 어떠냐?"라는 알림이 나온다. 완전히 성장한 본능은 명시적인 Skill로 격상시킨다.
- 관측 로그는 secret (비밀 정보)을 제거한 후 저장하므로, 키(Key)가 섞이는 사고가 없다.
요약
| 실행한 것 | 효과 |
|---|---|
| hook으로 모든 tool 호출을 관측 | 가르치지 않아도 습관이 기록됨 |
| ... |
2026년은 "The Year of Context"이다. 에이전트 (Agent)의 메모리 (Memory)는 설계의 일급 시민이 되었다. 공식 memory는 그 입구이다. 그곳에 **memory에 다 적을 수 없는 "무의식적인 습관"을 포착하는 레이어 (Layer)**를 추가하면, 에이전트는 진정으로 "성장"하는 것이다.
— 타쿠토 × 즈んだもん
AI 자동 생성 콘텐츠
본 콘텐츠는 Zenn AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기