feat(relay): add claude-desktop launch target#153
Draft
CLEMENTINATOR wants to merge 2 commits into
Draft
Conversation
Add `edgee launch claude-desktop` (+ hidden `relay claude-desktop`), a dedicated claude_desktop provider key/coding-assistant, default port 41400, and an `edgee alias` desktop wrapper. Claude Desktop is a Chromium app that verifies API certs against the macOS system trust store only (it ignores NODE_EXTRA_CA_CERTS and the --ignore-certificate-errors* switches). So the relay: - launches the app bundle binary behind Chromium's --proxy-server; - uses a dedicated CA name-constrained (critical) to anthropic.com, kept separate from the shared relay CA that MITMs other providers; - trusts that CA in the system keychain only for the session (SessionTrust installs on launch, removes on quit/Ctrl-C; purge-on-start covers hard kills). The trust grant is therefore bounded to the relay's lifetime and scoped to Anthropic, never a persistent machine-wide MITM root.
Previously text/event-stream responses logged only headers and passed the body through untouched, so streamed output was invisible. Tee it instead: forward the body through a task that logs each chunk live (wall-clock timestamp + byte count) before relaying it downstream via a channel-backed streaming body. Streaming and backpressure-to-client are preserved (channel is unbounded; only relevant with --log-output). This surfaces stalls — chunks that stop, or a stream that never sends a terminating event — which is what we need to debug clients hanging mid-stream (e.g. Claude Desktop).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds edgee launch/relay claude-desktop: launches the app behind the proxy with a dedicated, anthropic.com-name-constrained CA trusted in the system keychain only for the session, plus opt-in SSE chunk logging.