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.
npx agentmods add skills/mubit-ai/claude-plugins/remembernpx skills add mubit-ai/claude-plugins --skill remembergit clone --depth 1 https://github.com/mubit-ai/claude-pluginsWrote 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/skills/mubit-ai/claude-plugins/remember)<a href="https://agentmods.dev/skills/mubit-ai/claude-plugins/remember"><img src="https://agentmods.dev/badge/skills/mubit-ai/claude-plugins/remember.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00046 | $0.00964 |
| Opus 5 | $0.00023 | $0.00482 |
| Sonnet 5 | $0.00009 | $0.00193 |
| Haiku 4.5 | $0.00005 | $0.00096 |
Grade A, and why
remember 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 3d 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
Routine work is captured automatically — do not use this for "I read a file" or "I ran the tests". The capture hooks already write tool activity, prompts, and turn outcomes into this run without being asked. Using the explicit verb for that fills the store with duplicates of what is already there and buries the entries that matter. Use it for knowledge that should outlive this session.
Reach for it when:
- the user states a standing preference ("always run the suite before you commit");
- you discover a constraint that is not visible in the code ("the operator's reconcile loop requires the CRD applied before the StatefulSet, or it wedges");
- an approach fails in a way worth never repeating, and you know why it failed.
Pick a template, which sets lesson_type and lesson_scope for you:
| Template | Use for | type / scope |
|---|---|---|
CODING_RULE |
lint rules, naming, style constraints | rule / global |
DEBUG_SUCCESS |
a debugging approach that worked | success / session |
DEBUG_FAILURE |
an approach that failed, and why | failure / session |
PREFERENCE |
how this user wants things done | preference / global |
ARCHITECTURE_INSIGHT |
system quirks, dependency behaviour | observation / global |
BUILD_CONFIG |
build/deploy settings that work | rule / global |
API_PATTERN |
SDK quirks, integration notes | observation / session |
TEST_STRATEGY |
test approaches that proved effective | success / global |
The pair is the whole point of choosing a template. lesson_type decides how retrieval
weighs the entry; lesson_scope decides who ever sees it again — a global entry follows
the user into every project, a session entry stays with related sessions, and a run
entry dies with this run. Picking the wrong template is not a cosmetic error.
Write the lesson as an imperative with its condition attached — "When X, do Y, because Z" —
not as a narrative of what just happened. "Fixed the flaky test" is worth nothing to a future
session; "When a Tokio test hangs on block_on, run it with --test-threads=1 first,
because the runtime is already inside a runtime" is worth something. One lesson per call,
and keep it self-contained: it will be read months later with none of this conversation
around it.
mubit_learned returns when the write is queued, not stored. Do not immediately search
for what you just saved; it will not be there yet. Ingest runs asynchronously — the item is
embedded and indexed after the call returns, so a search fired in the same turn honestly
returns nothing and that is not a sign that memory is broken. The same applies to
/mubit-memory:reflect: reflection only sees items the server has already indexed, so
reflecting seconds after a write reports zero lessons where reflecting a minute later
reports them.
Note the one place the tool is narrower than the table: mubit_learned is the low-boilerplate
path, and every entry it writes is stored as success at run scope. The plugin clamps it
there on purpose — anything wider is read back by unrelated projects — and run is not the
memory loss it sounds like. The default runStrategy is per-directory, so the run id is
stable for a project: a lesson written here is recalled here tomorrow. It simply stops
following you into work it has nothing to do with. Use the table to decide what the entry
is and to word it accordingly, and let scope widening happen the way it is supposed to —
through the explicit reflect path, which is the only thing that promotes a lesson beyond its
own run. To raise the ceiling on what any MCP write may claim, set mcpLessonScope
(MUBIT_MCP_LESSON_SCOPE). If you need an exact type/scope pair written directly, that is
mubit_remember, which is off by default and restored via the mcpTools setting.
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.
- 3d ago First seen · 65 lines · 46 tokens per session scan A 0d5adf8565b8
remember is a skill published in the GitHub repository mubit-ai/claude-plugins (13 stars, last pushed 5d ago), licensed Apache-2.0. It adds 46 tokens to every session and 964 once invoked, about $0.0002 per session on Opus 5. 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-30.
Other skills, from other repositories
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.
auto-perf-optimize
Run agent-driven VS Code performance or memory investigations. Use when asked to launch Code OSS, automate a VS Code scenario, run the Chat memory smoke runner, capture renderer heap snapshots, take workflow screenshots, compare run summaries, or drive a repeatable scenario before heap-snapshot analysis.
chat-perf
Run chat perf benchmarks and memory leak checks against the local dev build or any published VS Code version. Use when investigating chat rendering regressions, validating perf-sensitive changes to chat UI, or checking for memory leaks in the chat response pipeline.
chat-pet-sprite-creation
Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.
cpu-profile-analysis
Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…