Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

work-items: github adapter takes GraphQL paths on gh 2.94+ even in cloud sessions, whose proxy refuses GraphQL

クローズ
#7,289 コメント 3 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

関連するプルリクエストがすでにマージされています。

  • #8197 @melodic-automation-lanes による — マージ済み

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
48/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
github, shell
領域
tooling

調査の方向性

Start with plugins/work-items/tools/work-item-tracker/lib/gh-version.sh and the read and create paths in adapters/github/common.sh and adapters/github/create-item.sh. Trace how the native gh surface is selected and how REST fallback currently works, then check the related cloud session behavior described in the issue. Done means reads and creates use REST when GraphQL is unavailable, with sub-issue and dependency operations reporting that they are unavailable in that environment.

索引モデルが issue の本文から書いたものです。

説明

agent-ready work-class: scoped

Summary

The work-items GitHub adapter picks its read and create paths by gh version alone. On gh 2.94 or newer it reads items through gh issue view --json and creates them with native gh issue create, and both go through GraphQL. The live docs say the GitHub proxy in Claude Code cloud sessions refuses every GraphQL request, so in a cloud session with a new enough gh the adapter's read and create paths fail. The REST fallback exists, but only for older gh.

Affected area / component

plugins/work-items/tools/work-item-tracker/adapters/github/ (common.sh, create-item.sh) and plugins/work-items/tools/work-item-tracker/lib/gh-version.sh

Steps to reproduce

  1. In a Claude Code cloud session, install gh 2.94 or newer.
  2. Read or create an item through the work-item-tracker seam with the github adapter.

(Repro is from the code path and the docs; not run in a cloud session.)

Expected behavior

In a session whose GitHub proxy refuses GraphQL, the adapter uses its REST paths whatever the gh version.

Actual behavior

  • lib/gh-version.sh:22-30 (wit_gh_has_native_surface): returns 0 when gh is present and at least 2.94. It checks nothing about the environment.
  • adapters/github/common.sh:338-347 (wit_emit_item): with the native surface, reads through gh issue view --json; REST is used only otherwise.
  • adapters/github/create-item.sh:61 sets native=1 from the same check, and :87 then runs gh issue create. The REST branch at :116-118 already notes that "gh issue create resolves through GraphQL, which sandboxed sessions refuse with HTTP 403".
  • Live docs, https://code.claude.com/docs/en/cloud-environments#github-proxy (read 2026-10-12): the proxy "rejects requests to GitHub's GraphQL endpoint with a 403", and "gh subcommands that use GraphQL, such as gh pr and gh issue, get the same 403", regardless of the credentials supplied.

Suggested fix

Route to REST when the session is behind the proxy: detect a cloud session, or treat a GraphQL 403 whose message starts with "GitHub GraphQL is not available from Claude Code sessions" as a signal to fall back. Sub-issue and dependency edges have no REST form, so they need an explicit "unavailable here" error rather than a failed call.

Related: #3169 (cloud sessions ship an older gh, so today the version gate keeps them on REST by accident), #7240, #7223.

Environment

work-items on main as of 2026-10-12; Claude Code cloud sessions.

Found during the upstream-pointer sweep (PRs #7061-#7274).

主要言語
Shell
スター
22
フォーク
2
平均マージ
7時間 8分
マージ済み PR(30日)
874

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

melodic-software/claude-code-plugins のほかの issue

melodic-software/claude-code-plugins の issue をすべて見る

似ている issue

Shell/Bash の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。