# @cloro-dev/response-parser 中文文档

规范地址：https://npmcn.com/package/%40cloro-dev/response-parser/

版本：0\.6\.1
npm 元数据更新时间：2026-11-07T23:43:32.567Z
中文译文更新时间：2026-11-10T02:16:13.615Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40cloro-dev/response-parser
原文对照：https://npmcn.com/package/%40cloro-dev/response-parser/?lang=original
项目主页：https://github.com/cloro-dev/response-parser#readme
源码仓库：https://github.com/cloro-dev/response-parser

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：252 kB，32 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：0 个
- 首次发布：2025-12-24T06:47:58.968Z
- 最新版本发布：2026-11-07T23:43:32.271Z
- 近 30 天下载量：7634（2026-10-10 至 2026-11-08，npm 官方下载统计）
- 已发布版本数：21（近 12 个月 21 个）

## 中文简介

解析并渲染来自ChatGPT,双子座,Perplexity,Google AI Mode,Bing AI Mode的AI模型响应,以及更多

## 安装

```sh
npm install @cloro-dev/response-parser
```

也可以使用：`pnpm add @cloro-dev/response-parser`、`yarn add @cloro-dev/response-parser`、`bun add @cloro-dev/response-parser`

## README

# @ cloro-dev/ reswer- parser (英语)

一个强大的TypeScript库,用于解析来自ChatGPT,双子座,Perplexity,Grok,Google AI Overview/Mode,和Bing AI Mode的AI模型响应.

> **框架不可知性**: 此库返回可以在任意框架中渲染的 HTML 字符串( React, Vue, Svelte, vanilla JS等) .

## 特征

-   🤖 **多服务支持**: ChatGPT,双子座,迷幻,AI概览,AI模式,Bing AI模式,Grok
-   🔍 **自动检测**: 从响应结构自动检测 AI 提供者
-   🎨 **内建型号**: 供应商专用型号
-   🔧 **框架不可知性**: 任何框架的纯 HTML 输出
-   🧹 **脚本删除**: 删除 `<script>` 财务报告和审定财务报表 `<noscript>` 要素。 这不是一个完整的 HTML 消毒器.
-   📦 **类型脚本**: 包含全类型脚本支持
-   🎯 **轻巧**: 核心解析没有运行时间依赖性

## 安装

```bash
npm install @cloro-dev/response-parser
# or
yarn add @cloro-dev/response-parser
# or
pnpm add @cloro-dev/response-parser
```

## 快速启动

此库解析 AI 响应并返回 HTML 字符串 。 您可以在任意框架中渲染 HTML .

