---
title: "Example flow"
description: "Example flow for selecting Windows profiles, comparing installed state, and applying package declarations."
---

> Documentation Index
> Fetch the complete documentation index at: https://outfitting.jfa.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Example flow

This flow assumes the source declares the `workstation` and `work` profiles. Replace them with the comma-separated Windows profiles you want to apply.

## Prepare and validate the source

```sh
outfitting-manager init --profile workstation,work
```

`init` refreshes a configured remote source by default, then validates the selected profiles. It does not install or update packages.

## Inspect installed package state

```sh
outfitting-manager diff --profile workstation,work
```

`diff` compares the selected profiles' WinGet and Scoop declarations with installed package state. It is read-only; differences produce a nonzero exit status.

## Apply the selected profiles

```sh
outfitting-manager apply --profile workstation,work
```

`apply` installs missing packages declared by the selected profiles' WinGet and optional Scoop manifests. Review the plan and confirm when prompted. Applied state remains local. Use `--winget-only` to skip Scoop or `--yes` to apply the plan without prompting. See [Windows commands](/docs/platforms/windows/commands/) for pruning and package-manager details.

Package upgrades are separate from reconciliation. Run [`update`](/docs/cli/update/) with exactly one manager, `winget` or `scoop`, only when you intend to upgrade already-installed packages.

Source: https://outfitting.jfa.dev/docs/platforms/windows/example-flow/index.mdx
