ccproxy.models¶
ccproxy.models
¶
Pydantic models for Claude Proxy API Server.
AssistantMessage
¶
Bases: BaseModel
Assistant message from Claude SDK.
convert_content_blocks
classmethod
¶
Convert Claude SDK dataclass blocks to Pydantic models.
Source code in ccproxy/models/claude_sdk.py
ResultMessage
¶
ResultMessageBlock
¶
SDKMessageMode
¶
ToolResultBlock
¶
ToolUseBlock
¶
UserMessage
¶
Bases: BaseModel
User message from Claude SDK.
convert_content_blocks
classmethod
¶
Convert Claude SDK dataclass blocks to Pydantic models.
Source code in ccproxy/models/claude_sdk.py
MessageCreateParams
¶
Bases: BaseModel
Request parameters for creating messages via Anthropic Messages API.
validate_model
classmethod
¶
Validate that the model is a supported Claude model.
Source code in ccproxy/models/messages.py
validate_messages
classmethod
¶
Validate message alternation and content.
Source code in ccproxy/models/messages.py
validate_stop_sequences
classmethod
¶
Validate stop sequences.
Source code in ccproxy/models/messages.py
ChatCompletionResponse
¶
StreamingChatCompletionResponse
¶
convert_sdk_result_message
¶
convert_sdk_result_message(
session_id,
subtype="",
duration_ms=0,
duration_api_ms=0,
is_error=False,
num_turns=0,
usage=None,
total_cost_usd=None,
result=None,
)
Convert raw result message data to ResultMessage model.
Source code in ccproxy/models/claude_sdk.py
convert_sdk_system_message
¶
Convert raw system message data to SystemMessage model.
convert_sdk_text_block
¶
convert_sdk_tool_result_block
¶
Convert raw tool result data to ToolResultBlock model.
Source code in ccproxy/models/claude_sdk.py
convert_sdk_tool_use_block
¶
Convert raw tool use data to ToolUseBlock model.
to_sdk_variant
¶
Convert a base model to its SDK variant using model_validate().
Parameters:
Name | Type | Description | Default |
---|---|---|---|
base_model
|
BaseModel
|
The base model instance to convert |
required |
sdk_class
|
type[T]
|
The target SDK class to convert to |
required |
Returns:
Type | Description |
---|---|
T
|
Instance of the SDK class with data from the base model |
Example
text_block = TextBlock(text="message") text_block_sdk = to_sdk_variant(text_block, TextBlockSDK)