Skip to content

Tools and subagents

Each thing the agent runs is a light row of its own in the transcript, where it began: the tools it calls, the subagents it hands work to, and the tasks it leaves running in the background.

The rest of the transcript is in The transcript.

  • Tools: each tool the agent runs, as a row with an icon for its kind, what it was asked (a command, or Claude Code’s own words for what it does where it gives them, the command then under Input; a file, a search; a skill as Skill and its name; a message the agent sent another of your sessions as a message to that session, by its title as it is now, or “Message to another session” once that one is deleted, then on a line of its own the start of the message, which opens in full; a tool named by one thing as its name in words and that thing, as Tool Search: select:Monitor; an MCP server’s tool as MCP, its server and the tool, as MCP · Moontors · List Sessions, then what it was given; for any other tool Moontors has no words for, its name in words and what it was given, as Cron Delete(id: 1)), and its status (Pending, Running, Done or Failed); a running tool’s icon breathes while Moontors is the window in front. Claude Code doesn’t say when a call starts running, so its calls say Pending until they end, their icon still except while its Auto mode checks them. With Claude Code, a tool’s row shows as soon as the agent begins the call, by the tool’s name, and says what it was asked once the agent has written it all; with Codex and Gemini CLI it shows once the call is written. A Codex command’s output fills in as it prints. Click it to open the files it touched, what it was given as Input, the lines it changed, and what it gave back as Output, each in a block of its own that scrolls past a set height. A change to files opens showing its diffs, and stays open until you close it; a row you opened closes once you’ve scrolled past it (see What the transcript shows). A diff looks as the Git view’s does: each removed line on a red tint and each added one on a green tint, the words changed within a run of changed lines on a stronger one, matched across the run as the Git view matches them (a line keeping none of its text is marked whole), a line only added or only removed, with no line changed beside it, wholly on the stronger tint, and the code coloured as Files colours it, in the languages agents mostly write: TypeScript, JavaScript, Python, Go, Rust, Java, Kotlin, Swift, C, shell scripts, SQL, HTML, CSS, JSON, YAML and Markdown. Code in any other language, such as C++ or Ruby, stays plain, as does the old or the new side of a change that runs past 2,000 lines, and a line of 1,000 characters or more. What a tool gives back beyond text is said by its kind: a Claude Code tool search’s result says Loaded and each tool it loaded, and an image says “An image”. A web search’s row shows what it searched for, from every agent; with Claude Code and Codex it opens to the pages it found, each a link by its title with its site beside it, as Gemini CLI doesn’t send its pages. A page Claude Code or Codex fetched is a link too. Where Claude Code reads pages through a subagent of its own, as it does for some accounts, a fetch is that subagent’s row, which opens to the fetch and its link. A link opens in your browser, and only when it’s https. A pause Codex takes says Waiting… while it lasts, then Waited and for how long. An image Codex makes is an Image row, titled once it’s made by the prompt it was made from, its file a link where Codex saved one. Moontors keeps a copy with the session, as a file you send, so the row opens to the picture’s chip, which shows it in the window and full screen on the phone. One Codex couldn’t make fails, and where that was its image limit, the row says when the limit resets. While Claude Code’s Auto mode checks whether a call may run, once the call has waited a few seconds on it, its status says Checking permission…. A call the agent’s own review decides on, Codex’s review in Auto or Claude Code’s Auto mode check, says the verdict as its status: Auto-approved once it’s done, or Denied, each with the risk the review saw where it names one. Open it for The review’s reason. A denied call’s row is where you decide on it (see Permission modes). An Agent call a subagent of Claude Code’s makes opens to the model and effort it asked for, and to the report its own subagent gave back. A file a row names, in its line or among the files it opens to, opens as a reply’s link to a file does (see What the transcript shows). A file inside the session’s folder, or a folder it added, shows from that folder (src/main.ts); any other from ~ within your home folder, else in full.
  • Gemini CLI’s edits: Moontors writes the files Gemini CLI’s edit and write tools change in the session’s folder. A file that isn’t UTF-8 text, or isn’t text at all, is refused rather than rewritten, and a note in the transcript says so; Gemini CLI itself learns only that its tool failed.
  • Subagents: when the agent hands work to subagents of its own, as Claude Code and Codex can, each subagent’s work shows as one row where it began, its status at its end: Running, Done, Failed or Stopped. Open it to see the model and effort it ran at where the agent says, and the subagent’s own replies, thinking and tools, ending with Claude Code’s report of what it found. A subagent of Claude Code’s own subagent shows its work in the same row. While a subagent runs within the turn, the transcript’s last row names it, with its time so far, unless a newer tool runs or the agent has written since. If the agent stops before its subagent ends, as when it crashes, the subagent’s row says Stopped, and any tool it left running Failed. A skill Claude Code runs in its own context, as /review does, shows the same two rows whether you typed it or Claude Code chose it: Skill and its name, then a row such as “/code-review in its own context” holding the skill’s steps, shown live.
  • Background tasks: each task the agent leaves running in the background, such as a dev server, is a row of its own where it began, saying Running and for how long, then Done, Failed or Stopped and how long it ran. While it runs, click it for what it has printed so far, and the session’s status counts it rather than saying Done.