Skip to content

chore(web): Added option to specify bearer tokens for the anthropic sdk#968

Merged
brendan-kellam merged 4 commits intomainfrom
claude/issue-966-20260228-0747
Mar 1, 2026
Merged

chore(web): Added option to specify bearer tokens for the anthropic sdk#968
brendan-kellam merged 4 commits intomainfrom
claude/issue-966-20260228-0747

Conversation

@brendan-kellam
Copy link
Contributor

@brendan-kellam brendan-kellam commented Feb 28, 2026

Adds the authToken option to the anthropic language model config for specifying bearer tokens.

Fixes #966

Generated with Claude Code

Summary by CodeRabbit

  • New Features

    • Introduced optional bearer token authentication support for the Anthropic provider, configurable via environment variables or Google Cloud Secrets in addition to existing API key authentication.
  • Documentation

    • Updated Anthropic provider configuration documentation to clarify authentication methods and header usage, including the new bearer token authentication support and x-api-key header specification for API keys.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Feb 28, 2026

Walkthrough

Adds support for using bearer tokens with the Anthropic provider via a new optional authToken configuration field. The implementation includes environment variable support (ANTHROPIC_AUTH_TOKEN), schema and type definitions, documentation updates, and integration with the chat actions module to resolve and pass the auth token when communicating with the Anthropic API.

Changes

Cohort / File(s) Summary
Documentation & Changelog
CHANGELOG.md, docs/docs/configuration/language-model-providers.mdx
Added documentation and changelog entry noting support for bearer tokens with Anthropic provider via new authToken configuration block.
Schema Definitions
docs/snippets/schemas/v3/index.schema.mdx, docs/snippets/schemas/v3/languageModel.schema.mdx, packages/schemas/src/v3/index.schema.ts, packages/schemas/src/v3/languageModel.schema.ts, schemas/v3/languageModel.json
Added authToken property to AnthropicLanguageModel schema supporting env-based or Google Cloud Secret sources; updated token field description to clarify x-api-key header usage. Changes appear duplicated across multiple schema file locations.
Type Definitions
packages/schemas/src/v3/index.type.ts, packages/schemas/src/v3/languageModel.type.ts
Added authToken optional property to AnthropicLanguageModel interface with union type for env or googleCloudSecret; updated token property documentation for x-api-key header usage.
Environment & Runtime
packages/shared/src/env.server.ts, packages/web/src/features/chat/actions.ts
Added ANTHROPIC_AUTH_TOKEN optional environment variable to server schema; integrated authToken retrieval and application in Anthropic provider configuration within chat actions.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

Suggested labels

sourcebot-team

Suggested reviewers

  • Ferexx
  • msukkari
🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Title check ⚠️ Warning PR title indicates a dependency upgrade to @ai-sdk/anthropic but does not mention the primary functional change: adding ANTHROPIC_AUTH_TOKEN Bearer token support. Update title to reflect the main objective: 'feat(web): add ANTHROPIC_AUTH_TOKEN Bearer token support via @ai-sdk/anthropic@3.0.22' or similar.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Linked Issues check ✅ Passed Changes successfully implement support for ANTHROPIC_AUTH_TOKEN environment variable across config schemas, type definitions, and runtime code to enable Bearer token authentication as required by issue #966.
Out of Scope Changes check ✅ Passed All changes are directly scoped to adding ANTHROPIC_AUTH_TOKEN support and updating API key documentation to clarify x-api-key header usage; no unrelated changes detected.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
  • 📝 Generate docstrings (stacked PR)
  • 📝 Generate docstrings (commit on current branch)
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch claude/issue-966-20260228-0747

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@CHANGELOG.md`:
- Line 11: The changelog entry for the upgrade of `@ai-sdk/anthropic` to
`^3.0.22` incorrectly links to PR `#967`; update that entry so the trailing PR
reference is `[`#968`](https://github.com/sourcebot-dev/sourcebot/pull/968)`
instead of `#967` so the release note points to the correct pull request.

In `@packages/web/package.json`:
- Line 18: The package manifest added/updated the dependency
"@ai-sdk/anthropic": "^3.0.22" but the lockfile still pins v2.0.57; regenerate
the lockfile by running your package manager to install the new version (e.g.,
run `yarn install`) so yarn.lock is updated to reflect
"@ai-sdk/anthropic"@^3.0.22 and commit the updated yarn.lock alongside the
package.json change.

ℹ️ Review info

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 7ea12a0 and 5eb4053.

📒 Files selected for processing (2)
  • CHANGELOG.md
  • packages/web/package.json

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
packages/web/src/features/chat/actions.ts (1)

761-773: ⚠️ Potential issue | 🔴 Critical

Remove unsupported authToken parameter—not available in @ai-sdk/anthropic.

The authToken option is not supported by @ai-sdk/anthropic@^3.0.22. Authentication with this provider is handled exclusively via apiKey (sent as the x-api-key header) or custom headers. The authToken parameter exists only in the official @anthropic-ai/sdk package, not the AI SDK provider wrapper.

