Blueprints
Blueprints are the foundational abstraction on the Bivariant platform. They define the complete structure of an application — agents, flows, actions, integrations, data schemas, and more.
A blueprint is a versioned, reusable template that defines what an application can do. It is the build-time definition of an app — the skeleton that describes agents, flows, actions, integrations, collections, screens, and event handling.
Blueprints do not contain runtime data. They define structure and behavior, not user-specific content.
What a blueprint contains
A blueprint is composed of several types of components:
| Component | Purpose |
|---|---|
| Agents | AI assistants with identity, behavior, knowledge base, and a default flow |
| Flows | Visual automation workflows composed of steps |
| Actions | Callable operations — native platform functions or integration API calls |
| Integrations | External API bindings with operations, auth methods, and event channels |
| Collections | Data table schemas (field definitions, types, validation rules) |
| Screens | UI layout definitions using prebuilt components |
| Auth methods | Authentication schemes available for connections (OAuth2, API key, etc.) |
| Event channels | Inbound/outbound event endpoints (webhooks, SSE, polling) |
| Event definitions | Typed events from channels with extraction rules |
| Data types | Shared JSON schemas used across operations |
All of these components live inside the blueprint and are versioned together.
Blueprint structure
Blueprint
├── metadata (name, title, version, status, UID)
├── project (ownership, organization)
│
├── Integrations[]
│ ├── Operations[] → become Actions (runner: integration)
│ ├── Auth Methods[] → become blueprint auth methods
│ ├── Event Channels[] → become blueprint event channels
│ └── Data Types[] → become blueprint data types
│
├── Actions{} → all callable operations
├── Agents{} → AI personas with flows
├── Flows{} → automation workflows
├── Screens[] → UI definitions
├── Collections[] → data table schemas
├── Auth Methods[] → authentication schemes
├── Event Channels{} → inbound/outbound event endpoints
├── Event Definitions{} → typed events from channels
└── Data Types[] → shared schemasVersioning
Blueprints use semantic versioning with major and minor numbers:
- Minor bump (default):
1.0→1.1— backwards-compatible changes - Major bump:
1.0→2.0— breaking changes
Version identifiers follow the format:
{name}-{uid}@{major}.{minor}For example: [email protected]
Lifecycle
Every blueprint goes through a defined lifecycle:
Draft → Published → Deprecated → Archived- Draft — actively being edited. Only one draft version exists at a time.
- Published — frozen and immutable. Represents a released version that apps can install.
- Deprecated — still functional, but marked for future removal.
- Archived — no longer available for new installations.
Publishing
When you publish a blueprint:
- The current draft is frozen and marked as
publishedwith a release timestamp. - All components are deep-copied — agents, flows, actions, integrations, auth methods, and screens are duplicated to preserve the published state.
- A new draft is automatically created with an incremented version number.
- Cross-references (for example, an agent's default flow ID) are updated to point to the copied components.
- Apps using this blueprint are notified and can be updated to the new version.
This process ensures that published versions are immutable snapshots. Changes to the new draft do not affect the published version or any apps currently using it.
Projects
Each blueprint belongs to a project, which tracks ownership and organization context. Projects link blueprints to the organization that created them and manage access control.
Identifiers
Blueprint components use structured identifiers for cross-referencing:
| Component | Identifier format |
|---|---|
| Blueprint | {name}-{uid}@{major}.{minor} |
| Action | {blueprintIdentifier}/actions/{actionUID} |
| Agent | {blueprintIdentifier}/agents/{agentSlug}-{agentUID} |
These identifiers are used throughout the platform — in flow step configurations, action calls, and API requests.
Related concepts
- Apps — what happens when a blueprint is installed
- Actions — the callable operations defined in blueprints
- Build-time vs. Runtime — how blueprint definitions relate to runtime data
- Publishing and Distribution — versioning, artifacts, and cross-org distribution
Core Concepts
Understand the foundational architecture of the Bivariant platform — blueprints, apps, actions, organizations, and the separation between build-time and runtime data.
Apps
Apps are installed instances of blueprints within an organization. They bridge build-time definitions with runtime execution, each with isolated data and service accounts.