Skip to content

Architecture

SkeinRank is designed around a split between a fast runtime path and a slower control-plane path. The product goal is to make company-specific language governable, versioned, and safe to serve into search, RAG, and AI-agent workflows.

SkeinRank control plane architecture showing applications, runtime capabilities, execution targets, and support services.
SkeinRank sits beside existing applications and execution targets as a governed domain-language control plane.

Runtime path

Binding-aware canonicalization, disambiguation, route planning, pinned snapshots, runtime context APIs, SDK/CLI usage, and optional FastAPI extraction endpoints.

FastContext-boundDeterministic

Control-plane path

Governance API, PostgreSQL terminology state, roles, suggestions, stop lists, API tokens, snapshots, Elasticsearch evidence checks, enrichment jobs, and review UI.

PreviewReview workflowUI/API
Runtime request flow diagram showing incoming query, binding selection, canonicalization, disambiguation, route planning, resolved context, and execution targets.
Runtime calls should prefer an explicit binding because the binding defines the search scope, pinned snapshot, and policy context.
SkeinRank domain model diagram with profiles, canonical terms, aliases, bindings, snapshots, runtime context, suggestions, evidence, and enrichment jobs.
Profiles define terminology. Bindings define runtime search context. Snapshots define the immutable version served to runtime consumers.
Terminology-as-Code lifecycle diagram from JSON YAML dictionaries through lint, evidence review, approval, immutable snapshots, GitOps deploy, and runtime serving.
Terminology-as-Code turns reviewed dictionary changes into immutable runtime snapshots.
MCP and agent integration diagram showing Claude Desktop, Cursor, LangGraph-style agents, skeinrank-mcp, runtime APIs, and search RAG tool orchestration outputs.
MCP integrations let agents ask for scoped runtime context before calling search, RAG, or tool workflows.

| Package | Role | | --- | --- | | skeinrank-core | Core SDK, CLI, extraction, canonicalization, document helpers. | | skeinrank-server | FastAPI service wrapper for extraction and rerank contracts. | | skeinrank-provider-elasticsearch | Optional Elasticsearch provider and enrichment CLI. | | skeinrank-governance | SQLAlchemy/Alembic foundation for terminology governance. | | skeinrank-governance-api | FastAPI control-plane API for profiles, terms, aliases, users, roles, tokens, suggestions, and snapshots. | | skeinrank-ui | React/TypeScript governance console. |

The governance layer should publish snapshots. Runtime extraction should consume snapshots. That keeps the online matching path simple and avoids turning every extraction request into a database-backed workflow.