Skip to main content
open source · Apache-2.0 · built by Ensera

taisce.

What can remember — and prove it forgot?

Memory for your AI agents. Your agent tells Taisce what happened; later it asks a question and gets back facts, each with the exact words it came from and when it was true. When someone asks to be forgotten, you get a count of what is left, and it is zero.

PostgreSQL onlyPython · Java · .NETMCP for coding agentsruns on your infrastructure
agent@laptop — taisce · replay of the v1 contract
$
inside the instance
observation log
offset 0 · user · aliceI work at Ensera and I live in Dublin.
works_atlives_in
entity graph
works_atlives_inspeakerpersonEnseraorganisationDublinplace
anchor Ensera → works_at → “I work at Ensera” · bytes 0–16
stored—
formed—
residual—

The turn is stored and acknowledged at once. Nothing waits for a model.

request and response shapes from the v1 contract
why taisce

Memory that shows its work.

Six things your agent gets that a pile of stored text can't give it. How it works →

01

Answers from the things a question names

Recall starts at the people and things your question names and follows the facts around them, instead of searching for similar sentences. It never calls a model, so a slow model delays new memories, not answers.

anchors → facts
02

Every fact shows its words

Each fact carries the exact quote it came from and where that quote sits in the stored message. A claim whose words are not there is refused before it is stored.

quote · byte_start · byte_end
03

Two clocks on every fact

When something was true, and when Taisce learned it. A new job supersedes the old one without erasing it, so you can ask what was true then, or what was known then.

as_of · as_known_at
04

Forgetting you can count

Erasing a person removes everything derived from what they said, then recounts what still matches them in the same transaction. The receipt says what was deleted and what is left.

deleted · residual · clean
05

Memory reaches the model as data

Every adapter hands memory over as one user message marked untrusted, never as a system instruction, and one conformance suite holds Python, .NET and Java to it.

taisce-memory/v1 untrusted
06

Just PostgreSQL, on your infrastructure

No vector database, graph engine or queue to run: one database to operate, back up and erase from. All of it is Apache-2.0.

docker compose up
how it flows

One memory, start to finish.

Saving is instant; learning happens in the background. A freshness check tells your agent how far behind its memory is.

docker compose upStarts PostgreSQL and the service from published images, and prints your first tokens.
save

Your agent sends what happened

A turn is saved straight away and you get its position back. Saving never waits for a model, so memory never slows your agent down.

POST /v1/observations
learn

Taisce turns it into facts

In the background, a model reads each message and pulls out facts. Every fact keeps the exact words it came from, or it is thrown away.

stored → formed
recall

Ask, and get facts with their words

A question starts at the people and things it names and follows the facts around them. You get each fact with the quote behind it.

POST /v1/recalls
forget

Forget someone, and see the proof

Erase a person and Taisce removes everything derived from what they said, then counts what is left. The count you get back is zero.

POST /v1/erasures
for operators

Run it from one screen.

The ops centre is where whoever runs Taisce looks after it. The taisce CLI and the management API do the same work from a terminal or a script.

Projects and keys

Create projects, suspend and resume them, and see which keys reach each one.

projects · credentials

How it is running

What was stored, what has formed, and how far behind learning is, with what each number means.

formation/status

Turns that failed

A turn the model keeps failing on is parked rather than lost. See it, then retry it.

formation/unpark

What extraction refused

Every claim the checks turned down, counted by the reason it was refused.

refusals/summary

Erasure receipts

What each erasure deleted and what was left afterwards.

erasures/list

The ledger

Operator actions, recorded in a ledger you can seal and verify.

audit/seal · verify
TAISCE_PORTAL=onOff until you switch it on. It is served by the management process, which compose publishes on this machine's loopback only, and you sign in with an operator token.
The Taisce ops centre overview: activity across projects and how the instance is running
The overview, from a deployment seeded through the real API.
contributors

The people building Taisce.

Built by Ensera and shaped by everyone who sends a fix, a test, a page of documentation or a good question. Your name belongs here too: add it with your first pull request.