Skip to content

feat(inference): add anthropic-aws (Claude Platform on AWS) backend#18

Merged
stxkxs merged 1 commit into
mainfrom
feat/anthropic-aws-inference
May 30, 2026
Merged

feat(inference): add anthropic-aws (Claude Platform on AWS) backend#18
stxkxs merged 1 commit into
mainfrom
feat/anthropic-aws-inference

Conversation

@stxkxs

@stxkxs stxkxs commented May 29, 2026

Copy link
Copy Markdown
Member

What

A third FAB_INFERENCE backend — anthropic-aws — alongside api and bedrock. Claude Platform on AWS (GA 2026-05-11) is Anthropic's first-party Claude API reached through the adopter's AWS account (IAM/SigV4 auth, AWS Marketplace billing), with the same canonical model ids as the api path. This is the clean, high-value seam surfaced by the stxkxs/claudium assessment: in-account first-party Claude, delivered through fab's existing orthogonal inference axis.

Changes

  • src/inference.ts — extends the InferenceBackend union + resolver set + error string. inferenceEnv('anthropic-aws') returns CLAUDE_CODE_USE_ANTHROPIC_AWS=1 + the required ANTHROPIC_AWS_WORKSPACE_ID, and fails fast if it's missing or if CLAUDE_CODE_USE_BEDROCK/_FOUNDRY is set (those take precedence in Claude Code routing — silently inferring against the wrong backend is prevented). resolveModelId unchanged (non-bedrock backends already pass canonical ids through).
  • src/runtimes/sdk-k8s.ts — forwards ANTHROPIC_AWS_WORKSPACE_ID onto the session pod.
  • docs/transports.md — backend row + example + compliance caveat (runs on Anthropic infra outside the AWS boundary → not FedRAMP/IL/HIPAA-ready, opt-in per intake; Bedrock stays the regulated path).

Read only by the in-process sdk runtime; managed-agents/claude-cli unaffected.

Verification

npm run lint (tsc + eslint), npm test (267 pass, +6 new), npm run build, npm run format:check — all green.

Adds a third FAB_INFERENCE backend, anthropic-aws, alongside api and
bedrock. Claude Platform on AWS (GA 2026-05-11) is Anthropic's first-party
Claude API reached through the adopter's AWS account — IAM/SigV4 auth, AWS
Marketplace billing — with the same canonical model ids as the api path.

- src/inference.ts — extends the InferenceBackend union + the resolver set +
  the error string. inferenceEnv('anthropic-aws') returns
  CLAUDE_CODE_USE_ANTHROPIC_AWS=1 + the required ANTHROPIC_AWS_WORKSPACE_ID
  (read from the env), and fails fast if it's missing or if
  CLAUDE_CODE_USE_BEDROCK / _FOUNDRY is set (those take precedence in Claude
  Code's provider routing, so silently inferring against the wrong backend is
  prevented). resolveModelId is unchanged — non-bedrock backends already pass
  canonical ids through.
- src/runtimes/sdk-k8s.ts — forwards ANTHROPIC_AWS_WORKSPACE_ID onto the
  session pod so the isolated sdk-k8s loop inherits it.
- docs/transports.md — backend row + example + the opt-in/compliance caveat:
  inference runs on Anthropic infra outside the AWS security boundary, so it
  is not FedRAMP/IL/HIPAA-ready and stays opt-in per intake; Bedrock remains
  the regulated path.

Read only by the in-process sdk runtime, so managed-agents / claude-cli are
unaffected. Verified: typecheck, vitest (267), build, prettier all green.
@stxkxs stxkxs force-pushed the feat/anthropic-aws-inference branch from 0be780c to 640228a Compare May 30, 2026 04:03
@stxkxs stxkxs merged commit c2cf6f4 into main May 30, 2026
2 checks passed
@stxkxs stxkxs deleted the feat/anthropic-aws-inference branch May 30, 2026 04:04
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.

1 participant