Back to prompt library
Claude Agent SDK Initialization and Tool Definition
Linked challenge: Agent for Robotaxi Safety Policy Analysis & Dynamic Procedure Generation
Prompt source
implementation30 lines6 sectionsNo variables1 code block
Using the Claude Agents SDK, initialize a `SafetyComplianceAgent`. This agent should have access to a 'computer use' tool to interact with simulated document databases and a 'simulator_api' tool to get incident details. Provide the Python code for agent initialization and definition of these tools. Assume you have `claude_api_key` configured.
```python
import anthropic
from anthropic.agents import Agent, tool
@tool
def computer_use(command: str) -> str:
"""Simulates executing a command on a computer, e.g., to read files or query databases."""
print(f"Executing computer command: {command}")
# In a real scenario, this would interact with a filesystem or a database.
if "read_policy" in command:
return "Safety Policy 3.1: Pedestrian Zones. Max speed 10MPH. Child Safety Guidelines 1.2: Be aware of school hours."
return "Command executed successfully (simulated)."
@tool
def simulator_api(query: str) -> str:
"""Queries a simulated robotaxi incident database."""
print(f"Querying simulator API: {query}")
if "incident_details" in query:
return "Incident ID 123: Voyager-7, struck child, 6MPH, 3:15 PM, near school, delayed braking."
return "Simulator data (simulated)."
def create_safety_agent():
client = anthropic.Anthropic(api_key="YOUR_CLAUDE_API_KEY")
agent = Agent(
client=client,
tools=[computer_use, simulator_api],
model="claude-3-5-opus-20240620",
system_prompt="You are an expert robotaxi safety compliance officer. Your task is to analyze incidents, interpret safety policies, and propose updated procedures."
)
return agent
# agent = create_safety_agent()
```