Early Access. Commands and behavior can change between releases.
.architech/factory/factory.yaml. Both onboarding and architech factory init write this one format, architech/factory/v2.
Example
A Cloud Factory for one GitHub repository. Replace the owner, project number and repository with yours. Configure your Factory has a longer example with a comment on every key.Keys
These are all the top-level keys. Any other top-level key is refused.
Push lists the stored-but-unused fields as accepted, not applied:
metadata.description,
default, issues, every board except the selected one, and mode (pushing, not this field,
makes a Factory a Cloud one).
Status mapping
Map only the columns you have.
dropped is a canonical status too. Unknown keys, blank values
and empty maps are refused.- An unmapped status is not mirrored to the board.
- If you leave
statusMapout, Cloud uses its default map. That is not the same as mapping nothing.
statusMap is left out, Cloud uses:
See all canonical statuses.
Labels
Each key underlabels is a role; its value is the label name on your board or repository.
Agents use these names instead of inventing their own. Any other key under labels is refused.
“A person” means a GitHub user with write access to the repository. A label added by a bot, an app
or the Factory doesn’t approve anything. See approvals by label.
Triggers
triggers is a flat list. Each trigger has exactly three keys:
Give
run.stage or run.command, not both. A schedule trigger needs run.command.
Without a triggers key, three defaults apply; triggers: [] turns off every trigger from the
file. See the Triggers and routines for what each event starts, and for routines.
Refused keys
architech factory validate and push refuse these keys and name where the setting lives instead.
Choose models per role
There are five framework roles:orchestrator, architect, developer, llm-whisperer and
reviewer. A role you don’t list runs on the architech harness with your workspace’s default
model. Override a role in the file:
provider:model names your workspace lists. The dry run checks each role’s model,
Environment and effort level, and reports any refusal before anything is pushed. You can’t rename
or replace a framework role. agents.repoAgents.allow lists your repository’s own agents, never a
framework role.
To list every field with its type and default, ask the installed CLI:
--remote fetches Cloud’s copy and needs sign-in.
Validate and synchronize
.architech/factory/factory.yaml. A factory name picks
.architech/factory/factory-<name>.yaml; you can also pass a path. Push and pull can commit
changes, so read their result before other Git work.
See configuration drift and warnings.