tinyhumansai/openhuman · error · anyhow::Error
people unavailable: memory driver does not support the peopl
Error message
people unavailable: memory driver does not support the people family
What it means
The bound driver's as_people() is None — it does not implement the people family, so every people_* tool refuses up front. A driver capability mismatch (commonly the null driver after a failed module load).
Source
Thrown at src/openhuman/memory/tools/people.rs:33
use chrono::Utc;
use serde_json::json;
use crate::openhuman::memory::api::provider::{MemoryProvider, PersonHandle, PersonInteraction};
use crate::openhuman::memory::guard::MemoryGuard;
use crate::openhuman::memory::ops::guard::active_memory_guard;
use crate::openhuman::memory::people::rpc;
use crate::openhuman::tools::traits::{PermissionLevel, Tool, ToolResult};
/// The guarded driver for this call, checked to serve the people family.
///
/// Returns the guard rather than the family handle because the accessor
/// borrows from it.
async fn people_guard() -> anyhow::Result<std::sync::Arc<MemoryGuard>> {
let guard = active_memory_guard()
.await
.map_err(|e| anyhow::anyhow!("people unavailable: {e}"))?;
if guard.as_people().is_none() {
return Err(anyhow::anyhow!(
"people unavailable: memory driver does not support the people family"
));
}
Ok(guard)
}
fn read_required_str(args: &serde_json::Value, key: &str) -> anyhow::Result<String> {
args.get(key)
.and_then(serde_json::Value::as_str)
.map(str::trim)
.filter(|s| !s.is_empty())
.map(str::to_string)
.ok_or_else(|| anyhow::anyhow!("missing required string argument `{key}`"))
}
/// Read `person_id` as the opaque token the contract defines it to be.
///
/// It is not parsed into a `Uuid` here: `PersonRef` is opaque by contract andView on GitHub (pinned to 7491200858)
Solutions
- Use a driver implementing MemoryPeople
- Diagnose why a people-less driver got bound
- Skip people tools on this backend
Defensive patterns
Strategy: type-guard
When it happens
Trigger: Thrown at src/openhuman/memory/tools/people.rs:33 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of tinyhumansai/openhuman@7491200858 (2026-08-17).
Data as JSON: /api/errors/e6c2fffe5cbb5a35.
Report an issue: GitHub.