Skip to content

Standalone and SQL Modes

FabrCore 2.0 · Release and package availability

These guides track the current 2.0 source. Stable 2.0.0 publication is pending; package commands show the release target. Until it is published, follow the source quick start or use a matching available prerelease set. Release migration · Runtime modes

Start without a database. Add SQL when the application needs it.

FabrCore 2.0 brings SQL hosting, Memory, GraphRAG and ACL into the standard Host. One feature connection selects the integrated SQL mode.

CapabilityStandalone defaultsSQL mode defaults
Agents, harnesses, tools, MCP, Surface squadsAvailableAvailable
Conversations, state, typed storage, delivery checkpoints, remindersIn memory; lost on restartPersistent Orleans storage
Cross-principal agent messagingTrusted workspace; ACL bypassEnforced ACL
Memory, GraphRAG and ACL administrationUnavailableIntegrated SQL services
Security audit, execution evidence, A2A tasksIn-memory storesDurable operational stores

The hosting application must authenticate callers and establish trusted identity headers. Privileged administration authentication and storage/session ownership checks still apply in standalone mode; SQL ACL does not authenticate callers. It is intended for trusted workspaces. SQL mode does not automatically attach memory to every agent.

Configure the feature database

Supply ConnectionStrings:FabrCore through application configuration or a secret provider. The environment variable is ConnectionStrings__FabrCore. The database must already exist and support SQL Server 2025 or Azure SQL vector and graph schemas.

{
  "ConnectionStrings": { "FabrCore": "<SQL connection from your secret provider>" },
  "FabrCore": { "Database": { "AutoInitialize": true } }
}

Configure default chat and embeddings models in the active model store. GraphRAG requires 1536-dimensional embeddings. Extraction resolves an explicit FabrCore:GraphRag:ExtractionModelName, then graphrag, then default. Startup checks model and credential aliases without paid inference.

AddFabrCoreServer() registers the integrated services. Remove manual Memory/GraphRAG registrations when upgrading. Memory options bind from FabrCore:Memory; ingestion tuning remains under the legacy top-level GraphRag:Ingestion section.

Preserve existing split databases

Under FabrCore:Database, ConnectionStringName defaults to FabrCore. Optional MemoryConnectionStringName, GraphRagConnectionStringName, AclConnectionStringName and OperationsConnectionStringName select other named connections. They require the main feature connection.

Explicit Azure/custom Orleans providers and connection overrides remain supported. Orleans storage selection alone does not enable SQL knowledge or ACL features. An explicit ClusteringMode: Localhost overrides SQL Orleans defaults, so review old development configuration before deployment.

Startup, readiness and operations

Startup initializes tables and applies GraphRAG migrations. Set AutoInitialize=false for validation against pre-provisioned schemas. Both modes validate required tables and columns, graph node/edge kinds, vector dimensions and migration versions. Memory also requires the enabled scope/name/type index. Incompatible objects are identified; existing data is never silently rebuilt. Memory/GraphRAG schema locks wait up to 60 seconds with 90-second lock-command timeouts, and startup cancellation reaches built-in migrations and commands. Missing models, invalid connections or schema failures fail startup; SQL never silently downgrades to standalone. Database selection requires restart. Readiness checks ACL initialization and feature database connectivity.

SQL mode stores security audit, evidence and A2A snapshots in fabrOps, separate from ordinary message/LLM monitoring. Failed audit writes are logged and counted without a retry spool. Retention/pruning is explicit. Evidence signing still requires configuration; persistence alone does not sign records or store private keys.

A2A snapshots survive restart and support cross-host reads/cancellation. Interrupted execution fails instead of repeating external effects automatically. SSE streams are not durably replayed. Terminal retention defaults to one hour; active tasks are not evicted by terminal retention.

Upgrade an existing installation

Opt-in monitoring and administration durability

SQL mode does not automatically enable retained agent monitoring. Configure FabrCore:Monitoring:Provider=sql and, in manual-schema mode, apply the additive monitoring migration to the operational database. Bounded buffering reports drops and persistence failures; records become durable after flushing.

Admin sessions, operation receipts and blueprint deployment results use configured persistent stores. Default standalone memory does not survive process restart. Read cloud administration for lifecycle semantics, actor ownership and source coverage. Existing audit functionality is unchanged.

Connection key storage follows persistence

Optional connections use ephemeral protection with in-memory storage. SQL stores encrypted keys in the operational database, including when clustering itself uses Localhost. Missing certificate or schema fails startup without an ephemeral fallback. Read the integration guide.