Clarify unsupported model-provider credentials - #529
Draft
Rachael-Graham wants to merge 1 commit into
Draft
Rachael-Graham wants to merge 1 commit into
Rachael-Graham wants to merge 1 commit into
Conversation
Document how model credentials are injected through the egress gateway and which credential shapes fail to compile. This updates the Harness, Bedrock, Vertex AI, SAP AI Core, and provider overview docs to explain the header-injection limitation, the runtime/provider matrix, and the supported alternatives for Vertex AI and SAP AI Core models. Signed-off-by: Rachael Graham <rachael.graham@solo.io>
Docs preview
Both are uploaded Worker versions and serve no production traffic. |
This was referenced Sep 23, 2026
Contributor
Author
|
Follow-up filed as #530. Rewriting Not a blocker for this PR — the pages it touches are correct as they stand — but the two should land close together. |
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.
The 1.x provider docs describe credential shapes that the compiler rejects. kagent-dev/kagent#2868 moved model credentials onto Agent Substrate's egress gateway, which injects a static string into an HTTP header, and four documented configurations cannot take that form. The pages were never revisited.
Verified on a cluster
A kind cluster built from
1e5533b2(v1.0.0-alpha2plus five commits), each case applied as a ModelConfig and an AgentTemplate. Every rejection reportsCompatible=Falsewith the reasonUnsupportedConfiguration.OpenAIonkagentBedrockbearer token onkagentAnthropiconclaudeBedrockwith IAM access keysenvironment credential "AWS_ACCESS_KEY_ID" cannot use gateway header injectionSAPAICoreSAP_AI_CORE_CLIENT_IDAnthropicVertexAIonclaudeKAGENT_CLAUDE_GOOGLE_CREDENTIALS_JSONspec.envcredentialRefarbitrary credentialRef values cannot be injected into HTTP headersThe three controls reach a ready golden snapshot, so injection works and the
claudeharness is healthy — the rejections are about the credentials.The
credentialRefcase is the worst of them. It is the main example on the Harness page, the CRD accepts the field, and the Harness applies cleanly, so the reader gets a cleankubectl applyand an agent that never runs.Changes
about-model-providers.md— replaces the "credential files" model with header injection: the per-provider header table, the hostname matching rules, and aCredentials that do not compilesection giving each rejected configuration and its alternative. The three file-mount cases stay, as rows rather than as the whole story.agent-harness.md— dropscredentialReffrom the main example and the field table, flipsAnthropicVertexAIandSAPAICoreto ❌ on all four runtimes, and replaces the stale Vertex restriction row with the Bedrock bearer-token rule.amazon-bedrock.md— the native procedure creates a bearer-token Secret instead of IAM access keys.google-vertexai.md,sap-ai-core.md— cut to a short notice, the verbatim error, and a table routing to a provider that serves the same models. Both URLs stay live.anthropic.md,gemini.md— each pointed readers at Vertex AI as a working alternative.Open question, and why this is a draft
Some of this may be temporary. Vertex AI and SAP AI Core fail for the same underlying reason, a credential that needs a token exchange before the request, and a gateway-side exchange would restore both at once. Bedrock IAM signing and arbitrary
credentialRefvalues look settled:docs/architecture/credential-injection.mdlists all four as rejected by design rather than unimplemented.The pages are written as "on kagent 1.0" and "today" rather than "never", so restoring a provider is a prose edit and not a structural one. The call worth making before this merges is whether to hold it until upstream says which of the four it intends to keep.
🤖 Generated with Claude Code