back
loading skill details...
自动修复JSON中的尾随逗号、单引号、未引号键名、注释和十六进制数字等常见语法错误,支持备份与合法性验证。
---
slug: json-repair-tool-free
name: json-repair-tool-free
version: 1.0.0
displayName: JSON修复工具免费版
summary: 轻量级JSON修复工具,自动修复尾随逗号、单引号、未引号键名等常见语法错误。
license: Proprietary
edition: free
description: JSON修复工具免费版提供常见JSON语法错误的自动修复能力,帮助开发者快速修复因手写或编辑器问题导致的格式问题。核心能力:修复尾随逗号、单引号转双引号、未引号键名补全、JS风格注释移除、十六进制数字转十进制;修复前自动备份,修复后验证合法性;沙箱化解析确保安全。Use
when 需要代码生成、编程辅助、调试测试、开发部署时使用。不适用于无明确技术栈的模糊需求。
tags:
- 集成工具
- JSON
- 修复
- 开发者工具
tools:
- - read
- exec
homepage: https://skillhub.cn
pricing_tier: L2
pricing_model: per_use
suggested_price: 19.9
tools: ["read", "write", "exec"]
tags: "工具,效率,自动化"
---
# JSON修复工具(免费版)
本工具自动修复JSON文件中的常见语法错误,包括尾随逗号、单引号、未引号键名、注释、十六进制数字等,帮助开发者快速恢复JSON的可解析性。
## 概述
JSON标准较为严格,不支持尾随逗号、单引号、注释等宽松语法。然而实际开发中,手写JSON或从其他格式转换时常产生这些"宽松"错误,导致解析失败。本工具围绕"修复"场景,自动识别并修复5类常见错误,将宽松JSON转换为标准JSON。
## 核心能力
### 支持的修复类型
| 错误类型 | 示例 | 修复后 | 说明 |
|----|---|---|---|
| 尾随逗号 | `{"a":1,}` | `{"a":1}` | 移除对象/数组末尾多余逗号 |
| 单引号 | `{'a':'b'}` | `{"a":"b"}` | 单引号替换为双引号 |
| 未引号键名 | `{key:"v"}` | `{"key":"v"}` | 键名补全双引号 |
| JS注释 | `//注释` 或 `/*注释*/` | (移除) | 移除JS风格注释 |
| 十六进制数字 | `0xFF` | `255` | 十六进制转十进制 |
**输入**: 用户提供支持的修复类型所需的指令和必要参数。
**处理**: 解析支持的修复类型的输入参数,完成核心逻辑,返回结构化响应。
**输出**: 返回支持的修复类型的响应数据,包含状态码、结果和日志。
### 安全机制
- **备份机制**:修复前自动创建`.bak`备份文件
- **沙箱解析**:使用vm沙箱(runInNewContext),隔离全局作用域
- **修复后验证**:修复完成后验证JSON合法性,不合法则回滚
- **不执行代码**:仅解析结构,不执行任何函数调用
**输入**: 用户提供安全机制所需的指令和必要参数。
**处理**: 解析安全机制的输入参数,完成核心逻辑,返回结构化响应。
**输出**: 返回安全机制的响应数据,包含状态码、结果和日志。
### 修复报告
- 修复前文件大小
- 修复后文件大小
- 修复的错误类型与数量
- 是否成功(合法JSON)
**输入**: 用户提供修复报告所需的指令和必要参数。
**处理**: 解析修复报告的输入参数,完成核心逻辑,返回结构化响应。
**输出**: 返回修复报告的响应数据,包含状态码、结果和日志。
**能力覆盖范围**:本skill的核心能力覆盖以下场景关键词:轻量级、JSON、修复工具、自动修复尾随逗号、单引号、未引号键名等常见、语法错误、修复工具免费版提、供常见、语法错误的自动修、复能力、帮助开发者快速修、复因手写或编辑器、问题导致的格式问、核心能力、修复尾随逗号、单引号转双引号、未引号键名补全、风格注释移除、十六进制数字转十、修复前自动备份、修复后验证合法性、沙箱化解析确保安、Use、when、需要代码生成、编程辅助、调试测试、开发部署时使用、不适用于无明确技、术栈的模糊需求等。
## 使用场景
| 场景 | 角色 | 价值 |
|:-----|:-----|:-----|
| 配置文件修复 | 运维工程师 | 修复手写配置的语法错误 |
| 日志数据修复 | 数据分析师 | 修复日志中的格式问题 |
| 手写JSON整理 | 开发者 | 将宽松写法转为标准JSON |
| 第三方数据清洗 | 数据工程师 | 修复外部数据源的格式问题 |
| 教学示例纠错 | 教师/学生 | 修复练习中的语法错误 |
| 迁移数据修复 | 数据库管理员 | 修复迁移过程中的格式损坏 |
## 使用流程
### 场景1:修复单个文件
向Agent发送指令:
## 输入格式
| 参数名 | 类型 | 必填 | 说明 |
|---:|---:|---:|---:|
| input | string | 是 | JSON修复工具免费版处理的输入数据或指令 |
| options | object | 否 | 附加配置选项,如模式选择、格式偏好等 |
| callback_url | string | 否 | 异步处理完成后的回调通知URL |
```
修复config/broken.json文件中的JSON语法错误。
```
Agent将:
1. 读取文件内容
2. 创建`.bak`备份
3. 识别并修复语法错误
4. 验证修复后的JSON合法性
5. 输出修复报告
### 场景2:修复并输出到新文件
```bash
node repair.js --file broken.json --out fixed.json
```
保留原文件,修复结果输出到`fixed.json`。
### 场景3:查看修复报告
```json
{
"input_file": "broken.json",
"output_file": "broken.json",
"backup_file": "broken.json.bak",
"input_size": 256,
"output_size": 248,
"repairs": [
{"type": "trailing_comma", "count": 3},
{"type": "single_quote", "count": 5},
{"type": "unquoted_key", "count": 2}
],
"valid": true,
"success": true
}
```
## 示例
### 命令行参数
| 参数 | 类型 | 默认值 | 说明 |
|:---:|:---:|:---:|:---:|
| `--file` | string | - | 输入文件路径 |
| `--out` | string | - | 输出文件路径(不指定则覆盖原文件) |
| `--no-backup` | boolean | false | 不创建备份 |
| `--repair-level` | string | safe | safe/aggressive |
### 修复级别说明
| 级别 | 行为 | 适用场景 |
|:------|------:|:------|
| `safe` | 仅修复明确的语法错误,保留语义 | 生产环境 |
| `aggressive` | 尝试修复更多问题,可能改变语义 | 测试环境 |
### 错误类型识别
| 类型 | 正则模式 | 说明 |
|---:|:---|---:|
| `trailing_comma` | `,\s*[}\]]` | 对象/数组末尾逗号 |
| `single_quote` | `'[^']*'` | 单引号字符串 |
| `unquoted_key` | `\{([^"]+)\s*:` | 未引号键名 |
| `js_comment` | `//.*` 或 `/*...*/` | JS风格注释 |
| `hex_number` | `0x[0-9a-fA-F]+` | 十六进制数字 |
## 最佳实践
### 修复前备份
- 始终保留默认的备份机制(不使用`--no-backup`)
- 备份文件命名清晰(`.bak`后缀)
- 重要文件修复前额外创建版本快照
- 修复后校验备份完整性
### 修复策略选择
- 生产环境使用`safe`模式,仅修复明确错误
- 测试环境可使用`aggressive`模式,尝试更多修复
- 不确定时先`safe`修复,再人工检查剩余错误
- 修复后必须验证JSON合法性
### 批量修复流程
- 先扫描识别所有错误文件(配合json-lint-tool)
- 按错误类型分类,分批修复
- 修复后重新校验,确保全部通过
- 失败文件人工介入
### 已知限制
- 本工具使用沙箱解析,不执行任意代码
- 修复操作不引入新的安全风险
- 备份文件可能含敏感数据,注意访问控制
- 修复报告不记录具体数据内容,仅记录错误类型
- 当前为免费版本,如需完整功能请升级到付费版获取全部能力
## 常见问题
### Q1:修复后JSON仍不合法?
A:可能存在本工具不支持的错误类型(如未闭合括号、字符串内换行)。查看修复报告的`valid`字段,若为false,说明剩余错误需人工处理。专业版支持更多错误类型。
### Q2:备份文件在哪?
A:备份文件与原文件同目录,名称为`原文件名.bak`。若使用了`--no-backup`参数,则不创建备份。建议始终保留备份机制。
### Q3:单引号修复误伤了字符串内容?
A:本工具的单引号修复针对键名与字符串边界,不修改字符串内部的单引号。若字符串内部含单引号(如`"It's ok"`),不会被误改。若仍出现误伤,检查JSON结构是否规范。
### Q4:注释移除后格式混乱?
A:注释移除可能留下空行或多余空格。修复后建议配合格式化工具(json-beautifier)重新整理缩进。本工具的修复后验证仅检查语法合法性,不保证格式美观。
### Q5:十六进制数字修复后值变了?
A:十六进制数字(如`0xFF`)会被转为十进制(`255`),值本身不变。若JSON中本意是字符串"0xFF",应使用引号包裹。修复前检查数字字段是否需要保持字符串形式。
## 免费版限制
本免费体验版限制以下高级功能:
- 批量目录修复(递归扫描多个文件)
- 流式修复(大文件分块处理)
- 自定义修复规则与正则
- 修复预览(修复前对比)
- 增量修复(仅修复变更部分)
- 修复历史与回滚
解锁全部功能请使用专业版:json-repair-tool-pro
## 依赖说明
### 运行环境
- **Agent平台**: 支持SKILL.md的任意AI Agent(Claude Code / Cursor / Codex / Gemini CLI等)
- **操作系统**: Windows / macOS / Linux
- **Node.js**: 14+(用于修复脚本与vm沙箱)
### 依赖详情
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|:------:|--------|:-------|:------:|
| LLM API | API | 必需 | 由Agent平台内置LLM提供 |
| JSON解析器 | 运行时 | 必需 | Node.js内置JSON.parse |
| vm模块 | 运行时 | 必需 | Node.js内置vm(沙箱) |
| 文件系统 | 运行时 | 必需 | Node.js内置fs |
### API Key 配置
- 本skill基于Markdown指令规范,无需额外API Key
- 所有修复在本地完成,不依赖外部服务
- 沙箱解析不执行网络请求,无数据外泄风险
### 可用性分类
- **分类**: MD+EXEC(纯Markdown指令,修复功能需要exec命令行执行能力)
- **说明**: 基于Markdown的AI Skill,通过自然语言指令驱动Agent执行JSON语法错误修复任务,修复脚本通过命令行执行
## 错误处理
| 错误场景 | 原因 | 处理方式 |
|----|:--:|---:|
| 配置错误 | 参数缺失或格式错误 | 检查依赖说明中的配置要求 |
| 运行时错误 | 运行环境不满足 | 确认运行环境符合依赖说明 |
| 网络错误 | 连接超时或不可达 | 执行ping命令测试网络连通性,检查防火墙和代理设置连接后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令,参考国内替代方案 |
## 输出格式
```json
{
"success": true,
"data": {
"result": "JSON修复工具免费版处理结果",
"execution_time": "0.5s",
"metadata": {
"version": "1.0",
"processor": "json repair"
}
},
"execution_log": ["解析输入参数", "执行核心处理", "格式化输出结果"],
"error": null
}
```
don't have the plugin yet? install it then click "run inline in claude" again.