[BUG] Local git credential proxy fails in Routines (scheduled trigger) — same root cause as #27344

Status Open
Maintainer reply None cached
Activity 0 comments · opened Jul 26, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

I'm hitting the exact same error, but in a different execution context than the original report — a Routine (scheduled trigger via create_trigger, create_new_session_on_fire=true), not an interactive Desktop/VS Code session.

Error:
Exit code 128
fatal: could not read Password for 'http://local_proxy@127.0.0.1:41729': terminal prompts disabled

Context:

  • Automated daily Routine, no human present at execution time (headless/unattended by design).
  • - GITHUB_TOKEN and 7 GIT_CONFIG_KEY_/GIT_CONFIG_VALUE_ pairs are present as environment variables in the container — confirmed present and apparently intended to authenticate git against the target repo.
  • - - git ls-remote https://github.com/<org>/<repo>.git (read-only, no clone/push attempted) fails at the exact same point — it never gets to exchange credentials with github.com. The failure happens against the local proxy (127.0.0.1:<port>), before any request reaches GitHub.
  • - - - This confirms the same root cause as #27344: the local HTTP credential-injection proxy either isn't running, isn't listening on the port git expects, or isn't wired to accept the injected GIT_CONFIG_* credentials in this session type.
  • - - - - Additional detail vs. the original report: the error message differs slightly — "terminal prompts disabled" instead of "No such device or address" — which suggests git is falling back to an interactive credential prompt (disabled in headless mode) rather than getting a connection-level failure. Might indicate the proxy process exists but isn't correctly registered as the credential helper for this session type, rather than not running at all.

Impact: this makes git push/git clone structurally unreliable for any unattended/scheduled Routine that needs to write to a private repo — a core use case for Routines (e.g., automated daily reports, scrapers, scheduled data pipelines). Read-only operations against other services (Google Drive) work fine in the same session; this appears isolated to the git credential-proxy path specifically.

Happy to provide the full session/trigger config or additional logs if useful for reproduction.

What Should Happen?

The Routine should be able to authenticate git (via the injected GITHUB_TOKEN / GIT_CONFIG_* env vars) and complete git ls-remote / git push against a private repo in an unattended, headless scheduled execution, the same way it works in an interactive Desktop/CLI session.

Error Messages/Logs

Exit code 128
fatal: could not read Password for 'http://local_proxy@127.0.0.1:41729': terminal prompts disabled

Exit code 128
fatal: could not read Password for 'http://local_proxy@127.0.0.1:41729': terminal prompts disabled

(Separately, in the same Routine, we also saw create_trigger fail 4/4 times with "MCP error -32003: MCP tool call requires approval" regardless of payload size (~90KB vs ~300 bytes) — possibly related to the same headless-approval gap, noted here for context, not conflated with the git proxy error above.)Reproduced consistently across 4/4 attempts (create_trigger calls and a subsequent git ls-remote check), with different payload sizes (~90KB and ~300 bytes), ruling out payload size as the cause.

Steps to Reproduce

  1. Create a Claude Code Routine (create_trigger) with create_new_session_on_fire=true, pointed at a private GitHub repo, scheduled via cron.
  2. 2. Let it fire on schedule (headless, no human present), or manually trigger the session.
  3. 3. Inside that session, attempt any git operation against the repo, e.g. git ls-remote https://github.com/<org>/<repo>.git
  4. 4. Observe: Exit code 128, fatal: could not read Password for 'http://local_proxy@127.0.0.1:<port>': terminal prompts disabled — even though GITHUB_TOKEN and GIT_CONFIG_* env vars are present in the container.

Claude Model

None

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

N/A — running as a Claude Code Routine (cloud-hosted scheduled session), version not exposed to the session itself

Platform

Anthropic API

Operating System

Other

Terminal/Shell

Other

Additional Information

_No response_

View original on GitHub ↗