DocsWorkflows

Auto flows

Let Rusty choose the workflow for each message, and hand a running workflow over to another when what it finds changes the plan.

Workflows are most useful when the right one is running. Auto flows make that Rusty's job. There are two parts:

  • Auto chooses the workflow, or the single agent, for each message.
  • Allow flow switching lets a running workflow hand over to another when what a step found changes the plan.

Both use the same decision model (JEV) as automatic model selection, and both are on the record in observability.

Note

Auto flows need OpenRouter connected and a JEV decision model chosen, like automatic model selection. Without them the Auto entry does not appear in the Mode menu. A saved Auto chat still shows it, labelled Auto (needs OpenRouter and a JEV model), and answers with the single agent. See Automatic model selection.

Let Rusty choose the workflow (Auto)

Open the Mode menu in the workflow bar and choose Auto: choose a workflow for each message. From then on, Rusty decides for every message whether to answer directly or follow a workflow.

It chooses between Single agent, the read-only stages (Research & analyze, Architect & plan, Debug & plan a fix, Security audit & fix plan and Verify & review changes) and Build & verify. It looks at your message, an excerpt of the last result in the chat, and how the previous workflow ended. So after a Research & analyze run, "design it" goes to Architect & plan and builds on that result.

What Rusty finds What happens
A confident pick that cannot change files It starts straight away and says what it chose, for example ↳ AUTO · Stage: Research & analyze (88% confidence).
A confident pick that can change files (Build & verify) It asks first: Auto suggests "Stage: Build & verify". It can change files. Run it? You can run it, answer with the single agent instead, or pick a read-only alternative.
It is not sure It shows the likeliest options, with Single agent always among them, and runs the one you pick. Typing something else starts nothing.
The decision service cannot be reached It answers with the single agent and says why. A message is never blocked.

Auto never starts an end-to-end pipeline by itself: choose one from the Mode menu. Which workflows Auto may pick is decided by whether a workflow has a metadata.route.when description.

What counts as "can change files" is read from the profiles a workflow's steps use, so it holds for workflows you write too.

While a chat is on Auto, the skill menu is locked to build only while a workflow it chose is running. Between messages, and when Rusty answers with the single agent, your chosen skill applies as usual. A failed run resumes only if Auto chooses the same workflow for your next message; otherwise Rusty starts fresh.

Hand over mid-run

Sometimes a run shows it should be a different flow: a Plan step finds the request is really a bug, or Verify finds a security problem. Turn on Allow flow switching in the workflow bar and Rusty can hand the run over.

The setting is per chat, off by default, and saved with the chat. It appears once a workflow or Auto is selected, and works for a workflow you picked yourself as well as for Auto. A workflow that lists workflows it may hand over to (see below) is affected; the built-in workflows all list some.

With it on, the workflow is held after each step that has another step following it. The step finishes first. The next step waits while Rusty checks whether what was found means another workflow is the right one. The status line reads Checking whether to switch flows….

  • Usually it carries on. Anything short of a confident pick of another workflow continues as planned, and so does any failure of the check.
  • A confident pick hands over. The run ends, keeping what finished, and the next workflow starts in the same turn. It receives your request plus the outputs of the finished steps as context. The chat shows ↪ AUTO · Handing over to Stage: Debug & plan a fix (86% confidence), and the bar swaps to the new workflow's steps.
  • Switching to a workflow that can change files asks you first. The built-in workflows only hand over to read-only stages, so they never ask. A workflow of your own may name one that edits, and then you are asked.

A chat that followed one workflow now follows the one it handed over to, and keeps it for your next message. An Auto chat stays on Auto.

Limits

  • At most two hand-overs happen per message.
  • A workflow already run in the turn is never run again, so a hand-over cannot loop.
  • Stop ends the whole turn, including a check that is still pending.
  • Each workflow in a chain has its own budgets and limits.
  • Every check costs one decision-model request, and only workflows with something to hand over to make one.

What is sent to the decision model

Choosing and handing over each send a short prompt to the OpenRouter Decisions API, using your OpenRouter key and your chosen JEV model. They are not sent to the provider of the model that does your work.

Decision What it sees
Choosing a workflow Your message (up to 4,000 characters), an excerpt of the last result (up to 2,000 characters), the name and outcome of the previous workflow run, and a one-line description of each workflow it may pick.
Handing over The request the workflow was started with (up to 4,000 characters), the outputs of the steps finished so far (up to 3,000 characters each and 9,000 in total, latest first), the names of the steps still to run, and a description of each workflow it may hand over to.

No files are read for these decisions. Choosing a workflow sees only what you typed, not your attachments. A hand-over check sees the request as the workflow received it, which includes any attached file context, within that 4,000-character limit, and the step outputs, which can quote your code. If the decision service takes longer than about 10 seconds, Rusty carries on without it.

Opt your own workflows in

Two optional fields in a workflow's metadata connect it to Auto and to flow switching. The built-in workflows set them; yours can too.

"metadata": {
  "route": { "when": "The user wants to understand how existing functionality works before deciding anything." },
  "switch_to": ["diagnose", "security-audit"]
}

route.when describes when the workflow is the right one for a message, and a workflow without it is never picked by Auto. switch_to lists the workflows this one may hand over to, and a workflow without it never hands over. Write when as a description of the situation, not of the steps: "Something is broken and the user wants the cause found" routes better than "Runs Debug and Plan". The full format is in Choosing and switching flows.

Confidence

The confidence needed to act on a pick follows Act on JEV's pick at confidence under Settings → Intelligence (60% or higher by default), the same setting JEV decisions use. Below it, Auto asks you and a running workflow carries on.

See what it decided

Each decision is recorded in Tool Execution Observability as AUTO flow selection or AUTO flow switching, with the request, the probabilities, the confidence and what the decision cost.

Troubleshooting

The Auto entry is missing. Connect OpenRouter, refresh its model catalog and choose a JEV decision model. See Automatic model selection.

It always asks me. A pick that can change files always asks, and so does any pick below the confidence setting. Lower the setting if you are comfortable with that, or choose the workflow yourself.

The message says Could not choose a workflow. The decision service could not be reached or answered with an error, so Rusty answered with the single agent. The reason follows in the message.

A workflow never hands over. Check that Allow flow switching is on, that the workflow lists workflows it may hand over to, that the step that just finished is not the last one, and that you have not already used both hand-overs this message. The check carries on unless it is confident, so it is normal for most runs to finish where they started.

A stage did not build on the last result. The context is the last assistant result in the chat. A new chat starts clean, and the built-in Plan, build, verify does not read it.

Esc

Type to search the docs.