首页龙虾技能列表 › Markdown Formatter — Markdown 格式化与美化工具

Markdown Formatter — Markdown 格式化与美化工具

v1.0.0

格式化和美化 Markdown 文档,支持可配置样式。保留结构,修复格式,确保一致性。支持多种样式指南(CommonMark、GitHub 风格、自定义规则),处理从简单清理到复杂重排的所有任务。

8· 12,200·0 当前·0 累计
by @michael-laffin·MIT-0
下载技能包
License
MIT-0
最后更新
2026/2/4
安全扫描
VirusTotal
无害
查看报告
OpenClaw
安全
medium confidence
此包是一个本地 Markdown 格式化工具,未请求任何凭据,其行为与描述相符,但提供的代码包含多个 bug 和质量问题,在处理敏感数据或生产环境前应审查。
评估建议
此技能看似如其宣称(Markdown 格式化器),未请求凭据或外部网络访问,但提供的代码包含多个编程错误和可疑的正则表达式/逻辑,可能导致崩溃或格式错误。安装/运行前:- 本地审查和修复代码(特别是 STYLE_GUIDES 对象语法错误、未定义变量如 fixListMarkers 中的 opts、格式错误的正则表达式和替换逻辑);- 在沙盒/容器中运行附带的 test.js 观察行为;- 除非信任技能,否则不要将敏感系统文件路径传递给 formatBatch(它将读取进程有权限读取的任何文件);- 由于存储库/源代码未知,建议在隔离环境中运行,并考虑从可信的上游存储库获取包(或替换为知名的格式化工具如 Prettier 或 remark)以用于生产。信心度为中等:意图清晰一致,但代码质量问题降低了对安全性的信心。...
详细分析 ▾
用途与能力
名称/描述、SKILL.md、README 和代码都描述了一个接受 Markdown 文本或文件路径并返回格式化文本的 Markdown 格式化器/林特。函数 formatMarkdown、formatBatch 和 lintMarkdown 与声明的目的相符,没有额外的服务、凭据或无关的依赖项请求。
指令范围
SKILL.md 指示代理读取和格式化文件(formatBatch 接受文件路径)。代码通过 fs.readFileSync 读取文件(对于批量文件格式化器预期如此)。然而,SKILL.md 不限制可以传递的路径,因此如果使用任意路径调用此技能,则可以读取代理进程有权限读取的任何文件。另外,SKILL.md 不限制网络活动(代码中没有),也不请求额外的环境/上下文。
安装机制
没有安装规格;仅为指令加本地代码。安装期间没有从远程 URL 下载内容,且包中未指定安装时操作。
凭证需求
技能未声明任何必需的环境变量、凭据或配置路径。代码仅使用核心 Node 模块(fs、path)和本地 config.json — 适合本地格式化器。
持久化与权限
always 为 false 且技能为用户可调用;它不要求始终启用。代理自主调用技能的默认能力未更改(disable-model-invocation: false)——这是平台默认值,自身并非红旗。注意,自主调用 + 读取文件系统路径的函数可以用于访问本地文件,如果代理决定使用敏感路径调用技能。
安全有层次,运行前请审查代码。

License

MIT-0

可自由使用、修改和再分发,无需署名。

运行时依赖

无特殊依赖

版本

latestv1.0.02026/2/4
● 无害

安装命令 点击复制

官方npx clawhub@latest install markdown-formatter
镜像加速npx clawhub@latest install markdown-formatter --registry https://cn.clawhub-mirror.com

技能文档

Vernox 实用技能 - 让您的 Markdown 更加专业。

概述

Markdown-Formatter 是一款强大的 Markdown 文档格式化、代码检查和美化工具。支持多种风格指南(CommonMark、GitHub 风格 Markdown、自定义规则),能够处理从简单清理到复杂重格式化的所有工作。

功能

✅ 格式化引擎

  • 多种风格指南(CommonMark、GitHub、自定义)
  • 保留文档结构
  • 处理嵌套列表、代码块、表格
  • 可配置的行宽和缩进
  • 智能标题规范化
  • 链接引用优化

