Debugging
If active memory is not showing up where you expect:
- Confirm the plugin is enabled under
plugins.entries.active-memory.enabled. - For Remember across conversations, confirm the agent's effective
memory.search.rememberAcrossConversationssetting is enabled, runapus doctorto verify the current memory provider supports protected transcript recall, and confirmconfig.toolsAllowincludesmemory_searchwhen explicitly configured. For advanced Active Memory, confirm the agent ID is listed inconfig.agents. - Confirm you are testing through an eligible interactive persistent conversation.
- Remember that groups and channels never use cross-conversation transcript recall.
- Turn on
config.logging: trueand watch the gateway logs. - Verify memory search itself works with
apus status --deep.
Trigger recall and Remember across conversations are separate paths. Run
/active-memory status to inspect the session toggle and both configuration
settings. Remember across conversations can be on even when the agent is absent
from plugins.entries.active-memory.config.agents. A session pause does not
change those configuration settings; destination and tool policies still apply.
When the agent is absent from that allowlist, debug logs include
lane-1 skipped reason=agent-not-configured agent=<id>. With
config.logging: true, the same diagnostic appears at info level.
If memory hits are noisy, tighten maxSummaryChars. If active memory is too
slow, lower queryMode, lower timeoutMs, or reduce recent turn counts and
per-turn char caps.
Common issues
Advanced Active Memory rides on the configured memory plugin's recall
pipeline, so most recall surprises are embedding-provider problems, not
active-memory bugs. The default memory-core path uses memory_search and
memory_get; the memory-lancedb slot uses memory_recall. If you use another
memory plugin, confirm config.toolsAllow names the tools that plugin actually
registers. Remember across conversations is narrower: the current memory
provider must support Apus's protected same-agent/private-session recall
path.
- Check the selected agent's profile and explicit `tools.alsoAllow` grants.
Under a restrictive profile, listing plugin tools in `config.toolsAllow`
alone does not authorize them. Use the scoped [Lossless Claw example](/concepts/active-memory/memory-tools#lossless-claw).
- Check explicit denies and provider, agent, and sandbox tool policies.
`alsoAllow` extends the profile; it does not override those restrictions.
Provider-specific profiles have their own `alsoAllow` configuration.
- Confirm that `config.toolsAllow` contains the intended concrete recall
names. Active Memory can use only the intersection of this list and the
parent agent's effective tools. Keep `memory_search` when using Remember
across conversations.
- Use `apus plugins inspect lossless-claw --runtime --json` to check
registration. A tool listed there is registered, but that output does not
prove the parent agent or Active Memory is authorized to call it.
Embedding provider switched or stopped working
If `memory.search.provider` is unset, Apus uses OpenAI embeddings. Set
`memory.search.provider` explicitly for Bedrock, DeepInfra, Gemini, GitHub
Copilot, LM Studio, local, Mistral, Ollama, Voyage, or OpenAI-compatible
embeddings. If the configured provider cannot run, `memory_search` may
degrade to lexical-only retrieval; runtime failures after a provider is
already selected do not fall back automatically.
Set an optional `memory.search.fallback` only when you want a deliberate
single fallback. See [Memory Search](/concepts/memory-search) for the full
list of providers and examples.
Recall feels slow, empty, or inconsistent
- Turn on `/trace on` to surface the plugin-owned Active Memory debug
summary in the session.
- Turn on `/verbose on` to also see the `🧩 Active Memory: ...` status line
after each reply.
- Watch gateway logs for `active-memory: ... start|done`,
`memory sync failed (search-bootstrap)`, or provider embedding errors.
- Run `apus status --deep` to inspect the memory-search backend and
index health.
- If you use `ollama`, confirm the embedding model is installed
(`ollama list`).
See [Cold-start grace](/concepts/active-memory/recommended-setup#cold-start-grace) under Recommended setup for the
recommended `setupGraceTimeoutMs` value.