BYOK 설정

Bring Your Own Key — 자기 API key 를 직접 등록 하면 SoulClaw 가 그 제공자 의 API 를 호출. 사용량 비용 = 제공자 가 직접 청구.

⚠️ 비로그인 모드 — 키 가 localStorage 에 저장 됩니다 (브라우저 내). XSS 공격 시 노출 risk. 로그인 하면 서버 측 암호화 저장 활성화.

Prompt Caching (Anthropic) — C14

Anthropic ephemeral cache. Off = backward compatible. Runtime wiring lands in alpha.5+; UI ready now.

Anthropic

Claude 3.5 Haiku / Sonnet / Opus
💰 Haiku $0.80 / 1M input tokens
disabled
(empty)

OpenAI

GPT-4o / 4o-mini / GPT-4 Turbo
💰 gpt-4o-mini $0.15 / 1M input tokens
disabled
(empty)

OpenRouter

Multi-provider proxy (Anthropic / OpenAI / Gemini / 등)
💰 Pass-through 가격 + small markup
? capabilities (wasm-bindgen pending)
disabled
(empty)

Google Gemini

Gemini 2.5 Flash / Pro
💰 Flash $0.10 / 1M input tokens
? capabilities (wasm-bindgen pending)
disabled
(empty)

Ollama (local)

로컬 Ollama 서버 (zero API cost)
💰 $0 — 로컬 GPU/CPU 자원 사용
? capabilities (wasm-bindgen pending)
disabled
(empty)
왜 BYOK 인가?

비용 transparency: 사용자 가 직접 제공자 와 결제 → 우리 가 마진 안 더함. SoulClaw = 페르소나 / 메모리 / 도구 layer 만, LLM 비용 = 사용자 제공자 직접.

Privacy: 사용자 데이터 가 우리 서버 안 통과 안 함 — 브라우저 → 제공자 직접 fetch (비로그인 모드). 로그인 모드 에서는 서버 가 사용자 키 로 LLM 호출 후 응답 만 전달 (proxy).

Provider 선택: 사용자 가 좋아하는 모델 자유. 4 제공자 모두 등록 → ProviderChain failover 자동.

Phase 2 (account): 로그인 시 키 가 Postgres pgp_sym_encrypt 으로 저장. 서버 가 BYOK_ENCRYPTION_KEY 로 복호화 해서 LLM 호출. plaintext 키 가 client 에 영구 보존 안 됨.

Local LLM (v1.1): WebLLM / Transformers.js 통합 시 zero-API-key offline mode 가능.