HephAIstus is an autonomous coding assistant powered by ReAct (Reasoning and Acting) methodology. Named after the Greek god of fire and forge, HephAIstus helps you build, modify, and manage code projects through natural language conversations.
▄ ▄ █ █▀ ▄▄ ▄▄▄▄▄ ▀█ ▄
█ █ ▄▄▄ ▄▄▄▄ █ ▄▄ █ ██ █ █ ▄▄▄ ▄▄█▄▄ ▄ ▄ ▄▄▄
█▄▄▄▄█ █▀ █ █▀ ▀█ █▀ █ █ █ █ █ █ █ ▀ █ █ █ █ ▀
█ █ █▀▀▀▀ █ █ █ █ █ █▄▄█ █ █ ▀▀▀▄ █ █ █ ▀▀▀▄
█ █ ▀█▄▄▀ ██▄█▀ █ █ █ █ █ ▄▄█▄▄ █ ▀▄▄▄▀ ▀▄▄ ▀▄▄▀█ ▀▄▄▄▀
█ ▀▀ ▀▀
▀
- Autonomous Code Generation: Write, modify, and organize code files through natural language
- Intelligent File Operations: Read, write, append, patch, and search files with context awareness
- Git Integration: Automated version control with add, commit, and push capabilities
- Web Search: Real-time web search integration for up-to-date information
- Interactive CLI: Beautiful command-line interface with syntax highlighting and progress indicators
- Context-Aware: Maintains session context and understands file relationships
- Safety Features: Built-in guardrails against unsafe operations
- Python 3.8+
- API Keys (set in
.envfile):GROQ_API_KEY=your_groq_api_key EXA_API_KEY=your_exa_api_key
-
Clone the repository:
git clone <repository-url> cd hephAIstus
-
Install dependencies:
pip install groq openai python-dotenv
-
Set up your
.envfile with required API keys -
Run HephAIstus:
python main.py
| Tool | Description |
|---|---|
chat |
General conversation and advice |
read_file |
Read file contents |
write_file |
Create or overwrite files |
append_file |
Append content to existing files |
list_dir |
List directory contents |
search_text_in_files |
Search for text across files |
patch_file |
Apply line-based changes to files |
run_python_script |
Execute Python scripts safely |
search_web |
Search the web for information |
git_add |
Stage files for commit |
git_commit |
Commit changes with message |
git_push |
Push commits to remote repository |
🔎 Enter your goal: Create a Python script that calculates fibonacci numbers and save it as fib.py
🔎 Enter your goal: Add error handling to the last file I created
🔎 Enter your goal: Set up a new Flask web application with routes for home and about pages
🔎 Enter your goal: Review my changes and commit them with an appropriate message
:help- Show available commands:tools- List all available tools:state- Display current agent context:clear- Clear the screen:ls [path]- List files in directory:quit/:exit- Exit the application
HephAIstus uses the ReAct (Reasoning and Acting) framework:
- Reasoning: The agent thinks through the problem step by step
- Acting: Takes concrete actions using available tools
- Observing: Processes results and adjusts the approach
- Iterating: Continues until the goal is achieved
The agent maintains context about:
- Recently modified files
- Active workspace structure
- Previous operations and their results
- Session history and patterns
- Path Validation: Prevents access to parent directories (
../) - Safe Execution: Python scripts are scanned for unsafe operations
- File Deletion Disabled: Delete operations are blocked by policy
- Error Handling: Robust exception handling throughout the system
The agent automatically analyzes your workspace on startup, providing context about:
- File structure and contents
- Recently modified files
- Active development patterns
The system tracks:
- Last modified files
- Recently created files
- Current working files
- Session context and history
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
This project is licensed under the MIT License - see the LICENSE file for details.
