Agent skill

Ck

by affaan-m in affaan-m/ECC

Claude Code 的每个项目持久化记忆。在会话启动时自动加载项目上下文,通过 git 活动追踪会话,并写入原生记忆。命令运行确定性的 Node.js 脚本——行为在不同模型版本间保持一致。

MITAuto-check passedDevelopment

Install Ck

skills CLI
$ npx skills add affaan-m/ECC --skill ck -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install affaan-m/ECC ck --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/affaan-m/ECC.git skills-src && mkdir -p .claude/skills && cp -r skills-src/docs/zh-CN/skills/ck .claude/skills/ck && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
ck
GitHub stars
276k
Token cost
~827 tokens
SKILL.md length
142 words
Files
1
Skills in repo
683
Repo updated
First seen
Licence
MIT

At a glance

Claude Code 的每个项目持久化记忆。在会话启动时自动加载项目上下文,通过 git 活动追踪会话,并写入原生记忆。命令运行确定性的 Node.js 脚本——行为在不同模型版本间保持一致。

  • Development work in your project
  • SKILL.md covers 数据布局, 命令, 会话启动钩子 and 规则
  • Calls node

What it does

Ck is an agent skill from affaan-m/ECC. Claude Code 的每个项目持久化记忆。在会话启动时自动加载项目上下文,通过 git 活动追踪会话,并写入原生记忆。命令运行确定性的 Node.js 脚本——行为在不同模型版本间保持一致。

Its SKILL.md is about 830 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development. It works with Git and Node.js. The repository describes itself as: The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond. The licence is MIT.

When your agent uses it

  • Development work in your project

Example prompts

  • “/ck”

Requirements

  • Node.js

What it can do on your machine

Read from SKILL.md and the folder at commit 4eb71d9. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • node

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Ck loads about 827 tokens when it runs. Until then it costs about 25 tokens; SKILL.md has 142 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~25
When it runs · the whole SKILL.md, loaded when a task matches
~827

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from affaan-m/ECC at commit 4eb71d9, republished under its MIT licence (© affaan-m). 142 words, ~827 tokens.

Download SKILL.mdSave it as .claude/skills/ck/SKILL.md (or your agent's skills folder).
name
ck
description
Claude Code 的每个项目持久化记忆。在会话启动时自动加载项目上下文,通过 git 活动追踪会话,并写入原生记忆。命令运行确定性的 Node.js 脚本——行为在不同模型版本间保持一致。
origin
community
version
2.0.0
author
sreedhargs89
repo
https://github.com/sreedhargs89/context-keeper

ck — 上下文管家

你是上下文管家助手。当用户调用任何 /ck:* 命令时, 运行相应的 Node.js 脚本,并将其标准输出原样呈现给用户。 脚本位于:~/.claude/skills/ck/commands/(使用 $HOME 展开 ~)。


数据布局

~/.claude/ck/
├── projects.json              ← 路径 → {名称, 上下文目录, 最后更新时间}
└── contexts/<名称>/
    ├── context.json           ← 真实来源(结构化 JSON,v2 版本)
    └── CONTEXT.md             ← 自动生成的视图 — 请勿手动编辑

命令

/ck:init — 注册项目
bash
node "$HOME/.claude/skills/ck/commands/init.mjs"

脚本输出包含自动检测信息的 JSON。将其作为确认草稿呈现:

以下是我找到的内容——请确认或修改:
项目:     <name>
描述:     <description>
技术栈:   <stack>
目标:     <goal>
禁止项:   <constraints 或 "None">
仓库:     <repo 或 "none">

等待用户批准。应用任何编辑。然后将确认后的 JSON 通过管道传递给 save.mjs --init:

bash
echo '<confirmed-json>' | node "$HOME/.claude/skills/ck/commands/save.mjs" --init

确认后的 JSON 模式:{"name":"...","path":"...","description":"...","stack":["..."],"goal":"...","constraints":["..."],"repo":"..." }


/ck:save — 保存会话状态

这是唯一需要 LLM 分析的命令。 分析当前对话:

  • summary:一句话,最多 10 个词,描述已完成的内容
  • leftOff:当前正在积极处理的内容(具体文件/功能/错误)
  • nextSteps:有序的具体后续步骤数组
  • decisions:本次会话所做决策的 {what, why} 数组
  • blockers:当前阻塞项数组(若无则为空数组)
  • goal:仅当本次会话中目标发生更改时才包含更新后的目标字符串,否则省略

向用户显示摘要草稿:"Session: '<summary>' — save this? (yes / edit)" 等待确认。然后通过管道传递给 save.mjs:

bash
echo '<json>' | node "$HOME/.claude/skills/ck/commands/save.mjs"

JSON 模式(精确):{"summary":"...","leftOff":"...","nextSteps":["..."],"decisions":[{"what":"...","why":"..."}],"blockers":["..."]} 逐字显示脚本的标准输出确认信息。


/ck:resume [name|number] — 完整简报
bash
node "$HOME/.claude/skills/ck/commands/resume.mjs" [arg]

逐字显示输出。然后询问:"从这里继续?还是有什么变化?" 如果用户报告有变化 → 立即运行 /ck:save。


/ck:info [name|number] — 快速快照
bash
node "$HOME/.claude/skills/ck/commands/info.mjs" [arg]

逐字显示输出。无需后续提问。


/ck:list — 项目组合视图
bash
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)" 如果是:

