Skip to content

Bot

Complex work becomes a list of small requests.

Separator reads a long ask, breaks it into typed parts, and calls a different model for each part. The list is the result. Nothing is merged in secret.

Fan-out

One ask becomes a list of hops.

Close the month, write the summary, and check the contract. The sentence holds three jobs. Allow keeps the lanes you permit and marks the rest pending. The parts come back unmerged. They are not rewritten into one paragraph.

Close the month, write the summary, and check the contract.

  • ops-1

    Close the month

    workflow

  • write-1

    Write the summary

    prose

  • reason-1 pending

    Check the contract

    judgment

Fanout<Request, Part[]> · a local split, no model call

Fan-out

The list is the result.

Bot is the name for Fanout<Request, Part[]>. Each part names its type and its lane. If your system needs a strict order, sequence the calls yourself from parts you already accept. Do not infer a pipeline from the order of the sentences.

Close the month, write the summary, and check the contract.

  • Close the monthops-1
  • Write the summarywrite-1
  • Check the contractreason-1

A missing lane

A refused part does not borrow another.

If the allow-list permits ops-1 and write-1 but not reason-1, the close and the summary still return. The judgment is pending. Separator does not send that judgment to write-1 to fill the gap.

  • Close the monthops-1
  • Write the summarywrite-1
  • Check the contractpending

Separator

Put a typed route in front of the models you already call.

Decision

explanation

reason-1

4.2 ms

reason-1code-1write-1ops-1intake