Support temporary global custom request headers for Claude Code - #687
andy-xu-db wants to merge 2 commits into
Conversation
c85880d to
c65f808
Compare
b2ce76d to
cc94c21
Compare
cc94c21 to
635dad9
Compare
Live LiteSwap + Actual TUI Validation (2026-09-21)Validated the combined #610/#687 stack at Deployed a harmless AI Gateway marker change to
All four TUIs exited normally with code 0. Server marker evidence was collected at 22:18:49 UTC (Claude, request Scope limitation: staging smart-router selection returned HTTP 400 both with and without custom headers. The TUIs fell back successfully to their current models. This verifies actual inference header propagation through that fallback path, not a successful live smart-router model switch. MCP tool execution was not exercised. No additional header-code fix was needed. The temporary container/token were removed and LiteSwap teardown succeeded. The marker change was not added to these PRs. |
🥞 Stacked PR
Use this link to review incremental changes.
Summary
ug claude --header "Name: value"supportStack
Stacked on #610, which contains the shared parser and launch plumbing. Merge #610 first.
Rebase Validation (2026-09-21)
Rebased the stack onto
aa55bbafrommain. Preserved the current Codex provider-header cleanup and protectedDatabricks-Smart-Router-Recipefrom custom-header overrides, with case-insensitive regression coverage.uv run --frozen pytest -q --ignore=tests/test_e2e_user_agent.pybefore the final integration-test-only main update.git diff --checkpassed on the final stack.Previous Testing
uv run pytest -q tests/test_state.py tests/test_agent_claude.py tests/test_cli.py tests/test_agent_codex.py tests/test_codex_smart_routing_v2.py(734 passed)tests/test_e2e_user_agent.pyexcluded; its installed Claude 2.1.273 rejects the synthetic test model before making a requestuv run ruff check src testsuv run ruff format --check src testsgit diff --check