AiiDA (Automated Interactive Infrastructure and Database for Computational Science) is a workflow engine that automates, stores, and manages computational simulations. It tracks every calculation as a node in a provenance graph β€” making your research reproducible and queryable.

Why AiiDA?

  • Reproducibility: Every calculation, input, and output is stored and linked
  • Automation: Define workflows once, run them many times
  • Queryability: Search your results with powerful query tools
  • Multi-code support: Works with VASP, CASTEP, QE, ASE, and more

πŸ€– Using AI Agents with AiiDA

One of the most powerful ways to use AiiDA is through an AI coding agent (like Claude Code, Cursor, or Copilot). Because AiiDA has a well-structured Python API and CLI (verdi), AI agents can:

  • Write submission scripts β€” describe what you want in natural language, get working AiiDA Python
  • Monitor and manage jobs β€” ask the agent to check job status, debug failures, resubmit
  • Query results β€” β€œFind all failed CASTEP calculations from last week” β†’ working QueryBuilder code
  • Build workflows β€” agent can construct complex WorkChains from examples
  • Troubleshoot β€” paste error output, get a fix

Tips for AI-Assisted AiiDA Work

  1. Share your profile and computer setup with the agent context (e.g., verdi profile list, verdi computer list)
  2. Use the verdi CLI for quick checks β€” agents can run shell commands easily
  3. Use Python API for complex queries β€” QueryBuilder in verdi shell or scripts
  4. Keep example scripts β€” agents learn fast from working examples (see Usage)
  5. Reference the docs β€” point the agent to AiiDA documentation when it’s unsure

πŸ’‘ Pro tip: If you’re stuck with AiiDA, ask an AI agent before spending hours debugging. AiiDA’s Python API is well-documented and AI agents are very good at writing correct queries and workflows.

Sections

  • Setup β€” Installation, profile creation, computer & code setup
  • Usage β€” Submitting jobs, querying data, managing groups
  • Job Management β€” Monitoring, troubleshooting, and fixing calculations