skills/ck/SKILL.md
Persistent per-project memory for Claude Code. 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. Use when a project needs context to survive across Claude Code sessions instead of being re-explained each time.
npx skillsauth add affaan-m/everything-claude-code ckInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
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: ~/.claude/skills/ck/commands/ (expand ~ with $HOME).
~/.claude/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
/ck:init — Register a Projectnode "$HOME/.claude/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:
echo '<confirmed-json>' | node "$HOME/.claude/skills/ck/commands/save.mjs" --init
Confirmed JSON schema: {"name":"...","path":"...","description":"...","stack":["..."],"goal":"...","constraints":["..."],"repo":"..." }
/ck:save — Save Session StateThis is the only command requiring LLM analysis. Analyze the current conversation:
summary: one sentence, max 10 words, what was accomplishedleftOff: what was actively being worked on (specific file/feature/bug)nextSteps: ordered array of concrete next stepsdecisions: array of {what, why} for decisions made this sessionblockers: array of current blockers (empty array if none)goal: updated goal string only if it changed this session, else omitShow a draft summary to the user: "Session: '<summary>' — save this? (yes / edit)"
Wait for confirmation. Then pipe to save.mjs:
echo '<json>' | node "$HOME/.claude/skills/ck/commands/save.mjs"
JSON schema (exact): {"summary":"...","leftOff":"...","nextSteps":["..."],"decisions":[{"what":"...","why":"..."}],"blockers":["..."]}
Display the script's stdout confirmation verbatim.
/ck:resume [name|number] — Full Briefingnode "$HOME/.claude/skills/ck/commands/resume.mjs" [arg]
Display output verbatim. Then ask: "Continue from here? Or has anything changed?"
If user reports changes → run /ck:save immediately.
/ck:info [name|number] — Quick Snapshotnode "$HOME/.claude/skills/ck/commands/info.mjs" [arg]
Display output verbatim. No follow-up question.
/ck:list — Portfolio Viewnode "$HOME/.claude/skills/ck/commands/list.mjs"
Display output verbatim. If user replies with a number or name → run /ck:resume.
/ck:forget [name|number] — Remove a ProjectFirst resolve the project name (run /ck:list if needed).
Ask: "This will permanently delete context for '<name>'. Are you sure? (yes/no)"
If yes:
node "$HOME/.claude/skills/ck/commands/forget.mjs" [name]
Display confirmation verbatim.
/ck:migrate — Convert v1 Data to v2node "$HOME/.claude/skills/ck/commands/migrate.mjs"
For a dry run first:
node "$HOME/.claude/skills/ck/commands/migrate.mjs" --dry-run
Display output verbatim. Migrates all v1 CONTEXT.md + meta.json files to v2 context.json.
Originals are backed up as meta.json.v1-backup — nothing is deleted.
The hook at ~/.claude/skills/ck/hooks/session-start.mjs must be registered in
~/.claude/settings.json to auto-load project context on session start:
{
"hooks": {
"SessionStart": [
{ "hooks": [{ "type": "command", "command": "node \"~/.claude/skills/ck/hooks/session-start.mjs\"" }] }
]
}
}
The hook injects ~100 tokens per session (compact 5-line summary). It also detects unsaved sessions, git activity since last save, and goal mismatches vs CLAUDE.md.
~ as $HOME in Bash calls./CK:SAVE, /ck:save, /Ck:Save all work.context.json or CONTEXT.md directly — always use the scripts.projects.json is malformed, tell the user and offer to reset it to {}.tools
Query live GPU inventory, submit an authenticated Itô fixed-rate RFQ, inspect RFQ or procurement status, revoke device credentials, and run explicitly gated node qualification through the separately installed canonical CLI. Use when a user asks to find H100/H200 capacity, request a fixed compute rate, check Itô compute status, validate GPU nodes, revoke Itô access, or rent or purchase GPU compute and needs the supported boundary explained.
testing
Agent-driven scheduling and publishing of social media posts across 13 platforms via SocialClaw. Use when the user wants to publish to X, LinkedIn, Instagram, Facebook Pages, TikTok, Discord, Telegram, YouTube, Reddit, WordPress, or Pinterest — or when managing campaigns, uploading media, or monitoring post delivery status.
development
LLM APIの使用量のコスト最適化パターン — タスクの複雑さによるモデルルーティング、予算追跡、リトライロジック、プロンプトキャッシング。
tools
Use this skill when retrieving Jira tickets, analyzing requirements, updating ticket status, adding comments, or transitioning issues. Provides Jira API patterns via MCP or direct REST calls.