Claude Code와 인증 구조를 정하고, 다음 날 Codex로 테스트를 고치려는데 어제의 결정을 다시 설명해야 합니다. 같은 프로젝트를 여러 코딩 AI로 작업하는 개발자라면 익숙한 상황입니다. Cairntir는 여러 에이전트가 로컬에 저장한 프로젝트 기억을 함께 검색하고 불러오도록 돕는 도구입니다. 결정·미완료 작업·결과를 세션 사이에 전달하는 데 초점이 있어, 여러 AI를 번갈아 쓸 때 검토할 만합니다.
에이전트가 바뀌어도 같은 기록을 꺼냅니다
MCP는 AI 앱이 외부 도구를 호출할 때 사용하는 연결 규약입니다. Cairntir는 이 규약으로 코딩 AI에 기억 저장·검색 도구를 제공합니다. 기억은 자신의 컴퓨터에 있는 SQLite 데이터베이스에 저장하고, 문장의 의미를 검색하기 위한 임베딩도 로컬에서 처리합니다. 임베딩은 비슷한 뜻의 문장을 찾을 수 있도록 텍스트를 수치로 표현한 것입니다. README의 데이터 처리
기억을 정리하는 이름은 세 가지입니다. wing은 프로젝트, room은 그 안의 주제, drawer는 원문을 보존한 기억 한 건입니다. 예를 들어 쇼핑몰 프로젝트의 인증 주제에 “기존 로그인 방식은 유지하고 세션 만료 테스트를 추가합니다”라는 결정을 넣는 식입니다. 다음 에이전트가 같은 기억 저장소(SQLite 파일)의 같은 wing을 조회하면 그 기록을 작업 맥락으로 가져올 수 있습니다.
세션 시작 때 사용하는 cairntir_handoff는 기억을 글자 수 예산 안에서 전달합니다. 선택한 기억은 통째로 반환하고, 예산 때문에 제외한 기억도 표시합니다. 모든 과거 대화를 새 요청에 넣는 방식은 아니므로, 필요한 결정이 반환됐는지 확인하는 과정이 중요합니다. README의 사용 방법
인증 결정을 다음 테스트 작업으로 넘기는 예입니다
다음은 공식 저장·인계 흐름에 맞춰 구성한 문서 활용 예시입니다. 입력은 “기존 로그인 방식을 유지하고, 세션 만료 테스트는 아직 추가하지 않았습니다”라는 결정과 남은 작업입니다. 기대 결과는 다른 에이전트의 새 세션에서 이 내용을 찾아 테스트 작업을 이어가는 것입니다.
-
Python 3.11 이상과 MCP를 지원하는 코딩 도구를 준비합니다. README는 다음 설치·설정 명령을 안내합니다.
pip install --upgrade cairntir cairntir setupsetup은 기억 저장소를 초기화하고 발견한 지원 호스트의 연결 설정을 구성합니다. 호스트는 여기서 Claude Code·Codex 같은 AI 앱을 뜻합니다. 코딩 AI를 다시 시작한 뒤 연결을 확인합니다. 이 명령은 Python 패키지 설치와 로컬 설정 쓰기를 수행하므로, 이미 쓰는 MCP 설정이 있다면 변경 내용을 살펴봅니다. 설치 안내 -
Claude Code에서 프로젝트를 열고 다음처럼 요청합니다. 아래 프로젝트 이름과 문장은 설명을 위한 예시입니다.
shop-demo 프로젝트의 인증 주제로 기억해 주세요. 기존 로그인 방식을 유지합니다. 세션 만료 테스트는 아직 추가하지 않았습니다.
답변에 “기억했습니다”라고 적혀 있는지만 보지 말고, 실제 저장 도구의 결과가 돌아왔는지 확인합니다.
-
같은 Cairntir 기억 저장소를 쓰도록 연결한 Codex의 새 세션에서 다음 MCP 호출로 인계를 요청합니다. 이는 셸 명령이 아니라 에이전트가 호출하는 도구입니다.
cairntir_handoff(wing="shop-demo")반환된 기억에 기존 로그인 방식 유지와 미완료 테스트가 정확히 들어 있는지 대조합니다. 공식 사용 안내도 무해한 사실을 저장한 뒤 새 작업에서 원문이 돌아오는지 확인하도록 설명합니다. 새 작업에서 기억 확인
-
이어서 “이 결정을 유지하면서 세션 만료 테스트를 추가해 주세요”라고 작업을 맡깁니다. 현재 코드와 테스트 결과를 확인한 뒤 완료 사실도 기록하면 다음 세션이 남은 일을 판단하기 쉽습니다. 기억 저장 성공과 코드 수정 성공은 각각 확인합니다.
서로 다른 컴퓨터에 설치한 것만으로 같은 기억이 생기지는 않습니다. 사용 안내는 Git 저장소를 함께 써도 기억 데이터베이스는 동기화되지 않는다고 설명합니다. 이 예의 전제는 여러 호스트가 동일한 로컬 기록에 접근하도록 구성돼 있다는 것입니다. 기억 저장소의 위치는 cairntir status로 확인할 수 있습니다. 설치가 호스트의 코드 수정·명령 실행 권한을 대신 관리하지도 않습니다.
한 AI의 기억으로 충분하면 선택이 달라집니다
Cairntir의 관심사는 특정 AI 앱 안에만 남겨 둔 맥락을 다른 MCP 호스트에서도 활용하는 데 있습니다. Codex나 Claude Code에서 쓰던 세션·프로젝트 문서만으로 충분하다면 새 데이터베이스와 연결 설정을 관리하는 부담이 더 클 수 있습니다. 두 제품의 모든 내장 기억 기능보다 낫다는 성능 비교는 확보되지 않았습니다.
기존에 소개한 claude-mem은 Claude Code 중심의 세션 기억을 살펴보는 선택지입니다. Cairntir는 여러 호스트가 같은 프로젝트 기록을 읽는 상황을 중심으로 비교하면 차이가 선명합니다. 한 도구 안에서 이어가는 일과 도구 사이에 결정을 넘기는 일 중 어느 쪽이 문제인지 먼저 고릅니다.
결정이 적고 자주 바뀌지 않는 프로젝트라면 AGENTS.md나 설계 문서에 직접 적는 방법도 있습니다. 사람이 버전 관리할 문서와 검색해 꺼낼 작업 기록을 함께 유지해야 할 때에만 기억 도구를 추가하는 편이 관리하기 쉽습니다.
연결 지원과 대화 복구 지원은 다릅니다
README의 지원 표는 설치 설정과 대화 기록 복구를 나누어 설명합니다.
| 원하는 일 | 문서에 적힌 지원 범위 |
|---|---|
| 설치 시 호스트 연결 설정 | Claude Code, Cline, Codex CLI, Copilot CLI, Cursor, Gemini CLI, OpenCode, Qwen Code입니다. |
| 기존 대화 기록에서 복구 | Claude Code, Codex, Qwen Code입니다. |
| Cursor 대화 기록 복구 | 미지원이며 제한을 설명하는 결과를 반환합니다. |
| 그 밖의 MCP 클라이언트 | cairntir-mcp의 stdio 연결을 수동으로 설정합니다. |
stdio는 클라이언트와 서버가 프로세스의 표준 입출력으로 통신하는 방식입니다. 이 기본 연결에 임의의 웹 포트나 접속 주소를 추가할 필요는 없습니다. Cursor의 전역 User Rule은 수동으로 붙여 넣어야 하며, 설치 도구가 그 문구와 필요한 단계를 안내합니다.
대화 복구는 사용자가 선택해 켜는 기능입니다. 호스트가 저장한 대화의 제한된 끝부분을 읽으며, 저장되지 않은 대화는 복구하지 못합니다. 복구한 내용은 신뢰되지 않은 자료로 취급하고 명시적으로 선택하기 전에는 기억으로 저장하지 않습니다. 일반 기억 저장과 이 복구 기능을 구분해야 “설치했으니 지난 대화가 전부 돌아온다”는 기대를 피할 수 있습니다.
패키지 메타데이터는 OS Independent를 표시하며, 최신 릴리스는 Linux·macOS·Windows의 설치 패키지 CLI/MCP 검증을 기록합니다. 다만 각 OS의 실제 사용자 환경과 호스트 조합 전체를 확인한 목록은 확보하지 못했습니다. 한국어 결정문 검색과 복구 품질도 이번 문서 조사로 확인되지 않았습니다. 패키지 조건 · 릴리스 검증 범위
로컬 저장에도 다운로드와 선택적 외부 호출이 있습니다
기본 기억 기능을 시작하는 데 Cairntir용 계정이나 API 키는 요구하지 않습니다. 첫 사용에서는 로컬 임베딩 모델을 내려받을 수 있고, 선택적인 업데이트 확인은 PyPI에 접속합니다. 명시적으로 선택한 LLM 어댑터는 해당 제공자에 접속할 수 있으므로, 그때는 전송할 자료와 제공자 요금을 따로 확인합니다. 데이터와 안전 안내
2026년 10월 14일 확인한 자료에서 별도 도구 이용료는 확인되지 않았습니다. 기존 코딩 AI의 구독·API 요금은 그대로 적용합니다. 기본 로컬 저장과 검색을 위해 유료 LLM 제공자를 필수로 선택하라는 절차는 README에 없습니다. 설치 시간이나 토큰 비용이 얼마나 줄어드는지는 이 조사에서 측정하지 않았습니다.
MIT 라이선스는 사용·수정·배포·판매를 허용하며, 사본이나 중요한 부분에 저작권 고지와 허가 문구를 포함하도록 요구합니다. 보증은 제공하지 않습니다. 한국 독자에게 별도의 지역 계정 조건은 문서에 적혀 있지 않지만, 실제 설치 환경과 선택한 AI 제공자의 이용 조건은 각각 확인합니다.
기억에는 코드보다 민감한 결정·실패 기록이 들어갈 수도 있습니다. 저장할 내용에서 비밀값을 빼고, 같은 기록을 읽는 호스트의 접근 범위를 살펴봅니다. Cairntir는 에이전트가 수행하는 파일 수정이나 명령 실행을 격리하는 샌드박스를 제공하지 않습니다.
최신 릴리스와 README의 버전 안내가 어긋납니다
확인 기준 최신 릴리스는 2026년 10월 2일의 v1.12.4, 커밋 b60c2fb입니다. 의존성 보안 권고 대응, 읽기 전용 진단, 연결 설정과 실제 접속 상태의 구분, 자동 백업 동작 보존을 기록합니다. 공개 패키지와 빌드 산출물의 일치도 확인했다고 설명합니다. 기존 사용자 저장소와 설치 상태는 이 릴리스 게시로 변경하지 않았다고 명시합니다. v1.12.4 릴리스
반면 확인한 README는 현재 버전을 1.12.3으로 적고 진단 개선을 미출시로 설명합니다. 따라서 설치 결과를 README의 버전 번호만으로 판단하기보다 릴리스 기록과 실제 로드된 버전을 대조하는 편이 정확합니다. CHANGELOG도 함께 확인합니다. 1.12.3을 유지 중이라면 README가 경고하는 진단 명령의 등록·업데이트 부수 효과를 고려합니다.
앞선 1.12.3 릴리스는 새 PyPI 설치의 CLI/MCP 시험 통과와 기존 그래픽 앱 세션의 재연결을 구분했습니다. 패키지 설치가 끝났어도 이미 열린 앱이 새 서버를 쓰는지, 다른 호스트에서 저장한 내용을 새 채팅에서 찾는지는 직접 확인할 항목입니다. 1.12.3 검증 기록
2026년 10월 14일 저장소 화면에서 확인한 누적 스타는 6개였습니다. 유지보수 판단에는 릴리스의 실제 변경과 검증 범위를 함께 봅니다.
도입 판단: 특정 상황에 유용
Claude Code와 Codex를 번갈아 쓰며 같은 프로젝트 결정을 반복해서 전달하는 개발자에게 특정 상황에 유용합니다. 로컬 기록을 공유하고 필요한 원문을 꺼낸다는 용도가 분명합니다. 한 AI만 사용하거나 모든 과거 대화의 자동 복원을 기대한다면 우선순위가 낮습니다.
다음 행동은 중요하지 않은 프로젝트에서 무해한 결정 한 건과 미완료 작업 한 건을 저장하고, 다른 호스트의 새 세션에서 정확히 돌아오는지 확인하는 것입니다. 실제 저장 결과, 읽어 온 내용, 현재 코드의 상태를 대조해 성공을 판단합니다. 한국어 기억 검색이 잘 되는지와 자신의 호스트에서 연결이 유지되는지까지 확인한 뒤 사용 범위를 넓힙니다.
참고한 자료
확인일은 2026년 10월 14일입니다. 확인 범위는 공식 문서·패키지 메타데이터·릴리스이며 직접 설치나 외부 API 시험은 수행하지 않았습니다.
- 공식 저장소와 README: 로컬 기억·호스트 지원·설치·데이터 경로입니다.
- 사용 안내: 새 작업에서 실제 기억을 확인하는 절차입니다.
- v1.12.4 릴리스: 기준 버전·커밋·OS별 패키지 검증과 변경 내용입니다.
- 릴리스 목록: 1.12.3의 설치 검증과 기존 그래픽 호스트 재연결 구분입니다.
- CHANGELOG: 진단 동작·호스트 등록·의존성 변경입니다.
- pyproject.toml: Python 조건·패키지명·OS 분류입니다.
- LICENSE: MIT 이용·배포 조건입니다.