memory-tag-lint

Validates candidate memory tags against seven assertions before writing them to the vocabulary cache.

2|Updated Jul 24, 2026
One-click install
npx skills add https://github.com/konstantinos-malavazos/claude-code-playbook --skill memory-tag-lint-konstantinos-malavazos
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: memory-tag-lint
Source: https://github.com/konstantinos-malavazos/claude-code-playbook/tree/main/templates/skills/memory-tag-lint
Command: npx skills add https://github.com/konstantinos-malavazos/claude-code-playbook --skill memory-tag-lint-konstantinos-malavazos

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Memory tagging schemas drift silently when no single gate enforces them: tags land on undeclared axes, drifted tag forms persist, and validation checks fail open without anyone noticing. This Skill defines one authoritative write gate so every memory unit is checked identically before it is written. ## Core Features & Use Cases - Seven-assertion write gate: Checks declared axes, mandatory skeleton tags, drifted-tag rename maps, tag-count caps, required body sections, case-exact source files against git ls-tree, and single-owner projects. - Positive control per batch: Feeds one known-bad tag per batch to prove the gate actually rejects, catching gates that silently fail open. - Cache-grounded evaluation: Reads the regenerated vocabulary cache at check time rather than session memory, and reports hand-edited caches instead of repairing them. - Use Case: Before an encoder agent writes a batch of codebase memory units, run this gate so any tag on an undeclared axis or any case-mismatched source path is blocked as an ERROR instead of corrupting the reverse index. ## Quick Start Load the memory-tag-lint skill and validate this candidate memory tag set against the current vocabulary cache before writing it.

Frequently Asked Questions about memory-tag-lint

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I validate memory tags before writing them?

Run the seven-assertion gate against the regenerated vocabulary cache: check declared axes, skeleton completeness, drifted-tag renames, tag-count caps, required body sections, case-exact source files, and single-owner projects. Any failure blocks the write.

What is a positive control in a validation gate?

A positive control feeds one known-bad tag per batch and confirms the gate rejects it. A gate that has never been seen rejecting anything is indistinguishable from a gate that is not wired up, since both report clean.

Why must source-file paths be case-exact against git ls-tree?

A path differing only in case resolves on a case-insensitive filesystem but fails on a case-sensitive build server. The memory naming that path is the reverse index the whole inventory is rebuilt from, so case drift corrupts downstream lookups.

Should a validator script replace manual assertion checks?

No. A validator script is additive: run it and require exit 0 in addition to the seven assertions, never instead of them. Also verify the keys the script dereferences against the cache it reads, since renamed keys cause silent fail-open behavior.

What happens when a tag sits on an undeclared axis?

It is an ERROR, not a warning, and the write is blocked. A tag on an undeclared axis quietly grows a vocabulary axis nobody approved, forcing every future query to account for it.