path-types

oleh openai

Pilih tipe Rust untuk jalur sistem operasi di seluruh repositori Codex. Gunakan saat mendefinisikan tipe baru yang membawa jalur atau secara eksplisit memigrasikan yang sudah ada.

npx skills add https://github.com/openai/codex --skill path-types

Path Types

Apply this guidance when defining new types. Change existing code only when explicitly requested, and keep edits minimal and proportional. Treat these rules as the target state of an ongoing migration; if compliance is difficult, ask the user how to proceed.

  • In app-server protocol types, use LegacyAppPathString for backwards compatibility during the URI migration. At the protocol boundary, convert it to PathUri and use PathUri internally. For host-local logic, such as some config values, use AbsolutePathBuf or PathBuf instead.
  • In exec-server protocol types, use PathUri. Internally, use PathUri or AbsolutePathBuf as appropriate.
  • In dependencies shared by both servers, use PathUri or separate APIs that decouple their use cases.
  • Tool call arguments that the model is expected to generate should be deserialized as regular Strings with feature-specific path handling code.

Migration requirements

Keep these requirements in mind while migrating code to conform with the above guidelines:

  • existing app-server clients keep sending and receiving legacy native-path strings
  • app-server can retain and manipulate foreign-platform path URIs
  • exec-server APIs use file:// URIs
  • local-only operation must not change model-visible text
  • model tool arguments may contain raw relative or absolute paths for any OS
  • path reasoning must work before the related environment has come online
  • URIs cannot explicitly encode the executor’s path convention or operating system
  • users must not configure the environment’s OS/path convention explicitly
  • URIs should not yet be stored in rollouts, databases, or other persistent storage
  • path conversion errors: fail-closed for security-relevant paths, fail-open for UI/diagnostics
  • prefer small focused methods on PathUri or LegacyAppPathString over local helpers
  • represent PathUri values as URIs in diagnostics

It is OK if the conversion between paths and URIs is somewhat lossy as long as it will do the right thing for real users.

Migrating to URIs should not add significant new failure modes. We will need to surface errors in some places that were previously infallible but it should be kept to a minimum.

Lebih banyak skill dari openai

release
openai
Buat rilis Symphony dengan menaikkan versi yang dikomit, menandainya, menandai commit yang digabung, dan memverifikasi alur kerja rilis Burrito. Gunakan saat diminta untuk…
signing-entitlements
openai
Periksa masalah penandatanganan, hak istimewa, runtime yang diperkuat, dan Gatekeeper untuk aplikasi macOS. Gunakan saat diminta untuk mendiagnosis kegagalan penandatanganan kode, hak istimewa yang hilang,…
building-ai-agent-on-cloudflare
openai
Membangun agen AI di Cloudflare menggunakan Agents SDK dengan manajemen status, WebSockets real-time, tugas terjadwal, integrasi alat, dan obrolan…
epigraphdb-skill
openai
Kirim permintaan API EpiGraphDB yang ringkas untuk ontologi, literatur, MR, gen-obat, dan bukti jalur dukungan. Gunakan saat pengguna menginginkan ringkasan EpiGraphDB yang singkat.
runtime-behavior-probe
openai
Rencanakan dan laksanakan investigasi perilaku runtime dengan skrip probe sementara, matriks validasi, kontrol status, dan laporan berbasis temuan. Gunakan hanya ketika…
deep-security-scan
openai
Gunakan saat pengguna meminta pemindaian Keamanan Codex yang mendalam, menyeluruh, multi-pass, atau mengurangi varians di seluruh repositori atau pada jalur tertentu. Jalankan secara independen dan berulang…
define-security-policy
openai
Menentukan, meninjau, atau memperbarui panduan SECURITY.md untuk repositori atau komponen. Gunakan ketika pengguna ingin memperjelas apa yang harus ditinjau oleh Codex Security, apa yang di luar…
validation
openai
Gunakan ketika Codex sudah berada dalam fase validasi pemindaian keamanan atau pengguna secara eksplisit meminta untuk menentukan apakah satu atau lebih temuan keamanan kandidat…