Tutorials Search / Native Mac IDE / Navigate background agents with the Agent View
📝 Written ● Intermediate Updated 2026-05-17

Navigate background agents with the Agent View

When you've got multiple agents running, which one needs you, which is done, which is burning money? The Agents sidebar is the cockpit for triaging them at a glance. This tutorial walks the panel top to bottom — the row anatomy, the status grouping, the peek pane, the dispatch input — and explains the one trust decision you make before you fire anything off.

The chat tab is where you drive an agent turn by turn. The Agent View is where you watch the ones you've stopped driving. Most days you'll have both: a chat in front of you for the thing you're actively thinking about, and three or four dispatched jobs running off to the side — a test suite, a refactor, a snapshot pass — that you'll check on later. The Agents panel is the dashboard for that second pile.

What you'll learn

Step 1: The mental model

1

Two kinds of agent work, one roster

An "agent" in the Agent View is a Claude Code session — but those sessions show up here for three different reasons:

  • Active — chat tabs you have open in the editor right now. You're driving them.
  • Background jobs — agents you dispatched and walked away from. They run detached.
  • Recent — past chat sessions you've saved. Inert, ready to be reopened as a tab.

The grouping isn't decorative. Each group answers a different question: "what am I working on?", "what needs me now?", and "what did I do recently?" If you only remember one thing from this tutorial, remember which group answers which question — the rest of the panel hangs off that distinction.

This is not the same as the in-tab history popup. Each Claude chat tab has its own "open a past session" picker. The Agent View shows the top 20 across all of them, plus everything that's currently running anywhere. Think of it as the cross-tab view.

Step 2: Open the panel

2

Activity bar, fourth icon from the top

Click the Agents button in the activity bar — the stack-of-rectangles icon, fourth from the top, below Source Control. Hover any activity-bar icon to confirm the label; the Agents one is labeled "Agents."

There's no keyboard shortcut for opening the panel today. If you live in the activity bar, you'll learn the position by muscle memory in a few days.

If you've never dispatched a background agent and don't have a Claude chat tab open, you'll see an empty state: "No active sessions — Open a Claude tab or dispatch a background agent above." That's expected — the panel is dynamic, it doesn't pre-populate anything.

Step 3: Anatomy of the panel

3

Top to bottom: header → dispatch → list → peek

The panel has four stacked regions. Knowing what each one is for makes the rest of the tutorial much easier.

RegionWhat's thereWhat it's for
Header "AGENTS" title + refresh button (↻) Force a re-scan of ~/.lingcode/jobs/ if a job's status looks stale.
Dispatch bar Text field "Dispatch a background agent…" + send button Type a goal, hit ↩, walk away. See Step 5.
Grouped list Active → status groups → Recent The roster. Click a row to act on it.
Peek pane (when a background row is selected) Transcript + reply input at the bottom half Observability without leaving the sidebar. See Step 6.

Background jobs are grouped by status: Working, Idle, Completed, Failed, Stopped. The grouping makes "what needs me now" obvious — anything under Failed or Working with a long age is what to look at first.

Step 4: Read a row at a glance

4

Five triage signals per row

Each background-job row crams five pieces of information into one line. Read left to right, but treat each signal as independent — you rarely need all five at once.

  • Status icon (leftmost). Pulsing dotted accent dot = Working. Yellow ? = needs input. Empty gray circle = Idle. Green ✓ = Completed. Red ! = Failed. Gray stop = Stopped. This is your "do I need to act" channel.
  • Name with a pin icon (rotated 45°) if pinned. The name is auto-generated on dispatch from the prompt's first words — rename it (Step 7) if it's not scannable.
  • Activity vs. summary line. While the job is Working, this shows the live tool call ("bash run_tests.sh", "read package.json"). Once it transitions to Idle or Completed, it flips to the agent's final summary text. One channel, two meanings — depending on whether the row is "in flight" or "landed."
  • Cost badge (monospaced, e.g. $0.0423). Only shown once the job has spent something. Early warning for a runaway loop — if a row's cost climbs faster than you expect, intervene.
  • PR dot (small colored circle). Purple = at least one PR is merged. Green = all PRs have checks passing. Yellow = at least one is pending or failing. Gray = unknown (no checks reported yet). If there's more than one PR, the count appears next to the dot. Hover for a tooltip like "2/3 merged" or "Checks pending."
  • Relative age (rightmost, monospaced). 30s, 5m, 2h, 3d. Tells you how stale the row is — a Working row that hasn't updated in an hour is probably stuck.

You don't need to memorize the color codes — hover anything and the tooltip tells you. The point of this section is to know that each glyph means something specific, so you don't tune them out.

"Active" rows behave differently. A row under the Active group is a live chat tab in your editor. Clicking it jumps the editor to that tab — it does not open the peek pane below. Background-job rows (under the status groups) are the ones that open the peek pane. Recent rows reload as a new tab. Same panel, three behaviors, depending on which group the row lives in.

Step 5: Dispatch a background agent

5

