JSON-RPC coverage inventory
This inventory tracks the checked-in codex-cli 0.154.0 app-server schema against the SDK's high-level runtime. Every method remains available through the typed CodexAppServerClient; the status indicates whether CodexSurface or another high-level SDK runtime currently projects it.
Run npm run generate:rpc after regenerating the schema or changing protocol handling. CI and local checks can use npm run check:rpc to detect drift.
Status definitions
| Status | Meaning |
|---|---|
| High-level SDK | Used or handled by the Node surface/runtime. Applications normally use the product-shaped SDK API instead of this method directly. |
| Host policy boundary | The surface handles the request by explicitly rejecting it because the host must supply credentials or attestation policy. Advanced hosts can register a low-level handler. |
| Intentionally ignored | The notification is recognized exhaustively but currently produces no surface state or semantic event. |
| Typed client only | Fully typed at the low-level client boundary but not projected by the high-level runtime. This is the implementation backlog, not a protocol typing gap. |
Summary
| Direction | Total | High-level | Policy boundary | Ignored | Typed only |
|---|---|---|---|---|---|
| Client → app-server requests | 162 | 48 | 0 | 0 | 114 |
| App-server → client notifications | 83 | 42 | 0 | 30 | 11 |
| App-server → client requests | 11 | 9 | 2 | 0 | 0 |
Client → app-server requests
| Method | Status | Implementation |
|---|---|---|
initialize | High-level SDK | packages/backend/src/node/codex-surface-connection-controller.ts |
server/diagnostics | Typed client only | — |
userVerification/status | Typed client only | — |
userVerification/enroll | Typed client only | — |
userVerification/delete | Typed client only | — |
userVerification/verify | Typed client only | — |
thread/start | High-level SDK | packages/backend/src/node/codex-surface-lifecycle-controller.tspackages/backend/src/node/codex-surface-text-generation-controller.ts |
thread/resume | High-level SDK | packages/backend/src/node/codex-surface-lifecycle-controller.ts |
thread/fork | High-level SDK | packages/backend/src/node/codex-surface-fork-controller.ts |
thread/archive | High-level SDK | packages/backend/src/node/codex-surface-conversations-controller.ts |
thread/delete | High-level SDK | packages/backend/src/node/codex-surface-conversations-controller.tspackages/backend/src/node/codex-surface-text-generation-controller.ts |
thread/unsubscribe | High-level SDK | packages/backend/src/node/codex-surface-text-generation-controller.ts |
thread/increment_elicitation | Typed client only | — |
thread/decrement_elicitation | Typed client only | — |
thread/name/set | High-level SDK | packages/backend/src/node/codex-surface-conversation-settings-controller.ts |
thread/goal/set | High-level SDK | packages/backend/src/node/codex-surface-conversation-settings-controller.ts |
thread/goal/get | High-level SDK | packages/backend/src/node/codex-surface-fork-controller.tspackages/backend/src/node/codex-surface-lifecycle-controller.ts |
thread/goal/clear | High-level SDK | packages/backend/src/node/codex-surface-conversation-settings-controller.ts |
thread/queue/add | Typed client only | — |
thread/queue/list | Typed client only | — |
thread/queue/update | Typed client only | — |
thread/queue/delete | Typed client only | — |
thread/queue/reorder | Typed client only | — |
thread/queue/start | Typed client only | — |
thread/metadata/update | Typed client only | — |
thread/section/move | Typed client only | — |
thread/settings/update | High-level SDK | packages/backend/src/node/codex-surface-conversation-settings-controller.tspackages/backend/src/node/codex-surface-fork-controller.tspackages/backend/src/node/codex-surface-lifecycle-controller.ts |
thread/memoryMode/set | Typed client only | — |
memory/reset | Typed client only | — |
thread/unarchive | High-level SDK | packages/backend/src/node/codex-surface-conversations-controller.ts |
thread/compact/start | High-level SDK | packages/backend/src/node/codex-surface-turn-actions-controller.ts |
thread/shellCommand | Typed client only | — |
thread/approveGuardianDeniedAction | Typed client only | — |
thread/backgroundTerminals/clean | Typed client only | — |
thread/backgroundTerminals/list | Typed client only | — |
thread/backgroundTerminals/terminate | Typed client only | — |
thread/rollback | High-level SDK | packages/backend/src/node/codex-surface-turn-actions-controller.ts |
thread/revert | High-level SDK | packages/backend/src/node/codex-surface-turn-actions-controller.ts |
thread/list | High-level SDK | packages/backend/src/node/codex-surface-conversations-controller.ts |
project/list | Typed client only | — |
project/read | Typed client only | — |
project/create | Typed client only | — |
project/import | Typed client only | — |
project/update | Typed client only | — |
project/move | Typed client only | — |
project/delete | Typed client only | — |
threadSection/list | Typed client only | — |
threadSection/create | Typed client only | — |
threadSection/update | Typed client only | — |
threadSection/delete | Typed client only | — |
thread/search | Typed client only | — |
thread/searchOccurrences | Typed client only | — |
thread/loaded/list | Typed client only | — |
thread/read | High-level SDK | packages/backend/src/node/codex-surface-conversations-controller.tspackages/backend/src/node/codex-surface-lifecycle-controller.ts |
thread/turns/list | High-level SDK | packages/backend/src/node/codex-surface-conversations-controller.tspackages/backend/src/node/codex-surface-fork-controller.tspackages/backend/src/node/codex-surface-lifecycle-controller.tspackages/backend/src/node/codex-surface-prompt-history.ts |
thread/items/list | Typed client only | — |
thread/inject_items | Typed client only | — |
skills/list | High-level SDK | packages/backend/src/node/codex-surface-catalog-controller.ts |
skills/extraRoots/set | Typed client only | — |
hooks/list | Typed client only | — |
marketplace/add | Typed client only | — |
marketplace/remove | Typed client only | — |
marketplace/upgrade | Typed client only | — |
plugin/list | Typed client only | — |
plugin/search | Typed client only | — |
plugin/installed | High-level SDK | packages/backend/src/node/codex-surface-catalog-controller.ts |
plugin/reconcile | Typed client only | — |
plugin/read | Typed client only | — |
plugin/skill/read | Typed client only | — |
plugin/share/save | Typed client only | — |
plugin/share/updateTargets | Typed client only | — |
plugin/share/list | Typed client only | — |
plugin/share/checkout | Typed client only | — |
plugin/share/delete | Typed client only | — |
app/read | Typed client only | — |
app/list | Typed client only | — |
app/installed | Typed client only | — |
fs/readFile | High-level SDK | packages/backend/src/node/codex-markdown-images.tspackages/backend/src/node/codex-surface-catalog-controller.ts |
fs/writeFile | Typed client only | — |
fs/createDirectory | Typed client only | — |
fs/getMetadata | Typed client only | — |
fs/readDirectory | Typed client only | — |
fs/remove | Typed client only | — |
fs/copy | Typed client only | — |
fs/watch | Typed client only | — |
fs/unwatch | Typed client only | — |
skills/config/write | Typed client only | — |
plugin/install | Typed client only | — |
plugin/uninstall | Typed client only | — |
turn/start | High-level SDK | packages/backend/src/node/codex-surface-messages-controller.tspackages/backend/src/node/codex-surface-text-generation-controller.ts |
turn/settings/update | Typed client only | — |
turn/steer | High-level SDK | packages/backend/src/node/codex-surface-messages-controller.ts |
turn/interrupt | High-level SDK | packages/backend/src/node/codex-surface-text-generation-controller.tspackages/backend/src/node/codex-surface-turn-actions-controller.ts |
thread/realtime/start | High-level SDK | packages/backend/src/node/codex-surface-realtime-session.ts |
thread/realtime/appendAudio | High-level SDK | packages/backend/src/node/codex-surface-realtime-session.ts |
thread/realtime/appendText | High-level SDK | packages/backend/src/node/codex-surface-realtime-session.ts |
thread/realtime/appendSpeech | High-level SDK | packages/backend/src/node/codex-surface-realtime-session.ts |
thread/realtime/stop | High-level SDK | packages/backend/src/node/codex-surface-realtime-session.tspackages/backend/src/node/codex-surface.ts |
thread/timeline/list | Typed client only | — |
thread/realtime/listVoices | Typed client only | — |
review/start | High-level SDK | packages/backend/src/node/codex-surface-turn-actions-controller.ts |
model/list | High-level SDK | packages/backend/src/node/codex-surface-catalog-controller.ts |
modelProvider/capabilities/read | Typed client only | — |
experimentalFeature/list | High-level SDK | packages/backend/src/node/codex-surface-connection-controller.ts |
permissionProfile/list | High-level SDK | packages/backend/src/node/codex-surface-catalog-controller.ts |
experimentalFeature/enablement/set | High-level SDK | packages/backend/src/node/codex-surface-connection-controller.ts |
remoteControl/enable | High-level SDK | packages/backend/src/node/codex-surface-connection-controller.ts |
remoteControl/disable | High-level SDK | packages/backend/src/node/codex-surface-connection-controller.ts |
remoteControl/status/read | High-level SDK | packages/backend/src/node/codex-surface-connection-controller.ts |
remoteControl/pairing/start | High-level SDK | packages/backend/src/node/codex-surface-connection-controller.ts |
remoteControl/pairing/status | High-level SDK | packages/backend/src/node/codex-surface-connection-controller.ts |
remoteControl/client/list | High-level SDK | packages/backend/src/node/codex-surface-connection-controller.ts |
remoteControl/client/revoke | High-level SDK | packages/backend/src/node/codex-surface-connection-controller.ts |
collaborationMode/list | Typed client only | — |
mock/experimentalMethod | Typed client only | — |
environment/add | Typed client only | — |
environment/info | Typed client only | — |
environment/status | Typed client only | — |
mcpServer/oauth/login | Typed client only | — |
config/mcpServer/reload | Typed client only | — |
mcpServerStatus/list | Typed client only | — |
mcpServer/resource/read | Typed client only | — |
mcpServer/event/stream/start | Typed client only | — |
mcpServer/event/stream/stop | Typed client only | — |
mcpServer/tool/call | Typed client only | — |
windowsSandbox/setupStart | Typed client only | — |
windowsSandbox/readiness | Typed client only | — |
account/login/start | High-level SDK | packages/backend/src/node/codex-surface-authentication-controller.ts |
account/bedrock/discover | Typed client only | — |
account/bedrock/setup | Typed client only | — |
account/login/cancel | High-level SDK | packages/backend/src/node/codex-surface-authentication-controller.ts |
account/logout | High-level SDK | packages/backend/src/node/codex-surface-authentication-controller.ts |
account/rateLimits/read | High-level SDK | packages/backend/src/node/codex-surface-catalog-controller.ts |
account/rateLimitResetCredit/consume | Typed client only | — |
account/usage/read | Typed client only | — |
account/workspaceMessages/read | Typed client only | — |
account/sendAddCreditsNudgeEmail | Typed client only | — |
feedback/upload | Typed client only | — |
command/exec | Typed client only | — |
command/exec/write | Typed client only | — |
command/exec/terminate | Typed client only | — |
command/exec/resize | Typed client only | — |
process/spawn | Typed client only | — |
process/writeStdin | Typed client only | — |
process/kill | Typed client only | — |
process/resizePty | Typed client only | — |
config/read | Typed client only | — |
externalAgentConfig/detect | Typed client only | — |
externalAgentConfig/import | Typed client only | — |
externalAgentConfig/import/recordHistory | Typed client only | — |
externalAgentConfig/import/readHistories | Typed client only | — |
config/value/write | Typed client only | — |
config/batchWrite | Typed client only | — |
configRequirements/read | High-level SDK | packages/backend/src/node/codex-surface-catalog-controller.tspackages/backend/src/node/codex-surface-connection-controller.ts |
account/read | High-level SDK | packages/backend/src/node/codex-surface-authentication-controller.ts |
getConversationSummary | Typed client only | — |
gitDiffToRemote | Typed client only | — |
getAuthStatus | Typed client only | — |
fuzzyFileSearch | Typed client only | — |
fuzzyFileSearch/sessionStart | Typed client only | — |
fuzzyFileSearch/sessionUpdate | Typed client only | — |
fuzzyFileSearch/sessionStop | Typed client only | — |
App-server → client notifications
| Method | Status | Implementation |
|---|---|---|
error | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/started | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/status/changed | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/archived | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/deleted | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/unarchived | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/closed | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/reverted | Typed client only | — |
skills/changed | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/name/updated | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/goal/updated | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/goal/cleared | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/queue/changed | Typed client only | — |
project/changed | Typed client only | — |
thread/project/updated | Typed client only | — |
thread/environment/connected | Typed client only | — |
thread/environment/disconnected | Typed client only | — |
thread/settings/updated | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/tokenUsage/updated | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
turn/started | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
hook/started | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
turn/completed | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
hook/completed | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
turn/diff/updated | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
turn/plan/updated | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
item/started | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
item/autoApprovalReview/started | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
item/autoApprovalReview/completed | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
autoApprovalReview/strictReviewRequired | Typed client only | — |
item/completed | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
rawResponseItem/completed | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
rawResponse/completed | Typed client only | — |
item/agentMessage/delta | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
item/plan/delta | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
command/exec/outputDelta | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
process/outputDelta | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
process/exited | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
item/commandExecution/outputDelta | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
item/commandExecution/terminalInteraction | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
item/fileChange/outputDelta | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
item/fileChange/patchUpdated | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
serverRequest/resolved | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
item/mcpToolCall/progress | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
mcpServer/oauthLogin/completed | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
mcpServer/startupStatus/updated | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
mcpServer/event/stream/notification | Typed client only | — |
account/updated | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
account/rateLimits/updated | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
app/list/updated | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
remoteControl/status/changed | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
externalAgentConfig/import/progress | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
externalAgentConfig/import/completed | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
fs/changed | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
item/reasoning/summaryTextDelta | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
item/reasoning/summaryPartAdded | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
item/reasoning/textDelta | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/compacted | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
model/rerouted | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
model/verification | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
modelProvider/authRecoveryStarted | Typed client only | — |
modelProvider/authRecoveryCompleted | Typed client only | — |
turn/moderationMetadata | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
model/safetyBuffering/updated | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
warning | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
guardianWarning | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
deprecationNotice | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
configWarning | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
fuzzyFileSearch/sessionUpdated | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
fuzzyFileSearch/sessionCompleted | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/realtime/started | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/realtime/itemAdded | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/realtime/item/started | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/realtime/item/transcript/delta | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/realtime/item/completed | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/realtime/transcript/delta | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/realtime/transcript/done | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/realtime/outputAudio/delta | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/realtime/sdp | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/realtime/error | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
thread/realtime/closed | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
windows/worldWritableWarning | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
windowsSandbox/setupCompleted | Intentionally ignored | packages/backend/src/node/codex-surface-notifications-controller.ts |
account/login/completed | High-level SDK | packages/backend/src/node/codex-surface-notifications-controller.ts |
App-server → client requests
| Method | Status | Implementation |
|---|---|---|
item/commandExecution/requestApproval | High-level SDK | packages/backend/src/node/codex-approvals.ts |
item/fileChange/requestApproval | High-level SDK | packages/backend/src/node/codex-approvals.ts |
item/tool/requestUserInput | High-level SDK | packages/backend/src/node/codex-surface-client-requests-controller.tspackages/backend/src/node/codex-surface.ts |
mcpServer/elicitation/request | High-level SDK | packages/backend/src/node/codex-surface-client-requests-controller.tspackages/backend/src/node/codex-surface.ts |
item/permissions/requestApproval | High-level SDK | packages/backend/src/node/codex-approvals.ts |
item/tool/call | High-level SDK | packages/backend/src/node/codex-surface-extensions-controller.tspackages/backend/src/node/codex-surface.ts |
account/chatgptAuthTokens/refresh | Host policy boundary | packages/backend/src/node/codex-surface.ts |
attestation/generate | Host policy boundary | packages/backend/src/node/codex-surface.ts |
currentTime/read | High-level SDK | packages/backend/src/node/codex-surface.ts |
applyPatchApproval | High-level SDK | packages/backend/src/node/codex-approvals.ts |
execCommandApproval | High-level SDK | packages/backend/src/node/codex-approvals.ts |
Reading the inventory
“Typed client only” is not necessarily a missing product feature. Many filesystem, marketplace, process, and experimental methods intentionally remain low-level until the SDK has a reusable, secure product contract for them.