Token导航 LogoToken导航

Agent Skill · 前端设计

syncfusion-blazor-chat-ui(同步融合 Blazor 聊天界面)

用于辅助界面设计、视觉规范、排版、配色、布局和交互体验优化。它适合让 Agent 根据产品场景整理页面结构、生成 UI 方案、检查视觉一致性或改进组件层级。使用时需要结合现有品牌、设计系统和用户任务,不应只堆装饰元素;涉及真实页面改动时,应通过截图或浏览器预览检查文本溢出、对齐和响应式表现。

syncfusion-blazor-chat-ui 是前端设计类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为需要联网;许可证信息还不明确,第三方扫描已通过,按安装量在前端设计类的 10,216 个 Skill 里排第 4,564。

总安装 855周安装 36GitHub Stars 公开资料未说明下载 220核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
unknown

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:syncfusion-blazor-chat-ui(同步融合 Blazor 聊天界面)
来源仓库:https://github.com/syncfusion/blazor-ui-components-skills
仓库路径:skills/syncfusion-blazor-chat-ui
安装命令:
npx skills add https://github.com/syncfusion/blazor-ui-components-skills --skill syncfusion-blazor-chat-ui
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/syncfusion/blazor-ui-components-skills --skill syncfusion-blazor-chat-ui

这个 Skill 是做什么的

前端设计类 Skill 关注页面结构、视觉规范和组件写法,输出通常是可运行的界面代码。

聊天界面组件,提供消息列表、输入框和多媒体消息支持。适合在线客服、团队协作或即时通讯类应用的前端实现。集成 WebSocket 或 SignalR 实现实时通信,消息历史可本地缓存。发送文件时应限制类型和大小,防止服务器资源耗尽。UI 渲染需考虑不同屏幕尺寸,确保移动端消息气泡自适应布局。

来源仓库内路径:skills/syncfusion-blazor-chat-ui

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/syncfusion/blazor-ui-components-skills --skill…;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要需要联网,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

syncfusion-blazor-chat-ui 怎么安装?

在终端执行 npx skills add https://github.com/syncfusion/blazor-ui-components-skills --skill syncfusio…。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

syncfusion-blazor-chat-ui 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

syncfusion-blazor-chat-ui 需要什么权限?

权限级别是需要联网。该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

syncfusion-blazor-chat-ui 是免费的吗?

公开资料没有标注明确许可证,收费和商用限制都无法确认。正式使用前请到来源仓库核对授权说明。

syncfusion-blazor-chat-ui 用的人多吗?

公开数据是累计安装 855 次,近一周安装 36 次,下载 220 次。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

syncfusion-blazor-chat-ui 安全吗?

第三方扫描结果为通过,但这只覆盖已知的静态检查项,不能替代自己读一遍源码和安装命令。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。
  • 第三方扫描已通过,常见的高风险行为没有命中。

先想清楚的地方

  • 许可证没有明确标注,能不能商用、能不能再分发都不确定。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理前端设计类任务、又不想每次都手写提示词的人。

不太适合

  • 需要明确授权才能用到公司项目里的场景。
  • 需要厂商级技术支持和 SLA 的生产系统。

前端设计类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
frontend-design

前端设计 · Codex、Claude

8,823,360126,072只读MIT通过
vercel-composition-patterns

Vercel 组合模式 · Codex、Claude

3,858,81625,893需要联网MIT通过
vercel-react-native-skills

Vercel React native skills 前端 · Codex、Claude

2,468,66425,878只读MIT通过
adapt

adapt 搜索 · Codex、Claude

2,027,04023,125操作浏览器未明确通过
bolder

bolder 分析 · Codex、Claude

2,004,28823,130只读未明确通过
syncfusion-blazor-chat-ui

同步融合 Blazor 聊天界面 · 本页

855—需要联网未明确通过

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

Syncfusion Blazor Chat UI

