Getting Started
Choose one outcome, complete it, and retain its identifiers and evidence before adding complexity. The shortest reliable first path is a small hosted image build with explicit tests.
Prerequisites
- a current browser;
- an OpenFactory account for saved conversations and owner-scoped builds;
- a clear target distribution and intended use;
- a short list of required packages or services;
- one or more observable checks that define success.
Do not place passwords, private keys, tokens, or private repository credentials in a chat prompt or saved recipe.
Recommended First Path
- Create your account.
- Follow Your First Build with one OS, one user, and a small package set.
- Compare the normalized recipe with your original request.
- Follow the build ID through queue, build, finalization, and selected tests.
- Download only after artifact finalization and inspect the checksum and evidence provided.
- Add one change and verify that the active recipe preserved the earlier chat requirements.
Other Paths
| Goal | Start here | Boundary |
|---|---|---|
| Understand a recipe before building | Understanding Recipes | Validation is not build proof |
| Use exact JSON fields | Recipe Schema | Unknown fields may be ignored; inspect normalized output |
| Add VM assertions | Testing | Automated checks cover only their declared observations |
| Connect an assistant | MCP Integration | Keep keys private and verify tool effects |
| Evaluate local KVM management | Self-Hosted VM Console | The public Compose path is not the hosted builder or a production control plane |
A Useful First Prompt
Build a Debian 13 server image with OpenSSH and curl.
Create a password-locked deploy user in the sudo group.
Verify boot, the deploy user, the enabled SSH service, and the curl package.
Do not add Docker, a desktop, an installer, or external repositories.This prompt names the outcome, positive requirements, observable checks, and explicit exclusions. It is easier to review than “build me a secure server,” which leaves security scope and evidence undefined.
When to Stop and Investigate
Stop before retrying when the recipe omits explicit intent, no build ID appears, the build waits on recovery, progress is unchanged without log activity, tests and build status disagree, or a download reports not found/forbidden/package creation failure. Preserve the conversation ID, build ID, timestamp, and exact state so the original failure remains diagnosable.