Public beta — not for production use. Data may be wiped at any time. Questions? Contact us.
Documentation menu

Documentation

Everything you need to build on Axiom: install the CLI, write a node in any language, publish a package, compose a type-safe flow in the canvas, and invoke it via API.

Using an AI coding agent? Point it at /llms.txt (index) or /llms-full.txt (full corpus); every page is also raw markdown at the same URL with .md appended.

Getting started

Concepts

Guides

Create a node in Python
Scaffold a Python package, define protobuf messages, implement a typed node function with AxiomContext, test it with pytest, and push it to Axiom.
Create a node in Go
Scaffold a Go node with the Axiom CLI, implement the handler against generated protobuf types, test it, and run it locally with hot reload.
Create a node in TypeScript
Scaffold, implement, test, and push a TypeScript node with the Axiom CLI, using google-protobuf message classes and AxiomContext.
Create a node in Rust
Scaffold a Rust node package, implement the handler against the AxiomContext trait, run cargo-based tests with axiom test, and push it to the platform.
Create a node in Java
Scaffold a Java package and node with the Axiom CLI, implement the handler against AxiomContext, test it with Maven, and push it to the platform.
Create a node in C#
Scaffold a C# package, implement a unary or pipeline node against IAxiomContext, and run xUnit tests with axiom test — codegen happens at dotnet build via Grpc.Tools.
Import message types from another package
Find a published package with axiom search and axiom info, pull its message types into your package with axiom import, and use them as node inputs and outputs.
Configure an Instance from a Generic node
Bind a Generic node's port to a real type in the console wizard or with axiom instance create — author nested message-typed fields, toggle repeated/optional, and preview a mapping's exact output before you save.
Manage secrets in a flow
Store an API key on the console's Secrets page, read it from node code with ax.secrets.get, and know exactly what is and is not encrypted.
Set per-flow config values
Create flow config profiles in the console — secret overrides — pick one in the Run dialog or via config_id, and see how resolved values reach nodes.
Publish a flow to the marketplace
Compile a flow.yaml with axiom flow compile, then promote the artifact to the public marketplace with axiom flow publish so other tenants can fork it or import it as a subflow.
Debug a flow
Start a debug session with breakpoints and pause/step controls, inspect each node's input and output on the canvas, and replay any past execution on its detail page.
Use the interactive API docs
Open generated, interactive OpenAPI docs for any flow from the inspector's API section, send test requests from the browser, and fetch the raw openapi.json for codegen.
Build a client SDK
Bundle marketplace nodes and flows into a client — in Console → Client Builder or headlessly with `axiom client` — build it into a typed SDK in up to six languages, and call it with an API key from the environment.
Create and manage API keys
Mint, use, and revoke API keys in Console → API Keys, understand what a key can access, and read the Usage page's execution stats.
Author and consume packages and flows with Claude Code
Install Axiom's Skills into Claude Code with axiom skills install so your agent knows the create→validate→push→publish authoring loop AND the search→inspect→source→invoke loop for using published nodes, then drives the axiom CLI through the shell.
Use Axiom from any MCP client (hosted MCP server)
Add Axiom's hosted MCP server in any MCP client, authenticate with an Axiom API key, and search the catalog, inspect schemas, read a node's source, invoke nodes and flows, and pin favorites as typed tools — without installing the CLI.
Send feedback and propose marketplace artifacts
Tell Axiom what to build or fix, and request a package, node, or flow that doesn't exist yet — from the editor's feedback dialog, the axiom CLI (axiom feedback / axiom propose), or an MCP client. Every submission feeds the roadmap review.

Reference

CLI commands
64 pages, generated from the CLI itself.
axiom.yaml manifest reference
The complete schema of the axiom.yaml package manifest: every field, its type, default, validation rule, and which CLI commands read or write it.
Python SDK reference
Complete reference for the ax parameter in Python nodes: structured logging with ax.log, secrets with ax.secrets, and flow reflection with ax.reflection.flow.
Go SDK reference
Every capability on axiom.Context — the Go form of AxiomContext: structured logging, secrets, execution identity, flow reflection, and flow mutation, with full signatures.
TypeScript SDK reference
Complete reference for AxiomContext in TypeScript — logging, secrets, flow reflection, flow mutation, execution identifiers, and handler signatures.
HTTP API reference
Every invocation endpoint — flow invoke, SSE streaming, single-node calls, pre-warm — plus the Client Builder management API, Instance creation, adapter-mapping preview, with authentication, request and response fields, rate limits and daily quotas, and the structured error envelope.
CEL expressions
Every place a CEL expression appears in Axiom — the compose-mapping formula bar, the edge-adapter cel() transform, a gate condition's CEL op, and a HITL node's interrupt_payload_template — the value/srcField bindings, the inputs.<edge>.<path> multi-source syntax, the built-in string functions, and Axiom's two custom functions toUpper/toLower.
Error catalog
Every user-facing Axiom error — flow run failures in the editor, edge transform errors, and HTTP API error responses — with what causes each one and how to fix it.
Glossary
Canonical definitions for every Axiom term — the single authority for terminology used across the docs, the CLI, the canvas, and the API.

Releases