diff --git a/claude_dspy/__init__.py b/claude_dspy/__init__.py index 212f164..7ab2bcd 100644 --- a/claude_dspy/__init__.py +++ b/claude_dspy/__init__.py @@ -1,5 +1,5 @@ -from claude_dspy.agent import ClaudeCode, ClaudeCodeConfig -from claude_dspy.trace import ( +from .agent import ClaudeCode, ClaudeCodeConfig +from .trace import ( TraceItem, AgentMessageItem, ThinkingItem, @@ -7,7 +7,7 @@ from claude_dspy.trace import ( ToolResultItem, ErrorItem, ) -from claude_dspy.utils import Usage +from .utils import Usage __version__ = "0.1.0" diff --git a/claude_dspy/agent.py b/claude_dspy/agent.py index 5695381..549d80f 100644 --- a/claude_dspy/agent.py +++ b/claude_dspy/agent.py @@ -22,7 +22,7 @@ from claude_agent_sdk import ( ToolResultBlock, ) -from claude_dspy.trace import ( +from .trace import ( TraceItem, AgentMessageItem, ThinkingItem, @@ -30,7 +30,7 @@ from claude_dspy.trace import ( ToolResultItem, ErrorItem, ) -from claude_dspy.utils import ( +from .utils import ( Usage, is_pydantic_model, get_json_schema, @@ -41,8 +41,10 @@ from claude_dspy.utils import ( class ClaudeCodeConfig(PrecompiledConfig): """Configuration for ClaudeCode agent.""" + model: str = "claude-opus-4-5-20251101" + class ClaudeCodeKwargs(BaseModel): model_config = {"arbitrary_types_allowed": True} @@ -55,6 +57,7 @@ class ClaudeCodeKwargs(BaseModel): sandbox: dict[str, Any] | None = None system_prompt: str | dict[str, Any] | None = None + class ClaudeCode(PrecompiledProgram): """DSPy module that wraps Claude Code SDK. @@ -84,7 +87,7 @@ class ClaudeCode(PrecompiledProgram): super().__init__(config=config) args = ClaudeCodeKwargs(**kwargs) - + signature = args.signature api_key = args.api_key working_directory = args.working_directory