Também no YouTube.

sgcUI 2026.11: sgcChat, assistente de IA e chat de equipe para Delphi e .NET | Blog eSeGeCe

sgcUI 2026.11: sgcChat, assistente de IA e chat de equipe para Delphi, C++ Builder e .NET

· Lançamentos
sgcUI 2026.11: sgcChat, assistente de IA e chat de equipe para Delphi e .NET | Blog eSeGeCe
✦  Nova versão · sgcUI 2026.11

Conheça o sgcChat.
Um chat dentro da sua aplicação.

Um assistente de IA que transmite as respostas em Markdown formatado e um chat de equipe com presença, digitação, confirmações de leitura e reações. Controles nativos para Delphi, C++ Builder e .NET.

  • VCL
  • FireMonkey
  • WinForms
  • WPF
  • Avalonia
  • SVG e PNG sem janela
Uma conversa com um assistente de IA e um chat de equipe lado a lado, desenhados pelo sgcChat
16produtos sgcUI
4controles de chat
5frameworks de interface
12idiomas

Hoje lançamos o sgcUI 2026.11. Ele traz um novo produto, o sgcChat, que coloca um chat com assistente de IA e um chat de equipe dentro da sua própria aplicação, e preenche uma lista de lacunas menores na suíte: medidores que recebem entrada do usuário, vinculação de dados que acompanha o dataset nos dois sentidos, um dashboard publicado como página web, séries recorrentes do Outlook no planejador, scripts em relatórios e mais.

O sgcChat é o décimo sexto produto do sgcUI. Ele roda em VCL e FireMonkey para Delphi e C++ Builder, e em WinForms, WPF e Avalonia para .NET, e está incluído no sgcUI Enterprise e no All-Access. Ele não é vendido como pacote separado.

sgcChat: um assistente de IA na sua aplicação

Uma resposta de IA chega em pequenos pedaços, e os usuários esperam lê-la enquanto ela é escrita. O TsgcChatAI vincula uma conversa a um provedor, envia o histórico e o prompt de sistema e mostra cada pedaço como Markdown formatado assim que ele chega. O provedor roda em uma thread de trabalho, de modo que a janela continua responsiva, e o painel de chat oferece parar, gerar novamente e editar e reenviar para cada resposta.

Uma conversa com um assistente de IA no painel do sgcChat
O assistente de IA no painel de chat.

O sgcChat não prende você a um único fornecedor de IA. O TsgcChatAIProvider_AIChat conecta-se ao TsgcAIChat do sgcWebSockets, que fala com OpenAI, Anthropic, Gemini, DeepSeek, Ollama, Grok e Mistral. O TsgcChatAIProvider_UICore usa a camada de provedores de IA que todos os produtos sgcUI compartilham, e o TsgcChatAIEventProvider permite transmitir do seu próprio backend em um evento. É assim que uma vinculação TsgcChatAI responde com a OpenAI:

uses
  SysUtils, Classes,
  // sgcWebSockets
  sgcAI, sgcAI_Chat,
  // sgc
  sgcChat_AI, sgcChatWS_AI;

procedure UseOpenAI(aAI: TsgcChatAI; const aApiKey: string);
var
  oChat: TsgcAIChat;
  oProvider: TsgcChatAIProvider_AIChat;
begin
  oChat := TsgcAIChat.Create(aAI.Owner);
  oChat.Provider := aicpOpenAI;
  oChat.ChatOptions.ApiKey := aApiKey;
  oChat.ChatOptions.Model := 'gpt-4o-mini';

  oProvider := TsgcChatAIProvider_AIChat.Create(aAI.Owner);
  oProvider.Chat := oChat;

  aAI.Model := oChat.ChatOptions.Model;
  aAI.Provider := oProvider;
end;

Altere Provider para usar Anthropic, Gemini, DeepSeek, Ollama, Grok ou Mistral. A ajuda do sgcChat tem o guia de início rápido completo.

A conversa com Claude, OpenAI, Gemini e os demais provedores de LLM exige o sgcWebSockets, que está incluído no All-Access. O TsgcChatAIProvider_AIChat está no pacote de ponte sgcChatWS (.NET: esegece.sgcChat.sgcWebSockets). Sem o sgcWebSockets, o TsgcChatAIEventProvider permite que o seu próprio código chame qualquer serviço de IA.

