Files
gpt-pilot/pilot/helpers/agents/CodeMonkey.py
Nicholas Albion 623908d093 fixed tests
2023-09-23 17:08:22 +10:00

35 lines
1.4 KiB
Python

from const.function_calls import GET_FILES, DEV_STEPS, IMPLEMENT_CHANGES, CODE_CHANGES
from helpers.AgentConvo import AgentConvo
from helpers.Agent import Agent
class CodeMonkey(Agent):
def __init__(self, project, developer):
super().__init__('code_monkey', project)
self.developer = developer
def implement_code_changes(self, convo, code_changes_description, step_index=0):
if convo == None:
convo = AgentConvo(self)
# files_needed = convo.send_message('development/task/request_files_for_code_changes.prompt', {
# "step_description": code_changes_description,
# "directory_tree": self.project.get_directory_tree(True),
# "step_index": step_index,
# "finished_steps": ', '.join(f"#{j}" for j in range(step_index))
# }, GET_FILES)
changes = convo.send_message('development/implement_changes.prompt', {
"step_description": code_changes_description,
"step_index": step_index,
"directory_tree": self.project.get_directory_tree(True),
"files": [] # self.project.get_files(files_needed),
}, IMPLEMENT_CHANGES)
convo.remove_last_x_messages(1)
if self.project.skip_until_dev_step != str(self.project.checkpoints['last_development_step'].id):
for file_data in changes:
self.project.save_file(file_data)
return convo