CtrlK
BlogDocsLog inGet started
Tessl Logo

tdg-personal/ck

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.

69

Quality

69%

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

SecuritybySnyk

Passed

No known issues

Overview
Quality
Evals
Security
Files

Quality

Discovery

32%

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description communicates the general domain (project memory management for Claude Code) and lists several capabilities, but lacks an explicit 'Use when...' clause which significantly hurts completeness. The trigger terms are somewhat technical rather than matching natural user language, and the description reads more like a feature list or marketing blurb than actionable selection guidance.

Suggestions

Add an explicit 'Use when...' clause with natural trigger phrases, e.g., 'Use when the user asks to remember project context, recall previous sessions, save notes across sessions, or manage persistent memory.'

Replace technical jargon like 'native memory' and 'deterministic Node.js scripts' with user-facing language, and add natural keyword variations like 'remember', 'recall', 'project notes', 'save context'.

Clarify the specific actions more concretely — e.g., 'stores and retrieves project-specific notes, tracks session history alongside git commits, and automatically restores context when starting a new session.'

DimensionReasoningScore

Specificity

Names the domain (per-project memory for Claude Code) and some actions (auto-loads project context, tracks sessions with git activity, writes to native memory, runs Node.js scripts), but the actions are somewhat abstract — 'tracks sessions' and 'writes to native memory' lack concrete detail about what specific operations a user would invoke.

2 / 3

Completeness

Describes what the skill does (auto-loads context, tracks sessions, writes to memory) but has no explicit 'Use when...' clause or equivalent trigger guidance. Per the rubric, a missing 'Use when...' clause caps completeness at 2, and the 'when' is not even implied clearly enough to warrant a 2.

1 / 3

Trigger Term Quality

Includes some relevant terms like 'memory', 'project context', 'session', and 'git activity', but misses natural user phrases like 'remember', 'recall', 'save context', 'project notes', or 'persistent state'. The term 'native memory' is technical jargon that users wouldn't naturally say.

2 / 3

Distinctiveness Conflict Risk

The focus on 'persistent per-project memory' and 'session tracking with git activity' provides some distinctiveness, but 'memory' is a broad concept that could overlap with other memory/context management skills. The mention of Node.js scripts and model version consistency adds some uniqueness but doesn't strongly differentiate trigger scenarios.

2 / 3

Total

7

/

12

Passed

Implementation

92%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

This is a high-quality skill file that provides clear, actionable instructions for every command with exact bash invocations, JSON schemas, and well-defined interaction patterns. The workflow sequences include appropriate confirmation gates for destructive operations and clear multi-step processes. The only notable weakness is that all content is inline in a single file rather than using progressive disclosure to split detailed command references into a separate file, though the current length is manageable.

DimensionReasoningScore

Conciseness

The content is lean and efficient. Every section serves a purpose — data layout, command reference, hook config, and rules. There's no explanation of what Node.js is, how JSON works, or other concepts Claude already knows. The confirmation draft templates and JSON schemas are necessary specifics, not padding.

3 / 3

Actionability

Every command has exact bash invocations with proper path expansion, specific JSON schemas for piped input, and concrete interaction patterns (show draft → wait for confirmation → pipe to script). The `/ck:save` command specifies exact field constraints like 'one sentence, max 10 words'. All commands are copy-paste ready.

3 / 3

Workflow Clarity

Multi-step commands like `/ck:init` and `/ck:save` have clear sequences: run script → present draft → wait for approval → apply edits → pipe to save. The `/ck:forget` command includes an explicit confirmation gate before destructive deletion. The `/ck:migrate` command offers a dry-run step before actual migration. Error handling is addressed in the Rules section (exit code 1, malformed projects.json).

3 / 3

Progressive Disclosure

The content is well-structured with clear sections and headers, but it's a moderately long single file (~120 lines of content) with no references to external documentation. The data layout, all command details, hook configuration, and rules are all inline. The command details could potentially be split into a separate reference file, with SKILL.md serving as a concise overview.

2 / 3

Total

11

/

12

Passed

Validation

90%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

10

/

11

Passed

Reviewed

Table of Contents