alaminrifat-file-to-markdown

TotalClaw 作者 totalclaw

通过 markdown.new API 将 PDF、Office、图片等 20+ 格式转为结构化 Markdown,适用于 RAG 与文档摄取。

安装 / 下载方式

TotalClaw CLI推荐
totalclaw skills install shop:totalclaw:totalclaw~alaminrifat-file-to-markdown
cURL直接下载,无需登录
curl -fsSL https://skills.taituai.com/api/skills/totalclaw%3Atotalclaw~alaminrifat-file-to-markdown/file -o alaminrifat-file-to-markdown.md
## 概述(中文)

通过 markdown.new API 将 PDF、Office、图片等 20+ 格式转为结构化 Markdown,适用于 RAG 与文档摄取。

## 技能正文

# 文件转 Markdown — 技能

## 概述

通过 **Cloudflare Workers AI toMarkdown()** 驱动的 `markdown.new` API,将文件转换为**干净、结构化、AI 就绪的 Markdown**。

支持 20+ 种格式,包括文档、电子表格、图片与结构化数据。

无需认证(每 IP 每天 500 次请求)。

---

## 何时使用本技能

在以下场景使用本技能:

* 从文件中提取文本供 LLM 处理
* 将 PDF 或 Office 文件转为 Markdown
* 将数据规范化为结构化文本
* 处理用户上传的文件
* 将网页内容抓取为 Markdown
* 将图片转为 AI 生成的描述与内容

常见 AI 工作流:

* RAG 摄取流水线
* 知识库构建
* 文档摘要
* 数据集提取
* 电子表格分析
* 类 OCR 图片提取

---

## 支持的格式

### 文档

* `.pdf`
* `.docx`
* `.odt`

### 电子表格

* `.xlsx`
* `.xls`
* `.xlsm`
* `.xlsb`
* `.et`
* `.ods`
* `.numbers`

### 图片

* `.jpg`
* `.jpeg`
* `.png`
* `.webp`
* `.svg`

### 文本与结构化数据

* `.txt`
* `.md`
* `.csv`
* `.json`
* `.xml`
* `.html`
* `.htm`

说明:

* 图片转换使用 AI 目标检测与摘要。
* HTML URL 转换使用网页流水线。
* 上传的 HTML 使用 Workers AI 转换。

---

## API 基础 URL

```
https://markdown.new
```

---

## 端点

### 1️⃣ 转换远程文件(简单 GET)

返回纯 Markdown 文本。

```
GET /:file-url
```

示例:

```bash
curl -s "https://markdown.new/https://example.com/report.pdf"
```

---

### 2️⃣ 转换远程文件(JSON 响应)

返回元数据 + Markdown。

```
GET /:file-url?format=json
```

示例:

```bash
curl -s "https://markdown.new/https://example.com/report.pdf?format=json"
```

---

### 3️⃣ 通过 POST 转换远程文件

需要结构化 JSON 响应时使用。

```
POST /
Content-Type: application/json
```

请求体:

```json
{
  "url": "https://example.com/report.pdf"
}
```

示例:

```bash
curl -s https://markdown.new/ \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com/report.pdf"}'
```

---

### 4️⃣ 上传本地文件

文件无法公开访问时使用。

```
POST /convert
multipart/form-data
```

示例:

```bash
curl -s https://markdown.new/convert \
  -F "file=@document.pdf"
```

---

## 响应格式

### URL 转换响应

```json
{
  "success": true,
  "url": "https://example.com/report.pdf",
  "title": "Quarterly Report",
  "content": "# Quarterly Report\n\n...",
  "method": "Workers AI (file)",
  "duration_ms": 1200,
  "tokens": 850
}
```

---

### 上传转换响应

```json
{
  "success": true,
  "data": {
    "title": "Q4 Report",
    "content": "# Q4 Report\n\n...",
    "filename": "report.xlsx",
    "file_type": ".xlsx",
    "tokens": 1250,
    "processing_time_ms": 320
  }
}
```

---

## AI 智能体最佳实践

### 简单工作流优先使用 GET

使用:

```
GET /:url
```

适用场景:

* 仅需 Markdown 文本
* 速度优先
* 不需要元数据

---

### 结构化流水线优先使用 POST

在以下情况使用 POST:

* 需要元数据
* 需要 token 计数
* 已实现监控或日志
* 构建自动化工作流

---

### 文件上传策略

仅在以下情况使用 `/convert`:

* 文件在本地
* 文件为私有
* 访问文件需要认证

否则始终优先使用 URL 转换。

---

## 错误处理策略

智能体应:

1. 检查 `"success": true`
2. 网络失败时重试一次
3. 验证内容长度 > 0
4. 必要时回退到备用提取方式

---

## 速率限制

* 无 API 密钥时每 IP 每天 500 次请求
* 无需注册

智能体应:

* 尽可能缓存结果
* 避免重复转换

---

## 集成示例

### JavaScript (Node.js)

```js
const res = await fetch("https://markdown.new/", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    url: "https://example.com/file.pdf"
  })
});

const data = await res.json();
console.log(data.content);
```

---

### Python

```python
import requests

res = requests.post(
    "https://markdown.new/",
    json={"url": "https://example.com/file.pdf"}
)

data = res.json()
print(data["content"])
```

---

## 智能体决策树

若用户提供:

| 输入类型        | 操作                   |
| --------------- | ---------------------- |
| 公开文件 URL    | 使用 GET 或 POST       |
| 本地文件        | 使用 POST /convert     |
| 图片            | 转换后摘要             |
| 电子表格        | 转换后分析             |
| 网页            | 转换 URL HTML          |

---

## 输出预期

Markdown 应:

* 干净
* 结构化
* 对 AI 友好
* 噪声最少
* 可直接供 LLM 摄取

---

## 限制

* 复杂 PDF 版式可能丢失格式
* 大型电子表格可能被截断
* 图片依赖 AI 解读准确度
* 可能受 token 限制

---

## 摘要

本技能为 AI 系统提供**通用文件转 Markdown 转换层**,具备:

* 无需认证
* 简单 HTTP 接口
* 多格式支持
* 结构化 output
* 快速处理

适用于文档摄取、RAG 流水线与自动化智能体。

---