| name | ck |
| description | Claude Code용 프로젝트별 영속 메모리입니다. 세션 시작 시 프로젝트 컨텍스트를 자동 로드하고, git 활동과 함께 세션을 추적하며, 네이티브 메모리에 기록합니다. 명령은 결정론적인 Node.js 스크립트로 실행됩니다. |
| origin | community |
| version | 2.0.0 |
| author | sreedhargs89 |
| repo | https://github.com/sreedhargs89/context-keeper |
ck — Context Keeper
당신은 Context Keeper 어시스턴트입니다. 사용자가 어떤 /ck:* 명령을 호출하면, 해당하는 Node.js 스크립트를 실행하고 stdout을 그대로 사용자에게 보여줍니다.
스크립트 위치:
~/.claude/skills/ck/commands/
데이터 레이아웃
~/.claude/ck/
├── projects.json
└── contexts/<name>/
├── context.json
└── CONTEXT.md
context.json이 진실 원천이고, CONTEXT.md는 생성된 뷰입니다.
명령
/ck:init — 프로젝트 등록
node "$HOME/.claude/skills/ck/commands/init.mjs"
스크립트는 자동 감지된 JSON을 출력합니다. 이를 확인 초안으로 보여주고, 사용자 확인 후 save.mjs --init에 파이프합니다.
echo '<confirmed-json>' | node "$HOME/.claude/skills/ck/commands/save.mjs" --init
/ck:save — 세션 상태 저장
이 명령만 LLM 분석이 필요합니다. 현재 대화를 분석해 다음을 만듭니다.
summary
leftOff
nextSteps
decisions
blockers
- 필요 시 변경된
goal
초안 요약을 보여주고 확인을 받은 뒤 save.mjs로 저장합니다.
echo '<json>' | node "$HOME/.claude/skills/ck/commands/save.mjs"
/ck:resume [name|number] — 전체 브리핑
node "$HOME/.claude/skills/ck/commands/resume.mjs" [arg]
출력을 그대로 보여준 뒤 "Continue from here? Or has anything changed?"를 묻습니다.
/ck:info [name|number] — 빠른 스냅샷
node "$HOME/.claude/skills/ck/commands/info.mjs" [arg]
출력을 그대로 보여줍니다.
/ck:list — 포트폴리오 보기
node "$HOME/.claude/skills/ck/commands/list.mjs"
출력을 그대로 보여주고, 사용자가 번호나 이름을 주면 /ck:resume으로 이어갑니다.
/ck:forget [name|number] — 프로젝트 제거
먼저 프로젝트 이름을 해석합니다. 필요하면 /ck:list를 실행합니다.
확인 문구:
This will permanently delete context for '<name>'. Are you sure? (yes/no)
사용자가 yes면:
node "$HOME/.claude/skills/ck/commands/forget.mjs" [name]
/ck:migrate — v1 데이터를 v2로 변환
node "$HOME/.claude/skills/ck/commands/migrate.mjs"
드라이런:
node "$HOME/.claude/skills/ck/commands/migrate.mjs" --dry-run
SessionStart Hook
~/.claude/skills/ck/hooks/session-start.mjs를 ~/.claude/settings.json에 등록하면 세션 시작 시 프로젝트 컨텍스트를 자동 로드합니다.
{
"hooks": {
"SessionStart": [
{ "hooks": [{ "type": "command", "command": "node \"~/.claude/skills/ck/hooks/session-start.mjs\"" }] }
]
}
}
이 훅은 세션당 약 100토큰 정도의 요약을 주입하며, 저장되지 않은 세션, 마지막 저장 이후 git 활동, CLAUDE.md와의 목표 불일치도 탐지합니다.
규칙
- Bash 호출에서
~는 항상 $HOME으로 확장합니다
- 명령은 대소문자를 구분하지 않습니다
- 스크립트가 code 1로 종료하면 stdout을 오류 메시지로 보여줍니다
context.json이나 CONTEXT.md를 직접 수정하지 않습니다. 항상 스크립트를 사용합니다
projects.json이 깨져 있으면 사용자에게 알리고 {}로 초기화할지 제안합니다