
Context Keeper
FreeManage project context seamlessly across sessions.
Free · Opens the source repo
What Context Keeper does
Context Keeper is a specialized assistant designed to help developers and designers maintain project context through persistent memory. It automatically loads project context at the start of a session and tracks Git activity, allowing for a smooth transition between work sessions. The skill operates through a series of Node.js scripts that execute specific commands, providing a consistent experience across different model versions. This is particularly useful for teams or individuals who need to keep track of multiple projects simultaneously.
The core functionality revolves around three main commands: /ck:init, /ck:save, and /ck:resume. The /ck:init command registers a new project by gathering information such as project name, description, and goals, which is then saved in a structured JSON format. This allows users to confirm and edit details before finalizing the project setup. The /ck:save command captures the current session state, including summaries and next steps, ensuring that no important information is lost when transitioning between sessions. Finally, the /ck:resume command allows users to retrieve and review previous session details, facilitating a quick and efficient return to ongoing work.
Context Keeper is particularly beneficial for developers and designers who often juggle multiple projects or need to maintain continuity in their work. By automating the tracking and saving of project context, it reduces the cognitive load on users, allowing them to focus more on their tasks rather than on remembering previous states or decisions. This skill is ideal for those who frequently start and stop work on projects or need to onboard new team members quickly by providing them with a clear history of work done so far.
When to use it
Use this skill when starting new projects, saving session states, or resuming previous work.
When not to use it
Avoid using this skill for single-session tasks where context retention is unnecessary.
What you can build with it
Starting a New Project
Use `/ck:init` to register a new project and set up its context automatically.
Saving Session State
At the end of a work session, run `/ck:save` to ensure all your progress and notes are captured.
Resuming Previous Work
When returning to a project, use `/ck:resume` to get a complete briefing of what was done previously.
How to install Context Keeper
View source1. Install with the skills CLI
npx skills add affaan-m/ecc/ck --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by affaan-mck — コンテキスト キーパー
あなたはコンテキストキーパー アシスタントです。ユーザーが/ck:*コマンドを呼び出すと、対応するNode.jsスクリプトを実行し、その標準出力をユーザーに逐語的に提示します。スクリプトは以下にあります:~/.claude/skills/ck/commands/(~を$HOMEで展開)。
データレイアウト
~/.claude/ck/
├── projects.json ← path → {name, contextDir, lastUpdated}
└── contexts/<name>/
├── context.json ← 真実のソース(構造化JSON、v2)
└── CONTEXT.md ← 生成されたビュー — 手動編集しない
コマンド
/ck:init — プロジェクトを登録
node "$HOME/.claude/skills/ck/commands/init.mjs"
スクリプトは自動検出情報でJSONを出力します。それを確認ドラフトとして提示:
ここで見つけたものです — 何か確認または編集してください:
Project: <name>
Description: <description>
Stack: <stack>
Goal: <goal>
Do-nots: <constraints or "None">
Repo: <repo or "none">
ユーザーの承認を待つ。編集を適用。次に確認されたJSONをsave.mjsにパイプ:
echo '<confirmed-json>' | node "$HOME/.claude/skills/ck/commands/save.mjs" --init
確認されたJSONスキーマ:{"name":"...","path":"...","description":"...","stack":["..."],"goal":"...","constraints":["..."],"repo":"..." }
/ck:save — セッション状態を保存
これはLLM分析を必要とする唯一のコマンドです。 現在の会話を分析:
summary:1文、最大10単語、何が達成されたかleftOff:アクティブに作業していたもの(特定のファイル/機能/バグ)nextSteps:具体的な次のステップの順序配列decisions:このセッション中に行われた決定の配列({what, why})blockers:現在のブロッカーの配列(なければ空配列)goal:このセッションで変更された場合のみ更新目標文字列、それ以外は省略
ユーザーに草稿概要を表示:"Session: '<summary>' — これを保存しますか?(yes / edit)"
確認を待つ。次にsave.mjsにパイプ:
echo '<json>' | node "$HOME/.claude/skills/ck/commands/save.mjs"
JSONスキーマ(正確):{"summary":"...","leftOff":"...","nextSteps":["..."],"decisions":[{"what":"...","why":"..."}],"blockers":["..."]}
スクリプトの標準出力確認を逐語的に表示。
/ck:resume [name|number] — 完全なブリーフィング
node "$HOME/.claude/skills/ck/commands/resume.mjs" [arg]
出力を逐語的に表示。その後、「ここから続けますか?または何か変わったことがありますか?」と尋ねます。
ユーザーが変更を報告 → すぐに/ck:saveを実行。
使用時期
- 新しいプロジェクトを始める(
/ck:init) - セッション終了時にコンテキストを保存(
/ck:save) - 以前のセッションを再開(
/ck:resume) - プロジェクト履歴を表示(
/ck:log)
Frequently asked questions about Context Keeper
Similar skills
Canva Creator
Streamline your content campaign from brief to HubSpot.
Cowork Plugin Customization
Tailor your Claude Code plugin to fit your organization.
Impediment Prioritization
Rank and prioritize impediments effectively.
Chronicle
Streamline your Copilot session analysis and reporting.
Idea Refine
Transform vague ideas into actionable concepts.
App Store Optimization
Optimize your mobile app's visibility and performance.
