Commit Graph

13 Commits

  • Update bundled OpenAI Docs skill freshness check (#19043)
    ## Summary
    
    Sync the bundled `openai-docs` system skill with the already-merged
    `openai/skills` update from https://github.com/openai/skills/pull/360.
    
    Codex bundles system skills from `codex-rs/skills/src/assets/samples`,
    so this PR copies the same GPT-5.4 OpenAI Docs skill update into the
    Codex app/CLI bundle path.
    
    ## Changes
    
    - Add the latest-model resolver script to the bundled `openai-docs`
    skill.
    - Route model upgrade and prompt-upgrade requests through remote
    latest-model metadata when current guidance is needed.
    - Rename bundled fallback references to `upgrade-guide.md` and
    `prompting-guide.md`.
    - Keep the bundled fallback guidance GPT-5.4-only.
    
    ## Validation
    
    - Verified this bundled skill is byte-for-byte identical to
    `openai/skills@origin/main` `skills/.system/openai-docs`.
    - Ran the resolver locally and confirmed it returns `gpt-5.4` /
    `gpt-5p4`.
  • [codex] Update imagegen system skill (#18852)
    ## Summary
    
    This updates the embedded `imagegen` system skill in `codex-rs/skills`
    with the ImageGen 2 skill changes from `openai/skills-internal#87`.
    
    The bundled skill now keeps normal image generation/editing on the
    built-in `image_gen` path, updates the CLI fallback defaults to
    `gpt-image-2`, and routes explicit transparent-output requests through
    `gpt-image-1.5` with clear guidance that `gpt-image-2` does not support
    transparent backgrounds.
    
    ## Details
    
    - Update `SKILL.md` routing guidance for built-in vs CLI fallback
    behavior.
    - Update CLI/API references for `gpt-image-2` size constraints, quality
    options, near-4K sizes, and unsupported options.
    - Update `scripts/image_gen.py` defaults and validation:
      - default model `gpt-image-2`
      - default size `auto`
      - default quality `medium`
      - reject transparent backgrounds on `gpt-image-2`
      - reject `input_fidelity` on `gpt-image-2`
    - validate flexible `gpt-image-2` sizes and suggest `3824x2160` /
    `2160x3824` for near-4K requests
    - Update prompt/reference docs with the new model and routing guidance.
    
    ## Validation
    
    - `cargo test -p codex-skills`
    - `git diff --check`
    - Manual CLI dry-runs for:
      - default `gpt-image-2` payload
      - `3824x2160` near-4K size acceptance
      - `3840x2160` rejection with near-4K guidance
      - transparent background rejection on `gpt-image-2`
      - transparent background acceptance on `gpt-image-1.5`
      - `input_fidelity` rejection on `gpt-image-2`
    
    Bazel target check was not run locally because `bazel` is not installed
    in this environment.
  • [codex] Make AbsolutePathBuf joins infallible (#16981)
    Having to check for errors every time join is called is painful and
    unnecessary.
  • Update plugin creator skill. (#15734)
    Add support for home-local plugin + fix policy.
  • move imagegen skill into system skills (#15600)
    Add imagegen skill as built-in skill. Source: github.com/openai/skills
  • skill-creator: default new skills to ~/.codex/skills (#14837)
    ### Motivation
    - Prevent newly-created skills from being placed in unexpected locations
    by prompting for an install path and defaulting to a discoverable
    location so skills are usable immediately.
    - Make the `skill-creator` instructions explicit about the recommended
    default (`~/.codex/skills` / `$CODEX_HOME/skills`) so the agent and
    users follow a consistent, discoverable convention.
    
    ### Description
    - Updated `codex-rs/skills/src/assets/samples/skill-creator/SKILL.md` to
    add a user prompt: "Where should I create this skill? If you do not have
    a preference, I will place it in ~/.codex/skills so Codex can discover
    it automatically.".
    - Added guidance before running `init_skill.py` that if the user does
    not specify a location, the agent should default to `~/.codex/skills`
    (equivalently `$CODEX_HOME/skills`) for auto-discovery.
    - Updated the `init_skill.py` examples in the same `SKILL.md` to use
    `~/.codex/skills` as the recommended default while keeping one custom
    path example.
    
    ### Testing
    - Ran `cargo test -p codex-skills` and the crate's unit test suite
    passed (`1 passed; 0 failed`).
    - Verified relevant discovery behavior in code by checking
    `codex-rs/utils/home-dir/src/lib.rs` (`find_codex_home` defaults to
    `~/.codex`) and `codex-rs/core/src/skills/loader.rs` (user skill roots
    include `$CODEX_HOME/skills`).
    
    ------
    [Codex
    Task](https://chatgpt.com/codex/tasks/task_i_69b75a50bb008322a278e55eb0ddccd6)
  • Add OpenAI Docs skill (#13596)
    ## Summary
    - add the OpenAI Docs skill under
    codex-rs/skills/src/assets/samples/openai-docs
    - include the skill metadata, assets, and GPT-5.4 upgrade reference
    files
    - exclude the test harness and test fixtures
    
    ## Testing
    - not run (skill-only asset copy)
  • [skill-creator] Add forward-testing instructions (#13600)
    This updates the `skill-creator` sample skill to explicitly cover
    forward-testing as part of the skill authoring workflow. The guidance
    now treats subagent-based validation as a first-class step for complex
    or fragile skills, with an emphasis on preserving evaluation integrity
    and avoiding leaked context.
    
    The sample initialization script is also updated so newly created skills
    point authors toward forward-testing after validation. Together, these
    changes make the sample more opinionated about how skills should be
    iterated on once the initial implementation is complete.
    
    - Add new guidance to `SKILL.md` on protecting validation integrity,
    when to use subagents for forward-testing, and how to structure
    realistic test prompts without leaking expected answers.
    - Expand the skill creation workflow so iteration explicitly includes
    forward-testing for complex skills, including approval guidance for
    expensive or risky validation runs.
  • feat: skills for artifacts (#13525)
    Co-authored-by: Dibyo Majumdar <dibyo@openai.com>
  • refactor(core): move embedded system skills into codex-skills crate (#12435)
    ## Why
    
    `codex-core` was carrying the embedded system-skill sample assets (and a
    `build.rs` that walks those files to register rerun triggers). Those
    assets change infrequently, but any change under `codex-core` still ties
    them to `codex-core`'s build/cache lifecycle.
    
    This change moves the embedded system-skills packaging into a dedicated
    `codex-skills` crate so it can be cached independently. That reduces
    unnecessary invalidation/rebuild pressure on `codex-core` when the
    skills bundle is the only thing that changes.
    
    ## What Changed
    
    - Added a new `codex-rs/skills` crate (`codex-skills`) with:
      - `Cargo.toml`
      - `BUILD.bazel`
      - `build.rs` to track skill asset file changes for Cargo rebuilds
    - `src/lib.rs` containing the embedded system-skills install/cache logic
    previously in `codex-core`
    - Moved the embedded sample skill assets from
    `codex-rs/core/src/skills/assets/samples` to
    `codex-rs/skills/src/assets/samples`.
    - Updated `codex-rs/core/Cargo.toml` to depend on `codex-skills` and
    removed `codex-core`'s direct `include_dir` dependency.
    - Removed `codex-core`'s `build.rs`.
    - Replaced `codex-rs/core/src/skills/system.rs` implementation with a
    thin re-export wrapper to keep existing `codex-core` call sites
    unchanged.
    - Updated workspace manifests/lockfile (`codex-rs/Cargo.toml`,
    `codex-rs/Cargo.lock`) for the new crate.