Remove clientOptions.apiKey from the LangGraph adapter, and draft the runtime comparison post - #1100
Merged
Merged
Conversation
A deployment credential passed from Angular ships in the browser bundle, so the adapter no longer offers a field for one. LangGraphClientOptions drops apiKey and gains defaultHeaders, the per-user session-token path for LangGraph custom auth. The SDK client is always constructed with an explicit null key so nothing is read from the environment either. The error-redaction seam now keys on configured headers. The cockpit's LangSmith runtime target forwards its key as the SDK's own x-api-key header. A *.type-spec.ts guard pins the absence of apiKey at compile time, since vitest specs are never typechecked. Deployment guide, provide-agent reference, and generated API docs updated. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
A source-verified comparison of the Vercel AI SDK, TanStack AI, assistant-ui, CopilotKit, and Threadplane on twenty-four rows, with the runtime question answered row by row. Ships as draft: true. The voice guide gains a rule against structural narration and stagey fragments. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Contributor
…trim the post description The docs binding spec still expected the removed apiKey member, and the new post's description exceeded the 160-character search-snippet budget. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Contributor
blove
enabled auto-merge (squash)
September 16, 2026 05:02
Contributor
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.
Summary
Two commits.
1.
feat(langgraph)!:clientOptions.apiKeyis gone,defaultHeadersis added.A deployment credential passed from Angular ships in the bundle, so the adapter no longer offers a field for one. The SDK client is always built with an explicit null key, so it never reads a key from the environment either.
defaultHeaderscarries a per-user session token for LangGraph custom auth. The cockpit's LangSmith target (the one real consumer) forwards its key as the SDK's ownx-api-keyheader. Deployment guide, provide-agent reference, generated API docs, and CHANGELOG updated.2.
docs(blog): "Why Do Agent UI Libraries Require a Runtime?" is published in this PR (a third commit flipsdraft: false).A comparison of the Vercel AI SDK, TanStack AI, assistant-ui, CopilotKit, and Threadplane on twenty-four rows, every cell verified against primary sources on 2026-09-15, with inline links throughout. Names competitors on Brian's instruction for this post only. The voice guide gains a rule against structural narration.
Breaking change
LangGraphClientOptions.apiKeyno longer exists. Migrate a session token toclientOptions.defaultHeaders; keep deployment keys on an endpoint you own and pointapiUrlat it.Verification
nx test langgraph,nx test cockpit-telemetry: passnx buildandnx lintfor both libs: pass, 0 lint errorsnx type-tests langgraph: pass; removing the@ts-expect-errorin the new type-spec produces exactly one error (negative control)npm run generate-api-docs: regenerated,apiKeyabsentNot in this PR
An AG-UI deployment/auth guide is being written in a separate session (spawned task).
🤖 Generated with Claude Code