Codex harness
Codex çalışma düzeni referansı
Bu başvuru, resmi codex Plugin'i için ayrıntılı yapılandırmayı kapsar.
Kurulum ve yönlendirme kararları için
Codex çalıştırma ortamı ile başlayın.
Plugin yapılandırma yüzeyi
Tüm Codex çalıştırma ortamı ayarları plugins.entries.codex.config altında bulunur.
{ plugins: { entries: { codex: { enabled: true, config: { discovery: { enabled: true, timeoutMs: 2500, }, appServer: { mode: "guardian", }, }, }, }, },}Üst düzey alanlar:
| Alan | Varsayılan | Anlamı |
|---|---|---|
discovery |
etkin | Codex app-server model/list için model keşfi ayarları. |
appServer |
yönetilen stdio app-server | Aktarım, komut, kimlik doğrulama, onay, sanal alan ve zaman aşımı ayarları. Olağan çalıştırma ortamı varsayılan olarak aracı kapsamlı durumu kullanır. |
codexDynamicToolsLoading |
"searchable" |
OpenClaw dinamik araçlarını doğrudan ilk Codex araç bağlamına yerleştirmek için "direct" kullanın. |
codexDynamicToolsExclude |
[] |
Codex app-server dönüşlerinden hariç tutulacak ek OpenClaw dinamik araç adları. |
codexPlugins |
devre dışı | Bağlı hesap uygulamalarına isteğe bağlı erişim dâhil, yerel Codex Plugin/uygulama desteği. Bkz. Yerel Codex Plugin'leri. |
computerUse |
devre dışı | Codex Bilgisayar Kullanımı kurulumu. Bkz. Codex Bilgisayar Kullanımı. |
supervision |
devre dışı | Arşivlenmemiş yerel oturum kataloğu, yerel dal devamı ve aracı araç politikası. Bkz. Codex gözetimi. |
Gözetim
Gözetim, Gateway bilgisayarındaki ve katılımı etkinleştirilmiş eşleştirilmiş Node'lardaki arşivlenmemiş Codex oturumlarını listeler. Bunu aracı çalıştırma ortamından bağımsız olarak etkinleştirin:
{ plugins: { entries: { codex: { enabled: true, config: { supervision: { enabled: true, }, }, }, }, },}supervision alanları:
| Alan | Varsayılan | Anlamı |
|---|---|---|
enabled |
false |
Yerel oturum kataloğunu duyurur ve Gateway üzerinde, Codex Sessions sayfası için katılımı etkinleştirilmiş eşleştirilmiş Node kataloglarını birleştirir. |
endpoints |
yerleşik yerel uç nokta | Korunan Codex gözetim aracısı ve bağımsız MCP araçları için uyumluluk ve gelişmiş uç nokta hedefleri. İnsan kataloğu ve dal akışı bu hedefleri yok sayar ve appServer üzerinden çözümlenen gözetim App Server'ını kullanır. |
allowRawTranscripts |
false |
Gözetim etkinken, otonom aracının veya bağımsız MCP'nin transkriptleri ve transkriptten türetilen liste alanlarını okumasına izin verir. Yalnızca meta veri içeren codex_threads okumaları kullanılabilir durumda kalır. Kimliği doğrulanmış Control UI devamını denetlemez. |
allowWriteControls |
false |
Gözetim etkinken, otonom codex_threads çatallama, yeniden adlandırma, arşivleme ve arşivden çıkarma değişiklikleriyle birlikte bağımsız MCP gönderme, yönlendirme ve kesme işlemlerine izin verir. Diğer bağlama, ana makine, durum veya onay denetimlerini atlamaz. |
Uç nokta girdileri şu alanları kabul eder:
| Alan | Uygulandığı yer | Anlamı |
|---|---|---|
id |
tümü | Kararlı uç nokta kimliği. |
label |
tümü | İsteğe bağlı görüntüleme etiketi. |
transport |
tümü | "stdio-proxy" veya "websocket". |
command |
stdio-proxy |
İsteğe bağlı App Server komutu. |
args |
stdio-proxy |
İsteğe bağlı komut bağımsız değişkenleri. |
cwd |
stdio-proxy |
İsteğe bağlı alt süreç çalışma dizini. |
url |
websocket |
Gerekli WebSocket veya desteklenen yerel yuva URL'si. |
authTokenEnv |
websocket |
Değeri uç noktanın kimliğini doğrulayan isteğe bağlı ortam değişkeni. |
Codex Sessions sayfası Plugin'in gözetim App Server'ını kullanır ve yalnızca
arşivlenmemiş oturumları gösterir. Açık appServer bağlantı ayarları olmadan bu
bağlantı, yönetilen kullanıcı ana dizini stdio'sudur. Saklanan veya boşta olan
satırlar, son kalıcı kaynak dönüşüne kadarki sınırlı kullanıcı ve asistan
geçmişiyle modele kilitli bir Sohbet oluşturabilir. Özel bağlaması; anlık görüntü
çatallamasını, kurallı appServer kaynak dalını, geçmiş eklemeyi ve sonraki
dönüşleri bu bağlantıda tutar. İlk kurallı başlangıç, çatallamanın döndürdüğü
çifti kullanır. Sonraki sürdürmelerde OpenClaw model ve sağlayıcı geçersiz
kılmaları kullanılmaz; böylece Codex, kurallı iş parçacığının kalıcı çiftini geri
yükler. Ayrı bir yerel değişiklik bu çifti güncelleyebilir ancak dış model ve
yedek zinciri hiçbir zaman onun yerine geçmez. Saklanan ve boşta olan satırlar,
başka çalıştırıcı olmadığı onaylandıktan sonra arşivlenebilir; ancak başka bir
etkin OpenClaw bağlaması tam hedefin veya hedefin arşivlenmemiş oluşturulmuş
alt öğelerinden birinin sahibi olduğunda arşivlenemez. OpenClaw, Codex'in alt öğe
sayfalandırmasını izler ve numaralandırma hataları, döngüler veya güvenlik sınırı
tükenmesi durumunda kapalı kalır. Onay, bilinmeyen yerel istemcileri ve
durumdan arşivlemeye geçiş yarışını kapsamaya devam eder. Gözetimli, modele kilitli
bir Sohbet, yerel bağlamayı korurken silinemez. Etkin kaynaklar dal oluşturamaz
veya arşivlenemez ancak mevcut gözetimli bir Sohbet yine de açılabilir.
Eşleştirilmiş Node satırlarının tümü salt okunur kalır; Node aktarımı henüz
çalıştırma ortamının gerektirdiği akış yaşam döngüsünü sağlamaz.
Tek başına appServer.homeScope: "user", yönetilen çalıştırma ortamı sürecinin
hangi Codex ana dizinini kullandığını değiştirir; filo kataloğunu yayımlamaz.
Gözetimi etkinleştirmek, çalıştırma ortamının varsayılanını değiştirmez. Bunun
yerine ayrı gözetim bağlantısı, açık appServer bağlantı ayarları olmadığında
varsayılan olarak yönetilen kullanıcı ana dizini stdio'sunu kullanır. Açık
ayarlar bu bağlantı için uygulanır. Bekleyen ve kaydedilmiş gözetimli bağlamalar,
her dönüş için bu bağlantıyı korur; devre dışı bırakılan gözetim veya bağlantı/
yaşam döngüsü sapması, aracı ana dizini çalıştırma ortamına geri dönmek yerine
kapalı kalır. Varsayılan bağlantı, yerel Codex istemcileriyle saklanan oturumları
paylaşır; süreçlerine özgü etkinlik durumunu paylaşmaz.
Eski plugins.entries.codex-supervisor ayarları kullanımdan kaldırılmıştır.
Eski girdiyi, uç nokta tanımlarını, politika bayraklarını ve Plugin izin/ret
başvurularını bu bloğa taşımak için openclaw doctor --fix komutunu çalıştırın.
Çakışmalarda açık kurallı codex.config.supervision değerleri önceliklidir.
App-server aktarımı
Olağan çalıştırma ortamı dönüşleri için OpenClaw, resmi Plugin ile gönderilen
yönetilen Codex ikili dosyasını başlatır (şu anda @openai/codex 0.144.1):
codex app-server --listen stdio://Bu, app-server sürümünü yerel olarak yüklenmiş olabilecek ayrı bir Codex CLI
yerine resmi codex Plugin'ine bağlı tutar. Yalnızca bilinçli olarak farklı bir
yürütülebilir dosya kullanmak istediğinizde appServer.command değerini
ayarlayın. Varsayılan yalıtılmış aracı ana dizinine sahip olağan yönetilen
dönüşler, bir macOS masaüstü paketi yüklü olsa bile bu sabitlenmiş paketi tercih
eder. Bilgisayar Kullanımı etkinleştirildiğinde
veya homeScope değeri "user" olup yerel Bilgisayar Kullanımı durumunu
yükleyebildiğinde, yönetilen başlatma bunun yerine gerekli macOS izinlerine
sahip masaüstü uygulaması ikili dosyasını tercih eder. Aynı masaüstü öncelikli
kuralı, yalıtılmış bir aracı ana dizininin etkin Codex yapılandırması yerel
Bilgisayar Kullanımını etkinleştirdiğinde de geçerlidir. Herhangi bir masaüstü
uygulama paketi yüklü değilse OpenClaw, sabitlenmiş paket ikili dosyasına geri
döner.
Yürütülebilir dosya devri ve yerel yapılandırma sınırlaması, çalışan tek bir Gateway sürecindeki istemcileri koordine eder. Başka bir süreç yerel Codex Plugin yapılandırmasını değiştirdikten sonra Gateway'i yeniden başlatın.
Gözetim ayrı bir bağlantı çözümler. Açık appServer bağlantı ayarları yoksa,
homeScope: "user" ile yönetilen stdio kullanır; olağan çalıştırma ortamı ise
homeScope: "agent" ile yönetilen stdio olarak kalır. Açık bağlantı ayarları her
iki yol tarafından da uygulanır. Olağan çalıştırma ortamının $CODEX_HOME
(veya ~/.codex) dizinini yerel istemcilerle paylaşması gerektiğinde
homeScope: "user" değerini açıkça ayarlayın. Özel bir gözetimli bağlama, olağan
çalıştırma ortamı varsayılanından bağımsız olarak gözetim bağlantısını kullanır.
Bağımsız App Server süreçleri ayrı canlı durum ve onay durumunu korur.
Zaten çalışan bir app-server için WebSocket aktarımını kullanın:
{ plugins: { entries: { codex: { enabled: true, config: { appServer: { transport: "websocket", url: "ws://gateway-host:39175", authToken: "${CODEX_APP_SERVER_TOKEN}", requestTimeoutMs: 60000, }, }, }, }, },}appServer alanları:
| Alan | Varsayılan | Anlamı |
|---|---|---|
transport |
"stdio" |
"stdio", Codex'i başlatır; açıkça belirtilen "unix", yerel denetim soketine bağlanır; "websocket", url adresine bağlanır. |
homeScope |
"agent" |
"agent", sıradan çalıştırma düzeneği durumunu her OpenClaw ajanı için yalıtır. "user", yerel $CODEX_HOME veya ~/.codex dizinini paylaşan, yerel kimlik doğrulamayı kullanan ve yalnızca sahibin iş parçacığı yönetimini etkinleştiren açık bir katılım seçeneğidir. Kullanıcı kapsamı, yerel stdio veya Unix aktarımını destekler. Ayrı gözetim bağlantısı için ayarlanmamış bir değer, stdio ya da Unix için "user", WebSocket için "agent" olarak çözümlenir. |
command |
yönetilen Codex ikili dosyası | stdio aktarımı için yürütülebilir dosya. Yönetilen ikili dosyayı kullanmak için ayarlamayın. |
args |
["app-server", "--listen", "stdio://"] |
stdio aktarımı için bağımsız değişkenler. |
url |
ayarlanmamış | WebSocket App Server URL'si veya unix:// URL'si. Açıkça belirtilmiş boş bir Unix yolu, standart kullanıcı ana dizini denetim soketini seçer. |
authToken |
ayarlanmamış | WebSocket aktarımı için Bearer belirteci. Düz metin bir dizeyi veya ${CODEX_APP_SERVER_TOKEN} gibi bir SecretInput değerini kabul eder. |
headers |
{} |
Ek WebSocket üstbilgileri. Üstbilgi değerleri, örneğin x-codex-client-session-token: "${CODEX_CLIENT_SESSION_TOKEN}" biçiminde düz metin dizeleri veya SecretInput değerlerini kabul eder. |
clearEnv |
[] |
OpenClaw devralınan ortamı oluşturduktan sonra, başlatılan stdio app-server işleminden kaldırılan ek ortam değişkeni adları. |
remoteWorkspaceRoot |
ayarlanmamış | Uzak Codex app-server çalışma alanı kökü. Ayarlandığında OpenClaw, yerel çalışma alanı kökünü çözümlenen OpenClaw çalışma alanından çıkarır, geçerli cwd son ekini bu uzak kök altında korur ve Codex'e yalnızca son app-server cwd değerini gönderir. cwd, çözümlenen OpenClaw çalışma alanı kökünün dışındaysa OpenClaw, uzaktaki app-server'a Gateway'e yerel bir yol göndermek yerine güvenli biçimde başarısız olur. |
requestTimeoutMs |
60000 |
app-server denetim düzlemi çağrıları için zaman aşımı. |
turnCompletionIdleTimeoutMs |
60000 |
OpenClaw turn/completed olayını beklerken, Codex'in bir turu kabul etmesinden veya tur kapsamlı bir app-server isteğinden sonraki sessiz bekleme aralığı. |
postToolRawAssistantCompletionIdleTimeoutMs |
300000 |
OpenClaw turn/completed olayını beklerken bir araç devrinden, yerel araç tamamlanmasından, araç sonrası ham asistan ilerlemesinden, ham akıl yürütme tamamlanmasından veya akıl yürütme ilerlemesinden sonra kullanılan tamamlanma-boşta kalma ve ilerleme koruması. Araç sonrası sentezin, son asistan yayın bütçesinden meşru olarak daha uzun süre sessiz kalabildiği güvenilir veya ağır iş yüklerinde bunu kullanın. |
mode |
yerel Codex gereksinimleri YOLO'ya izin vermediği sürece "yolo" |
YOLO veya koruyucu tarafından incelenen yürütme için ön ayar. |
approvalPolicy |
"never" veya izin verilen bir koruyucu onay politikası |
İş parçacığı başlatılırken, sürdürülürken ve tur sırasında gönderilen yerel Codex onay politikası. |
sandbox |
"danger-full-access" veya izin verilen bir koruyucu sandbox'ı |
İş parçacığı başlatılırken ve sürdürülürken gönderilen yerel Codex sandbox modu. Etkin OpenClaw sandbox'ları, danger-full-access turlarını Codex workspace-write ile sınırlar; turun ağ bayrağı, OpenClaw sandbox çıkış ayarını izler. |
approvalsReviewer |
"user" veya izin verilen bir koruyucu inceleyici |
İzin verildiğinde Codex'in yerel onay istemlerini incelemesini sağlamak için "auto_review" kullanın. |
defaultWorkspaceDir |
geçerli işlem dizini | --cwd belirtilmediğinde /codex bind tarafından kullanılan çalışma alanı. |
serviceTier |
ayarlanmamış | İsteğe bağlı Codex app-server hizmet katmanı. "priority" hızlı mod yönlendirmesini etkinleştirir, "flex" esnek işlemeyi ister ve null geçersiz kılmayı temizler. Eski "fast" değeri "priority" olarak kabul edilir. |
networkProxy |
devre dışı | app-server komutları için Codex izin profili ağ kullanımına açıkça katılmayı sağlar. OpenClaw, seçilen permissions.<profile>.network yapılandırmasını tanımlar ve sandbox göndermek yerine bunu default_permissions ile seçer. |
experimental.sandboxExecServer |
false |
Yerel Codex yürütmesinin etkin OpenClaw sandbox'ı içinde çalışabilmesi için desteklenen Codex app-server'a OpenClaw sandbox destekli bir Codex ortamı kaydeden önizleme amaçlı açık katılım seçeneği. |
appServer.networkProxy, Codex sandbox sözleşmesini değiştirdiği için açıkça
belirtilir. Etkinleştirildiğinde OpenClaw, oluşturulan izin profilinin Codex
tarafından yönetilen ağ kullanımını başlatabilmesi için Codex iş parçacığı
yapılandırmasında features.network_proxy.enabled ve default_permissions
değerlerini de ayarlar. OpenClaw varsayılan olarak profil gövdesinden çakışmaya
dayanıklı bir openclaw-network-<fingerprint> profil adı oluşturur; profileName
seçeneğini yalnızca kararlı bir yerel ad gerektiğinde kullanın.
export default { plugins: { entries: { codex: { config: { appServer: { sandbox: "workspace-write", networkProxy: { enabled: true, domains: { "api.openai.com": "allow", "blocked.example.com": "deny", }, allowUpstreamProxy: true, proxyUrl: "http://127.0.0.1:3128", }, }, }, }, }, },};Normal app-server çalışma zamanı danger-full-access olacaksa,
networkProxy etkinleştirildiğinde oluşturulan izin profili bunun yerine çalışma alanı tarzı
dosya sistemi erişimini kullanır. Codex tarafından yönetilen ağ uygulaması korumalı alanlı
ağ iletişimidir; bu nedenle tam erişim profili giden trafiği korumaz.
Plugin, eski veya sürümsüz app-server el sıkışmalarını engeller: Codex app-server,
kararlı 0.143.0 veya daha yeni bir sürüm bildirmelidir.
OpenClaw, local loopback olmayan WebSocket app-server URL'lerini uzak olarak değerlendirir ve
appServer.authToken ya da bir Authorization üst bilgisi aracılığıyla
kimlik taşıyan WebSocket kimlik doğrulaması gerektirir. appServer.authToken ve her
appServer.headers.* değeri bir SecretInput olabilir; sır çalışma zamanı, OpenClaw
app-server başlatma seçeneklerini oluşturmadan önce SecretRef'leri ve ortam değişkeni
kısa gösterimini çözümler; çözümlenmemiş yapılandırılmış SecretRef'ler ise herhangi bir
belirteç veya üst bilgi gönderilmeden önce başarısız olur. Yerel Codex pluginleri
yapılandırıldığında OpenClaw, bu pluginleri kurmak veya yenilemek için bağlı app-server'ın
plugin kontrol düzlemini kullanır ve ardından uygulama envanterini yenileyerek plugin
sahipli uygulamaların Codex iş parçacığı tarafından görülebilmesini sağlar. app/list
envanter ve meta veriler için yetkili kaynak olmaya devam eder; ancak Codex şu anda
uygulamayı devre dışı olarak işaretlese bile, listelenen erişilebilir bir uygulama için
thread/start çağrısının config.apps[appId].enabled = true gönderip göndermeyeceğine
OpenClaw ilkesi karar verir. Bilinmeyen veya eksik uygulama kimlikleri kapalı başarısızlık
davranışını korur; bu yol yalnızca plugin/install aracılığıyla pazar yeri pluginlerini
etkinleştirir ve envanteri yeniler. OpenClaw'ı yalnızca OpenClaw tarafından yönetilen
plugin kurulumlarını ve uygulama envanteri yenilemelerini kabul edeceğine güvenilen
uzak app-server'lara bağlayın.
Onay ve korumalı alan modları
Yerel stdio app-server oturumları varsayılan olarak YOLO modunu kullanır:
approvalPolicy: "never", approvalsReviewer: "user" ve
sandbox: "danger-full-access". Bu güvenilir yerel operatör yaklaşımı, gözetimsiz
OpenClaw işlemlerinin ve heartbeat'lerin, yanıtlayacak kimsenin bulunmadığı yerel onay
istemlerine takılmadan ilerlemesini sağlar.
Codex'in yerel sistem gereksinimleri dosyası örtük YOLO onayı, inceleyicisi veya
korumalı alan değerlerine izin vermiyorsa OpenClaw, örtük varsayılanı bunun yerine
koruyucu olarak değerlendirir ve izin verilen koruyucu izinlerini seçer.
tools.exec.mode: "auto" ayrıca koruyucu tarafından incelenen Codex onaylarını zorunlu
kılar ve güvenli olmayan eski approvalPolicy: "never" veya
sandbox: "danger-full-access" geçersiz kılmalarını korumaz; bilinçli olarak onaysız
bir yaklaşım için tools.exec.mode: "full" ayarlayın. Aynı gereksinimler dosyasındaki
ana bilgisayar adıyla eşleşen [[remote_sandbox_config]] girdileri, korumalı alan
varsayılanı kararında dikkate alınır.
Codex'in koruyucu tarafından incelenen onayları için appServer.mode: "guardian" ayarlayın:
{ plugins: { entries: { codex: { enabled: true, config: { appServer: { mode: "guardian", serviceTier: "priority", }, }, }, }, },}Bu değerlere izin verildiğinde guardian ön ayarı
approvalPolicy: "on-request", approvalsReviewer: "auto_review" ve
sandbox: "workspace-write" olarak genişletilir. Tekil ilke alanları mode değerini
geçersiz kılar. Eski guardian_subagent inceleyici değeri uyumluluk takma adı olarak
hâlâ kabul edilir; ancak yeni yapılandırmalar auto_review kullanmalıdır.
Bir OpenClaw korumalı alanı etkinken yerel Codex app-server işlemi yine de Gateway
ana bilgisayarında çalışır. Bu nedenle OpenClaw, Codex'in ana bilgisayar tarafındaki
korumalı alanını OpenClaw korumalı alan arka ucuyla eşdeğer saymak yerine, söz konusu
işlem için Codex'in yerel Kod Modu'nu, kullanıcı MCP sunucularını ve uygulama destekli
plugin yürütmesini devre dışı bırakır. Normal yürütme/işlem araçları kullanılabilir
olduğunda kabuk erişimi, sandbox_exec ve sandbox_process gibi OpenClaw korumalı alan
destekli dinamik araçlar aracılığıyla sunulur.
Korumalı alanda yerel yürütme
Kararlı varsayılan kapalı başarısızlıktır: etkin OpenClaw korumalı alanı, aksi takdirde
Codex app-server ana bilgisayarından çalışacak yerel Codex yürütme yüzeylerini devre
dışı bırakır. Codex'in uzak ortam desteğini OpenClaw'ın korumalı alan arka ucuyla
denemek istiyorsanız yalnızca appServer.experimental.sandboxExecServer: true
kullanın. Bu ön izleme yolu, desteklenen tüm Codex app-server sürümleriyle çalışır.
{ plugins: { entries: { codex: { enabled: true, config: { appServer: { experimental: { sandboxExecServer: true, }, }, }, }, }, },}Bayrak açıkken ve geçerli OpenClaw oturumu korumalı alandayken OpenClaw, etkin korumalı alan tarafından desteklenen bir local loopback exec-server başlatır, bunu Codex app-server'a kaydeder ve Codex iş parçacığı ile işlemini OpenClaw sahipli bu ortamla başlatır. App-server ortamı kaydedemezse çalışma, sessizce ana bilgisayar yürütmesine geri dönmek yerine kapalı biçimde başarısız olur.
Bu ön izleme yolu yalnızca yereldir. Uzak bir WebSocket app-server, aynı ana bilgisayarda çalışmadığı sürece local loopback exec-server'a erişemez; bu nedenle OpenClaw bu birleşimi reddeder.
Kimlik doğrulama ve ortam yalıtımı
Varsayılan aracı başına ana dizinde kimlik doğrulama şu sırayla seçilir:
- Aracı için açıkça belirtilmiş bir OpenClaw Codex kimlik doğrulama profili.
- App-server'ın söz konusu aracının Codex ana dizinindeki mevcut hesabı.
- Yalnızca yerel stdio app-server başlatmaları için, app-server hesabı bulunmadığında
ve OpenAI kimlik doğrulaması hâlâ gerektiğinde önce
CODEX_API_KEY, ardındanOPENAI_API_KEY.
OpenClaw, ChatGPT aboneliği tarzında bir Codex kimlik doğrulama profili gördüğünde
(OAuth veya belirteç kimlik bilgisi türü), başlatılan Codex alt işleminden
CODEX_API_KEY ve OPENAI_API_KEY değişkenlerini kaldırır. Böylece Gateway düzeyindeki
API anahtarları yerleştirmeler veya doğrudan OpenAI modelleri için kullanılabilir
kalırken yerel Codex app-server işlemlerinin yanlışlıkla API üzerinden
ücretlendirilmesi önlenir.
Açık Codex API anahtarı profilleri ve yerel stdio ortam anahtarı geri dönüşü, devralınan alt işlem ortamı yerine app-server oturum açma mekanizmasını kullanır. WebSocket app-server bağlantıları Gateway ortamındaki API anahtarı geri dönüşünü almaz; açık bir kimlik doğrulama profili veya uzak app-server'ın kendi hesabını kullanın.
Stdio app-server başlatmaları varsayılan olarak OpenClaw'ın işlem ortamını devralır.
OpenClaw, Codex app-server hesap köprüsünün sahibidir ve CODEX_HOME değişkenini söz
konusu aracının OpenClaw durumu altındaki aracıya özel bir dizine ayarlar. Böylece
Codex yapılandırması, hesapları, plugin önbelleği/verileri ve iş parçacığı durumu,
operatörün kişisel ~/.codex ana dizininden sızmak yerine OpenClaw aracısı kapsamında
tutulur.
Yerel Codex durumunu Codex Desktop ve CLI ile paylaşmak için
appServer.homeScope: "user" ayarlayın. Bu yerel kullanıcı ana dizini modu, yönetilen
stdio ve açık Unix aktarımını destekler. Ayarlanmışsa $CODEX_HOME, aksi hâlde
~/.codex kullanılır; buna yerel kimlik doğrulama, yapılandırma, pluginler ve iş
parçacıkları dahildir. OpenClaw, app-server için kimlik doğrulama profili köprüsünü
atlar. Doğrulanmış sahip işlemleri, bu iş parçacıklarını listelemek (isteğe bağlı bir
search filtresiyle), okumak, çatallamak, yeniden adlandırmak, arşivlemek ve arşivden
çıkarmak için codex_threads kullanabilir. Bir iş parçacığını OpenClaw'da sürdürmeden
önce çatallayın; bağımsız Codex işlemleri aynı iş parçacığındaki eşzamanlı yazıcıları
koordine etmez.
Bu homeScope tercihi sıradan çalıştırma düzeneği oturumlarına uygulanır. Codex
Sessions aracılığıyla oluşturulan bir Chat bunun yerine özel gözetim bağlantısını
kullanır; bu bağlantı, kanonik dal ve gelecekteki sürdürmeler için yerel bağlantının
kimlik doğrulama ve sağlayıcı yapılandırmasını korur.
Modeli kilitli, gözetimli bir Chat içinde codex_threads, farklı bir çatalı bağlayamaz
veya Chat'e bağlı yerel iş parçacığını arşivleyemez. Listeleme ve yalnızca meta veri
okuma kullanılabilir durumda kalır. Ham döküm okumaları allowRawTranscripts
gerektirir; bu seçenek devre dışıyken yerel arama döküm ön izlemeleriyle
eşleşebileceğinden liste araması da reddedilir. Başka bir OpenClaw Chat'in sahibi
olmadığı ilişkisiz bir iş parçacığını yeniden adlandırmak, arşivden çıkarmak, bağımsız
olarak çatallamak ve arşivlemek allowWriteControls gerektirir. İki seçenek de kilitli
bağlamayı aşmaz.
OpenClaw, normal yerel app-server başlatmaları için HOME değerini yeniden yazmaz.
openclaw, gh, git, bulut CLI'ları ve kabuk komutları gibi Codex tarafından
çalıştırılan alt işlemler normal işlem ana dizinini görür ve kullanıcı ana dizinindeki
yapılandırma ile belirteçleri bulabilir. Codex ayrıca $HOME/.agents/skills ve
$HOME/.agents/plugins/marketplace.json öğelerini keşfedebilir; bu .agents keşfi
bilinçli olarak operatör ana diziniyle paylaşılır ve yalıtılmış ~/.codex durumundan
ayrıdır.
Varsayılan aracı kapsamında OpenClaw pluginleri ve OpenClaw Skills anlık görüntüleri,
OpenClaw'ın kendi plugin kayıt defteri ve Skills yükleyicisi üzerinden akmaya devam
eder; kişisel Codex ~/.codex varlıkları etmez. Yalıtılmış bir OpenClaw aracısının
parçası olması gereken bir Codex ana dizininden yararlı Codex CLI Skills veya
pluginleriniz varsa bunların envanterini açıkça çıkarın:
openclaw migrate codex --dry-runopenclaw migrate apply codex --yesBir dağıtım ek ortam yalıtımı gerektiriyorsa bu değişkenleri appServer.clearEnv
alanına ekleyin:
{ plugins: { entries: { codex: { enabled: true, config: { appServer: { clearEnv: ["CODEX_API_KEY", "OPENAI_API_KEY"], }, }, }, }, },}appServer.clearEnv yalnızca başlatılan Codex app-server alt işlemini etkiler.
OpenClaw, yerel başlatma normalleştirmesi sırasında CODEX_HOME ve HOME değerlerini
bu listeden kaldırır: CODEX_HOME seçilen aracı veya kullanıcı kapsamını göstermeye
devam eder; HOME ise alt işlemlerin normal kullanıcı ana dizini durumunu
kullanabilmesi için devralınmaya devam eder.
Dinamik araçlar
Codex dinamik araçları varsayılan olarak searchable yüklemeyi kullanır ve
openclaw ad alanı altında deferLoading: true ile sunulur. OpenClaw, Codex'in yerel
çalışma alanı işlemlerini veya Codex'in kendi araç arama yüzeyini yineleyen dinamik
araçları sunmaz:
readwriteeditapply_patchexecprocessupdate_plantool_calltool_describetool_searchtool_search_code
Mesajlaşma, medya, cron, tarayıcı, Node'lar, Gateway, heartbeat_respond ve
web_search gibi kalan OpenClaw entegrasyon araçlarının çoğu, bu ad alanı altındaki
Codex araç araması üzerinden kullanılabilir. Bu, başlangıçtaki model bağlamını daha
küçük tutar. Codex araç araması kullanılamayabileceği veya yalnızca bağlayıcılardan
oluşan bir evrene çözümlenebileceği için küçük bir araç kümesi
codexDynamicToolsLoading değerinden bağımsız olarak doğrudan çağrılabilir durumda
kalır: agents_list, sessions_spawn ve sessions_yield. Geliştirici talimatları,
normal Codex alt aracılarını Codex'e özgü alt aracı çalışmaları için yerel
spawn_agent kullanımına yönlendirmeye devam ederken sessions_spawn, açık OpenClaw
veya ACP yetkilendirmesi için kullanılabilir durumda kalır. Yalnızca mesaj aracı
kullanan kaynak yanıtları da doğrudan kalır; çünkü bu bir işlem denetimi sözleşmesidir.
OpenClaw computer aracı dâhil olmak üzere catalogMode: "direct-only" olarak
işaretlenen araçlar openclaw_direct altında gruplanır. OpenClaw, operatör tarafından
sağlanan girdileri değiştirmeden bu ad alanını Codex'in
code_mode.direct_only_tool_namespaces listesine ekler. Böylece Codex, bu araçları iç
içe Kod Modu tools.* çağrıları üzerinden yönlendirmek yerine normal ve yalnızca kod
modu iş parçacıklarında DirectModelOnly olarak sunar. Bu sınır, görüntü içeren
sonuçlar için gereklidir: iç içe Kod Modu serileştirmesi görüntü çıktısını metne
düzleştirir ve bu da bir sonraki bilgisayar eylemi için gereken ekran görüntüsünü
atar.
codexDynamicToolsLoading: "direct" seçeneğini yalnızca ertelenmiş dinamik araçlarda
arama yapamayan özel bir Codex app-server'a bağlanırken veya tam araç yükünde hata
ayıklarken ayarlayın.
Zaman aşımları
OpenClaw'a ait dinamik araç çağrıları, appServer.requestTimeoutMs değerinden
bağımsız olarak sınırlandırılır. Her Codex item/tool/call isteği, aşağıdaki
sıraya göre kullanılabilir ilk zaman aşımını kullanır:
- Çağrı başına pozitif bir
timeoutMsbağımsız değişkeni. image_generateiçinagents.defaults.imageGenerationModel.timeoutMs.- Yapılandırılmış bir zaman aşımı olmadan
image_generateiçin 120 saniyelik varsayılan görüntü oluşturma süresi. - Medya anlama
imagearacı için milisaniyeye dönüştürülmüştools.media.image.timeoutSecondsveya 60 saniyelik varsayılan medya süresi. Görüntü anlama için bu süre isteğin kendisine uygulanır ve önceki hazırlık çalışmaları nedeniyle azaltılmaz. messagearacı için sabit 120 saniyelik varsayılan süre.- 90 saniyelik varsayılan dinamik araç süresi.
Bu gözetleyici, dış dinamik item/tool/call bütçesidir. Sağlayıcıya özgü
istek zaman aşımları bu çağrının içinde çalışır ve kendi zaman aşımı
anlamlarını korur. Dinamik araç bütçeleri 600000 ms ile sınırlıdır. Zaman aşımı
durumunda OpenClaw, desteklendiği yerlerde araç sinyalini iptal eder ve oturumu
processing durumunda bırakmak yerine turun devam edebilmesi için Codex'e
başarısız bir dinamik araç yanıtı döndürür.
Codex bir turu kabul ettikten ve OpenClaw tur kapsamındaki bir uygulama
sunucusu isteğine yanıt verdikten sonra çalıştırma düzeneği, Codex'in mevcut
turda ilerleme kaydetmesini ve sonunda yerel turu turn/completed ile
tamamlamasını bekler. Uygulama sunucusu appServer.turnCompletionIdleTimeoutMs
süresince sessiz kalırsa OpenClaw, Codex turunu mümkün olan en iyi şekilde
kesintiye uğratır, tanılama amaçlı bir zaman aşımı kaydeder ve sonraki sohbet
mesajlarının güncelliğini yitirmiş bir yerel turun arkasında kuyruğa alınmaması
için OpenClaw oturum hattını serbest bırakır.
Aynı tura ilişkin terminal olmayan bildirimlerin çoğu, Codex turun hâlâ etkin
olduğunu kanıtladığı için bu kısa gözetleyiciyi devre dışı bırakır. Araç
aktarımları daha uzun bir araç sonrası boşta kalma bütçesi kullanır: OpenClaw
bir item/tool/call yanıtı döndürdükten, commandExecution gibi yerel araç
öğeleri tamamlandıktan, ham custom_tool_call_output tamamlanmalarından ve
araç sonrası ham asistan ilerlemesi, ham akıl yürütme tamamlanmaları veya akıl
yürütme ilerlemesinden sonra. Koruma, yapılandırıldığında
appServer.postToolRawAssistantCompletionIdleTimeoutMs değerini kullanır;
aksi takdirde varsayılan olarak beş dakikadır. Aynı araç sonrası bütçe, Codex
bir sonraki mevcut tur olayını yayınlamadan önceki sessiz sentez penceresinde
ilerleme gözetleyicisini de uzatır. Akıl yürütme tamamlanmalarını, açıklama
niteliğindeki agentMessage tamamlanmalarını ve araç öncesi ham akıl yürütme
veya asistan ilerlemesini otomatik bir nihai yanıt izleyebileceğinden, bunlar
oturum hattını hemen serbest bırakmak yerine ilerleme sonrası yanıt korumasını
kullanır. Yalnızca nihai/açıklama niteliğinde olmayan tamamlanmış
agentMessage öğeleri ve araç öncesi ham asistan tamamlanmaları, asistan
çıktısı serbest bırakma mekanizmasını etkinleştirir: Codex daha sonra
turn/completed olmadan sessiz kalırsa OpenClaw, yerel turu mümkün olan en iyi
şekilde kesintiye uğratır ve oturum hattını serbest bırakır. Asistan, araç,
etkin öğe veya yan etki kanıtı bulunmayan tur tamamlama boşta kalma zaman
aşımları dâhil olmak üzere yeniden oynatılması güvenli stdio uygulama sunucusu
hataları, yeni bir uygulama sunucusu denemesinde bir kez yeniden denenir.
Güvenli olmayan zaman aşımları yine de takılı kalan uygulama sunucusu
istemcisini kullanımdan kaldırır ve OpenClaw oturum hattını serbest bırakır.
Ayrıca otomatik olarak yeniden oynatmak yerine güncelliğini yitirmiş yerel
iş parçacığı bağlamasını temizler. Tamamlama izleme zaman aşımları, Codex'e
özgü zaman aşımı metni gösterir: yeniden oynatılması güvenli durumlarda yanıtın
eksik olabileceği belirtilirken güvenli olmayan durumlarda kullanıcıya yeniden
denemeden önce mevcut durumu doğrulaması söylenir. Genel zaman aşımı
tanılamaları; son uygulama sunucusu bildirim yöntemi, ham asistan yanıtı öğe
kimliği/türü/rolü, etkin istek/öğe sayıları ve etkinleştirilmiş izleme durumu
gibi yapısal alanları içerir. Son bildirim ham bir asistan yanıtı öğesiyse
sınırlı bir asistan metni önizlemesi de içerir. Ham istem veya araç içeriğini
içermez.
Model keşfi
Codex Plugin'i varsayılan olarak uygulama sunucusundan kullanılabilir modelleri
ister. Model kullanılabilirliği Codex uygulama sunucusunun sorumluluğundadır;
bu nedenle OpenClaw, paketlenmiş @openai/codex sürümünü yükselttiğinde veya
bir dağıtım appServer.command değerini farklı bir Codex ikili dosyasına
yönlendirdiğinde liste değişebilir. Kullanılabilirlik hesap kapsamlı da
olabilir. Söz konusu çalıştırma düzeneği ve hesaba ait canlı kataloğu görmek
için çalışan bir Gateway üzerinde /codex models komutunu kullanın.
Keşif başarısız olursa veya zaman aşımına uğrarsa OpenClaw, paketlenmiş bir yedek katalog kullanır:
| Model kimliği | Görünen ad | Akıl yürütme düzeyleri |
|---|---|---|
gpt-5.5 |
gpt-5.5 | low, medium, high, xhigh |
gpt-5.4-mini |
GPT-5.4-Mini | low, medium, high, xhigh |
Keşfi plugins.entries.codex.config.discovery altında ayarlayın:
{ plugins: { entries: { codex: { enabled: true, config: { discovery: { enabled: true, timeoutMs: 2500, }, }, }, }, },}Başlangıçta Codex yoklamasını önlemek ve yalnızca yedek kataloğu kullanmak istediğinizde keşfi devre dışı bırakın:
{ plugins: { entries: { codex: { enabled: true, config: { discovery: { enabled: false, }, }, }, }, },}Çalışma alanı önyükleme dosyaları
Codex, yerel proje belgesi keşfi aracılığıyla AGENTS.md dosyasını kendisi
işler. Codex yedekleri yalnızca AGENTS.md eksik olduğunda geçerli olduğundan
OpenClaw, yapay Codex proje belgesi dosyaları yazmaz veya kişilik dosyaları
için Codex yedek dosya adlarına bağımlı olmaz.
OpenClaw çalışma alanı eşdeğerliği için Codex çalıştırma düzeneği, diğer önyükleme dosyalarını geliştirici talimatları olarak iletir, ancak bunu aynı şekilde yapmaz:
TOOLS.md, devralınan Codex geliştirici talimatları olarak iletilir; böylece tur sırasında başlatılan yerel Codex alt ajanları da bunu görür.SOUL.md,IDENTITY.mdveUSER.md, tur kapsamlı iş birliği talimatları olarak iletilir. Yerel Codex alt ajanları bunları devralmaz; böylece alt ajan turları üst ajanın kişiliğini ve kullanıcı profilini edinmez.- Yüklenen kompakt OpenClaw Skills listesi de tur kapsamlı iş birliği geliştirici talimatları olarak iletilir; dolayısıyla yerel Codex alt ajanları bunu da devralmaz.
HEARTBEAT.mdiçeriği eklenmez; heartbeat turları, dosya mevcut ve boş değilse dosyayı okumaya yönelik iş birliği kipi işaretçisi alır.- Yapılandırılmış ajan çalışma alanındaki
MEMORY.mdiçeriği, söz konusu çalışma alanı için bellek araçları kullanılabildiğinde yerel Codex tur girdisine yapıştırılmaz; dosya mevcutsa çalıştırma düzeneği, tur kapsamlı iş birliği geliştirici talimatlarına küçük bir çalışma alanı belleği işaretçisi ekler ve kalıcı bellek ilgili olduğunda Codexmemory_searchveyamemory_getkullanmalıdır. Araçlar devre dışıysa, bellek araması kullanılamıyorsa veya etkin çalışma alanı ajan belleği çalışma alanından farklıysaMEMORY.md, bunun yerine normal sınırlı tur bağlamı yolunu kullanır. BOOTSTRAP.mdmevcut olduğunda OpenClaw tur girdisi başvuru bağlamı olarak iletilir.
Ortam geçersiz kılmaları
Yerel testler için ortam geçersiz kılmaları kullanılmaya devam eder:
OPENCLAW_CODEX_APP_SERVER_BINOPENCLAW_CODEX_APP_SERVER_ARGSOPENCLAW_CODEX_APP_SERVER_MODE=yolo|guardianOPENCLAW_CODEX_APP_SERVER_APPROVAL_POLICYOPENCLAW_CODEX_APP_SERVER_SANDBOX
appServer.command ayarlanmamışsa OPENCLAW_CODEX_APP_SERVER_BIN, yönetilen
ikili dosyayı atlar.
OPENCLAW_CODEX_APP_SERVER_GUARDIAN=1 kaldırılmıştır. Bunun yerine
plugins.entries.codex.config.appServer.mode: "guardian" kullanın veya tek
seferlik yerel test için OPENCLAW_CODEX_APP_SERVER_MODE=guardian kullanın.
Tekrarlanabilir dağıtımlarda yapılandırma tercih edilir; çünkü Plugin
davranışını Codex çalıştırma düzeneği ayarlarının geri kalanıyla aynı
incelenmiş dosyada tutar.