✅ 代码检查与清理

  • 移除尾部空白
  • 规范化行尾符号(LF vs CRLF)
  • 修复不一致的列表标记
  • 移除末尾空行
  • 修复多个连续空行

✅ 美化功能

  • 改善标题层级
  • 优化列表格式
  • 格式化代码块,保持适当间距
  • 按配置宽度换行长行
  • 在强调内容周围添加适当间距

✅ 验证功能

  • 检查 Markdown 语法有效性
  • 报告代码检查错误
  • 建议改进方案
  • 验证链接和引用

安装

clawhub install markdown-formatter

快速开始

格式化文档

const result = await formatMarkdown({
  markdown: '# My Document\n\n\n## Section 1\nContent here...',
  style: 'github',
  options: {
    maxWidth: 80,
    headingStyle: 'atx'
  }
});
console.log(result.formattedMarkdown);

美化多个文件

const results = await formatBatch({
  markdownFiles: ['./doc1.md', './doc2.md', './README.md'],
  style: 'github',
  options: {
    wrapWidth: 80
  }
});
results.forEach(result => {
  console.log(${result.file}: ${result.warnings} warnings);
});

代码检查与修复

const result = await lintMarkdown({
  markdown: '# My Document\n\n\nBad list\n\n- item 1\n- item 2',
  style: 'github'
});
console.log(Errors found: ${result.errors});
console.log(Fixed: ${result.fixed});

工具函数

formatMarkdown

根据风格指南格式化 Markdown 内容。

参数:

  • markdown(字符串,必需):要格式化的 Markdown 内容
  • style(字符串,必需):风格指南名称('commonmark'、'github'、'commonmark'、'custom')
  • options(对象,可选):
- maxWidth(数字):行换行宽度(默认值:80) - headingStyle(字符串):'atx' | 'setext' | 'underlined' | 'consistent'(默认值:'atx') - listStyle(字符串):'consistent' | 'dash' | 'asterisk' | 'plus'(默认值:'consistent') - codeStyle(字符串):'fenced' | 'indented'(默认值:'fenced') - emphasisStyle(字符串):'underscore' | 'asterisk'(默认值:'asterisk') - strongStyle(字符串):'asterisk' | 'underline'(默认值:'asterisk') - linkStyle(字符串):'inline' | 'reference' | 'full'(默认值:'inline') - preserveHtml(布尔值):保留 HTML 原样(默认值:false) - fixLists(布尔值):修复不一致的列表标记(默认值:true) - normalizeSpacing(布尔值):修复格式周围的间距(默认值:true)

返回:

  • formattedMarkdown(字符串):格式化后的 Markdown
  • warnings(数组):警告消息数组
  • stats(对象):格式化统计信息
  • lintResult(对象):代码检查错误和修复
  • originalLength(数字):原始字符数
  • formattedLength(数字):格式化后字符数

formatBatch

一次格式化多个 Markdown 文件。

参数:

  • markdownFiles(数组,必需):文件路径数组
  • style(字符串):风格指南名称
  • options(对象,可选):与 formatMarkdown 相同的选项

返回:

  • results(数组):格式化结果数组
  • totalFiles(数字):处理的文件数
  • totalWarnings(数字):所有文件的警告总数
  • processingTime(数字):处理耗时(毫秒)

lintMarkdown

检查 Markdown 问题但不进行格式化。

参数:

  • markdown(字符串,必需):要检查的 Markdown 内容
  • style(字符串):风格指南名称
  • options(对象,可选):额外的代码检查选项
- checkLinks(布尔值):验证链接(默认值:true) - checkHeadingLevels(布尔值):检查标题层级(默认值:true) - checkListConsistency(布尔值):检查列表标记一致性(默认值:true) - checkEmphasisBalance(布尔值):检查强调配对(默认值:false)

返回:

  • errors(数组):错误对象数组
  • warnings(数组):警告对象数组
  • stats(对象):代码检查统计信息
  • suggestions(数组):建议的修复方案

风格指南

CommonMark(默认)

  • 标准 CommonMark 规范
  • ATX 标题(ATX 风格)
  • 引用式链接 [text]
  • 下划线强调
  • 星号强调

GitHub 风格 Markdown

  • 带 `` 的围栏代码块
  • 管道分隔的表格
  • 任务列表 [ ] 带 x
  • 删除线 ~~text~~
  • 自动链接