sgcChat: um chat de equipe no seu próprio servidor

Centrais de suporte, equipes de campo e ferramentas internas precisam de um chat que os usuários já saibam usar. A visualização do chat agrupa as mensagens de cada autor com um avatar e um nome, mostra quem está online, ausente ou ocupado, mostra quem está digitando e marca cada mensagem como enviada, entregue ou lida. Os usuários respondem a uma mensagem, reagem a ela, editam ou excluem as próprias mensagens e enviam anexos com miniaturas de imagens e chips de arquivo.

Um chat de equipe com avatares, presença e confirmações de leitura no sgcChat
Um chat de equipe com presença, digitação e confirmações de leitura.

O chat não depende de um único servidor. O TsgcChatEventTransport entrega ao seu código cada mensagem, mudança de digitação, confirmação e reação como um frame JSON documentado. Com o sgcWebSockets, o TsgcChatTransport_WebSocket conecta um cliente e o TsgcChatServer_WebSocket repassa as mensagens entre os clientes de um canal, mantém a presença de cada usuário e envia as últimas mensagens aos usuários que entram depois. O relay roda em um serviço ou em um programa de console:

function CreateRelay(aOwner: TComponent; aPort: Integer)
  : TsgcChatServer_WebSocket;
var
  oServer: TsgcWebSocketServer;
begin
  oServer := TsgcWebSocketServer.Create(aOwner);
  oServer.Port := aPort;
  // the relay needs no main thread
  oServer.NotifyEvents := neNoSync;

  Result := TsgcChatServer_WebSocket.Create(aOwner);
  Result.Server := oServer;
  // the last 100 messages of every channel go to late joiners
  Result.HistoryCount := 100;

  oServer.Active := True;
end;

Os dois exemplos em Delphi acima foram copiados sem alterações dos exemplos da ajuda do sgcChat, que foram compilados com o Delphi 13 (Win32) contra os fontes do sgcUI e do sgcWebSockets.

O chat de equipe por WebSocket exige o sgcWebSockets, que está incluído no All-Access. O TsgcChatTransport_WebSocket e o TsgcChatServer_WebSocket estão no pacote de ponte sgcChatWS (.NET: esegece.sgcChat.sgcWebSockets). Sem o sgcWebSockets, o TsgcChatEventTransport conecta o chat a qualquer backend.

sgcChat: um visualizador Markdown nativo

O motor por trás dos balões do chat também é um controle independente. O TsgcVCLMarkdownViewer e o TsgcFMXMarkdownViewer mostram títulos, ênfase, citações, listas, listas de tarefas, tabelas, links e imagens, e destacam a sintaxe dos blocos de código em Pascal, C#, C++, JavaScript, Python, JSON, SQL e outras linguagens. O AppendMarkdown adiciona texto conforme ele chega, e os usuários selecionam e copiam o texto ou um bloco de código inteiro com o botão de copiar. Use-o para notas de versão, páginas de ajuda e mensagens escritas em Markdown.

O visualizador Markdown do sgcChat no tema claro
Visualizador Markdown, claro
O visualizador Markdown do sgcChat no tema escuro
Visualizador Markdown, escuro

O sgcChat se integra ao resto da suíte

O chat segue os temas claro, escuro e Fluent do sgcUI. Uma conversa em árabe ou hebraico é espelhada, e os textos dos controles estão traduzidos para os 12 idiomas do sgcUI. No Windows, a visualização do chat é uma lista de mensagens para leitores de tela, com o autor e a hora de cada mensagem. O modelo da conversa, o documento Markdown e a visualização não dependem de VCL nem de FireMonkey, de modo que um serviço pode renderizar uma conversa ou um documento Markdown em SVG ou PNG sem janela, inclusive no Linux64.

Os componentes são TsgcVCLChatPanel, TsgcVCLChatView, TsgcVCLChatInput e TsgcVCLMarkdownViewer, o mesmo conjunto com o prefixo TsgcFMX para FireMonkey, e os mesmos controles para WinForms, WPF e Avalonia, como TsgcWinFormsChatPanel, TsgcWpfChatPanel e TsgcAvaloniaChatPanel. As demonstrações cobrem um assistente de IA, um cliente de chat de equipe com o seu servidor relay e o visualizador Markdown, para VCL, FireMonkey, C++ Builder, WinForms, WPF e Avalonia.

