github / github/copilot-cli

Copilot CLI loops infinitely and fails apply_patch due to JSON-wrapping error

オープン
#4,553 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

area:models area:tools
主要言語
Shell
スター
11.2k
フォーク
1.9k
平均マージ
14時間 16分
マージ済み PR(30日)
6

説明

Describe the bug

While executing regular coding tasks that require file modifications, the Copilot CLI frequently fails to apply patches. The CLI enters a loop where it attempts to edit a file, fails with a JSON-wrapping error, and retries the exact same payload repeatedly.

This causes a task that should take 2 steps to take 30+ steps, resulting in massive latency, tool frustration, and high token consumption before it either randomly recovers or fails entirely. Many models are failing to adapt to apply_patch. I havent seen issue with sonnet 4.6 and gpt-sol but other models like sonnet 5, luna, terra are failing most of the times.

Error Message / Trace
When the CLI attempts to apply an edit, it outputs the following error:

✗ Edit 
 └ Failed to parse patch: The first line of the patch must be '*** Begin Patch' 
   The input begins with '{' and appears to be JSON-wrapped. apply_patch is a 
   freeform tool; pass raw patch text directly. Do not retry this payload.

Behavior Details
Infinite Loop: Once this error is triggered, the model consistently retries the same payload 10 to 30+ times in a row despite the warning "Do not retry this payload".

Temporary Recovery: Eventually, the model might format the tool call correctly by accident, but the error quickly resurfaces on subsequent edits.

CLI vs. VS Code: This behavior is highly localized to the CLI. Using the same prompts and models in the VS Code Copilot Chat interface works perfectly without any patch-parsing issues.

Affected version

GitHub Copilot CLI 1.0.80

Steps to reproduce the behavior

This is intermittent but seen in most of medium complexity prompts.

  • Open Terminal ( I did on iterm)
  • start interactive session (copilot) - i did not append any flag options ( i opened a session on TMUX)
  • Trigger a medium complexity prompt which would need to change your sourcecode files.
  • It should trigger the error - It generally happens mid sessions not in the first prompt itself. but yea this is intermittent behaviour
Expected behavior

No response

Additional context
  • OS: Ubuntu server
    Tool: Github Copilot CLI (Latest Version)
    Comparison: Not observed in VS Code Copilot Chat (works successfully there)
    LLM Models tried : Both GPT-5.6-Luna and Claude-sonnet-5

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

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

調査の方向性

ソースファイルやテストは指定されていません。まず、ファイルを編集する中程度のコーディングプロンプトを使ったインタラクティブセッションで、Ubuntu 上の Copilot CLI 1.0.80 で問題を再現し、その後 CLI の動作を VS Code Copilot Chat と比較します。apply_patch がツールのペイロードを受け付け、CLI が同じ失敗したリクエストを再試行しなくなれば完了です。

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

評価

技術スタック
shell
領域
cli, tooling
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
活発
明瞭さ
説明が足りない
初心者へのやさしさ
35/100

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

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