@leo000001/codex-mcp 2.0.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -1
- package/README.md +5 -2
- package/dist/index.js +369 -50
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -25,7 +25,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
25
25
|
- Documentation aligned with implementation details for event eviction and e2e guidance
|
|
26
26
|
- Tool input defaults are now defined in schema (`cursor`, `maxEvents`, `includeSensitive`, `advanced.approvalTimeoutMs`) and client-facing text avoids duplicated default descriptions
|
|
27
27
|
- `codex_session` adds `clean_background_terminals` action to call `thread/background_terminals/clean`
|
|
28
|
-
- Approval action payloads now expose `approvalId`
|
|
28
|
+
- Approval action payloads now expose `approvalId` when provided by app-server
|
|
29
|
+
- Documentation was de-duplicated by splitting responsibilities between `AGENTS.md` (execution handbook) and `docs/DESIGN.md` (single source upgrade playbook), and a one-shot schema refresh runbook/record was added (`2026-02-21`, no schema diff)
|
|
30
|
+
- `src/app-server/protocol.ts` is now aligned to current v2 schema coverage for thread/turn params (`dynamicTools`, `persistExtendedHistory`, `collaborationMode`, richer `SandboxPolicy`, strict `UserInput` union, `turn/steer` params)
|
|
31
|
+
- `codex_check` input validation is now action-aware at schema level (`poll` vs `respond_permission` vs `respond_user_input`), including conditional `execpolicy_amendment` rules and forbidden-field checks
|
|
32
|
+
- Auth refresh request handling now uses explicit unsupported semantics (`-32000`) instead of `-32601` for `account/chatgptAuthTokens/refresh`
|
|
33
|
+
- Compatibility policy is now explicitly strict: removed non-essential alias compatibility (`approval_id`, `network_approval_context`, `questionId`) and documented a single necessary-compatibility whitelist (v1/v2 thread/turn id extraction)
|
|
34
|
+
- Command approval context is now surfaced directly in `actions[]` / `approval_request` payloads (`commandActions`, `proposedExecpolicyAmendment`) for richer client-side approval UX
|
|
35
|
+
- `turn/started` and `turn/completed` notification handling now only uses canonical `turn.id` shape (plus runtime `activeTurnId` fallback), and corresponding v1 top-level `turnId` compatibility tests were removed
|
|
36
|
+
- `compat-report` now correctly advertises `respondApprovalAlias: false` to match strict no-alias behavior
|
|
37
|
+
- Upgrade-policy docs were further de-duplicated: `docs/DESIGN.md` remains the single detailed compatibility source, and `AGENTS.md` now stays as a concise execution gate
|
|
29
38
|
|
|
30
39
|
## [0.1.0] - 2026-02-15
|
|
31
40
|
|
package/README.md
CHANGED
|
@@ -220,7 +220,7 @@ Query a running session for events, respond to approval requests, or answer user
|
|
|
220
220
|
| `decision` | string | For respond_permission | For command approvals: `"accept"`, `"acceptForSession"`, `"acceptWithExecpolicyAmendment"`, `"decline"`, `"cancel"`; for file changes: `"accept"`, `"acceptForSession"`, `"decline"`, `"cancel"` |
|
|
221
221
|
| `execpolicy_amendment` | string[] | For acceptWithExecpolicyAmendment | Exec policy amendment list (required when `decision="acceptWithExecpolicyAmendment"`) |
|
|
222
222
|
| `denyMessage` | string | No | Internal note on deny (not sent to app-server) |
|
|
223
|
-
| `answers` | object | For respond_user_input | For `respond_user_input`: `
|
|
223
|
+
| `answers` | object | For respond_user_input | For `respond_user_input`: `question-id -> { answers: string[] }` |
|
|
224
224
|
|
|
225
225
|
**Returns (poll and respond_*):** `{ sessionId, status, pollInterval?, cursorResetTo?, events, nextCursor, actions?, result? }`
|
|
226
226
|
|
|
@@ -267,10 +267,13 @@ When the agent requests approval or user input, `poll` includes an `actions[]` l
|
|
|
267
267
|
|
|
268
268
|
- `respond_permission`: `decision` is one of `accept`, `acceptForSession`, `decline`, `cancel`.
|
|
269
269
|
- For command approvals, `acceptWithExecpolicyAmendment` is supported and requires `execpolicy_amendment`.
|
|
270
|
-
- `respond_user_input`: send `answers` keyed by `
|
|
270
|
+
- `respond_user_input`: send `answers` keyed by the question `id`.
|
|
271
|
+
- For command approvals, `actions[]` may include `commandActions` and `proposedExecpolicyAmendment` for richer review UI.
|
|
271
272
|
|
|
272
273
|
Pending approvals auto-decline after `advanced.approvalTimeoutMs`.
|
|
273
274
|
|
|
275
|
+
Auth callback note: if app-server sends `account/chatgptAuthTokens/refresh`, codex-mcp returns JSON-RPC error `-32000` because external ChatGPT token refresh is out of scope for this server.
|
|
276
|
+
|
|
274
277
|
## Session Lifecycle & Cleanup
|
|
275
278
|
|
|
276
279
|
Sessions auto-clean up in the background:
|