O sgcChat é vendido como parte do sgcUI Enterprise e do pacote All-Access, que também inclui o sgcWebSockets para o provedor de IA e a ponte WebSocket. Veja a página do sgcChat e a matriz de recursos.

Em toda a suíte: entrada, dados e saída

O restante da versão preenche lacunas menores nos produtos: controles que recebem entrada do usuário, vinculação de dados que acompanha o dataset nos dois sentidos e mais formas de tirar uma tela da aplicação.

sgcGauges: medidores de entrada e skins

Quatro medidores de entrada, TsgcVCLKnobGauge, TsgcVCLSliderGauge, TsgcVCLToggleSwitchGauge e TsgcVCLPushButtonGauge (TsgcFMX no FireMonkey, e os mesmos nomes em WinForms, WPF e Avalonia), permitem que o usuário defina um valor com o mouse, o toque, a roda ou o teclado. O OnUserChange dispara apenas para alterações feitas pelo usuário, e os leitores de tela os veem como um controle deslizante, um interruptor e um botão. O sgcGauges agora tem dezesseis tipos de medidor, contando os medidores de tanque e de símbolo de processo do pacote HMI abaixo.

O Skin dá a cada medidor uma nova aparência: Classic, Modern, Industrial, ISA101, Dark ou um skin próprio registrado com sgcGaugesRegisterSkin. O TsgcGaugeDataLink mostra um campo de dataset em qualquer medidor e grava de volta no campo as alterações de um medidor de entrada. Veja os recursos do sgcGauges e a ajuda dos medidores de entrada.

Vinculação de dados ao vivo e nos dois sentidos

Os produtos acompanham um TDataSet do Delphi, ou um DataTable no .NET, enquanto ele muda, e os produtos de edição gravam de volta as alterações do usuário:

sgcDiagram, sgcPivotGrid, sgcGauges e sgcDashboard têm a mesma vinculação no .NET. A matriz de recursos do sgcUI lista o que cada edição inclui.

sgcPlanner: séries do Outlook, lembretes do Google e capacidade

O TsgcPlannerGraphSync agora traz as séries recorrentes do Outlook como um único item recorrente com o seu RRULE, as ocorrências alteradas como ocorrências modificadas e as canceladas como exceções, e envia de volta ao Outlook as séries criadas no planejador. O TsgcPlannerGoogleSync envia ao Google Calendar os lembretes alterados no planejador quando um evento é atualizado e lê de volta os alterados no Google. Uma Capacity por recurso (1 para uma pessoa em tempo integral, 0.5 para meio período, 3 para uma equipe de três) controla a linha de capacidade do histograma de carga, e é lida e gravada como MaxUnits no Microsoft Project XML. Veja os recursos do sgcPlanner.

sgcDashboard: publicar na web e o tile de mapa em todo lugar

O SaveToHTML grava um dashboard como uma única página HTML autocontida. Cada tile é desenhado como SVG pelo mesmo código que o imprime, em uma grade CSS que segue os breakpoints do dashboard, e todo tile tem um título e uma alternativa em texto para leitores de tela. Sem uma URL de atualização, a página não tem nenhum script. No .NET, o tile de mapa agora existe também para WPF e Avalonia, e os mapas aparecem na impressão, no PDF e na saída HTML do dashboard. Leia a ajuda de publicar na web e os recursos do sgcDashboard.

sgcMaps: desenhe o mapa em qualquer canvas

O DrawTo no TsgcVCLMap, no TsgcFMXMap e no SgcMapControl do WinForms desenha a vista atual, com os tiles carregados, em um retângulo de qualquer canvas do sgcUI, e os mapas de WPF e Avalonia também renderizam em qualquer canvas do sgcUI. É assim que um mapa em um tile de dashboard chega à impressão, ao PDF e à página HTML. Veja os recursos do sgcMaps.

sgcWizard: transições e uma página de resumo