Either remove the authToken configuration or switch to using @anthropic-ai/sdk directly if that feature is required.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@packages/web/src/features/chat/actions.ts` around lines 761 - 773, The code
passes an unsupported authToken option to createAnthropic; remove the authToken
branch in the createAnthropic call (references: createAnthropic,
config.authToken, getTokenFromConfig) and rely on apiKey and/or headers for
authentication (use await getTokenFromConfig(config.token) for apiKey or include
any custom auth value in config.headers via extractLanguageModelKeyValuePairs);
if authToken behavior is required, replace createAnthropic with the official
`@anthropic-ai/sdk` usage instead of the `@ai-sdk/anthropic` wrapper.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Outside diff comments:
In `@packages/web/src/features/chat/actions.ts`:
- Around line 761-773: The code passes an unsupported authToken option to
createAnthropic; remove the authToken branch in the createAnthropic call
(references: createAnthropic, config.authToken, getTokenFromConfig) and rely on
apiKey and/or headers for authentication (use await
getTokenFromConfig(config.token) for apiKey or include any custom auth value in
config.headers via extractLanguageModelKeyValuePairs); if authToken behavior is
required, replace createAnthropic with the official `@anthropic-ai/sdk` usage
instead of the `@ai-sdk/anthropic` wrapper.

ℹ️ Review info

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 3f605ed and 0529f5a.

⛔ Files ignored due to path filters (1)
  • yarn.lock is excluded by !**/yarn.lock, !**/*.lock
📒 Files selected for processing (10)
  • docs/docs/configuration/language-model-providers.mdx
  • docs/snippets/schemas/v3/index.schema.mdx
  • docs/snippets/schemas/v3/languageModel.schema.mdx
  • packages/schemas/src/v3/index.schema.ts
  • packages/schemas/src/v3/index.type.ts
  • packages/schemas/src/v3/languageModel.schema.ts
  • packages/schemas/src/v3/languageModel.type.ts
  • packages/shared/src/env.server.ts
  • packages/web/src/features/chat/actions.ts
  • schemas/v3/languageModel.json

github-actions bot and others added 3 commits February 28, 2026 16:34
Co-authored-by: Brendan Kellam <brendan-kellam@users.noreply.github.com>
Co-authored-by: Brendan Kellam <brendan-kellam@users.noreply.github.com>
@brendan-kellam brendan-kellam force-pushed the claude/issue-966-20260228-0747 branch from 0529f5a to 4f1de65 Compare March 1, 2026 00:35
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

♻️ Duplicate comments (1)
CHANGELOG.md (1)

12-12: ⚠️ Potential issue | 🟡 Minor

Fix incorrect PR reference in changelog entry.

Line 12 links to #967, but this change is in PR #968, so the release note currently points to the wrong PR.

Suggested fix
-- Added support for using bearer tokens with anthropic. [`#967`](https://github.com/sourcebot-dev/sourcebot/pull/967)
+- Added support for using bearer tokens with anthropic. [`#968`](https://github.com/sourcebot-dev/sourcebot/pull/968)

As per coding guidelines, entries must include the GitHub pull request id at the end of the line, formatted as [#<id>](<url>).

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@CHANGELOG.md` at line 12, Update the changelog entry string "Added support
for using bearer tokens with anthropic.
[`#967`](https://github.com/sourcebot-dev/sourcebot/pull/967)" to reference the
correct pull request id and URL for PR `#968` so the GitHub link at the end of
that line is "[`#968`](https://github.com/sourcebot-dev/sourcebot/pull/968)"; edit
the same line content to replace `#967` and its URL with `#968` and the
corresponding URL.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@docs/docs/configuration/language-model-providers.mdx`:
- Around line 92-99: Fix the grammar in the Anthropic auth comments: change "a
API key" to "an API key" in the comment near the "token" property and change "a
auth token" to "an auth token" in the comment near the "authToken" property so
the comments read "Auth can be provided via an API key..." and "...or via an
auth token sent using the `Authorization: Bearer` header." Reference the "token"
and "authToken" keys when making the edits.

---

Duplicate comments:
In `@CHANGELOG.md`:
- Line 12: Update the changelog entry string "Added support for using bearer
tokens with anthropic.
[`#967`](https://github.com/sourcebot-dev/sourcebot/pull/967)" to reference the
correct pull request id and URL for PR `#968` so the GitHub link at the end of
that line is "[`#968`](https://github.com/sourcebot-dev/sourcebot/pull/968)"; edit
the same line content to replace `#967` and its URL with `#968` and the
corresponding URL.

ℹ️ Review info

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 0529f5a and fa2bcc1.

📒 Files selected for processing (11)
  • CHANGELOG.md
  • docs/docs/configuration/language-model-providers.mdx
  • docs/snippets/schemas/v3/index.schema.mdx
  • docs/snippets/schemas/v3/languageModel.schema.mdx
  • packages/schemas/src/v3/index.schema.ts
  • packages/schemas/src/v3/index.type.ts
  • packages/schemas/src/v3/languageModel.schema.ts
  • packages/schemas/src/v3/languageModel.type.ts
  • packages/shared/src/env.server.ts
  • packages/web/src/features/chat/actions.ts
  • schemas/v3/languageModel.json
🚧 Files skipped from review as they are similar to previous changes (4)
  • packages/web/src/features/chat/actions.ts
  • docs/snippets/schemas/v3/languageModel.schema.mdx
  • packages/schemas/src/v3/index.type.ts
  • packages/schemas/src/v3/index.schema.ts

@brendan-kellam brendan-kellam merged commit a2f80a2 into main Mar 1, 2026
11 checks passed
@brendan-kellam brendan-kellam deleted the claude/issue-966-20260228-0747 branch March 1, 2026 00:48
@brendan-kellam brendan-kellam changed the title chore(web): upgrade @ai-sdk/anthropic to ^3.0.22 chore(web): Added option to specify bearer tokens for the anthropic sdk Mar 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FR] Support ANTHROPIC_AUTH_TOKEN in Anthropic provider config

1 participant