CLI Yaşam Döngüsü
Bu komutlar, yerel opencodex proxy’sini ve Codex entegrasyonunu kurar, çalıştırır, inceler, onarır ve günceller.
Kurulum
Bölüm başlığı “Kurulum”ocx init · ocx setup
Bölüm başlığı “ocx init · ocx setup”Etkileşimli kurulum sihirbazı (setup, init’in bir takma adıdır). Bir
sağlayıcı (önayar veya özel), API anahtarı (değişmez veya ${ENV}), varsayılan
model ve proxy portu sorar; ~/.opencodex/config.json dosyasını kaydeder;
isteğe bağlı olarak proxy’yi $CODEX_HOME/config.toml (varsayılan
~/.codex/config.toml) içine enjekte eder; ve isteğe bağlı olarak Codex
otomatik başlatma dolgusunu kurar.
Proxy yaşam döngüsü
Bölüm başlığı “Proxy yaşam döngüsü”ocx start [--port <port>] [--socks5 [host:port] | --socks5-off]
Bölüm başlığı “ocx start [--port <port>] [--socks5 [host:port] | --socks5-off]”Proxy sunucusunu başlatın (tercih edilen port 10100). PID/çalışma zamanı portu
durumunu yazar ve ikinci bir canlı örneği başlatmayı reddeder. Tercih edilen port
doluysa start, portu tutan süreci sorgular ve her iki durumda da durur: orada bir
opencodex yanıt veriyorsa başlatmayı reddeder, aksi halde portu tutan sürecin
tanımlanamadığını bildirir. İlk proxy’yi çalışır durumda bırakıp Codex’i ikinciye
yönlendireceği için dinleyiciyi kendiliğinden başka bir porta taşımaz. Aynı
OPENCODEX_HOME kullanılırken farklı bir --port açıkça verilse de başlangıç reddedilir;
yalnızca gözlem ve sınır uygulama kiplerinin ikisi de aynı harcama günlüğüne yazar. Bağımsız
bir kardeş örnek için ayrı bir OPENCODEX_HOME kullanın. port: 0 yalnızca port seçimini
işletim sistemine bırakır, durumu ayırmaz. Başlangıçta her sağlayıcının modellerini Codex’in kataloğuna
senkronize eder. Kapatıldığında — yönetilen bir servis olarak başlatılmadığı sürece
(OCX_SERVICE=1) — yerel Codex’i geri yükler. Çalışan bir proxy’nin yanında başlatılan kardeş örnek,
ocx stop ya da bir sinyalle durdurulduğunda da dahil ikisini de yapmaz: yalnızca kendi portundaki
doğrudan istekleri karşılar ve Codex, Grok ile Claude zaten çalışmakta olan proxy’yi göstermeye devam eder.
--socks5 (varsayılan 127.0.0.1:10808) SOCKS5 URL’sini config.proxy içine kaydeder ve giden
HTTP(S) isteklerini gerçek bir SOCKS5 tünelinden yönlendirir. --socks5-off yalnızca kaydedilmiş
SOCKS5 proxy’sini temizler; HTTP proxy’sini silmez. Değer yapılandırmada tutulduğu için ocx update
sonrasında da korunur. URL kullanıcı adı ve parola içerebilir, ancak başlangıç günlüklerinde gizlenir.
ocx startocx start --port 8080ocx start --port 10100 --socks5ocx start --socks5-offocx stop
Bölüm başlığı “ocx stop”Çalışan proxy’yi (PID’ye göre) durdurun, PID dosyasını kaldırın ve yerel Codex’i
geri yükleyin. Yönetilen bir arka plan servisi kuruluysa ocx stop proxy’yi
yeniden oluşturamaması için önce onu da durdurur. Web kontrol panelinin Durdur düğmesi aynı eylemi (POST /api/stop) Windows Görev Zamanlayıcı dışındaki tüm arka uçlarda çalıştırır: orada görev bittikten sonra sarmalayıcı proxy’yi yeniden başlatabilir, bu yüzden panel respawnable_service ile reddeder, hiçbir şeyi değiştirmez ve ocx stop çalıştırmanızı ister.
ocx restart
Bölüm başlığı “ocx restart”Bir proxy çalışırken bu tam onaylanmış PID ve porttan yerinde yeniden
başlatmasını isteyin, normal boşaltmasını bekleyin ve aynı portta farklı bir
çalışma zamanı PID’sini doğrulayın. Yönetilen yönlendirme ve servis denetimi
boyunca kurulu kalır; belirsiz bir istek ayrı bir durdurma/başlatma olarak
yeniden oynatılmak yerine gözlemlenir. Hiçbir proxy çalışmıyorsa komut normal
ensure başlangıcına geri döner. Canlı bir dinleyici bir çalışma zamanı
PID’sine (güncelleme öncesi proxy dahil) onaylanamazsa yeniden başlatma bir
ensure veya durdurma/başlatma geri dönüşü olmadan kapalı olarak başarısız
olur. Sahipliği onayladıktan sonra bağımsız bir proxy için ocx stop ardından
ocx start kullanın. Servis tarafından yönetilen bir proxy için denetimin geri
yüklenmesi amacıyla ocx stop ardından ocx service start kullanın.
ocx ensure
Bölüm başlığı “ocx ensure”Bir arka plan proxy’sinin çalıştığından eşgüçlü olarak (idempotently) emin olun,
ardından canlı model kataloğunu senkronize edin. codexAutoStart false ise
otomatik başlatmanın devre dışı bırakıldığını yazdırır ve hiçbir şey yapmaz.
ocx restore [back] · ocx eject [back]
Bölüm başlığı “ocx restore [back] · ocx eject [back]”Proxy’yi durdurmadan yerel Codex’i geri yükleyin — enjekte edilen
yapılandırma satırlarını ve yönlendirilen katalog girdilerini kaldırır, böylece
düz codex tekrar yerel olarak çalışır. eject, restore’un bir takma adıdır.
Geri yüklenen katalog, gpt-5.3-codex-spark dahil kullanımdan kaldırılan yerel modellerin
yalın kimliklerini ve güvenilir hesap önekli girdilerini dışarıda bırakır. Katalog yedeği olsa da
olmasa da bu kural geçerlidir; özgün yedek ve kullanıcının geçmiş model seçimleri korunur.
Proxy yaşam döngüsünü değiştirmeden düz codex’i zaten çalışan bir proxy’ye
yeniden yönlendirmek için her iki yazıma da back iletin:
ocx restore backocx eject backocx recover-history --legacy-openai --yes
Bölüm başlığı “ocx recover-history --legacy-openai --yes”Tersine çevrilebilir yedekleme desteği var olmadan önce Codex App geçmişini yeniden eşleyen eski geliştirme derlemeleri için açık kurtarma. Geçmiş veritabanı kilitliyse önce Codex’i kapatın.
Bu, geniş kapsamlı ve yıkıcı bir yeniden etiketlemedir: kullanıcı iletisi bulunan ve şu anda
opencodex olarak etiketlenmiş her thread openai olarak değiştirilir, exec değeri cli
olarak normalleştirilir ve event marker ayarlanır. Geçerli dedicated-provider geçmişi de kapsama
dahildir. Durumu yedekleyin ve yalnızca bu kapsamın tamamını istiyorsanız çalıştırın.
ocx recover-history --ocx-compaction <thread-id> --yes
Bölüm başlığı “ocx recover-history --ocx-compaction <thread-id> --yes”Yönlendirilmiş bir sağlayıcı üzerinden sıkıştırılmış bir görevi yerel Codex ile sürdürmeden önce geçmişini onarın. Komut UUID ile yalnızca bir görevi seçer, önce özel ve bayt bayt bir yedek kaydeder, ardından yalnızca OpenCodeX’e ait ocx1: sıkıştırma durumunu yerel Codex’in yeniden oynatabileceği düz bir özete dönüştürür. Yerel şifreli içerik ve diğer görevler değişmeden kalır. Komutu çalıştırmadan önce seçili görevi kapatın; işlem sırasında rollout değişirse kurtarma dosyayı değiştirmeden durur.
ocx uninstall · ocx remove
Bölüm başlığı “ocx uninstall · ocx remove”Servisi ve proxy’yi durdurun, servisi ve Codex dolgusunu kaldırın, yerel Codex’i
geri yükleyin, ardından yalnızca tüm geri yükleme adımları başarılı olduysa
opencodex yerel yapılandırmasını kaldırın. remove, uninstall’ın bir takma
adıdır. Yapılandırma temizliği yeni bir yükleme tarafından oluşturulan sahiplik
meta verilerini gerektirir; eski veya paylaşılan dizinler yerinde bırakılır.
Durum ve sağlık
Bölüm başlığı “Durum ve sağlık”ocx status [--json]
Bölüm başlığı “ocx status [--json]”Salt okunur bir tanılama özeti yazdırın: proxy PID, /healthz erişilebilirliği,
kontrol paneli URL’si, yapılandırma yolu, varsayılan sağlayıcı, Codex otomatik
başlatma ayarı, servis durumu, dolgu durumu ve maskelenmiş etkin Codex konumu.
Yalnızca açık, yüksek güvenilirlikli Windows Orca çalışma zamanı ana dizini
imzası eyleme geçirilebilir bir Uygulama-ana dizini uyumsuzluğu uyarısı ekler;
asla CODEX_HOME’u otomatik olarak değiştirmez.
İnsan çıktısı ayrıca OAuth girişleri özetinden sonra bir OAuth sağlığı bloğu
içerir: bilinen her hesap sağlıklı olduğunda OAuth health: ok veya sağlıklı
olmayan hesap başına (sağlayıcı, maskelenmiş hesap kimliği, yeniden kimlik
doğrulama gereksinimi, hız veya kota sınırlaması veya yenileme çakışması gibi
durum) artı isteğe bağlı bir Action: ipucu ile maskelenmiş bir satır içeren
OAuth health: warning. Hesap kimlikleri maskelenir; belirteçler ve e-postalar
asla yazdırılmaz. --json sözleşmesi şu anda bu sağlık bloğunu içermez.
ocx statusocx status --jsonKısaltılmış örnek şekli:
{ "schemaVersion": 1, "proxy": { "running": false, "pid": null, "health": { "ok": false, "url": "http://127.0.0.1:10100/healthz", "message": "unreachable" } }, "dashboard": { "url": "http://localhost:10100/" }, "paths": { "config": "/Users/example/.opencodex/config.json", "pid": "/Users/example/.opencodex/ocx.pid", "runtime": "/path/to/bun" }, "runtime": { "source": "bundled" }, "codexHome": { "effectiveCodexHome": "C:\\Users\\[USER]\\.codex", "appCodexHome": "C:\\Users\\[USER]\\.codex", "mismatch": false, "warning": null, "action": null }, "codexAutostart": true, "defaultProvider": "openai", "service": { "summary": "not installed (logs: /Users/example/.opencodex/service.log)" }, "codexShim": { "summary": "Codex autostart shim: not installed" }}Gerçek nesne ayrıca listen (port, ana bilgisayar adı, çalışma
zamanı/yapılandırma kaynağı), yapılandırma yükleme tanılamalarını ve paketlenmiş
Codex eklenti tanılamalarını içerir. JSON şeması yalnızca eklemelidir:
gelecekteki sürümler alanlar ekleyebilir, ancak mevcut alanlar kararlı
kalmalıdır. API anahtarlarını, OAuth belirteçlerini, yetkilendirme başlıklarını,
istek içeriğini, e-postaları ve hesap kimliklerini kasıtlı olarak hariç tutar.
ocx health [--json]
Bölüm başlığı “ocx health [--json]”Canlı proxy’yi kimlik kontrolünden geçirin. İnsan çıktısı PID/port bildirir;
--json, {ok, pid, port} yayar. Komut yalnızca sağlıklı olduğunda 0 ve aksi
takdirde 1 ile çıkar, bu da onu servis probları için uygun hale getirir.
ocx ready [--json] [--wait [--timeout <seconds>]]
Bölüm başlığı “ocx ready [--json] [--wait [--timeout <seconds>]]”Kimliği doğrulanmamış GET /readyz uç noktası aracılığıyla senkronizasyon
sonrası hazırlığı kontrol edin. Hazır olduğunda 200 veya pending ve terminal
failed için Retry-After: 1 ile 503 döndürür. Temizlenmiş HTTP kimliği
{service, version, uptime, pid, port, status, protocol, minimumClientProtocol, managementUrl} şeklindedir. protocol hub’ın güncel uzak protokolünü, minimumClientProtocol uyumlu en düşük istemci protokolünü ve managementUrl tarayıcıya görünen kanonik yönetim origin’ini belirtir. /readyz içermeyen
eski proxy’ler unreachable olarak kapalı başarısız olur; /healthz hazırlık
değil, ayrı bir canlılıktır. Komut varsayılan olarak bir prob gerçekleştirir;
--wait, hazır olana veya zaman aşımına kadar yoklar, ancak terminal failed
durumunu gözlemlediğinde hemen çıkar. Varsayılan zaman aşımı 45 saniyedir;
--timeout <seconds> --wait gerektirir ve 1–300 arası pozitif tamsayı
saniyeleri kabul eder. CLI JSON, status’un ready, pending, failed veya
unreachable olduğu {ready, status, pid, port} yayar. Çıkış kodları hazır
için 0; hazır değil, beklemede, başarısız, zaman aşımı veya erişilemez için 1;
ve geçersiz bağımsız değişkenler için 64’tür.
ocx doctor
Bölüm başlığı “ocx doctor”Salt okunur ortam ve bağlantı tanılamalarını çalıştırın: durum yolları ve dosya sistemi türü, WSL ikili yüklemeleri, proxy ortamı/yapılandırması, ChatGPT erişilebilirliği, Codex eklentisi ve proje yapılandırması uyarıları ve bekleyen geçmiş geçişi. Codex app-home hedefleme bölümü ayrıca dar Windows Orca çalışma zamanı ana dizini uyumsuzluğunu algılar ve geçerli olduğunda servis geçişini açıklar. Bu tanılama tarafından gösterilen yollar işletim sistemi kullanıcı adını maskeler. Doctor onarım ipuçları yazdırır ancak bunları uygulamaz.
OAuth güvenilirliği bölümü kimlik bilgisi depolama alanının yazılabilir olup
olmadığını, OPENCODEX_HOME altında yenileme tek uçuş/kilit dosyalarının
oluşturulup oluşturulamayacağını, bir kurtarma Action: ile sağlıklı olmayan
OAuth veya Codex havuz hesaplarını (maskelenmiş kimlikler) ve Codex iletme
yolunun resmi istemci meta verileri üretmediğine dair statik bir OK bildirir.
Doctor asla kimlik bilgilerini değiştirmez veya onarımlar uygulamaz.
Katalog senkronizasyonu
Bölüm başlığı “Katalog senkronizasyonu”ocx sync [--restart-codex] [--restart-app-server-only]
Bölüm başlığı “ocx sync [--restart-codex] [--restart-app-server-only]”Yapılandırılmış her sağlayıcıdan canlı model listesini alın ve birleştirilmiş kataloğu Codex’e yeniden enjekte edin. Bir sağlayıcı ekledikten sonra veya kullanılabilir modelleri yenilemek için çalıştırın.
Sağlayıcı keşfinden veya katalog/önbellek değiştirmeden önce ocx sync,
yönetilen Codex yapılandırmasının enjekte edilip edilemeyeceğini doğrular. Bu
doğrulama yapılandırmayı reddederse komut sıfır olmayan bir çıkış yapar, somut
nedeni stderr’e yazdırır ve mevcut kataloğu ve önbelleği değiştirmeden bırakır.
ocx restore back, yönlendirmeyi yeniden etkinleştirmeden önce aynı yazmasız ön
kontrolü kullanır.
Uzun ömürlü Codex app-server süreçleri hala çalışıyorsa ocx sync,
opencodex-catalog.json / models_cache.json güncellenmiş olsa bile önceki
bellek içi model listesini sunmaya devam edebilecekleri konusunda uyarır.
Eşleşen codex … app-server ve codex-code-mode-host süreçlerini yeniden
başlatmak ve model seçicinin kataloğu yeniden okuması için Codex masaüstü
uygulamasını macOS, Linux ve Windows’ta tamamen kapatıp yeniden başlatmak üzere
--restart-codex iletin. Canlı konuşmalar sona erer. Geniş pkill -f codex
eşleştirmesinden kasıtlı olarak kaçınılır.
--restart-desktop-app, --restart-codex için kullanımdan kaldırılmış bir
takma addır. Hâlâ çalışır, bir kullanımdan kaldırma bildirimi basar ve yalnızca
Windows’a özgü değildir.
--restart-app-server-only eski dar davranışı geri getirir: yalnızca geçerli
kullanıcıya ait eşleşen app-server / code-mode-host süreçlerine SIGTERM
gönderir, masaüstü uygulamasını çalışır bırakır (aktif turlar yine kesintiye
uğrayabilir). --restart-codex veya --restart-desktop-app ile birlikte
verilirse dar kapsam kazanır; çünkü canlı konuşmaları kaybetmek geri
alınamaz, eski bir seçici ise alınabilir.
Komut Codex uygulamasının içinden çalıştırıldığında yeniden başlatma ayrılmış bir yardımcıya devredilir ve bu oturum uygulamayla birlikte sona erer.
ocx sync-cache [--restart-codex] [--restart-app-server-only]
Bölüm başlığı “ocx sync-cache [--restart-codex] [--restart-app-server-only]”Codex’in yerel model seçici önbelleğini geçersiz kılın, böylece aktif opencodex
kataloğundan yeniden oluşturulur. ocx sync ile aynı eski app-server uyarısı
ve isteğe bağlı yeniden başlatma bayrakları geçerlidir.
ocx catalog pull <https-url> [--auth-env <NAME>] [--json] [--restart-codex] [--restart-app-server-only]
Bölüm başlığı “ocx catalog pull <https-url> [--auth-env <NAME>] [--json] [--restart-codex] [--restart-app-server-only]”Başka bir OpenCodex örneğinin /v1/catalog uç noktasının sunduğu eksiksiz kataloğu kurar ve
ardından models_cache.json dosyasını eşitler. URL HTTPS olmalıdır; HTTP yalnızca loopback için
kabul edilir. URL içine gömülü kimlik bilgileri, sorgular, parçalar, yönlendirmeler, boyutu aşan
yanıtlar ve geçersiz kataloglar, herhangi bir yerel yazma işleminden önce reddedilir. Kimlik
doğrulama isteğe bağlıdır ve yalnızca ortam değişkeni adıyla (--auth-env) okunur, argv’den
alınmaz.
HTTP_PROXY veya http_proxy geçerliyken NO_PROXY ya da no_proxy içinde eşleşen bir istisna yoksa loopback HTTP istekleri, kimlik doğrulama başlıkları eklenmeden ve herhangi bir istek gönderilmeden reddedilir. ALL_PROXY/all_proxy ve yalnızca HTTPS_PROXY/https_proxy ayarları bu HTTP kısıtlamasını tetiklemez; HTTPS üzerinden katalog alımına izin verilmeye devam edilir. Ret mesajı proxy adresini veya kimlik doğrulama belirtecini içermez. Boş olmayan http_proxy ve no_proxy değerleri sırasıyla HTTP_PROXY ve NO_PROXY değerlerinden önce gelir. Bun ile uyumlu proxy atlama kuralları için ana makine adları, eşleşen host:port girdileri, [::1] gibi köşeli parantez içindeki IPv6 adresleri veya * kullanın; URL, yol veya *. öneki kullanmayın.
Katalog ve önbellek, paylaşılan Codex katalog kilidi altında yazılır; bir hata durumunda
last-known-good dosyalar korunur. Aynı baytlar, mtime değerlerini koruyan bir no-op’tur.
--restart-codex, --restart-app-server-only ve kullanımdan kaldırılmış takma ad
--restart-desktop-app yalnızca gerçek bir yazmadan sonra uygulanır ve ocx sync /
ocx sync-cache ile aynı anlama gelir. ETag koşullu istekleri bu komutun kapsamında
değildir. Tam --json zarfı ve çıkış kodları için İngilizce referansa bakın.
Arka plan servisi
Bölüm başlığı “Arka plan servisi”ocx service [install|repair|restart|start|stop|status|uninstall|remove]
Bölüm başlığı “ocx service [install|repair|restart|start|stop|status|uninstall|remove]”opencodex’i oturum açmada otomatik başlayan ve çökmede otomatik yeniden başlayan
oturumla yönetilen bir arka plan servisi (macOS launchd, Linux systemd
kullanıcı birimi, Windows Görev Zamanlayıcı) olarak çalıştırın. Servis
çalıştırmaları OCX_SERVICE=1 ayarlar, böylece bir yeniden başlatma Codex
yapılandırmasını dalgalandırmaz.
Windows Görev Zamanlayıcı kurulumları normal işlem önceliğini (Priority=4) kullanır. Eski arka plan
önceliği (7; değer belirtilmediğinde de zamanlayıcının varsayılanı 7 olur), CPU çekişmesi sırasında
sağlık denetimi yanıtlarını geciktirebilir ve işlem çalışırken bile sistem tepsisinde Offline görünmesine neden olabilir.
Güncellemeden sonra kayıtlı bu önceliği değiştirmek ve servisi yeniden başlatmak için ocx service repair komutunu çalıştırın.
UAC onayı gerekebilir. Zaten normal veya yüksek öncelik ayarlanmışsa yalnızca öncelik nedeniyle yeniden kayıt yapılmaz.
Linux’ta systemd birimi, kurulum sırasında PATH üzerinde bulunan ilk normal, çalıştırılabilir ocx
dosyasını çağırır; kurulu paket ağacındaki Bun ve CLI yollarını değil. mise ve asdf gibi sürüm
yöneticileri sürümlü bir dizine kurar ve yükseltmede eskisini siler; kararlı shim’leri birimin
çözümlenmeye devam etmesini sağlar. ocx başlatıcısı olmayan kaynak checkout’ları doğrudan Bun + CLI
biçimini korur. Bun başlamadan önce seçilen güvenilir bir OPENCODEX_BUN_PATH shim üzerinden korunur;
paket içindeki paketlenmiş Bun yolları yükseltmelerden sonra yeniden keşfedilir.
macOS’ta launchd bunun yerine kurulum veya repair sırasında seçilen paket içi Bun ve CLI yollarını
kullanır. Bu, değiştirilebilir bir PATH shim’inin sonraki bir yeniden başlatmada servis API token’ını
ve yapılandırılmış proxy ortamını almasını engeller. Sürüm yöneticili bir kurulumu yükselttikten sonra,
servisi yeniden başlatmadan önce bu yolları tazelemek için ocx service repair komutunu çalıştırın.
Bu değişiklikten önce kurulan tanımlar hâlâ eski sürümlü yolları taşır ve kendilerini taşıyamaz —
eski yürütülebilir dosya silindiğinde, onu düzeltecek hiçbir opencodex kodu çalışmaz. Yükseltmeden
sonra bir kez ocx service repair çalıştırın. Bundan sonra Linux servis başlatmaları başlatıcıyı
izler; macOS repair’i yeni paket yollarını launchd tanımına yazar. Zaten çalışan bir proxy harici
yükseltmeyle değiştirilmez: kurulu CLI çalışan proxy’den daha yeni ise, yeni derlemenin hizmet vermesi
için ocx service restart çalıştırın. macOS’ta bu durumda repair yeterli değildir: tanım değişmedi
ve hiçbir şeyi değiştirmeyen bir repair hiçbir şeyi yeniden yüklemez. Bunun yerine proxy daha yeni ise,
ocx status altında açıklandığı gibi CLI kurulumunu ve PATH’i kontrol edin.
| Alt komut | Eylem |
|---|---|
| none | Servis yoksa kurup başlatın; varsa mevcut servise repair uygulayın. Sağlıklı bir Windows Task Scheduler tanımı yeniden kullanılır; eski bir tanım yeniden kaydedilebilir ve yükseltme gerektirebilir. |
install |
Servisi oluşturun ve başlatın. Kaydeder, bu da Windows’ta yükseltme gerektirir. |
repair |
Kurulu bir servisi yerinde yenileyin. macOS’ta yönetici yalnızca bir şey değiştiğinde yeniden yüklenir; böylece sağlıklı, değişmemiş bir iş çalışmaya devam eder ve yenileme bir kesinti olmaz. Linux ve Windows’ta servis yeniden başlatılır; sağlıklı bir Windows Task Scheduler tanımı yeniden kullanılır, eski bir tanım ise yeniden kaydedilebilir ve yükseltme gerektirebilir. |
restart |
Aynı yenileme ve her platformda garantili yeniden başlatma. macOS’ta değişmemiş, zaten yüklü bir iş yerinde kickstart edilir. repair komutunun takma adı değildir. |
start |
Kurulu bir servisi başlatın. |
stop |
Servisi durdurun ve yerel Codex’i geri yükleyin. |
status |
Servis ve proxy tanılamalarını artı günlük yollarını bildirin. |
uninstall |
Servisi kaldırın ve yerel Codex’i geri yükleyin. |
remove |
uninstall’ın takma adıdır. |
ocx serviceocx service installocx service repairocx service restartocx service statusocx service uninstallWindows’ta bare ocx service, yükleme yolunu ancak Task Scheduler ve WinSW’nin her ikisinin de yok olduğu kanıtlandıktan sonra çalıştırır. Durum sorgularından herhangi biri belirsizse hiçbir şey kaydetmeyi reddeder ve ocx service status çalıştırmanızı ister; yalnızca yokluk doğrulandıktan sonra açık ocx service install kullanın.
install, start ve repair, başarı bildirmeden önce kurulu servise
yerleştirilmiş portta bir proxy’nin gerçekten yanıt verdiğini onaylar — her üç
platformda da. 20 saniyeye kadar beklerler ve ardından sunulan portu
yazdırırlar:
✅ opencodex service installed and serving on port 10100.Hiçbir şey yanıt vermezse uyarırlar ve sıfır olmayan bir çıkış yaparlar:
⚠️ Service installed, but no proxy answered on port 10100 within 20s. The manager registered the job; that is not the same as serving. Log: ~/.opencodex/service.log Meanwhile: ocx start (serves in the foreground)Burada sıfır olmayan bir çıkış, kurulu değil değil, kayıtlı ancak hizmet
vermiyor anlamına gelir. Servis yöneticisi işi kabul etti; arkasındaki proxy
asla portu bağlamadı. Mesajda adı geçen günlüğü okuyun ve bu arada ön planda
hizmet vermek için ocx start kullanın.
ocx service status ham yönetici çıktısı yerine aynı üç durumu bildirir:
✅ installed and loaded (launchd; logs: …) Serving on port 10100.⚠️ installed and loaded (launchd; logs: …) Registered, but no proxy is answering on port 10100. launchd is running an OLDER plist than the one on disk. Fix: launchctl bootout gui/$(id -u)/com.opencodex.proxy && ocx service repair Log: ~/.opencodex/service.log Repair: ocx service repair Meanwhile: ocx start (serves in the foreground)Artık hizmet veriyor, hiçbir şeye bağlı değil veya önceki bir tanımı
çalıştırıyor olsa da kayıtlı bir işi aynı şekilde bildiren ham launchctl list
/ systemctl status satırını yazdırmaz. Diagnostics: satırı hala günlük
yolunu ve herhangi bir eski yerleşik yol bulgusunu taşır.
Windows’ta zamanlayıcı arka ucu Görev Zamanlayıcı kaydını proxy erişilebilirliğinden ayrı olarak bildiren kendi daha zengin durum çıktısını tutar.
macOS’ta bu daha ince bir arızayı da kapsar: launchctl load 0 ile çıkarken
stderr’de arıza bildirir, bu nedenle tutmayan bir yükleme komut bir onay işareti
yazdırırken launchd’nin servis tanımının önceki bir sürümünü çalıştırmasına
neden olurdu. install artık bu durumda yüksek sesle başarısız olur ve eski işi
temizleyen launchctl bootout komutunu adlandırır.
Windows’ta ocx service status, Görev Zamanlayıcı kaydını kimliği doğrulanmış
OpenCodex proxy erişilebilirliğinden ayrı olarak bildirir. Yerelleştirilmiş
schtasks tablosunu yazdırmaz, bu nedenle özet Windows kod sayfaları arasında
okunabilir kalır.
Windows’ta Görev Zamanlayıcı girdisini oluşturmak yükseltme gerektirir. Tanınan
yerelleştirilmiş erişim reddedildi metni mevcut rehberlik yolunu korur. Bu metin
okunamıyorsa geri dönüş /create /tn opencodex-proxy /xml <bos-olmayan-yol> /f
sahip olunan komut şeklini, durum 1’i ve onaylanmış yükseltilmemiş bir belirteci
gerektirir; kontrol panelinin Başlangıç Güvenliği eylemi daha sonra UAC’yi
otomatik olarak isteyebilir. Bu geri dönüş belirteç durumunu belirleyemezse
orijinal zamanlayıcı hatasını korur. Yabancı görevler ve işlemler asla otomatik
yükseltme işaretçisini yayamaz. Kontrol paneli UAC istemini onaylayın veya
yükseltilmiş bir PowerShell penceresinde ocx service install’ı yeniden
çalıştırın.
OpenCodex zamanlayıcı görevinin kesinlikle bulunmadığı yeni bir kurulum için UAC onayı artık yükleyici mevcut herhangi bir proxy’yi durdurmadan önce gerçekleşir. Görev çalıştırılmadan kaydedilir; yalnızca kayıt başarılı olduktan sonra OpenCodex eski dinleyiciyi durdurur, servis varlıklarını yayınlar ve zamanlanmış görevi başlatır. Bu nedenle UAC’yi iptal etmek veya reddetmek çalışan proxy’yi ve Codex yönlendirmesini yerinde bırakır. Mevcut veya çakışan zamanlayıcı kayıtları güvenli olmayan en iyi çaba geri alması olarak silinmek yerine kapalı olarak başarısız olmaya devam eder.
ocx codex-shim <install|status|uninstall|remove>
Bölüm başlığı “ocx codex-shim <install|status|uninstall|remove>”PATH üzerindeki betik tabanlı bir codex başlatıcısını hafif bir otomatik
başlatma betiği ile sarın. Tam yürütülebilir çağrıları bozmaktan kaçınmak için
gerçek codex.exe hedefleri dokunulmadan bırakılır.
Bir kurulum veya onarım uygulanmadan önce OpenCodex servis başlangıcı atlanırken
kaydedilen başlatıcıyı --version ile çalıştırır. Başlatıcı codex’i tekrar
dolguya çözdüğünde, sıfır olmayan bir çıkış yaptığında, beş saniyeyi aştığında,
alt süreçleri çalışır durumda bıraktığında veya güvenli bir şekilde doğrulanıp
temizlenemediğinde değişikliği reddeder ve geri alır. Bu nedenle codex-shim install koşulsuz değildir. Reddedilirse PATH girdisinin somut bir yürütülebilir
dosya veya başlatıcı olması için Codex’i yeniden yükleyin ve yeniden deneyin;
dinamik bir komut yöneticisi başlatıcısı bu denetimleri karşılayamadığında bunun
yerine ocx service install kullanın. Yükseltmeler sırasında geçerli doğrulama
korumasından yoksun kurulu bir Unix dolgusu yeniden oluşturulur ve araştırılır.
Kaydedilen başlatıcısı güvenli değilse OpenCodex güvensiz sarmalayıcıyı kurulu
bırakmak yerine eski dolguyu kaldırır ve orijinal başlatıcıyı geri yükler.
Yalnızca başlatıcı kurulumu Codex isteklerinin OpenCodex kullanacağını
kanıtlamaz. Sağlıklı bir kurulumdan sonra komut geçerli Codex yönlendirmesini
kontrol eder ve yönlendirme harici, kullanıcıya ait veya doğrulanamaz olduğunda
yeşil bir sonuç yerine bir uyarı bildirir. Ayrıca giden proxy değişkenleri
yalnızca geçerli süreçte mevcutken config.proxy ayarlanmadığında veya
çözümlenmediğinde uyarır, çünkü Codex başlatıcıları ve arka plan servisleri bu
ortamı devralmayabilir. Bu denetimler salt okunurdur ve asla proxy değerlerini
yazdırmaz; otomatik başlatmaya güvenmeden önce bildirilen devri çözün ve ocx doctor çalıştırın.
Tamamlanan harici bir Codex güncellemesi kurulu bir dolgunun üzerine yazarsa
sonraki sıradan ocx komutu kararlı yeni başlatıcıyı yedekler ve dağıtımdan
önce dolguyu geri yükler. Sıfır etkili ocx system codex-cli-update check denetim
komutu ile ayrılmış ocx system codex-cli-update ad alanındaki hatalı çağrılar bu onarımı asla yapmaz. Hala değişmekte olan bir başlatıcı dokunulmadan
bırakılır ve daha sonra yeniden denenir. Onarım arızaları talep edilen komutu
başarısız kılmadan uyarır; manuel geri dönüş: ocx codex-shim install. Süreç
düzeyinde bir vazgeçme için codexShimAutoRestore’u false olarak ayarlayın
veya OPENCODEX_CODEX_SHIM_AUTO_RESTORE=0 ayarlayın.
| Alt komut | Eylem |
|---|---|
install |
Dolguyu kurun (veya eskiyse onarın). |
uninstall |
Dolguyu kaldırın ve orijinal Codex ikili dosyasını geri yükleyin. |
remove |
uninstall’ın takma adıdır. |
status |
Dolgu durumunu bildirin (kurulu, eski veya eksik). |
ocx codex-shim installocx codex-shim statusocx codex-shim uninstallocx tray <install|start|stop|status|uninstall|remove> [--json] [--no-start]
Bölüm başlığı “ocx tray <install|start|stop|status|uninstall|remove> [--json] [--no-start]”Windows durum tepsisi simgesini kurun ve kontrol edin. Windows oturum açılışında
başlar ve tek tıklamayla proxy kontrolleri sağlar. start ve stop yalnızca
simgeyi kontrol eder; proxy’yi kontrol etmek için menüsünü kullanın.
--no-start, install için geçerlidir ve tepsiyi hemen başlatmadan kurar.
Kullanımdan kaldırıldı: OpenCodex masaüstü uygulaması Windows, macOS ve Linux’ta tepsi sağlar;
ocx tray, masaüstü uygulaması olmayan kurulumlar için kullanılmaya devam eder.
Yeni bir paket sürümü bilindiğinde tepsi, çevrimiçi, uyarı veya çevrimdışı simgesine mavi bir nokta ekler ve Update available gösterir. Yerel önbellekteki rozeti yaklaşık dakikada bir denetler; eski veya kullanılamayan sonuçlar noktayı kaldırır. Menü öğesi panoyu açar ve paket güncellemesini oradan başlatabilirsiniz. Otomatik yükleme yapmaz.
Kontrol Paneli
Bölüm başlığı “Kontrol Paneli”ocx gui
Bölüm başlığı “ocx gui”Çalışmıyorsa proxy’yi otomatik olarak başlatarak http://localhost:<port>
adresindeki web kontrol panelini açın; hub’da yönetim ingress’i etkinse http://127.0.0.1:<yönetim portu> adresini açar.
Güncelleme
Bölüm başlığı “Güncelleme”ocx update, Codex CLI’yi değil OpenCodex’in kendisini günceller. Yapılandırılmış Codex CLI adayının provenance bilgisini sınırlı ve salt okunur biçimde denetlemek için sistem denetim komutları arasındaki ocx system codex-cli-update check komutunu kullanın. Komut package registry’ye istek göndermez ve güncelleme kurmaz.
ocx update [--tag latest|preview]
Bölüm başlığı “ocx update [--tag latest|preview]”OpenCodex mise üzerinden kurulduğunda bu komut proxy’yi durdurmadan veya paket dosyalarını değiştirmeden önce başarısız olur ve doğrulanmış yerel mise diğer adını kullanarak mise upgrade <tool> komutunu gösterir. Güncelleme denetimi kullanılabilir kalır ve kurulumun harici olarak yönetildiğini bildirir. Okunamayan veya tutarsız mise sahiplik meta verileri de araç adını tahmin etmeden değişikliği reddeder; --tag preview mise içinde yapılandırılmış seçimi değiştirmez.
Linux’ta kayıtlı başlatıcısı mise paket başlatıcısı (mise shim’i değil, <tool>/latest/node_modules/.bin/ocx) olan bir arka plan hizmeti mise upgrade işlemini kendiliğinden izler: yeni sürüm oturduktan yaklaşık on saniye sonra etkin istekleri boşaltır ve yeni sürümle yeniden başlar; mise daha sonra çalıştığı sürümü temizlerse de aynı şekilde toparlanır. macOS’ta, mise shim’i üzerinden kurulan bir hizmette ve ön plandaki bir proxy’de yükseltmeden sonra kendiniz yeniden başlatın (macOS’ta önce ocx service repair).
opencodex’i npm’den kendi kendine güncelleyin. Kararlı kurulumlar @latest
kullanır; önizleme kurulumları --tag latest|preview iletmediğiniz sürece
@preview üzerinde kalır. Bir kaynak kod kopyasını algılar ve bunun yerine git pull && bun install yapmanızı söyler ve o etiket için zaten en yeni
sürümdeyseniz işlem yapmaz (no-op). Herhangi bir şeyi durdurmadan önce npm
kurulumları sınırlı bir Unix önbellek sahipliği ve erişim kontrolü çalıştırır.
İç içe sembolik bağlantılar lstat ile kontrol edilir ancak takip edilmez;
Windows bu yalnızca Unix denetimini açıkça atlar. Bir arıza tepsi ve proxy hala
çalışırken iptal eder. Çalışan bir proxy daha sonra dosyalar değiştirilmeden
önce durdurulur; kurulu bir servis otomatik olarak yeniden oluşturulur ve
başlatılır, ön plan kurulumu ise sonraki adım olarak ocx start yazdırır.
Kontrol paneli güncelleme kayıtları kalıcı hale getirilmeden önce
profil/önbellek yollarını ve UID/GID değerlerini maskeler.
ocx updateocx update --tag previewYeni sürümler, Sürüm iş akışı bunları npm’de yayınladığında kullanılabilir hale gelir.
Remote Hub istemci yaşam döngüsü
Bölüm başlığı “Remote Hub istemci yaşam döngüsü”ocx connect <url> --pairing-code-stdin, ocx connect status, ocx sync ve ocx connect rotate --pairing-code-stdin kullanın. ocx disconnect yerel durumu çevrimdışı geri yükler ancak hub anahtarını iptal etmez. Bağlıyken ocx connect revoke --admin-token-stdin kayıtlı apiKeyId değerini iptal eder; bağlantıdan sonra hub üzerindeki Integrations → API Keys kullanılmalıdır. Sırlar yalnızca stdin üzerinden geçer, argv’ye yazılmaz.

