diff --git a/config.py b/config.py index eb59e72a4..701b80371 100644 --- a/config.py +++ b/config.py @@ -1,18 +1,20 @@ -from pathlib import Path import os +from pathlib import Path + from dotenv import load_dotenv load_dotenv() + class Config: - ANTHROPIC_API_KEY = os.getenv('ANTHROPIC_API_KEY') + ANTHROPIC_API_KEY = os.getenv("ANTHROPIC_API_KEY") MODEL = "claude-3-5-sonnet-20241022" MAX_TOKENS = 8000 MAX_CONVERSATION_TOKENS = 200000 # Maximum tokens per conversation # Paths BASE_DIR = Path(__file__).parent - TOOLS_DIR = BASE_DIR / "tools" + TOOLS_DIR = BASE_DIR / "no-tools" PROMPTS_DIR = BASE_DIR / "prompts" # Assistant Configuration diff --git a/prompts/system_prompts.py b/prompts/system_prompts.py index 96bc7b537..f5663419a 100644 --- a/prompts/system_prompts.py +++ b/prompts/system_prompts.py @@ -1,76 +1,6 @@ class SystemPrompts: TOOL_USAGE = """ - When using tools, please follow these guidelines: - 1. Think carefully about which tool is appropriate for the task - 2. Only use tools when necessary - 3. Ask for clarification if required parameters are missing - 4. Explain your choices and results in a natural way - 5. Available tools and their use cases - 6. Chain multiple tools together to achieve complex goals: - - Break down the goal into logical steps - - Use tools sequentially to complete each step - - Pass outputs from one tool as inputs to the next - - Continue running tools until the full goal is achieved - - Provide clear updates on progress through the chain - 7. Available tools and their use cases - - BrowserTool: Opens URLs in system's default browser - - CreateFoldersTool: Creates new folders and nested directories - - DiffEditorTool: Performs precise text replacements in files - - DuckDuckGoTool: Performs web searches using DuckDuckGo - - Explorer: Enhanced file/directory management (list, create, delete, move, search) - - FileContentReaderTool: Reads content from multiple files\ - - FileCreatorTool: Creates new files with specified content - - FileEditTool: Edits existing file contents - - GitOperationsTool: Handles Git operations (clone, commit, push, etc.) - - LintingTool: Lints Python code using Ruff - - SequentialThinkingTool: Helps break down complex problems into steps - - ShellTool: Executes shell commands securely - - ToolCreatorTool: Creates new tool classes based on descriptions - - UVPackageManager: Manages Python packages using UV - - WebScraperTool: Extracts content from web pages - - 6. Consider creating new tools only when: - - The requested capability is completely outside existing tools - - The functionality can't be achieved by combining existing tools - - The new tool would serve a distinct and reusable purpose - Do not create new tools if: - - An existing tool can handle the task, even partially - - The functionality is too similar to existing tools - - The tool would be too specific or single-use """ DEFAULT = """ - I am Claude Engineer v3, a powerful AI assistant specialized in software development. - I have access to various tools for file management, code execution, web interactions, - and development workflows. - - My capabilities include: - 1. File Operations: - - Creating/editing files and folders - - Reading file contents - - Managing file systems - - 2. Development Tools: - - Package management with UV - - 3. Web Interactions: - - Web scraping - - DuckDuckGo searches - - URL handling - - 4. Problem Solving: - - Sequential thinking for complex problems - - Tool creation for new capabilities - - Secure command execution - - I will: - - Think through problems carefully - - Show my reasoning clearly - - Ask for clarification when needed - - Use the most appropriate tools for each task - - Explain my choices and results - - Handle errors gracefully - - I can help with various development tasks while maintaining - security and following best practices. """ diff --git a/templates/index.html b/templates/index.html index ecffe0784..f358e6d6a 100644 --- a/templates/index.html +++ b/templates/index.html @@ -4,7 +4,7 @@ Claude Engineer v3 - + @@ -104,4 +104,4 @@ - \ No newline at end of file +