Skip to content

javiersgjavi/auto-dev-agents

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Auto Dev Agents

This project showcases a basic CrewAI setup for automating code generation. The agents take the high-level requirements described in prompt.yaml and coordinate the design, implementation and testing of a small Python project.

Agents and tasks

Four specialized agents collaborate on this project:

  • Engineering Lead – prepares a detailed design for the module based on the high-level requirements.
  • Backend Engineer – implements the Python module described in the design.
  • Frontend Engineer – provides a simple Gradio interface demonstrating the backend.
  • Test Engineer – writes unit tests for the generated module.

They execute the following tasks in order:

  1. design_task – produces a Markdown design document outlining classes and functions.
  2. code_task – generates the backend module implementing the design.
  3. frontend_task – creates a minimal Gradio app showcasing the backend.
  4. test_task – generates automated tests for the backend module.

Repository structure

auto-dev-agents/
├── prompt.yaml                  # Project requirements and module/class names
├── pyproject.toml               # Packaging configuration
├── uv.lock                      # Dependency lock file for uv
└── src/
    └── auto_dev_agents/
        ├── crew.py              # Crew and task definitions
        ├── main.py              # Entry point used by the crewai CLI
        └── config/
            ├── agents.yaml      # Description of each agent
            └── tasks.yaml       # Description of the tasks

The output/ directory will be created when running the crew and will contain the design, generated code and tests.

Dependency management

This project uses uv to manage its Python dependencies. The locked requirements are stored in uv.lock.

Setup

  1. Install uv

    curl -Ls https://astral.sh/uv/install | sh
  2. Create a virtual environment

    uv venv
    source .venv/bin/activate
  3. Install dependencies and the CrewAI CLI

    uv pip install crewai[tools]
    uv tool install crewai
  4. Run the crew

    crewai run

    The crew relies on Docker to safely execute code generated by the agents.

Prompt configuration

The file prompt.yaml defines the project requirements the crew will work on. Edit it to request something different:

requirements: |
  Describe here your idea or the functionality you want to implement.
module_name: "my_module.py"
class_name: "MyClass"

Changing those values will alter the generated module, class and files.

When you are happy with the prompt, run crewai run again to generate the new code and tests inside the output/ folder.

Advanced customization

You can modify agents.yaml to change the agent profiles or tasks.yaml to adjust the workflow. Each agent focuses on a specific phase (design, backend, frontend and tests) but you can add or remove any as needed.

License

This project is distributed under the MIT license.

About

Automated code generation with CrewAI agents

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages