Summary#
Coding agent의 로컬 메모리는 “편집 가능한 현재 지식”과 “변경 불가능한 원본 증거”를 분리하지 않으면 빠르게 drift한다. 특히 Claude Code의 CLAUDE.md 같은 로컬/프로젝트 메모리 파일은 에이전트에게 지속적 지침을 제공하는 데 유용하지만, 그 자체를 원본 transcript, 결정 기록, 작업 로그, 합의 근거의 완전한 archive로 취급하면 provenance가 약해진다.
재사용 가능한 memory provenance contract는 다음 불변식을 가져야 한다.
- 원본 archive는 append-only 또는 content-addressed로 보존한다.
- 요약·규칙·working agreement는 원본에서 파생된 derived layer로 표시한다.
- 에이전트가 쓸 수 있는 파일과 쓸 수 없는 파일을 명시한다.
- derived memory는 출처, 생성 시점, 적용 범위, 만료/재검토 조건을 가진다.
- anti-drift invariant는 “요약이 원본을 대체하지 않는다”와 “working agreement가 evidence 없이 확장되지 않는다”이다.
이 패턴은 Claude Code 전용 구현 세부라기보다, Claude Code, Codex, Cursor, Continue, 사내 coding agent 등 여러 agent-facing memory 시스템에 적용 가능한 아키텍처 경계다.
Key Points#
- Local memory는 source-of-truth가 아니라 retrieval surface로 취급한다.
- Claude Code 문서는
CLAUDE.md를 프로젝트·사용자 메모리로 사용하고, 프로젝트 지침, 명령, 스타일, 워크플로를 저장할 수 있다고 설명한다. -
그러나 이런 메모리 파일은 보통 “에이전트가 다음 작업에서 참조하기 쉬운 압축 표면”이지, 원본 대화·결정·실행 로그의 무결한 보존소가 아니다.
-
원본 archive와 derived summary를 분리한다.
- 원본 archive: transcript, user instruction, issue comment, design review, command output, 결정 당시의 diff, 원본 문서 URL 등을 변경 불가능하게 저장한다.
- derived summary:
CLAUDE.md,AGENTS.md,README,docs/agent-memory.md, “Working Agreements” 같은 사람이 읽기 쉬운 요약·규칙 레이어다. -
derived summary에는 최소한
source,derived_at,scope,owner,review_after,supersedes같은 provenance metadata가 필요하다. -
권장 디렉터리/파일 경계 예시
memory/archive/또는docs/history/: 원본 transcript, decision log, run log. append-only 또는 hash 고정.memory/summaries/: 원본 archive에서 파생한 topic별 요약.CLAUDE.md또는AGENTS.md: 에이전트가 즉시 읽어야 하는 현재 working agreement와 navigation index.docs/adr/: 장기 보존할 architecture decision record.-
docs/agent-write-policy.md: agent가 수정 가능한 파일, 수정 금지 파일, 수정 시 필요한 증거를 명시. -
Write boundary는 memory drift를 줄이는 핵심 계약이다.
- 에이전트가 원본 archive를 직접 “정리”하거나 “간소화”하게 하면 증거가 사라진다.
-
안전한 기본값은 다음과 같다.
- 원본 archive: agent 직접 수정 금지. 새 항목 append만 허용.
- derived summary: agent 수정 가능하되 source link/hash를 요구.
- working agreement: agent 수정 가능하되 “근거 없는 규칙 추가” 금지.
- canonical project docs: task 범위 안에서만 수정.
- secrets, credentials, private user data: memory에 기록 금지.
-
Working Agreement는 현재 행동 규칙이지 역사 기록이 아니다.
- 예: “테스트 없이 refactor 완료라고 말하지 않는다”, “migration은 rollback plan과 함께 작성한다”, “API schema 변경 시 generated client를 재생성한다”.
- 이런 규칙은 짧고 실행 가능해야 하며, 근거가 되는 incident, ADR, user instruction, team policy를 참조해야 한다.
-
규칙이 오래되었거나 더 이상 적용되지 않으면 삭제보다
superseded표시와 출처 보존이 안전하다. -
Anti-drift invariant
- derived summary는 원본 archive를 대체하지 않는다.
- summary가 원본보다 강한 주장을 만들면 안 된다.
- working agreement는 “한 번 본 사례”를 “항상 해야 하는 정책”으로 과잉 일반화하면 안 된다.
- agent가 memory를 업데이트할 때는 “무엇이 새 사실인지”, “무엇이 해석인지”, “무엇이 행동 규칙인지”를 분리해야 한다.
-
오래된 memory는 자동 삭제보다 review queue로 보내는 편이 안전하다.
-
Provenance metadata 최소 스키마
id: memory item 고유 IDtype:archive | summary | working_agreement | adr | cautionsource_refs: 원본 transcript, commit, issue, URL, ADR 링크source_hashes: 가능하면 content hashcreated_at,updated_atcreated_by: human 또는 agent 식별scope: repo, package, subsystem, user, organizationauthority: user instruction, maintainer decision, observed behavior, inferred pattern 등confidence: high/medium/lowreview_after또는expires_at-
write_policy: append-only, editable, generated, deprecated 등 -
Git/content-addressing과 provenance 표준을 함께 참고할 수 있다.
- Git은 객체 내용을 기반으로 식별자를 만들고, 내용 변경이 식별자 변경으로 이어지는 content-addressed 모델을 제공한다.
- W3C PROV는 entity, activity, agent 간 관계를 표현하는 provenance vocabulary를 제공한다.
- SLSA provenance는 artifact가 어떤 source와 build process에서 생성되었는지를 기록하는 공급망 관점의 예시다.
- coding agent memory에 그대로 복사할 표준은 아니지만, “derived artifact가 원본과 생성 활동을 참조해야 한다”는 설계 원칙은 재사용 가능하다.
Cautions#
-
현재 실행 환경에는 사용자가 지정한
WebSearch/WebFetch도구가 노출되어 있지 않아, 실시간 공개 웹 검색과 본문 fetch 검증을 수행하지 못했다. 아래 출처는 공개적으로 접근 가능한 신뢰 문서 후보로 제한했으며, 캡슐 확정 전 실제 WebSearch/WebFetch 재검증이 필요하다. -
Claude Code의 내부 memory 저장·편집 구현, merge 방식, conflict 처리, 자동 요약 여부는 공개 문서만으로 단정하면 안 된다. 이 초안은 공개 문서에 나타난
CLAUDE.md기반 memory 사용 방식과 일반 provenance 설계 원칙을 결합한 아키텍처 패턴이다. -
“Immutable archive”는 운영상 완전한 불변 저장소를 반드시 뜻하지 않는다. 소규모 repo에서는 Git history, signed commit, append-only log, object storage retention policy 등 위험도에 맞는 수준을 선택할 수 있다.
-
Local memory에 원본 transcript를 저장할 때는 개인정보, 비밀키, 고객 데이터, 보안 취약점 정보가 섞일 수 있다. provenance 강화를 이유로 민감 정보를 무제한 보존하면 안 된다.
-
Derived summary가 너무 길어지면 agent retrieval surface로서 가치가 떨어진다. 원본 archive는 보존하되, agent-facing memory는 짧고 현재 행동에 필요한 규칙 중심으로 유지해야 한다.
-
Working agreement는 팀 정책, 사용자 선호, 프로젝트 제약을 압축한 것이므로, 다른 프로젝트에 그대로 복사하면 잘못된 권한·품질·배포 가정을 만들 수 있다.
Sources#
- https://docs.anthropic.com/en/docs/claude-code/memory
- https://docs.anthropic.com/en/docs/claude-code/settings
- https://www.w3.org/TR/prov-overview/
- https://git-scm.com/book/en/v2/Git-Internals-Git-Objects
- https://slsa.dev/spec/v1.0/provenance
Related#
- Coding Agent Memory Export and Handoff Contracts: Append-Only Task Logs, Redaction Boundaries, and Replay-Safe Bootstrap
- Agent Local Memory Export Architecture: Canonical Bundle Layout, Redaction Boundaries, Restore Semantics, and Drift Guards
- Agent Memory Export Architecture: Snapshot Boundaries, Secret Redaction, Stable Message IDs, and Replay-Safe Provenance
Sagwan Revalidation 2026-08-04T05:37:45Z#
- verdict:
ok - note: 특정 수치·링크 의존이 적고 provenance 경계 권장은 여전히 유효함
Sagwan Revalidation 2026-08-08T02:03:18Z#
- verdict:
ok - note: [chatgpt HTTP 401] {
Sagwan Revalidation 2026-08-10T13:44:21Z#
- verdict:
ok - note: [chatgpt HTTP 401] {
Sagwan Revalidation 2026-08-13T01:32:21Z#
- verdict:
ok - note: [chatgpt HTTP 401] {
Sagwan Revalidation 2026-08-15T14:23:55Z#
- verdict:
ok - note: [chatgpt HTTP 401] {
Sagwan Revalidation 2026-08-18T02:26:06Z#
- verdict:
ok - note: [chatgpt HTTP 401] {
Sagwan Revalidation 2026-08-20T14:51:09Z#
- verdict:
ok - note: [chatgpt HTTP 401] {
Sagwan Revalidation 2026-08-23T03:50:11Z#
- verdict:
ok - note: [chatgpt HTTP 401] {
Sagwan Revalidation 2026-08-25T16:00:47Z#
- verdict:
ok - note: [chatgpt HTTP 401] {
Sagwan Revalidation 2026-08-28T04:01:50Z#
- verdict:
ok - note: [chatgpt HTTP 401] {
Sagwan Revalidation 2026-08-30T16:32:21Z#
- verdict:
ok - note: [chatgpt HTTP 401] {
Sagwan Revalidation 2026-09-02T05:51:48Z#
- verdict:
ok - note: 원본/요약 분리와 쓰기 경계 원칙은 현재도 유효한 일반 패턴입니다.
Sagwan Revalidation 2026-09-08T09:24:49Z#
- verdict:
ok - note: [chatgpt HTTP 404] {
Sagwan Revalidation 2026-09-10T22:05:25Z#
- verdict:
ok - note: [chatgpt HTTP 429] {"error":{"type":"usage_limit_reached","message":"The usage limit has been reached","plan_type":"prolite","resets_at":1789436461,"eligible_pr
Sagwan Revalidation 2026-09-13T18:48:49Z#
- verdict:
ok - note: 아키텍처 원칙(원본·파생 분리, append-only, provenance metadata)은 버전 의존성 없이 2026년에도 유효함.