agentsclimarketplace

Hyper memory

Skill zeikar/hyperclaude/skills/hyper-memory

Claude Code plugin: Claude builds, Codex critiques — a gated research → plan → review → ship pipeline, with autonomous multi-agent revise loops that self-converge.

Install
npx -y skills add zeikar/hyperclaude --skill hyper-memory

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Use on-demand to extract evidence-anchored repo-local knowledge candidates from accumulated .hyperclaude/ artifacts (plans/done, plan-reviews, research) and curate them. Also when the user invokes /hyperclaude:hyper-memory. Orchestration-only — no Codex spawn.

SKILL.md

5.3 KB, as published. Nobody here has run it

hyper-memory

Repo-local knowledge extraction. Scans the accumulated .hyperclaude/ corpus and writes one evidence-anchored candidate markdown file per deterministic copy-based span under .hyperclaude/memory/candidates/. v1 is extraction + curation only — auto-injection into future sessions is the v2 north star and is explicitly out of scope here.

When to use

  • User typed /hyperclaude:hyper-memory (with or without an argument).
  • A batch of work has accumulated in .hyperclaude/ (several archived plans, plan-reviews, research artifacts) and it's worth mining for durable repo-local knowledge.

When to skip

  • Only a single small artifact exists since the last extraction — not enough accumulated corpus to be worth mining.
  • You want the knowledge injected automatically into a session — that's v2, not implemented.

How it works

  1. Run node "${CLAUDE_PLUGIN_ROOT}/scripts/memory/extract.mjs" via Bash and parse the one-line JSON summary it prints to stdout: { ok, scanned, candidates, written, skipped, errored, candidatesDir }.

    The script's CLI accepts exactly two flags — no others exist:

    • --dry-run — compute candidates and keys but write nothing (written is always 0).
    • --root <path> — corpus root to scan (default .hyperclaude).
  2. It fully enumerates the v1 source allowlist — NOT newest-only:

    • plans/done/ — every archived plan.
    • plan-reviews/ — every plan-review artifact whose verdict is Ship as-is.
    • research/ — every research artifact.

    code-reviews/ and docs-reviews/ are v1 non-goals and are never scanned.

  3. It writes one evidence-anchored markdown file per candidate under .hyperclaude/memory/candidates/, keyed by a compound hash so re-runs are idempotent: a candidate is skipped if its key already exists in EITHER .hyperclaude/memory/candidates/ OR .hyperclaude/memory/promoted/ — an already-promoted candidate is never resurrected.

Candidate schema

Each candidate file's YAML frontmatter carries exactly these keys, in this order:

plugin-version, type, source-artifact, anchors, mode, slug, git-head, generated, staleness

followed by a ## Claim (a deterministically templated one-liner) and a ## Evidence section holding strictly the verbatim copied span — never a generated or derived line.

CORE POLICY: artifact sentences are never stored as truth on their own — every candidate carries an inline evidence anchor quoted verbatim from source-artifact:, so a claim can always be traced back to the exact text it came from.

Two fields are easy to conflate and must be read as distinct:

  • source-artifact: — the .hyperclaude/** artifact path the candidate was mined from (evidence provenance; a gitignored artifact, not a canonical repo source).
  • anchors: — a YAML list of live canonical repo source/doc paths the claim is about. The extractor ALWAYS emits anchors: [] — none of the three v1 sources deterministically names a real repo file, and a .hyperclaude/** path is NEVER a valid anchors: entry.

Curation

Two locations only — no multi-state machine:

  • .hyperclaude/memory/candidates/ — proposed, unreviewed.
  • .hyperclaude/memory/promoted/ — human-accepted.

Promote: plain mv .hyperclaude/memory/candidates/<file> .hyperclaude/memory/promoted/<file> — NOT git mv (.hyperclaude/ is gitignored, so git tracks neither side).

Promotion gate: every candidate ships with anchors: []. Before promoting, the curator MUST add at least one real repo source/doc path (a non-.hyperclaude/ file that exists on disk) to the candidate's anchors: list. source-artifact: provenance alone never satisfies this gate — it names a gitignored artifact, not a canonical anchor.

Reject: rm the candidate file.

Idempotency: because promotion is a plain move out of candidates/, and the extractor checks BOTH candidates/ and promoted/ for an existing key, a promoted candidate is never re-created by a later extraction run.

Invocation argument

Invocation argument: $ARGUMENTS

Accepted argument grammar — nothing outside this table:

Token(s)Meaning
--dry-runcompute candidates/keys, write nothing
--root <path>corpus root to scan (default .hyperclaude)

The script's CLI parser rejects anything else (unknown flags, --root with a missing/flag-like value) with {"ok":false,"error":...} and a non-zero exit — see scripts/memory/extract.mjs.

Do NOT interpolate the raw $ARGUMENTS string into the Bash command. Parse it into individual tokens, keep only tokens matching the grammar above, and pass each as its own shell-quoted argument (e.g. quote the --root path value) when invoking node "${CLAUDE_PLUGIN_ROOT}/scripts/memory/extract.mjs". Any token outside the grammar means: do not pass it through — the script would reject it anyway.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.