요즘 AI 코딩 에이전트 여러 개 같이 쓰시는 분들 많을 텐데요.
Claude Code 쓰다가 Cursor도 쓰고, ChatGPT Codex CLI도 만지고,
가끔 Antigravity나 Aider도 섞어 쓰면 다음 답답함 한 번씩 겪어보셨을 겁니다.
- /compact 하면 30분 전 작업도 까먹는다
- Claude한테 시킨 걸 GPT가 모른 채 다른 방식으로 다시 짜고 있다
- 어제 어디까지 작업했는지 새 세션이 전혀 모른다
- "테스트 돌렸어?" 물어봐도 진짜 돌렸는지 확인할 길이 없다
- 두 에이전트가 같은 파일을 동시에 만져서 한쪽이 덮어쓴다
이 문제 풀려고 만든 작은 프로토콜을 깃헙에 올렸습니다.
이름은 **agent-work-mem**.
## 한 줄 요약
프로젝트에 마크다운 파일 두 개(`AIMemory/PROTOCOL.md`, `AIMemory/work.log`)만 깔리면,
어떤 AI 에이전트(Claude Code · ChatGPT Codex CLI · OpenCode · Antigravity ·
Cursor · Aider · Cline · Continue · Windsurf · gemini-cli 등)에서 작업해도
같은 work.log에 이벤트를 남기고, 다른 에이전트한테 일을 넘길 땐 handoff 파일로
구조화된 메시지를 주고받습니다.
벤더 무관, 머신 무관, 세션 무관. 마크다운 파일이 전부라
데몬도 SaaS도 API key도 필요 없습니다.
## 설치는 prompt 한 번 paste
깃헙의 prompt.md를 복사해서 본인 에이전트에 한 번 붙여넣기만 하면 끝.
에이전트가 자기 정체(model-id, vendor, capability) 선언하고
파일 두 개 만들고 첫 이벤트 기록하고, 이후 모든 턴에서 protocol 따르겠다고
commit합니다.
## 실제로는 이런 모습
work.log 발췌 (Claude가 코드 짜고 GPT가 리뷰한 시나리오):
### 2026-04-26 09:25 | claude-opus-4-5 | HANDOFF
→ gpt-5-codex: REVIEW_REQUEST for JWT auth. Want a second pair of
eyes on token rotation race conditions before merging.
### 2026-04-26 14:33 | gpt-5-codex | HANDOFF_RECEIVED
← claude-opus-4-5: handoff_auth-review.claude-opus-4-5.md
### 2026-04-26 14:33 | gpt-5-codex | HANDOFF
→ claude-opus-4-5: REVIEW_RESPONSE. Found 1 TOCTOU race in
refresh-rotation. Mitigation in §3 of response file.
### 2026-04-26 16:42 | claude-opus-4-5 | HANDOFF_CLOSED
← gpt-5-codex: TOCTOU* via DB-level lock. Ready to merge.
이게 자동으로 쌓입니다. /compact 후 새 세션 열어도 work.log 50줄 읽으면
"아, 어디까지 했었지" 60초 내 복귀.
## 신경 쓴 부분
**벤더 무관 어휘**
capability를 `filesystem-write`, `shell-exec`, `web-search` 같은 일반 태그로
통일했습니다. Claude의 "Bash"나 OpenAI의 "python" 같은 벤더 명칭 안 씀.
같은 GPT-5라도 Codex CLI에서 도는지 Cursor에서 도는지에 따라 capability가
다르므로 harness 필드도 따로 둡니다.
**race condition 방어 (4단계)**
work.log 동시 쓰기는 보통 신경 안 쓰면 깨집니다. agent-work-mem은:
- Baseline: POSIX O_APPEND atomicity (≤4KB 이벤트는 atomic)
- 옵션: `flock` 으로 명시 락
- 클라우드 동기화 (Dropbox/iCloud) 환경: per-session files 모드로
자동 전환 → 충돌 0건
- Read-modify-write 도구로 work.log 만지는 거 명시 금지
**Obsidian 연계 (옵션)**
AIMemory 폴더를 Obsidian vault로 열면 그래프 뷰 + Dataview 쿼리로
"미완료 handoff 모두 보기" 같은 게 됩니다. 부트스트랩 prompt에 자동
설치 step 포함되어 있어요(macOS는 brew, Linux는 flatpak, Windows는 winget).
## 솔직한 한계
- 순전히 convention 기반입니다. 에이전트가 규칙 안 지키면 "너 work.log
안 적었네" 나무라야 합니다 (코드 리뷰처럼). 신뢰할 수 있는 에이전트
플랫폼끼리 쓸 때 가장 잘 작동.
- 일부 LLM은 자기 model-id를 정확히 모릅니다 → 사용자가 알려줘야 할
때 있음.
- AIMemory에 민감 정보 들어갈 수 있으니 public repo면 .gitignore
처리 또는 private repo 분리 권장.
- 채팅 전용 LLM (웹 ChatGPT 무료, 모바일앱 등)은 파일 시스템 접근이
없어서 protocol 직접 수행은 불가. 일회성 의견 들을 때만 사용 권장.
## 깃헙
**https://github.com/daystar7777/agent-work-mem**
README에 mermaid 도식 두 개 + 실전 시나리오 5개 + AICP handoff 샘플
파일이 들어있습니다. 한 프로젝트에서 Claude / GPT / Gemini 같이 굴리면서
실제로 다듬은 거라 모서리들은 대충 깎여있는 상태입니다.
부족한 부분이나 "이 케이스는?" 짚어주시면 감사하겠습니다.
이슈/PR도 환영합니다.
이상입니다.
필요하신 분 잘쓰시면 좋겠어요 ^^ 얼마든지 수정배포하셔도 됩니다.
5시간 찰때쯤 까먹더라구요 ㅋㅋㅋ
이게 좀 더 인텔리전트한 방법이 있을법도 한디 ㅋ
매번
너 푸시 했니?
아 아뇨 바로 할게요