# Should \`verdi\` be renamed to \`aiida\` or add \`aiida\` as an alias

**URL:** <https://aiida.discourse.group/t/should-verdi-be-renamed-to-aiida-or-add-aiida-as-an-alias/406>\
**Category:** Design Discussions\
**Created:** [May 31, 2024, 11:11am UTC](https://aiida.discourse.group/t/should-verdi-be-renamed-to-aiida-or-add-aiida-as-an-alias/406 "2024-05-31T11:11:25Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![sphuber](https://yyz2.discourse-cdn.com/free1/user_avatar/aiida.discourse.group/sphuber/32/6_2.png) [@sphuber](https://aiida.discourse.group/u/sphuber)\
**Post date:** [May 31, 2024, 11:11am UTC](https://aiida.discourse.group/t/should-verdi-be-renamed-to-aiida-or-add-aiida-as-an-alias/406/1 "2024-05-31T11:11:25Z")

</div>

### Historical context

The command line interface (CLI) of AiiDA is called `verdi`.  
When AiiDA was created, the CLI was named `verdi` mostly for technical reasons, since `aiida` would clash with the Python package. This technical limitation is no longer the case, so the question was raised whether `verdi` should be renamed to `aiida` or whether the latter should at least be added as an alias (and `verdi` kept for backwards compatibility).

### Pros

- `aiida` potentially is less confusing for new users

### Cons

- Having `verdi` avoids potential ambiguity when talking about AiiDA. It will always be immediately clear one is talking about the CLI and not the Python API or the software as a whole
- A lot of work is needed to update tutorials/documentation and existing scripts
- _Removing `verdi`_: is backwards incompatible
- _Keeping `verdi`_: can cause confusion as there will be now two ways of doing things and it might not be immediately obvious to users _if_ there is difference and which one to use.

---

<div class="post-metadata">

**Author:** ![sphuber](https://yyz2.discourse-cdn.com/free1/user_avatar/aiida.discourse.group/sphuber/32/6_2.png) [@sphuber](https://aiida.discourse.group/u/sphuber)\
**Post date:** [May 31, 2024, 11:12am UTC](https://aiida.discourse.group/t/should-verdi-be-renamed-to-aiida-or-add-aiida-as-an-alias/406/2 "2024-05-31T11:12:36Z")

</div>

I am not a 100% sure if I have captured all the pros, please let me know if there are others that should be added.

I would personally be against this change as I think the downsides by far outweigh the slight advantage.

---

<div class="post-metadata">

**Author:** ![mbercx](https://yyz2.discourse-cdn.com/free1/user_avatar/aiida.discourse.group/mbercx/32/345_2.png) [@mbercx](https://aiida.discourse.group/u/mbercx)\
**Post date:** [June 4, 2024, 12:17pm UTC](https://aiida.discourse.group/t/should-verdi-be-renamed-to-aiida-or-add-aiida-as-an-alias/406/3 "2024-06-04T12:17:18Z")

</div>

Thanks @sphuber! I at first didn’t see any issues with this change and deemed it natural, but now that you’ve listed some cons I’m also leaning against changing the CLI name. Unless there are indeed some other pro arguments we’re missing.

---

<div class="post-metadata">

**Author:** ![geiger\_j](https://yyz2.discourse-cdn.com/free1/user_avatar/aiida.discourse.group/geiger_j/32/57_2.png) [@geiger\_j](https://aiida.discourse.group/u/geiger_j)\
**Post date:** [June 4, 2024, 3:00pm UTC](https://aiida.discourse.group/t/should-verdi-be-renamed-to-aiida-or-add-aiida-as-an-alias/406/4 "2024-06-04T15:00:45Z")

</div>

There are plenty of other things one has to learn when using AiiDA, so I don’t think `verdi` as the CLI base command matters here for simplifying anything. With all the cons, I’m also against changing it.

---

<div class="post-metadata">

**Author:** ![bastonero](https://yyz2.discourse-cdn.com/free1/user_avatar/aiida.discourse.group/bastonero/32/32_2.png) [@bastonero](https://aiida.discourse.group/u/bastonero)\
**Post date:** [June 18, 2024, 4:50pm UTC](https://aiida.discourse.group/t/should-verdi-be-renamed-to-aiida-or-add-aiida-as-an-alias/406/5 "2024-06-18T16:50:52Z")

</div>

My two cents are also in favor on NOT changing it.

---

<div class="post-metadata">

**Author:** ![mbercx](https://yyz2.discourse-cdn.com/free1/user_avatar/aiida.discourse.group/mbercx/32/345_2.png) [@mbercx](https://aiida.discourse.group/u/mbercx)\
**Post date:** [May 19, 2026, 4:35am UTC](https://aiida.discourse.group/t/should-verdi-be-renamed-to-aiida-or-add-aiida-as-an-alias/406/6 "2026-05-19T04:35:52Z")

</div>

This was raised again by a user

> <https://github.com/aiidateam/aiida-core/issues/7372>
>
> I remember that it was confusing for me at the beginning of using AiiDA that the… CLI command is \`verdi\`, not \`aiida\`.
> 
> It came up again recently in conversation with @mbercx so I dare to post the suggestion here: 
> 
> I think it would remove some highly unnecessary friction, especially for the new users if \`aiida\` was added as an alias for \`verdi\` and these two commands could be used interchangeably. 
> 
> It's an act of mercy for us less refined souls.

So a +1 from Libor on adding an `aiida` CLI alias. Other previous related GitHub items:

- [Add `aiida` as CLI command · aiidateam · Discussion #6381 · GitHub](https://github.com/orgs/aiidateam/discussions/6381)
- [Add `aiida` as a `verdi` alias (for now?) by edan-bainglass · Pull Request #6383 · aiidateam/aiida-core · GitHub](https://github.com/aiidateam/aiida-core/pull/6383)

And others have in passing mentioned this as a source of confusion. So it does seem to keep on being a problem for new users, who are the ones that we should aim face the least friction.

To revisit some of the cons presented initially:

> - Having `verdi` avoids potential ambiguity when talking about AiiDA. It will always be immediately clear one is talking about the CLI and not the Python API or the software as a whole

I can see the point, but I think saying `aiida` CLI or just CLI is equally clear. If you mention CLI and show e.g. `aiida process list`, I don’t think users are going to mistake this for the Python API.

> - A lot of work is needed to update tutorials/documentation and existing scripts

This was my main reason for not doing this previously: it’s a lot of work for _not so much_ benefit, and we had plenty of more important priorities to work on. But, it keeps on coming up (more benefit than we thought?), and the work is now substantially reduced with LLMs.

> - _Removing `verdi`_: is backwards incompatible
> - _Keeping `verdi`_: can cause confusion as there will be now two ways of doing things and it might not be immediately obvious to users _if_ there is difference and which one to use.

I agree removing `verdi` is not an option. An `aiida` alias, and moving all of our documentation to use `aiida`, is the way to go. `verdi` will keep on working. We _could_ deprecate it to push the whole ecosystem to adapt, but I’m not sure that’s the best way forward.

Of course, in many packages, users will keep on seeing `verdi xxx` and this might confuse them. But the documentation of actively maintained packages can be easily adapted. Packages that have fallen out of maintenance can’t be a reason to change something that might geniunely improve the experience of new users.
