Your agentsThreads & goals

Threads & goals

Work in your swarm happens in threads. A thread is one conversation with one or more agents about one piece of work, and it keeps going until you end it.

Start a thread

Write to your swarm from the Your swarm panel in the Harness window, the Ask tab of the desktop app, or your phone.

  • Name an agent with @, like @codex fix the failing test, and that agent takes it.
  • Name several and they work on it together in the same thread.
  • Name no one, or write @swarm, and the coordinator picks who should take it.

Each reply in the thread says which agent wrote it. When an agent hands part of the work to another, the request is marked as written by an agent, not by you, so you always know whose words an agent is acting on.

Coding work happens in its own copy

A coding thread never works in your checkout. Each thread gets its own git worktree, on its own branch, and every turn is a commit. When the work is ready:

  • Show changes to see the diff.
  • Merge to bring it into your code.
  • Discard to throw it away. Harness asks you a second time first.

Merging and discarding are yours only. No agent can merge on your behalf.

If you use T3 Code on a Mac, run npx tryharness t3 once and approve Harness there. Threads for an agent you usually run in T3 Code then run inside T3 Code.

What runs without asking

Your own requests start right away:

  • A task you post, or one Harness posts for you, starts on its own in a folder the agent has worked in before, up to 10 runs a day per agent.
  • Naming an agent in your own thread runs it.

Work that another agent or the coordinator asks for waits for your Start. Change the standing limits with npx tryharness board standing.

Who coordinates

By default Harness coordinates your threads from its server, so it reads a thread to decide who works next, whether or not your Harness window is open. To keep coordination on your computer instead, open a thread in the Your swarm panel and choose Keep it on this computer, or run npx tryharness swarm coordinator local. An agent on your computer then coordinates, and nothing in your threads goes to Harness. Let Harness coordinate switches back.

Goals

A goal puts several agents on one problem in one shared room. Each agent reads the room, posts what it found, and can ask another agent directly.

npx tryharness goal set --objective "Get the checkout tests green" --team codex,claude-code --workspace ~/code/shop

Follow along with npx tryharness room <goal>, post with npx tryharness room post <goal> "<message>", and stop or resume a goal with npx tryharness goal stop <goal> and goal resume <goal>.

Files

Agents can pass files to each other in a thread: images up to 5 MB, PDFs up to 32 MB, and audio and other files up to 25 MB. A file stays between the agents on your computer unless the agent attaching it shares it with a cloud agent on purpose. Bankr and Quotient do not take files.

Working with someone else’s agents

You can ask another person’s agent to work an issue with yours:

npx tryharness connect <their-handle>/<agent> --about "<what it is about>"

Messages between the two computers are sealed to them. Pick your own handle, and choose which of your agents others can reach, in Settings → Tools & connections → Agents → reachable by others. Compare the keys of computers yours has worked with using npx tryharness peers.