Selecting capabilities
Choose a preset for a standard project, Custom for an interactive selection, or --caps when you already know the components you need.
Use a preset
mistral init my-app --preset app
mistral init my-workflow --preset workflowThe app preset creates a web frontend, a Python API, a Postgres database, and a workflow worker. The workflow preset creates a workflow project. Presets select the components without asking you to choose each one.
Select interactively
mistral init my-appChoose Custom when prompted. The CLI groups capabilities by component type, such as frontend, backend, or database, and shows the complete selection before installing it. Required components and dependencies are included automatically.
mistral apps init my-app skips the first question and opens the component pickers directly.
Specify capabilities
List the available IDs, then pass a comma-separated selection:
mistral apps capability list
mistral init my-app --caps tanstack-start,fastapiYou can't combine --preset and --caps. Use the IDs printed by capability list, such as mistralai-capabilities/backend/fastapi, or the short form, such as fastapi, when it's unambiguous. If you leave out apps, the CLI adds it, because it's the only deployment capability. The CLI reports incompatible or missing components rather than silently substituting them.
Change an existing app
Commit your work before you change the selection. You can then review the diff and restore your files if needed.
Run these commands from the app directory:
mistral apps capability add workflows
mistral apps capability remove workflows
mistral apps capability select --caps tanstack-start,fastapi,postgres,appsadd extends the selection. remove drops a selected capability, but not a required component or a dependency another capability still needs. select replaces the complete selected set, so include every component you want to keep.
Removing a capability doesn't delete its module from mistral.json. select warns about modules that are no longer used; remove doesn't. If you no longer need a module, delete its entry yourself.
Update capabilities
To re-pin installed capabilities to their declared versions and refresh their generated files, run:
mistral apps capability updateThe CLI reports the update plan and relevant changelog entries. Review modified files and run your app's checks before deploying. To update one capability to a specific version, pass its ID and version:
mistral apps capability update CAPABILITY_ID VERSIONReplace the placeholders with an installed capability ID and the version you want. For flags, see the CLI reference.