# Developer Reference

> The reference for CBX internals - Kenedo, the API surfaces, the engines and the tooling.

Source: CBX documentation, version 4.0 preview (unreleased). Canonical page: https://docs.configbox.at/docs/4.0-preview/technical/. Last updated 2026-08-25.

---
> **Audience:** developers building on, integrating with, or debugging CBX · **Scope:** the
> component's internals and machine interfaces · **Last reviewed:** 2026-08-02

**What this is** — the reference for how CBX actually works under the hood: the Kenedo
framework it runs on, the four API surfaces it exposes, the engines that evaluate rules and
prices, and the tooling around migrations, the CLI and code generation. If you are styling,
overriding or extending a store rather than digging into internals, start with
[Customization](https://docs.configbox.at/docs/4.0-preview/customization/) instead; if you are evaluating CBX, the
[functional overview](https://docs.configbox.at/docs/4.0-preview/functional/evaluation) is the shorter read.

## Start here

- **[The four ways in](https://docs.configbox.at/docs/4.0-preview/technical/api_surfaces)** — the map of every API surface
  (admin UI, HTTP API, CLI, MCP) and how they converge on one shared layer. Read this first;
  every other API page assumes it.
- **[Kenedo MVC](https://docs.configbox.at/docs/4.0-preview/technical/kenedo_mvc)** — the framework overview: controllers, the
  metadata-driven mini-ORM, views, and the conventions the whole component follows.

**Coming back after a while?** [Latest features](https://docs.configbox.at/docs/4.0-preview/features/latest/) is the what's-new
track — what has landed since the 4.0 line opened, per surface. The developer-facing cuts are
[the HTTP API](https://docs.configbox.at/docs/4.0-preview/features/latest/http-api), [the CLI](https://docs.configbox.at/docs/4.0-preview/features/latest/cli),
[the MCP server](https://docs.configbox.at/docs/4.0-preview/features/latest/mcp-server) and
[platform & extensibility](https://docs.configbox.at/docs/4.0-preview/features/latest/platform-and-extensibility); each links straight
back into the pages below.

## The Kenedo framework

| Page | What it covers |
|---|---|
| [Kenedo MVC](https://docs.configbox.at/docs/4.0-preview/technical/kenedo_mvc) | The architecture in one page — read before the deep dives |
| [KenedoController](https://docs.configbox.at/docs/4.0-preview/technical/kenedo_controller) | Tasks, request → response lifecycle, authorization |
| [KenedoModel](https://docs.configbox.at/docs/4.0-preview/technical/kenedo_model) | Property definitions, reads, the store pipeline, delete/copy |
| [KenedoView](https://docs.configbox.at/docs/4.0-preview/technical/kenedo_view) | View resolution, templates, assets |
| [KenedoDatabase](https://docs.configbox.at/docs/4.0-preview/technical/kenedo_database) | Queries, prepared statements, transactions, escaping discipline |
| [MVC tasks in depth](https://docs.configbox.at/docs/4.0-preview/technical/mvc_tasks) | What each base task really does, including `copy()`'s two-pass id mapping |
| [Property definition settings](https://docs.configbox.at/docs/4.0-preview/technical/property_definition_settings) | Every key a `getPropertyDefinitions()` entry accepts |
| [Property types](https://docs.configbox.at/docs/4.0-preview/technical/property_types) | The type system — with [one page per type](https://docs.configbox.at/docs/4.0-preview/technical/property-types/) |

## APIs and integration

| Page | What it covers |
|---|---|
| [The four ways in](https://docs.configbox.at/docs/4.0-preview/technical/api_surfaces) | The map — surfaces, auth, convergence |
| [API contract](https://docs.configbox.at/docs/4.0-preview/technical/api_contract) | The response-shape contract and its migration ledger |
| [API tokens and scopes](https://docs.configbox.at/docs/4.0-preview/technical/api_tokens_and_scopes) | **The credential every API caller presents** — the seven areas, the four rules, presets, where tokens are minted |
| [Entity API](https://docs.configbox.at/docs/4.0-preview/technical/entity_api) | REST CRUD over every registered entity — for API clients |
| [HTTP API internals](https://docs.configbox.at/docs/4.0-preview/technical/http_api) | How the HTTP surface is built — for component developers |
| [Runtime API](https://docs.configbox.at/docs/4.0-preview/technical/runtime_api) | The headless configurator and cart — sessions, selections, checkout |
| [MCP server](https://docs.configbox.at/docs/4.0-preview/technical/mcp_server) | Driving CBX from an AI assistant — tools and semantics |
| [MCP server internals](https://docs.configbox.at/docs/4.0-preview/technical/mcp_server_internals) | How the MCP server is built |
| `com_configbox_ai_surface.html` | **The picture** — what MCP is, how a conversation runs, two transports converging, the scope grid, the tools by area. Open it in a browser |
| [Frontend requests](https://docs.configbox.at/docs/4.0-preview/technical/frontend_requests) | The storefront JS request layer and its response envelope |
| [Type generation](https://docs.configbox.at/docs/4.0-preview/technical/type_generation) | Generated JSON schemas, PHP record stubs and TypeScript types |

## Engines

| Page | What it covers |
|---|---|
| [Rule engine](https://docs.configbox.at/docs/4.0-preview/technical/rule_engine) | Rule JSON, evaluation, PHP/JS parity |
| [Calculation engine](https://docs.configbox.at/docs/4.0-preview/technical/calculation_engine) | Formula, matrix and code evaluation |
| [Configurator questions](https://docs.configbox.at/docs/4.0-preview/technical/configurator_questions) | Question state, selections and the configurator lifecycle |
| [Configurator client store](https://docs.configbox.at/docs/4.0-preview/technical/configurator_store) | The page's client-side state tree — actions, selectors, the legacy bridge |

## Operations and tooling

| Page | What it covers |
|---|---|
| [Migrations](https://docs.configbox.at/docs/4.0-preview/technical/migrations) | Versioned update scripts, idempotency, the failure freeze |
| [Product transfer](https://docs.configbox.at/docs/4.0-preview/technical/product_transfer) | Exporting a product and importing it into another install |
| [Editor image upload](https://docs.configbox.at/docs/4.0-preview/technical/editor_image_upload) | Dropping an image into a rich-text field — downscale, WebP, where it lands |
| [CLI commands](https://docs.configbox.at/docs/4.0-preview/technical/cli_commands) | Every `configbox:*` console command |
| [Chat advisor](https://docs.configbox.at/docs/4.0-preview/technical/chat_advisor) | The in-product AI assistant's architecture |
| [Host stylesheets](https://docs.configbox.at/docs/4.0-preview/technical/host_stylesheets) | How host-platform styling reaches component views |
| [Admin theming](https://docs.configbox.at/docs/4.0-preview/technical/admin_theming) | Light / dark / auto: the `--cb-*` token layer and how each platform resolves the scheme |

## Reading tips

- Pages are **point-in-time engineering docs tracking current master** — each states its scope
  in the first paragraph and links its siblings; trust the page over your memory of an older
  release.
- The encoded engine helpers (rules, calculation, configurator) are documented here by
  behavior and interface; their sources are not part of this repository.
