aim-write
Persist a durable wiki page. Use only for canonical knowledge the user explicitly wants remembered — routine session notes are captured automatically by the hooks; do not hand-write those, and do not use a handoff for a permanent annotation.
Steps
Pick the instance. From the repo's MCP config. If multiple ai-memory servers are configured, ask which endpoint to write to.
Pick workspace/project. Default to the repo's
.ai-memory.toml; confirm if writing elsewhere.Choose a path + kind. Use folder conventions so
kindis derived and recall stays clean:decisions/ADR-NNNN-<slug>.md→ decision_rules/<slug>.md→ rulegotchas/<slug>.md→ gotcha- otherwise a topical path (e.g.
runbooks/<slug>.md,<area>/<slug>.md). You can also setkindexplicitly via frontmatternode_type/ the tool arg.
The
_rules/prefix matters — use the underscore. Pages under_rules/(and pinned_slots/) are ai-memory's highest-signal tier: they're surfaced verbatim inmemory_briefing/memory_explore/ the dashboard, keyed bypath GLOB '_rules/*'. A plainrules/folder (no underscore) is just a normal page — it gets none of that and is only found by explicit query/read. So write durable rules to_rules/, neverrules/.Shared / cross-project rules (e.g. global agent conventions reused across every repo) belong in a dedicated scope — the reserved
default/_globalscope — under_rules/there (write withscope: "global"). Recall is per-(workspace, project), so other projects reach them cross-scope viamemory_query scopes:[…]/memory_read_page(seeaim-query), not automatically.Write the body as markdown with frontmatter (
title,node_type,tags, optionalsource:). Link related pages with[[path.md]](paths carry.md; links resolve by exact path). Never put live secrets/credentials in a page — redact (<see secret manager>).Call
memory_write_page(or the equivalent admin write) with workspace/project/path/body.Confirm the page is recallable (a quick
aim-queryfor its topic).
Keep pages focused and distilled — one fact/decision/gotcha per page reads and recalls best.