SynapsesOS
Reference

Federation Configuration

Federation

Federation connects multiple Synapses-indexed projects for cross-project queries. Essential for monorepos and microservice architectures.

{
"federation": [
{
"path": "../shared-lib",
"alias": "shared"
},
{
"path": "../api-gateway",
"alias": "gateway"
}
]
}

Federation Entry Fields

FieldTypeRequiredDescription
pathstringYesRelative or absolute path to sibling project
aliasstringYesShort name used in cross-project queries

Linked Projects

The linked field merges another project’s graph directly into this project’s graph:

{
"linked": ["../shared-types"]
}

Linked projects are read-only — their nodes and edges appear in your graph but can’t be modified.

Federation ACL

Control what data sibling projects can read:

{
"federation_acl": {
"allow_reads": true,
"allow_memory_reads": false,
"allowed_projects": ["shared", "gateway"]
}
}

Cross-Project Queries

Once configured, many tools support a projects parameter:

get_context(entity="ValidateToken", projects="shared,gateway")
get_impact(entity="AuthMiddleware", projects="*")
memory(action="search", query="auth changes", projects="shared")

How It Works

  • Fail-open: Federation errors are logged, never propagated — your project works even if siblings are down
  • Lazy loading: Sibling stores opened on first access, cached for session lifetime
  • Stale threshold: Siblings not indexed in 24 hours are marked stale
  • Parallelism: Up to 8 concurrent queries against siblings
  • Timeout: 10 seconds per sibling query
  • Drift detection: Automatically detects when cross-project dependencies change (signature changes, removals)