[bug] GitHub publish skill requires gh even when connector path is available

Open Beginner friendly
#35,876 1 comment 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
72/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Quiet
Tech stack
git, github
Domain
cli, devtools

Research direction

Read plugins/github/skills/yeet/SKILL.md first, focusing on its unconditional prerequisites, connector workflow, and CLI fallback. Compare the documented flow with the expected connector-first behavior and the referenced one-file patch. Done means local Git and connected GitHub operations remain available without gh, while gh checks occur only for a selected CLI fallback.

Written by the indexing model from the issue text.

Description

auth bug CLI sandbox skills windows-os
What version of Codex is running?

codex-cli 0.145.0, with GitHub plugin source inspected at openai/plugins@11c74d6ba24d3a6d48f54a194cd00ef3beea18f9.

What platform is your computer?

Windows 11 x64 using the elevated native Windows sandbox.

What issue are you seeing?

The GitHub yeet publish skill describes a connector-first workflow with gh used only as a fallback, but its prerequisites unconditionally require both an installed GitHub CLI and a successful gh auth status.

Those contracts conflict. A connector-backed publish can have everything it needs—local git for branch/commit/push plus the authenticated GitHub app for PR creation—yet the skill can stop before using that path because an unused fallback is unavailable.

Source: https://github.com/openai/plugins/blob/main/plugins/github/skills/yeet/SKILL.md

What steps can reproduce the bug?
  1. Run Codex in the elevated native Windows sandbox.
  2. Connect and authenticate the GitHub plugin.
  3. Use a local repository whose Git remote can fetch and push successfully.
  4. Store GitHub CLI authentication in the normal Windows keyring.
  5. Keep GH_TOKEN and GITHUB_TOKEN unset.
  6. Invoke the publish skill for a same-repository branch and PR.

gh auth status can report that the token is invalid inside the sandbox because the isolated sandbox identity cannot read the user's Windows keyring. The exact command succeeds outside the sandbox, confirming the credential itself is valid. Even though PR creation is covered by the connected GitHub app, the unconditional prerequisite makes the skill diagnose an authentication failure or request an unnecessary login.

What is the expected behavior?
  • Require a local Git repository and confirmed publish scope unconditionally.
  • Use local git for branch, commit, and push.
  • Prefer the connected GitHub app for supported repository and PR operations.
  • Require gh, and verify its authentication, only after selecting a specific CLI fallback that actually needs it.
  • If a sandboxed CLI auth check fails, distinguish sandbox/keyring access from an invalid credential before recommending re-authentication.
Additional information

A minimal one-file patch is published here:

https://github.com/startwithwater/plugins/commit/621238fb2130840f46a6581dfe493f40e7d2f6e5

It removes the two unconditional gh prerequisites, moves the checks to the actual fallback boundary, and prefers GitHub app metadata when resolving the base branch.

openai/plugins has Issues disabled, and GitHub rejected creation of a cross-fork PR with createPullRequest permission denied, so this tracker is the available public report channel.

The fix should not recommend globally exporting GH_TOKEN or storing a token in plaintext.

Dominant language
Rust
Stars
125k
Forks
19.5k
Avg merge
1m
Merged PRs (30d)
1k

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.

More from openai/codex

All issues in openai/codex

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.