Онлайн-чат на сайт в Replit: Моночат через Replit Agent
Replit Agent собирает и публикует веб-приложения на разных стеках: React, Next.js, Flask, Express, простой HTML. Чат поддержки Моночата во всех случаях — одна строка в общем HTML-шаблоне. Агент вставит её по промпту, а ключ может получить сам через Agent API. Это не расширение Replit, а стандартная вставка виджета. Тариф «Старт» — 0 ₽.
Как установить
- Откройте Repl и вставьте промпт ниже в Replit Agent или Assistant.
- Агент спросит ваш email и домен. Для опубликованного приложения это обычно адрес вида
my-app.replit.appили ваш собственный домен. - Проверьте, что строка виджета стоит один раз в общем шаблоне.
MONOCHAT_AGENT_KEYдолжен лежать в Secrets, а не в коде. - Опубликуйте приложение и откройте его: кнопка чата появится справа внизу.
- Подтвердите email по ссылке из письма или войдите на monochat.ru/login с тем же email.
Промпт для Replit Agent
Подключи онлайн-чат поддержки Моночат (monochat.ru) ко всем страницам приложения.
1. Если ключа виджета нет, получи его: POST https://monochat.ru/api/agent/v1/signup
Content-Type: application/json
{"email": "<спроси мой email>", "site_domain": "<домен опубликованного приложения>", "agent": "replit"}
widget_key возьми из ответа, agent_key сохрани в Secrets как MONOCHAT_AGENT_KEY, покажи мне tell_the_human.
2. Вставь один раз в общий HTML-шаблон перед </body>:
<script src="https://monochat.ru/widget/<WIDGET_KEY>.js" async></script>
React/Vite — index.html; Next.js — next/script в app/layout.tsx; Flask/Django — базовый шаблон; Express — общий layout.
3. Домен для разработки (*.replit.dev) добавь: POST https://monochat.ru/api/agent/v1/widget/domains {"domain": "<домен>"} с Authorization: Bearer $MONOCHAT_AGENT_KEY.
Документация: https://monochat.ru/docs/replit.md
Код
<!-- общий шаблон, перед </body> -->
<script src="https://monochat.ru/widget/ВАШ_WIDGET_KEY.js" async></script>
Домены разработки и публикации
У Repl есть адрес для разработки и адрес опубликованного приложения, и это разные домены. Виджет загружается только на доменах из настроек виджета и на localhost, поэтому добавьте оба. Это можно сделать в кабинете («Каналы» → «Виджет» → «Домены сайтов») или запросом из пункта 3 промпта.
Частые вопросы
Есть ли официальная интеграция с Replit?
Нет. Агент вставляет в шаблон обычный скрипт виджета. Ни расширений, ни шаблонов Replit для этого не нужно.
Где хранить ключи?
Ключ виджета публичный, его можно держать в HTML. agent_key секретный: храните его в Replit Secrets и не публикуйте.
Подходит ли для бэкенда на Python?
Да. Виджет работает в браузере, поэтому язык сервера не важен: Flask, Django, FastAPI с шаблонами или Node. Заявки с форм можно передавать в Моночат через REST API.
Что будет, если я уже зарегистрирован?
API вернёт 409 account_exists. Возьмите ключ в кабинете и передайте его агенту.