Code generation agents write, execute, observe errors, and self-correct iteratively until tests pass.
Agentic Code Generation
# Agent that writes, tests, and fixes code iteratively
import anthropic, subprocess
client = anthropic.Anthropic()
def code_agent(requirement: str) -> dict:
"""Generate, test, and iteratively fix code."""
messages = [{"role":"user","content":requirement}]
iterations = []
for attempt in range(5):
# Generate code
resp = client.messages.create(
model="claude-opus-4-5", max_tokens=2000,
system="Write Python code. Include tests. Return ONLY code, no explanation.",
messages=messages
)
code = resp.content[0].text
# Test the code
test_result = subprocess.run(
["python3","-c",code],
capture_output=True, text=True, timeout=15
)
iterations.append({"attempt":attempt,"code":code,"result":test_result.returncode})
if test_result.returncode == 0:
return {"success":True,"code":code,"attempts":attempt+1}
# Feed error back for self-correction
messages.append({"role":"assistant","content":code})
messages.append({"role":"user","content":f"Error:
{test_result.stderr}
Fix the code:"})
return {"success":False,"iterations":iterations}