Skip to main content

Architecture

CRAFT uses a 3-layer architecture. Your domain-specific Solutions build on a shared Platform, which runs on managed Infrastructure.

The Three Layers

Domain-specific applications that solve customer problems. Each solution is a standalone product with its own data model, agents, and UI, but shares platform services for identity, authorization, secrets, and resource management.

How Solutions Depend on the Platform

Solutions consume platform services through two integration mechanisms:

1. Helm Subchart Dependency

Each solution’s Helm chart declares em-runtime as a subchart dependency. At deploy time, the platform services (Keycloak, OpenFGA, PostgreSQL, Redis) are co-deployed or connected via shared infrastructure values. This ensures every solution gets consistent identity, authorization, and secrets management without duplicating infrastructure.

2. SDK-Based Runtime Integration

em-runtime auto-generates Python and TypeScript SDKs from its OpenAPI specs. Solutions import these SDKs to:
  • Authenticate users — forward JWT tokens to Governance for permission validation
  • Manage resources — CRUD operations on agents, artifacts, data connections via the Assets SDK
  • Check permissions — OpenFGA relationship-based access control via the Governance SDK
Solutions never implement their own permission checks. They delegate to the platform via SDK calls. If Governance is down, downstream services return 403.

Open Standards and Portable Components

CRAFT is built on open standards and portable, open-source components at every layer:

Standards and Protocols

Open-Source Components

Every protocol and component listed above is an open standard or open-source project. The platform does not require any proprietary service — you can deploy on any infrastructure that supports these standards.

Next Steps

Key Concepts

Learn about the core entities: organizations, projects, agents, and data connections.

Platform Overview

Deep dive into the em-runtime services that power the platform layer.

Data Insights

Explore the multi-agent data analytics solution.

Deployment

Learn how to deploy the platform on Kubernetes.