MultiAgentV2 cross-provider subagent cannot consume encrypted task assignment
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 45/100
Research direction
Start by tracing the MultiAgentV2 child-assignment handoff from encrypted content generation through provider invocation, comparing the OpenAI-child and custom-provider paths described here. Confirm whether the custom child can receive a usable assignment, or whether unsupported cross-provider delegation is rejected before spawning; verify the same-provider control remains successful.
Written by the indexing model from the issue text.
Description
Summary
With an OpenAI parent and a correctly selected non-OpenAI custom-provider child, MultiAgentV2 delivers the child assignment only as encrypted content that the custom-provider model cannot consume.
The spawned child metadata shows the intended custom role, provider, model, and MultiAgentV2 implementation, but the child sees an empty visible Payload: and reports that it has no assignment.
A same-provider OpenAI child consumes an otherwise equivalent encrypted assignment successfully.
Environment
- Codex CLI: 0.145.0
- Surface: Codex desktop connected to a remote Codex app-server over SSH
- Multi-agent version: v2
- Parent provider: OpenAI
- Child role: registered custom agent
- Child provider: non-OpenAI, OpenAI-compatible Chat Completions provider
- Child model: Kimi K3
Reproduction
- Enable
multi_agent_v2. - Configure a registered custom child agent using a non-OpenAI provider and an OpenAI-compatible Chat Completions model.
- Start an OpenAI-backed parent.
- Spawn the custom child with a unique harmless marker and an explicit instruction to run
pwd. - Inspect the spawned session metadata and child handoff.
The session metadata confirms:
agent_roleis the registered custom role.multi_agent_versionisv2.model_provideris the intended custom provider.modelis the intended custom model.
The stored handoff displays an empty Payload: and contains an encrypted-content block. The child reports that it received no assignment and does not execute the marker or pwd.
In a related continuation path, the parent can terminate with:
Encrypted function output content could not be decrypted or decoded.
Control: same-provider child
Repeat the test with an OpenAI child.
Its stored handoff also displays an empty visible Payload: plus encrypted content, but the OpenAI child successfully consumes the assignment, reproduces the marker, runs pwd, and returns the expected path.
This indicates that general v2 dispatch works and that the problem is specific to the provider boundary.
Control: provider-neutral delivery
As a diagnostic only, provide the same assignment to the custom child through a single-use, permission-restricted, nonce-bound local file referenced by the custom agent's developer instructions.
The custom child then executes the marker and pwd successfully.
This confirms that:
- The custom provider and model are operational.
- Child provider/model selection works.
- The task itself is valid.
- Failure occurs when the assignment is carried only through the encrypted MultiAgentV2 field.
A fixed file inbox is not a safe permanent workaround because of stale-task, concurrency, cleanup, attribution, and local instruction-injection risks.
Expected behavior
Codex should make the assignment available to the selected child in a representation that its configured provider can consume.
Possible implementations include decrypting/translating the assignment within Codex before invoking a provider that does not support OpenAI encrypted tool parameters, or explicitly rejecting unsupported cross-provider delegation before spawning the child.
Actual behavior
The custom child is spawned with the correct role, provider, and model, but cannot consume the encrypted assignment and behaves as though no task was supplied.
Related issues
- #33267 - exact decryption error when consuming MultiAgentV2 child results
- #17541 - provider-specific encrypted content retained across a provider/model boundary
- #26753 - MultiAgentV2 agent tools use encrypted parameters
- #27205 - model not configured for encrypted tool use
- #17598 - native subagent orchestration with non-OpenAI custom providers
- #32753 - encrypted MultiAgentV2 assignments are no longer observable
Additional notes
This is not a request to support a CPA-backed parent. The failing topology is specifically:
OpenAI parent -> registered non-OpenAI custom-provider child
Please let me know which narrowly scoped logs or sanitized session records would help. I have intentionally omitted authorization data, internal network details, complete encrypted blobs, and unrelated prompts.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.5k
- Avg merge
- 1m
- Merged PRs (30d)
- 1k
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from openai/codex
-
enhancement remote
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
bug CLI windows-os
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
macOS sandbox blocks hw.optional.arm64 sysctl, causing Flutter to misdetect Apple Silicon as x64 Openbug CLI sandbox
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
bug CLI TUI
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
-
CLI config enhancement skills
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
kwakseongjae/auto-hwp#319 ·
-
area:cli bug filter-quality good first issue priority:medium
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
-
Difficulty 1/5 Under an hour Newbie friendliness 72/100
bevyengine/bevy#25861 ·
-
comp-datalake
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
ClickHouse/ClickHouse#121222 ·
-
A-linter
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
oxc-project/oxc#26863 ·