From 0a143e8fff66b0bd95a97a8da9322a51475adb92 Mon Sep 17 00:00:00 2001 From: AI Christianson Date: Sat, 8 Mar 2025 17:08:10 -0500 Subject: [PATCH] improve prompts --- ra_aid/prompts/reasoning_assist_prompt.py | 24 +++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/ra_aid/prompts/reasoning_assist_prompt.py b/ra_aid/prompts/reasoning_assist_prompt.py index ee5cfd6..d93e6e9 100644 --- a/ra_aid/prompts/reasoning_assist_prompt.py +++ b/ra_aid/prompts/reasoning_assist_prompt.py @@ -31,13 +31,21 @@ Working Directory: {working_directory} {tool_metadata} -Given the available information, tools, and base task, write a couple paragraphs about how an agentic system might use the available tools to plan the base task, break it down into tasks, and request implementation of those tasks. The agent will not be writing any code at this point, so we should keep it to high level tasks and keep the focus on project planning. - DO NOT EXPAND SCOPE BEYOND USERS ORIGINAL REQUEST. E.G. DO NOT SET UP VERSION CONTROL UNLESS THEY SPECIFIED TO. BUT IF WE ARE SETTING UP A NEW PROJECT WE PROBABLY DO WANT TO SET UP A MAKEFILE OR CMAKELISTS, ETC, APPROPRIATE TO THE LANGUAGE/FRAMEWORK BEING USED. +THE AGENT OFTEN NEEDS TO BE REMINDED OF BUILD/TEST COMMANDS IT SHOULD USE. +IF A NEW BUILD OR TEST COMMAND IS DISCOVERED THAT SHOULD BE EMITTED AS A KEY FACT. +IF A BUILD OR TEST COMMAND IS IN A KEY FACT, THAT SHOULD BE USED. +IF IT IS A NEW PROJECT WE SHOULD HINT WHETHER THE AGENT SHOULD SET UP A NEW BUILD SYSTEM, AND WHAT KIND. + +IF THERE IS COMPLEX LOGIC, THE AGENT SHOULD USE ask_expert. REMEMBER, IT IS *IMPERATIVE* TO RECORD KEY INFO SUCH AS BUILD/TEST COMMANDS, ETC. AS KEY FACTS. WE DO NOT WANT TO EMIT REDUNDANT KEY FACTS, SNIPPETS, ETC. WE DO NOT WANT TO EXCESSIVELY EMIT TINY KEY SNIPPETS --THEY SHOULD BE "paragraphs" OF CODE TYPICALLY. + +Given the available information, tools, and base task, write a couple paragraphs about how an agentic system might use the available tools to plan the base task, break it down into tasks, and request implementation of those tasks. The agent will not be writing any code at this point, so we should keep it to high level tasks and keep the focus on project planning. + +Answer quickly and confidently with five sentences at most. """ REASONING_ASSIST_PROMPT_IMPLEMENTATION = """Current Date: {current_date} @@ -71,11 +79,15 @@ Working Directory: {working_directory} {task} -Given the available information, tools, and base task, write a couple paragraphs about how an agentic system might use the available tools to implement the given task definition. The agent will be writing code and making changes at this point. - -Answer quickly and confidently with just a few sentences at most. - +THE AGENT OFTEN NEEDS TO BE REMINDED OF BUILD/TEST COMMANDS IT SHOULD USE. +IF A NEW BUILD OR TEST COMMAND IS DISCOVERED THAT SHOULD BE EMITTED AS A KEY FACT. +IF A BUILD OR TEST COMMAND IS IN A KEY FACT, THAT SHOULD BE USED. REMEMBER, IT IS *IMPERATIVE* TO RECORD KEY INFO SUCH AS BUILD/TEST COMMANDS, ETC. AS KEY FACTS. WE DO NOT WANT TO EMIT REDUNDANT KEY FACTS, SNIPPETS, ETC. WE DO NOT WANT TO EXCESSIVELY EMIT TINY KEY SNIPPETS --THEY SHOULD BE "paragraphs" OF CODE TYPICALLY. +IF THERE IS COMPLEX LOGIC, COMPILATION ERRORS, DEBUGGING, THE AGENT SHOULD USE ask_expert. + +Given the available information, tools, and base task, write a couple paragraphs about how an agentic system might use the available tools to implement the given task definition. The agent will be writing code and making changes at this point. + +Answer quickly and confidently with a few sentences at most. """