Product model: Knowledge Apps store and retrieve organizational knowledge. They do not run agents or prompt models. Configure collections and policies in the portal; Learn and Recall at runtime with the SDK.
Knowledge Apps give Cliodot a persistent knowledge layer: store what your organization knows, organize it, and retrieve the relevant pieces when apps, workflows, Surfaces, or agents need them.
A Knowledge App is not:
- an AI agent
- a RAG framework
- a place that prompts large language models
It does one job well:
Store knowledge efficiently and retrieve relevant knowledge when requested.
Anything else — embeddings, indexes, retention — supports that job. Configure those in the portal. Consume Learn + Recall at runtime through the SDK.
Learn and Recall#
| Responsibility | Meaning |
|---|---|
| Learn | Accept information from many sources and turn it into searchable knowledge objects |
| Recall | Return the most relevant knowledge for a request (filter, search, cross-app search) |
That is the whole product surface for developers.
What a Knowledge App owns#
Each Knowledge App is an isolated knowledge space. Examples:
- Customer support knowledge
- Employee knowledge
- Product documentation
- Finance knowledge
- Compliance knowledge
Inside it you organize collections (for example Customers, Tickets, Payments, Policies). Everything stored becomes a knowledge object addressed by { collection, id } — a customer, ticket, invoice, article, conversation, file, or workflow result.
Objects keep structured content, optional search text, metadata, and tags. Collections stay flexible by default; schemas are optional.
Knowledge can arrive from the SDK, APIs, workflows, Webhook Apps, Event Apps, capabilities, uploads, or jobs. Every item should retain where it came from.
Portal vs SDK#
| In the portal | In the SDK |
|---|---|
| Create Knowledge Apps | Store / store many |
| Collections, retention, embedding profiles | Get / update / delete |
| Groups and permissions | Find by content filter |
| Governance and metrics | Search (single-app or cross-app) |
Runtime clients live in the cliodot package. Base path: /memory. Auth: x-cliodot-app-id + Bearer mak_…, or app secret.
| Client | Use |
|---|---|
MemoryAppClient |
Store / get / update / delete / find / search |
MemoryClient |
Alias with searchCross for multi-app / group search |
When collections / collection are omitted on search, all collections in scope are searched. Pass apps (Knowledge App slugs or ids) to search across apps.