Skip to content

Memory API flags and environment

The operator stamps the memory-api command line from the Workspace service-group configuration. For managed deployments the fields are documented in Workspace and MemoryPolicy; this page lists the flags and environment variables of a deployment run outside the operator.

FlagEnvironmentPurpose
--workspace—Workspace name served by this instance
--service-group—Service group identity
--postgres-connPOSTGRES_CONNPostgreSQL connection string
--redis-urlREDIS_URL, OMNIA_MEMORY_REDIS_URLRedis cache/event publisher
--cache-ttlMEMORY_CACHE_TTLRead-through cache TTL (default 5m; 0 disables)
--embedding-providerEMBEDDING_PROVIDERProvider name used for embeddings
--rerank-providerRERANK_PROVIDERProvider name used for policy-enabled reranking. Enterprise; ignored in Core

When both --workspace and --service-group are set, memory-api reads the Workspace at startup and takes the PostgreSQL connection, the embedding and rerank provider names, and the workspace UID from the service group, overriding the flags above.

FlagEnvironmentOperator defaultPurpose
--reembed-intervalREEMBED_INTERVAL60mPeriodic embedding backfill; empty disables
--reembed-batch-sizeREEMBED_BATCH_SIZE500 (worker default)Rows per backfill batch; the operator stamps spec.services[].memory.reembed.batchSize when set
--reembed-concurrencyREEMBED_CONCURRENCY2 (worker default)Batches embedded at once; the operator stamps spec.services[].memory.reembed.concurrency when set
--compaction-intervalCOMPACTION_INTERVALnot setTemporal-summarization compaction worker; empty disables. The operator does not set it. The only summarizer is a placeholder that replaces memories with a stub
--tombstone-intervalTOMBSTONE_INTERVAL24hTombstone cleanup of long supersession chains; empty disables
--retention-intervalRETENTION_INTERVALnot setOut-of-cluster only: a TTL-only retention pass on this interval. In a cluster the retention worker is driven by the bound MemoryPolicy’s schedule
--consolidation-intervalCONSOLIDATION_INTERVALchart workspaceServices.memoryApi.consolidation.interval (empty)Enterprise. How often consolidation schedules are checked; empty disables
--projection-intervalPROJECTION_INTERVALchart workspaceServices.memoryApi.projection.interval (empty)Enterprise. How often projection gates are checked; empty disables
--default-ttlDEFAULT_TTLnot setWrite-time TTL when neither the caller nor the tier’s ttl.default sets one
--require-about-for-kindsREQUIRE_ABOUT_FOR_KINDSnot setKinds that must carry an about hint; unioned with the policy’s dedup.requireAboutForKinds

The ingestion fallbacks (--ingest-strategy, --ingest-summarizer, --ingest-chunk-size, --ingest-chunk-overlap, with matching INGEST_* variables) apply when the bound MemoryPolicy’s ingestion block leaves a field unset.

The on-demand POST /admin/reembed endpoint is bounded separately: it accepts up to 200 batches per request and defaults to one batch. It does not change the periodic worker interval.

When internal service authentication is enabled, memory-api reads the shared session-api settings: SESSION_API_AUTH_ENABLED (--auth-enabled), SESSION_API_AUTH_ALLOWED_SUBJECTS, SESSION_API_AUTH_ALLOWED_NAMESPACES, and SESSION_API_AUTH_AUDIENCES. The memory-api does not use a separate memory-specific token format.