active/mem/SKILL.md
Automatically use for durable knowledge, configured project-context lookup, and schema-backed artifact layouts.
npx skillsauth add kevinslin/skills memInstall 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.
Use this skill as the single interface for persistent knowledge bases, read-only project context, and schema-backed file layouts. It owns base selection, root containment, schema inspection, model-inferred node selection, exact-node materialization, and durable read/write safety.
Invoke $mem whenever the user explicitly asks to save, retrieve, organize, or update durable knowledge, even when they do not name this skill. Treat requests to record, remember, capture, or document reusable guides, cookbooks, runbooks, decisions, research notes, findings, lessons, and references as $mem requests.
Also invoke $mem when inspecting, validating, or materializing a bundled file schema.
When project or workspace instructions require $mem for context lookup, invoke it even without durable-output intent. Context lookup is read-only: select the configured base, resolve its schemas, infer likely nodes from their descriptions, and search existing knowledge before inspecting source.
Treat configuration as optional. Before starting a managed operation, check for the nearest ancestor .mem.yaml and $HOME/.mem.yaml. If neither exists, stop the $mem workflow successfully and continue the underlying task without $mem. Do not ask the user to create configuration or report a blocker solely because configuration is absent.
Do not auto-write merely because information might be useful later. Require explicit durable-output intent or an applicable project instruction. Do not use $mem for transient answers or files whose repository-owned workflow and exact destination the user already specified.
.mem.yaml, select a base, constrain all paths to its root, and use its configured schemas.--unmanaged.Prefer managed knowledge mode for durable artifacts.
Run commands from the directory containing this SKILL.md, or resolve ./scripts/mem.py relative to this file.
# Inspect merged configuration.
python3 ./scripts/mem.py config show --pretty
# Explain base selection.
python3 ./scripts/mem.py route --query "{{request intent}}" --pretty
# Inspect schemas.
python3 ./scripts/mem.py schema list
python3 ./scripts/mem.py schema show global-core
python3 ./scripts/mem.py schema describe global-core
python3 ./scripts/mem.py schema validate global-core
# Materialize under a configured base.
python3 ./scripts/mem.py schema materialize global-core \
--base oai/clawcmd \
--root-relative . \
--var cook=change-claw-config \
--include cook/change-claw-config \
--skip-existing
# Materialize an explicit non-memory artifact.
python3 ./scripts/mem.py schema materialize integ-proof \
--out /tmp/proofs \
--unmanaged \
--var proof=example \
--include example/proof \
--skip-existing
Managed materialization derives --out, --path-style, and any custom schema path from the selected base. --root-relative must remain inside that base root. Explicit --out requires --unmanaged.
Merge configuration from:
.mem.yaml at or above $PWD$HOME/.mem.yamlLoad both when present. The nearest config wins when both define the same base name; unique home bases remain available.
Each base requires name, description, root, and schemas. It may also define path_style, skill, aliases, priority, and deterministic match signals for topics, artifact kinds, source globs, and working-directory globs.
Use python3 ./scripts/mem.py config show --pretty instead of hand-parsing configuration.
.mem.yaml and $HOME/.mem.yaml. If neither exists, exit this workflow successfully and continue the underlying task without $mem.mem.py route.ambiguous or no_match.For complete knowledge read/write/delete rules, read ./references/knowledge-workflow.md.
For schema fields, composition, authoring, and CLI behavior, read ./references/schema-workflow.md.
.., symlinks, or relative segments.## Manual Notes byte-for-byte unless the user explicitly asks to edit it.rg only when managed knowledge is absent or insufficient.--unmanaged only for an explicit repo-owned or temporary destination.For managed operations, report the selected base, base root, schema node, concrete path, and what changed or was found. Keep routine responses concise.
development
Create, rename, audit, or close a tracked Codex task whose turns and status are persisted in the local thread ledger. Only use when directly invoked.
testing
Manage Git preflight, branch and worktree creation, and completed-work cleanup. Use when explicitly invoked.
content-media
Create, update, or optimize skills and SKILL.md content.
testing
Finalize completed PR or local checkout work. Use when explicitly invoked