> **警卫**: 解析器只删除 `<script>` 财务报告和审定财务报表 `<noscript>` 要素。 它不删除事件处理器属性( 例如) `onerror=`)或(或) `javascript:` URLs (英语). 如果 HTML 来自于您不信任的源头, 请进行消毒 `parsed.html` 带有完整的 HTML 消毒器( 例如) [多维化](https://github.com/cure53/DOMPurify)在你做出来之前.

```typescript
import { parseAiResponse, detectProvider } from "@cloro-dev/response-parser";

// Auto-detect provider and parse
const response = await fetchAIResponse();
const parsed = parseAiResponse(response);

console.log(parsed.provider); // 'CHATGPT' | 'GEMINI' | etc.
console.log(parsed.html); // HTML with <script> and <noscript> elements removed
console.log(parsed.text); // Plain text version
```

## 用法实例

### 反应

```tsx
import { parseAiResponse } from "@cloro-dev/response-parser";

function MyComponent() {
  const parsed = parseAiResponse(aiResponse, {
    removeLinks: true
  });

  return (
    <div dangerouslySetInnerHTML={{ __html: parsed.html }} />
  );
}
```

### 阴道

```vue
<script setup>
import { parseAiResponse } from "@cloro-dev/response-parser";

const parsed = parseAiResponse(aiResponse, {
  removeLinks: true
});
</script>

<template>
  <div v-html="parsed.html"></div>
</template>
```

### 丝绒

```svelte
<script>
import { parseAiResponse } from "@cloro-dev/response-parser";

const parsed = parseAiResponse(aiResponse, {
  removeLinks: true
});
</script>

<div>{@html parsed.html}</div>
```

### 香草 Java 脚本

```javascript
import { parseAiResponse } from "@cloro-dev/response-parser";

const parsed = parseAiResponse(aiResponse, {
  removeLinks: true
});

document.getElementById('output').innerHTML = parsed.html;
```

## API 参考

### `parseAiResponse(response, options?)`

与自动检测提供者解析AI响应.

**选项 :**

-   `removeLinks`数字 : `boolean` - 从 HTML 中删除所有超链接(默认 ): `false`(中文(简体) )
-   `removeHeader`数字 : `boolean` - 删除导航条/标题(默认: `false`· ; `true` 用于 AI 概览和 AI 模式。 ChatGPT、 迷惑性、 双子座、 副驾驶、 Grok、 AI 概览和 AI 模式)
-   `removeFooter`数字 : `boolean` - 删除后续输入框/页脚(默认: `false`· ; `true` 用于 AI 概览和 AI 模式。 ChatGPT、 迷惑性、 双子座、 副驾驶、 Grok、 AI 概览和 AI 模式)
-   `removeSidebar`数字 : `boolean` - 删除侧边栏(默认: `false`, ChatGPT, 双子座, 复杂度, 副驾驶和 AI 模式)
-   `removeSources`数字 : `boolean` - 删除来源/参考面板(默认: `false`, ChatGPT, 双子座, 复杂度, 副驾驶 & Grok)

> **说明:** Cookie/privacy旗被自动去除,用于ChatGPT,AI Mode,Copilot,Grok,和Perplexity——不需要选项. 签入的提示会自动去除双子座和双子座.

**回返情况:** `ParsedResponse | null`

```typescript
interface ParsedResponse {
  provider: AIProvider;
  html: string;
  text: string;
  sources?: Array<{
    title: string;
    url: string;
    snippet?: string;
  }>;
}
```

### `detectProvider(response)`

从回复中发现人工智能提供者.

**回返情况:** `AIProvider | null`

```typescript
type AIProvider =
  | 'CHATGPT'
  | 'GEMINI'
  | 'PERPLEXITY'
  | 'COPILOT'
  | 'AIOVERVIEW'
  | 'AIMODE'
  | 'BING_AIMODE'
  | 'GROK';
```

`COPILOT` 已贬值:clano终止其副驾驶端点。 使用 `BING_AIMODE` 对于宾的AI答案.

## 支持供应商

| 提供者 | 状态 | 特征 |
| --- | --- | --- |
| 聊天游戏 | ✅ | 侧边栏、页眉、页脚去除、隐藏自动饼干横幅 |
| 双子座 | ✅ | 边栏、页眉、页脚、去除源 |
| 复杂 | ✅ | 侧边栏、页眉、页脚、删除源头、隐藏自动饼干横幅 |
| 副驾驶 | 已贬值 | 侧边栏、页眉、页脚、删除源头、隐藏自动饼干横幅 |
| 大赦国际概览 | ✅ | 标题、页脚去除、 WIZ 数据提取 |
| AI 模式 | ✅ | 侧边栏、页眉、页脚去除、隐藏自动饼干横幅 |
| 键 AI 模式 | ✅ | 将整个答案(从答案框的) `srcdoc`);标题(理由面板)和去除源 |
| 格鲁克 | ✅ | 删除源代码, 隐藏自动饼干旗 |

## 常用案例

### 删除超链接

```typescript
import { parseAiResponse } from "@cloro-dev/response-parser";

const parsed = parseAiResponse(response, {
  removeLinks: true, // Removes all <a> tags, keeps text
});
```

### 清除视图( 移除 UI 元素)

```typescript
const parsed = parseAiResponse(response, {
  removeHeader: true,  // Remove top navigation bar
  removeFooter: true,  // Remove follow-up input box
  removeLinks: true,   // Remove all hyperlinks
  removeSources: true, // Remove sources/references panel
});
```

### 手动提供方规格

```typescript
import { parseAiResponse, AIProvider } from "@cloro-dev/response-parser";

const parsed = parseAiResponse(response, {
  provider: "CHATGPT",
});
```

### 仅提供检测器

