Advanced Topics

Licensing

Create and manage dxflow licenses and understand the available permissions

dxflow uses a permission-based licensing system to control access to features. Licenses are JSON files signed with RSA, verified at engine startup against an embedded public key: a valid license starts the engine, an invalid one stops it, and a missing license falls back to the built-in General license. No custom license is required to start.

Default license (General)

The built-in General License needs no registration and is valid until January 1, 2030. It grants the core modules shell, artifact, runtime, workflow, and agent.

The auth and engine controllers (and console when started with --console) are always served regardless of license.

Permissions

ModuleDescription
shellTerminal access and command execution
artifactFile storage and management
runtimeDocker, Podman, Singularity, and Apptainer integrations
workflowWorkflow creation, lifecycle, logs, and stats
agentAI agent sessions and workflow assistance

Comparing licenses

GeneralFreeCustom
How to get itBuilt into the binarydxflow login, then issue it in dxflow platforminfo@dxflow.ai
RegistrationNoneGoogle, GitHub, or Stripe verificationContact us
CostFreeFreeContact us
Valid forUntil January 1, 20301 year from issueYour term
Runs onAny machineThe Identity it was issued forThe Identities you need
shell, artifact, runtime, workflow, agent

A Free license ties the same core modules to your machine's Identity for a year. Reach for a Custom license when you need a longer term, several engines, or specific compliance terms.

Getting your identity

Licenses are tied to your machine's unique Identity and cannot be transferred between machines. Get it with:

dxflow engine info
● Engine
  Identity     cc2bcf4a9fc3fa056189533df3ee3af6
  Directory    ~/.dxflow
  Profile      default
  Version      2.4.0

License commands

CommandDescription
dxflow loginConnect this engine to your account (alias: platform login)
dxflow license infoView active license details
dxflow license activateDownload and activate this engine's license (alias: license active)
dxflow license activate --no-downloadActivate a license file already in the dxflow directory
dxflow license deactivateRevert to the built-in General license (alias: license deactive)

dxflow login connects the machine to an account, which is what a license is issued against. Activating issues the license where the account has none for this engine, stores it as license-<identity>.json (identity truncated to 8 chars), and updates the license config setting.

activate carries the platform session, so the engine issues and downloads its own license and nothing asks you for an Identity. An engine can only ever license itself.

Creating a custom license

Connect the engine

dxflow login

Your browser opens on the login page, carrying this machine's Identity.

Authenticate

Choose Google or GitHub (verified via your account email), or Stripe (verified with any payment card — no charges, the card is used only for identity verification and is not stored).

Take the code across

The page shows an eight-digit code. Where the browser runs on the machine itself, the terminal takes it and the prompt fills itself; otherwise type it at the prompt. It lives five minutes and works once.

Issue and activate

dxflow license activate

The engine asks the platform for its license, which is issued against the account holding it — validity 1 year, all core modules enabled — then downloads and activates it.

Authentication ties each license to a verified identity to prevent abuse; no payment or personal data is collected beyond what verification needs.

License format

{
  "identity": "your-machine-identity",
  "name": "License Name",
  "owner": "Anonymous",
  "starts": "Mon, 01 Jan 2025 00:00:00 GMT",
  "expires": "Mon, 01 Jan 2030 00:00:00 GMT",
  "permission": {
    "shell": {},
    "artifact": {},
    "runtime": {},
    "workflow": {},
    "agent": {}
  },
  "link": { "name": "dakumori", "count": 2 },
  "signature": "cryptographic-signature",
  "issued": "Mon, 01 Jan 2025 00:00:00 GMT"
}

link sits beside permission and carries a subdomain the platform allocated for the engine, with certificates already issued for it. The root serves the engine's own API and console, and count decides how many sub-labels workflow steps can publish on. It is the grant itself, so no permission flag goes with it. See Links.

Need a different license

The Free license fits a single engine. Write to info@dxflow.ai when you need any of:

  • A longer term — beyond the 1 year a Free license carries
  • Several engines — one license per Identity, issued together
  • Compliance requirements — a named owner, an agreed term, or a signed agreement

Tell us your engine Identity (dxflow engine info), the modules and limits you need, and the term. Licenses arrive the same way as any other: dxflow license activate picks them up.

When a Free license expires, delete it in the workspace and run dxflow license activate again.

Troubleshooting

ProblemFix
License not verifiedConfirm the file is unmodified, the license identity matches your machine, and the system date/time is correct
License expiredCheck the expiration date with dxflow license info, then delete it in the workspace and run dxflow license activate
Invalid license signatureThe file may be corrupted — download a fresh copy
License not found on activateThe engine holds no platform session — connect it with dxflow login

Check current status with dxflow license info, and report issues at GitHub.