Manage multi-step automation workflows.
Create or update a workflow with interactive step entry.
byo workflows set --name <name> --bookmark <path>| Option | Required | Description |
|---|---|---|
--name |
Yes | Workflow name |
--bookmark |
Yes | Bookmark hierarchy path |
Supports these step types:
- Message
- YesNoQuestion
- InputAsSetting
- InputAsSecret
- ExecuteCommand
Steps execute in the order created.
When you run byo workflows set, BYO repeatedly asks you to choose a step type and configure it.
Use this step to display status updates, guidance, or checkpoints.
Interactive prompts:
Enter message to displaySelect message colorWait for user to press Enter after displaying message?
Fields captured:
Prompt(the text to show)Color(for terminal output)WaitForEnter(Yes/No)
Good use cases:
- Start/end banners (for example, "Starting deployment")
- Human-readable progress markers
- Manual pause points before sensitive actions
Use this step for confirmation gates.
Interactive prompts:
Enter question to askInterrupt workflow if answer is No?
Fields captured:
Prompt(question text)InterruptOnNo(Yes/No)
Behavior notes:
- If
InterruptOnNois enabled and the answer isNo, the workflow stops. - If disabled, the workflow continues regardless of answer.
Good use cases:
- "Proceed with production deployment?"
- "Did backup complete successfully?"
Use this step to collect runtime input and store it as a setting.
Interactive prompts:
Enter prompt messageEnter setting key name
Fields captured:
Prompt(what to ask)StorageKey(setting key to save value into)
Behavior notes:
- Value is stored as a regular (non-secret) setting.
- The saved key can be referenced later with token syntax (for example
{{MyKey}}).
Good use cases:
- Branch name
- Environment name (
dev,staging,prod) - Non-sensitive URLs or IDs
Use this step to collect sensitive input and store it as a secret.
Interactive prompts:
Enter prompt messageEnter secret key name
Fields captured:
Prompt(what to ask)StorageKey(secret key to save value into)
Behavior notes:
- Value is stored via the secrets system (encrypted at rest).
- The saved key can be referenced later with token syntax.
Good use cases:
- Temporary API tokens
- One-time passwords
- Per-run credentials
Use this step to run an existing saved command from the command library.
Interactive prompts:
Select commandRun this command asynchronously in background?
Fields captured:
CommandName(selected saved command)RunAsync(Yes/No)
Behavior notes:
- Requires at least one saved command to exist.
- If no commands exist, BYO shows an error and asks for another step choice.
- Command execution supports token replacement the same way as
byo run --target command.
Good use cases:
- Build, test, package, deploy sequences
- API smoke checks
- Cleanup and verification commands
Typical production workflow structure:
Message— announce startYesNoQuestion— confirm continuationInputAsSetting— collect environment/branchInputAsSecret— collect temporary tokenExecuteCommand— run buildExecuteCommand— run deployMessage— announce completion
- Keep each step focused on one action.
- Add
Messagesteps before and after risky operations. - Use
YesNoQuestionbefore irreversible changes. - Prefer
InputAsSecretfor anything credential-like. - Reuse saved commands in
ExecuteCommandsteps to keep workflows maintainable.
List workflows.
byo workflows listDelete a workflow.
byo workflows delete- Uses interactive selection
- Confirms before delete