```typescript
import { detectProvider } from "@cloro-dev/response-parser";

const provider = detectProvider(response);
console.log(`Detected: ${provider}`); // 'CHATGPT' | 'GEMINI' | etc.
```

## 从 v0. 1. x 迁移

如果您正在使用 v0. 1. x 的 React 组件, 这里要说明如何迁移 :

### 前 (v0. 1. x 有反应)

```tsx
import { ResponseRenderer } from "@cloro-dev/response-parser/react";

<ResponseRenderer
  response={response}
  removeLinks={true}
  onProviderDetected={(provider) => console.log("Detected:", provider)}
/>
```

### 后 (v. 2. 0 框架- 可知性)

```tsx
import { parseAiResponse } from "@cloro-dev/response-parser";

const parsed = parseAiResponse(response, {
  removeLinks: true
});

console.log("Detected:", parsed.provider);

<div dangerouslySetInnerHTML={{ __html: parsed.html }} />
```

核心解析逻辑是相同的 - 您只需要在您选择的框架里处理 HTML 渲染自己 .

## 变了什么

### 页:1

-   Npm Trusted Publishing and professional. 出版工作流程的首发版,包含 npm 信任出版和出处. 没有库更改

### 页:1

-   ✅ **固定** README说,解析器会消毒HTML. 只删除 `<script>` 财务报告和审定财务报表 `<noscript>` 要素。 新的安全说明让你在制作之前 将未信任的 HTML 消毒
-   ✅ **固定** 这个 `package.json` 仓库 URL 现在指向 `cloro-dev/response-parser`

### 页:1

-   ✅ **固定** 聊天游戏 `removeSources` 现在隐藏移动页面的开源对话框

### 页:1

-   ✅ **固定** `require("@cloro-dev/response-parser")` 失败 `exports is not defined`. 共同JS大楼现在 `dist/index.cjs`
-   ✅ **固定** 复杂 `removeSources` 现在隐藏打开的"源"弹出
-   ✅ **固定** 迷惑饼干横幅(新标出)和登录提示现在总是被隐藏
-   ✅ **固定** 副驾驶 `removeHeader` 财务报告和审定财务报表 `removeSidebar` 不再打破页面布局. `removeSidebar` 不再隐藏引用面板
-   ✅ **固定** 副驾驶 `removeHeader` 现在隐藏日期分隔符
-   ✅ **固定** 聊天游戏 `removeSources` 现在隐藏所有页面的源代码和源代码表
-   ✅ **固定** 聊天游戏 `removeFooter` 财务报告和审定财务报表 `removeSidebar` 不再更改页面结构
-   ✅ **固定** 双子座签注提示现在总是隐藏
-   ✅ **固定** 大赦国际概览 `removeFooter` 现在隐藏 Google 页
-   ✅ **固定** 提供商检测不再依赖于双子座页面的模式顺序,不再报告Google结果页面链接双子座为双子座

### 页:1

-   ✅ **已添加** 复杂 `removeSidebar` 支持(左向导航去除)
-   ✅ **固定** Iframes中的复杂布局渲染(单列流的 CSS 覆盖)
-   ✅ **固定** 复杂 `removeFooter` 现在通过 CSS 隐藏“ 询问后续” 栏目
-   ✅ **固定** 聊天游戏 `removeFooter` 现在隐藏作曲输入形式并折叠空格
-   ✅ **固定** 聊天游戏 `removeSidebar` 现在通过 CSS 隐藏剩余边栏项目
-   ✅ **固定** AI 模式 `removeHeader` 现在隐藏“ 新线程” 作曲按钮
-   ✅ **固定** 副驾驶 `removeHeader` 现在隐藏粘接头( 共享按钮)
-   ✅ **改进** CSS 超接现在是有条件的——只有在相应的时才被注入 `remove*` 选项为真( 复杂度、 ChatGPT、 副驾驶)

### 页:1

-   ✅ **已添加** ChatGPT 自动 cookie 横幅删除
-   ✅ **固定** 处理可变面板宽度的副驾驶源删除正则ex

### 页:1

