docs(self-hosting): AI runs on AWS Bedrock, not ANTHROPIC/OPENAI keys (#1407)
* docs(self-hosting): AI runs on AWS Bedrock, not ANTHROPIC/OPENAI keys A self-hoster followed SELF-HOSTING.md, set ANTHROPIC_API_KEY and OPENAI_API_KEY, and found document interpretation dead (with a 30s extraction-poll hang per upload). Neither key has been read since the ai-chat / receipt-ocr / ai-categorization extensions were removed in PR #157: all AI (document extraction and the assistant) goes through Claude on AWS Bedrock via AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY. - SELF-HOSTING.md, DOCKER.md, .env.example: document the Bedrock credentials and model overrides; point plain-key support at #1406 - SELF-HOSTING.md: drop the receipts-bucket setup for the removed receipt-ocr extension - EXTENSIONS.md: replace removed extensions with live ones in trees and examples; drop the AI-consent system claims (lib/extensions/ ai-consent.ts no longer exists); services-pattern example now uses the real stripe/skatteverket services - lib/init.ts: startup env warning now checks the AWS keys instead of the two dead vars, so a misconfigured self-host logs the truth Direct Anthropic API key support and pluggable providers: #1406. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * docs: address review, dedupe tree entry and match provider-chain claim to code extractInvoiceFields bails without both static AWS keys, so only the assistant client actually falls back to the credential provider chain. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Jakob Wennberg <311770904+jakobwennberg-oss@users.noreply.github.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
Jakob Wennberg
parent
86c6af6976
commit
af9db54405
+8
-2
@@ -26,11 +26,17 @@ const REQUIRED_CORE_VARS = [
|
||||
// fallback in extensions/general/enable-banking/lib/jwt.ts (_PRODUCTION ||
|
||||
// base) so Vercel prod (which only sets the _PRODUCTION variants) doesn't
|
||||
// warn on every cold start.
|
||||
// AI features run Claude via AWS Bedrock (see lib/agent/composer/client.ts and
|
||||
// extensions/general/invoice-inbox/lib/extract-invoice-fields.ts), so the
|
||||
// static AWS keys are what actually gates them. The assistant's client can
|
||||
// fall back to the AWS credential provider chain (instance profile, IRSA),
|
||||
// but document extraction requires both static keys, so this log-only warning
|
||||
// stays useful even on AWS infrastructure.
|
||||
const REQUIRED_EXTENSION_VARS: ReadonlyArray<readonly string[]> = [
|
||||
['ENABLE_BANKING_APP_ID_PRODUCTION', 'ENABLE_BANKING_APP_ID'],
|
||||
['ENABLE_BANKING_PRIVATE_KEY_PRODUCTION', 'ENABLE_BANKING_PRIVATE_KEY'],
|
||||
['ANTHROPIC_API_KEY'],
|
||||
['OPENAI_API_KEY'],
|
||||
['AWS_ACCESS_KEY_ID'],
|
||||
['AWS_SECRET_ACCESS_KEY'],
|
||||
] as const
|
||||
|
||||
function validateEnvironment(): void {
|
||||
|
||||
Reference in New Issue
Block a user