Build a live model of your operations that teams and AI agents can act on together.
Documentation · Quickstart · Atlas · Discord · Contributing
Northline Mechanical is a reference application built with Sixb.
Open the app · Explore in Atlas · View the API
Sixb is a TypeScript framework that turns operational data into typed objects, relationships, and actions for apps, people, and AI agents.
With Sixb, you can:
- Build typed operational apps around your own ontology.
- Connect existing systems and respond when their data changes.
- Run actions, workflows, and agents with built-in permissions, approvals, and history.
You'll need Bun 1.3 or later.
bun create sixb my-app
cd my-app
bun install
bun run devThe starter runs on SQLite and local files, so no external services are required.
Once it starts:
| Starter app | http://localhost:3001 |
| Atlas | http://localhost:3000 |
| API documentation | http://localhost:3002/docs |
Follow the complete getting-started guide →
Model your operations as typed objects and relationships.
// ontology/invoice.ts
import { defineObjectType, link, prop, stringEnum } from "@sixb/core/ontology"
import { Customer } from "./customer"
export const Invoice = defineObjectType({
id: "Invoice",
name: "Invoice",
properties: [
prop("id", "string", { required: true, primary: true }),
prop("amount", "double", { required: true }),
prop("status", stringEnum(["draft", "sent", "paid"]), { query: { filterable: true } }),
],
links: [link("customer", Customer, { cardinality: "one" })],
})Control how they change with actions.
// actions/settle-invoice.ts
import { defineAction } from "@sixb/core"
import { Invoice } from "../ontology/invoice"
export const settleInvoice = defineAction("settleInvoice")
.on(Invoice)
.params({})
.edits(({ objects, subject }) => {
objects(Invoice).byId(subject.primaryId).update({ status: "paid" })
})Query the same model from your app.
// app/queries/invoices.ts
import { objects } from "@sixb/client/query"
import { Invoice } from "../../ontology/invoice"
export const sentInvoices = objects(Invoice)
.query()
.where((invoice) => invoice.p.status.eq("sent"))
.expand(Invoice.l.customer)Rules, permissions, workflows, and agents build on the same objects and actions.
Every Sixb project includes Atlas, a built-in workspace for exploring your model and following the work running through it.
Shown with data from the Northline reference project.
External systems Apps · Atlas · API clients
connectors HTTP + WebSocket
│ │
┌───────┴───────────────────────────────────────────────┴─────────────────┐
│ Sixb │
│ │
│ Data syncs → datasets → pipelines → projections │
│ Model ontology · objects · links · telemetry │
│ Control permissions · rules · actions · workflows · agents │
│ Execution schedules · events · orchestrator · workers · run history │
└────────────────────────────────────┬────────────────────────────────────┘
│
┌────────────────────────────────────┴────────────────────────────────────┐
│ Providers │
│ operational storage · lake storage · blob storage · broker · queues │
└─────────────────────────────────────────────────────────────────────────┘
Locally, sixb dev runs everything together. In production, the API and background roles can run
independently against the same durable providers.
Provider options
| Slot | Implementations |
|---|---|
storage |
SQLite · PostgreSQL |
lakeStorage |
Local files · DuckLake |
blobStorage |
Local files · S3-compatible |
broker |
In-memory · Redis · NATS |
queues |
In-memory · BullMQ |
sandboxes (optional) |
Local · Apple Container · smolVM · Vercel |
Repository map
| Path | Contains |
|---|---|
packages/ |
Runtime, server, CLI, Atlas, client, UI, and workers |
storage/, broker/, queues/, sandboxes/, auth/ |
Infrastructure providers |
connectors/ |
First-party integrations |
examples/ |
Runnable reference projects |
docs/ |
Source for docs.sixb.ai |
- Start: Getting started · Project structure
- Core: Ontology · Objects · Actions · Workflows · Agents
- Build: Data · Apps · Server & API
- Operate: Infrastructure · Deployment
- Explore: Examples · Northline Mechanical
Sixb core is currently 0.1.3. Packages are versioned independently and publish only when they
change. APIs may change between minor releases, and database upgrades may require manual
migration before 1.0. See the changelog for compatibility notes.
Contributions are welcome. See CONTRIBUTING.md for the development and review workflow.


