Agno is an open-source project and we welcome contributions.

👩‍💻 How to contribute

Please follow the fork and pull request workflow:

  • Fork the repository.
  • Create a new branch for your feature.
  • Add your feature or improvement.
  • Send a pull request.
  • We appreciate your support & input!

Development setup

  1. Clone the repository.
  2. Create a virtual environment:
    • For Unix, use ./scripts/dev_setup.sh.
    • This setup will:
      • Create a .venv virtual environment in the current directory.
      • Install the required packages.
      • Install the agno package in editable mode.
  3. Activate the virtual environment:
    • On Unix: source .venv/bin/activate

From here on you have to use uv pip install to install missing packages

Formatting and validation

Ensure your code meets our quality standards by running the appropriate formatting and validation script before submitting a pull request:

  • For Unix:
    • ./scripts/format.sh
    • ./scripts/validate.sh

These scripts will perform code formatting with ruff and static type checks with mypy.

Read more about the guidelines here

Message us on Discord or post on Discourse if you have any questions or need help with credits.