diff --git a/refact-agent/engine/src/tools/tool_strategic_planning.rs b/refact-agent/engine/src/tools/tool_strategic_planning.rs index 03fb2b362..5a1668bb5 100644 --- a/refact-agent/engine/src/tools/tool_strategic_planning.rs +++ b/refact-agent/engine/src/tools/tool_strategic_planning.rs @@ -268,11 +268,11 @@ impl Tool for ToolStrategicPlanning { usage: Some(usage_collector), ..Default::default() })); - results.push(ContextEnum::ChatMessage(ChatMessage { - role: "cd_instruction".to_string(), - content: ChatContent::SimpleText(GUARDRAILS_PROMPT.to_string()), - ..Default::default() - })); + // results.push(ContextEnum::ChatMessage(ChatMessage { + // role: "cd_instruction".to_string(), + // content: ChatContent::SimpleText(GUARDRAILS_PROMPT.to_string()), + // ..Default::default() + // })); Ok((false, results)) } diff --git a/refact-agent/engine/src/tools/tools_list.rs b/refact-agent/engine/src/tools/tools_list.rs index 185db2bdf..fa9956505 100644 --- a/refact-agent/engine/src/tools/tools_list.rs +++ b/refact-agent/engine/src/tools/tools_list.rs @@ -240,7 +240,8 @@ pub async fn get_available_tools_by_chat_mode( tools.filter(|tool| !tool.tool_description().agentic).collect() }, ChatMode::AGENT => { - let blacklist = ["search_symbol_definition", "search_symbol_usages", "search_pattern", "search_semantic"]; + // let blacklist = ["search_symbol_definition", "search_symbol_usages", "search_pattern", "search_semantic"]; + let blacklist = ["web", "locate", "knowledge", "create_knowledge", "create_memory_bank"]; tools.filter(|tool| !blacklist.contains(&tool.tool_description().name.as_str())).collect() } ChatMode::CONFIGURE => { diff --git a/refact-agent/engine/src/yaml_configs/customization_compiled_in.yaml b/refact-agent/engine/src/yaml_configs/customization_compiled_in.yaml index a2937cc8b..b70c41052 100644 --- a/refact-agent/engine/src/yaml_configs/customization_compiled_in.yaml +++ b/refact-agent/engine/src/yaml_configs/customization_compiled_in.yaml @@ -77,17 +77,25 @@ PROMPT_AGENTIC_TOOLS: | [mode3] You are a fully autonomous agent for coding tasks. Your task is to identify and solve the problem by directly changing files in the given project. You must follow the strategy, step by step in the given order without skipping. - You must confirm the plan with the user before proceeding! - + 1. Explore the Problem - %AGENT_EXPLORATION_INSTRUCTIONS% - 2. Draft the Solution Plan - - Identify the root cause and sketch the required code changes (files to touch, functions to edit, tests to add). - %AGENT_EXECUTION_INSTRUCTIONS% - - **BEST PRACTICES** - - %CD_INSTRUCTIONS% - - %SHELL_INSTRUCTIONS% + - Use `cat()` to open files. Use `search_symbol_definition()`, `search_symbol_usages()` if you know names of symbols. + - Use `search_pattern()` for search by pattern, `search_semantic()` for a semantic search. + 2. Draft the Solution Plan and Implement it + - Identify the root cause and sketch the required code changes (files to touch, functions to edit, tests to add). + - Post a concise, bullet-point summary that includes + • the suspected root cause + • the exact files/functions you will modify or create + • the new or updated tests you will add + • the expected outcome and success criteria + - Update projects files directly without creating patches and diffs. + 3. Implement the Fix + - Apply changes directly to project files using `update_textdoc()` and `create_textdoc()` tools. + 4. Validate and Improve + - Run all available tooling to ensure the project compiles and your fix works. + - Add or update tests that reproduce the original bug and verify they pass. + - Execute the full test suite to guard against regressions. + - Iterate until everything is green. %WORKSPACE_INFO%