bash
node "$HOME/.claude/skills/ck/commands/forget.mjs" [name]

逐字显示确认信息。


/ck:migrate — 将 v1 数据转换为 v2
bash
node "$HOME/.claude/skills/ck/commands/migrate.mjs"

首先进行试运行:

bash
node "$HOME/.claude/skills/ck/commands/migrate.mjs" --dry-run

逐字显示输出。将所有 v1 的 CONTEXT.md + meta.json 文件迁移为 v2 的 context.json。 原始文件备份为 meta.json.v1-backup — 不会删除任何内容。


会话启动钩子

位于 ~/.claude/skills/ck/hooks/session-start.mjs 的钩子必须在 ~/.claude/settings.json 中注册,以便在会话启动时自动加载项目上下文:

json
{
  "hooks": {
    "SessionStart": [
      { "hooks": [{ "type": "command", "command": "node \"~/.claude/skills/ck/hooks/session-start.mjs\"" }] }
    ]
  }
}

该钩子每次会话注入约 100 个 token(紧凑的 5 行摘要)。它还会检测 未保存的会话、自上次保存以来的 git 活动,以及与 CLAUDE.md 的目标不匹配。


规则

  • 在 Bash 调用中始终将 ~ 展开为 $HOME。
  • 命令不区分大小写:/CK:SAVE、/ck:save、/Ck:Save 均有效。
  • 如果脚本以退出码 1 退出,则将其标准输出显示为错误消息。
  • 切勿直接编辑 context.json 或 CONTEXT.md — 始终使用脚本。
  • 如果 projects.json 格式错误,请告知用户并提供重置为 {} 的选项。

© affaan-m, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in docs/zh-CN/skills/ck of affaan-m/ECC.

Open the folder on GitHubat commit 4eb71d9

Compare with similar skills

Ck next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Ck compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Ck this skillaffaan-m/ECC276k—~827Automated safety check: PassMIT
PR Reviewcdklabs/cdk-nextjs111—~2.4kAutomated safety check: PassApache-2.0
Git Commit Convention7-e1even/learn-agent285—~206Automated safety check: PassMIT
Maafwkqcoxn/MaaPipelineEditor408—~1.1kAutomated safety check: PassMIT
Install Rhomikeyobrien/rho373—~1.6kAutomated safety check: NotesMIT
Nylas Nodejs Releasenylas/nylas-nodejs180—~1.6kAutomated safety check: WarnMIT

