SDK

One ergonomic surface, six languages

The SDK speaks the language of an agent remembering things. Each verb maps 1:1 to an operation in the OMEM standard. There are no hidden semantics, and you can always drop to the raw operations when you need to.

The verbs

Verb
What it does
remember
remember(agent, *, about, claim, because=None)
Record a belief, optionally grounded in events.
believes
believes(about, claim) -> State
The four-valued belief state at the current time.
why
why(about, claim) -> Provenance
Evidence, grounding, interval, and contradictions.
history
history(about, claim) -> [Belief]
The ordered revision chain for a belief.
revise
revise(belief, *, to, by)
Supersede a belief; closes the prior interval.
forget
forget(belief, *, by)
Retract a belief (recorded, never destroyed).
as_of
as_of(T).believes(...)
Run any query as memory stood at time T.

The same call, everywhere

1import omem
2mem = omem.Client()
3 
4mem.remember(
5 mem.agent("support-bot@v2.1"),
6 about=mem.entity("customer:alice"),
7 claim="prefers_email_over_phone",
8 because=[mem.event("ticket:8842")],
9)
10 
11mem.believes(mem.entity("customer:alice"),
12 "prefers_email_over_phone") # BELIEVED_TRUE
Prototyping offline? Client(embedded=True) runs the reference engine in-process: identical semantics, zero network, no key. Flip to cloud by removing one argument.