# Command modifiers

Opus supports various command modifiers that can be used in toolbar buttons and hotkeys to modify the behaviour of the function. A command modifier is not a command itself - for the most part you can think of them as options that control how the function is executed.

Each modifier is given on a separate line - therefore, to use command modifiers in a function, you must edit the function in the [advanced command editor](https://chaoses-ib.gitbook.io/directory-opus/manual/customize/creating_your_own_buttons/command_editor/advanced_command_editor) (as the simple editor does not support multiple-line functions). Some modifiers (like **@async**) affect an individual command in the function, and are given on the same line as the command - others affect the whole function, and are supplied on a line by themselves.

![](https://3597805814-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3XSZSwWow0fDf6fQJobd%2Fuploads%2Fgit-blob-e558182c8e23a6cc2fa5453933154628f77a4316%2Fcommand_modifiers_001.png?alt=media)

This screenshot is an example of a simple function that makes use of two command modifiers:

* The **@filesonly** modifier causes the function to only use selected files - any currently selected folders will be ignored. The **{f}**[external control code](https://chaoses-ib.gitbook.io/directory-opus/manual/reference/command_reference/external_control_codes) means each filename will be passed in turn to Notepad.
* The **@async** modifier causes the command following it, **notepad.exe** in this instance, to run asynchronously. If multiple files are selected, an instance of notepad.exe will be executed for each file, without waiting for the previous instance to return.

See the [Command modifier reference](https://chaoses-ib.gitbook.io/directory-opus/manual/reference/command_reference/command_modifier_reference) page for a full list of the available command modifiers.


---

# Agent Instructions: Querying This Documentation

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

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://chaoses-ib.gitbook.io/directory-opus/manual/customize/creating_your_own_buttons/command_modifiers.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