Consistent(默认)

  • 一致的 ATX 标题层级
  • 一致的列表标记
  • 一致的强调样式
  • 一致的代码块样式

自定义

  • 用户定义的规则
  • 基于正则表达式的转换
  • 自定义标题样式

使用场景

文档清理

  • 修复 README 文件中的不一致格式
  • 规范化标题样式
  • 修复列表标记
  • 清理多余空白

内容创作

  • 使用一致样式格式化文章
  • 在发布前美化博客文章
  • 确保一致的标题层级

技术写作

  • 格式化代码文档
  • 美化 API 规范
  • 清理来自 LLM 的混乱 Markdown

README 生成

  • 格式化并美化项目 README 文件
  • 确保一致的结构
  • 为开源项目提供专业外观

Markdown 转换

  • 将 HTML 转换为 Markdown
  • 从一种风格重格式化到另一种
  • 从其他格式提取并格式化 Markdown

配置

编辑 config.json

{
  "defaultStyle": "github",
  "maxWidth": 80,
  "headingStyle": "atx",
  "listStyle": "consistent",
  "codeStyle": "fenced",
  "emphasisStyle": "asterisk",
  "linkStyle": "inline",
  "customRules": [],
  "linting": {
    "checkLinks": true,
    "checkHeadingLevels": true,
    "checkListConsistency": true
  }
}

示例

简单格式化

const result = await formatMarkdown({
  markdown: '# My Title\n\n\nThis is content.',
  style: 'github'
});
console.log(result.formattedMarkdown);

复杂美化

const result = await formatMarkdown({
  markdown: '# Header 1\n## Header 2\n\nParagraph...',
  style: 'github',
  options: {
    fixLists: true,
    normalizeSpacing: true,
    wrapWidth: 80
  }
});
console.log(result.formattedMarkdown);

代码检查与修复

const result = await lintMarkdown({
  markdown: '# Title\n\n- Item 1\n- Item 2\n\n## Section 2',
  style: 'github'
});
console.log(Errors: ${result.errors.length});
result.errors.forEach(err => {
  console.log( - ${err.message} at line ${err.line});
});

// 自动修复 const fixed = await formatMarkdown({ markdown: result.fixed, style: 'github' });

批量处理

const results = await formatBatch({
  markdownFiles: ['./doc1.md', './doc2.md', './README.md'],
  style: 'github'
});
console.log(Processed ${results.totalFiles} files);
console.log(Total warnings: ${results.totalWarnings}`);

性能

速度

  • 小型文档(<1000 字):<50ms
  • 中型文档(1000-5000 字):50-200ms
  • 大型文档(5000+ 字):200-500ms

准确性

  • 结构保留:100%
  • 风格指南合规性:95%+
  • 空白规范化:100%

错误处理

无效输入

  • 清晰的错误消息
  • 建议检查文件路径
  • 在格式化前验证 Markdown 内容

Markdown 解析错误

  • 清晰地报告解析问题
  • 建议手动修复
  • 遇到错误时优雅降级

文件 I/O 错误

  • 包含文件路径的清晰错误
  • 检查文件是否存在
  • 建议修复权限
  • 批量处理遇到错误时继续执行

故障排除

格式未应用

  • 检查样式是否正确
  • 验证选项是否被正确应用
  • 检查是否有冲突的规则
  • 用简单示例测试

代码检查显示太多错误

  • 某些错误是风格选择,不是真正的问题
  • 考虑禁用特定检查
  • 使用自定义规则满足特定需求

技巧

获得最佳效果

  • 使用一致的风格指南
  • 启用 fixLists、normalizeSpacing 选项
  • 根据您的输出媒介设置适当的 maxWidth
  • 先在小样本上测试

性能优化

  • 批量处理大文件
  • 禁用未使用的代码检查
  • 对常见模式使用更简单的规则

许可证

MIT


格式化 Markdown。让您的文档保持美观。 🔮

数据来源:ClawHub ↗ · 中文优化:龙虾技能库
OpenClaw 技能定制 / 插件定制 / 私有工作流定制

免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制

了解定制服务