Skip to main content

Modular Multi-Agent System for Scientific Research Assistance

Project description

Denario

Version Python Version PyPI - Downloads License: GPL v3 Ask DeepWiki Subscribe on YouTube

Denario is a multiagent system designed to be a scientific research assistant. Denario implements AI agents with AG2 and LangGraph, using cmbagent as the research analysis backend.

Resources

Last updates

  • November 3, 2025 - The Denario paper is out at arxiv!

  • October 9, 2025 - A paper fully generated with Denario has been accepted for publication in the Open Conference of AI Agents for Science 2025, the 1st open conference with AI as primary authors.

Installation

To install denario create a virtual environment and pip install it. We recommend using Python 3.12:

python -m venv Denario_env
source Denario_env/bin/activate
pip install "denario[app]"

Or alternatively install it with uv, initializing a project and installing it:

uv init
uv add denario[app]

Then, run the gui with:

denario run

Get started

Initialize a Denario instance and describe the data and tools to be employed.

from denario import Denario

den = Denario(project_dir="project_dir")

prompt = """
Analyze the experimental data stored in data.csv using sklearn and pandas.
This data includes time-series measurements from a particle detector.
"""

den.set_data_description(prompt)

Generate a research idea from that data specification.

den.get_idea()

Generate the methodology required for working on that idea.

den.get_method()

With the methodology setup, perform the required computations and get the plots and results.

den.get_results()

Finally, generate a latex article with the results. You can specify the journal style, in this example we choose the APS (Physical Review Journals) style.

from denario import Journal

den.get_paper(journal=Journal.APS)

You can also manually provide any info as a string or markdown file in an intermediate step, using the set_idea, set_method or set_results methods. For instance, for providing a file with the methodology developed by the user:

den.set_method(path_to_the_method_file.md)

DenarioApp

You can run Denario using a GUI through the DenarioApp.

The app is already installed with pip install "denario[app]", otherwise install it with pip install denario_app or uv sync --extra app.

Then, launch the GUI with

denario run

Test a deployed demo of the app in HugginFace Spaces.

Build from source

pip

You will need python 3.12 or higher installed. Clone Denario:

git clone https://github.com/AstroPilot-AI/Denario.git
cd Denario

Create and activate a virtual environment

python3 -m venv Denario_env
source Denario_env/bin/activate

And install the project

pip install -e .

uv

You can also install the project using uv, just running:

uv sync

which will create the virtual environment and install the dependencies and project. Activate the virtual environment if needed with

source .venv/bin/activate

Docker

You can run Denario in a Docker image, which includes all the required dependencies for Denario including LaTeX. Pull the image with:

docker pull pablovd/denario:latest

Once built, you can run the GUI with

docker run -p 8501:8501 --rm pablovd/denario:latest

or in interactive mode with

docker run --rm -it pablovd/denario:latest bash

Share volumes with -v $(pwd)/project:/app/project for inputing data and accessing to it. You can also share the API keys with a .env file in the same folder with -v $(pwd).env/app/.env.

You can also build an image locally with

docker build -f docker/Dockerfile.dev -t denario_src .

Read more information on how to use the Docker images in the documentation.

Contributing

Pull requests are welcome! Feel free to open an issue for bugs, comments, questions and suggestions.

Citation

If you make use of Denario, please cite the following references:

@article{villaescusanavarro2025denarioprojectdeepknowledge,
         title={The Denario project: Deep knowledge AI agents for scientific discovery}, 
         author={Francisco Villaescusa-Navarro and Boris Bolliet and Pablo Villanueva-Domingo and Adrian E. Bayer and Aidan Acquah and Chetana Amancharla and Almog Barzilay-Siegal and Pablo Bermejo and Camille Bilodeau and Pablo Cárdenas Ramírez and Miles Cranmer and Urbano L. França and ChangHoon Hahn and Yan-Fei Jiang and Raul Jimenez and Jun-Young Lee and Antonio Lerario and Osman Mamun and Thomas Meier and Anupam A. Ojha and Pavlos Protopapas and Shimanto Roy and David N. Spergel and Pedro Tarancón-Álvarez and Ujjwal Tiwari and Matteo Viel and Digvijay Wadekar and Chi Wang and Bonny Y. Wang and Licong Xu and Yossi Yovel and Shuwen Yue and Wen-Han Zhou and Qiyao Zhu and Jiajun Zou and Íñigo Zubeldia},
         year={2025},
         eprint={2510.26887},
         archivePrefix={arXiv},
         primaryClass={cs.AI},
         url={https://arxiv.org/abs/2510.26887},
}

@software{Denario_2025,
          author = {Pablo Villanueva-Domingo, Francisco Villaescusa-Navarro, Boris Bolliet},
          title = {Denario: Modular Multi-Agent System for Scientific Research Assistance},
          year = {2025},
          url = {https://github.com/AstroPilot-AI/Denario},
          note = {Available at https://github.com/AstroPilot-AI/Denario},
          version = {latest}
          }

@software{CMBAGENT_2025,
          author = {Boris Bolliet},
          title = {CMBAGENT: Open-Source Multi-Agent System for Science},
          year = {2025},
          url = {https://github.com/CMBAgents/cmbagent},
          note = {Available at https://github.com/CMBAgents/cmbagent},
          version = {latest}
          }

License

GNU GENERAL PUBLIC LICENSE (GPLv3)

Denario - Copyright (C) 2025 Pablo Villanueva-Domingo, Francisco Villaescusa-Navarro, Boris Bolliet

Contact and enquieries

E-mail: denario.astropilot.ai@gmail.com

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

denario-1.0.1.tar.gz (547.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

denario-1.0.1-py3-none-any.whl (228.5 kB view details)

Uploaded Python 3

File details

Details for the file denario-1.0.1.tar.gz.

File metadata

  • Download URL: denario-1.0.1.tar.gz
  • Upload date:
  • Size: 547.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.5

File hashes

Hashes for denario-1.0.1.tar.gz
Algorithm Hash digest
SHA256 0cdeb297306a44c11958e6e131b44161e5a1840f8743cd1ce12aa3c7d7442fcb
MD5 d3864c94a078c4dca89d4ba1511fed70
BLAKE2b-256 89be60ed708b94c557e3f6f4a45911f40f92f2d6cf65a1e836d1d21a35b91fee

See more details on using hashes here.

File details

Details for the file denario-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: denario-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 228.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.5

File hashes

Hashes for denario-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b10abc640476222ab9a95d043d55b578f59248be05672e8197b5011d9b5dca64
MD5 1a997e8d1b18f05f201d8c1bd53ad495
BLAKE2b-256 9c44b81b58887210d37cdbdc44505e5cbf72d8a86e67ce577b96b22059b34bdb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page