Skip to content

Working with Tasks ​

The Tasks pool is SideButton's drop-&-forget work queue. Paste in tickets — a single key, a whole epic, or a JQL query — and each becomes a pooled task that picks up a playbook and runs on its own once its blockers clear. It is the batch counterpart to Playbooks: where a playbook run is one ticket you start and watch, the pool is many tickets you drop and leave to the scheduler.

Every task maps to a playbook run — sometimes several, across rework and reopen — and every run is a chain of jobs worked by your agents. The most common gesture is the one this page walks through: paste an epic link, review the plan, and approve — the fleet then works the whole epic in dependency order.

The empty Tasks page: the intake card with List, Epic, JQL and Create modes sits above an empty pool reading "No tasks in the pool"


How the pool works ​

  1. You drop work in — paste ticket keys or links, an epic, or a JQL query. Tasks intake is the only thing that creates pooled tasks, and it is built for batches.
  2. Each ticket gets a suggested playbook — resolved from its issue type (a bug suggests Bug Fix, a story suggests Feature Implementation, and so on). You can change it per ticket before approving.
  3. Blockers are read from the tracker — a ticket's "is blocked by" links become task dependencies whenever the blocking ticket is also in the pool. Links to tickets outside the pool never hold a run.
  4. You approve — approved tasks land as Waiting, and the scheduler starts each one as agents free up, honoring the blocked-by order so dependent work runs last.
  5. Agents work the tickets — each run reports to its ticket step by step, exactly as described in Orchestrating Agents.

Four ways to add work ​

The intake card at the top of the page has four modes:

ModeWhat it adds
ListEach key or link becomes one pooled ticket — commas, spaces or new lines all work, across any project.
EpicAn epic and all of its child issues, from one paste.
JQLEvery issue matching a JQL query.
CreateA brand-new ticket written from your description, pooled as Pending.

Most real work starts in Epic mode — paste the epic and let the pool expand it.


Add an epic and its children ​

Switch to Epic, paste the epic's key or browse-link, and the pool resolves it: the epic plus every child issue, with the blocked-by links between them already counted. The preview line — "N tickets · 1 workspace · N blocked-by links" — tells you exactly what you are about to add before you commit.

Epic mode with an epic link pasted; the preview reads 13 tickets, 1 workspace, 29 blocked-by links, above the list of child issues and the Add and Add & approve buttons


Add, or Add & approve ​

Two buttons commit the batch, and the difference is whether work starts immediately:

ButtonWhat happens
AddPools every ticket as Pending. Nothing runs — the batch waits for you to review and approve it, ticket by ticket.
Add & approveTrusts each ticket's suggested playbook and starts the runs in dependency order, right away.

Add & approve is the fast path once you trust the suggestions. Add is for when you want to look first — swap a playbook, add a missing dependency — which is what the next section covers.


Review before agents start ​

After Add, the batch sits in the Active tasks band under "N need action" — every pooled-but-unapproved ticket, each with the controls to adjust it.

The Active tasks band after Add: pending rows each carry a playbook dropdown, blocked-by chips, a "+ blocked by" button, and Approve and remove controls, with an Approve all button above them

Swap a playbook. Each row shows its suggested playbook as a dropdown. Open it to pick a different recipe — for example, promoting a story from Feature Implementation to Deep Feature Implementation.

The per-row playbook dropdown open, listing Bug Fix, Epic Analysis, Epic Plan, Feature Implementation, Hotfix, Deep Feature Implementation, Dev Spike and Sidebutton Bug Fix

Add a blocker. The blocked-by chips show dependencies carried over from the tracker. Use + blocked by to add one by hand — search the pool and pick the ticket(s) this one should wait for. A task never starts while any of its blockers is unfinished.

The "Block by — pick ticket(s)" popover for the selected task, with a search box and a scrollable list of pooled tickets to choose as blockers

Approve. Approve a row on its own with Approve →, or clear the whole batch with Approve all. Approving flips a task from Pending to Waiting; a ticket with no playbook cannot be approved until you pick one. Remove anything you did not mean to add with the ✕.


Watch it run ​

Once approved, tasks flow through the same band, now ordered needs-you first, then in flight: whatever still needs you stays on top, and the running and waiting tasks sit below. Each approved task starts the moment its blockers clear and an agent is free — so an epic drains itself in the right order without you shepherding it.

The Active tasks band after approval: running tasks show their agent, elapsed time and run number, while waiting tasks show their blocked-by chips and an hourglass

Click any task to open its run preview on the right — the live step ribbon, activity feed, elapsed time and cost, without leaving the page. Open full run ↗ takes you to the complete transcript.

The run preview rail for a running task, showing the playbook steps from Investigate + Plan through Finish, a live activity log, elapsed time and cost, and an Open full run link

Everything you have ever pooled lives in the All tasks ledger below the band — searchable by key, title, playbook or blocker, filterable by playbook, type and status, and sortable. Each row links straight to its run.

The All tasks ledger: a search box, playbook filter chips, Type and Status filters, and a table of tasks with playbook, blocked-by, progress, status, duration and run columns


Good to know ​

  • Tasks is drop-&-forget; Playbooks is work-&-watch. Use the pool for batches you want the scheduler to run; use Playbooks intake to run a single ticket now with hands-on options. Playbooks intake never writes to the pool.
  • A task maps to one run — or several. Rework, a reopen, or a failed gate can give one task more than one run over its life; the ledger keeps them all.
  • Blockers only bind inside the pool. A "blocked by" link holds a run only when the blocking ticket is pooled too; links to tickets outside the pool are ignored.
  • Suggestions resolve through issue-type routing. The suggested playbook comes from your account's issue-type → playbook map (Issue type routing on the Playbooks page); a type with no mapping falls back to the seeded default. Override it per ticket, or set a whole-batch playbook in ⚙ Options before adding.
  • Batch options. The intake card's ⚙ Options sets the effort tier, tracker-status sync, and a shared hint applied to everything in the batch.

Released under the Apache-2.0 License.