大模型应用
在 React/Next.js 中构建 AI Agent…
适用于需要快速搭建带运行时、工具调用、人工审批、流式输出和声明式 UI 的 React/Next.js AI 聊天、agentic UI、SaaS copilot 或助手界面的场景。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 59/100 ×0.15
适用场景
在 React/Next.js 中构建 特定
解决思路
- 安装 belt CLI skill:运行 `npx skills add belt-sh/cli`。
- 用 shadcn 安装 Agent 组件:运行 `npx shadcn@latest add https://ui.inference.sh/r/agent.json`。
- 安装代理路由所需 SDK:运行 `npm install @inferencesh/sdk`。
- 在 Next.js 中创建 API 代理路由:新建 `app/api/inference/proxy/route.ts`,写入 `import { route } from '@inferencesh/sdk/proxy/nextjs'; export const { GET, POST, PUT } = route;`。
- 配置环境变量:在 `.env.local` 中设置 `INFERENCE_API_KEY=inf_...`。
- 在页面中使用组件:从 `@/registry/blocks/agent/agent` 导入 `Agent`,传入 `proxyUrl="/api/inference/proxy"` 和 `agentConfig`,其中 `agentConfig` 包含 `core_app.ref`(如 `openrouter/claude-haiku-45@0fkg6xwb`)、`description`、`system_prompt`。
- 利用组件内置能力:无需后端逻辑即可获得 runtime、工具生命周期(pending、progress、approval、results)、human-in-the-loop 审批流、声明式 JSON widgets、实时 token streaming、浏览器端执行的 client-side tools。
- 如需客户端工具,使用 `createScopedTools`:从 `./blocks/agent/lib/client-tools` 导入 `createScopedTools`,用 `useRef<HTMLFormElement>(null)` 创建 `formRef`,调用 `createScopedTools(formRef)` 得到 `scopedTools`,并在 `Agent` 的 `config.tools` 中传入该变量。
- 配合客户端表单填充时,在 `system_prompt` 中说明可使用 `scan_ui` 和 `fill_field` 工具来填表(如 `'You can fill forms using scan_ui and fill_field tools.'`)。
- 按需设置 `Agent` Props:`proxyUrl` 为 API 代理端点;`name` 为可选 agent 名称;`config` 为 `AgentConfig`;`allowFiles` 启用文件上传;`allowImages` 启用图片上传。
- 按需安装相关技能:`npx skills add inference-sh/skills@chat-ui`(聊天 UI 构建块)、`npx skills add inference-sh/skills@widgets-ui`(JSON 声明式 widgets)、`npx skills add inference-sh/skills@tools-ui`(工具生命周期 UI)。
- 需要进一步配置时查阅文档:Agents Overview、Agent SDK、Human-in-the-Loop、Agents That Generate UI、Agent UX Patterns,以及组件文档 `ui.inference.sh/blocks/agent`。
适用边界 · 注意事项
- 不适用于非 React/Next.js 项目,或无法提供 Next.js API route 的项目。
- 需要 inference.sh/ui.inference.sh 的托管服务、`INFERENCE_API_KEY` 和 `@inferencesh/sdk`;不想依赖该云服务或账号时不适用。
- 若只需要纯静态聊天 UI,不需要 agent runtime、工具审批、widgets、流式输出等内置能力,可能过重。