O Transition anima a troca de página com um deslize, um fade ou ambos, espelhado em layouts da direita para a esquerda, e o ReduceMotion segue a configuração de animação do Windows. Com ShowSummary, o assistente adiciona uma última página que lista os campos e os valores que o usuário informou em cada página visitada, com as senhas mascaradas e um link Editar que volta para cada página. Veja os recursos do sgcWizard e a ajuda da página de resumo.

sgcReports: scripts e a visualização do FireMonkey em todas as plataformas

O TsgcReport.Script guarda procedimentos em uma pequena linguagem parecida com Pascal, armazenada na definição do relatório e no JSON. O relatório executa um script quando começa e quando termina, e cada banda e cada item antes e depois de imprimir, de modo que um script pode ocultar uma banda ou mudar o texto, a cor da fonte ou a altura de um item na impressão atual. Os designers de VCL, FireMonkey, WinForms, WPF e Avalonia editam o script com um botão Check que mostra a linha e a coluna de um erro. A visualização do FireMonkey roda em Windows, macOS, iOS e Android, com pan por toque e zoom por pinça, e no iOS e no Android, Imprimir e Salvar PDF abrem a planilha de compartilhamento do sistema. Veja os recursos do sgcReports e a ajuda de scripts.

sgcPDF para .NET: editar anotações e preencher formulários no WPF e no Avalonia

Os visualizadores de WPF e Avalonia agora fazem o que o visualizador do WinForms faz: os usuários criam, movem, redimensionam, editam e excluem anotações com o mouse (AnnotationEditing e AnnotationTool) e, com FormFilling, preenchem campos de texto, caixas de seleção, botões de opção, caixas de combinação e caixas de listagem, com a tecla Tab percorrendo os campos na ordem de tabulação. Veja os recursos do sgcPDF.

Acessibilidade verificada em todas as plataformas

A árvore UI Automation de cada demonstração de produto, a árvore que os leitores de tela como o Narrator e o NVDA leem, foi verificada com um cliente UI Automation em VCL, FireMonkey, WinForms, WPF e Avalonia, e os problemas encontrados foram corrigidos. Os editores VCL agora anunciam o rótulo do campo em vez do seu valor, uma barra de navegação plana é uma lista e não uma árvore, as barras de status de WinForms e WPF não recebem mais o foco do teclado, as células do grid Avalonia não repetem mais o nome da coluna e os pontos de gráfico e outros itens desenhados dos controles Avalonia informam a sua posição na tela.

Smart tags do Visual Studio e XAML

As smart tags de todos os 69 componentes WinForms da toolbox foram testadas em uma superfície de design: cada propriedade, editor de coleção, lista de fontes de dados, ação e verbo. No WPF e no Avalonia, os tiles do sgcDashboard e os skins do sgcGauges são declarados em XAML sob o mesmo prefixo sgc das colunas, campos e séries dos outros produtos.

sgcEditors: controle de layout e formulários de dados

O novo controle de layout, TsgcVCLLayoutControl e TsgcFMXLayoutControl (e os mesmos nomes no WinForms, WPF e Avalonia), organiza os controles de um formulário em grupos, grupos com abas e colunas, com os rótulos alinhados a uma só largura, divisores que o usuário pode arrastar e layouts da direita para a esquerda. SaveLayout e LoadLayout guardam como JSON a disposição feita pelo usuário. O controle de layout está em todas as edições, inclusive na Community. O Delphi Community não tem pacote de design para o sgcEditors, então nele é criado em código.

O formulário de dados é construído sobre ele. TsgcVCLDataForm e TsgcFMXDataForm geram um formulário de edição completo a partir de um TDataSet, ou das propriedades published de uma classe com BindObject, e os formulários de dados do WinForms, WPF e Avalonia aceitam um DataTable, uma lista ou um objeto. Cada campo recebe um controle do sgcEditors, as regras do validador do sgcUICore e um lugar em um grupo ou em uma aba, e um navegador percorre, inclui, edita, exclui e grava os registros. O Smart Paste preenche o registro inteiro a partir de um texto colado, pela camada de IA que os editores já usam, e marca os campos que preencheu. O formulário de dados está na edição Registrada, no VCL, FireMonkey, C++Builder, WinForms, WPF e Avalonia:

uses
  Forms, Controls, DB,
  sgcUICore_AI, sgcEditors_DataForm, sgcEditors_VCL_DataForm;

