Skip to content

Apps picker surfaces inaccessible app directory entries as invokable $ mentions #24627

@smallgreenant

Description

@smallgreenant

Summary

After updating Codex CLI to 0.133.0, typing $ in the composer shows hundreds of unrelated ChatGPT App directory entries that are not installed or accessible. The UI makes these entries look invokable, but they are not exposed to the model as usable tools, which causes the assistant to interpret selected app mentions as ordinary text or user shorthand.

Environment

  • Codex CLI: codex-cli 0.133.0
  • OS: Windows / PowerShell
  • Feature state: codex features list shows apps as stable true
  • Local config did not explicitly enable features.apps; only unrelated feature flags are set in ~/.codex/config.toml

Reproduction

  1. Update/restart Codex CLI.
  2. In the composer, type $.
  3. Observe many unrelated app entries such as:
    • % Arabica UAE
    • 1-2-3-Cook!
    • U.S. Secret Service Careers
  4. Select or type one of those app entries in a chat.
  5. The assistant does not have a usable corresponding tool/app namespace and may treat it as plain text, creating confusion.

Local evidence

Codex created a cache file at:

~/.codex/cache/codex_app_directory/5cb0a9bbb3218f231d0ee74e4c1e917d404d3dda.json

That cache contains 1251 connector/app-directory entries.

Sample cached entry:

{
  "id": "asdk_app_69b205070d0c8191aeefe2b39229fb53",
  "name": "U.S. Secret Service Careers",
  "description": "Find U.S. Secret Service jobs",
  "distributionChannel": "ECOSYSTEM_DIRECTORY",
  "installUrl": "https://chatgpt.com/apps/u-s--secret-service-careers/asdk_app_69b205070d0c8191aeefe2b39229fb53",
  "isAccessible": false,
  "isEnabled": true
}

Counts from the same cache:

connectorsCount=1251
accessibleTrue=0
accessibleFalse=1251
ecosystemDirectory=1224

The selected app mention also appears in Codex history as an app URI, for example:

[$u-s--secret-service-careers](app://asdk_app_69b205070d0c8191aeefe2b39229fb53)

Expected behavior

The $ picker should either:

  • show only installed/accessible/usable apps by default, or
  • clearly separate directory suggestions from available tools/apps, or
  • pass explicit metadata to the model that the selected app is a directory listing and is not installed/accessible.

Actual behavior

The composer presents inaccessible directory entries alongside usable mentions, making them appear installed/invokable. The model does not receive a usable tool for those entries, so the interaction can degrade into a confusing plain-text prompt.

Why this matters

This looks like an installed-tool surface to the user, but it behaves like a global app-directory autocomplete. It is especially confusing in Codex because $ is also used as a command/skill/app discovery affordance, and the assistant cannot reliably distinguish inaccessible app-directory selections from user text.

Metadata

Metadata

Assignees

No one assigned

    Labels

    CLIIssues related to the Codex CLITUIIssues related to the terminal user interface: text input, menus and dialogs, and terminal displaybugSomething isn't workingwindows-osIssues related to Codex on Windows systems

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions