Keep each step single-purpose
Good workflow steps do one thing clearly:
- normalize input
- plan
- generate
- review
- export
Bad workflow steps try to analyze, draft, critique, and format all at once.
Name inputs and steps like stable API fields
Use names you will still understand later:
product_contextfeature_descriptionreview_edge_casesexport_plan
Stable names make prompt references safer and clearer.
Put stable logic in prompts, changing context in inputs
Do not turn every instruction into a workflow input.
Use inputs for values that change often:
- audience
- source material
- constraints
- target platform
Keep the durable reasoning structure in the prompt template.
Separate generation from review
If quality matters, use at least two steps:
- generate the draft
- review or improve the draft
This makes failures easier to diagnose and reruns much cheaper.
Add an explicit export step
Use a final export step when the workflow output needs a consistent shape.
That step is the best place to:
- standardize headings
- package earlier outputs together
- remove repetition
- prepare markdown or JSON-friendly output
Start cheap, pin only where needed
Do not pin models everywhere by default.
A good starting pattern is:
- let run mode handle defaults
- pin a stronger model only on reasoning or critical generation steps
- keep export and formatting steps cheap
Design for reruns
Assume one step will need adjustment later.
That means:
- avoid giant prompts
- keep step outputs reusable
- avoid hidden assumptions between far-apart steps
- use named step references when a later step depends on a specific artifact
Use starter workflows as scaffolds
Starter workflows are a good base, not a fixed endpoint.
Use them to:
- learn a good workflow shape
- shorten setup time
- fork or duplicate into your own version
- replace generic prompts with domain-specific instructions