function CreateCustomerForm(aOwner: TForm; aSource: TDataSource;
  aProvider: TsgcUIAIProvider): TsgcVCLDataForm;
var
  oField: TsgcDataFormField;
begin
  Result := TsgcVCLDataForm.Create(aOwner);
  Result.Parent := aOwner;
  Result.Align := alClient;
  // an open dataset: one field, one editor and one rule per TField
  Result.DataSource := aSource;
  oField := Result.Fields.FindField('EMAIL');
  oField.Kind := edfEmail;
  oField.Required := True;
  oField.Group := 'Contact';
  Result.Fields.FindField('PHONE').Group := 'Contact';
  Result.RebuildEditors;
  // the Smart Paste button of the navigator fills every field from the
  // clipboard; without a provider a local parser reads "Name: value" lines
  Result.Provider := aProvider;
end;

Veja os recursos do sgcEditors e a ajuda do formulário de dados.

Pacote HMI do sgcUI: tanques, P&ID, alarmes e um NumPad

O pacote HMI traz telas de processo ao sgcUI: painéis de operador, parques de tanques, estações de bombeamento e outros displays de planta. Não é um produto novo. Cada peça fica no produto que ela estende e segue a sua edição, em VCL e FireMonkey, C++Builder, e WinForms, WPF e Avalonia no .NET. Chame sgcUIApplyISA101 uma vez e todo controle sgcUI passa para o esquema cinza ISA-101, em que a cor é reservada para estados anormais e alarmes.

A aplicação continua no comando da planta: ela traz os valores dos seus próprios drivers, de um banco de dados ou da ponte dos medidores, e decide quando um alarme é disparado. Não há driver OPC UA ou Modbus. Os medidores de tanque e de símbolo de processo, a lista de alarmes e o NumPad estão em todas as edições, inclusive a Community, enquanto os stencils P&ID, os estados de processo e as tubulações animadas, os feeds dos medidores e o log de reconhecimento de alarmes são da edição Registrada. A demo HMI da suíte reúne as peças em um pequeno parque de tanques controlado por um simulador. Leia a página do Pacote HMI do sgcUI e a ajuda do pacote HMI.

Pacote Realtime UI do sgcUI: presença, notificações, feeds de atividades e logs ao vivo

O pacote Realtime UI dá ao sgcUI as peças de uma tela ao vivo para Delphi, C++Builder e .NET. Ele não é um produto novo. Cada peça vive no produto que ela estende. O sgcUICore adiciona um modelo de presença com avatares, um grupo de avatares e um indicador de presença. O sgcNavigation adiciona uma central de notificações com toasts, uma caixa de entrada agrupada por dia e preferências por categoria e canal, enquanto o TsgcToolbarBadgeLink do sgcToolbar mostra o número de não lidas em um item da barra de ferramentas ou do ribbon. O sgcDashboard adiciona um feed de atividades e uma trilha de auditoria, como controles independentes e como blocos do painel, e o sgcGrid adiciona um visualizador de log ao vivo com níveis, filtros, acompanhamento do final, pausa e exportação.

Cada modelo recebe uma mensagem JSON por alteração. Na edição Registrada, as fontes ao vivo WebSocket, MQTT e SSE da ponte sgcUICoreWS os alimentam a partir do sgcWebSockets sem código. Cada controle vem com a edição do seu produto. Sem um servidor, ou em um build Community, a aplicação atualiza os modelos pela API deles. Leia a página do pacote Realtime UI do sgcUI.

Guias Primeiros Passos para todos os produtos

Todo produto sgcUI agora inclui cinco demos QuickStart para Delphi (VCL) e um guia Primeiros Passos, em HTML junto às demos e em PDF. As demos vão do primeiro formulário até uma pequena aplicação completa, e o guia explica cada etapa. Comece pelo guia do sgcGrid, pelo guia do sgcCharts ou pelo guia do sgcChat.

Os 16 guias estão listados na seção de guias do início rápido do sgcUI.

Experimente o sgcChat e o sgcUI 2026.11

Uma versão de teste para Delphi e uma para C++ Builder instalam os 16 produtos sgcUI.

Dúvidas ou comentários? Entre em contato, você receberá a resposta das pessoas que escreveram o código.