Build feature-rich conversational chat interfaces with the Syncfusion Blazor Chat UI component. This skill provides complete guidance for creating multi-user messaging applications, chat panels, and interactive conversation UIs in Blazor Server, WebAssembly, and Web App projects.

Component Overview

The SfChatUI component is a specialized UI control for building conversational chat applications. It manages the complete chat interface including:

  • Message Management: Collections of chat messages with full message lifecycle
  • User Management: Multi-user support with profiles, avatars, and status
  • Presence Features: Typing indicators, online status, user identification
  • Rich Rendering: Templates for messages, timestamps, typing indicators, suggestions
  • File Support: File attachment upload and integration
  • Event System: Lifecycle events and user interaction callbacks
  • Customization: Complete styling and theming control

Navigation Guide

Getting Started

📄 Read: references/getting-started.md

  • Installation and NuGet package setup
  • Basic component structure and initialization
  • User and message configuration
  • Minimal working example with conversation

Messages & Users Management

📄 Read: references/messages-and-users.md

  • ChatMessage configuration and properties
  • UserModel setup and properties
  • Message text content management
  • Author identification and user assignment
  • Building message collections and conversation history

User Profiles & Avatars

📄 Read: references/user-profiles-avatars.md

  • Avatar URL configuration with images
  • Avatar background color customization
  • User status indicators (online, offline, busy, away)
  • Custom CSS styling for users
  • User identification and display names

Typing Indicators

📄 Read: references/typing-indicators.md

  • TypingUsers property configuration
  • Showing/hiding typing status indicators
  • Managing multiple typing users
  • Dynamic typing status updates
  • Typing indicator template customization

Timestamps & Formatting

📄 Read: references/timestamps-and-formatting.md

  • ShowTimestamp property to enable/disable timestamps
  • Message timestamp configuration
  • TimestampFormat customization
  • TimeBreak separators (Today, Yesterday, specific dates)
  • TimeBreak template styling

Templates & Customization

📄 Read: references/templates-and-customization.md

  • EmptyChatTemplate for initial state display
  • MessageTemplate for custom message rendering
  • TimeBreakTemplate for date separators
  • TypingUsersTemplate for typing display
  • SuggestionTemplate for quick reply buttons
  • CSS styling and theme integration

Attachments & Events

📄 Read: references/attachments-and-events.md

  • File attachment configuration (Enable)
  • SaveUrl and RemoveUrl endpoint setup
  • AllowedFileTypes filtering
  • MaxFileSize limits and constraints
  • SaveFormat options (Blob vs Base64)
  • Event handling: Created, MessageSend, UserTyping
  • Attachment events: OnAttachmentUploadReady, UploadSuccess, UploadFailed

Programmatic API & Methods 🆕

📄 Read: references/programmatic-api.md

  • ScrollToBottomAsync() for navigating to latest messages
  • ScrollToMessageAsync() for jumping to specific messages
  • UpdateMessageAsync() for editing existing messages
  • FocusAsync() for input field control
  • Complete examples with error handling

Advanced Features 🆕

📄 Read: references/advanced-features.md

  • AutoScrollToBottom configuration
  • EnableCompactMode for group chats
  • Header and Footer customization
  • Mention system (@mention) setup
  • Quick reply suggestions
  • LoadOnDemand for performance
  • RTL (Right-to-Left) support
  • Custom styling with CssClass

Quick Start

@using Syncfusion.Blazor.InteractiveChat

<div style="height: 500px; width: 600px;">
    <SfChatUI ID="chatUser" User="CurrentUser" Messages="Messages"></SfChatUI>
</div>

