Codex Security CLI referansı
Codex Security CLI için bağımsız değişkenler, çıktı biçimleri, tarama yapıtları, sağlayıcılar ve çıkış kodları.
Desteklenen codex-security komutlarını, bayraklarını,
çıktı biçimlerini ve çıkış davranışını kontrol etmek için bu referansı kullanın. Rehberli bir ilk tarama için
CLI hızlı başlangıç kılavuzuyla başlayın.
CLI'yi npx @openai/codex-security ile çalıştırın.
Komutlara genel bakış
usage: codex-security [--version] <command> [options]CLI şu komutları sağlar:
| Komut | Amaç |
|---|---|
codex-security scan |
Codex Security taraması çalıştırır. |
codex-security install-hook |
Git commit öncesi güvenlik taraması yükler. |
codex-security bulk-scan |
Depoları keşfeder ve sürdürülebilir toplu taramalar çalıştırır. |
codex-security scans |
Kaydedilmiş tarama günlüklerini listeler, inceler, karşılaştırır ve alır. |
codex-security findings |
Kaydedilmiş güvenlik bulgularını inceler ve günceller. |
codex-security export |
Tamamlanmış bulguları CSV, JSON veya SARIF olarak dışa aktarır. |
codex-security publish |
Tamamlanmış tarama bulgularını Linear'da yayımlar. |
codex-security validate |
Bir veya daha fazla olası güvenlik bulgusunu denetler. |
codex-security patch |
Bir veya daha fazla güvenlik sorununa yama uygular. |
codex-security login |
Oturum açar, kimlik bilgilerini depolar veya oturum durumunu denetler. |
codex-security logout |
Depolanan oturumu kaldırır. |
codex-security info |
Salt okunur SDK ve paketlenmiş eklenti meta verilerini gösterir. |
CLI şu entegrasyon komutlarını da sağlar:
| Komut | Amaç |
|---|---|
codex-security completions |
Kabuk tamamlama betikleri oluşturur. |
codex-security mcp |
CLI'yi bir MCP sunucusu olarak kaydeder. |
codex-security skills |
Codex Security becerilerini ajanlarla eşitler. |
Kullanılabilir tüm komutları listeleyin:
npx @openai/codex-security --helpBağımsız değişkenlerini ve seçeneklerini incelemek için bir komuta --help ekleyin:
npx @openai/codex-security scan --helpcodex-security --version yüklü sürümü yazdırır ve çıkar.
codex-security info --json SDK ve paketlenmiş eklenti sürümlerini bildirir.
İki komut da Python gerektirmez.
Komutları keşfetme ve ajanları bağlama
Ajanların okuyabildiği komut manifestini yazdırın:
npx @openai/codex-security --llmsTarama bağımsız değişkeni şemasını JSON olarak inceleyin:
npx @openai/codex-security scan --schema --format jsonBash için kabuk tamamlamaları oluşturun:
npx @openai/codex-security completions bashBu kabuklar için bash yerine zsh veya fish kullanın.
Tarama sonuçları --format toon|json|yaml|jsonl ve --full-output biçimlerini destekler. Bu
çerçeve düzeyindeki --format, tamamlanmış bir taramadan dışa aktarılan yapıtın
biçimini seçen --export-format öğesinden ayrıdır. Genel komut yardımı
md seçeneğini de listeler ancak tarama sonuçları Markdown çıktısını desteklemez.
CLI'yi bir MCP sunucusu olarak kaydedin:
npx @openai/codex-security mcp addCodex Security becerilerini ajanlarınızla eşitleyin:
npx @openai/codex-security skills addMCP yalnızca salt okunur info meta veri komutunu sunar. Taramalar, dışa aktarımlar,
kimlik doğrulama, doğrulama ve yama uygulama yalnızca CLI üzerinden kullanılabilir.
codex-security scan
Bir depoyu, seçilen yolları, kaydedilmiş değişiklikleri veya çalışma ağacını tarayın.
usage: codex-security scan [-h] [--auth {auto,chatgpt,api-key}]
[--provider {openai,openrouter,fireworks,amazon-bedrock}]
[--path PATH | --diff BASE | --working-tree]
[--head HEAD] [--base BASE]
[--knowledge-base PATH] [--scan-prompt-file FILE]
[--post-scan-prompt-file FILE]
[--mode {standard,deep}] [--workers N]
[--subagents N] [--stop-after-no-new N]
[--max-discovery-runs N] [--max-time-hours HOURS]
[--model MODEL]
[--effort {minimal,low,medium,high,xhigh,max}]
[--output-dir DIR]
[--archive-existing]
[--plugin-path PATH] [--python PATH]
[--codex KEY=VALUE] [--fail-on-severity LEVEL]
[--patch] [--patch-severity {critical,high,medium,low}]
[--create-pr]
[--max-cost USD] [--dry-run] [--headless] [--verbose]
[--json] [--format {toon,json,yaml,jsonl}]
[--full-output] [repository]repository varsayılan olarak geçerli dizini kullanır.
Tarama kimlik doğrulamasını seçme
Kimlik bilgilerini otomatik olarak seçmek için varsayılan seçenek olan --auth auto öğesini kullanın. Hem
ChatGPT oturumu hem de OPENAI_API_KEY veya CODEX_API_KEY mevcut olduğunda,
metin çıktılı etkileşimli taramalar hangi kimlik bilgisinin kullanılacağını sorar. CI, JSON ve
JSONL taramaları ile etkileşimli terminali olmayan diğer taramalar
ortam API key değerini kullanır. Deneme çalıştırmaları istem göstermez veya kimlik bilgilerini yüklemez.
Depolanan kimlik bilgilerinizi kullanmak için --auth chatgpt geçirin:
npx @openai/codex-security scan . --auth chatgptBir ortam API key değeri kullanmak için --auth api-key geçirin:
npx @openai/codex-security scan . --auth api-keyDepolanan kimlik bilgilerini otomatik varsayılan yapmak için
unset OPENAI_API_KEY CODEX_API_KEY çalıştırın.
OpenRouter veya Fireworks kullanma
API key değeri ve açıkça belirtilen bir model ile OpenRouter'ı seçin:
export OPENROUTER_API_KEY="your-openrouter-api-key"
npx @openai/codex-security scan . \
--provider openrouter \
--model anthropic/claude-sonnet-4.5API key değeri ve açıkça belirtilen bir model ile Fireworks'ü seçin:
export FIREWORKS_API_KEY="your-fireworks-api-key"
npx @openai/codex-security scan . \
--provider fireworks \
--model accounts/fireworks/models/qwen3-235b-a22bHer iki sağlayıcı da bulk-scan öğesini destekler.
Amazon Bedrock kullanma
--provider amazon-bedrock ile Amazon Bedrock'ı seçin ve --model ile açıkça
bir Bedrock modeli belirtin:
npx @openai/codex-security scan . \
--provider amazon-bedrock \
--model openai.gpt-5.6-solAWS_REGION değerini ayarlayın ve AWS_BEARER_TOKEN_BEDROCK, standart AWS
erişim anahtarları, bir AWS profili, web kimliği, kapsayıcı kimlik bilgileri veya
varsayılan AWS kimlik bilgisi zinciri ile kimlik doğrulayın. Bedrock taramaları
--auth, ChatGPT oturumu veya bir OpenAI API key yerine AWS kimlik bilgilerini kullanır. Hem scan hem de bulk-scan
--provider öğesini destekler.
Tarama hedefini seçme
Her tarama için bir hedef türü seçin.
| Bağımsız değişken | Açıklama |
|---|---|
--path PATH |
Depoya göreli bir yolu tarar. Daha fazla yol için bayrağı yineleyin. |
--diff BASE |
BASE ile --head arasındaki kaydedilmiş değişiklikleri tarar. Head varsayılan olarak HEAD değerini kullanır. |
--head HEAD |
--diff için head revizyonunu ayarlar. |
--working-tree |
Hazırlanmış ve hazırlanmamış değişiklikleri --base ile karşılaştırarak tarar. Base varsayılan olarak HEAD değerini kullanır. |
--base BASE |
--working-tree için base revizyonunu ayarlar. |
--mode {standard,deep} |
Tarama modunu seçer. Varsayılan değer standard şeklindedir. |
--path, --diff ve --working-tree birbirini dışlar. --head
--diff gerektirir, --base ise --working-tree gerektirir. Derin mod
depo ve yol hedeflerini destekler.
Fark ve çalışma ağacı taramalarında depo bağımsız değişkeni Git çalışma ağacı kökü olmalıdır. Seçilen ref'ler o çalışma kopyasında bulunmalıdır.
Tüm depoyu tarayın:
npx @openai/codex-security scan .Seçilen yolları tarayın:
npx @openai/codex-security scan . --path src --path testsKaydedilmiş değişiklikleri tarayın:
npx @openai/codex-security scan . --diff origin/main --head HEADHazırlanmış ve hazırlanmamış değişiklikleri tarayın:
npx @openai/codex-security scan . --working-tree --base HEADDepoda daha derin bir inceleme çalıştırın:
npx @openai/codex-security scan . --mode deepDerin taramaları yapılandırma
Çalışan eşzamanlılığını ve çalışma süresini denetlemek için şu seçenekleri --mode deep ile kullanın:
| Bağımsız değişken | Açıklama |
|---|---|
--workers N |
Eşzamanlı bağımsız standart tarama çalışanı sınırı. Varsayılan değer 4 şeklindedir. |
--subagents N |
Her çalışanın kullanabildiği alt ajanlar. Varsayılan değer 3 şeklindedir. |
--stop-after-no-new N |
Art arda tamamlanan N çalışan taramasında yeni sorun bulunmazsa durur. Varsayılan değer 4 şeklindedir. |
--max-discovery-runs N |
Toplam bağımsız standart tarama çalıştırması sınırı. Varsayılan değer 40 şeklindedir. |
--max-time-hours HOURS |
Saat cinsinden çalışan yürütme süresi sınırı. Varsayılan değer 96 şeklindedir; kesirleri kabul eder. |
--subagents sıfır veya pozitif bir tam sayı kabul eder. --max-time-hours,
96 değerinden büyük olmayan pozitif bir sayı kabul eder. Kalan seçenekler pozitif
bir tam sayı gerektirir. Bu seçenekler standart taramalarda kullanılamaz.
Örneğin iki çalışan kullanın, en fazla on çalıştırmaya izin verin ve çalışan yürütmesini 1,5 saat sonra durdurun:
npx @openai/codex-security scan . \
--mode deep \
--workers 2 \
--subagents 0 \
--stop-after-no-new 3 \
--max-discovery-runs 10 \
--max-time-hours 1.5Süre sınırı dolduğunda tarama tamamlanmamış çalışanları durdurur, tamamlanmış
tarama sonuçlarını tutar ve nihai raporda birleştirir. Hiçbir çalışan kaynak
incelemesini tamamlamazsa tarama kısmi kapsam kaydeder ve 2 çıkış kodunu döndürür.
Kalıcı varsayılanları ~/.codex/codex-security/config.toml içinde veya CODEX_HOME ayarladığınızda
$CODEX_HOME/codex-security/config.toml içinde belirleyin:
[deep_scan]
workers = 2
subagents = 0
stop_after_no_new = 3
max_discovery_runs = 10
max_time_hours = 1.5Komut satırı seçenekleri bu varsayılanları geçersiz kılar. scan --workers, bir derin taramadaki
bağımsız standart tarama çalışanlarını; bulk-scan --workers ise
eşzamanlı depo taramalarını denetler. stop_after_consecutive_errors değerini yalnızca
TOML dosyasında ayarlayın; varsayılanı 3 şeklindedir.
Güvenlik bağlamı ekleme
Mimari belgeleri, tehdit modellerini veya güvenlik politikalarını sağlamak için
--knowledge-base PATH kullanın. Daha fazla dosya veya dizin için seçeneği yineleyin:
npx @openai/codex-security scan . \
--knowledge-base /path/to/architecture.md \
--knowledge-base /path/to/security-policiesDesteklenen belgeler .md, .markdown, .txt, .pdf ve .docx
dosyalarını içerir. CLI dizinleri özyinelemeli olarak arar, bağlantılı giriş yollarını reddeder,
bağlantılı dizin girdilerini atlar ve ayıklanan belge içeriğini
kaydedilmiş tarama sonuçlarının dışında tutar.
Tarama talimatları ekleme
Tarama talimatları eklemek için --scan-prompt-file ile bir metin veya Markdown dosyası
sağlayın. Başarılı taramalardan ve eksik kapsamlı veya hatalı taramalardan sonra
aynı kimliği doğrulanmış oturumda ek talimatları çalıştırmak için
--post-scan-prompt-file kullanın:
npx @openai/codex-security scan . \
--scan-prompt-file security-focus.md \
--post-scan-prompt-file follow-up.mdÖrneğin tarama istemini yetkilendirme sınırlarına odaklanmak için kullanın ve
ek talimattan tarama dizinine yeni bir post-scan-summary.md yazmasını isteyin.
Ek işlem başarısız olursa CLI bir uyarı bildirir ve tamamlanmış taramayı tutar.
Ek işlem, iptalden sonra veya tarama maliyet sınırına ulaştığında çalışmaz.
Çıktı ve politika seçeneklerini ayarlama
Yapıtları tutmak, önceki sonuçları korumak veya makinece okunabilir bir sonuç oluşturmak için şu seçenekleri kullanın.
| Bağımsız değişken | Açıklama |
|---|---|
--output-dir DIR |
Tarama yapıtlarını kapsayan Git çalışma ağacının dışındaki özel bir dizine yazar. Varsayılan olarak kalıcı Codex Security durumunu kullanır. |
--archive-existing |
Mevcut sonuçları DIR.previous-<timestamp>-<id> konumuna taşır ve boş bir çıktı diziniyle başlar. --output-dir gerektirir. |
--fail-on-severity LEVEL |
Tamamlanmış bir tarama critical, high, medium veya low düzeyinde ya da üstünde bulgu bildirirse 1 çıkışını döndürür. |
--patch |
Tam bir taramadan sonra seçilen bulguları düzeltir ve doğrular. |
--patch-severity LEVEL |
critical, high, medium veya low düzeyindeki ya da üstündeki bulgulara yama uygular. Varsayılan değer low şeklindedir. |
--create-pr |
Doğrulanmış yama dosyalarını commit eder ve bir GitHub pull request açar. --patch gerektirir. |
--max-cost USD |
Tahmini model maliyeti belirtilen USD tutarını aştığında taramayı durdurur. |
--dry-run |
Tarama başlatmadan depoyu, hedefi, bilgi tabanını, çıktı dizinini ve Codex yapılandırmasını denetler. |
--headless |
Etkileşimli tarama panosu yerine düz metin ilerlemesi gösterir. |
--verbose |
Düzeltilmiş yaşam döngüsü, kimlik doğrulama, ilerleme ve maliyet tanılamalarını stderr'e yazdırır. |
--json |
Manifesti, bulguları, kapsamı, yolları ve tur meta verilerini tek bir JSON belgesi olarak yazdırır. |
--format FORMAT |
Tam tarama sonucunu toon, json, yaml veya jsonl olarak yazdırır. |
--full-output |
Tam sonucu varsayılan yapılandırılmış çıktı biçiminde yazdırır. |
Maliyet sınırı bir tahmindir, kesin bir harcama üst sınırı değildir. Hâlihazırda
devam eden istekler sınırın biraz üzerinde tamamlanabilir. Bir derin tarama,
Codex Security tamamlanmış çalışan sonuçlarını birleştirdikten sonra sınıra ulaşırsa CLI
mevcut sonuçları mühürler, kapsamı partial olarak işaretler ve 2 çıkış kodunu döndürür.
Aksi takdirde 2 döndürür ve mevcut kısmi çıktıları diskte bırakır.
--output-dir öğesini atladığınızda sonuçlar
$CODEX_HOME/state/plugins/codex-security/scans/<repository> altında kalıcı olur. CODEX_HOME
varsayılan olarak ~/.codex değerini kullanır. Sonuçları bunun yerine
$CODEX_SECURITY_STATE_DIR/scans/<repository> altında tutmak için CODEX_SECURITY_STATE_DIR ayarlayın. Bu dizinler
kaynak alıntıları ve güvenlik açığı ayrıntıları içerebilir; dolayısıyla izinlerini
ve saklama sürelerini buna göre yönetin.
Workbench tarama geçmişini
$CODEX_HOME/state/plugins/codex-security/workbench.sqlite3 içinde tutar. CODEX_SECURITY_STATE_DIR ayarlamak
Workbench veritabanını da taşır.
Çıktı dizini taranan dizinin ve onu kapsayan tüm Git çalışma ağaçlarının dışında
olmalıdır. Bir tarama, --archive-existing ile mevcut bir sonuç dizininin yerini alabilir.
Bir çıktı dizinini yeniden kullanmadan önce önceki sonuçları korumak için:
npx @openai/codex-security scan . \
--output-dir /path/outside/repository/results \
--archive-existingTaramalar varsayılan olarak yalnızca rapor oluşturur. CI'da bir önem derecesi politikasını
değerlendirmek için --fail-on-severity ekleyin:
npx @openai/codex-security scan . \
--diff origin/main \
--output-dir /path/outside/repository/results \
--json \
--fail-on-severity high \
> /path/outside/repository/codex-security.jsonDeneme çalıştırması, kimlik bilgilerini yüklemeden, Codex'i başlatmadan veya eklentinin Python yorumlayıcısını yoklamadan bilgi tabanı belgeleri dâhil yerel girdileri denetler:
npx @openai/codex-security scan . \
--output-dir /path/outside/repository/results \
--dry-runÇalışma zamanını yapılandırma
Açıkça bir model, yorumlayıcı, eklenti veya Codex yapılandırma değeri gerektiğinde çalışma zamanı seçeneklerini kullanın.
| Bağımsız değişken | Açıklama |
|---|---|
--auth {auto,chatgpt,api-key} |
Tarama kimlik bilgilerini seçer. Varsayılan değer auto şeklindedir. |
--provider {openai,openrouter,fireworks,amazon-bedrock} |
Çıkarım sağlayıcısını seçer. Varsayılan değer openai şeklindedir. |
--model MODEL |
Modeli seçer. Varsayılan değer gpt-5.6-sol şeklindedir. OpenRouter, Fireworks ve Amazon Bedrock için gereklidir. |
--effort {minimal,low,medium,high,xhigh,max} |
Modelin akıl yürütme düzeyini seçer. Varsayılan değer xhigh şeklindedir. |
--plugin-path PATH |
Paketlenmiş eklentiyi geçersiz kılmak için bir Codex Security eklenti dizini veya ZIP kullanır. |
--python PATH |
Eklenti çalışma zamanı için Python yorumlayıcısını seçer. |
--codex KEY=VALUE |
Yalıtılmış bir Codex yapılandırma değerini geçersiz kılar. Değerler TOML sözdizimini kullanır. Daha fazla değer için bayrağı yineleyin. |
TOML yazmadan farklı bir model ve akıl yürütme düzeyi seçmek için:
npx @openai/codex-security scan . --model gpt-5.6-terra --effort highTOML ayrıştırıcısının bir dize alması için --codex üzerinden geçirilen
dize değerlerini tırnak içine alın:
npx @openai/codex-security scan . --codex 'model="gpt-5.6-terra"'codex-security install-hook
Geçerli depo için Git commit öncesi güvenlik denetimi yükleyin:
npx @openai/codex-security install-hookDenetim, her commit öncesinde hazırlanmış ve hazırlanmamış değişiklikleri tarar; yüksek önem
dereceli bulguları veya tarama hatalarını engeller. core.hooksPath değerine uyar ve
mevcut bir commit öncesi betiğin yerini almaz. Gerektiğinde farklı bir önem derecesi eşiği
ayarlayın:
npx @openai/codex-security install-hook . --fail-on-severity mediumcodex-security bulk-scan
GitHub depolarını keşfedip tarayın veya bir depo CSV'sinden sürdürülebilir tarama çalıştırın:
GitHub keşfi, CSV envanterleri, kampanya sonuçları ve kapsayıcılaştırılmış taramalar hakkında eksiksiz bir kılavuz için Toplu güvenlik taramaları çalıştırma bölümüne bakın.
usage: codex-security bulk-scan [input] [--output-dir DIR]
[--workers N] [--mode {standard,deep}]
[--provider {openai,openrouter,fireworks,amazon-bedrock}]
[--model MODEL]
[--effort {minimal,low,medium,high,xhigh,max}]
[--knowledge-base PATH]
[--scan-prompt-file FILE]
[--post-scan-prompt-file FILE]
[--max-attempts N] [--plugin-path PATH]
[--python PATH] [--codex KEY=VALUE]Depoları etkileşimli olarak seçmek için npx @openai/codex-security bulk-scan komutunu bağımsız değişken olmadan çalıştırın.
Bu akış bir GitHub CLI oturumu gerektirir.
Etkileşimli keşif sırasında model ve akıl yürütme düzeyi seçmek için:
npx @openai/codex-security bulk-scan --model gpt-5.6-terra --effort highHazırlanmış bir depo listesi için bir CSV ve --output-dir sağlayın:
npx @openai/codex-security bulk-scan repositories.csv \
--output-dir /path/outside/repositories/security-scans \
--workers 4CSV, id, repository ve revision sütunlarını gerektirir. Revizyonlar
tam commit hash'leri olmalıdır. İsteğe bağlı scope, mode ve prompt sütunları
tek tek depoları yapılandırır:
id,repository,revision,scope,mode,prompt
service,https://github.com/example/service.git,0123456789abcdef0123456789abcdef01234567,src,standard,Review authorization boundaries.Güvenlik belgelerini tüm depolar arasında paylaşmak için --knowledge-base PATH kullanın.
Paylaşılan tarama talimatları eklemek için --scan-prompt-file FILE kullanın; CSV'nin
prompt sütunu, paylaşılan istemden sonra depoya özel talimatlar ekler.
--post-scan-prompt-file FILE, eksik kapsamlı veya hatalı taramalar dâhil her taramadan sonra
ek talimatları çalıştırır. İptalden sonra veya tarama maliyet sınırına ulaştığında çalışmaz.
--workers eşzamanlı depo taramalarını sınırlar ve varsayılan olarak 4 değerini kullanır. --mode
varsayılan olarak standard, --max-attempts ise 1 değerini kullanır. Depo veya
tarama hatalarını yeniden denemek için --max-attempts ayarlayın. Eksik kapsamla tamamlanan taramalar
yeniden denenmez. Sonuçları kullanılabilir kalır ve komut 2 çıkış kodunu döndürür.
Mevcut bir çıktı dizininden sürdürmek için aynı komutu tekrar çalıştırın. CLI, eksik kapsamlı taramalar dâhil tamamlanmış taramaları atlar.
Kapsayıcılaştırılmış kampanyalar için Docker'da toplu taramalar çalıştırma bölümüne bakın.
codex-security scans
Kaydedilmiş taramaları bulma
Geçerli dizin için kaydedilmiş taramaları listeleyin:
npx @openai/codex-security scansFarklı bir depo için taramaları listeleyin:
npx @openai/codex-security scans list /path/to/repositoryBelirli bir çıktı dizini altında depolanan taramaları bulun:
npx @openai/codex-security scans list --scan-root /path/outside/repository/resultsBir taramayı inceleme veya yineleme
Kaydedilmiş bir taramanın sonuçlarını ve yapılandırmasını gösterin:
npx @openai/codex-security scans show SCAN_IDÖnceki taramalardaki bulgu bağlantılarını eklemek için --show-linked-findings ekleyin.
Özgün yapılandırmasını kullanarak taramayı geçerli çalışma kopyasında yeniden çalıştırın:
npx @openai/codex-security scans rerun SCAN_IDYeniden çalıştırma, özgün taramanın kaydettiği eklenti sürümünü gerektirir. Yüklü sürüm farklıysa komut farklı bir eklentiyle çalışmak yerine durur.
Kaydedilmiş tarama günlüklerini inceleme
Bir tarama ve çalışanlarına ait kaydedilmiş oturum olaylarının tamamını okuyun. Bu günlükler düzeltilmemiştir ve kaynak kodu veya kimlik bilgileri içerebilir; bu nedenle paylaşmadan önce inceleyin:
npx @openai/codex-security scans logs SCAN_IDTam bilgi içeren, makine biçimli bir sonuç için --json ekleyin.
Bulguları eşleştirme ve karşılaştırma
Yeni, devam eden, yeniden açılan, çözümlenen ve bilinmeyen bulguları saptamak için iki taramayı karşılaştırın:
npx @openai/codex-security scans compare PREVIOUS_SCAN_ID CURRENT_SCAN_IDKarşılaştırma, aynı temel nedeni paylaşan bulguları otomatik olarak eşleştirir
ve kaydedilmiş eşleşmeleri yeniden kullanır. Eşleşmeleri açıkça kaydetmek için scans match kullanın:
npx @openai/codex-security scans match PREVIOUS_SCAN_ID CURRENT_SCAN_IDSonraki tarama eksik kapsama sahipse veya bulgunun özgün konumunu
kapsamıyorsa bulgu bilinmeyendir. Mevcut bir eşleşmeyi yeniden hesaplamanız gerektiğinde
match komutuna --force ekleyin.
Diğer çalışma kopyalarındaki taramalar dâhil geçerli deponun tamamlanmış tüm taramalarını eşleştirmek için:
npx @openai/codex-security scans match --allAynı yapılandırmayı yeniden çalıştırsanız bile tarama sonuçları değişebilir. Eşleştirme ve
karşılaştırma değişiklikleri izler; sonuçları belirlenimci yapmaz veya bir
güvenlik açığının artık bulunmadığını kanıtlamaz. Güvenlik açısından kritik bir bulguyu geçerli
koda göre yeniden denetlemek için validate kullanın.
codex-security findings
Geçerli deponun taramalarındaki açık bulguları listeleyin:
npx @openai/codex-security findings listBaşka bir çalışma kopyasını incelemek için bir depo yolu geçirin:
npx @openai/codex-security findings list /path/to/repositoryYapılandırılmış çıktı için --json ekleyin. Liste, son taramada görülen bulguları
ve bu taramada doğrulanmamış önceki bulguları tanımlar.
Önceki bulgular çözümlenene veya reddedilene kadar açık kalır (son taramada bulunmamaları, düzeltildiklerinin kanıtı olarak yorumlanmaz).
İncelenmiş bir bulguyu hatalı pozitif olarak kaydetmek için:
usage: codex-security findings false-positive OCCURRENCE_ID
--reason REASONBulgu oluşumunu belirlemek için kaydedilmiş taramayı inceleyin:
npx @openai/codex-security scans show SCAN_IDHatalı pozitif için belirli bir açıklama kaydedin:
npx @openai/codex-security findings false-positive FINDING_OCCURRENCE_ID \
--reason "The framework escapes this input before it reaches the query"Gerekçe boş olmamalıdır. Codex Security kararı depo için kaydeder ve gelecekteki taramalara bağlam olarak sağlar. Her tarama geçerli kaynağı, denetimleri ve erişilebilirliği bağımsız olarak yeniden denetler. Önceki bir karar bir kuralı, yolu veya güvenlik açığı sınıfını engellemez.
codex-security export
Tamamlanmış ve mühürlenmiş bir taramadan CSV, JSON veya SARIF dışa aktarın. Dışa aktarma, çıktıyı yazmadan önce tarama yapıtlarını doğrular; Codex çalışma zamanına ve kimlik bilgilerine dokunmaz.
usage: codex-security export [--export-format {csv,json,sarif}]
[--output FILE|-] [--source-root PATH]
[--python PATH] scan_dirscan_dir tamamlanmış tarama dizinidir.
| Bağımsız değişken | Açıklama |
|---|---|
--export-format {csv,json,sarif} |
Dışa aktarma biçimini seçer. Varsayılan değer sarif şeklindedir. |
--output FILE|- |
Seçilen biçimi bir dosyaya veya stdout'a yazar. Varsayılan olarak geçerli dizindeki bir dosyayı kullanır. |
--source-root PATH |
Bir depo çalışma kopyasını kullanarak SARIF'e kaynak satırı parmak izleri ekler. |
--python PATH |
Paketlenmiş dışa aktarıcı için Python yorumlayıcısını seçer. |
--source-root yalnızca --export-format sarif ile çalışır. JSON,
mühürlenmiş bulgular belgesini korur. CSV taşınabilir bulgu sütunları içerir ve
yerel Workbench önceliklendirme durumunu içermez.
--output olmadan CLI, geçerli çalışma dizininde SARIF'i results.sarif, JSON'u
findings.json ve CSV'yi findings.csv konumuna yazar.
Dışa aktarımlar kaynak alıntıları ve güvenlik açığı ayrıntıları içerebilir. Komutu
depo dışında çalıştırın veya taranan çalışma kopyasının dışındaki özel bir yolla
--output geçirin.
SARIF'i bir dosyaya yazın:
npx @openai/codex-security export /path/to/scan \
--export-format sarif \
--source-root /path/to/repository \
--output /path/outside/repository/exports/results.sarifSARIF'i stdout'a yazın:
npx @openai/codex-security export /path/to/scan \
--export-format sarif \
--source-root . \
--output -Bulguları JSON olarak dışa aktarın:
npx @openai/codex-security export /path/to/scan \
--export-format json \
--output /path/outside/repository/exports/findings.jsonBulguları CSV olarak dışa aktarın:
npx @openai/codex-security export /path/to/scan \
--export-format csv \
--output /path/outside/repository/exports/findings.csvcodex-security publish scan
Tamamlanmış bir taramadaki her bulguyu Linear'da yayımlayın:
usage: codex-security publish scan [SCAN_DIR] --to linear
[--linear-team TEAM_ID]
[--project PROJECT_ID]
[--linear-api-key KEY]
[--linear-assignee EMAIL_OR_USER_ID]
[--dry-run] [--json]SCAN_DIR tamamlanmış ve mühürlenmiş bir tarama içermelidir. Yerel tarama geçmişinden
tamamlanmış bir tarama seçmek için etkileşimli terminalde bunu atlayın. Sorun oluşturmak,
taramanın ve bulgularının yerel tarama geçmişinde bulunmasını da gerektirir. Deneme çalıştırması
bu kalıcılık denetimi olmadan mühürlenmiş yapıtları doğrular.
| Bağımsız değişken | Açıklama |
|---|---|
--to linear |
Linear'da yayımlar. Bu bağımsız değişken gereklidir. |
--linear-team TEAM_ID |
Linear ekibini seçer. Atlandığında CODEX_SECURITY_LINEAR_TEAM kullanır; bunlardan biri gereklidir. |
--project PROJECT_ID |
Bir Linear projesi seçer. Atlandığında CODEX_SECURITY_LINEAR_PROJECT kullanır. İkisi de ayarlanmamışsa sorunlar doğrudan ekipte oluşturulur. |
--linear-api-key KEY |
Doğrudan yayımlama için kişisel bir Linear API key kullanır. Atlandığında CODEX_SECURITY_LINEAR_API_KEY kullanır. |
--linear-assignee EMAIL_OR_USER_ID |
Oluşturulan sorunları e-posta adresi veya Linear kullanıcı ID'siyle atar. --linear-api-key veya CODEX_SECURITY_LINEAR_API_KEY gerektirir. Atlandığında sorunlar atanmamış kalır. |
--dry-run |
Codex'i başlatmadan, Linear ile iletişime geçmeden, sorun oluşturmadan veya yayımlama durumu yazmadan sorun yüklerini hazırlar. |
--json |
Yapılandırılmış yayımlama sonuçlarını stdout'a yazar. İlerleme stderr'de kalır. |
Deneme çalıştırması olmayan her çağrı, her bulgu için yeni bir sorun oluşturmaya çalışır.
Aynı taramayı yeniden yayımlamak mevcut sorunları eşleştirmez, güncellemez veya yeniden kullanmaz.
Bazı bulgular başarısız olursa komut başarıyla oluşturulan sorunları korur ve
2 çıkış kodunu döndürür.
--json ile, yinelenenleri önlemek için yeniden denemeden önce created ve failed sonuçlarını
inceleyin.
Yayımlamadan önce sorun yüklerini önizleyin:
npx @openai/codex-security publish scan /path/to/completed-scan \
--to linear \
--linear-team TEAM_ID \
--dry-run \
--jsonBağlı Linear uygulamasıyla yayımlama
Linear API key olmadan komut, mevcut yapılandırmanız ve bağlı Linear uygulamanızla Codex'i başlatır. Yayımlamadan önce oturum açın ve Linear'ı Codex hesabınıza bağlayın:
npx @openai/codex-security login
npx @openai/codex-security publish scan /path/to/completed-scan \
--to linear \
--linear-team TEAM_ID \
--project PROJECT_IDLinear API key ile yayımlama
--linear-api-key veya CODEX_SECURITY_LINEAR_API_KEY sağlamak, doğrudan
Linear API üzerinden yayımlar ve Codex'i başlatmaz. Doğrudan yayımlamada bir atanan seçmezseniz
sorunlar atanmamış kalır:
export CODEX_SECURITY_LINEAR_API_KEY=YOUR_LINEAR_PERSONAL_API_KEY
npx @openai/codex-security publish scan /path/to/completed-scan \
--to linear \
--linear-team TEAM_ID \
--linear-assignee teammate@example.comKomut satırı değerleri eşleşen ortam değişkenlerini geçersiz kılar. API
key değerleri için --linear-api-key yerine CODEX_SECURITY_LINEAR_API_KEY tercih edin; çünkü
komut satırı bağımsız değişkenleri kabuk geçmişinde ve işlem listelerinde görünebilir.
codex-security validate ve codex-security patch
Olası bir bulgunun geçerli olup olmadığını denetleyin:
npx @openai/codex-security validate findings.json \
"Possible SQL injection in src/query.ts:42"Paketlenmiş düzeltme becerisiyle bir düzeltme oluşturun:
npx @openai/codex-security patch findings.json \
"Missing authorization check in src/routes.ts:18"Her konumsal bağımsız değişken düz metin veya dosya yolu kabul eder. Bu girdiler
geçerli dizini kullanır. Bir düzeltmeden sonra veya sonraki bir tarama artık bildirmediğinde
bir bulguyu yeniden denetlemek için validate kullanın. Yalnızca taramaları karşılaştırmak, düzeltmenin
çalıştığını kanıtlamaz.
Her iki komut için de akıl yürütme düzeyini seçmek üzere --effort kullanın:
npx @openai/codex-security validate "Possible SQL injection" --effort highTaramadan sonra bulgulara yama uygulama
Tam bir taramadan sonra bulguları düzeltmek için scan --patch kullanın. Bunun için
@openai/codex-security 0.1.15 veya üzeri gerekir. Varsayılan önem derecesi eşiği
low şeklindedir. Bu komut yüksek ve kritik bulguları seçer:
npx @openai/codex-security scan . --patch --patch-severity high --jsonDoğrulanmış ve zaten düzeltilmiş bulgular --fail-on-severity öğesini tetiklemez.
Kaydedilmiş bulgulara yama uygulama
Özgün depoya yama uygulamak için bir bulgu veya oluşum ID'si geçirin ya da kaydedilmiş bir taramadan bulguları seçin:
npx @openai/codex-security patch OCCURRENCE_ID
npx @openai/codex-security patch --scan SCAN_ID --severity high --json
npx @openai/codex-security patch --scan latest --severity medium--scan latest geçerli depo için en son tamamlanan taramayı seçer.
Kaydedilmiş bulgu komutları --json öğesini destekler; düz metin ve dosya girdileri desteklemez.
Yalnızca doğrulanmış yama dosyalarını commit etmek ve GitHub CLI ile pull request açmak için
--create-pr ekleyin:
npx @openai/codex-security patch --scan SCAN_ID --severity high --create-prPush veya pull request başarısız olursa yeniden denemek için yazdırılan patch --resume-pr BRANCH
komutunu aynı depoda çalıştırın.
Linear sorunlarına yama uygulama
Kişisel API key için CODEX_SECURITY_LINEAR_API_KEY veya LINEAR_API_KEY, OAuth token için
LINEAR_ACCESS_TOKEN ayarlayın. Anahtarı kabuk geçmişinden uzak tutmak için
--linear-api-key KEY yerine bir ortam değişkeni tercih edin.
Bir sorunu ID veya URL ile içe aktarın. Birden fazla sorun seçmek için --linear-issue öğesini
yineleyin:
npx @openai/codex-security patch --linear-issue SEC-123 --linear-issue SEC-124Bir projenin açık sorunlarını seçmek için --linear-project kullanın. Seçimi daraltmak için
--linear-filter ekleyin:
npx @openai/codex-security patch --linear-project "Security backlog" \
--linear-filter '{"labels":{"name":{"eq":"security"}}}'Filtre state ayarlamadığı sürece CLI tamamlanmış ve iptal edilmiş sorunları dışlar.
Linear sorunlarını değiştirmez.
codex-security login, logout ve info
Etkileşimli olarak oturum açın:
npx @openai/codex-security loginUzak veya ekransız bir makinede cihaz kimlik doğrulamasını kullanın:
npx @openai/codex-security login --device-authGeçerli oturumu denetleyin:
npx @openai/codex-security login statusDepolanan oturumu kaldırın:
npx @openai/codex-security logoutstdin üzerinden geçirerek bir API key depolayın:
printenv OPENAI_API_KEY | npx @openai/codex-security login --with-api-keyKurumsal erişim token'ı depolayın:
printenv CODEX_ACCESS_TOKEN | npx @openai/codex-security login --with-access-tokenSalt okunur SDK ve paketlenmiş eklenti meta verilerini inceleyin:
npx @openai/codex-security info --jsonCLI'yi bir MCP sunucusu olarak sunduğunuzda kullanılabilen tek komut info olur.
Taramalar, dışa aktarımlar, yayımlama, oturum açma, doğrulama ve yama uygulama yalnızca CLI üzerinden kullanılabilir.
Tarama çıktısını okuma
Taramalar varsayılan olarak ilerlemeyi, tamamlanma özetlerini ve hataları stderr'e gönderir;
tam tarama sonucunu stdout'a yazmaz. Yapılandırılmış tarama sonuçlarını stdout'a göndermek için
--json, --format veya --full-output isteyin.
Etkileşimli terminaller; geçerli tarama aşamasını, incelenen dosyaları, etkinliği,
token kullanımını ve tahmini maliyeti içeren canlı bir pano gösterir. CI ve yönlendirilmiş
çıktı düz metin ilerlemesi kullanır. Etkileşimli terminalde düz metin ilerlemesi kullanmak için
--headless ekleyin:
npx @openai/codex-security scan . --headlessPano canlı oturum ayrıntılarını da gösterir. Bunlar düzeltilmemiştir ve kaynak kodu veya kimlik bilgileri içerebilir. Paylaşmadan önce inceleyin.
Ayrıntılı tanılama
Düzeltilmiş yaşam döngüsü, kimlik doğrulama, ilerleme ve maliyet
tanılamalarını stderr'e yazdırmak için --verbose ekleyin:
npx @openai/codex-security scan . --verboseBayrak olmadan aynı tanılamaları etkinleştirmek için CODEX_SECURITY_LOG_LEVEL=debug ayarlayın.
CODEX_SECURITY_LOG_LEVEL ayarlanmamışsa LOG_LEVEL=debug da tanılamayı etkinleştirir.
Tamamlanma özeti
Tamamlanmış bir tarama; deponun açık bulgu sayısını, önem derecesi dağılımını, kapsamı, geçen süreyi, rapor yolunu ve sonuç dizinini stderr'e yazar. Varsa token kullanımını ve tahmini maliyeti içerir:
REPORT /path/to/scan/report.md
FINDINGS 4 (3 confirmed this scan; 1 previously found; 1 critical, 2 high, 1 informational)
COVERAGE complete
ELAPSED 1s
TOKENS 1,250 input, 200 cached, 30 output
RESULTS /path/to/scanBilgilendirme bulguları özet toplamına dâhildir. Önem derecesi politikaları,
depo toplamında gösterilen önceki bulguları değil, yalnızca geçerli taramadaki critical, high, medium ve low bulgularını
değerlendirir.
JSON çıktısı
scan --json stdout'a tek bir eksiksiz JSON belgesi yazar. Üst düzey yapısı
şöyledir:
manifest
repositoryFindings
findings
coverage
scanDir
threadId
reportPath
artifactsDir
sarifPath
cost
turn
id
status
durationMs
finalResponse
usageYama uygularken, JSON çıktısı yama sonuçlarını ve oluşturulan pull request'i de içerir.
İlerleme, tamamlanma özetleri, arşiv bildirimleri ve hatalar stderr'de kalır.
Tamamlanmış bir tarama, önem derecesi politikası 1 çıkışını veya eksik kapsam
2 çıkışını döndürdüğünde bile tam JSON sonucunu yazdırır.
Tarama yapıtları
Tamamlanmış bir tarama, okunabilir raporu ve yapılandırılmış yapıtları birlikte tutar:
<scan-directory>/
├── scan-manifest.json
├── findings.json
├── coverage.json
├── report.md
├── artifacts/
└── exports/
└── results.sarif # when producedYapılandırılmış dosyalar farklı amaçlara hizmet eder:
| Dosya | İçerik |
|---|---|
scan-manifest.json |
Tarama kimliği, durumu, hedefi, kapsamı, üreticisi ve mühürlenmiş yapıt kayıtları. |
findings.json |
Bulgu tanımlayıcıları, önem derecesi, güven, sınıflandırma, konumlar, kanıt, doğrulama, veri akışı, erişilebilirlik ve düzeltme. |
coverage.json |
İncelenen yüzeyler, dışlamalar, ertelenen işler, açık sorular ve kapsam eksiksizliği. |
report.md |
Okunabilir tarama raporu. |
artifacts/ |
Destekleyici tarama yapıtları. |
exports/results.sarif |
Mevcut olduğunda tarama sırasında oluşturulan SARIF. |
Kapsam eksiksizliği üç değere sahiptir:
complete: Tarama, seçilen kapsamı için tam kapsam kaydeder.partial: Tarama, ertelenmiş işleri veya diğer kapsam sınırlarını kaydeder.unknown: Tarama, kapsam eksiksizliğini bilinmiyor olarak bildirir.
Kapsamı bir güvenlik kararına kanıt olarak kullanmadan önce ertelenmiş yüzeyleri, açık dışlamaları ve açık soruları inceleyin.
Çıkış kodları ve sinyaller
CLI şu çıkış kodlarını kullanır:
| Çıkış | Koşul |
|---|---|
0 |
Bir tarama tam kapsamla tamamlanıp önem derecesi politikasını geçti, toplu tarama veya yayımlama hatasız tamamlandı ya da başka bir komut başarılı oldu. |
1 |
Tamamlanmış bir tarama, yapılandırılan önem derecesinde veya üzerinde bir bulgu bildiriyor. |
2 |
CLI bir girdi, çalışma zamanı veya dışa aktarma hatası buldu; bir tarama eksik kapsama sahip; toplu taramadaki depolarda hatalar var ya da yayımlamada bir veya daha fazla bulgu başarısız oldu. |
130 |
Ctrl-C bir taramayı veya yayımlamayı kesintiye uğrattı. |
143 |
SIGTERM bir taramayı veya yayımlamayı sonlandırdı. |
partial veya unknown kapsamına sahip tüm taramalar, önem derecesi politikası olmasa bile
2 döndürür. Yapılandırılmış çıktı istediğinizde tamamlanmış taramalar ve
kısmi yayımlamalar yine de mevcut sonuçları stdout'a yazar. CLI, bir kesinti veya çalışma zamanı
hatasından sonra kısmi çıktı varsa konumunu yazdırır.
Yerel tarama izinleri
CLI ve SDK taramaları yerel işletim sistemi izinlerinizle çalışır. Her tarama
codex_security_scan dosya sistemi profilini kullanır ve approvalPolicy değerini
"never" olarak ayarlar. Profil, yerel dosya sisteminin okunmasına ve
çalışma alanı kökleri ile seçilen tarama durumu dizinine yazılmasına izin verir. Taramalar
etkileşimli onay istemek için durmaz.
CLI --codex veya SDK codexOverrides üzerinden sağlanan ayarlar; approval_policy,
sandbox_mode ve dosya sistemi izinleri dâhil olmak üzere bu tarama denetimlerinin yerini alamaz
veya bunları kısıtlayamaz. Ana makine ve ağ kısıtlamaları uygulanmaya devam eder.
Tarama ve Workbench işlemleri, ilgisiz API token'ları ve bulut kimlik bilgileri dâhil ortamınızı devralabilir. Yalnızca güvendiğiniz ve değerlendirme izniniz olan depoları tarayın; yalnızca taramanın gerektirdiği kimlik bilgilerini sağlayın.
Kimlik doğrulama ve ön koşullar
OPENAI_API_KEY veya CODEX_API_KEY ayarlayın, npx @openai/codex-security login ile
oturum açın ya da dosya destekli mevcut bir Codex oturumu kullanın.
OpenRouter veya Fireworks için sağlayıcının API key değerini ayarlayın ve bir model seçin.
Amazon Bedrock için bunun yerine bir Bedrock API key veya standart AWS
kimlik bilgisi zincirini kullanın.
Kimlik bilgisi seçimi için Tarama kimlik doğrulamasını seçme bölümüne bakın.
CI için API key kapsamını tarama adımıyla sınırlayın ve güvenilir bir iş akışı kullanın.
CLI; Node.js 22 (22.13.0 veya üzeri), 24 ya da 26 gerektirir. Taramalar, toplu taramalar,
dışa aktarımlar, tarama geçmişi ve kaydedilmiş bulgular ayrıca Python 3.10 veya üzerini gerektirir.
Python 3.10 ayrıca tomli gerektirir. scan, bulk-scan veya
export ile --python kullanın ya da Python destekli herhangi bir komut için
PYTHON ayarlayın.
CLI hızlı başlangıç kılavuzu, toplu tarama kılavuzu, CLI SSS, CI kılavuzu veya TypeScript SDK kılavuzu ile devam edin.
Düz metin diğer adları
- --output FILE|-