# How to Enable Multi-Application Mode in Dify Chat: A Complete Guide

> Unlock Dify Chat's multi-application mode. This guide details the required Dify API endpoint, front-end deployment, and app configurations for seamless integration.

- Repository: [lexmin0412/dify-chat](https://github.com/lexmin0412/dify-chat)
- Tags: how-to-guide
- Published: 2026-03-06

---

**To enable multi-application mode in Dify Chat, you must provide a valid Dify API endpoint with API Base URL and Secret, deploy either the Platform (Next.js) or React-SPA front-end, and create at least two application configurations using the "添加应用配置" (Add App Config) UI flow.**

The `lexmin0412/dify-chat` repository provides an open-source chat interface that supports managing multiple Dify applications from a single instance. Enabling multi-application mode allows you to switch between different AI apps without leaving the platform, streamlining workflow management across diverse use cases.

## Prerequisites for Multi-Application Mode

Before configuring the interface, ensure you have the following components ready:

### Dify API Credentials

You must obtain a valid **API Base** URL and **API Secret** (also referred to as API Key) from your Dify dashboard's "API Key" page. These credentials authenticate your Dify Chat instance and authorize access to the Dify backend endpoints.

### Front-End Deployment

Deploy a Dify Chat instance using either the **Platform (Next.js)** build or the **React-SPA** build. According to the source documentation in [`packages/docs/docs/v0.4.x/guide/start/introduction.md`](https://github.com/lexmin0412/dify-chat/blob/main/packages/docs/docs/v0.4.x/guide/start/introduction.md), both front-ends support multi-application mode, though the Platform version serves as the canonical implementation with full feature support.

## Configuring Multiple Applications via the UI

Once your instance is running—typically accessible at `http://<host>:<port>` after executing `docker compose up` via the [`docker-compose.yml`](https://github.com/lexmin0412/dify-chat/blob/main/docker-compose.yml) file—follow this configuration workflow documented in [`packages/docs/docs/v0.4.x/guide/app-config/config-multiple/start.md`](https://github.com/lexmin0412/dify-chat/blob/main/packages/docs/docs/v0.4.x/guide/app-config/config-multiple/start.md):

### Access the Configuration Interface

Navigate to the Dify Chat front-end and click the **"添加应用配置"** (Add App Config) button. This action opens a drawer form where you define the connection parameters for your first application.

### Input Request Configuration

Fill in the **请求配置** (Request Config) section with your **API Base** URL and **API Secret**. These values establish the secure connection between your Dify Chat client and the Dify API server.

### Select Application Type

Choose the **应用类型** (App type) for your configuration. The default selection is `chat-assistant`, though the interface allows switching to other Dify app types depending on your specific requirements.

### Save and Verify

Click the save button to store your configuration. Upon successful creation, the UI displays a "添加配置成功" (Add success) notification, and the new entry appears in the application list. You must repeat this process for at least one additional application to activate the multi-application list view.

### Switch Between Applications

Once you have saved two or more configurations, the interface renders a scrollable list of app cards. Clicking any card opens the dedicated chat page for that specific application, allowing you to switch contexts without logging out or opening multiple browser tabs.

## Technical Implementation Patterns

While enabling multi-application mode requires no code changes, the repository demonstrates consistent mode-handling patterns throughout the codebase. For example, the file upload component in [`packages/react-app/src/components/chatbox/form-controls/file-upload.tsx`](https://github.com/lexmin0412/dify-chat/blob/main/packages/react-app/src/components/chatbox/form-controls/file-upload.tsx) uses optional mode parameters:

```typescript
type Props = {
  mode?: 'multiple';          // default mode for file upload
  maxCount?: number;
  disabled?: boolean;
  allowed_file_types?: string[];
  value?: File[];
  onChange?: (files: File[]) => void;
};

const FileUpload = ({
  mode = 'multiple',
  maxCount,
  disabled,
  allowed_file_types,
  value,
  onChange,
}: Props) => { ... };

```

*(Note: The above snippet illustrates UI mode patterns only; enabling multi-application mode is configured entirely through the web interface.)*

## Key Configuration Files

Understanding these repository locations helps when troubleshooting or extending multi-application functionality:

- [`packages/docs/docs/v0.4.x/guide/app-config/config-multiple/start.md`](https://github.com/lexmin0412/dify-chat/blob/main/packages/docs/docs/v0.4.x/guide/app-config/config-multiple/start.md) — Step-by-step UI guide for adding multiple app configurations
- [`packages/docs/docs/v0.4.x/guide/start/start.md`](https://github.com/lexmin0412/dify-chat/blob/main/packages/docs/docs/v0.4.x/guide/start/start.md) — Explains the distinction between single-application and multi-application run modes
- [`packages/docs/docs/v0.4.x/guide/start/introduction.md`](https://github.com/lexmin0412/dify-chat/blob/main/packages/docs/docs/v0.4.x/guide/start/introduction.md) — Overview of Platform versus React-SPA capabilities
- [`docker-compose.yml`](https://github.com/lexmin0412/dify-chat/blob/main/docker-compose.yml) — Service definitions for launching the Platform service that hosts the multi-app UI
- [`README.md`](https://github.com/lexmin0412/dify-chat/blob/main/README.md) — Quick-start instructions for initializing the environment before enabling multi-app mode

## Summary

- **Multi-application mode** requires valid Dify API credentials (API Base URL and Secret), a running Platform or React-SPA front-end, and multiple configurations added via the UI.
- Create configurations by clicking **"添加应用配置"** and filling in the **请求配置** fields with your Dify API details.
- The interface requires at least two saved applications to display the multi-app switcher view.
- The **Platform (Next.js)** build is the canonical implementation for multi-app management, though **React-SPA** provides equivalent functionality.
- All configuration occurs through the web interface without modifying source files like [`file-upload.tsx`](https://github.com/lexmin0412/dify-chat/blob/main/file-upload.tsx) or other components.

## Frequently Asked Questions

### What is the difference between single-application and multi-application mode in Dify Chat?

Single-application mode binds the Dify Chat instance to one specific Dify app, loading it immediately on startup. Multi-application mode maintains a persistent list of configured apps in the UI, allowing you to switch between different Dify applications without restarting the interface or opening multiple browser tabs, as documented in [`packages/docs/docs/v0.4.x/guide/start/start.md`](https://github.com/lexmin0412/dify-chat/blob/main/packages/docs/docs/v0.4.x/guide/start/start.md).

### Can I use multi-application mode with the React-SPA build?

Yes, both the **Platform (Next.js)** and **React-SPA** builds support multi-application mode according to [`packages/docs/docs/v0.4.x/guide/start/introduction.md`](https://github.com/lexmin0412/dify-chat/blob/main/packages/docs/docs/v0.4.x/guide/start/introduction.md). However, the Platform version is considered the canonical implementation and receives priority updates for multi-app management features.

### Where do I obtain the API Base URL and API Secret?

You generate these credentials from your Dify dashboard's "API Key" page. The **API Base** URL points to your Dify instance endpoint, while the **API Secret** authenticates your client. Input both values into the **请求配置** (Request Config) fields when creating a new application configuration in the Dify Chat UI.

### How many applications can I add to a single instance?

There is no explicit limit defined in the source code. You can add as many applications as needed by repeating the "添加应用配置" workflow. The interface supports scrolling through all saved configurations once you have created at least two entries, with each app running independently in its own chat context.