Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
git clone --depth 1 https://github.com/choiyounggi/groundworkWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/plugins/choiyounggi/groundwork/memory-loop)<a href="https://agentmods.dev/plugins/choiyounggi/groundwork/memory-loop"><img src="https://agentmods.dev/badge/plugins/choiyounggi/groundwork/memory-loop/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/plugins/choiyounggi/groundwork/memory-loop"><img src="https://agentmods.dev/badge/plugins/choiyounggi/groundwork/memory-loop.svg" alt="Reviewed on agentmods" width="80" height="20"></a>Grade A, and why
memory-loop scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
{
"name": "memory-loop",
"displayName": "memory-loop",
"description": "A memory lifecycle for Claude Code's native file-based memory: a save gate against hallucinated memories, tiered expiry (short-tier memories archived — never deleted — when they lapse), a propose-then-confirm consolidation pass (merge/dedupe long-tier memory), a correction-signal hook that logs likely corrections for the consolidate pass, a gated, budgeted habit frame (capture passes damage/recurrence/generality gates; the always-loaded rule file is capped at the write, with case records and retired rules on demand), and an optional identity setup (names for the user and the assistant). Local-only, English, no org-specific content.",
"version": "2.3.1",
"author": {
"name": "choiyounggi",
"url": "https://github.com/choiyounggi"
},
"homepage": "https://github.com/choiyounggi/groundwork",
"license": "MIT",
"repository": "https://github.com/choiyounggi/groundwork",
"icon": "./assets/icon.png",
"keywords": ["memory", "lifecycle", "habits", "consolidation", "expiry", "corrections", "claude-md"]
}
What it installs
The manifest is a name and a version. 5 skills travel with it, and installing the plugin installs all of them — 302 tokens a session between them. Each is measured on its own page, and each can be installed alone.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago Changed · +5 lines 881e4bc22e1d
- 16d ago Changed 78071cac6c95
- 17d ago Changed 7be9b2f5102f
- 24d ago Changed 2fd3fe25b7df
- 28d ago Changed 998fda477925
- 1mo ago First seen · 11 lines scan A e0788cc0a79c
memory-loop is a plugin published in the GitHub repository choiyounggi/groundwork (3 stars, last pushed yesterday), licensed MIT. Its token cost is not measured: this kind of file is read by the harness, not the model. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other plugins, from other repositories
clean-context
Keeps a project's noise out of Claude's default context: audit-context measures where the budget is going, ignore-setup applies a managed .ignore, a Glob setting, and a short read-deny list for secrets, leaving every excluded path readable on purpose.
compact-nudge
Suggests /compact or /clear when the context grows past a threshold or the prompt cache has gone cold, since every request re-reads the whole context.
esp32-cpp
Evidence-first ESP32 firmware guidance for hardware, FreeRTOS, memory, peripherals, and field failures.
context-police
Measure, trim, and report the token cost of a runaway Claude Code skills/agents catalog (injected every turn + into every subagent) — verified per-project skillOverrides + global disable-model-invocation levers, an interactive HTML recap, and the durable root-cause fix (curate episodic lessons out of the always-on…
memory-hygiene
Audit and clean up Claude Code's persistent memory system — MEMORY.md, memory topic files, lessons, axioms, phase templates, ADRs, and the project docs/ taxonomy.
session-handoff
End-of-session handoff with bucket-aware dispatch across the canonical 7-bucket docs/ taxonomy (aligned with memory-hygiene v3.3), doc-freshness reverse-lint + skill-freshness audit, and future-to-do emission as GitHub issues. Captures knowledge, routes artifacts to…