@code {
    private UserModel CurrentUser = new UserModel
    {
        ID = "user1",
        User = "Albert",
        AvatarBgColor = "#4a90e2"
    };

    private UserModel OtherUser = new UserModel
    {
        ID = "user2",
        User = "Michale Suyama",
        AvatarBgColor = "#7cb342"
    };

    private List<ChatMessage> Messages = new()
    {
        new ChatMessage
        {
            Text = "Hi, how are you?",
            Author = new UserModel { ID = "user1", User = "Albert" }
        },
        new ChatMessage
        {
            Text = "I'm doing great! How about you?",
            Author = new UserModel { ID = "user2", User = "Michale Suyama" }
        }
    };
}

Common Patterns

Pattern 1: Multi-User Conversation with Status

Display multiple users with online/offline status indicators:

<SfChatUI ID="chat" User="CurrentUser" Messages="Messages">
</SfChatUI>

@code {
    private UserModel CurrentUser = new UserModel
    {
        ID = "user1",
        User = "Albert",
        StatusIconCss = "e-icons e-user-online"
    };

    private List<ChatMessage> Messages = new();
}

Pattern 2: Chat with Typing Indicators

Show when users are typing:

<SfChatUI
    ID="chat"
    User="CurrentUser"
    Messages="Messages"
    TypingUsers="TypingUsers">
</SfChatUI>

@code {
    private List<UserModel> TypingUsers = new();

    private void UserStartTyping(UserModel user)
    {
        TypingUsers.Add(user);
        StateHasChanged();
    }
}

Pattern 3: Custom Message Templates

Personalize message appearance:

<SfChatUI ID="chat" User="CurrentUser" Messages="Messages">
    <MessageTemplate>
        <div class="custom-message">
            <strong>@context.Message.Author.User</strong>
            <p>@((MarkupString)context.Message.Text)</p>
        </div>
    </MessageTemplate>
</SfChatUI>

Pattern 4: Chat with File Attachments

Enable users to share files:

<SfChatUI ID="chat" User="CurrentUser" Messages="Messages">
    <ChatUIAttachment
        Enable
        SaveUrl="@SaveUrl"
        RemoveUrl="@RemoveUrl"
        AllowedFileTypes=".pdf,.docx,.jpg,.png">
    </ChatUIAttachment>
</SfChatUI>

@code {
    private string SaveUrl = "api/upload/save";
    private string RemoveUrl = "api/upload/remove";
}

Pattern 5: Auto-Scroll with Programmatic Control

Automatically scroll to bottom and navigate to specific messages:

<SfChatUI
    @ref="chatRef"
    ID="chat"
    User="CurrentUser"
    Messages="Messages"
    AutoScrollToBottom="true">
</SfChatUI>

<button @onclick="ScrollToBottom">Go to Latest</button>
<button @onclick="FocusInput">Focus Input</button>

@code {
    private SfChatUI chatRef;

    private async Task ScrollToBottom()
    {
        await chatRef.ScrollToBottomAsync();
    }

    private async Task FocusInput()
    {
        await chatRef.FocusAsync();
    }
}

Pattern 6: Message Editing with UpdateMessageAsync

Edit existing messages programmatically:

<SfChatUI @ref="chatRef" ID="chat" User="CurrentUser" Messages="Messages">
</SfChatUI>

@code {
    private SfChatUI chatRef;

    private async Task EditMessage(string messageId, string newText)
    {
        var message = Messages.FirstOrDefault(m => m.ID == messageId);
        if (message != null)
        {
            message.Text = newText;
            await chatRef.UpdateMessageAsync(message, messageId);
        }
    }
}

Pattern 7: Mention System for User Tagging

Enable users to mention others in messages:

<SfChatUI
    ID="chat"
    User="CurrentUser"
    Messages="Messages"
    MentionChar="@"
    MentionUsers="AllUsers"
    ValueSelecting="@OnMentionSelected">
</SfChatUI>

@code {
    private List<UserModel> AllUsers = new()
    {
        new UserModel { ID = "user1", User = "Albert" },
        new UserModel { ID = "user2", User = "Michale" },
        new UserModel { ID = "user3", User = "Reena" }
    };

    private void OnMentionSelected(MentionValueSelectingEventArgs<UserModel> args)
    {
        Console.WriteLine($"User mentioned: {args.ItemData.User}");
    }
}

