Dynamic naming for spawned sub-agents
What feature would you like to see?
I would like Codex to support dynamically generated or caller-provided names for spawned sub-agents.
Today, sub-agents receive generated nicknames that do not necessarily reflect the task, role, route, subsystem, or workstream they are responsible for. In multi-agent sessions, this makes it harder to quickly understand which agent is doing what, especially when several agents are working in parallel.
A useful version of this capability could allow the caller to provide a suggested display name when spawning an agent, while still letting Codex validate or adjust the final name if needed.
For example, a spawn request could include a field such as:
{
display_name: "API route audit",
message: "Review the API route behavior and report findings."
}
The exact API shape is less important than the capability: sub-agent names should be able to reflect the delegated task or role.
Additional information
This would improve readability and coordination in multi-agent workflows. Generated names are fine as a fallback, but when the user or caller has a clear semantic label for the workstream, Codex should preserve that label in the UI and returned spawn metadata.
Useful behavior would include:
- Use the provided/generated semantic name as the visible sub-agent label.
- Validate length, characters, and safety as needed.
- Fall back to the current generated nickname behavior when no name is provided.
- Return both the requested name and resolved visible name in spawn metadata, if they differ.
3 Comments
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
This is especially important in the mobile UI.
When multiple agents are running, names like “Ramanujan” or “Parfit” do not indicate what each agent is doing.
Please show a short task summary directly in the agent list, for example:
Ideally, the task summary should be visible without opening each agent.
!image
Renaming our subagents with random names is a useless feature for anyone trying to understand what the subagent is doing. Use the names we provide in the toml.