Skip to content

RushdiJa/dimdom_agent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DimDom Agent

An AI-powered coding agent built with Google's Gemini API and function calling. The agent can explore projects, read and modify files, and execute Python code safely through structured tools.

Features

  • 📂 List files and directories (get_files_info.py)
  • 📖 Read file contents (get_file_content.py)
  • ✏️ Create and edit files (write_file.py)
  • ▶️ Execute Python scripts (run_python_file.py)
  • 🧠 AI orchestration using Google Gemini function calling
  • 🔑 Multi API-key rotation support

Project Structure

get_files_info.py      → Lists files and folders in a directory
get_file_content.py    → Reads content of a file
write_file.py          → Creates or modifies files
run_python_file.py     → Executes Python scripts safely

Installation

Requirements

  • Python 3.14+
  • uv package manager

1. Clone repository

git clone https://github.com/RushdiJa/dimdom_agent.git
cd dimdom_agent

2. Install uv (if not installed)

curl -LsSf https://astral.sh/uv/install.sh | sh

3. Install dependencies

uv sync

4. Create .env file

GEMINI_API_KEY1=YOUR_API_KEY_HERE
TOTAL_API_KEYS=1

For multiple keys: add GEMINI_API_KEY2, GEMINI_API_KEY3... and update TOTAL_API_KEYS

5. Run

uv run main.py "your prompt here"

# verbose mode
uv run main.py "your prompt here" --verbose

How it works

The agent uses Google Gemini function calling to decide when to:

  • inspect files
  • read content
  • create or modify code
  • execute Python scripts

Each tool is implemented as a separate Python module and dynamically invoked by the AI.

Tech Stack

  • Python
  • Google Gemini API (GenAI SDK)
  • Function Calling
  • UV package manager

License

MIT

About

AI coding agent built with Google's Gemini API that can read, create, modify, and execute files through function calling.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages