Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 19 additions & 6 deletions docs-site/src/content/docs/fr/guides/sub-agent-surface.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,10 +64,16 @@ conversationnelle. Les continuations avec état utilisant `previous_response_id`
à l’identique figure dans ce préfixe. Lorsque les directives changent, le protocole de l’outil principal reste en première position et
les nouvelles directives sont insérées avant l’entrée conversationnelle actuelle.

Ce sont des instructions destinées à l'agent principal, et non à un routeur de génération côté proxy. Sur la v2, un fork avec historique complet
hérite du modèle parent et rejette les remplacements de modèle ou d'effort. Le guidage indique donc à Codex de
utilisez `fork_turns: "none"` (ou un compte de tour partiel positif tel que `"3"`) lorsque vous dépassez `model` ou
`reasoning_effort`, et de rendre le message de tâche autonome.
Ce sont des instructions destinées à l'agent principal, et non à un routeur de génération côté proxy. L'indication d'usage v2 propre à Codex
indique à l'agent qu'un fork avec historique complet (`fork_turns` omis ou `"all"`) hérite du modèle et de l'effort de raisonnement du parent,
et qu'il ne doit donc pas y joindre de remplacements. Le guidage indique donc à Codex d'utiliser `fork_turns: "none"` (ou un compte de tour
partiel positif tel que `"3"`) lorsqu'il transmet `model` ou `reasoning_effort`, et de rendre le message de tâche autonome.

Traitez cela comme une convention au niveau du prompt plutôt que comme un rejet strict à l'exécution. Codex rejetait autrefois `agent_type`,
`model` et `reasoning_effort` sur un fork v2 à historique complet ([openai/codex#20077](https://github.com/openai/codex/issues/20077)), mais
[#37252](https://github.com/openai/codex/pull/37252) a supprimé cette vérification, et le gestionnaire de spawn v2 actuel applique les
remplacements de modèle quel que soit le mode de fork. Suivre la convention reste néanmoins la voie fiable, car l'agent est invité à éviter les
remplacements sur un fork complet.

Le texte personnalisé de `injectionPrompt` peut utiliser les quatre espaces réservés suivants :

Expand Down Expand Up @@ -227,8 +233,15 @@ l’agent principal décide toujours s’il doit déléguer.

### Pourquoi mon enfant v2 a-t-il utilisé le modèle parent ?

Un fork v2 à historique complet hérite du modèle parent. Utilisez un spawn qui définit `fork_turns` sur `"none"` ou
un décompte partiel positif avant de passer un dépassement de modèle ou d'effort.
Les agents générés héritent du modèle parent dès que `model` est omis, et c'est le comportement par défaut pour tous les modes de fork, pas une
conséquence propre au fork avec historique complet. L'indication d'usage v2 intégrée à Codex demande en outre à l'agent de ne pas joindre de
remplacements sur un fork à historique complet, de sorte qu'il peut délibérément laisser `model` non défini. Transmettez un `model` explicite
sur un spawn qui définit `fork_turns` sur `"none"` ou un décompte partiel positif.

Si le champ `model` est totalement absent du schéma de l'outil, la cause est son exposition et non le mode de fork : vérifiez
`features.multi_agent_v2.expose_spawn_agent_model_overrides` dans Codex (activé par défaut), et consultez
[openai/codex#31814](https://github.com/openai/codex/issues/31814) pour les parents ChatGPT natifs dont le schéma de collaboration est figé par
le backend.

### Pourquoi un modèle configuré manque-t-il dans la liste v2 ?

Expand Down
26 changes: 21 additions & 5 deletions docs-site/src/content/docs/guides/sub-agent-surface.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,11 +63,19 @@ tagged item in their trusted replay prefix. Other generated guidance is reused w
developer item exists in that prefix. When guidance changes, leading tool protocol stays first and
the replacement is inserted before current conversational input.

These are instructions to the main agent, not a proxy-side spawn router. On v2, a full-history fork
inherits the parent model and rejects model or effort overrides. Guidance therefore tells Codex to
use `fork_turns: "none"` (or a positive partial turn count such as `"3"`) when passing `model` or
These are instructions to the main agent, not a proxy-side spawn router. Codex's own v2 usage hint
tells the agent that full-history forks (`fork_turns` omitted or `"all"`) inherit the parent model
and reasoning effort and should not carry overrides. Guidance therefore tells Codex to use
`fork_turns: "none"` (or a positive partial turn count such as `"3"`) when passing `model` or
`reasoning_effort`, and to make the task message self-contained.

Treat that as a prompt-level convention rather than a hard rejection. Codex once rejected
`agent_type`, `model`, and `reasoning_effort` on a full-history v2 fork
([openai/codex#20077](https://github.com/openai/codex/issues/20077)), but
[#37252](https://github.com/openai/codex/pull/37252) removed that check, and the current v2 spawn
handler applies model overrides regardless of fork mode. Following the convention is still the
reliable path, because the agent is prompted to avoid overrides on a full fork.

Custom `injectionPrompt` text can use all four placeholders:

| Placeholder | Replaced with |
Expand Down Expand Up @@ -219,8 +227,16 @@ main agent still decides whether to delegate.

### Why did my v2 child use the parent model?

A full-history v2 fork inherits the parent model. Use a spawn that sets `fork_turns` to `"none"` or
a positive partial count before passing a model or effort override.
Spawned agents inherit the parent model whenever `model` is omitted, and that is the default for
every fork mode — not something a full-history fork causes on its own. Codex's built-in v2 usage
hint also tells the agent not to carry overrides on a full-history fork, so it may leave `model`
unset by design. Pass an explicit `model` on a spawn that sets `fork_turns` to `"none"` or a
positive partial count.

If `model` is missing from the tool schema altogether, the cause is exposure rather than fork mode:
check Codex's `features.multi_agent_v2.expose_spawn_agent_model_overrides` (default on), and see
[openai/codex#31814](https://github.com/openai/codex/issues/31814) for ChatGPT-native parents whose
collaboration schema is fixed by the backend.

### Why is a configured model missing from the v2 roster?

Expand Down
8 changes: 6 additions & 2 deletions docs-site/src/content/docs/ja/guides/sub-agent-surface.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,9 @@ v2 ロスターの場合、適格性には 3 つの状態があります。`"v2"

`multiAgentGuidanceEnabled` はデフォルトでオンになっており、両方のサーフェスで opencodex が作成したガイダンスのマスター スイッチです。これをオフにすると、v2 指定ブロックと v1 プロアクティブ テキストの両方が抑制されます。

これらはメイン エージェントに対する指示であり、プロキシ側のスポーン ルーターに対する指示ではありません。 v2 では、全履歴フォークは親モデルを継承し、モデルまたはエフォートのオーバーライドを拒否します。したがって、ガイダンスでは、`model` または `reasoning_effort` を渡すときに `fork_turns: "none"` (または `"3"` などの正の部分ターン カウント) を使用し、タスク メッセージを自己完結型にするように Codex に指示します。
これらはメイン エージェントに対する指示であり、プロキシ側のスポーン ルーターに対する指示ではありません。Codex 自身の v2 usage hint は、全履歴フォーク (`fork_turns` の省略または `"all"`) が親モデルと推論エフォートを継承するため、オーバーライドを一緒に渡さないようエージェントに指示します。したがって、ガイダンスでは、`model` または `reasoning_effort` を渡すときに `fork_turns: "none"` (または `"3"` などの正の部分ターン カウント) を使用し、タスク メッセージを自己完結型にするように Codex に指示します。

これはランタイムが強制する拒否ではなく、プロンプト レベルの規約として扱ってください。かつて Codex は全履歴 v2 フォークで `agent_type`、`model`、`reasoning_effort` を実際に拒否していましたが ([openai/codex#20077](https://github.com/openai/codex/issues/20077))、[#37252](https://github.com/openai/codex/pull/37252) でそのチェックが削除され、現在の v2 spawn ハンドラーはフォーク モードに関係なくモデル オーバーライドを適用します。それでもこの規約に従うのが確実です。エージェントは全履歴フォークでオーバーライドを避けるようプロンプトで指示されているためです。

カスタム `injectionPrompt` テキストでは、次の 4 つのプレースホルダーすべてを使用できます。

Expand Down Expand Up @@ -155,7 +157,9 @@ curl -X PUT http://localhost:10100/api/injection-model \

### v2 の子が親モデルを使用したのはなぜですか?

フルヒストリーの v2 フォークは親モデルを継承します。モデルまたはエフォートオーバーライドを渡す前に、`fork_turns` を `"none"` に設定するスポーン、または正の部分カウントを使用します。
`model` を省略するとサブエージェントは親モデルを継承します。これはフォーク モードに関係のない既定の動作であり、全履歴フォークが単独で引き起こすものではありません。さらに Codex 内蔵の v2 usage hint は全履歴フォークでオーバーライドを渡さないよう指示するため、エージェントが意図的に `model` を未設定のままにする場合があります。`fork_turns` を `"none"` または正の部分カウントに設定したスポーンで `model` を明示的に渡してください。

`model` フィールドがツール スキーマに存在しない場合、原因はフォーク モードではなく公開設定です。Codex の `features.multi_agent_v2.expose_spawn_agent_model_overrides` (既定は有効) を確認し、バックエンドが collaboration スキーマを固定する ChatGPT ネイティブ親については [openai/codex#31814](https://github.com/openai/codex/issues/31814) を参照してください。

### 設定したモデルが v2 ロスターにないのはなぜですか?

Expand Down
8 changes: 6 additions & 2 deletions docs-site/src/content/docs/ko/guides/sub-agent-surface.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,9 @@ v2 로스터의 경우 적합성은 세 가지 상태로 나뉩니다. `"v2"`로

`multiAgentGuidanceEnabled`는 기본적으로 켜져 있으며, opencodex가 작성한 가이드에 대한 전역 스위치입니다. 이 값을 끄면 v2 지정 블록과 v1의 능동적 안내 문구가 모두 사라집니다.

이 값들은 메인 에이전트에 대한 지시이며, 프록시 쪽 스폰 라우터가 아닙니다. v2에서는 전체 히스토리 fork가 부모 모델을 상속하고 모델 또는 추론 강도 오버라이드를 거부합니다. 그래서 가이드는 `model` 또는 `reasoning_effort`를 넘길 때 `fork_turns: "none"`(또는 `"3"` 같은 양수 부분 turn 수)을 사용하고, 작업 메시지를 자체 완결형으로 만들라고 안내합니다.
이 값들은 메인 에이전트에 대한 지시이며, 프록시 쪽 스폰 라우터가 아닙니다. Codex 자체의 v2 usage hint는 전체 히스토리 fork(`fork_turns` 생략 또는 `"all"`)가 부모 모델과 추론 강도를 상속하므로 오버라이드를 함께 넘기지 말라고 에이전트에 지시합니다. 그래서 가이드는 `model` 또는 `reasoning_effort`를 넘길 때 `fork_turns: "none"`(또는 `"3"` 같은 양수 부분 turn 수)을 사용하고, 작업 메시지를 자체 완결형으로 만들라고 안내합니다.

이는 런타임이 강제하는 거부가 아니라 프롬프트 수준의 관례입니다. 과거 Codex는 전체 히스토리 v2 fork에서 `agent_type`, `model`, `reasoning_effort`를 실제로 거부했지만([openai/codex#20077](https://github.com/openai/codex/issues/20077)), [#37252](https://github.com/openai/codex/pull/37252)에서 그 검사가 제거되어 현재 v2 spawn 핸들러는 fork 모드와 무관하게 모델 오버라이드를 적용합니다. 그래도 이 관례를 따르는 편이 안전한데, 에이전트가 전체 fork에서 오버라이드를 피하도록 프롬프트로 지시받기 때문입니다.

사용자 정의 `injectionPrompt`에는 다음 네 개의 플레이스홀더를 모두 쓸 수 있습니다.

Expand Down Expand Up @@ -153,7 +155,9 @@ curl -X PUT http://localhost:10100/api/injection-model \

### v2 자식이 왜 부모 모델을 썼나요?

전체 히스토리 v2 fork는 부모 모델을 상속합니다. `fork_turns`를 `"none"` 또는 양수의 부분 turn 수로 설정한 spawn을 사용한 뒤 모델이나 추론 강도 오버라이드를 넘기세요.
`model`을 생략하면 서브에이전트는 부모 모델을 상속하며, 이는 fork 모드와 무관한 기본 동작입니다. 전체 히스토리 fork 자체가 원인이 아닙니다. 또한 Codex 내장 v2 usage hint가 전체 히스토리 fork에서는 오버라이드를 넘기지 말라고 지시하므로, 에이전트가 의도적으로 `model`을 비워 둘 수 있습니다. `fork_turns`를 `"none"` 또는 양수의 부분 turn 수로 설정한 spawn에 `model`을 명시해서 넘기세요.

`model` 필드가 도구 스키마에 아예 보이지 않는다면 원인은 fork 모드가 아니라 노출 설정입니다. Codex의 `features.multi_agent_v2.expose_spawn_agent_model_overrides`(기본 켜짐)를 확인하고, 백엔드가 collaboration 스키마를 고정하는 ChatGPT 네이티브 부모의 경우 [openai/codex#31814](https://github.com/openai/codex/issues/31814)를 참고하세요.

### 왜 설정한 모델이 v2 로스터에서 빠지나요?

Expand Down
29 changes: 22 additions & 7 deletions docs-site/src/content/docs/ru/guides/sub-agent-surface.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,10 +58,18 @@ TUI-сессии.
guidance-сообщений, которые opencodex пишет сам, на обеих поверхностях. Если выключить его,
подавляются и блок v2 designation, и proactive text для v1.

Это инструкции для основного агента, а не proxy-side spawn router. На v2 полный форк истории
унаследует модель родителя и отвергнет model- или effort-override. Поэтому guidance просит Codex
использовать `fork_turns: "none"` (или положительное частичное число ходов, например `"3"`) при
передаче `model` или `reasoning_effort`, а сообщение задачи делать самодостаточным.
Это инструкции для основного агента, а не proxy-side spawn router. Собственная v2 usage hint Codex
сообщает агенту, что полный форк истории (`fork_turns` опущен или `"all"`) наследует модель и
reasoning effort родителя, поэтому передавать override вместе с ним не следует. Поэтому guidance
просит Codex использовать `fork_turns: "none"` (или положительное частичное число ходов, например
`"3"`) при передаче `model` или `reasoning_effort`, а сообщение задачи делать самодостаточным.

Считайте это соглашением на уровне промпта, а не жёстким отказом во время выполнения. Раньше Codex
действительно отвергал `agent_type`, `model` и `reasoning_effort` на полном форке истории v2
([openai/codex#20077](https://github.com/openai/codex/issues/20077)), но
[#37252](https://github.com/openai/codex/pull/37252) удалил эту проверку, и текущий обработчик v2
spawn применяет override модели независимо от режима форка. Следовать соглашению всё же надёжнее:
агенту предписано избегать override на полном форке.

Пользовательский `injectionPrompt` может использовать все четыре placeholder'а:

Expand Down Expand Up @@ -207,9 +215,16 @@ curl -X PUT http://localhost:10100/api/injection-model \

### Почему мой child v2 использовал модель родителя?

Полный форк истории на v2 наследует модель родителя. Используйте spawn, который задаёт
`fork_turns` как `"none"` или положительное частичное число ходов, прежде чем передавать
model- или effort-override.
Порождённые агенты наследуют модель родителя всякий раз, когда `model` опущен, и это поведение по
умолчанию для любого режима форка, а не следствие полного форка истории. Кроме того, встроенная v2
usage hint Codex предписывает агенту не передавать override на полном форке истории, поэтому он
может намеренно оставить `model` незаданным. Передайте явный `model` в spawn, который задаёт
`fork_turns` как `"none"` или положительное частичное число ходов.

Если поля `model` вообще нет в схеме инструмента, причина в его публикации, а не в режиме форка:
проверьте `features.multi_agent_v2.expose_spawn_agent_model_overrides` в Codex (по умолчанию
включено), а для ChatGPT-native родителей, чья схема collaboration фиксируется бэкендом, см.
[openai/codex#31814](https://github.com/openai/codex/issues/31814).

### Почему настроенная модель не попала в ростер v2?

Expand Down
Loading
Loading