ai-raccoon-memory

Search, write, and watch project memory through the AiRaccoon memory server.

2|Updated Jul 18, 2026
One-click install
npx skills add https://github.com/Arasz/ai-badger --skill ai-raccoon-memory-arasz
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ai-raccoon-memory
Source: https://github.com/Arasz/ai-badger/tree/main/features/common/skills/ai-raccoon-memory
Command: npx skills add https://github.com/Arasz/ai-badger --skill ai-raccoon-memory-arasz

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve? Agents repeatedly re-derive facts that were already discovered in earlier sessions, and repo text search runs before anyone checks whether the answer already exists in memory. This Skill enforces a search-first workflow against the AiRaccoon memory server, writes durable findings back with source paths, and measures whether search results actually get used. ## Core Features & Use Cases - Search-first workflow: Run memory_search with projectId and sessionId before web search, code search, or asking the user, escalating by result quality (decisive hit, partial hit, no hit). - Watch-on-docs ritual: Mirror a project's docs directory and .semantica/ into memory with memory_watch_add so semantic search covers project documentation. - Write discipline and promotion: Write durable facts one per entry with source paths, use workspace isolation for in-progress notes, and promote cross-project facts with memory_share. - Memory-first gate hooks: PreToolUse/PostToolUse scripts deny repo text-search tools (grep, rg, find, search_files) until the session has consulted memory_search, with a 3-strike pass-through. - Follow-through measurement: A PostToolUse hook stashes search results by correlationId and records when the agent opens a returned file within 60 seconds, feeding the search_quality table. - Use Case: Starting a session on a repo, the agent watches the docs directory, searches memory before grepping the codebase, finds a prior decision with its source path, and writes the session's new finding back for the next session. ## Quick Start Ask the agent to check the memory watch status for this project, search memory for the current question before searching the repo, and write back any durable finding with its source path.

Frequently Asked Questions about ai-raccoon-memory

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I search project memory before searching the repo?

Run memory_search with your projectId, sessionId, and scope=all using two or three formulations: exact phrase first, then keywords, then a plain restatement. Entries carry source paths you can cite as evidence, and every reply includes a meta.correlationId for grading or follow-through recording.

How do I make a docs directory searchable in memory?

Run memory_watch_add with the projectId and the absolute path to the docs directory; the watch starts in scanning state and settles to healthy. Also watch the project's .semantica/ directory once, and gitignore it since the durable record lives in memory.

Why does memory_search return only keyword matches for code?

A warning starting with 'code engine not configured' means the code section is FTS5 keyword matches only, with semantic code hits missing. Run 'ai-raccoon model set code default' once to download and activate the default code embedding model, about 187 MB.

What is the memory-first gate and when does it block search tools?

The gate is a PreToolUse hook that denies repo text-search tools (grep, rg, find, search_files) until the session has run memory_search. After three denials it passes through so the agent cannot stall, and it fails open on any error so a hook crash never blocks a tool call.

When should I not write something to memory?

Skip memory_write for one-off lookups with no durable fact, and never pass a context parameter unless workspace isolation is intended, since it silently sets scope to custom and hides the entry from project-scoped search. Durable facts only, one per entry, with the source path included.

How do I promote a fact so other projects can find it?

Use memory_share to promote a durable cross-project fact into the shared scope, never automatically. Shared entries are searchable with scope=all or scope=shared and are exempt from memory_sweep cleanup of old low-rated entries.