openai / openai/codex

Codex uses nonexistent sky.app() API for Finder Computer Use task

Open
#40,479 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

app bug computer-use
Dominant language
Rust
Stars
125k
Forks
19.4k
PR merge metrics
PR metrics pending

Description

What version of the Codex App are you using (From “About Codex” dialog)?

26.818.61809 (build 7019)

What subscription do you have?

ChatGPT Pro (20x)

What platform is your computer?

Darwin 27.0.0 arm64 arm

What issue are you seeing?

When asked to open a local project folder in Finder, Codex initialized the bundled @oai/sky package correctly, but then called a nonexistent API:

globalThis.sky = (await import("@oai/sky")).sky;
var finder = await sky.app("Finder");
var state = await finder.getAppState();

The call failed with:

sky.app is not a function

Finder was never accessed and the requested folder was not opened. The current bundled Computer Use instructions expose a flat, snake_case API such as sky.get_app_state({ app: "Finder" }); they do not expose a sky.app() factory or getAppState() method.

What steps can reproduce the bug?

Feedback ID: 01a0352d-4ffc-7c00-aa0e-fcd494ab2d4d

  1. In the Codex desktop app, ask Codex to open a specific local folder in Finder.
  2. Codex selects the Computer Use skill and imports @oai/sky.
  3. Observe that it generates var finder = await sky.app("Finder");.
  4. The tool call immediately fails with sky.app is not a function.

The documented working API shape is:

globalThis.sky = (await import("@oai/sky")).sky;
var state = await sky.get_app_state({ app: "Finder" });
nodeRepl.write(state.text);
What is the expected behavior?

After loading the current Computer Use instructions, Codex should use the documented flat API and complete the Finder action, for example with sky.get_app_state, sky.press_key, and sky.paste. It should not generate methods that are absent from the runtime API.

Additional information

This appears to be stale API-shape contamination in agent planning: the current bundled skill documentation already shows the correct top-level snake_case methods. Ideally the generated call should be validated against the exposed API surface before execution.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by inspecting the bundled Computer Use instructions and the agent planning path that generated the Finder call. Reproduce the task using the provided steps and feedback ID, then verify that generated calls use the exposed flat snake_case API rather than sky.app() or getAppState().

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.