-   ✅ **已添加** 副驾驶 `removeSources` 财务报告和审定财务报表 `removeSidebar` 支助
-   ✅ **已添加** 副驾驶自动饼干旗的去除
-   ✅ **已添加** AI 模式 `removeSidebar` 支持(删除历史面板)
-   ✅ **固定** AI 模式边栏/脚部去除和检测
-   ✅ **已添加** AI 隐藏模式自动饼干同意横幅

### 页:1

-   ✅ **已添加** `removeSources` 双子座、双子座和格鲁克的选项
-   ✅ **已添加** 自动 cookie/ 空闲地去除模糊和Grok 横幅
-   ✅ **固定** 复杂倒塌的答题容器( JS 动画高程工作)

### v0.3.0 (韩语)

-   ✅ **已添加** Grok 供应商支持
-   ✅ **简化** 代码库和已删除的颜色倒置

### 页:1

-   ✅ **删除** 反应组件和钩子(现在的框架不可知)
-   ✅ **删除** 反应对等依赖
-   ✅ **简化** 返回纯 HTML 字符串的 API
-   ✅ **保留** 核心解析逻辑( 未更改)

### 页:1

-   ✅ **已重命名** `removeNavbar` → `removeHeader` (移动导航条/标题)
-   ✅ **已重命名** `removeFollowup` → `removeFooter` (删除后续输入框/脚)
-   ✅ **扩展** `removeHeader` 对AI 概览和AI模式的支持
-   ✅ **扩展** `removeFooter` 对所有提供者的支持(ChatGPT、迷惑、双子座、副驾驶、AI Overview、AI Mode)
-   ✅ **改进** ChatGPT 样式
-   ✅ **更新** AI 模式和 AI 概览

### v.1.3 (中文(简体) )

-   ✅ **总是删除** `<script>` 财务报告和审定财务报表 `<noscript>` 来自 HTML 的元素
-   ✅ **总是包含** 特定提供者样式
-   ✅ **总是使用** 相对链接的提供者基础 URL
-   ❌ **删除** `theme` 选项(样式是针对提供者的)
-   ❌ **删除** `sanitize` 选项( 总是启用)
-   ❌ **删除** `includeStyles` 选项( 总是启用)
-   ❌ **删除** `baseUrl` 选项(用户提供者默认值)

## 发展

```bash
# Install dependencies
pnpm install

# Build
pnpm build

# Development mode
pnpm dev

# Type check
pnpm type-check

# Lint
pnpm lint
```

## 释放

这个 [发布工作流程](https://npmcn.com/package/%40cloro-dev/response-parser/.github/workflows/publish.yml) 当一个版本标签被推出时,将软件包发布到 npm 。 它使用 npm 信任出版,所以不需要登录到 npm .

1.  在"有什么变化"下增加一栏.
    
2.  增加版本. 这个变化 `package.json` 并创造一份承诺和一份 `v` 标签 :
    
    ```bash
    npm version patch   # 0.5.2 → 0.5.3
    npm version minor   # 0.5.2 → 0.6.0
    npm version major   # 0.5.2 → 1.0.0
    ```
    
3.  推动承诺和标签。 工作流程类型检查、提示、构建和出版:
    
    ```bash
    git push --follow-tags
    ```
    

## 许可证

麻省理工学院

## 常见问题

### @cloro-dev/response-parser 是什么？

解析并渲染来自ChatGPT,双子座,Perplexity,Google AI Mode,Bing AI Mode的AI模型响应,以及更多

### 如何安装 @cloro-dev/response-parser？

在项目目录运行 npm install @cloro-dev/response-parser，或使用 pnpm add / yarn add / bun add。

### @cloro-dev/response-parser 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @cloro-dev/response-parser 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @cloro-dev/response-parser 可以商用吗？

@cloro-dev/response-parser 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @cloro-dev/response-parser 的下载量有多少？

根据 npm 官方下载统计，@cloro-dev/response-parser 在 2026/10/10 – 2026/11/08 这 30 天内被下载 7,634 次，日均约 254 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @cloro-dev/response-parser 还在维护吗？

最新版本 0\.6\.1 发布于 2026/11/08（2 天前）；至今共发布 21 个版本，其中过去 12 个月发布了 21 个；首次发布于 2025/12/24。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