Similar skills

  • PR Review

    cdklabs/cdk-nextjs

    Review the current PR branch and fix the findings in rounds until reviews come back clean.

    111 GitHub stars~2.4k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Git Commit Convention

    7-e1even/learn-agent

    写 git 提交信息、整理提交历史时使用——Conventional Commits 的格式、类型选择和拆分原则. An agent skill from 7-e1even/learn-agent.

    285 GitHub stars~206 tokensUpdated 1 mo ago
    DevelopmentAuto-check passed
  • Maafw

    kqcoxn/MaaPipelineEditor

    MaaFramework 开发与集成指南。当任务涉及 MaaFramework 项目结构、Pipeline 协议、ProjectInterface V2 协议、自定义识别/动作(Custom/Agent)、Python/NodeJS/CSharp 等语言 Binding 集成、控制器配置、回调协议或运行时行为时使用。

    408 GitHub stars~1.1k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Install Rho

    mikeyobrien/rho

    Install and configure Rho from scratch (Doom-style init.toml + sync).

    373 GitHub stars~1.6k tokensUpdated 10 days ago
    DevelopmentAuto-check: notes
  • Nylas Nodejs Release

    nylas/nylas-nodejs

    Prepares nylas-nodejs SDK releases on a versioned release branch with CHANGELOG updates, version bump, git tag, and PR body.

    180 GitHub stars~1.6k tokensUpdated 8 days ago
    DevelopmentAuto-check: warnings
  • Check Tools

    oaustegard/claude-skills

    Validates development tool installations across Python, Node.js, Java, Go, Rust, C/C++, Git, and system utilities.

    150 GitHub stars~641 tokensUpdated yesterday
    DevelopmentAuto-check passed

More from affaan-m/ECC

All 683 skills in this repo
  • Skill Stocktake

    affaan-m/ECC

    Audits your installed Claude skills and commands for quality, with a quick mode for recently changed skills and a full mode that evaluates all of them through subagents.

    276k GitHub starsUsed in 5 repos~3.1k tokens
    Auto-check passed
  • Ingests, indexes, searches, edits and monitors video, audio and live streams through the VideoDB Python SDK, returning stream links, clips and timestamps.

    276k GitHub starsUsed in 3 repos~3.5k tokens
    Auto-check: notes
  • Docs Governance

    affaan-m/ECC

    Route broad documentation-governance requests to existing ECC skills and run an opt-in, read-only audit of mapped documentation roles, links, ADR indexes, and evidence references.

    276k GitHub stars~1.1k tokensUpdated yesterday
    Auto-check passed
  • Rules Distillation

    affaan-m/ECC

    Scans installed skills for principles that recur across them and proposes rule-file changes: append, revise, add a section, create a file or leave as covered.

    276k GitHub starsUsed in 2 repos~2.3k tokens
    Auto-check passed
  • Builds DRAFT counterparty agreements from one markdown template and a small JSON spec per party, with clauses picked by the party's role.

    276k GitHub stars~2.9k tokensUpdated yesterday
    Auto-check passed
  • Measures whether agents actually follow a skill, rule or agent definition by generating scenarios at three strictness levels and scoring tool-call traces.

    276k GitHub starsUsed in 1 repo~623 tokens
    Auto-check passed

Works with

Categories

Questions about Ck

What does Ck do?

Claude Code 的每个项目持久化记忆。在会话启动时自动加载项目上下文,通过 git 活动追踪会话,并写入原生记忆。命令运行确定性的 Node.js 脚本——行为在不同模型版本间保持一致。. Ck is an agent skill from affaan-m/ECC.

When should I use Ck?

Ck fits situations like: development work in your project.

How do I install Ck in Claude Code?

Run `npx skills add affaan-m/ECC --skill ck -a claude-code`. Or copy the skill folder (docs/zh-CN/skills/ck in affaan-m/ECC) into .claude/skills/ck in your project. Claude Code loads it when a task matches its description.

How do I install Ck in Codex?

Run `npx skills add affaan-m/ECC --skill ck -a codex`. Or copy the skill folder (docs/zh-CN/skills/ck in affaan-m/ECC) into .agents/skills/ck in your project. Codex loads it when a task matches its description.

Can I use Ck in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add affaan-m/ECC --skill ck -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ck, .gemini/skills/ck, .github/skills/ck and .opencode/skills/ck in your project.

What does Ck need to run?

Going by SKILL.md and its folder, Ck needs the command-line tools its instructions call (node). Our summary lists: Node.js.

Does Ck access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Ck safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Ck use?

Ck is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Ck use?

About 827 tokens (SKILL.md is roughly 3.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Ck?

Skills that share tags, products or a category with Ck: PR Review (cdklabs/cdk-nextjs, 111 stars), Git Commit Convention (7-e1even/learn-agent, 285 stars), Maafw (kqcoxn/MaaPipelineEditor, 408 stars) and Install Rho (mikeyobrien/rho, 373 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Ck?

affaan-m (a GitHub user) maintains it in affaan-m/ECC, which has 276,111 GitHub stars. The repository holds 683 skills in this directory. The repository was last updated on October 10, 2026.

Source: affaan-m/ECC on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.