DocumentionUmo Editor NextAI-related featuresAI Chat Assistant

AI Chat Assistant

The AI Chat Assistant is an interactive tool designed for document editing, allowing users to talk with AI in real time while they work. It can understand selected text and contextual content, provide suggestions such as continuation, rewrite, polish, and translation, and supports multi-turn conversations, history, and file uploads to help users create and optimize documents efficiently.

It supports all document node types, enabling fast creation, editing, and optimization of text, images, tables, code blocks, and more.

Typical features include:

  • Private deployment support: the frontend only sends requests and renders output; models and auth are controlled by your backend
  • Multi-turn conversation: append content continuously via SSE streaming
  • Multiple models: configure multiple ai.models[] and switch in the UI
  • Reasoning mode: if ai.models[].reasoning = true, toggle showing/enabling reasoning
  • Message history: current version uses local history by default (no server API required)
  • File uploads: upload images/files and send attachment metadata to your backend
  • Skill modes: switch skills in chat based on your configuration

Before integrating, read Getting Started.

Screenshot

Umo Editor AI Chat

Demo video

Default configuration

// AI Chat Assistant default configuration
const defaultOptions = {
  ai: {
    chat: {
      enabled: false,
      showName: true,
      showAvatar: true,
      showDatetime: true,
      layout: 'both',
      welcomeMessage:
        'Welcome to Umo Editor AI Chat Assistant! Ask me anything and I will help you with document editing.',
      files: {
        enabled: true,
        maxSize: 1024 * 1024 * 10,
        maxCount: 3,
        allowed: {
          image: 'image/*',
          file: '.pdf,.doc,.docx,.ppt,.pptx,.xls,.xlsx,.txt,.md,.csv,.json,.xml',
        },
      },
      maxHistory: 10,
    },
  },
}

Configuration reference (ai.chat)

This page only covers options under options.ai.chat. For shared options (such as ai.models and ai.callbacks), see Configuration & Methods.

ai.chat.enabled

Description: Enable/disable the AI Chat Assistant entry/sidebar.

Type: boolean

Default: false

ai.chat.layout

Description: Message layout.

Type: 'single' | 'both'

Default: 'both'

ai.chat.showName

Description: Show sender name.

Type: boolean

Default: true

ai.chat.showDatetime

Description: Show message timestamp.

Type: boolean

Default: true

ai.chat.showAvatar

Description: Show avatar.

Type: boolean

Default: true

ai.chat.welcomeMessage

Description: Welcome message shown in the chat window.

Type: string

Default: defaultOptions.chat.welcomeMessage in the snippet above

ai.chat.maxHistory

Description: Maximum number of local history items (used by the history panel). The current version uses local history by default; for server persistence, implement your own storage strategy.

Type: number

Default: 10

ai.chat.files

Description: File upload configuration.

Type: object

Defaults:

  • enabled: boolean, enable file uploads. Default: true.
  • maxSize: number, per-file size limit (bytes). Default: 1024 * 1024 * 10.
  • maxCount: number, max attachments per send. Default: 3.
  • allowed: object, allowed file types. Default: defaultOptions.chat.files.allowed.

Methods

openAIChat

Description: Open the AI Chat Assistant.

Parameters: none

Returns: void

closeAIChat

Description: Close the AI Chat Assistant.

Parameters: none

Returns: void