claude-code - 💡(How to fix) Fix Web hand-off session cannot commit or push — work stranded in ephemeral container (commit-signing 400 'missing source' + no remote/gh)

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

The desktop → web "hand off your plan to Claude on the web" flow drops the user into a remote execution environment where completed work cannot be committed or pushed, so the code is effectively stranded in an ephemeral container and appears lost. This is a serious UX flaw in the hand-off path.

Error Message

signing server returned status 400: {"error":{"message":"missing source","reason":"","type":"invalid_request_error"}}

Root Cause

  1. Commit signing fails on every attempt. Config: commit.gpgsign=true, gpg.format=ssh, key /home/claude/.ssh/commit_signing_key.pub. Every git commit dies with:
    signing server returned status 400: {"error":{"message":"missing source","reason":"","type":"invalid_request_error"}}
    Request IDs: req_011CbX72UnvFs3ysVV7khd4y, req_011CbX75byrLytpNUSWPDRZK. Not transient — failed on repeated attempts.
  2. No egress from the shell. git remote -v is empty and gh is not installed, so the agent cannot push or open a PR. Because no commit can be created, the web UI's "Create PR" affordance is also dead.

Fix Action

Fix / Workaround

Impact

Completed work sat as uncommitted edits in an ephemeral container with no durable destination — it looked "lost" to the user. Only recoverable by manually exporting a git diff patch and applying it locally.

Code Example

signing server returned status 400: {"error":{"message":"missing source","reason":"","type":"invalid_request_error"}}
RAW_BUFFERClick to expand / collapse

Summary

The desktop → web "hand off your plan to Claude on the web" flow drops the user into a remote execution environment where completed work cannot be committed or pushed, so the code is effectively stranded in an ephemeral container and appears lost. This is a serious UX flaw in the hand-off path.

Environment

  • Claude Code on the web (remote execution environment), reached via a plan hand-off from Claude Code on desktop.
  • Repo: github.com/kurowski/homie, base commit 2455110.

What happened

The web session completed a multi-file implementation, but there was no way to get the code back out:

  1. Commit signing fails on every attempt. Config: commit.gpgsign=true, gpg.format=ssh, key /home/claude/.ssh/commit_signing_key.pub. Every git commit dies with:
    signing server returned status 400: {"error":{"message":"missing source","reason":"","type":"invalid_request_error"}}
    Request IDs: req_011CbX72UnvFs3ysVV7khd4y, req_011CbX75byrLytpNUSWPDRZK. Not transient — failed on repeated attempts.
  2. No egress from the shell. git remote -v is empty and gh is not installed, so the agent cannot push or open a PR. Because no commit can be created, the web UI's "Create PR" affordance is also dead.

Impact

Completed work sat as uncommitted edits in an ephemeral container with no durable destination — it looked "lost" to the user. Only recoverable by manually exporting a git diff patch and applying it locally.

Likely root cause

The signing server's missing source 400 is the primary failure: it blocks every commit, which cascades into "no PR." This looks like an environment-provisioning bug in the hand-off flow (signing not wired up, and/or no remote configured).

Expected

A plan hand-off from desktop → web should land in an environment where commits can be signed and the branch can be pushed / surfaced as a PR back to the user.

🤖 Generated with Claude Code

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING