From c6bb463837ec8c41261604e416aeab023663ba09 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Thu, 29 Jan 2026 20:23:41 +0200 Subject: feat: add native Anthropic API provider support - Implement new anthropicClient with full Client interface - Add Streamer interface for token-by-token streaming via SSE - Add Anthropic Messages API v1 integration with proper headers - Support claude-3-5-sonnet-20241022 as default model - Add configuration via [anthropic] TOML section - Add environment variable overrides (HEXAI_ANTHROPIC_*) - Support both HEXAI_ANTHROPIC_API_KEY and ANTHROPIC_API_KEY fallback - Integrate Anthropic key handling in LSP, CLI, and llmutils - Update provider factory to support 'anthropic' provider name - Add 11 comprehensive unit tests for Anthropic client - Update config.toml.example with [anthropic] section - Update NewFromConfig() signature to accept anthropicAPIKey parameter - All 51 internal LLM tests pass (11 new Anthropic tests + 40 existing) Anthropic models can be accessed via: [anthropic] model = "claude-3-5-sonnet-20241022" base_url = "https://api.anthropic.com/v1" temperature = 0.2 or environment: export HEXAI_PROVIDER="anthropic" export HEXAI_ANTHROPIC_API_KEY="your-key" Amp-Thread-ID: https://ampcode.com/threads/T-019c0af1-f215-72cf-9940-b014b1a9576b Co-authored-by: Amp --- config.toml.example | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'config.toml.example') diff --git a/config.toml.example b/config.toml.example index 84f716e..473e48c 100644 --- a/config.toml.example +++ b/config.toml.example @@ -60,7 +60,7 @@ chat_prefixes = ["?", "!", ":", ";"] # single-character items # temperature = 0.6 [provider] -name = "openai" # openai | openrouter | copilot | ollama +name = "openai" # openai | openrouter | copilot | ollama | anthropic [openai] model = "gpt-4.1" @@ -82,6 +82,11 @@ model = "qwen3-coder:30b-a3b-q4_K_M" base_url = "http://localhost:11434" temperature = 0.2 +[anthropic] +model = "claude-3-5-sonnet-20241022" +base_url = "https://api.anthropic.com/v1" +temperature = 0.2 + # Prompt templates (optional). Leave commented to use defaults. [prompts] -- cgit v1.2.3