{"record":{"id":"28f2515b70c76edc","repo":"tinyhumansai/openhuman","slug":"call-memory-agent-agent-definition-agent-id-n","errorCode":null,"errorMessage":"call_memory_agent: agent definition '{AGENT_ID}' not found in registry","messagePattern":"call_memory_agent: agent definition '(.+?)' not found in registry","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/openhuman/memory/agent/tools.rs","lineNumber":141,"sourceCode":"        let parent = current_parent();\n        if parent.is_none() {\n            return Ok(ToolResult::error(\n                \"call_memory_agent: no parent agent context — this tool must be \\\n                 called from within an agent turn.\"\n                    .to_string(),\n            ));\n        }\n\n        let registry = AgentDefinitionRegistry::global()\n            .ok_or_else(|| anyhow::anyhow!(\"call_memory_agent: agent registry not initialised\"))?;\n\n        let definition = registry\n            .list()\n            .iter()\n            .find(|d| d.id == AGENT_ID)\n            .cloned()\n            .ok_or_else(|| {\n                anyhow::anyhow!(\n                    \"call_memory_agent: agent definition '{AGENT_ID}' not found in registry\"\n                )\n            })?;\n\n        let parent = parent.expect(\"checked above\");\n        if !parent.allowed_subagent_ids.contains(AGENT_ID) {\n            log::warn!(\n                \"[call_memory_agent] blocked memory subagent outside parent allowlist parent_agent={} requested_agent={} allowed={:?}\",\n                parent.agent_definition_id,\n                AGENT_ID,\n                parent.allowed_subagent_ids\n            );\n            return Ok(ToolResult::error(format!(\n                \"call_memory_agent: agent '{AGENT_ID}' is not in parent agent '{}' subagents.allowlist\",\n                parent.agent_definition_id\n            )));\n        }\n","sourceCodeStart":123,"sourceCodeEnd":159,"githubUrl":"https://github.com/tinyhumansai/openhuman/blob/749120085864ce16e0f273c7b86fac7740b39c5b/src/openhuman/memory/agent/tools.rs#L123-L159","documentation":"The global agent registry is up, but no built-in definition with id AGENT_ID (the memory agent) exists in its list. The registry and the tool disagree about which agents are installed — a registration or gating mismatch rather than a bad argument.","triggerScenarios":"Thrown at src/openhuman/memory/agent/tools.rs:141 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Verify the memory agent's built-in definition is registered by the active DomainSet/feature configuration","Check for a renamed agent id in the registry versus the constant compiled into this tool","Rebuild with the agent harness features that register the memory agent"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"749120085864ce16e0f273c7b86fac7740b39c5b","analyzedAt":"2026-08-17T21:21:45.363Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}