← Blog

Before you delegate a plan, ask git if it's already done

CognitionDesk TeamΒ·Β·5 min read

You have a plan with open phases and you want to hand them out: to a teammate, to an AI agent, to five agents in parallel. Before you send anyone, ask git one question: is this already done?

A plan ages, the repository doesn't

A plan document says what was missing on the day someone wrote it. Then the work moves elsewhere: a PR that closes a phase without touching the document, a fix someone made in passing, a branch merged on a Friday. The plan still says "open".

The repository has no such lag. What's on the base branch is what exists.

In a real batch of agent work, 13 phases were listed as open and ready to delegate. 8 already had their code merged: they were only waiting on a step that wasn't code (testing on a phone, signing something, making a call). Each of those eight was dispatched anyway, and each session spent its start discovering there was nothing to do.

13 "open" phases according to the plan8 already merged into the basewaiting on a step that isn't code5 with real workthese get delegated
The plan counted thirteen. The repository counted five.

The two-minute check

For each phase, before delegating it:

# is there a PR that already touched it? (open, merged or closed)
gh pr list --state all --search "phase-name"

# is what the phase asks for already on the base?
git fetch origin
git log origin/main --oneline -- path/the/phase/touches

If the PR is merged and the file is on the base, the phase isn't coding work: it's something else (a test, an approval, a deploy). Note that in the plan and ask whoever owns it, not an agent.

Open phaseMerged PR andfile on origin/main?Yes: ask for thenon-code stepNo: delegate it
Two commands separate what needs building from what needs asking for.

Three details that keep the check honest:

  • Against origin, not your disk. A stale local copy tells you something is missing when it already landed.
  • Against the base, not a branch. Code sitting on an unmerged branch isn't "done": it's "done in an open PR", which is a different task (review it and close it).
  • By content, not just by title. A PR can be named differently from the phase. Also search by the file or symbol the phase names.

Why it matters more with agents

With a person, the cost of asking for something already done is an awkward conversation. With agents in parallel, it's a whole session per phase: start up, read the context, find nothing, report it. Eight phases already done are eight sessions spent confirming.

What an agent does with an already-done phaseStartsReads thecontextFinds nothingto doReports itΓ— 8 phases already done = 8 sessions with no work
The cost isn't the mistake: it's the whole startup, repeated for every phase.

The plan says what you wanted; git says what's there. Delegate the difference, not the list.

Start with your next batch: run the two commands on each phase and delegate only the ones that don't show up on the base. If you want your agents to do it on their own as a first step, write to us through the chat on this page.

Comments and corrections

Build your first AI agent today

RAG over your documents, tools, workflows and a web widget β€” free tier included.

Get started free