<p>You can use the <code>plugin/install</code> command for the <code>./craft</code> cli utility, I'm not sure if you're aware of this:</p>
<p><a href="https://craftcms.com/docs/3.x/console-commands.html#plugin-install" rel="nofollow noreferrer">https://craftcms.com/docs/3.x/console-commands.html#plugin-install</a></p>
<p>You'll need to know the plugin's handle, but that's all you need. I've never tried specifying multiple plugins in the one command, but that's an easy one to test.</p>
<p>Now, as to why you're needing this is the real question. If you've got your workflow correct, you shouldn't need to be manually downloading/installing plugins with the cli anywhere other than local dev. Project config (if you're using it) and composer should handle all of this. Typically, a basic deployment is as follows:</p>
<pre><code>composer install
./craft migrate/all
./craft project-config/apply
</code></pre>
<p>I guess it would help to know why you're downloading and not installing, and in which kind of environment this is happening.</p>

CC BY-SA 4.0
2021-05-07T18:37:05.983Z
Thanks for this @Andy. I was aware of the `plugin/install` function. The reason is I have a list of plugin names and a fresh install and was looking for a way to download en-masse a bunch of known plugins into the fresh craft installation.
Adrian
CC BY-SA 4.0
2021-05-07T07:57:21.377Z
2021-05-07T08:04:08.623Z
2021-05-07T08:04:08.623Z
Wallace
<p>Coming from Drupal, we often use <code>drush</code> to download modules (plugins) and install them. For example this is what we might do using <code>drush</code>:</p>
<p><code>drush dl bootstrap mailchimp stripe-php</code></p>
<p>This would download the modules (plugins), then we'd have to install/enable them.</p>
<p>On CraftCMS the <code>./craft</code> utility is great for installing, but not downloading. I know you can use <code>composer require vendor/plugin-name</code> — but that requires me to know the vendor name as well. This came up when I was applying a <code>project.yaml</code> file to a fresh CraftCMS install and it notified me that a bunch of plugins were not installed — but only gave me the <code>plugin-name</code> for each — meaning I would have to look up the vendor -or- search for each in the plugin store and install.</p>
<p>Is something like the <code>drush dl</code> command available with the <code>./craft</code> cli utility at this time?</p>

<plugins><cli><project.yaml>
How do you download multiple plugins vis Command Line?
# How do you download multiple plugins vis Command Line?

(Asked by: username_0 on 2021-05-06)

Coming from Drupal, we often use `drush` to download modules (plugins) and install them. For example this is what we might do using `drush`:

`drush dl bootstrap mailchimp stripe-php`

This would download the modules (plugins), then we'd have to install/enable them.

On CraftCMS the `./craft` utility is great for installing, but not downloading. I know you can use `composer require vendor/plugin-name` — but that requires me to know the vendor name as well. This came up when I was applying a `project.yaml` file to a fresh CraftCMS install and it notified me that a bunch of plugins were not installed — but only gave me the `plugin-name` for each — meaning I would have to look up the vendor -or- search for each in the plugin store and install.

Is something like the `drush dl` command available with the `./craft` cli utility at this time?

**Tags:** plugins, cli, project.yaml


---

## 1 answers

### Answer by username_1 on 2021-05-07. Score: 1

You can use the plugin/install command for the ./craft cli utility, I'm not sure if you're aware of this:
https://craftcms.com/docs/3.x/console-commands.html#plugin-install
You'll need to know the plugin's handle, but that's all you need. I've never tried specifying multiple plugins in the one command, but that's an easy one to test.
Now, as to why you're needing this is the real question. If you've got your workflow correct, you shouldn't need to be manually downloading/installing plugins with the cli anywhere other than local dev. Project config (if you're using it) and composer should handle all of this. Typically, a basic deployment is as follows:
composer install
./craft migrate/all
./craft project-config/apply

I guess it would help to know why you're downloading and not installing, and in which kind of environment this is happening.

> **Comments:**
> **username_0**: Thanks for this @Andy. I was aware of the `plugin/install` function. The reason is I have a list of plugin names and a fresh install and was looking for a way to download en-masse a bunch of known plugins into the fresh craft installation.  

---