Pattern 8: Compact Mode for Group Chats

Display all messages left-aligned for group chat style:

<SfChatUI
    ID="chat"
    User="CurrentUser"
    Messages="Messages"
    EnableCompactMode="true">
</SfChatUI>

@code {
    // In compact mode, all messages appear on left side
    // Useful for group chat or support ticket interfaces
}

Key Props

PropertyTypePurpose
IDstringUnique component identifier
UserUserModelCurrent logged-in user
MessagesList<ChatMessage>Conversation messages collection
ShowTimestampboolDisplay message timestamps (default: true)
TimestampFormatstringDate/time format (default: "dd/MM/yyyy hh:mm tt")
ShowTimeBreakboolDisplay date separators between messages
TypingUsersList<UserModel>Users currently typing
AutoScrollToBottomboolAuto-scroll to bottom on new messages (default: false)
EnableCompactModeboolAlign all messages to left side (default: false)
HeightstringComponent height (default: "100%")
WidthstringComponent width (default: "100%")
HeaderTextstringHeader text display (default: "Chat")
ShowHeaderboolShow/hide header (default: true)
ShowFooterboolShow/hide footer (default: true)
PlaceholderstringInput placeholder text (default: "Type your message…")
SuggestionsList<string>Quick reply suggestions
MentionCharcharMention trigger character (default: '@')
MentionUsersList<UserModel>Users available for mention
LoadOnDemandboolLoad messages on demand (default: false)
CssClassstringCustom CSS styling
EnableRtlboolRight-to-left direction support (default: false)
EmptyChatTemplateRenderFragmentCustom empty state content
MessageTemplateRenderFragment<MessageTemplateContext>Custom message rendering
TimeBreakTemplateRenderFragment<TimeBreakTemplateContext>Custom date separator
TypingUsersTemplateRenderFragment<TypingUsersTemplateContext>Custom typing indicator
SuggestionTemplateRenderFragment<SuggestionTemplateContext>Custom suggestion display
FooterTemplateRenderFragmentCustom footer area
PreviewTemplateRenderFragment<PreviewTemplateContext>Custom attachment preview

Programmatic Methods

The Chat UI component provides async methods for programmatic control:

ScrollToBottomAsync()

Scrolls the chat to the bottom, useful for showing latest messages:

@ref="chatRef"

private SfChatUI chatRef;

private async Task ShowLatestMessages()
{
    await chatRef.ScrollToBottomAsync();
}

ScrollToMessageAsync(string messageId)

Navigates to a specific message by ID:

private async Task NavigateToMessage(string targetMessageId)
{
    await chatRef.ScrollToMessageAsync(targetMessageId);
}

UpdateMessageAsync(ChatMessage message, string msgId)

Updates an existing message content:

private async Task EditMessage(string messageId, string newText)
{
    var message = Messages.FirstOrDefault(m => m.ID == messageId);
    if (message != null)
    {
        message.Text = newText;
        await chatRef.UpdateMessageAsync(message, messageId);
    }
}

FocusAsync()

Sets focus on the chat input field:

private async Task FocusChatInput()
{
    await chatRef.FocusAsync();
}

Common Use Cases

  1. Customer Support Chat - Live support widget with agent presence
  2. Team Messaging - Internal communication platform
  3. Bot Integration - AI chatbot with user interface
  4. Community Chat - Multi-user conversation rooms
  5. Help Desk - Ticketing and messaging interface
  6. Social Features - In-app messaging and notifications
  7. Real-time Collaboration - Live chat during shared activities

平台分布

Codex

33.88%
按下载量换算75

Claude

30.78%
按下载量换算68

Cursor

18.63%
按下载量换算41

Gemini CLI

9.98%
按下载量换算22

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills