chat-ui
专注于前端聊天界面开发,通过API为Agent提供交互能力,构建用户友好的对话体验。
npx skills add inferen-sh/skills --skill chat-uiBefore / After 效果对比
1 组构建聊天界面需要从零开始设计和实现前端组件、消息管理、滚动等复杂逻辑,耗时耗力。
利用 `chat-ui` 技能,快速集成预构建的聊天界面组件,大幅提升开发效率和用户体验,确保界面一致性。
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
-
Chatting with Agents - Building chat interfaces
-
Agent UX Patterns - Chat UX best practices
-
Real-Time Streaming - Streaming responses
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)
发表评价
暂无评价
统计数据
用户评分
为此 Skill 评分