@@ -25,12 +25,15 @@ Pseudocode:
2525messages = [{" role" : " user" , " content" : " Help me fix the ValueError in main.py" }]
2626while True :
2727 lm_output = query_lm(messages)
28- messages.append({" role" : .., lm_output) # remember what was executed
28+ print (" LM output" , output)
29+ messages.append({" role" : " assistant" , " content" : lm_output}) # remember what the LM said
2930 action = parse_action(lm_output) # separate the action from output
31+ print (" Action" , action)
3032 if action == " exit" :
3133 break
3234 output = execute_action(action)
33- messages.append({" role" : ... , output)
35+ print (" Output" , output)
36+ messages.append({" role" : " user" , " content" : output}) # send command output back
3437```
3538
3639??? info "What's up with the ` role ` field?"
@@ -369,7 +372,7 @@ from litellm import completion
369372
370373def query_lm (messages : list[dict[str , str ]]) -> str :
371374 response = completion(
372- model = " openai/gpt-5.1
375+ model = " openai/gpt-5.1" ,
373376 messages = messages
374377 )
375378 return response.choices[0 ].message.content
@@ -407,14 +410,18 @@ messages = [{
407410 " content" : " List the files in the current directory"
408411}]
409412
413+ messages = [{" role" : " user" , " content" : " Help me fix the ValueError in main.py" }]
410414while True :
411415 lm_output = query_lm(messages)
412- messages.append({" role" : .., lm_output) # remember what was executed
416+ print (" LM output" , output)
417+ messages.append({" role" : " assistant" , " content" : lm_output}) # remember what the LM said
413418 action = parse_action(lm_output) # separate the action from output
419+ print (" Action" , action)
414420 if action == " exit" :
415421 break
416422 output = execute_action(action)
417- messages.append({" role" : ... , output)
423+ print (" Output" , output)
424+ messages.append({" role" : " user" , " content" : output}) # send command output back
418425```
419426
420427## Let's make it more robust
0 commit comments