# Itsuki

> A structured memory layer for AI tools that extracts durable facts from conversations and serves them back across 26+ connected assistants, coding agents, and frameworks via MCP, REST, and SDKs.

Itsuki (樹, "tree") is an open-source structured memory service for AI applications, assistants, coding agents, and workflows. Built entirely on Cloudflare by Ziyad Ej and published under Apache 2.0, it provides a single memory layer that sits under the AI tools you already use — connect once with one key and facts saved in one tool are recalled in any other. The hosted service at itsuki.app is free during early access.

## What It Is

Itsuki solves the session-amnesia problem that affects every AI assistant: models forget everything between conversations, and the usual workaround — replaying the full transcript — causes prompts to grow without bound while corrections never stick. Itsuki takes the opposite approach: raw text goes in, a small set of durable, structured facts comes out, and the transcript itself is never what gets recalled. The result is a compact, inspectable, editable graph of memories — entities, events, details, edges, and relationships — that any connected tool can query with a single API call.

## How the Memory Graph Works

The extraction pipeline converts conversational text into typed objects rather than opaque embeddings:

- **Nodes** — stable things: a person, project, skill, condition, or tool
- **Slices** — durable details attached to a node ("trains three days a week")
- **Events** — changes over time: started, moved, completed, passed away
- **Edges** — stated relationships between nodes
- **Receipts** — a per-write record of what was saved, updated, or refused, and why

The backend is the authority, not the model. An LLM only *proposes* extractions; a deterministic backend independently re-judges every proposal against confidence floors, junk rules, and user-defined admission rules before anything is committed. Secrets are stripped before any durable row is created. Every write returns a receipt — including `savedTotal: 0` when nothing durable was found, which is a legitimate successful response, not a failure.

## Four Access Paths

Itsuki exposes one account- and scope-aware backend through four interfaces:

- **MCP** — a Streamable HTTP endpoint for Claude, ChatGPT, Cursor, Claude Code, Codex, OpenCode, Antigravity, OpenClaw, Hermes, and Pi; paste one private URL into the client's connector settings
- **REST API** — four core endpoints (`/v1/save`, `/v1/recall`, `/v1/turn`, `/v1/ingest`) with a Bearer key
- **SDKs** — first-party `itsuki` packages for Node 18+ (zero dependencies) and Python (httpx)
- **Dashboard** — browser-based Memories, Graph, Requests, History, and Playground views

The MCP server exposes eleven tools including `save_memory`, `save_conversation`, `recall_memory`, `list_memories`, `update_memory`, `rollback_memory`, and `delete_all_memories`. A Claude Code plugin delivers memory via three lifecycle hooks (SessionStart, SessionEnd, and a per-turn hook) with a local protected outbox that queues batches durably even when offline.

## Architecture and Deployment Model

The entire stack runs on Cloudflare: a Worker handles routing, D1 stores the graph, one Durable Object per user batches and runs extraction, Workers AI handles extraction and embeddings, and Vectorize powers semantic recall. The recall path runs five independent lanes — exact matching, alias matching, full-text search, vector similarity, and two-hop graph expansion — fused by reciprocal rank fusion into a bounded context block (roughly 1,800–2,800 characters for typical queries, up to 24,000 at the hard ceiling). Reading never involves a generative model; only one embedding call and an optional reranker call are made.

## Trust and Control Design

The homepage states several explicit design commitments: delete operations tombstone rows and purge vectors so nothing deleted is ever served again; every write leaves an audit receipt; updates keep full revision history with a Restore control; automatic summary passes are revision-fenced so they cannot silently overwrite a human edit; and no data is used to train models or shared with third-party trackers. Fonts are self-hosted to avoid CDN IP exposure.

## Current Status

The repository (`12ziyad/universal-memory-engine`) was created in June 2026 and last pushed in August 2026. The hosted service is described as free during early access, with approximately 100 saves per day available. The Node SDK is at version 0.3.0 and the Python SDK at 0.4.1 as of the current README. The repository notes that publication runs behind deployment — the newest modules and migrations reach the repository later than the hosted service.

## Features
- Structured memory graph (nodes, events, edges, slices)
- MCP server with 11 tools
- REST API with /v1/save, /v1/recall, /v1/turn, /v1/ingest
- Python and Node.js SDKs
- Claude Code plugin with lifecycle hooks
- Per-write receipts with skip reasons
- Revision history and rollback for every memory
- Five-lane recall fusion (exact, alias, full-text, vector, graph)
- Admission rules and user-defined filters
- Secret scrubbing before any durable write
- Audit trail for all writes
- JSON export of full memory space
- Dashboard with Memories, Graph, Requests, History views
- Playground for testing extraction pipeline
- Sub-tenant memory spaces via userId
- Managed projects for isolation
- Webhook support
- Delete with tombstone and vector purge
- No model training on user data

## Integrations
Claude, Claude Code, ChatGPT, Cursor, Codex, OpenCode, Antigravity, OpenClaw, Hermes, Pi, LangChain, CrewAI, AutoGen, Agno, LlamaIndex, Mastra, Vercel AI SDK, CAMEL, Google ADK, OpenAI Agents SDK, n8n, Dify, Convex, Cloudflare Workers, Cloudflare D1, Cloudflare Vectorize, Cloudflare Workers AI

## Platforms
WINDOWS, MACOS, LINUX, WEB, API, DEVELOPER_SDK, CLI

## Pricing
Open Source

## Links
- Website: https://itsuki.app
- Documentation: https://itsuki.app/docs/
- Repository: https://github.com/12ziyad/universal-memory-engine
- EveryDev.ai: https://www.everydev.ai/tools/itsuki
