Video walkthrough:** watch the Agents Dashboard and codex queue demo on YouTube.

Codex CLI sessions are easy to manage when only one task is active. The workflow becomes less predictable when several sessions operate in different repositories or terminal tabs. A task may be blocked on an approval while another is still running and a third is ready for review.

Codex CLI 0.149.0 introduced two related interfaces for this problem:

  • codex agents: an interactive dashboard connected to the shared local Codex app-server daemon.

  • codex queue: a non-interactive command for delivering a message to an existing session.

This article examines both interfaces as task-management primitives rather than as isolated commands.

Dashboard model

Start the dashboard from a regular shell:

codex agents

Tasks are grouped by working directory. Each task exposes its current state and recent activity.

Codex CLI Agents Dashboard
Codex CLI Agents Dashboard

The three summary states have direct operational meaning:

State

Meaning

Operator action

Need input

The task cannot continue without a response or approval

Inspect immediately

Working

The task is executing or processing instructions

Usually leave it running

Ready

The current step is complete

Review output and decide what follows

The dashboard is not a second copy of the task. It is a view over sessions managed by the same app-server daemon.

Inside an interactive session, return to the dashboard with:

/agents

codex agents is a shell command. /agents is an interactive Codex command.

Navigation and task identity

The dashboard footer lists the active shortcuts. Typical controls include:

  • Up / Down: change selection

  • Enter: open the selected task

  • Ctrl+F: search

  • Ctrl+S: change grouping

  • Ctrl+R: rename

  • Ctrl+X: stop the selected task

Task names should be treated as human-readable identifiers. Rename long generated names to short, unique values:

frontend-accessibility
backend-rate-limits
release-documentation

Inside a session:

/rename backend-rate-limits

For automation, use the session UUID instead of the name. The UUID can be read from /status or from the resume command printed when an interactive session closes.

Queueing instructions

The command format is:

codex queue --thread <NAME_OR_UUID> --message <TEXT>

Queue by exact name:

codex queue \
  --thread "backend-rate-limits" \
  --message "Add a regression test for concurrent requests."

Queue by UUID:

codex queue \
  --thread "01a01234-abcd-7890-1234-123456789abc" \
  --message "Run the complete test suite before finishing."

The values should be quoted. Shell quoting protects spaces in task names and keeps the complete message in one argument.

An image can be attached when the instruction depends on a visual reference:

codex queue \
  --thread "frontend-accessibility" \
  --message "Use this screenshot as the mobile-layout reference." \
  --image "/absolute/path/mobile-reference.png"

Suggested concurrency workflow

A predictable workflow is:

create task
    ↓
assign unique name
    ↓
observe in codex agents
    ↓
respond to Need input
    ↓
queue additional requirements
    ↓
review Ready tasks

The dashboard handles discovery and state inspection. codex queue handles message delivery. /status provides the stable session identifier needed for scripts.

Failure modes

Session not found

Use the full exact name, including spaces, or use the UUID. Partial names are not reliable targets.

Duplicate names

Rename one session or target its UUID. Unique names are convenient for humans; UUIDs are safer for automation.

Dashboard is empty

Confirm that the dashboard is connected to the same local app-server daemon and operating-system user as the sessions you expect. Run:

codex doctor

Queued message is not processed immediately

A busy session may accept the message but process it only after reaching a safe point. Open the session from the dashboard and inspect its transcript.

Conclusion

codex agents and codex queue provide two complementary controls over local Codex sessions. The first gives an interactive view of task state; the second provides a script-friendly way to deliver new instructions.

For a complete terminal demonstration, watch the video tutorial.


Adapted from the original tutorial: OpenAI Codex Agents Dashboard and Codex Queue.