This is the exhaustive enumeration layer of the memQL documentation: the dense,
grouped lists that the conceptual and how-to docs point into. It catalogs every
concept (the schemas), every tool (the SI-callable surface), every
provider (the SI vendor/model records), every routing policy, and every
builtin (Go-backed DSL functions) currently shipped in the dsl/ tree of
the public memQL repository.
This is the most drift-prone document in the set. It is a hand-verified
snapshot of the dsl/ tree on the current main branch. Counts and
descriptions are copied from the @description annotations in the source
.memql files. When the DSL tree changes, regenerate this page from
dsl/*/concepts.memql, dsl/*/tools*.memql, dsl/providers/providers.memql,
dsl/policies/policies.memql, and dsl/*/builtins.memql. Where a count or
claim could not be confirmed against source, it is marked inline.
The public repo uses a flat per-namespace layout (one directory per
namespace, with per-construct files inside it), not the nested
dsl/v1/<type>/v1/<namespace>/ layout described in some internal docs:
text
dsl/<namespace>/concepts.memql # all concepts in the namespace
dsl/<namespace>/tools.memql # all tools (or dsl/<namespace>/tools/*.memql)
dsl/<namespace>/builtins.memql # all builtins in the namespace
dsl/providers/providers.memql # all SI providers (single file)
dsl/policies/policies.memql # all SI Router routing policies (single file)
Each concepts.memql carries file-level @version and @namespace
annotations; an individual construct's canonical id is composed as
v{major}:{namespace}:{conceptName}. For example, the agent concept in
dsl/agents/concepts.memql (@namespace("agents"), @version("1.0.0")) is
addressed canonically as v1:agents:agent.
Internal narrative in several @description strings refers to concepts being
"global-scoped" (living in the reserved _system partition). However, the
canonical reference doc dsl/_reference/_concept.memql states that the
@scope("global") annotation was retired in the partition-removal pivot
(section 5: "Authoring a @scope annotation on a concept is a load-time
error"). That same reference file is internally inconsistent — a later section
(13) still documents @scope("global") and a worked example uses it. No
concepts.memql file in the tree carries a live @scope annotation. Treat
the "global-scoped" language in concept descriptions below as historical
intent, not a confirmed runtime property. (File: dsl/_reference/_concept.memql.)
Concepts are schemas for time-series nodes — the base of the DSL dependency
tree; every other construct references one or more concept ids. The
one-line summaries below are condensed from each concept's @description.
Source files: dsl/<namespace>/concepts.memql.
AI assistant templates with configurable capabilities, personalities, and provider settings; per-user platform agents keyed by ownerUserId, addressed as _system:v1:agents:agent:<seedName>-<userShortId>.
v1:agents:agentAuthorization
Standing authorization granting an agent permission to trigger Plans of certain kinds without per-Plan user approval (tiered-trust / opt-in autonomy, per (agentId, planKind, spaceScope) with token cap + expiry).
v1:agents:agentRole
First-class catalog of agent roles — picks locked minimum skills, recommended LLM policy, and a cap on skills an agent in the role may carry.
v1:agents:skill
First-class capability bundle: a named unit of (knowledgeDomains + toolSlugs + liveSources) the Planner Agent attaches in createSpecialist/extendSpecialist.
v1:agents:skillChangeEvent
Append-only audit log for every skill attach/reconfigure event on an agent.
v1:agents:operatorMemory
Session-scoped memory for UI-driving agents; one record per user, accumulates notes across takeovers.
v1:agents:avatarPersona
Operator-curated avatar persona catalog; each row minted once from an operator image into one vendor (Anam or Simli). Carries an operator-configurable avatarModel (Anam: cara-3 / cara-4) threaded to the vendor handshake.
A single calendar event owned by one user; app-native source of truth (source discriminates native vs externalSync; recurrence is an optional RFC-5545 RRULE carried verbatim).
Desired state of a unit of agent work — the spine the reconciler drives (open → running → done/failed/cancelled); ownerUserId is the owned-tier authz key.
v1:harness:step
A unit of work inside a Plan — one DAG node (pending → ready → running → done/failed/blocked); invalid transitions rejected by harness_step_validation.go.
v1:harness:observation
What actually happened during a step — durable, recall-able; content is the embedding text stored to node_vectors.
v1:harness:semanticMemory
A durable, distilled belief consolidated from episodic memory; sourceEpisodes link the belief back to forming episodes; confidence rises/decays.
v1:harness:consolidationCursor
Per-owner consolidation watermark stored as a node; makes consolidation incremental (cost bounded by new-episode delta).
A user-uploaded file (or chat-promoted segment) analyzed into queryable items; container concept owning metadata + back-references.
v1:knowledge:documentChunk
A single retrievable text chunk attached to a knowledge domain; embedding lives in node_vectors keyed by chunk id. (Note: a documentChunk is also described in dsl/common; this is the knowledge-namespace definition.)
v1:knowledge:domainEntitySchema
Per-domain entity schema (entityKind, keyFields, displayFields) powering cross-file dedup; inferred on the second validated Document.
v1:knowledge:entityIndex
The cross-file dedup lookup table; one row per validated entity keyed by sha256(normalized key field values).
v1:knowledge:imageRegion
One detected region inside an image Document — bounding box, vision-generated caption, lazy visual embedding.
v1:knowledge:knowledgeBridge
Synthetic bridge combining multiple knowledge domains for a role; hash-keyed by (roleSlug, sortedDomainIds) to reuse across matching agents.
v1:knowledge:knowledgeDomain
A knowledge domain agents can specialise in; carries scope (workspace/private) + ownerId and seed tier (A/B/C).
v1:knowledge:spreadsheetRow
One row extracted from a spreadsheet Document; typed so queries filter data.<columnName>=<value> as native column predicates.
v1:knowledge:validationEvent
Append-only audit log for every validation status transition on any data-bearing concept.
v1:knowledge:liveSource
A named query against a volatile data source — the "live knowledge" counterpart to a knowledge domain; results carry citations.
v1:knowledge:liveConnector
Defines a backing data source for liveSources (memql concepts, postgres/mysql/mssql, REST, GraphQL, custom plug-ins); auth via partitionSecret references.
v1:knowledge:liveSnapshot
Cached result of a liveSource read, keyed by (liveSourceId, queryArgsHash); bounded-stale reuse until expiresAt.
A single Library index row pointing at one backing source (document/output/note/todo/event/memory/liveSource); owned-tier authz.
v1:library:generatedOutput
A deliverable produced through the app (workbench result, computer-use output, agent output); auto-promoted into the Library.
v1:library:memory
A durable memory the assistant retains about the user across sessions; surfaced in the Library's Records lens; owned-tier authz.
v1:library:liveSource
A connected, refreshable source backing the knowledge/skill layer; visibility can be workspace-scoped via a non-owned authz tier (#723), not strictly per-row owned.
A user-visible unit of work the planner orchestrates; Plans can nest via parentPlanId; lifecycle queued/routing/running/.../succeeded/failed/cancelled.
v1:planner:responsibility
A user-authored standing directive aimed at an agent — REACTIVE / STANDING / RECURRING archetypes; replaces the retired standingTask concept.
v1:planner:task
One executable step inside a Plan — semantic (planner decomposition) or toolInvocation (auto-stamped per tool call); one level of mechanical recursion.
v1:planner:taskState
Persisted working state of a Task parked awaiting user feedback or paused; bootstrap context for planner re-invocation on resume.
Instance-wide encrypted secret (NaCl secretbox under MEMQL_MASTER_KEY); cleartext never stored; resolver falls back partition → global.
v1:platform:globalVariable
Instance-wide plaintext config variable visible to every tenant; per-tenant overrides via partitionVariable.
v1:platform:partitionSecret
Partition-scoped encrypted secret (BYOK vendor keys, per-tenant creds); falls back to globalSecret when no row found.
v1:platform:partitionVariable
Partition-scoped plaintext config variable; falls back to globalVariable.
v1:platform:policyTrace
Persisted trace tree for a single policy evaluation; written when @traces_persisted or PersistTrace=true; retention via MEMQL_POLICYTRACE_RETENTION_DAYS (default 90).
v1:platform:missingCapability
A capability the platform itself cannot yet provide (missing tool/integration/connector kind); logged by the Planner during capability-gap detection.
One row per safety-classifier decision (verdict source rule/model/cache, surface + action, redacted payload); retention MEMQL_SAFETY_CLASSIFICATION_RETENTION_DAYS (default 90).
v1:safety:approvalRequest
One row per Ask-verdict approval request; keyed by correlationKey for idempotency; flipped approved/denied to unblock a gated action.
v1:safety:outputScreening
One row per output-screening decision (ingress: should this string land in the model's context?); retention MEMQL_SAFETY_OUTPUT_SCREENING_RETENTION_DAYS (default 90).
Per-call telemetry for worker tool invocations; retention default 90 days (WORKER_INVOCATION_RETENTION_DAYS), soft-deleted by the retention sweep cron. (Concept id corrected in #667.)
v1:worker:registration
Operational registration of a worker (a memql-cockpit instance in worker mode); per-user routing — owned by exactly one user.
Tools are the SI-callable surface — the discoverable, schema-typed entry points
an agent's tool loop binds call args to. Each tool declares a @handler (the
function it forwards to) and an @executionTime hint (fast or medium). The
tool body is its input schema (a field list with types and
@required/@default/@description annotations).
Handler types observed:type="query" (15 tools — forward to a query or
mutation function) and type="function" (9 tools — forward to a named Go-backed
function handler). Execution times observed:fast (20) and medium (4).
Providers are SI vendor + model + auth records. They come in two forms:
Base providers (@base + @type) carry vendor-level auth and type. There
are 6: anthropic, google, groq, mistral, openai, xai.
Model providers (@extends("<base>") + @model + optional @type)
declare a concrete model, optional @description, and a params block
(context window, completion-token cap, cost-per-million).
The default chat provider is stream54 (carries the @default
annotation — "every caller that does not explicitly pick a provider lands
here"). Source file: dsl/providers/providers.memql.
A representative model provider with its params block:
memql
@extends("openai")
@model("gpt-5.4-mini")
@description("OpenAI GPT-5.4 Mini - balanced cost/latency chat (non-streaming)")
Grouped by capability. Each row lists the provider name, its @model, and the
@type where one is declared (model providers that only set @extends
inherit the base @type).
The policies that ship in the public dsl/ tree are SI Router routing
policies (block syntax: @primary / @fallback / latency knobs). They
select which provider serves a given workload and define a fallback chain.
Source file: dsl/policies/policies.memql.
Scope note. The internal CLAUDE.md describes a second, distinct policy
system — cross-cutting decision policies (func (Policy) name(ctx) { ... }
with @tier / @frontend_visible / @audited annotations, under
dsl/policies/core/ and dsl/policies/bff/). No such decision policies
exist in this repo's dsl/ tree. The only func (Policy) references are in
the documentation/reference files (dsl/_reference/_trait.memql). The
v1:platform:policyTrace concept and the EvaluatePolicy engine path exist,
but the public DSL ships only the five routing policies below.
Builtins wrap Go integrations behind a declarative schema so they look like
regular DSL function calls. Each declares an @executor (the Go integration or
engine intrinsic it dispatches to); the body is the builtin's input schema.
@description("Retrieve top-K nodes of the given concept ranked by cosine similarity...")
builtin similarTo {
text string@required
conceptstring@required
limit int
providerstring
}
File: dsl/common/builtins.memql.
Two kinds of @executor value appear: integration executors
(integration.<area>.<op> — dispatch to a registered Go integration plug-in)
and engine-intrinsic executors (bare names like concepts, help,
validate, error — handled directly by the engine).
Return DB connection pool statistics (open/idle/in use/wait count).
ensureKnowledgeBridge
integration.knowledge.ensureKnowledgeBridge
Ensure a cross-domain bridge corpus exists for an agent's (roleSlug, sortedDomainIds); idempotent, hash-keyed.
error
error
Construct and return an error from a message string.
filesExtractText
integration.files.extractText
Extract plain text from a file by MIME type (PDF, DOCX, images, text).
functions
functions
Return a minimal list of all registered functions (name + description).
help
help
Return full details for a specific function or tool by name.
knowledgeAugmentDomainAnalyze
integration.knowledge.augmentDomainAnalyze
Decide whether a chat exchange warrants augmenting an agent's knowledge domain; returns {outcome, domainId, topic, reasoning, confidence}.
knowledgeAugmentDomainGenerate
integration.knowledge.augmentDomainGenerate
Generate + embed + persist topic-focused chunks for a domain; inserts a Plan for audit.
knowledgeIngest
integration.knowledge.ingest
Chunk + embed + persist a document into a domain; source REQUIRED (provenance class).
knowledgeSeedStandardDomains
integration.knowledge.seedStandardDomains
Seed standard knowledge domains + CoPresent UI corpus on startup; idempotent.
avatarDirectStartSession
integration.avatardirect.startSession
Start a direct/Guide avatar session for an Anam-vendor agent; mints a LiveKit room + join token.
avatarDirectStopSession
integration.avatardirect.stopSession
Stop a direct/Guide avatar session; best-effort, always returns {ok:true}.
realtimeCreateClientSecret
integration.openairealtime.createClientSecret
Mint a short-lived OpenAI Realtime ephemeral client_secret for a browser↔OpenAI WebRTC session.
memqlDocs
memqlDocs
Return embedded MemQL documentation as queryable nodes.
openaiVoiceSynthesize
integration.openaiVoice.synthesize
Synthesize text to speech using OpenAI TTS; returns base64 PCM16 audio.
previewInsert
previewInsert
Validate payload, predict id, and check existence — without inserting.
routerListModels
integration.router.listModels
List every SI provider registered at startup (vendor, model id, pricing, availability).
routerListPolicies
integration.router.listPolicies
List all routing policies loaded from policies/v1/*.memql.
routerSetApiKey
(none)
Set a router vendor API key (vendor, plaintextKey required; optional label, addedBy). Carries no @executor annotation in source — the declaration sits directly after routerListPolicies with no executor line; verify intended dispatch in dsl/common/builtins.memql.
seedAllDomainContent
integration.knowledge.seedAllDomainContent
Run seedDomainContent across every shipped domain; optional tier/prefix filters.
seedDomainContent
integration.knowledge.seedDomainContent
Generate + embed + store seeded chunks for one domain (Tier-A LLM-generates, Tier-B disclaimer, Tier-C Wikipedia/placeholder).
webSearch
integration.knowledge.webSearch
Issue a web search for the Trainer Agent. STUB: no provider wired in-repo (returns empty + note).
fetchUrl
integration.knowledge.fetchUrl
Fetch + extract readable text from a URL (bounded http.Client); returns {url, status, contentType, text, truncated}.
embedChunk
integration.knowledge.embedChunk
Embed one knowledge chunk so it becomes retrievable via similarTo; idempotent.
embedDomainItems
integration.knowledge.embedDomainItems
Embed every unembedded validated chunk in a domain, recompute the Document's embeddingStatus; idempotent.
serviceVersion
serviceVersion
Return the current memQL service version.
shapeHelp
shapeHelp
Get full details for a shape template by name.
shapeTemplates
shapeTemplates
List available shape templates, optionally filtered by concept.
similarTo
integration.similarity.similarTo
Retrieve top-K nodes ranked by cosine similarity to a free-text query, optionally scoped to domains.
storageUpload
integration.storage.upload
Upload file data to cloud storage; returns storage URL.
sttTranscribe
integration.stt.transcribe
Transcribe audio data to text (non-streaming batch).
These two builtins are declared in the harness namespace's queries.memql file
(not a builtins.memql), alongside the harness query functions.
Builtin
Executor
Summary
recall
integration.harnessRecall.recall
Recall top-k memories of a concept (default v1:harness:observation) by a single hybrid recency × relevance score (pgvector cosine + exponential time-decay), scored server-side in one SQL statement; owner-scoped, tunable halfLife/weights.
harnessTrace
integration.harnessTrace.trace
Fetch a harness plan's full execution timeline (every plan/step version transition + all observations) reconstructed from the append-only event stream; owner-scoped; backs the cockpit harness trace CLI.
All counts and names in this document were enumerated directly from the dsl/
tree of the public repo (grep "^concept ", grep "^tool ", grep "^provider ",
grep "^builtin ", and the single dsl/policies/policies.memql file). Totals:
100 concepts across 22 namespaces.
24 tools across 5 namespaces.
57 providers (6 base + 51 model) in one file.
5 SI Router routing policies in one file.
66 builtins across 7 namespaces (45 in common, 4 each in agents /
cognition / identity, 5 in worker, 2 in workbench, and 2 in
harness's queries.memql).
When this snapshot ages, re-run those greps against the source tree to refresh
the tables.