feat: Add Claude Code/Agent SDK as LLM provider #1700
+1,457
−4
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Adds Claude Code/Agent SDK as an optional LLM provider via custom LiteLLM handler, enabling users with Claude Code subscriptions to leverage their existing CLI authentication for extraction tasks instead of needing separate API keys.
Changes
Core Implementation
crawl4ai/providers/claude_code_provider.py- ClaudeCodeProvider wrapping Claude Agent SDKcrawl4ai/providers/__init__.py- Provider registration with LiteLLMclaude-codetoPROVIDER_MODELS_PREFIXESinconfig.py__init__.pyclaude-codeoptional extra topyproject.tomlDocumentation
docs/md_v2/extraction/claude-code-provider.md- Comprehensive documentationCode Quality
ClaudeCodeSDKError,ClaudeCodeAuthenticationError,ClaudeCodeConnectionErrorverbose=TrueTests & Examples
tests/unit/test_claude_code_provider.pytests/integration/test_claude_code_integration.pyexamples/claude_code_extraction.py,examples/claude_code_error_handling.pyUsage
Supported Models
claude-code/claude-sonnet-4-20250514claude-code/claude-opus-4-20250514claude-code/claude-haiku-3-5-latestInstallation
Requires Claude Code CLI to be installed and authenticated (
claudecommand available).Test Plan
🤖 Generated with Claude Code