Skill

ck

Persistent per-project memory for Claude Code (Context Keeper) driven by deterministic Node.js /ck commands: init, save, resume, info, list, forget, and v1-to-v2 migrate, plus a SessionStart hook that injects a compact project brief. Use when context must survive across sessions, saving session state with next steps and decisions, resuming where a previous session left off, or picking up a project without re-explaining it.

○ declared by the publisher, as-is
Safety
FF: 3 or more highs, or any critical7 severity-bearing · 1 informational
Reliability & Quality
n/anot yet graded
Cost
n/anot assessed
Popularity
41401Forks
Performance tested for◌ not assessed
no controlled task evaluation on this release
Repo★ 277.6k ○41.4k forks1.4k watchers159 open issueslast commit 0d old when scanned
· context signals ↓
Vettd Note

No Vettd note yet for this asset.

Best for

Not for

Re-assessed 2w ago · 6 of 7 categories assessed
Record lookup
$ vettd directory view cef49c5d-8cf5-4783-b3b8-a00925a06c32

◌ Vettd does not install assets; this record describes a copy you obtain yourself.

Custody chainSource ↗○ linked, not verified by Vettd
sreedhargs89 ○affaan-m/ecc ○v2.0.0 = ef648e0 ◐ sha256:6ed7…de15 ◐ signature △ not assessedMIT ○record cef49c5d-8cf5-4783-b3b8-a00925a06c32 · live
◌ public recordYou are signed out, so you see the record and nothing else. sign in
Evidence · 6 of 7 categories · 29 signals · 6 soft spots
Where the record is weakest: 6 soft spots

Ranked worst first.

1Shell execution without sandboxingCriticalSafety · critical · VTD-0018

Detected in commands/shared.mjs:11 — `import { spawnSync } from 'child_process';`

2Shell execution without sandboxingCriticalSafety · critical · VTD-0018

Detected in hooks/session-start.mjs:20 — `import { spawnSync } from 'child_process';`

3Node.js child_process module usage for shell command executionCriticalSafety · critical · COMMAND_INJECTION_JS_CHILD_PROCESS

commands/shared.mjs:11 — Pattern detected: from 'child_process'

