Skip to content

Commit f568a4d

Browse files
xuiocodex
andcommitted
Refine native Claude Codex tool surface
Co-Authored-By: OpenAI Codex <noreply@openai.com>
1 parent 41ddc49 commit f568a4d

33 files changed

Lines changed: 2179 additions & 1189 deletions

.claude-plugin/plugin.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "codex-subagents",
3-
"version": "0.2.0",
4-
"description": "Launch OpenAI Codex agents, Spark agents, and parallel Codex subagents from Claude Code through a daemonless MCP server with read-only defaults and explicit full-access mode.",
3+
"version": "0.3.0",
4+
"description": "Launch OpenAI Codex agents, Spark agents, parallel Codex subagents, and native follow-up sessions from Claude Code through a daemonless MCP server with read-only defaults and explicit full-access mode.",
55
"author": {
66
"name": "xuio"
77
},

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
# Changelog
22

3+
## 0.3.0
4+
5+
- Refactored the default Claude-facing MCP surface to three native tools: `codex_task`, `codex_task_group`, and `codex_followup`.
6+
- Made every `codex_task` result return a `session_id` so Claude can continue or steer Codex context naturally.
7+
- Moved uncommon settings under `advanced` and replaced the default full-access flag with `full_access`.
8+
- Hid debug and legacy tools by default; diagnostics are now available through `codex://usage`, `codex://status`, and `codex://doctor`.
9+
- Updated the Claude skill, README, wiki, and validation scripts for the native follow-up flow.
10+
311
## 0.2.0
412

513
- Refreshed the README into a shorter onboarding page.

README.md

Lines changed: 18 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,14 @@
77
Run OpenAI Codex agents from Claude Code through a daemonless MCP plugin.
88

99
`claude-code-codex-subagents` lets Claude Code ask Codex for read-only reviews,
10-
parallel investigations, Spark checks, persistent multi-turn sessions, and explicit
11-
full-access Codex work when the user asks for it.
10+
parallel investigations, Spark checks, native follow-ups, live steering, and
11+
explicit full-access Codex work when the user asks for it.
1212

1313
![Terminal demo of Claude launching parallel Codex reviewers](docs/assets/demo.svg)
1414

1515
## Why Use It?
1616

17-
- **Native Claude Code workflow:** Claude gets a small Task-like MCP surface: `codex_task`, `codex_task_group`, and `codex_session_*`.
17+
- **Native Claude Code workflow:** Claude gets a small Task-like MCP surface: `codex_task`, `codex_task_group`, and `codex_followup`.
1818
- **Read-only by default:** Codex starts with `--sandbox read-only` and non-interactive approvals.
1919
- **No daemon:** Claude launches the MCP server over stdio for the active session.
2020
- **Fast parallel review:** Claude can launch several independent Codex agents with bounded concurrency.
@@ -78,16 +78,17 @@ Claude should use `codex_task_group` and split the work into independent tasks.
7878
Use Codex Spark to do a fast focused pass on the tool descriptions.
7979
```
8080

81-
Claude can pass `model_preset: "spark"` instead of remembering the exact Spark model slug.
81+
Claude can pass `advanced.model: "spark"` instead of remembering the exact Spark model slug.
8282

8383
### Keep A Codex Session Alive
8484

8585
```text
8686
Start a long-running Codex session on this repo, then let me send follow-up prompts into the same context.
8787
```
8888

89-
Claude should use `codex_session_start`, `codex_session_prompt`,
90-
`codex_session_steer`, `codex_session_status`, and `codex_session_wait`.
89+
Claude should use `codex_task` for the initial prompt, preserve the returned
90+
`session_id`, and use `codex_followup` to continue, steer, or wait on that same
91+
Codex context. For long first turns, Claude should set `background: true`.
9192

9293
## Safety Model
9394

@@ -103,7 +104,7 @@ Full local access is opt-in per call:
103104

104105
```json
105106
{
106-
"dangerously_bypass_approvals_and_sandbox": true
107+
"full_access": true
107108
}
108109
```
109110

@@ -127,16 +128,21 @@ use DNS/network, install packages, or behave like a normal unrestricted Codex ru
127128
| --- | --- |
128129
| One read-only Codex task | `codex_task` |
129130
| Several independent tasks | `codex_task_group` |
130-
| Persistent context | `codex_session_start`, `codex_session_prompt` |
131-
| Long-running sessions | `codex_session_start`, `codex_session_status`, `codex_session_wait`, `codex_session_steer` |
132-
| Session recovery | `codex_sessions`, `codex_session_recover`, `codex_session_cancel` |
133-
| Diagnostics | `codex_status`, `codex_doctor`, `codex_export_debug_bundle` |
131+
| Persistent context | `codex_task`, then `codex_followup` |
132+
| Long-running sessions | `codex_task` with `background: true`, then `codex_followup` |
133+
| Live steering | `codex_followup` with `mode: "steer"` |
134+
| Diagnostics | MCP resources `codex://status`, `codex://doctor`, `codex://usage` |
134135

135136
Legacy tools such as `ask_codex`, `run_agent`, `run_agents`, `start_session`, and
136137
`send_session_prompt` are hidden by default. Set
137138
`CODEX_SUBAGENTS_ENABLE_LEGACY_TOOLS=1` only for older clients that still call the
138139
pre-refactor names.
139140

141+
Debug tools such as `codex_status`, `codex_doctor`, `codex_usage_guide`,
142+
`codex_choose_tool`, and `codex_export_debug_bundle` are hidden by default. Set
143+
`CODEX_SUBAGENTS_ENABLE_DEBUG_TOOLS=1` only when a client needs tool-callable
144+
diagnostics instead of the MCP diagnostic resources.
145+
140146
## Development
141147

142148
```sh
@@ -170,7 +176,7 @@ See [Development](docs/DEVELOPMENT.md) for the full test matrix.
170176

171177
## Project Status
172178

173-
Current release: `v0.2.0`.
179+
Current release: `v0.3.0`.
174180

175181
This project is early, but it is already tested across:
176182

0 commit comments

Comments
 (0)