Sashmark / Blog

Read parallel work in agent plans

Bobby Huang ·

Find what lets each branch begin and what ends it. Walk through the plan with one branch finishing first, then with the other finishing first. Find the later step that needs both branches finished. If a line depends on work from another branch but never says to wait, ask the agent to clarify that join before acting.

Key takeaways

  • Two branches can overlap without beginning or ending together.
  • Read each branch from its own beginning to its own ending.
  • A step after both branches waits for the later finish.
  • Question an unstated wait before acting on the plan.

An agent plan says two pieces of work can run in parallel. The next paragraph says to combine them. Before approving that work, read what can overlap and what has to wait. The branches can end separately even when they lead into one shared step.

For this invented plan, imagine a fictional reader named Jane Doe. Her draft and every action described here are made up. The Markdown comes from her AI agent. An explanation of .md file endings gives format context.

Find the beginning and ending of each branch

After Jane Doe chooses the passage, begin two branches in parallel. In the opening branch, read the chosen passage, then write a new opening paragraph. In the ending branch, read the chosen passage, then write a new final paragraph. After both paragraphs are written, combine them in a separate draft.

Both branches begin after Jane Doe chooses the passage. Within the opening branch, reading comes before writing the opening. Within the ending branch, reading comes before writing the final paragraph. Each branch ends with its own written paragraph.

Mark those boundaries in your own words beside the passage: "Opening branch begins after the choice; ends with the new opening. Ending branch begins after the choice; ends with the new final paragraph." These are reading marks, not claims that the work has happened.

The word "parallel" allows overlap. It does not require the first reading actions to begin together, and it does not require both paragraphs to be finished together. Keep the order within each branch apart from the order between branches.

Walk through two possible orders

Imagine the opening branch begins first. It reads the chosen passage and writes the new opening while the ending branch is still reading. At that moment, only the opening paragraph is ready. Combining the paragraphs still has to wait.

Now imagine the ending branch begins first and writes its paragraph before the opening branch has written anything. That also fits the plan. The ending paragraph waits while the opening branch finishes its reading and writing.

In both readings, the chosen passage comes before work in each branch. Each branch reads before writing. Both paragraphs precede the combined draft. What changes is which branch begins first and which paragraph becomes ready first. The plan leaves those relationships open.

Keep the same plan wording in view while trying both orders. You are not adding a new route through the work or choosing a preferred order. You are seeing whether a different order between branches still respects every stated wait.

Locate the step that waits for both

Return to the final sentence of the invented plan:

After both paragraphs are written, combine them in a separate draft.

This is the join. The opening paragraph alone does not let the combining step begin. The final paragraph alone does not let it begin. Whichever branch finishes later holds up that shared step.

Read "both" against the two branch endings you marked. It refers to the new opening and the new final paragraph, rather than merely to the two reading actions. If you move the join back to the end of reading, you let the combining step begin before the paragraphs it needs exist.

Keep the separate draft and the branch paragraphs distinct when discussing the join. Markdown file naming concerns their names; name the separate draft and the branch paragraphs in your question so the agent knows which paragraphs you mean.

Catch a wait the wording never states

Suppose the agent adds this line within the ending branch:

Write the final paragraph using the new opening paragraph.

The ending branch now needs something written by the opening branch. Yet the added line does not say when that new opening becomes ready. Try the ending-first reading again: the ending branch reaches writing while the opening paragraph is still unwritten.

Flag that gap directly: "The ending branch uses the new opening. Where does it wait for that paragraph? Can the reading still overlap while the writing waits?"

Do not silently move the whole ending branch after the whole opening branch. The plan may allow both readings to happen together while requiring only the final paragraph's writing to wait. Equally, do not assume all the work can overlap merely because the earlier sentence used "parallel." Leave that relationship unsettled until the agent answers.

Hold the action when the join is unclear

A shortened final sentence could create another gap:

After the opening paragraph is written, combine the paragraphs.

The sentence names one finish but the action still needs two paragraphs. Ask, "Does combining wait for the new final paragraph too, or use an earlier final paragraph?" Hold that combining action while the answer is missing. The distinction affects which text enters the separate draft.

Short plan lines can remain ordinary prose during this exchange. Markdown code blocks describe another way text can appear, but appearance does not answer which branch has to wait.

Return to the revised join after the answer. Read it once with the opening finishing first and once with the ending finishing first. The shared action needs a stated beginning that fits both readings, or an explicit wait that rules one of them out.

Where Sashmark fits

Sashmark's desktop app is in development, with reading plus editing of Markdown as its planned purpose for people working with text their AI agents write. Within the app, AI has no role. Deciding whether the plan permits an action remains with you.

Questions

Does parallel mean both branches finish together?
No. The work can overlap while one branch finishes before the other. Read the beginning and ending of each branch separately.
Does the branch written first have to happen first?
Its place on the page does not settle that. Look for wording that requires a wait, and ask about any dependence the plan leaves unstated.
What if the join names just one branch?
Read what the joining step needs from the other branch. If that work is still needed, hold the affected action and ask whether the step waits for both.

What Sashmark plans for v1: Features · Roadmap

View as Markdown