[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-vercel--ai-elements":3,"tool-vercel--ai-elements":61},[4,18,26,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",148568,2,"2026-04-09T23:34:24",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108111,"2026-04-08T11:23:26",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},6121,"gemini-cli","google-gemini\u002Fgemini-cli","gemini-cli 是一款由谷歌推出的开源 AI 命令行工具，它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言，它提供了一条从输入提示词到获取模型响应的最短路径，无需切换窗口即可享受智能辅助。\n\n这款工具主要解决了开发过程中频繁上下文切换的痛点，让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用，还是执行复杂的 Git 操作，gemini-cli 都能通过自然语言指令高效处理。\n\n它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口，具备出色的逻辑推理能力；内置 Google 搜索、文件操作及 Shell 命令执行等实用工具；更独特的是，它支持 MCP（模型上下文协议），允许用户灵活扩展自定义集成，连接如图像生成等外部能力。此外，个人谷歌账号即可享受免费的额度支持，且项目基于 Apache 2.0 协议完全开源，是提升终端工作效率的理想助手。",100752,"2026-04-10T01:20:03",[52,13,15,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":32,"last_commit_at":59,"category_tags":60,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":66,"readme_en":67,"readme_zh":68,"quickstart_zh":69,"use_case_zh":70,"hero_image_url":71,"owner_login":72,"owner_name":73,"owner_avatar_url":74,"owner_bio":75,"owner_company":76,"owner_location":76,"owner_email":77,"owner_twitter":76,"owner_website":78,"owner_url":79,"languages":80,"stars":97,"forks":98,"last_commit_at":99,"license":100,"difficulty_score":32,"env_os":101,"env_gpu":101,"env_ram":101,"env_deps":102,"category_tags":111,"github_topics":112,"view_count":32,"oss_zip_url":76,"oss_zip_packed_at":76,"status":17,"created_at":116,"updated_at":117,"faqs":118,"releases":148},6092,"vercel\u002Fai-elements","ai-elements","AI Elements is a component library and custom registry built on top of shadcn\u002Fui to help you build AI-native applications faster.","ai-elements 是一个基于 shadcn\u002Fui 构建的 React 组件库，专为加速开发\"AI 原生”应用而设计。它提供了一系列预构建且高度可定制的界面组件，涵盖对话流、消息气泡、代码块展示及推理过程可视化等核心场景，帮助开发者轻松打造专业的 AI 交互界面。\n\n在开发 AI 应用时，从零构建符合现代审美且功能完善的聊天界面往往耗时费力。ai-elements 通过标准化的组件方案解决了这一痛点，让开发者无需重复造轮子，只需关注业务逻辑即可快速落地产品。该工具特别适合熟悉 Next.js 和 Tailwind CSS 的前端工程师及全栈开发者使用。\n\n其独特亮点在于深度集成了 Vercel AI SDK 与 shadcn\u002Fui 生态。通过命令行工具（CLI），它可以自动检测包管理器，一键将组件源码拉取到本地项目中。这意味着所有组件都不是黑盒依赖，而是完全归属你的代码库，支持随心所欲的深度定制。此外，它还智能适配现有的 shadcn 配置，确保主题风格统一。如果你正在构建智能助手或对话型应用，ai-elements 能显著提升你的开发效率。","# ▲ AI Elements\n\n[AI Elements](https:\u002F\u002Felements.ai-sdk.dev) is a component library built on top of [shadcn\u002Fui](https:\u002F\u002Fui.shadcn.com\u002F) to help you build AI-native applications faster.\n\n## Overview\n\nAI Elements provides pre-built, customizable React components specifically designed for AI applications, including conversations, messages, code blocks, reasoning displays, and more. The CLI makes it easy to add these components to your Next.js project.\n\n## Installation\n\nYou can use the AI Elements CLI directly with npx, or install it globally:\n\n```bash\n# Use directly (recommended)\nnpx ai-elements@latest\n\n# Or using shadcn cli\nnpx shadcn@latest add https:\u002F\u002Felements.ai-sdk.dev\u002Fapi\u002Fregistry\u002Fall.json\n```\n\n## Prerequisites\n\nBefore using AI Elements, ensure your project meets these requirements:\n\n- **Node.js** 18 or later\n- **Next.js** project with [AI SDK](https:\u002F\u002Fai-sdk.dev\u002F) installed\n- **shadcn\u002Fui** initialized in your project (`npx shadcn@latest init`)\n- **Tailwind CSS** configured (AI Elements supports CSS Variables mode only)\n\n## Usage\n\n### Install All Components\n\nInstall all available AI Elements components at once:\n\n```bash\nnpx ai-elements@latest\n```\n\nThis command will:\n\n- Set up shadcn\u002Fui if not already configured\n- Install all AI Elements components to your configured components directory\n- Add necessary dependencies to your project\n\n### Install Specific Components\n\nInstall individual components using the `add` command:\n\n```bash\nnpx ai-elements@latest add \u003Ccomponent-name>\n```\n\nExamples:\n\n```bash\n# Install the message component\nnpx ai-elements@latest add message\n\n# Install the conversation component\nnpx ai-elements@latest add conversation\n\n# Install the code-block component\nnpx ai-elements@latest add code-block\n```\n\n### Alternative: Use with shadcn CLI\n\nYou can also install components using the standard shadcn\u002Fui CLI:\n\n```bash\n# Install all components\nnpx shadcn@latest add https:\u002F\u002Felements.ai-sdk.dev\u002Fapi\u002Fregistry\u002Fall.json\n\n# Install a specific component\nnpx shadcn@latest add https:\u002F\u002Felements.ai-sdk.dev\u002Fapi\u002Fregistry\u002Fmessage.json\n```\n\n## Quick Start Example\n\nAfter installing components, you can use them in your React application:\n\n```tsx\n\"use client\";\n\nimport { useChat } from \"@ai-sdk\u002Freact\";\nimport {\n  Conversation,\n  ConversationContent,\n} from \"@\u002Fcomponents\u002Fai-elements\u002Fconversation\";\nimport {\n  Message,\n  MessageContent,\n  MessageResponse,\n} from \"@\u002Fcomponents\u002Fai-elements\u002Fmessage\";\n\nexport default function Chat() {\n  const { messages } = useChat();\n\n  return (\n    \u003CConversation>\n      \u003CConversationContent>\n        {messages.map((message, index) => (\n          \u003CMessage key={index} from={message.role}>\n            \u003CMessageContent>\n              \u003CMessageResponse>{message.content}\u003C\u002FMessageResponse>\n            \u003C\u002FMessageContent>\n          \u003C\u002FMessage>\n        ))}\n      \u003C\u002FConversationContent>\n    \u003C\u002FConversation>\n  );\n}\n```\n\n## How It Works\n\nThe AI Elements CLI:\n\n1. **Detects your package manager** (npm, pnpm, yarn, or bun) automatically\n2. **Fetches component registry** from `https:\u002F\u002Felements.ai-sdk.dev\u002Fapi\u002Fregistry\u002Fregistry.json`\n3. **Installs components** using the shadcn\u002Fui CLI under the hood\n4. **Adds dependencies** and integrates with your existing shadcn\u002Fui setup\n\nComponents are installed to your configured shadcn\u002Fui components directory (typically `@\u002Fcomponents\u002Fai-elements\u002F`) and become part of your codebase, allowing for full customization.\n\n## Configuration\n\nAI Elements uses your existing shadcn\u002Fui configuration. Components will be installed to the directory specified in your `components.json` file.\n\n## Recommended Setup\n\nFor the best experience, we recommend:\n\n1. **AI Gateway**: Set up [Vercel AI Gateway](https:\u002F\u002Fvercel.com\u002Fdocs\u002Fai-gateway) and add `AI_GATEWAY_API_KEY` to your `.env.local`\n2. **CSS Variables**: Use shadcn\u002Fui's CSS Variables mode for theming\n3. **TypeScript**: Enable TypeScript for better development experience\n\n## Contributing\n\nIf you'd like to contribute to AI Elements, please follow these steps:\n\n1. Fork the repository\n2. Create a new branch\n3. Make your changes to the components in `packages\u002Felements`.\n4. Open a PR to the `main` branch.\n\n---\n\nMade with ❤️ by [Vercel](https:\u002F\u002Fvercel.com)\n","# ▲ AI Elements\n\n[AI Elements](https:\u002F\u002Felements.ai-sdk.dev) 是一个基于 [shadcn\u002Fui](https:\u002F\u002Fui.shadcn.com\u002F) 构建的组件库，旨在帮助您更快地构建原生 AI 应用程序。\n\n## 概述\n\nAI Elements 提供了专为 AI 应用设计的预构建、可定制的 React 组件，包括对话、消息、代码块、推理展示等。通过 CLI，您可以轻松地将这些组件添加到您的 Next.js 项目中。\n\n## 安装\n\n您可以直接使用 `npx` 运行 AI Elements CLI，也可以将其全局安装：\n\n```bash\n# 直接使用（推荐）\nnpx ai-elements@latest\n\n# 或者使用 shadcn CLI\nnpx shadcn@latest add https:\u002F\u002Felements.ai-sdk.dev\u002Fapi\u002Fregistry\u002Fall.json\n```\n\n## 先决条件\n\n在使用 AI Elements 之前，请确保您的项目满足以下要求：\n\n- **Node.js** 18 或更高版本\n- 已安装 [AI SDK](https:\u002F\u002Fai-sdk.dev\u002F) 的 **Next.js** 项目\n- 项目中已初始化 **shadcn\u002Fui**（运行 `npx shadcn@latest init`）\n- 配置了 **Tailwind CSS**（AI Elements 仅支持 CSS 变量模式）\n\n## 使用方法\n\n### 安装所有组件\n\n一次安装所有可用的 AI Elements 组件：\n\n```bash\nnpx ai-elements@latest\n```\n\n此命令将执行以下操作：\n\n- 如果尚未配置 shadcn\u002Fui，则进行设置\n- 将所有 AI Elements 组件安装到您配置的组件目录中\n- 向您的项目添加必要的依赖项\n\n### 安装特定组件\n\n使用 `add` 命令安装单个组件：\n\n```bash\nnpx ai-elements@latest add \u003C组件名>\n```\n\n示例：\n\n```bash\n# 安装消息组件\nnpx ai-elements@latest add message\n\n# 安装对话组件\nnpx ai-elements@latest add conversation\n\n# 安装代码块组件\nnpx ai-elements@latest add code-block\n```\n\n### 替代方案：与 shadcn CLI 结合使用\n\n您也可以使用标准的 shadcn\u002Fui CLI 来安装组件：\n\n```bash\n# 安装所有组件\nnpx shadcn@latest add https:\u002F\u002Felements.ai-sdk.dev\u002Fapi\u002Fregistry\u002Fall.json\n\n# 安装特定组件\nnpx shadcn@latest add https:\u002F\u002Felements.ai-sdk.dev\u002Fapi\u002Fregistry\u002Fmessage.json\n```\n\n## 快速入门示例\n\n安装完组件后，您可以在 React 应用中使用它们：\n\n```tsx\n\"use client\";\n\nimport { useChat } from \"@ai-sdk\u002Freact\";\nimport {\n  Conversation,\n  ConversationContent,\n} from \"@\u002Fcomponents\u002Fai-elements\u002Fconversation\";\nimport {\n  Message,\n  MessageContent,\n  MessageResponse,\n} from \"@\u002Fcomponents\u002Fai-elements\u002Fmessage;\n\nexport default function Chat() {\n  const { messages } = useChat();\n\n  return (\n    \u003CConversation>\n      \u003CConversationContent>\n        {messages.map((message, index) => (\n          \u003CMessage key={index} from={message.role}>\n            \u003CMessageContent>\n              \u003CMessageResponse>{message.content}\u003C\u002FMessageResponse>\n            \u003C\u002FMessageContent>\n          \u003C\u002FMessage>\n        ))}\n      \u003C\u002FConversationContent>\n    \u003C\u002FConversation>\n  );\n}\n```\n\n## 工作原理\n\nAI Elements CLI 的工作流程如下：\n\n1. 自动检测您的包管理器（npm、pnpm、yarn 或 bun）\n2. 从 `https:\u002F\u002Felements.ai-sdk.dev\u002Fapi\u002Fregistry\u002Fregistry.json` 获取组件注册表\n3. 在后台使用 shadcn\u002Fui CLI 安装组件\n4. 添加依赖项，并与您现有的 shadcn\u002Fui 设置集成\n\n组件将被安装到您配置的 shadcn\u002Fui 组件目录中（通常为 `@\u002Fcomponents\u002Fai-elements\u002F`），并成为代码库的一部分，从而允许完全自定义。\n\n## 配置\n\nAI Elements 使用您现有的 shadcn\u002Fui 配置。组件将被安装到 `components.json` 文件中指定的目录。\n\n## 推荐设置\n\n为了获得最佳体验，我们建议：\n\n1. **AI 网关**：设置 [Vercel AI 网关](https:\u002F\u002Fvercel.com\u002Fdocs\u002Fai-gateway)，并将 `AI_GATEWAY_API_KEY` 添加到 `.env.local`\n2. **CSS 变量**：使用 shadcn\u002Fui 的 CSS 变量模式进行主题设置\n3. **TypeScript**：启用 TypeScript 以获得更好的开发体验\n\n## 贡献\n\n如果您希望为 AI Elements 做出贡献，请按照以下步骤操作：\n\n1. 分支仓库\n2. 创建新分支\n3. 在 `packages\u002Felements` 中对组件进行修改\n4. 向 `main` 分支提交 PR\n\n---\n\n由 [Vercel](https:\u002F\u002Fvercel.com) 用心打造","# AI Elements 快速上手指南\n\nAI Elements 是一个基于 **shadcn\u002Fui** 构建的组件库，专为加速开发 AI 原生应用（如对话界面、代码块展示、推理过程显示等）而设计。它通过 CLI 工具将组件直接安装到你的项目中，支持完全自定义。\n\n## 环境准备\n\n在开始之前，请确保你的项目满足以下要求：\n\n*   **Node.js**: 版本 18 或更高。\n*   **框架**: 基于 **Next.js** 的项目。\n*   **核心依赖**:\n    *   已安装 [AI SDK](https:\u002F\u002Fai-sdk.dev\u002F) (`@ai-sdk\u002Freact`)。\n    *   已初始化 **shadcn\u002Fui** (运行过 `npx shadcn@latest init`)。\n    *   已配置 **Tailwind CSS** (注意：AI Elements 仅支持 CSS Variables 模式)。\n\n## 安装步骤\n\n你可以直接使用 `npx` 运行 CLI（推荐），无需全局安装。\n\n### 方式一：一键安装所有组件\n该命令会自动检测包管理器，配置 shadcn\u002Fui（如未配置），并安装所有可用的 AI 组件及依赖。\n\n```bash\nnpx ai-elements@latest\n```\n\n### 方式二：安装指定组件\n如果你只需要特定功能，可以使用 `add` 命令单独安装。\n\n```bash\n# 安装消息组件\nnpx ai-elements@latest add message\n\n# 安装对话组件\nnpx ai-elements@latest add conversation\n\n# 安装代码块组件\nnpx ai-elements@latest add code-block\n```\n\n### 方式三：使用 shadcn CLI 安装\n你也可以通过标准的 shadcn 命令从注册表添加组件：\n\n```bash\n# 安装所有组件\nnpx shadcn@latest add https:\u002F\u002Felements.ai-sdk.dev\u002Fapi\u002Fregistry\u002Fall.json\n\n# 安装单个组件\nnpx shadcn@latest add https:\u002F\u002Felements.ai-sdk.dev\u002Fapi\u002Fregistry\u002Fmessage.json\n```\n\n> **提示**：组件将被安装到你 `components.json` 中配置的目录（通常为 `@\u002Fcomponents\u002Fai-elements\u002F`），成为你代码库的一部分，可随意修改。\n\n## 基本使用\n\n安装完成后，即可在 React 组件中引入并使用。以下是一个最简单的聊天界面示例：\n\n```tsx\n\"use client\";\n\nimport { useChat } from \"@ai-sdk\u002Freact\";\nimport {\n  Conversation,\n  ConversationContent,\n} from \"@\u002Fcomponents\u002Fai-elements\u002Fconversation\";\nimport {\n  Message,\n  MessageContent,\n  MessageResponse,\n} from \"@\u002Fcomponents\u002Fai-elements\u002Fmessage\";\n\nexport default function Chat() {\n  const { messages } = useChat();\n\n  return (\n    \u003CConversation>\n      \u003CConversationContent>\n        {messages.map((message, index) => (\n          \u003CMessage key={index} from={message.role}>\n            \u003CMessageContent>\n              \u003CMessageResponse>{message.content}\u003C\u002FMessageResponse>\n            \u003C\u002FMessageContent>\n          \u003C\u002FMessage>\n        ))}\n      \u003C\u002FConversationContent>\n    \u003C\u002FConversation>\n  );\n}\n```\n\n### 推荐配置\n为了获得最佳体验，建议：\n1.  **AI Gateway**: 配置 Vercel AI Gateway 并在 `.env.local` 中添加 `AI_GATEWAY_API_KEY`。\n2.  **主题模式**: 确保 shadcn\u002Fui 使用 CSS Variables 模式以支持主题定制。\n3.  **TypeScript**: 启用 TypeScript 以获得更好的类型提示。","某初创团队正在基于 Next.js 快速开发一款面向开发者的 AI 代码助手，需要构建包含流式对话、代码高亮及思维链展示的原生界面。\n\n### 没有 ai-elements 时\n- **重复造轮子耗时**：团队需从零编写消息气泡、打字机效果及代码块组件，耗费数天时间处理基础 UI 逻辑。\n- **样式适配困难**：手动实现的组件难以完美契合现有的 shadcn\u002Fui 设计系统，导致界面风格割裂，调整 CSS 变量极其繁琐。\n- **AI 特性支持缺失**：缺乏现成的“思维过程（Reasoning）”折叠面板和流式响应容器，需自行研究如何优雅地渲染 AI 生成的中间状态。\n- **维护成本高昂**：自定义组件未经历大规模验证，在处理长文本或复杂 Markdown 渲染时频繁出现布局崩坏，调试压力大。\n\n### 使用 ai-elements 后\n- **极速集成组件**：通过一条 `npx ai-elements@latest add conversation` 命令，瞬间获得生产级的对话与消息组件，开发效率提升数倍。\n- **原生设计融合**：组件基于 shadcn\u002Fui 构建，自动继承项目的 Tailwind CSS 变量配置，无需额外调整即可保持视觉风格高度统一。\n- **开箱即用的 AI 能力**：直接复用内置的 `MessageResponse` 和代码块组件，轻松实现流式输出、代码高亮及推理步骤的动态展开\u002F折叠。\n- **稳定可靠体验**：依托成熟的组件库架构，天然支持复杂的 AI 交互场景，大幅减少了边界情况下的 UI Bug，让团队专注于业务逻辑。\n\nai-elements 将原本需要数天打磨的 AI 交互界面缩短为小时级任务，让开发者能真正专注于打造差异化的智能应用核心。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fvercel_ai-elements_7942cb5a.png","vercel","Vercel","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fvercel_d9ebfb29.png","Develop. Preview. Ship. Creators of Next.js.",null,"contactus@vercel.com","https:\u002F\u002Fvercel.com","https:\u002F\u002Fgithub.com\u002Fvercel",[81,85,89,93],{"name":82,"color":83,"percentage":84},"TypeScript","#3178c6",87.8,{"name":86,"color":87,"percentage":88},"MDX","#fcb32c",11.9,{"name":90,"color":91,"percentage":92},"CSS","#663399",0.2,{"name":94,"color":95,"percentage":96},"JavaScript","#f1e05a",0.1,1904,228,"2026-04-09T19:57:57","NOASSERTION","未说明",{"notes":103,"python":104,"dependencies":105},"这是一个前端 React 组件库，非本地运行的 AI 模型，因此无需 GPU 或特定 Python 环境。必须预先初始化 shadcn\u002Fui 并配置 Tailwind CSS（仅支持 CSS 变量模式）。建议配合 Vercel AI Gateway 使用，并启用 TypeScript 以获得最佳开发体验。","不适用 (基于 Node.js)",[106,107,108,109,110],"Node.js >= 18","Next.js","@ai-sdk\u002Freact","shadcn\u002Fui","Tailwind CSS",[13,15,14],[113,114,115,72],"ai","elements","shadcn-ui","2026-03-27T02:49:30.150509","2026-04-10T11:21:02.224972",[119,124,129,134,139,144],{"id":120,"question_zh":121,"answer_zh":122,"source_url":123},27598,"为什么运行 `npx ai-elements@latest` 或添加组件时报错 \"Failed to parse registry item\" 或 \"type: Required\"？","这通常是因为注册表数据格式临时不匹配或 CLI 版本问题。维护者已修复了相关解析错误（见 commit 2599cf2）。如果遇到此问题，请确保使用最新版本的 CLI 重试。如果是指定组件（如 actions, response）找不到，可能是因为这些组件已被合并到 `Message` 组件中，不再作为独立项存在。","https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fissues\u002F49",{"id":125,"question_zh":126,"answer_zh":127,"source_url":128},27599,"独立的 `Response`、`Actions` 和 `Branch` 组件去哪里了？为什么提示找不到？","这些组件已被弃用并合并到了统一的 `Message` 组件中，以提高可靠性。官方推文和文档已更新说明：\"We merged Response, Actions and Branch into Message\"。请改用 `Message` 组件，并参考最新文档：https:\u002F\u002Fai-sdk.dev\u002Felements\u002Fcomponents\u002Fmessage。旧的安装命令（如 `npx ai-elements@latest add response`）将不再生效。","https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fissues\u002F228",{"id":130,"question_zh":131,"answer_zh":132,"source_url":133},27600,"运行 `npx ai-elements@latest` 时出现 \"TypeError: Cannot read properties of undefined (reading 'filter')\" 错误怎么办？","这是一个已知的 CLI 临时故障，维护者已在 commit 2599cf229fc69153c42610c0d239b10e75787c6a 中修复。该错误通常发生在注册表返回数据格式异常时。解决方法是稍后重试命令，确保网络正常且能访问注册表 URL。如果问题持续，清除 npm 缓存 (`npm cache clean --force`) 后再次尝试。","https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fissues\u002F81",{"id":135,"question_zh":136,"answer_zh":137,"source_url":138},27601,"安装 v6 版本的 ai-elements 时遇到与 v5 `ai` 包不兼容的错误（例如 `ToolUIPart` 定义错误），如何解决？","这是由于 v6 组件依赖尚未正式发布的 `ai` 包特性导致的。维护者已通过补丁临时修复了 `ToolUIPart[\"approval\"]` 的定义问题。如果遇到此类类型错误或运行时错误，请等待官方正式发布更新，或者检查项目中 `ai` 包的版本是否与 ai-elements 的版本要求匹配。建议关注官方发布日志以获取正式的兼容性版本。","https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fissues\u002F186",{"id":140,"question_zh":141,"answer_zh":142,"source_url":143},27602,"是否有类似 Cursor 的 \"Prompt Queue\"（提示词队列）组件计划？","社区正在积极开发类似功能。目前有一个名为 `TaskQueuePanel` 的组件草案正在推进中，它旨在统一管理消息和待办事项队列（使用 `useTaskQueue` hook）。该组件支持折叠\u002F展开视图，并允许从任何地方控制 CRUD 操作。你可以关注相关的 PR 进展，未来可能会作为标准组件加入库中。","https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fissues\u002F84",{"id":145,"question_zh":146,"answer_zh":147,"source_url":123},27603,"为什么直接使用 `npx shadcn@latest add https:\u002F\u002Fregistry.ai-sdk.dev\u002Factions.json` 可以成功，但 `npx ai-elements@latest` 失败？","`ai-elements` 命令行工具内部调用 shadcn 并尝试获取完整的注册表列表（`all.json`），如果注册表元数据中有字段缺失或格式错误（如 `type` 字段未定义），会导致整个列表解析失败。而直接指定单个组件 URL（如 `actions.json`）绕过了列表解析步骤，因此可能成功。如果遇到这种情况，建议暂时使用直接指定组件 URL 的方式安装，直到主 CLI 工具的解析问题被完全修复。",[149,154,159,164,169,174,179,184,189,194,199,204,209,213,217,221,225,229,233,237],{"id":150,"version":151,"summary_zh":152,"released_at":153},180757,"ai-elements@1.9.0","### 小改动\n\n-   2551702：更新文档\n\n### 补丁变更\n\n-   58801e5：添加 PromptInputActionAddScreenshot 组件，用于通过 getDisplayMedia 捕获屏幕截图\n-   80f91b5：更新聊天机器人示例指南，补充 Sonner 中遗漏的步骤\n-   2ebd564：修复 Persona 在 Vite 开发模式下崩溃的问题，方法是延迟 WebGL2 上下文的创建，以避免在 React Strict Mode 的双挂载周期中耗尽浏览器上下文限制。\n-   91d3515：修复 JSXPreview 在流式渲染过程中，渲染内容与解析错误之间闪烁的问题。移除在属性中途被截断的不完整标签，并在流式渲染过程中发生解析错误时回退到上次成功渲染的 JSX。\n-   c3e0b0c：其他改进\n-   ed31a58：将 ConversationMessage 更新为 UIMessage\n-   4c6d2c6：修复文件树中长文件名的图标显示问题\n-   899f089：将 FileTreeFolder 中的选择和切换操作分离，使点击箭头仅用于展开\u002F折叠，而点击文件名仅用于选择\n-   d1bd5f8：由于 Shimmer 现在要求有子节点文本，因此移除 TerminalStatus 中无效的 Shimmer 回退\n-   17b5b39：更新 Streamdown\n-   4f643f7：修复：当消息正在动画变化时，更新消息响应","2026-03-12T07:50:34",{"id":155,"version":156,"summary_zh":157,"released_at":158},180758,"ai-elements@1.8.4","### 补丁变更\n\n-   8bdd7fe：React 优化\n","2026-02-05T19:24:33",{"id":160,"version":161,"summary_zh":162,"released_at":163},180759,"ai-elements@1.8.3","### 补丁变更\n\n-   f0c9bd5：迁移到 Oxlint\n-   cf808a4：添加将对话下载为 Markdown 的功能\n-   357c01d：修复 Reasoning 中的类型泛型问题\n-   9348f89：修复 Reasoning 组件的自动关闭问题\n-   f54b3ef：PromptInput 工具提示及键盘配置支持\n-   a689aec：修复 PromptInput 的响应式问题\n-   c163d7a：特性（示例）：将 SpeechInput 集成到聊天机器人提示页脚中\n-   d98785d：JSX 预览组件\n","2026-02-04T18:40:13",{"id":165,"version":166,"summary_zh":167,"released_at":168},180760,"ai-elements@1.8.2","### 补丁变更\n\n-   cf793dd：添加新的 IDE 示例\n-   cf793dd：弃用 shadcn\u002Fui Spinner 的 Loader 组件\n-   ce1606a：修复 Tool 内边距\n-   cf793dd：code-block.tsx：Shiki 类型中 TokensResult 的 fg\u002Fbg 是可选的，但 TokenizedCode 要求字符串（strictNullChecks 错误）\n-   d78b009：通过将 `max-w-prose` 替换为 `w-full` 来正确对齐思维链下拉箭头，以实现良好的响应式布局。\n-   abeda54：修复相对注册表依赖链接\n","2026-02-02T17:06:59",{"id":170,"version":171,"summary_zh":172,"released_at":173},180761,"ai-elements@1.8.1","### 补丁变更\n\n-   4ad4531：升级 ansi-to-react\n-   03ee8e1：修复消息分支导航组件中被禁用的 classname 属性\n-   005e36a：添加技能\n","2026-01-26T17:37:44",{"id":175,"version":176,"summary_zh":177,"released_at":178},180762,"ai-elements@1.8.0","### 小改动\n\n-   2dd23cf：附件\n-   cc59f4d：创建 Snippet 组件，用于轻量级内联代码展示。\n-   fa00d46：创建 PackageInfo 组件，用于显示依赖版本变更。\n-   97c6e47：创建 Commit 组件，用于展示提交信息。\n-   d444778：创建 StackTrace 组件\n-   1ac4397：创建 Agent UI\n-   e51d04a：升级 CodeBlock\n-   ea591fc：创建支持 ANSI 颜色的 Terminal 组件。\n-   84f15f6：创建用于分层文件展示的 FileTree 组件。\n-   f7b04e6：创建 SchemaDisplay 组件，用于 API 端点可视化。\n-   9876e51：创建 TestResults 组件，用于测试套件可视化。\n-   04242be：新增 Sandbox 组件\n\n### 补丁更新\n\n-   3dfde7c：修复（元素）：调整模型选择器边框\n-   f1a7c74：环境变量组件\n-   8791981：增强 PromptInput，加入 SourceDocument 功能\n-   d1ab925：修复：components.json 中未正确识别 aliases.components\n-   d00f490：允许向 PromptInputTextarea 传递 onKeyDown 属性\n-   8a4a6fe：添加 VoiceSelectorPreview\n-   6231366：为 Tool 的 Collapsible 包裹组件添加缺失的 `group` 类，以实现展开\u002F收起时的 chevron 旋转动画\n-   3c7fee4：修复暗模式下 scrollToBottom 按钮的透明度问题\n-   0679825：使 Tool 组件与 DynamicToolUIPart 兼容\n-   1bc771d：修复：当 PromptInput 中 maxFiles 为 1 且 multiple 为 false 时，仍可添加多于一个文件的问题\n-   045453d：为 PromptInputSubmit 组件添加了 `onStop` 属性。","2026-01-21T05:03:51",{"id":180,"version":181,"summary_zh":182,"released_at":183},180763,"ai-elements@1.7.0","## 变更内容\n* 文档：由 @WillGarman 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F249 中将 '@\u002Fcomponents\u002Fai-elements\u002Fmessage' 的导入合并到 'elements\u002Fconversation' 模块中。\n* 由 @Emmaccen 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F251 中更新了路由，使其在访问不存在的路径时返回 404 错误。\n* 修复（prompt-input）：由 @chaxus 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F257 中将文件输入值重置，以允许重新选择之前移除的文件。\n* 修复（prompt-input）：由 @chaxus 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F256 中调整了图片预览的悬停状态及输入头部的对齐方式。\n* 功能（reasoning）：ReasoningTrigger 现在支持自定义 getThinkingMessage 函数，由 @comynli 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F255 中实现。\n* 构建：由 @FelixTraxler 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F248 中添加了对 ai-sdk v6 中新增状态的错误预期。\n* 修复：由 @Debbl 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F246 中为 shiki 添加了暗色模式支持。\n* 由 @haydenbleasel 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F260 中修复了 prompt inputtsx 中拖放、记忆化清理和错误处理方面的多个问题。\n* 由 @vercel[bot] 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F277 中更新了仓库以应对 React Flight RCE 安全通告。\n* 由 @vercel[bot] 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F276 中更新了依赖项，以应对 React Flight RCE 安全通告。\n* 由 @obadakhalili 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F280 中防止在启用 form 和 globalDrop 时出现重复附件。\n* 由 @obadakhalili 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F279 中处理 matchesAccept 过滤器中的非图片文件类型。\n* 由 @obadakhalili 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F278 中封装了 CoT 搜索结果组件中的各项内容。\n* 由 @obadakhalili 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F274 中确保 `MessageContent` 的最大宽度尊重其父容器的宽度限制。\n* 由 @dependabot[bot] 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F273 中将 actions\u002Fcheckout 从版本 5 升级至版本 6。\n* 由 @dependabot[bot] 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F271 中将 react-player 从 3.3.3 升级至 3.4.0。\n* 由 @dependabot[bot] 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F269 中将 streamdown 从 1.4.0 升级至 1.6.9。\n* 由 @dependabot[bot] 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F268 中将 @vitest\u002Fcoverage-v8 从 4.0.7 升级至 4.0.14。\n* 由 @dependabot[bot] 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F266 中将 react-day-picker 从 9.11.1 升级至 9.11.3。\n* 由 @dependabot[bot] 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F265 中将 react-hook-form 从 7.66.0 升级至 7.67.0。\n* 由 @dependabot[bot] 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F264 中将 @vitejs\u002Fplugin-react 从 5.1.0 升级至 5.1.1。\n* 由 @dependabot[bot] 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F267 中将 playwright 从 1.56.1 升级至 1.57.0。\n* 由 @dependabot[bot] 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F263 中将 ai 从 5.0.89 升级至 5.0.104。\n* 由 @FranciscoMoretti 在 https:\u002F\u002Fgithub.com\u002Fvercel\u002Fai-elements\u002Fpull\u002F283 中为代码块添加了滚动行为。\n* 由 @vercel[bot] 在 https:\u002F 中修复了 React Server Components 的 CVE 漏洞。","2026-01-16T22:21:12",{"id":185,"version":186,"summary_zh":187,"released_at":188},180764,"ai-elements@1.6.3","### 补丁变更\n\n-   b0d5347：修复暗模式下的模型选择器图标\n-   ae31076：修复“对话”元素中的重复溢出问题\n","2025-11-17T03:34:16",{"id":190,"version":191,"summary_zh":192,"released_at":193},180765,"ai-elements@1.6.2","### 补丁变更\n\n-   a1b1929：修复：更新 PromptInputSpeechButton 中的 SpeechRecognition 使用方式\n","2025-11-14T15:37:40",{"id":195,"version":196,"summary_zh":197,"released_at":198},180766,"ai-elements@1.6.1","### 补丁变更\n\n-   f887f5c：更新 PromptInputMessage，使用 AI SDK 类型\n-   6fa1d46：修复（推理）：“思考了几秒钟”消息现在可被触发\n-   d3d91ba：移除未使用的 hast 类型\n-   e6c656c：修复（模型选择器）：为 ModelSelectorContent 添加 DialogTitle\n-   342bb23：修复 prompt-input 的 onSubmit 类型\n-   70bf5fd：杂项：修复检查点溢出问题\n","2025-11-13T01:02:35",{"id":200,"version":201,"summary_zh":202,"released_at":203},180767,"ai-elements@1.6.0","### Minor Changes\n\n-   3c34582: Create new Checkpoint component\n-   1ac23c8: Add MessageAttachments\n-   29c2d43: Add ModelSelector component\n-   d5f1159: Merge Actions, Branch and Response into Message\n\n### Patch Changes\n\n-   5a5342e: fix: ensure prompt input attachments render inside header\n-   478ec07: Use CornerDownLeftIcon for prompt input\n-   227d1ca: change ChainOfThoughtStep label and description types from string to ReactNode\n-   61a25e5: Fix open-in-chat trigger icon\n-   0a5297c: Remove Controls from Canvas\n-   5c16b4f: Add `use client` directive to open-in-chat\n-   328173b: Polyfill ToolUIPart[\"approval\"] in latest AI SDK\n-   0c53bac: Add support for multiple CLI args\n","2025-11-07T02:58:18",{"id":205,"version":206,"summary_zh":207,"released_at":208},180768,"ai-elements@1.5.0","### Minor Changes\n\n-   9ede551: Open source documentation\n\n### Patch Changes\n\n-   619416a: Add AI Elements MCP server\n-   dccf114: replace jsdom with Vitest Browser Mode\n-   40067f2: chore: lint @typescript-eslint\u002Fno-redeclare\n-   cdd4d0b: test: add vitest-fail-on-console and improve test stability\n-   a7128ab: feat: improve layout and design of PromptInputAttachments #151\n-   4a5afad: Fix type error in Edge component by using const assertion\n-   2135d80: refactor: replace react-syntax-highlighter with shiki in CodeBlock\n-   2fce23c: Fix type error in InlineCitationCardTrigger by checking sources[0] directly\n-   a848cf8: refactor: update tokenlens api\n-   27dbfc2: Use optional chaining for speech recognition result access\n-   686577d: feat: add tool approval state and tool approval component\n","2025-10-28T07:01:14",{"id":210,"version":211,"summary_zh":76,"released_at":212},180769,"ai-elements@1.4.0","2025-10-28T01:01:34",{"id":214,"version":215,"summary_zh":76,"released_at":216},180770,"ai-elements@1.3.1","2025-10-28T01:01:25",{"id":218,"version":219,"summary_zh":76,"released_at":220},180771,"ai-elements@1.3.0","2025-10-28T01:01:16",{"id":222,"version":223,"summary_zh":76,"released_at":224},180772,"ai-elements@1.2.1","2025-10-28T01:01:05",{"id":226,"version":227,"summary_zh":76,"released_at":228},180773,"ai-elements@1.2.0","2025-10-28T01:00:49",{"id":230,"version":231,"summary_zh":76,"released_at":232},180774,"ai-elements@1.1.1","2025-10-28T01:00:38",{"id":234,"version":235,"summary_zh":76,"released_at":236},180775,"ai-elements@1.1.0","2025-10-28T01:00:27",{"id":238,"version":239,"summary_zh":76,"released_at":240},180776,"ai-elements@1.0.0","2025-10-28T01:00:15"]