- API/servidor:
trmultichat/backend - Painel web:
trmultichat/frontend - Mobile:
trmultichat/mobile
- URL oficial:
https://politicadeprivacidade.trmultichat.com.br - Fonte versionada no repositório:
trmultichat/frontend/public/privacy-policy/index.html
Não use <Button> do Material-UI diretamente. Use sempre <TrButton> para garantir integração com o tema dinâmico configurado em /admin/branding.
Para criar novos componentes visuais, utilize a pasta src/components/ui/ e siga o padrão de estilização baseado nas variáveis CSS (--tr-primary, --tr-secondary, --tr-button, --tr-text, --tr-bg, --tr-font, --tr-radius).
Importe a partir do index do UI quando possível:
import { TrButton, TrCard, TrTableHeader } from "../../components/ui";🔧 Componentes oficiais do Design System TR
TrButton→ botão temático (cores, radius e fonte vindos do /admin/branding)TrCard→ container com borda lateral, radius dinâmico e título opcionalTrTableHeader→ cabeçalho de tabela padronizado na cor da empresaTrSectionTitle→ título de seção para páginas internas
Importe sempre via barrel:
import { TrButton, TrCard, TrTableHeader, TrSectionTitle } from "../../components/ui";Use os scripts em infrastructure/.
cd infrastructure && ./start-local.sh
O TR Multichat permite configurar credenciais globais de IA para uso em funcionalidades de prompts e testes de conectividade.
No painel web:
- Configurações → Opções gerais → Integrações → Credenciais dos serviços externos
Você verá duas seções:
- ChatGPT (OpenAI)
- Cursor (OpenAI-compatible)
- Preencha:
- OpenAI API Key: sua chave
sk-... - Modelo: ex.
gpt-3.5-turbo - Base URL: padrão
https://api.openai.com/v1
- OpenAI API Key: sua chave
- Clique em Salvar
- Clique em Testar (deve retornar
OK)
As chaves salvas ficam em /settings/:key com:
openaiApiKeyopenaiModelopenaiBaseUrl
Esta integração funciona com qualquer endpoint compatível com OpenAI.
- Preencha:
- Base URL: ex.
https://SEU-ENDPOINT/v1 - API Key
- Modelo
- Base URL: ex.
- Clique em Salvar
- Clique em Testar
As chaves salvas ficam em /settings/:key com:
cursorBaseUrlcursorApiKeycursorModel
O backend expõe um endpoint de teste (requer JWT):
POST /ai/test
Body:
{ "provider": "openai", "message": "Responda apenas: OK" }ou:
{ "provider": "cursor", "message": "Responda apenas: OK" }cd trmultichat/mobile