> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dema.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Apps

> Build reusable apps with the Dema Agent, link them to agents, and update them from a conversation.

**Apps** are interactive tools built by the Dema Agent in a conversation. An app might be a dashboard, calculator, or report. Dema saves it to your **app library**, where you and your agents can use it again.

You own the apps created for you. Linking an app to an agent lets that agent open and update it, but does not change the owner.

***

## The app library

The **Apps** panel lists every app you own. Open an app there, check its visibility, or see which agents use it.

Link an app to an agent when updating it requires analysis or a skill. A simple data refresh does not require a linked agent.

| Update type                                                       | What to do                                                                     |
| ----------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| A data refresh with the same view and newer numbers               | A **Refresh** button in the app is enough.                                     |
| Analysis or a skill, such as ranking results or writing a summary | **Link it to an agent** so the agent can update it on demand or on a schedule. |

### Example: a standalone app

A **Promo Margin Calculator** shows how a discount affects margin. It loads current product costs when you open it, and its **Refresh** button loads the latest values. It can stay in your library without being linked to an agent.

### Example: a linked app kept current on a schedule

A **Weekly Margin Review** ranks markets and summarizes the largest changes. Each update requires new analysis, so you [link it to an agent](#linking-an-app-to-an-agent) and schedule the agent to run, for example, every Monday at 07:00. Each run updates the app with the latest review.

<Note>
  An app does not need to be linked to an agent. You can still open, rename, and update it from your library.
</Note>

***

## Linking an app to an agent

Linking gives an agent access to an app during conversations and scheduled runs.

<Steps>
  <Step title="Open the agent's Apps section">
    Open the agent and select **Configuration → Apps**.
  </Step>

  <Step title="Click + Add">
    This opens the **Add app** dialog.
  </Step>

  <Step title="Search for the app and click Add next to it" />
</Steps>

The Apps section includes apps the agent created in earlier conversations and apps you linked from your library.

To unlink later, hover the app in the agent's Apps list and click the trash icon (**Remove app**). Removing the link doesn't delete the app. It stays in your library.

***

## Telling the agent how to use a linked app

Linking makes the app available to the agent. Add guidance to the agent's [instructions](/guides/agent/your-agents#instructions) if it should use the app for a particular task. For example:

<Prompt description="When I ask for a weekly performance review, open the Weekly Margin app and fill it in for the latest full week.">
  When I ask for a weekly performance review, open the Weekly Margin app and fill it in for the latest full week.
</Prompt>

Edit the instructions at **Agents → Configuration → Instructions**, or ask the agent to save an instruction during a conversation. For example: "From now on, use the Weekly Margin app for weekly reviews."

<Tip>
  Keep instructions short and specific: name the app and the situation that should trigger it.
</Tip>

***

## Visibility

An app's **visibility** controls who can see it:

| Visibility   | Who can see it                   |
| ------------ | -------------------------------- |
| **Private**  | Only you                         |
| **Teams**    | Everyone on the selected team(s) |
| **Everyone** | Everyone in your organization    |

Linking an app to an agent does not change its visibility. The agent can use a private app, but other people cannot open it from their libraries. Making an app more private may unlink it from agents with a wider audience. See [Sharing agents and sessions](/guides/agent/access-and-sharing) for details.

***

## Updating an app

Manage an app's name, visibility, and deletion from the **Actions** (`⋯`) menu in the library. These actions are available for linked and unlinked apps. Only the owner can use them.

To change an app's layout, logic, or data, ask an agent to edit it in a conversation. The steps depend on whether the app is linked to an agent:

<Tabs>
  <Tab title="Linked to an agent">
    Open a conversation with the agent and describe the change, such as "Add a column for return rate" or "Group this by market." The agent edits the app in your library.
  </Tab>

  <Tab title="Not linked to an agent">
    You can update an app without linking it to an agent first.

    <Steps>
      <Step title="Open the app from the library" />

      <Step title="Click Ask app">
        This opens the **Open app** dialog.
      </Step>

      <Step title="Choose where to work">
        **Continue in latest session** opens the most recent conversation where the
        app was built or changed, if you have access. **Start new session** opens a
        new conversation with the app attached.
      </Step>

      <Step title="Tell the agent what to change">
        Your edits apply to the same app in your library.
      </Step>
    </Steps>
  </Tab>
</Tabs>

<Tip>
  To keep using the same agent for future updates, [link the app to that agent](#linking-an-app-to-an-agent). Both methods edit the same app.
</Tip>

***

## Removing vs. deleting

These two actions are different:

| Action         | Where                  | Effect                                                                                             |
| -------------- | ---------------------- | -------------------------------------------------------------------------------------------------- |
| **Remove app** | Agent's Apps list      | Unlinks the app from that agent. The app stays in your library.                                    |
| **Delete**     | App Actions (`⋯`) menu | Permanently deletes the app and all its versions. This cannot be undone; only the owner can do it. |
