name: markdown-new
description: 将任何 URL 转换为干净、AI 友好的 Markdown 格式。使用 Cloudflare 原生 text/markdown 内容类型,节省 80% token。无需 API 密钥,0.1-0.6s 响应时间。
homepage: https://markdown.new
metadata: {"openclaw":{"emoji":"📝","requires":{"bins":["python3","pip"],"env":[],"packages":["requests"]},"primaryEnv":""}}
markdown.new - URL 转 Markdown 技能
将任何网页转换为 AI 友好的 Markdown 格式
- 🚀 80% token 节省 - 相比原始 HTML
- ⚡ 0.1-0.6s 响应 - Cloudflare 边缘加速
- 🔒 无需 API 密钥 - 开箱即用
- 🌐 支持 JS 重页面 - 三层回退机制
🎯 使用场景
当用户请求以下任务时触发:
🚀 快速开始
基础用法
# 转换 URL 为 Markdown
python3 scripts/url_to_markdown.py "https://example.com/article"
# 指定转换方法 (auto/ai/browser)
python3 scripts/url_to_markdown.py "https://example.com" --method browser
# 保留图片
python3 scripts/url_to_markdown.py "https://example.com" --retain-images true
在对话中使用
用户:把这个链接转成 Markdown https://example.com/article
AI: 好的,正在转换...
[调用 markdown-new 技能]
[输出 Markdown 内容]
📋 命令参考
主命令
python3 scripts/url_to_markdown.py <url> [options]
参数说明
| 参数 |
说明 |
默认值 |
可选值 |
url |
要转换的 URL (必填) |
- |
任意 HTTP/HTTPS URL |
--method, -m |
转换方法 |
auto |
auto, ai, browser |
--retain_images |
保留图片 |
false |
true, false |
--output, -o |
输出文件路径 |
不保存 |
文件路径 |
--verbose, -v |
详细输出 |
false |
true, false |
转换方法说明
| 方法 |
说明 |
适用场景 |
速度 |
| auto |
自动选择最佳方法 |
通用 |
⚡⚡⚡ |
| ai |
Workers AI 转换 |
普通 HTML 页面 |
⚡⚡⚡ |
| browser |
浏览器渲染 |
JS 重页面 (SPA) |
⚡⚡ |
💡 使用示例
示例 1: 转换博客文章
# 转换 Medium 文章
python3 scripts/url_to_markdown.py "https://medium.com/@user/ai-agents-guide"
# 输出示例:
# # AI Agents 完全指南
#
# ## 简介
# AI Agents 是自主执行任务的智能系统...
#
# ## 核心组件
# - 感知模块
# - 决策引擎
# - 执行框架
示例 2: 转换技术文档
# 转换 GitHub README
python3 scripts/url_to_markdown.py "https://github.com/openclaw/openclaw"
# 输出示例:
# # OpenClaw
#
# **AI Agent 操作系统**
#
# ## 安装
# ```bash
# npm install -g openclaw
# ```
示例 3: 转换新闻文章
# 转换新闻网站 (JS 重页面,使用 browser 模式)
python3 scripts/url_to_markdown.py "https://example-news.com/breaking-news" --method browser
# 保存为文件
python3 scripts/url_to_markdown.py "https://example.com" -o /tmp/article.md
示例 4: 批量转换
# 批量转换多个 URL
urls=(
"https://example.com/article1"
"https://example.com/article2"
"https://example.com/article3"
)
for url in "${urls[@]}"; do
python3 scripts/url_to_markdown.py "$url" -o "output_$(echo $url | md5sum).md"
done
🔧 技术实现
三层转换管道
┌─────────────────────────────────────────────────────────┐
│ URL 输入 │
└─────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────┐
│ Layer 1: Markdown for Agents (Accept: text/markdown) │
│ - Cloudflare 边缘直接返回 Markdown │
│ - 速度最快,零解析 │
└─────────────────────────────────────────────────────────┘
│ 失败
▼
┌─────────────────────────────────────────────────────────┐
│ Layer 2: Workers AI toMarkdown() │
│ - HTML → Markdown 转换 │
│ - 快速,无需重新获取 │
└─────────────────────────────────────────────────────────┘
│ 失败
▼
┌─────────────────────────────────────────────────────────┐
│ Layer 3: Browser Rendering │
│ - 完整浏览器渲染 │
│ - 支持 JS 重页面 (SPA) │
└─────────────────────────────────────────────────────────┘
核心代码逻辑
def url_to_markdown(url: str, method: str = "auto") -> str:
"""
三层回退转换逻辑
1. 尝试 text/markdown (最快)
2. 回退 Workers AI (快速)
3. 回退 Browser Rendering (完整)
"""
if method == "auto":
# 自动选择:先试 text/markdown
response = requests.get(url, headers={"Accept": "text/markdown"})
if response.headers["Content-Type"] == "text/markdown":
return response.text
# 回退到 API 转换
response = requests.post(
"https://markdown.new/",
json={"url": url, "method": method},
timeout=30
)
return response.text
📊 性能对比
Token 节省
| 格式 |
Token 数 |
对比 |
| 原始 HTML |
16,180 |
100% |
| Markdown |
3,150 |
80% 节省 |
响应时间
| 方法 |
平均时间 |
适用场景 |
| text/markdown |
0.1-0.3s |
Cloudflare 站点 |
| Workers AI |
0.3-0.5s |
普通 HTML |
| Browser |
0.5-1.5s |
JS 重页面 |
⚠️ 限制说明
| 限制 |
说明 |
| 依赖外部服务 |
markdown.new 由 Cloudflare 提供,服务下线则技能失效 |
| 不支持认证页面 |
无法访问需要登录的网页 |
| 不支持私有内容 |
无法访问付费墙后内容 |
| 大文件限制 |
超过 10MB 页面可能超时 |
| 动态内容 |
部分 JS 重页面可能需要 browser 模式 |
🔗 相关资源
📝 更新日志
v1.0.0 (2026-02-24)
- ✅ 初始版本发布
- ✅ 三层转换管道实现
- ✅ 支持 auto/ai/browser 方法
- ✅ 图片保留选项
- ✅ 文件输出支持
此技能已真实写入服务器
创建时间:2026-02-24 16:20 UTC
验证:cat /home/node/.openclaw/workspace/skills/markdown-new/SKILL.md