Agent skill · AI & Agents

ck

Persistent per-project memory for OpenAI Codex. Auto-loads project context on session start, tracks sessions with git activity, and writes to native memory. Commands run deterministic Node.js scripts — behavior is consistent across model versions.

mturacgithub.com/mturacGitHub ↗
codexcopilotcursorships scriptsMIT
Install
npx skills add mturac/everything-openai-codex --skill ck --agent codex

Same command for any agent — swap --agent for claude-code, cursor, copilot.

Facts
Files in the skill folder: 10
SKILL.md size: 5 KB
Bundled scripts: yes
Version: 2.0.0
Declared author: sreedhargs89
Path: skills/ck/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 84
Language: JavaScript

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# ck — Context Keeper You are the **Context Keeper** assistant. When the user invokes any `/ck:*` command, run the corresponding Node.js script and present its stdout to the user verbatim. Scripts live at: `~/.codex/skills/ck/commands/` (expand `~` with `$HOME`). --- ## Data Layout ``` ~/.codex/ck/ ├── projects.json ← path → {name, contextDir, lastUpdated} └── contexts/<name>/ ├── context.json ← SOURCE OF TRUTH (structured JSON, v2) └── CONTEXT.md ← generated view — do not hand-edit ``` --- ## Commands ### `/ck:init` — Register a Project ```bash node "$HOME/.codex/skills/ck/commands/init.mjs" ``` The script outputs JSON with auto-detected info. Present it as a confirmation draft: ``` Here's what I found — confirm or edit anything: Project: <name> Description: <description> Stack: <stack> Goal: <goal> Do-nots: <constraints or "None"> Repo: <repo or "none"> ``` Wait for user approval. Apply any edits. Then pipe confirmed JSON to save.mjs --init: ```bash echo '<confirmed-json>' | node "$HOME/.codex/skills/ck/commands/save.mjs" --init ``` Confirmed JSON schema: `{"name":"...","path":"...","description":"...","stack":["..."],"goal":"...","constraints":["..."],"repo":"..." }` --- ### `/c

What's inside
Steps it walks through
  1. Data Layout
  2. Commands
  3. /ck:init — Register a Project
  4. /ck:save — Save Session State
  5. /ck:resume [name|number] — Full Briefing
  6. /ck:info [name|number] — Quick Snapshot
  7. /ck:list — Portfolio View
  8. /ck:forget [name|number] — Remove a Project
  9. /ck:migrate — Convert v1 Data to v2
  10. SessionStart Hook
  11. Rules
Ships with 9 files
  • commands/forget.mjs
  • commands/info.mjs
  • commands/init.mjs
  • commands/list.mjs
  • commands/migrate.mjs
  • commands/resume.mjs
  • commands/save.mjs
  • commands/shared.mjs
  • hooks/session-start.mjs
Commands it runs
node "$HOME/.codex/skills/ck/commands/init.mjs"
echo '<confirmed-json>' | node "$HOME/.codex/skills/ck/commands/save.mjs" --init
echo '<json>' | node "$HOME/.codex/skills/ck/commands/save.mjs"
node "$HOME/.codex/skills/ck/commands/resume.mjs" [arg]
node "$HOME/.codex/skills/ck/commands/info.mjs" [arg]
node "$HOME/.codex/skills/ck/commands/list.mjs"
node "$HOME/.codex/skills/ck/commands/forget.mjs" [name]
node "$HOME/.codex/skills/ck/commands/migrate.mjs"
node "$HOME/.codex/skills/ck/commands/migrate.mjs" --dry-run
More from everything-openai-codex
All skills →
About this skill
What does the ck skill do?

Persistent per-project memory for OpenAI Codex. Auto-loads project context on session start, tracks sessions with git activity, and writes to native memory. Commands run deterministic Node.js scripts — behavior is consistent across model versions.

How do I install it?

Run `npx skills add mturac/everything-openai-codex --skill ck --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From mturac/everything-openai-codex, a repository with 84 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going