ck is a Claude Code project memory skill for persistent context across sessions. It registers projects, auto-loads briefing data on start, and supports save, resume, info, list, forget, and migrate workflows through deterministic Node.js scripts. A strong fit for ck for Context Engineering.

Stars156.1k
Favorites0
Comments0
AddedApr 15, 2026
CategoryContext Engineering
Install Command
npx skills add affaan-m/everything-claude-code --skill ck
Curation Score

This skill scores 82/100, which means it is a solid directory listing candidate for users who want persistent per-project memory in Claude Code. The repository gives agents clear command triggers, deterministic script execution, and enough command-level behavior to reduce guesswork versus a generic prompt, though install and setup expectations are still somewhat implicit.

82/100
Strengths
  • Strong triggerability: SKILL.md maps `/ck:*` commands to specific Node scripts and tells the agent to present stdout verbatim.
  • Real operational substance: the repo includes working command scripts for init, save, resume, list, info, forget, and migrate rather than only descriptive prose.
  • Useful workflow leverage: init auto-detects project metadata and save writes structured context plus native memory, making repeated project resumption more reliable.
Cautions
  • Install/setup clarity is incomplete: SKILL.md references `~/.claude/skills/ck/commands/` and data paths but does not provide an install command in the skill file.
  • Some workflows still rely on agent judgment, such as confirmation/edit steps before `save.mjs --init` and manual caution before destructive `forget` behavior.
Overview

Overview of ck skill

What ck does

ck is a project memory skill for Claude Code that stores reusable context outside the current chat. It is built for people who work across multiple repositories and want session continuity without rewriting the same background every time. The core job-to-be-done is simple: register a project once, then save, resume, inspect, list, and forget context through deterministic Node.js commands.

Who should install the ck skill

The best fit for the ck skill is developers using Claude Code for ongoing repository work, especially when project goals, constraints, and decisions need to survive across sessions. It is also a strong fit for ck for Context Engineering because it separates durable project memory from ad hoc prompt history. If you mostly do one-off prompts or do not use Claude Code's local skill system, ck is less useful.

Why ck is different from a normal prompt

A normal prompt can summarize a repo once. ck adds persistent structure: a project registry in ~/.claude/ck/projects.json, a per-project context.json source of truth, a generated CONTEXT.md, and a session-start hook that can auto-load project context. The practical differentiator is consistency: commands call local scripts, so the workflow is less model-dependent than asking the assistant to "remember this" informally.

How to Use ck skill

Install context and files to read first

For ck install, use the Claude Code skills mechanism, then inspect skills/ck/SKILL.md first. After that, read:

  • commands/init.mjs
  • commands/save.mjs
  • commands/resume.mjs
  • commands/info.mjs
  • hooks/session-start.mjs

That reading order matters. init.mjs shows what metadata ck tries to infer from the current repo, save.mjs defines the exact JSON schemas, and resume.mjs / info.mjs show what you will actually get back during daily use.

How ck is called in practice

The ck usage model is command-based. Main commands are:

  • /ck:init to register the current project
  • /ck:save to save session state
  • /ck:resume to load a full briefing
  • /ck:info for a quick snapshot
  • /ck:list to view all registered projects
  • /ck:forget to remove a project
  • /ck:migrate to convert older v1 data

A key implementation detail: ck expects the assistant to run Node scripts under ~/.claude/skills/ck/commands/ and present stdout cleanly. For init, it should not save immediately; it first drafts detected project details and waits for user confirmation before piping confirmed JSON into save.mjs --init.

What input produces better results

ck works best when you provide missing project facts that auto-detection cannot infer well. Strong inputs for /ck:init include:

  • clear project name
  • one-sentence description
  • primary stack
  • current goal
  • explicit constraints or "do nots"
  • repository URL if available

For /ck:save, stronger session input looks like:

  • summary: what changed this session
  • leftOff: the exact stopping point
  • nextSteps: 2-5 concrete follow-ups
  • decisions: what was decided and why
  • blockers: unresolved issues

Weak input: "worked on auth."
Strong input: "Implemented refresh token rotation, left off at failing integration tests in apps/api/tests/auth.spec.ts, next step is fixing cookie domain handling, decision was to keep server-side revocation for now because mobile clients are not ready."

Suggested workflow for real projects

A practical ck guide is:

  1. In a repo root, run /ck:init.
  2. Review and correct the detected draft before confirming.
  3. At the end of meaningful work, run /ck:save.
  4. On the next session, use /ck:resume for full context or /ck:info for a quick check.
  5. Use /ck:list when switching between projects.

If adopting ck for Context Engineering, treat it as your durable project briefing layer. Keep short-lived brainstorming in chat, but move stable facts, decisions, and next steps into ck so future sessions start from a cleaner state.

ck skill FAQ

Is ck beginner-friendly?

Mostly yes, if you are already comfortable with Claude Code and local command execution. The concept is straightforward, but the skill is more operational than conversational. Beginners may need to read SKILL.md carefully to understand the confirmation step, JSON handoff, and where data is stored.

When is ck better than ordinary prompting?

ck is better when the same project recurs over days or weeks. It is not just a smarter prompt template; it keeps structured project memory on disk and can reload it consistently. If your work is temporary or single-session, a regular prompt is usually enough and faster.

What are the main boundaries or risks?

The biggest boundary is that ck is only as good as what gets saved. If users skip /ck:save, the memory layer stays stale. Another constraint is fit: this is designed around Claude Code's local skills and filesystem conventions like ~/.claude/ck/. It is not a general cloud memory service. Also, CONTEXT.md is generated, so hand-editing it is the wrong place to maintain truth.

How to Improve ck skill

Give ck better project registration inputs

The highest-leverage improvement for ck is better initialization quality. Auto-detection from package.json, README content, or git metadata is helpful, but often incomplete. Correct the draft aggressively at /ck:init time. A precise goal and explicit constraints make later /ck:resume outputs much more useful than generic stack labels alone.

Avoid the most common failure modes

Common ck problems are predictable:

  • registering from the wrong directory
  • saving vague summaries
  • forgetting to update next steps
  • assuming generated markdown is the source of truth
  • deleting context without confirming project identity first

If outputs feel weak, inspect whether the underlying context.json actually contains enough detail. Most quality issues come from sparse saved state, not from the command scripts themselves.

Iterate after the first output

To improve ck usage, do not treat the first saved context as final. After /ck:resume, ask: what is missing that I would need tomorrow with zero extra chat history? Then save again with sharper decisions, blockers, and stopping points. The best ck skill setups evolve into compact, high-value briefings rather than long diary entries.

Ratings & Reviews

No ratings yet
Share your review
Sign in to leave a rating and comment for this skill.
G
0/10000
Latest reviews
Saving...