# Use general controls

The following are basic controls in VS Code.

## Add a new item

To add a new item such as a module, connection, or webhook, right-click the corresponding folder and click the **New \<item>** option.

<div align="left"><img src="/files/EPTCRxx5rUHpiQbt1P8y" alt="" width="563"></div>

Each time the prompt appears, you are asked to fill in information about the newly created item. Follow the indicated prompts to create an item. Your new item appears under the corresponding folder.

<div align="left"><img src="/files/bCURhoc0ZW5fqZWfrSUy" alt="" width="563"></div>

## Edit the source code

To start editing the source code, find the item to edit in the left menu and click it.

A new editor will appear and the current source will be downloaded from Make.

You can edit it as a normal file. If your app contains some RPCs or IML functions, you will see auto-complete suggestions for them.

<div align="left"><img src="/files/gr4vnRfBqpZrCyko1GyA" alt="" width="563"></div>

{% hint style="info" %}
Use the shortcut `CTRL+S` to upload the source code back to Make.
{% endhint %}

## Edit metadata

To edit metadata (for example, to change the label of a module), right-click the desired item and select the **Edit metadata** option from the menu.

<div align="left"><figure><img src="/files/utF3Q5PGoV18xEtfWkX7" alt="" width="563"><figcaption></figcaption></figure></div>

In the prompt, change allowed values. If you don't want to change a value, skip the field by pressing the **Enter** key.

## Change the connection or webhook

To change the attached connection or webhook of an item, right-click the item and select the **Change connection (or webhook)** option from the menu.

<div align="left"><img src="/files/yQWVWbv6lOCHnauBS6YP" alt="" width="563"></div>

In the prompt, change the connection or webhook. If possible, there will also be an option to unassign the current connection without assigning a new one.

<div align="left"><figure><img src="/files/3kGHawgaSVQyj721ASaL" alt="" width="563"><figcaption></figcaption></figure></div>

You will also see a prompt to assign an alternative (secondary) connection. The alternative connection should not be the same as the main connection. You can leave it empty.

<div align="left"><figure><img src="/files/7hAOK3WkTFkGq44umWCs" alt="" width="563"><figcaption></figcaption></figure></div>

## Delete an item

To delete an item, right-click it and select **Delete**.

<div align="left"><img src="/files/Y2CHQsB1DqKV8ZNr05QD" alt="" width="563"></div>

You will be asked to confirm the deletion. If you answer **Yes**, the item will be deleted from the app.

<div align="left"><img src="/files/W9uzULxuCdJVFR2PKmN3" alt="" width="563"></div>

{% hint style="warning" %}
Deleting items is only possible in private apps. Once an app is published, the capability to delete items within the app is disabled. Learn more about [your apps' visibility](https://github.com/integromat/make-apps-sdk-docs/blob/master/get-started/make-apps-editor/apps-sdk/broken-reference/README.md) and the deletion of items.
{% endhint %}

## Generate the interface code

Use the [Interface Generator](/custom-apps-documentation/component-blocks/interface.md#interface-generator) to generate an interface.


---

# 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://developers.make.com/custom-apps-documentation/get-started/make-apps-editor/apps-sdk/general-controls.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.
