grok-bot

Grok Bot desk handoff: passing work between bots with a state file

A desk handoff is a pattern for passing work from one Grok Bot to another: the bot finishing a step writes a short state file (what's done, what's next, who owns it, what's blocking), then messages the next bot. The next bot reads the file before it acts. Grok Bot gives you the pieces: separate bots with their own chat and memory, asynchronous messages between bots, and group chats. The state file is a convention you add on top so the record doesn't live only in someone's chat history.

Who this is for

You run more than one Grok Bot, say a writer, a reviewer, and a publisher, and work is starting to fall between them: a bot redoes something already done, or a message says "ready" with no clue where the output is.

What Grok Bot does, and what you add

Built into Grok BotPattern you add
Separate desksEach bot is its own assistant with its own chat and memoryOne clear job per bot, written in its instructions
Nudging the next deskBots can message each other asynchronouslyA message that points to the state file, not a full recap
Group coordinationBots can be put in group chatsA lead bot that assigns owners (a role, not a feature)
Consequential actionsA stop-before-send rule you write into the bot description"A handoff passes work, not permission" in every desk's rules
The record—A state file per task in an agreed folder

Because each bot keeps its own memory, the next desk doesn't automatically know what the last one did. That gap is exactly what the state file fills.

The state file

Keep it short enough to read in one pass. One file per task, with a predictable name like `handoff/<task-id>.md`:

markdown
# Task: B45 draft
Status: draft done, waiting on review
Owner (next step): Reviewer
Inputs: briefs/45-grok-bot-desk-handoff.md
Outputs: drafts/45-grok-bot-desk-handoff.md
Blockers: none
Not approved yet: publishing
Updated: 2026-10-14 by Writer

Then the message: "B45 draft is done. State is in `handoff/b45.md`." The file is the record; the message is the nudge.

Pitfalls

  • Two owners. If two bots both believe a task is theirs, you get duplicate work. One named owner per task, and every bot checks the file before starting.
  • Reassigning by chat. Asking two bots at once creates races. Reassign by editing the owner line, then message the new owner.
  • Status only in messages. Messages arrive later and get buried. If it isn't in the file, the next desk shouldn't assume it.
  • Treating handoff as approval. The receiving bot has the same limits as the sender. Sends, posts, and spend still wait for you.

How to check it

  1. Pick a task and read only its state file. Can you tell who acts next and where the output is? If not, the file is too thin.
  2. Look for any task with no owner or two owners.
  3. Check that no desk took a send or publish step after a handoff without your approval.

Where ShipKits fits

The Operator Pack ($47) is markdown seats + skills + install.sh — not a hosted app, not a chatbot. Seven named seats, three skills, an ops playbook and a token-cost playbook. Done means a file, PR, or URL. Adding a handoff section to each role ("read the state file first, update it last") is a quick way to put this pattern into practice. Soft path: start at /free. Cheat Sheet for the skim checklist mindset.

Soft next step

Pick one task that crosses two of your bots and give it a state file before the next handoff. Soft ladder: /free, then the Operator Pack ($47).

FAQ

How do Grok Bot desks hand work to each other?+

A good pattern: one bot finishes its step, writes the result and next action to a shared file, and messages the next bot. The file is the record; the message is the nudge.

What goes in a handoff state file?+

The task, its current status, who owns the next step, links to inputs and outputs, and any open blockers. Keep it short enough to read in one pass.

Where should handoff files live?+

In one agreed folder every bot involved can read and write, with a predictable name per task. Give each file one owner, and leave a handoff note.

How do I avoid two bots doing the same task?+

Give each task a single named owner in the state file, and have bots check ownership before starting. Reassign by editing the file, not by asking two bots at once.

Who approves actions after a handoff?+

The same person as before. A handoff passes work, not permission. Put a stop-before-send rule in every desk's description so it holds after a handoff.

How does a lead bot fit the handoff?+

If you set one up, a lead bot is a role you define: it assigns owners, watches the state files, and reroutes blocked work. Other desks do the tasks and report back to it.

Get the free starter

Value first, then a kit when you are ready. No fake urgency. Start with Harness Desk Starter at /free.