watermarks-remover 是一个 Python/标准库为主的本地工具与 HTTP 服务,用于检查和清理用户自有内容中的 AI 来源/水印/元数据痕迹。它覆盖文本中的不可见 Unicode、特殊空格、双向控制字符、tag chars 等确定性痕迹,也支持通过改写流程弱化统计型文本水印,并可对 PNG、JPEG、SVG、PDF、DOCX、HTML、Markdown、音视频等文件执行 C2PA、EXIF、XMP、文档属性等元数据清理。项目还提供 Agent Skill 集成,可被 Grok/Cursor 等工作流调用。
适用领域
AI 内容治理 / 隐私保护 / 文档与媒体元数据清理 / 文本规范化 / 内容发布前处理 / 开发者工具 / 本地 HTTP 服务 / Agent Skill 集成
配置难度
中等。基础 CLI 和本地 HTTP 服务安装较简单,Python 3.10+ 即可运行;但要在生产环境中稳定处理 PDF、Office、音视频、批量任务、鉴权、Docker、检测器和可选 heavy 后端,需要一定的文件格式、部署和安全经验。
商业价值
对中国开发者和企业内容团队而言,该项目的价值主要在于降低内容发布前的隐私和元数据泄露风险,并提供可集成的本地 API 来自动化文档、图片和网页素材清理。它适合用于内部知识库、CMS、AI 写作平台、文档出海发布流程和安全合规预处理。但由于其功能可能触及 AI 来源标识和内容真实性治理,商业落地时应明确授权边界、审计策略和合规用途,避免用于规避平台规则或误导用户。
01
技术亮点
- 核心功能不强依赖第三方 Python 包,部署门槛低。
- 支持格式广,包括文本、图片、Office 文档、PDF、HTML、Markdown、EPUB、ODT、音视频等。
- 提供 CLI、HTTP API、OpenAPI、批量接口和 Agent Skill 多种使用方式。
- 对二进制文件和未知格式做了保护,避免将 DOCX/PDF/图片误当文本处理导致文件损坏。
- 清理和检测解耦,检测器不可用或超时不会阻塞清理流程。
- 支持 Docker 镜像,并在核心镜像中集成 exiftool、qpdf、c2patool 等实用工具。
- 可作为本地服务嵌入企业内容发布、文档审核或隐私清理流水线。
- MIT 许可证,对商业集成较友好。
02
目标用户
- 需要在发布前清理自有文档、图片、网页内容的开发者和内容团队
- 在企业内部处理 AI 生成内容合规、隐私和元数据卫生的工程团队
- 构建内容处理流水线、CMS、文档发布系统的后端开发者
- 使用 Claude、Gemini、OpenAI、Grok、Cursor 等 AI 工具辅助写作的个人或团队
- 需要批量检查文件中隐藏 Unicode、C2PA、EXIF、XMP 等痕迹的安全/隐私工程师
03
配置要求
- Python 3.10+;核心脚本主要依赖标准库。
- 默认服务地址为 http://127.0.0.1:8765;Agent Skill 如需修改地址,设置 WATERMARKS_SERVICE_URL。
- 如需 API 鉴权,设置 WATERMARKS_SERVER_API_KEY,请求中使用 Authorization: Bearer <key>。
- 批量接口默认最多处理 50 个文件,可通过 WATERMARKS_MAX_BATCH_FILES 调整。
- 文本改写后端可选:WATERMARKS_REWRITE_BACKEND、WATERMARKS_REWRITE_MODEL、WATERMARKS_REWRITE_API_KEY。
- 远程改写端点默认受限,如需允许远程端点需设置 WATERMARKS_REWRITE_ALLOW_REMOTE=1 或使用 --allow-remote。
- MarkLLM 检测可通过 MARKLLM_DIR 配置本地研究 harness。
- 图像 SynthID 评分可通过 WATERMARKS_SYNTHID_SCORER_URL 或 REVERSE_SYNTHID_DIR 配置。
- PDF 深度清理建议安装 qpdf;残留元数据清理建议安装 exiftool;C2PA 检查建议安装 c2patool。
- 服务默认仅绑定 loopback,若修改 --host 暴露到网络,应部署在可信网络并启用鉴权。
04
适用场景
- 发布 Markdown、HTML、DOCX、PDF 前清理不可见字符和文档属性
- 上传图片前去除 EXIF、XMP、C2PA manifest 等来源元数据
- 为内部 CMS 或内容平台接入 /inspect、/clean、/detect HTTP API
- 在 AI Agent 工作流中通过 /remove-ai-marks 指令清理用户自有内容
- 批量检查目录中的文件是否包含可疑 Unicode、元数据或 AI provenance 痕迹
- 对文本执行改写提示或接入本地 Ollama 等后端,降低统计型水印特征
- 在 Docker 或本地 Python 环境中作为轻量服务部署到可信内网
05
部署与配置
- 确认本机已安装 Python 3.10+。
- 克隆仓库:git clone https://github.com/Leutenegger/watermarks-remover.git && cd watermarks-remover
- 启动本地服务:make serve,或执行 python3 service/scripts/server.py --host 127.0.0.1 --port 8765。
- 验证服务:curl http://127.0.0.1:8765/health。
- 命令行使用:python3 service/scripts/inspect_file.py draft.md;python3 service/scripts/clean_file.py draft.md -o draft.cleaned.md。
- 如需 Agent Skill,在项目或用户目录创建 .grok/skills,并将 skills/remove-ai-marks 软链接进去。
- 如需 Cursor 文本清理 Skill,运行 python3 install_skill.py;Windows 使用 py install_skill.py。
- 如需 Docker:make docker-core-build,然后 docker run --rm -p 127.0.0.1:8765:8765 --read-only --tmpfs /tmp watermarks-remover。
- 可选安装系统工具 c2patool、exiftool、qpdf,以增强 C2PA、PDF 和元数据清理能力。
06
风险与注意事项
- 该工具涉及去除 AI provenance、水印和元数据,可能被滥用于规避平台标识、审计或内容来源披露要求;应仅用于用户拥有且有权处理的内容。
- 不同厂商的统计型文本水印没有通用可靠消除保证,改写效果取决于模型、文本长度和检测方法。
- Claude、SynthID、OpenAI 等检测能力部分依赖占位、研究 harness 或外部 sidecar,并不等同于官方检测器。
- PDF、Office、图片等复杂格式清理可能改变文件结构、压缩方式或部分元数据,生产使用前应备份并做回归验证。
- 如果将 HTTP 服务暴露到非可信网络且未设置 WATERMARKS_SERVER_API_KEY,可能带来文件泄露或滥用风险。
- 部分 heavy/backends 组件存在不同许可证限制,例如 non-commercial research license 或未发布镜像,商业场景需逐项审查。
- README 中仓库路径和展示链接似乎与输入 full_name 不完全一致,集成时应以实际仓库内容为准。
- 清理 C2PA/EXIF/XMP 可能影响内容真实性证明、版权链路或合规留痕,需要结合法律和业务政策判断。
2026-08-21
第12名
新收录 · github_search