aics / agent /graph.py
akborana4's picture
Create agent/graph.py
5eea89f verified
raw
history blame contribute delete
772 Bytes
import os, json
from agent.planner import planner
from agent.coder import coder
from agent.critic import critic
from agent.fixer import fixer
from agent.state import AgentState
def run_agent(prompt, ws):
state = AgentState()
max_steps = int(os.getenv("MAX_AGENT_STEPS", 5))
while state.iteration < max_steps:
plan = planner(prompt)
coder(plan, ws)
issues = critic(prompt)
if not issues:
break
fixer(issues, ws)
state.iteration += 1
snapshot = {}
for root, _, files in os.walk(ws):
for f in files:
p = os.path.join(root, f)
snapshot[p.replace(ws, "")] = open(p).read()
with open("workspace_snapshot.json", "w") as out:
json.dump(snapshot, out)