> For the complete documentation index, see [llms.txt](https://docs.devolutions.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.devolutions.net/cli/guides/connect/local-profile.md).

# Use a local Devolutions Remote Desktop Manager profile

Point Devolutions CLI at a local Devolutions Remote Desktop Manager profile folder to use its SQLite workspace, including protected profiles and entries.

If your secrets are in a local SQLite workspace of Devolutions Remote Desktop Manager, Devolutions CLI can use it directly, without a server. A local context doesn't sign in to anything: it only remembers which profile folder to open.

You need the folder of the Devolutions Remote Desktop Manager profile that holds the SQLite workspace (the folder with the `.db` file).

## Save the profile as a context

1. Run `devo login` with a context name and the profile folder:

   ```bash
   devo login <context-name> --sqlite <profile-folder>
   ```
2. Check that Devolutions CLI uses it:

   ```bash
   devo status
   ```

The new context becomes the current one. With `--no-set-current`, it doesn't, unless no context is current yet.

You can add notes to the context. Devolutions CLI saves them and shows them with `devo context inspect`, for you and for AI agents that read your contexts:

<table><thead><tr><th width="230">OPTION</th><th>WHAT IT SAVES</th></tr></thead><tbody><tr><td><code>--description</code></td><td>A description of the context.</td></tr><tr><td><code>--workspace</code></td><td>The name of the workspace you usually use in this profile.</td></tr><tr><td><code>--vault</code></td><td>The name of the vault you usually use.</td></tr></tbody></table>

These notes are hints only: they don't select a workspace or a vault for your commands. To select them, use `devo workspace use` and `devo vault use`. See [Manage vaults and entries](/cli/for-devops-and-administrators/manage/vaults-and-entries.md).

To change a local context, run `devo login` again with the same name and `--replace`. Without it, Devolutions CLI refuses to overwrite the existing context.

## Find the profile folder Devolutions CLI uses

`devo config path` prints the profile folder Devolutions CLI uses right now, without starting the background process:

```bash
devo config path
```

Devolutions CLI picks the folder in this order:

1. The local context you select with `--context`.
2. The `RDM_CONFIG_PATH` environment variable, if it's set. It takes priority over a current local context.
3. The current local context.
4. Otherwise, an `rdm` folder inside the Devolutions CLI configuration folder.

{% hint style="info" %}
The background process serves one profile folder at a time. If you switch to a context with another folder and a command says that the background process serves a different profile, run `devo daemon restart`.
{% endhint %}

## Protected profiles and entries

<table><thead><tr><th width="230">PROTECTION</th><th>WHAT TO DO</th></tr></thead><tbody><tr><td><strong>Profile protected by an application password</strong></td><td>Unlock it for the background process with <code>devo config unlock</code>, reading the password from an environment variable or a file, and confirm with <code>--yes</code>.</td></tr><tr><td><strong>Entry protected by a shared passphrase</strong></td><td>Devolutions CLI reads and writes the <code>password</code> field only. It uses the passphrase file next to the workspace (<code>&#x3C;workspace file>.passphrase</code> in the profile folder), or the one you give with <code>--passphrase-file</code> or <code>--passphrase-env</code>.</td></tr></tbody></table>

To unlock a profile protected by an application password:

```bash
devo config unlock --password-env <VARIABLE_NAME> --yes
```

The background process keeps the password in memory only. When it stops or restarts, unlock the profile again.

{% hint style="warning" %}
Protected local profiles are supported only partly: the SQLite workspace itself must not be encrypted, and protected entries must use a shared passphrase. Other protection methods aren't supported.
{% endhint %}

## Good to know

* `devo logout` doesn't apply to a local context: there's no sign-in to clear. To remove the context, run `devo context delete <context-name>`. The profile folder and its workspace stay untouched.
* A context name can be used by one workspace type only. If the name already exists as a Devolutions Cloud or Devolutions Server context, choose another name or delete the other context first.
* Local profiles accept `devo secret set` for the `password` field only. See [Compare workspace types](/cli/guides/understand/workspace-types.md).
* A command says the workspace doesn't support it? See [A command says the workspace doesn't support it](/cli/help/troubleshooting/not-supported.md).

## Next

* [Find the reference to a secret](/cli/guides/secrets/find-a-reference.md)
* [Switch between workspaces](/cli/guides/connect/switch-workspaces.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.devolutions.net/cli/guides/connect/local-profile.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
