ishaAtif/python-code-reviewer
0
1import os2import json3from dotenv import load_dotenv4import anthropic5from prompts import SYSTEM_PROMPT, REVIEW_PROMPT6 7load_dotenv()8 9client = anthropic.Anthropic(api_key=os.getenv("ANTHROPIC_API_KEY"))10 11def review_code(code: str) -> dict:12 prompt = REVIEW_PROMPT.format(code=code)13 14 message = client.messages.create(15 model="claude-haiku-4-5-20251001",16 max_tokens=2000,17 system=SYSTEM_PROMPT,18 messages=[19 {"role": "user", "content": prompt}20 ]21 )22 23 raw_text = message.content[0].text24 25 if "```" in raw_text:26 parts = raw_text.split("```")27 for part in parts:28 part = part.strip()29 if part.startswith("json"):30 part = part[4:].strip()31 try:32 return json.loads(part)33 except json.JSONDecodeError:34 continue35 36 return json.loads(raw_text.strip())