@makaio/client-codex 1.0.0-dev-1786014320559 → 1.0.0-dev-1789609124644

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/README.md CHANGED
@@ -48,8 +48,13 @@ is preserved without overwriting a concurrently changed canonical credential.
48
48
  | `PreToolUse` | `client.session.tool.pre` | `context.append`, `openai.codex-hook-response.block`, `openai.codex-hook-response.permission.deny`, `openai.codex-hook-response.input.update` |
49
49
  | `PostToolUse` | `client.session.tool.post` | `context.append`, `openai.codex-hook-response.block` |
50
50
  | `Stop` | `client.session.turn.completed` | `openai.codex-hook-response.block` |
51
+ | `SubagentStart` | `client.session.subagent.started` | `context.append` |
52
+ | `SubagentStop` | `client.session.subagent.completed` | — (observer only) |
53
+ | `PreCompact` | `client.session.compaction.pre` | — (observer only) |
54
+ | `PostCompact` | — (raw ingress only) | — |
55
+ | `PermissionRequest` | — (raw ingress only) | — (response surface not yet proven) |
51
56
 
52
- All five events synchronously consume JSON output in the pinned upstream source tag `rust-v0.144.1`. Live CLI probes remain pending; the contract only exposes source-accepted fields.
57
+ Every event with a response capability runs in request mode (`hook handle codex <event>`); the wiring derives the timeout from blockability: 5000 ms where a `block`/`permission.deny` capability exists, 1000 ms for the context-only `SubagentStart`. `SubagentStop` and `PreCompact` are observer-only event-mode hooks (`hook received codex <event>`). `PostCompact` and `PermissionRequest` are wired for raw ingress only and carry no declared response capabilities. The runtime contract is version `1.2.0` and lists `SubagentStart` as a supported, non-blockable interaction.
53
58
 
54
59
  ### Hook Response Contract (`openai.codex-hook-response@1`)
55
60
 
@@ -58,10 +63,10 @@ The `./runtime` entrypoint registers a `ProviderContractCatalogEntry` that defin
58
63
  | Field | Value |
59
64
  |-------|-------|
60
65
  | `contractId` | `openai.codex-hook-response` |
61
- | `version` | `1.1.0` |
62
- | `supportedInteractions` | `SessionStart`, `UserPromptSubmit`, `PreToolUse`, `PostToolUse`, `Stop` |
66
+ | `version` | `1.2.0` |
67
+ | `supportedInteractions` | `SessionStart`, `UserPromptSubmit`, `PreToolUse`, `PostToolUse`, `Stop`, `SubagentStart`, plus the response-capability ids (`context.append`, `openai.codex-hook-response.block`, `openai.codex-hook-response.permission.deny`, `openai.codex-hook-response.input.update`) |
63
68
 
64
- **Blockability:** All five events support blocking responses. SessionStart uses `continue: false` with `stopReason`; the other events use their event-specific block form.
69
+ **Blockability:** The first five events support blocking responses. SessionStart uses `continue: false` with `stopReason`; the other four use their event-specific block form. `SubagentStart` is declared non-blockable: it accepts `context.append` (the text lands in the subagent's context window), but subagent creation cannot be refused.
65
70
 
66
71
  **Composition:** Contributions are collected deterministically. Context appends render as `hookSpecificOutput.additionalContext`; blocks use `decision: "block"` with a non-empty reason; PreToolUse additionally supports `permissionDecision: "deny"` and an allowed `updatedInput` rewrite.
67
72