cellm/skills/knowledge-funnel/SKILL.md
Passive CELLM knowledge classifier — routes mid-task discoveries to EPHEMERAL, REUSABLE, or ARCHITECTURAL before moving on. Activates ONLY when a novel insight, gotcha, decision, or non-obvious behavior surfaced this turn. Inactive on routine edits, pure execution of a known plan, tool output processing, status reporting, and any turn where no new knowledge was generated.
npx skillsauth add murillodutt/cellm cellm/skills/knowledge-funnelInstall 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.
Classify discoveries and route only reusable/systemic signals to the SCE learning loop.
knowledge_add — not just expertise and observations.EPHEMERAL, REUSABLE, ARCHITECTURAL.knowledge_add for reusable atomic facts that benefit future sessions.context_record_outcome for reusable/architectural outcomes.context_promote).Call knowledge_add when you encounter any of these during work:
| Trigger | Example |
|---------|---------|
| Non-obvious behavior discovered | "libsql requires explicit readYourWrites: true for WAL mode consistency" |
| Gotcha resolved after debugging | "bun:sqlite readonly: false is not valid — omit the option instead" |
| Pattern confirmed across sessions | "FTS corruption on UPDATE requires try/catch with autoRepairFts" |
| Cross-session insight | "spec_create_node rejects dependsOnPhase: null — omit the field" |
| API contract nuance | "knowledge_add MCP deduplicates by title+scope+project — returns existing ID" |
| Architecture decision recorded | "hookGenerateKnowledgeAtoms is a no-op — atoms come from expertise + dot23 + MCP" |
knowledge_add({
title: "bun:sqlite Database constructor rejects readonly:false — omit option for read-write",
scope: "oracle",
project: "<project-name>",
source: "session",
detail: "Bun v1.3.10 throws SQLITE_MISUSE when readonly:false is passed. Use new Database(path) without options for read-write.",
confidence: 0.9
})
knowledge_add({
title: "spec_create_node approval gate rejects phases under pending checks",
scope: "oracle",
project: "<project-name>",
source: "session",
detail: "CHECK_NOT_APPROVED error when adding phase/task under a check in pending/cancelled/deferred/failed state. Transition to active first.",
confidence: 0.95
})
EPHEMERAL: continue work, no persistent write.REUSABLE: knowledge_add (atomic fact) + context_record_outcome + record_expertise.ARCHITECTURAL: knowledge_add + record_observation + record_expertise + context_record_outcome.context_promote for evidence-based progression.knowledge_add deduplicates automatically by title+scope+projectcontext_record_outcomeknowledge_add for REUSABLE discoveries — expertise alone is not searchable cross-session; atoms aredata-ai
Prose override — temporarily disable quantization and respond in readable prose. Use when relational density matters, for safety-critical explanations, onboarding handoffs, or when token economy is not the priority.
development
Govern explicit weekly Super PRs or maintainer-requested PR merges. Evaluates a 10-criterion readiness checklist and performs governed merge only when a user-requested PR is READY. Never creates or keeps permanent PRs. Use when: 'pr-check', 'pr-merge', 'merge this PR safely', 'is PR ready', 'guard merge', or /sk-git delegates pr-merge.
data-ai
Operational surface for the compress-llm Layer-1 token I/O compressor. Enable, disable, switch mode, and inspect status without editing config files. Use when tuning compression pressure for the current session or project.
tools
Generate structured upstream feedback for the CELLM engineering team. Produces evidence-first Markdown at docs/evidence/<date>-cellm-feedback-*.md for bugs, anti-patterns, deprecation gaps, and harness surprises, with optional atom registration via knowledge_ops. Use when: 'feedback for CELLM', 'send to CELLM team', 'register this as atom', 'document this anti-pattern', 'report this bug upstream'. Trigger proactively on MCP schema/runtime mismatches, mechanical edit loops (>=3 sequential edits), short deprecation windows (<6 weeks), or reusable harness surprises. Do NOT trigger for routine feature work or project-local bugs.