# Upgrading from 1.x or a 2.0 alpha

> Droost 1.x is deprecated and unsupported. There is no upgrade path from 1.x or the 2.0 alphas to 2.0: uninstall first, then install fresh.

:::warning Uninstall first
Droost 1.x is deprecated and no longer supported. There is no upgrade path
from 1.x, nor from the 2.0.0 alphas, to 2.0.0.
:::

Droost 2.0 is rebuilt on Tool API. Several modules that 1.x and the alphas
shipped are gone: `droost_eca`, `droost_examples`, `droost_snyk`,
`droost_tool_api` and `droost_workflow`, along with droost's own MCP server.
The workflow and the code knowledge moved out to the
[`droost` command](https://droost.org/docs/how-it-works.md).

## How to move

Back up the database and code, and rehearse on a development copy.
Uninstall while the old code is still on disk, then install 2.0 fresh:

```bash
drush pm:uninstall droost      # and every droost_* submodule you enabled
composer remove drupal/droost
composer require 'drupal/tool:^1.0@beta' 'drupal/droost:^2.0'
drush en droost
```

**Uninstall before you remove the code, not after.** A module left enabled
whose code is gone from disk breaks Drupal's bootstrap before anything could
repair it.

If the old version pulled in `drupal/mcp_server` and nothing else needs it,
remove it too. To offer droost's tools over MCP again, follow
[Over MCP, for editors](https://droost.org/docs/module-mcp.md).

## What you keep

Your content and configuration are your site's, not droost's. What droost
1.x kept for itself (its search index, its brain) is rebuilt from your code
by the `droost` command: `droost code:index`.

## The command

The `droost/workflow` package before 1.0 was installed through the module
(`drush droost:workflow:install`). It now lives in its own folder,
`tools/droost/`: follow [Set up by hand](https://droost.org/docs/setup-by-hand.md), and run
`droost init` again.
