{"id":"cmuxiu7sy11b2ad0745u8s4bf","slug":"ck","publicId":"cef49c5d-8cf5-4783-b3b8-a00925a06c32","name":"ck","description":"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.","version":"2.0.0","author":"sreedhargs89","license":"MIT","compatibility":"","status":"completed","overallGrade":"F","scannerVersion":11,"fileCount":10,"hasSkillMd":true,"hasScripts":false,"hasReferences":false,"hasEvals":false,"hasAssets":false,"sourceType":"github","sourceUrl":"https://github.com/affaan-m/ecc/tree/main/skills/ck","createdAt":"2026-10-07T03:01:46.882Z","completedAt":"2026-10-07T03:01:46.880Z","visibility":"public","publishedAt":"2026-08-06T17:11:16.812Z","category":"","frameworks":[],"badgeStatus":"flagged","downloadCount":0,"verdictRationale":{"summary":"Skill failed: 2 hard fails in security or structure checks.","verdict":"fail","scanners":[{"source":"vettd","weight":1,"verdict":"fail"},{"source":"cisco","weight":0.8,"verdict":"fail"}],"consensus":"fail","warnTriggers":["References external URL — review for indirect prompt injection risk"],"policyVersion":"consensus-v1","hardFailTriggers":["Shell execution without sandboxing","Shell execution without sandboxing"]},"verdictPolicyVersion":"consensus-v1","skillId":"cmshrvv43045lad07aqftp7a0","findings":[{"id":"cmuxiu7sy11b7ad075zmll9ch","source":"cisco","category":"security","label":"Node.js child_process module usage for shell command execution","detail":"commands/shared.mjs:11 — Pattern detected: from 'child_process'","severity":"critical","ruleId":"COMMAND_INJECTION_JS_CHILD_PROCESS","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"ec44db64b4cc42ec124dcffefd7cc024","filepath":"commands/shared.mjs"},{"id":"cmuxiu7sy11b8ad07vt0zr01z","source":"cisco","category":"security","label":"Node.js child_process module usage for shell command execution","detail":"commands/shared.mjs:147 — Pattern detected: spawnSync(","severity":"critical","ruleId":"COMMAND_INJECTION_JS_CHILD_PROCESS","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"ec44db64b4cc42ec124dcffefd7cc024","filepath":"commands/shared.mjs"},{"id":"cmuxiu7sy11b9ad07jkm3xu6r","source":"cisco","category":"security","label":"Node.js child_process module usage for shell command execution","detail":"hooks/session-start.mjs:20 — Pattern detected: from 'child_process'","severity":"critical","ruleId":"COMMAND_INJECTION_JS_CHILD_PROCESS","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"c4d3ab86ce4912fa02e6db8d1a809a59","filepath":"hooks/session-start.mjs"},{"id":"cmuxiu7sy11baad077a8t1rfp","source":"cisco","category":"security","label":"Node.js child_process module usage for shell command execution","detail":"hooks/session-start.mjs:50 — Pattern detected: spawnSync(","severity":"critical","ruleId":"COMMAND_INJECTION_JS_CHILD_PROCESS","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"c4d3ab86ce4912fa02e6db8d1a809a59","filepath":"hooks/session-start.mjs"},{"id":"cmuxiu7sy11b3ad076vn7amar","source":"vettd","category":"security","label":"Shell execution without sandboxing","detail":"Detected in commands/shared.mjs:11 — `import { spawnSync } from 'child_process';`","severity":"critical","ruleId":"VTD-0018","owaspLlmCategory":null,"intent":"negligent","chainId":null,"fingerprint":"9d9e676af8a0ac2e4abad84481d70125","filepath":"commands/shared.mjs"},{"id":"cmuxiu7sy11b4ad07xybkzidg","source":"vettd","category":"security","label":"Shell execution without sandboxing","detail":"Detected in hooks/session-start.mjs:20 — `import { spawnSync } from 'child_process';`","severity":"critical","ruleId":"VTD-0018","owaspLlmCategory":null,"intent":"negligent","chainId":null,"fingerprint":"349837e98490a0794a5ab5c36b776c0c","filepath":"hooks/session-start.mjs"},{"id":"cmuxiu7sy11b5ad0739gnk4in","source":"vettd","category":"security","label":"References external URL — review for indirect prompt injection risk","detail":"External URL(s) detected in SKILL.md — referenced content can change after audit","severity":"medium","ruleId":"VTD-0088","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"42638a8b7e9fc5df27449992eaebc724","filepath":"SKILL.md"},{"id":"cmuxiu7sy11b6ad07sagliygr","source":"cisco","category":"security","label":"Skill does not specify a license","detail":"SKILL.md — Skill manifest does not include a 'license' field. Specifying a license helps users understand usage terms.","severity":"info","ruleId":"MANIFEST_MISSING_LICENSE","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"592f7ac7731768f0fd0bba83f30850f9","filepath":"SKILL.md"}],"scannerRuns":[{"source":"cisco","status":"success","verdict":null,"grade":"F","findingCount":5,"criticalCount":4,"highCount":4},{"source":"vettd","status":"success","verdict":null,"grade":"F","findingCount":3,"criticalCount":2,"highCount":2}],"user":{"name":"Justin Pacella","image":"https://avatars.githubusercontent.com/u/97124458?v=4"},"repository":{"owner":"affaan-m","name":"ecc"},"freshness":{"status":"verified_unchanged","reason":null,"retryable":false,"renamedTo":null,"lastCheckedAt":"2026-10-21T22:09:01.582Z","lastVerifiedAt":"2026-10-21T22:09:01.582Z","lastChangeDetectedAt":"2026-10-09T10:15:29.383Z","scannedHash":"6ed70e57813f3829027195af7717d43040d8de15","latestUpstreamHash":"6ed70e57813f3829027195af7717d43040d8de15","nextCheckDueAt":"2026-10-22T22:53:23.264Z"},"signalCategories":[{"category":"safety","label":"Safety","form":"graded","verdict":null,"rows":[]},{"category":"reliability","label":"Reliability & Quality","form":"graded","verdict":null,"rows":[]},{"category":"performance","label":"Performance","form":"measured","verdict":{"form":"measured","magnitudes":[{"ruleId":"performance/static-context-tokens","label":"Static context tokens","value":1191,"unit":null,"method":"tiktoken/cl100k_base/skill-md-body"}]},"rows":[{"origin":"signal","id":"cmuxiu9kq11fpad07h5yj5h26","subjectType":"skill_audit","subjectId":"cmuxiu7sy11b2ad0745u8s4bf","relatedType":"","relatedId":"","dataCategory":"performance","sourceClass":"scan","source":"vettd","ruleId":"performance/progressive-disclosure","severity":null,"label":"Progressive disclosure","detail":null,"valueNum":null,"valueText":"absent","unit":null,"method":null,"derivation":"read","confidence":null,"sampleSize":null,"synthetic":false,"firstParty":true,"observedAt":"2026-10-07T03:01:45.000Z","payload":null},{"origin":"signal","id":"cmuxiu81w11c4ad07x16twbre","subjectType":"skill_audit","subjectId":"cmuxiu7sy11b2ad0745u8s4bf","relatedType":"","relatedId":"","dataCategory":"performance","sourceClass":"scan","source":"vettd","ruleId":"performance/static-context-tokens","severity":null,"label":"Static context tokens","detail":null,"valueNum":1191,"valueText":null,"unit":null,"method":"tiktoken/cl100k_base/skill-md-body","derivation":null,"confidence":null,"sampleSize":null,"synthetic":false,"firstParty":true,"observedAt":"2026-10-07T03:01:45.000Z","payload":null}]},{"category":"cost","label":"Cost","form":"measured","verdict":null,"rows":[]},{"category":"compatibility","label":"Compatibility","form":"unjudged","verdict":{"form":"unjudged"},"rows":[{"origin":"signal","id":"cmuxiu83c11c9ad07dw8d0jnn","subjectType":"skill_audit","subjectId":"cmuxiu7sy11b2ad0745u8s4bf","relatedType":"","relatedId":"","dataCategory":"compatibility","sourceClass":"scan","source":"vettd","ruleId":"compatibility/declared-environment-assumptions","severity":null,"label":"Declared environment assumptions","detail":null,"valueNum":null,"valueText":"","unit":null,"method":null,"derivation":"read","confidence":null,"sampleSize":null,"synthetic":false,"firstParty":true,"observedAt":"2026-10-07T03:01:45.000Z","payload":null},{"origin":"signal","id":"cmuxiu8mx11cxad07kx5timop","subjectType":"skill_audit","subjectId":"cmuxiu7sy11b2ad0745u8s4bf","relatedType":"","relatedId":"","dataCategory":"compatibility","sourceClass":"scan","source":"vettd","ruleId":"compatibility/declared-name","severity":null,"label":"Declared skill name","detail":null,"valueNum":null,"valueText":"ck","unit":null,"method":null,"derivation":"read","confidence":null,"sampleSize":null,"synthetic":false,"firstParty":true,"observedAt":"2026-10-07T03:01:45.000Z","payload":null}]},{"category":"sentiment","label":"Popularity","form":"unjudged","verdict":null,"rows":[]},{"category":"characteristics","label":"Characteristics","form":"unjudged","verdict":null,"rows":[]}],"signalCount":29,"publisherSupplied":["name","description","author","version","license"]}