MCPcopy
hub / github.com/stitionai/devika / subsequent_execute

Method subsequent_execute

src/agents/agent.py:179–268  ·  view source on GitHub ↗

Subsequent flow of execution

(self, prompt: str, project_name: str)

Source from the content-addressed store, hash-verified

177 self.coder.save_code_to_project(code, project_name)
178
179 def subsequent_execute(self, prompt: str, project_name: str):
180 """
181 Subsequent flow of execution
182 """
183 new_message = self.project_manager.new_message()
184 new_message['message'] = prompt
185 new_message['from_devika'] = False
186 self.project_manager.add_message_from_user(project_name, new_message['message'])
187
188 os_system = platform.platform()
189
190 self.agent_state.set_agent_active(project_name, True)
191
192 conversation = self.project_manager.get_all_messages_formatted(project_name)
193 code_markdown = ReadCode(project_name).code_set_to_markdown()
194
195 response, action = self.action.execute(conversation, project_name)
196
197 self.project_manager.add_message_from_devika(project_name, response)
198
199 print("\naction :: ", action, '\n')
200
201 if action == "answer":
202 response = self.answer.execute(
203 conversation=conversation,
204 code_markdown=code_markdown,
205 project_name=project_name
206 )
207 self.project_manager.add_message_from_devika(project_name, response)
208
209 elif action == "run":
210 project_path = self.project_manager.get_project_path(project_name)
211 self.runner.execute(
212 conversation=conversation,
213 code_markdown=code_markdown,
214 os_system=os_system,
215 project_path=project_path,
216 project_name=project_name
217 )
218
219 elif action == "deploy":
220 deploy_metadata = Netlify().deploy(project_name)
221 deploy_url = deploy_metadata["deploy_url"]
222
223 response = {
224 "message": "Done! I deployed your project on Netlify.",
225 "deploy_url": deploy_url
226 }
227 response = json.dumps(response, indent=4)
228
229 self.project_manager.add_message_from_devika(project_name, response)
230
231 elif action == "feature":
232 code = self.feature.execute(
233 conversation=conversation,
234 code_markdown=code_markdown,
235 system_os=os_system,
236 project_name=project_name

Callers 1

handle_messageFunction · 0.95

Calls 15

ReadCodeClass · 0.90
NetlifyClass · 0.90
PDFClass · 0.90
new_messageMethod · 0.80
add_message_from_userMethod · 0.80
set_agent_activeMethod · 0.80
code_set_to_markdownMethod · 0.80
deployMethod · 0.80
markdown_to_pdfMethod · 0.80
set_agent_completedMethod · 0.80

Tested by

no test coverage detected