Type a goal, hit ↩, walk away

Type a complete goal into the dispatch bar — "run the test suite and fix any failing snapshots" — and hit ↩ (or click the send arrow). The agent starts immediately in a detached process, the dispatch field clears, and a new row appears under the Working group within a second or two. You can close the Agents panel, switch projects, even close the window — the job keeps running.

The job runs in the current project's root folder (whatever's open in the editor). If no folder is open, it falls back to your home directory.

Read the sub-label: "Runs detached with bypassPermissions; close the panel any time." The dispatched agent will run any tool — bash commands, file writes, network calls — without asking you for permission first. That's the trade you're making for the convenience of walking away. Use it for jobs with reversible side effects on a project you can revert (test suite, snapshot regeneration, doc cleanup, dependency upgrades you'd review before merging). Don't use it for anything that touches production, deploys, or unrecoverable state. If you're not sure whether a job is in the "reversible" category, drive it in a regular chat tab instead — you'll see each permission prompt and can stop before something explodes.

Step 6: The peek pane

6

Click a background row, watch what it's doing

Click any row under a status group. The bottom half of the panel splits off into a peek pane, showing:

  • Status badge (top-left): the job's status, color-matched to the row's icon
  • Name, job ID, and model: the metadata you'd need to find this job again in logs
  • Pending-question block (yellow background, "Awaiting your input"): only appears if the agent asked something and is waiting
  • Transcript: up to the last 12 events — your turns, the assistant's text, tool calls (), tool results ( or ), and the final result (done or failed)
  • Reply input at the bottom

The reply input is where the surprise lives. It's disabled while the agent's process is still alive, and the placeholder text changes based on why:

  • "Waiting for first SDK turn…" — the agent hasn't established a session ID yet (just started)
  • "Agent still working — wait or stop first" — the agent is mid-turn, so a new prompt would collide with its current one
  • "Send a follow-up turn…" — the process has exited, you can resume the conversation

This is the model: you dispatched an autonomous run. You reply to its conclusions or its pending questions, not to its in-flight thoughts. If you need to interject mid-run, use Stop first (Step 7) and then send a fresh prompt.

Step 7: Per-row actions (right-click)

7

Six actions, each with a reason to exist

Right-click any background-job row (under a status group) for its action menu. Each item has a specific use:

ActionWhen to use it
Open in Window The peek pane caps at 12 transcript entries. For the full history, side-by-side with another job, or for a long-running review, pop it out into its own window.
Stop Kill an alive process. Only enabled while the row's process status is alive — after that, the entry reads "Stop (already exited)" and does nothing.
Rerun (fresh session) Re-dispatch the same prompt with a clean conversation. Useful when you want a second-opinion run, or when the first run got confused and you want a do-over instead of a follow-up turn.
Pin / Unpin Pinned rows sort to the top of their group regardless of recency. Use for the two or three jobs you actually care about — keeps the panel scannable when you've dispatched a dozen.
Rename… Auto-generated names from the prompt's first words are often useless ("Run the…", "Fix the…"). Rename to something you can pattern-match at a glance.
Delete Stops the job if it's still running, removes the entry from disk, and discards the transcript. There is a confirmation dialog — read it.
Delete is destructive and there's no undo. The confirmation alert reads "'<name>' will be stopped (if running) and removed from disk. Its transcript will be lost." If you might want to read what the agent did later, use Stop first and leave the row in place. Disk usage per job is small — there's no need to delete proactively.

Step 8: A worked example, end to end

8

The shape of a real triage pass

Concretely, this is what a normal day with the Agents panel looks like:

  1. Open the project. Open the Agents panel. Type "run the test suite, fix any failing snapshots, open a PR with the changes" into the dispatch bar. Hit ↩.
  2. The row appears under Working. The activity line ticks through tool calls — bash npm test, then read src/<file>.snap, then writes. Close the panel; go back to your main work.
  3. An hour later, open the panel again. The row has moved to Completed. Cost badge reads $0.0312. PR dot is yellow — checks pending.
  4. Click the row. The peek pane opens. Pending question? No. Transcript shows a clean run ending in done with the agent's summary: "Regenerated 4 snapshot files; opened PR #847."
  5. You want the full transcript. Right-click → Open in Window. Read the whole run in the popped-out detail window, including the PR description it wrote.
  6. Half an hour later, refresh the panel. PR dot has gone green. Merge from your normal flow.

The point isn't the specific workflow — it's that you only opened the panel three times, never sat watching the agent work, and the row's glyphs told you everything you needed to know at each check-in. That's what the Agent View is optimized for.

What's not in the panel (yet)

So you don't go hunting for things that aren't there: there is no filter or search box, no multi-select, no bulk Stop/Delete, and no keyboard shortcut for opening the panel. If you have so many jobs that you're missing one of those, dispatch fewer or use Pin to keep the important ones at the top. The "Recent" group caps at 20 — older saved sessions still exist and can be opened from the in-tab history popup inside any Claude Code chat tab.

What's next