C

chat-ui

by @inferen-shv
4.5(560)

专注于前端聊天界面开发,通过API为Agent提供交互能力,构建用户友好的对话体验。

chat-uiuser-interfaceweb-componentsreal-time-communicationfrontend-developmentGitHub
安装方式
npx skills add inferen-sh/skills --skill chat-ui
compare_arrows

Before / After 效果对比

1
使用前

构建聊天界面需要从零开始设计和实现前端组件、消息管理、滚动等复杂逻辑,耗时耗力。

使用后

利用 `chat-ui` 技能,快速集成预构建的聊天界面组件,大幅提升开发效率和用户体验,确保界面一致性。

SKILL.md

chat-ui

Chat UI Components

Chat building blocks from ui.inference.sh.

Quick Start

# Install chat components
npx shadcn@latest add https://ui.inference.sh/r/chat.json

Components

Chat Container

import { ChatContainer } from "@/registry/blocks/chat/chat-container"

<ChatContainer>
  {/* messages go here */}
</ChatContainer>

Messages

import { ChatMessage } from "@/registry/blocks/chat/chat-message"

<ChatMessage
  role="user"
  content="Hello, how can you help me?"
/>

<ChatMessage
  role="assistant"
  content="I can help you with many things!"
/>

Chat Input

import { ChatInput } from "@/registry/blocks/chat/chat-input"

<ChatInput
  onSubmit={(message) => handleSend(message)}
  placeholder="Type a message..."
  disabled={isLoading}
/>

Typing Indicator

import { TypingIndicator } from "@/registry/blocks/chat/typing-indicator"

{isTyping && <TypingIndicator />}

Full Example

import {
  ChatContainer,
  ChatMessage,
  ChatInput,
  TypingIndicator,
} from "@/registry/blocks/chat"

export function Chat() {
  const [messages, setMessages] = useState([])
  const [isLoading, setIsLoading] = useState(false)

  const handleSend = async (content: string) => {
    setMessages(prev => [...prev, { role: 'user', content }])
    setIsLoading(true)
    // Send to API...
    setIsLoading(false)
  }

  return (
    <ChatContainer>
      {messages.map((msg, i) => (
        <ChatMessage key={i} role={msg.role} content={msg.content} />
      ))}
      {isLoading && <TypingIndicator />}
      <ChatInput onSubmit={handleSend} disabled={isLoading} />
    </ChatContainer>
  )
}

Message Variants

Role Description

user User messages (right-aligned)

assistant AI responses (left-aligned)

system System messages (centered)

Styling

Components use Tailwind CSS and shadcn/ui design tokens:

<ChatMessage
  role="assistant"
  content="Hello!"
  className="bg-muted"
/>

Related Skills

# Full agent component (recommended)
npx skills add inference-sh/skills@agent-ui

# Declarative widgets
npx skills add inference-sh/skills@widgets-ui

# Markdown rendering
npx skills add inference-sh/skills@markdown-ui

Documentation

Component docs: ui.inference.sh/blocks/chat Weekly Installs8.6KRepositoryinferen-sh/skillsGitHub Stars159First Seen6 days agoSecurity AuditsGen Agent Trust HubFailSocketPassSnykPassInstalled onclaude-code6.9Kgemini-cli6.0Kcodex6.0Kamp6.0Kgithub-copilot6.0Kopencode6.0K

用户评价 (0)

发表评价

效果
易用性
文档
兼容性

暂无评价

统计数据

安装量14.0K
评分4.5 / 5.0
版本
更新日期2026年5月17日
对比案例1 组

用户评分

4.5(560)
5
69%
4
31%
3
0%
2
0%
1
0%

为此 Skill 评分

0.0

兼容平台

🔧Claude Code
🔧OpenClaw
🔧OpenCode
🔧Codex
🔧Gemini CLI
🔧GitHub Copilot
🔧Amp
🔧Kimi CLI

时间线

创建2026年3月17日
最后更新2026年5月17日