Agents
The four agents Newen drives, what each can do, and how you sign in.
Newen drives agent CLIs through adapters. An adapter turns the CLI’s own messages into Newen’s events and Newen’s requests into the CLI’s input; the agent itself is always the CLI, running on your computer with your account.
| Agent | Program | How Newen talks to it | Tested with |
|---|---|---|---|
| Claude Code | claude |
stream-JSON over stdin and stdout, plus its control protocol | 2.1.310 |
| Codex | codex app-server |
JSON-RPC over stdio, an experimental interface of the CLI | 0.163.0 |
| OpenCode | opencode acp |
the Agent Client Protocol (ACP) over stdio | 2.2.5 |
| Hermes Agent | hermes acp |
the Agent Client Protocol over stdio | 2026.9.24 |
The CLIs’ protocols are not stable public APIs. A version outside the tested ones still runs; its page in Settings says Newen was tested with 2.1.310; this version may behave differently. Messages Newen does not know are kept, not dropped, and never crash a session.
Which program runs
Section titled “Which program runs”Newen runs the program of that name on your PATH. To run another one, set its path in Settings › (agent) › Program; it applies to new sessions. The same page takes Environment variables (KEY=value, one a line) that every new session of that agent starts with.
What each can do
Section titled “What each can do”Each adapter declares what its agent offers, and the interface builds its pickers and buttons from that: anything an agent lacks is simply not offered.
| Claude Code | Codex | OpenCode | Hermes | |
|---|---|---|---|---|
| Models | from the CLI | from the CLI | grouped by provider | from the agent |
| Effort | per model | per model | per model | per model |
| Plan mode | yes | yes | yes | no |
| Steer a running turn | yes | yes | no | no |
| Resume, fork | yes | yes | when the agent offers them | when the agent offers them |
| Changes recorded | after every tool | per turn | per turn | per turn |
| Context meter and plan usage | yes | yes | no | no |
| Suggested next prompt | yes | no | no | no |
| Its own slash commands | yes | no | yes | yes |
| Images in a message | yes | yes | yes | yes |
| Skills from Newen | yes | yes | yes | no |
| Plugins | yes | yes | no | no |
| Remote Control | yes | with an option | no | no |
The permission modes of each are in Permissions.
Each agent’s own options
Section titled “Each agent’s own options”Settings › (agent) › Sessions shows the options the adapter declares:
- Claude Code: Output style (Default, Explanatory, Learning); Local sandbox and Strict sandbox mode (off by default); Prompt suggestions (on).
- Codex: Remote Control (off): every Codex session runs in one Codex process that the ChatGPT app on your phone can reach once paired.
- OpenCode: Free models, Claude Code skills and Project settings, all on; turning one off sets OpenCode’s own variable for it.
- Hermes: Project rules (on) and Run hooks without asking (off).
Accounts
Section titled “Accounts”You sign in with each CLI’s own login, from Settings › Accounts or when a session needs it. Newen runs the CLI’s login, opens its page in your browser and never holds the agent’s tokens; the CLI keeps them, as it does in a terminal.
| Agent | Sign-in |
|---|---|
| Claude Code | Claude subscription (claude auth login --claudeai) or Anthropic Console (--console). The page shows a code that you paste back into Newen. |
| Codex | ChatGPT account (codex login). The page returns to Codex by itself. |
| OpenCode | No account of its own: you connect model providers from its Settings page. An API key goes to opencode auth import on its input, never on a command line; OpenCode keeps it. |
| Hermes | Signs in with its own tools, outside Newen. |
Newen does not present itself as another client.