Using Stride With a Team
Coordinate multiple developers and their AI agents on the same board by assigning goals to specific people.
Why Goal Assignment Matters for Teams
When several developers run AI agents on one board, the agents share one pool of work. Without a plan, one person's agent can claim a task someone else meant to do. That leads to merge conflicts and wasted effort.
Assign a goal to one developer to make it their lane of work:
- Only their agents can claim the goal's tasks.
- Child tasks that agents or the API add to the goal get the same assignee.
- Other developers' agents skip those tasks when they ask for work.
The rest of this guide shows how to set this up.
Plan the Work as Goals, Not Flat Tasks
Team assignment works best when work is grouped into goals with child tasks. Before you assign anything, make each big piece of work a goal:
- A goal is a larger piece of work, such as Billing rewrite or Search performance.
- Child tasks are the work items under it: work tasks (W) and defects (D).
To make a goal, click New goal at the top of the board. To put a task under a goal, pick the goal in the task's Parent Goal field. The goal's card shows how many of its children are done, and each child shows the goal it belongs to.
If two developers could each own a different part of the work, make each part its own goal. You assign at the goal level, so the goal is also the line of ownership.
Assign Each Goal to a Developer
Hover over the goal's card and click the pencil to open the Edit Task form. Set Assigned To to the developer who will own the goal, then click Save Task. Read-only members aren't in the list.
When you save:
- Every unfinished child task gets the same assignee, all in one step.
- A message says how many children changed, for example: Task updated successfully. 3 child tasks were also updated.
- People who have the board open see the change without reloading.
- Finished children keep their old assignee, so the record of who did them stays the same.
Do this for each goal. One developer can own many goals. A goal left as Unassigned stays in the shared pool.
Run Agents Per Developer
Each developer runs their own AI agent, such as Claude Code, Copilot or Cursor. Each agent uses an API token its developer made on the board's Tokens tab. When the agent calls GET /api/tasks/next, Stride filters the list for that developer:
- Tasks assigned to them are included.
- Unassigned tasks are included. This is the shared pool.
- Tasks assigned to someone else are left out.
No one needs to leave notes asking others not to take a task. The assignments are how the team coordinates, and Stride checks them on every claim.
If an agent tries to claim someone else's task, for example by its identifier, Stride refuses with a 403 error. The message says the task is assigned to a different user and only that user can claim it. The agent should skip the task and call GET /api/tasks/next again. That endpoint already leaves such tasks out, so the error is rare.
Adding New Tasks Mid-Flight
When an agent or the API adds a child task to an assigned goal, the new task gets the goal's assignee. This includes goals created in one batch with their tasks, so you don't have to set it.
The task form is different. It always sends its own Assigned To value. When you add a child in the form, set Assigned To to the goal's owner. Leave it as Unassigned if anyone's agent may pick it up.
An assignee you choose always wins over the goal's. If the goal's owner has a disabled account, the new task starts unassigned.
Handing a Goal Off
When a developer moves off a goal, for a holiday or a new sprint, open the goal's Edit Task form. Change Assigned To to the new owner and click Save Task.
In one step:
- The goal moves to the new owner.
- Every unfinished child task moves with it.
- Each task's history records the change.
- The old owner's agents stop seeing the work the next time they ask for tasks.
- The new owner's agents pick it up the next time they ask.
You don't have to reassign tasks one by one. Setting the goal back to Unassigned works the same way: every unfinished child goes back to the shared pool.
Best Practices for Team Workflows
- Give each goal one owner at a time. If two developers work on the same goal, it's too big. Split it into two goals.
- Use the unassigned pool for shared work. Small fixes and tasks anyone could do belong in unassigned goals, or as unassigned tasks. You don't have to assign everything.
- Tell the team when you hand a goal off. Stride moves the work, but people still need to know who owns what.
- Check who owns what during planning or retros. Look for one developer with too many goals, or important goals with no owner. One change to Assigned To fixes each one.
You're all set!
You've completed all the steps in this guide.