Install any skill in seconds. Free to start, no credit card required.
Get Started Free →ax-llm/ax-agent-memory-skills
This skill helps an LLM generate correct AxAgent memory retrieval, context-map, and dynamic skill-loading code using @ax-llm/ax.
Passed 24 of 24 test cases with the skill, and 8 of 24 without it.
and 20 more in the full report
16 fixed8 passed either way0 still failing0 broke
Tokens, turns and time describe resource use, not a dollar price.
This benchmark measured an earlier version of the skill.
A newer attempt on gemini-3.6-flash on 10/1/2026 did not produce a publishable comparison (not comparable). The snapshot above is the previously measured run.
One of 16 test cases the skill fixed. Same model, same prompt, with and without the skill.
In an `@ax-llm/ax` execution turn, the actor needs to load two operational runbooks ('db-failover' and 'dns-routing'). Developers frequently write `const runbooks = await discover('db-failover');` or execute multiple discovery calls in parallel with `Promise.all`. What is the correct invocation syntax for the actor?
| Checked | Without skill | With skill |
|---|---|---|
| Calls discover passing an object with a skills array of terms. | Missed | Passed |
| Does not assign the return value of discover to a variable. | Missed | Passed |
The instructions your model reads when the skill loads.
Use this skill when an agent needs a persistent context map, task-relevant memory retrieval, or skill guides loaded into the executor prompt on demand. For ordinary agent setup use ax-agent. For RLM runtime policy use ax-agent-rlm. For callbacks and telemetry use ax-agent-observability.
skillsCatalog / memoriesCatalog when the skill guides or memories fit in a plain array — Ax then backs discover({ skills }) / recall(...) with a built-in deterministic local search and no host search code is needed.onSkillsSearch / onMemoriesSearch when retrieval needs a real backend (vector DB, BM25 service, KV). A host callback always takes precedence over the catalog's built-in search.contextMap when repeated runs inspect the same long external context and should accumulate a small orientation cache automatically.recall(...) is available to distiller and executor stages when onMemoriesSearch or a non-empty memoriesCatalog is set.discover({ skills }) is available to the executor when onSkillsSearch or a non-empty skillsCatalog is set.skillsCatalog, the executor prompt also gains a static ### Available Skills index (id + name + description), so skill discovery is targeted instead of blind.recall(...) and discover({ skills }) return void. The loaded content appears on the next turn.onLoadedMemories / onLoadedSkills to observe what got loaded.onUsedMemories / onUsedSkills to track what the actor says it actually relied on.Use contextMap when repeated runs ask different questions over the same long context, document set, or repository. The map is prompt-resident orientation knowledge: structure, concepts, constants, parsing schema, reusable aggregate results, and concrete error patterns. It is not a task-specific answer cache.
Runnable example: src/examples/rlm-context-map-live.ts demonstrates a provider-backed context-map update, onUpdate snapshot persistence, finite evolve, and frozen map reuse.
When contextMap is configured:
forward(...).{ infiniteEvolve: false, evolveSteps: N }; after N successful updates it is still injected but no longer updated.onUpdate to persist result.map.snapshot() outside the agent.import { agent, AxAgentContextMap } from '@ax-llm/ax';
const map = new AxAgentContextMap(savedSnapshot, {
maxChars: 4000,
infiniteEvolve: false,
evolveSteps: 10,
});
test cases passed, vs 8 / 24 without
Published skills whose descriptions closely match this one, with their headline benchmark lift.
More skills from the same source and nearby in the registry, with their headline benchmark lift.