Ranked 4–6: Node.js child_process module usage for shell command execution, Node.js child_process module usage for shell command execution, Node.js child_process module usage for shell command execution
The soft spots and their evidence are identical when you are signed in.sign in
Safety● gradedFmost recent 2w ago10 signals · 6 soft spotsrecord cef49c5d-8cf5-4783-b3b8-a00925a06c32
how it was established10 signals · 2 sources · scan
vettd directory view cef49c5d-8cf5-4783-b3b8-a00925a06c32 --json
show
Shell execution without sandboxingflaggedsoft spot 1Detected in commands/shared.mjs:11 — `import { spawnSync } from 'child_process';`vettd · scan · 2wCritical
Shell execution without sandboxingflaggedsoft spot 2Detected in hooks/session-start.mjs:20 — `import { spawnSync } from 'child_process';`vettd · scan · 2wCritical
Node.js child_process module usage for shell command executionflaggedsoft spot 3commands/shared.mjs:11 — Pattern detected: from 'child_process'cisco · scan · 2wCritical
Node.js child_process module usage for shell command executionflaggedsoft spot 4commands/shared.mjs:147 — Pattern detected: spawnSync(cisco · scan · 2wCritical
Node.js child_process module usage for shell command executionflaggedsoft spot 5hooks/session-start.mjs:20 — Pattern detected: from 'child_process'cisco · scan · 2wCritical
Node.js child_process module usage for shell command executionflaggedsoft spot 6hooks/session-start.mjs:50 — Pattern detected: spawnSync(cisco · scan · 2wCritical
References external URL — review for indirect prompt injection riskflaggedExternal URL(s) detected in SKILL.md — referenced content can change after auditvettd · scan · 2wMedium
Skill does not specify a licenseflaggedSKILL.md — Skill manifest does not include a 'license' field. Specifying a license helps users understand usage terms.cisco · scan · 2wInfo
behavioral scan passednothing foundNo prompt-injection or jailbreak signals were detected.vettd · scan · 2wnothing found
Name validation passednothing foundThe declared skill name follows the supported naming rules.vettd · scan · 2wnothing found
Reliability & Quality● gradednot yet gradedmost recent 2w ago6 signalsrecord cef49c5d-8cf5-4783-b3b8-a00925a06c32
how it was established6 signals · vettd · scan
vettd directory view cef49c5d-8cf5-4783-b3b8-a00925a06c32 --json
show
Checklist patternreadvettd · scan · 2wabsent
Description usage contextreadvettd · scan · 2wpresent
Examplesreadvettd · scan · 2wpresent
Gotchas sectionreadvettd · scan · 2wabsent
Step-by-step workflowreadvettd · scan · 2wabsent
Validation loopreadvettd · scan · 2wabsent
Performance● measured1 measuredmost recent 2w ago2 signalsrecord cef49c5d-8cf5-4783-b3b8-a00925a06c32
how it was establishedtiktoken/cl100k_base/skill-md-body · 2 signals · vettd · scan
vettd directory view cef49c5d-8cf5-4783-b3b8-a00925a06c32 --json
show
Progressive disclosurereadvettd · scan · 2wabsent
Static context tokensmeasuredvettd · scan · 2w1191
Cost◌ not assessednot assessed0 signalsrecord cef49c5d-8cf5-4783-b3b8-a00925a06c32
how it was establishednot assessed; no producer has emitted into this category
vettd directory view cef49c5d-8cf5-4783-b3b8-a00925a06c32 --json
Not assessed; no producer has emitted into cost for this asset. That is different from a check that ran and found nothing, which the record would carry as a row of its own.
Compatibility◌ unjudgednot judgedmost recent 2w ago2 signalsrecord cef49c5d-8cf5-4783-b3b8-a00925a06c32
how it was established2 signals · vettd · scan
vettd directory view cef49c5d-8cf5-4783-b3b8-a00925a06c32 --json
show
Declared environment assumptionsreadvettd · scan · 2w
Declared skill namereadvettd · scan · 2wck
Popularity◇ context onlynot judgedmost recent 1w ago5 signalsrecord cef49c5d-8cf5-4783-b3b8-a00925a06c32
how it was establishedgithub-repo-object · 5 signals · github-api · research
vettd directory view cef49c5d-8cf5-4783-b3b8-a00925a06c32 --json
show
Forksmeasuredgithub-api · research · 1w41401
Days since last commitmeasuredgithub-api · research · 1w0 days
Open issuesmeasuredgithub-api · research · 1w159
Starsmeasuredgithub-api · research · 1w277633
Watchersmeasuredgithub-api · research · 1w1374
Characteristics◇ context onlynot judgedmost recent 1w ago4 signalsrecord cef49c5d-8cf5-4783-b3b8-a00925a06c32
how it was establishedbundle-extension-share · 4 signals · 2 sources · research/scan
vettd directory view cef49c5d-8cf5-4783-b3b8-a00925a06c32 --json
show
Declared licensereadvettd · scan · 2w
Primary bundle languageobservedvettd · scan · 2w · conf highJavaScript
Repository linkreadvettd · scan · 2wabsent
Archivedreadgithub-api · research · 1wfalse
Coverage6 of 7 categories assessed · shown
Safety
✓ assessed
behavioral scan passed · Name validation passed
Reliability & Quality
✓ assessed
6 signals recorded
Performance
✓ assessed
2 signals recorded
Cost
△ not assessed
no producer has emitted for this category
Compatibility
✓ assessed
2 signals recorded
Popularity
✓ assessed
5 signals recorded
Characteristics
✓ assessed
4 signals recorded
Freshness & re-evaluation
assessed2w ago · Cisco AI Defense · Vettd core● current
source stateThe source matches what was scanned. No changes detected.Up to date
re-check policyre-checked against the upstream source on the scheduler's cadencenext check in 17h
re-run whena new release ships, the upstream source changes, or the scanner ruleset is revisedauto-scheduled
Limitations & open conflicts
limitationCost is not assessed: behaviour there is unmeasured, not clean△ gap
limitationReliability & Quality carries rows but no severity-bearing one: nothing has been graded there△ gap
conflictno two sources report the same quantity on this record
Verify: does this record describe your copy?
What record cef49c5d-8cf5-4783-b3b8-a00925a06c32 covers
scannerv11● current
validityassessed 2w ago · Up to date
$ vettd scan folder <path>
this record was taken at digest sha256:6ed70e57813f… compare it against the digest your own scan prints
Reproduce: re-run the evidence yourself
$ vettd scan folder /path/to/your/copy
runs the same scanners against your own copy; the published record is never overwritten
How this record comparesagainst other published records · full comparison →
Signal kinds
▲ finding: something to act on, carries a severity● measurement: a reproducible quantityƒ estimate: inferred from a sample▪ fact: read directly off the artifact◆ classification: assigned from a taxonomy◌ nothing found: a producer looked and emitted no object◇ context only: described, never graded
Custody marks
◐ computed by vettd○ declared by the publisher, as-is△ not assessed: nothing looked
$ vettd directory view cef49c5d-8cf5-4783-b3b8-a00925a06c32 --jsonas JSON ↗