openGyver
openGyver 是基于 Go 的开源 CLI 工具,提供编码、哈希、格式化、校验与生成等命令;可独立运行或集成自动化与 AI 代理。
openGyver 是什么?
openGyver 是一个基于 Go 的开源瑞士军刀式 CLI 工具,提供 47 个命令和 180+ 子命令,用于日常转换和实用功能。它涵盖编码/解码、哈希、文件格式化、校验、生成(例如密码、QR 码、UUID)和时间相关辅助等任务。
该项目设计为可在 Linux、macOS 和 Windows 上作为独立单二进制可执行文件运行,还可集成到自动化工作流中,如 CI/CD 管道、Shell 脚本和 AI 代理。
主要特性
- 单二进制 Go CLI,支持 Linux、macOS 和 Windows 的零依赖分发,可在常见环境中运行相同工具。
- 广泛的转换覆盖,包括单位与货币转换(9 类,38 种货币),以及常见格式的文件转换,涵盖音频、文档/电子表格、图像、视频、矢量图形、字体、演示文稿和 CAD。
- 编码、哈希和校验和实用工具,包括 Base64/Base32/Base58/URL/HTML/hex/binary、ROT13 和 Morse,以及 MD5、SHA-1/SHA-2 变体和 HMAC/bcrypt 等哈希(列出的)。
- 数据和格式工具,如 JSON 格式化/校验,以及 YAML/TOML/XML/CSV 转换,加上 HTML/XML/CSS/SQL 格式化/压缩和文件差异(文本/JSON/CSV)。
- 生成命令,用于常见工件,如密码、API 密钥/机密、OTP、nanoid/snowflake/short ID、UUID v4/v6,以及 QR/条码创建(终端 ASCII 输出,以及 QR 的 PNG/SVG)。
- 每个命令支持多种输出模式(特别是用于脚本的 JSON 输出、简化的单值输出,以及文件转换器抑制确认消息的静默模式)。
如何使用 openGyver
- 使用仓库中列出的选项之一安装:Homebrew(通过 tap)、Go install,或使用
go build从源码构建。 - 根据任务从简单命令开始。项目示例包括单位转换(
convert)、编码(encode)、哈希(hash)和生成(generate password)。 - 集成到脚本或自动化时,使用输出模式,如
--json/-j获取结构化结果,以及--quiet/-q减少文件转换的交互消息。
使用场景
- 在 Shell 中转换单位和货币:例如,
openGyver convert 100 cm in或openGyver convert 100 usd eur获取转换值。 - 无需编写自定义脚本即可编码或哈希字符串:例如,
openGyver encode base64 "hello world"和openGyver hash sha256 "hello"。 - 生成标识符和安全相关测试数据:
openGyver generate password --length 32生成密码,openGyver uuid生成随机 UUID v4,或openGyver testdata person --count 5 -j生成 JSON 格式的假记录。 - 从命令行转换文档和电子表格:使用
convertFile将 CSV/XLSX/MD/HTML/DOCX/PDF/PS 等格式转换为目标格式(支持-o输出和-q静默选项)。 - 开发中校验和格式化标记/数据格式:运行
openGyver validate html --file index.html、openGyver json format(format/beautify/minify),或使用diff(文本/JSON/CSV)比较文件以审查变更。
常见问题
-
openGyver 是否提供编译二进制文件? 仓库说明它使用 Go 构建,支持 Linux、macOS 和 Windows 的“零依赖、单二进制分发”。
-
它可用于自动化和脚本吗? 可以。每个命令支持输出模式,包括 JSON 输出(
--json/-j)和静默模式(--quiet/-q),适用于管道和脚本。 -
如何安装? 页面列出了安装选项:Homebrew、Go(
go install github.com/mj/opengyver@latest)以及使用git clone和go build从源码构建。 -
它能与 AI 工具/代理一起使用吗? 仓库提到 Claude Code 插件,可安装“原生 MCP 工具”,并指向插件市场配置,包括安装
opengyver和重新加载插件的示例。 -
它支持哪些种类的转换? README 列出了单位与货币转换命令,以及多种文件类型转换,包括音频、CAD、电子书、文档/电子表格、字体、图像、演示文稿、矢量和视频。
替代方案
- 通用文件转换套件(例如,转换媒体和文档的命令行工具):这些工具在特定领域可能更全面,但 openGyver 定位为单一 CLI,涵盖转换以及编码/哈希/校验/生成工作流。
- 基于脚本的转换方法(Shell 脚本或调用语言库的小程序):灵活,但通常需要组装多个工具并自行处理格式化/校验/输出;openGyver 将众多常见任务封装在单一命令接口下。
- 其他专注于编码/哈希/格式化操作的 CLI 工具集:根据需求,它们可能仅覆盖子集(如仅编码/哈希),而 openGyver 涵盖转换、生成、校验及结构化输出模式。
- 专用数据格式化/校验工具:它们可能针对单一格式更专业,而 openGyver 在单一 CLI 下提供多格式工作流,并支持 JSON/quiet 输出选项。
替代品
AakarDev AI
AakarDev AI 是一个强大的平台,通过无缝的向量数据库集成简化 AI 应用程序的开发,实现快速部署和可扩展性。
Arduino VENTUNO Q
Arduino VENTUNO Q 边缘AI电脑,集成AI推理与微控制器确定性控制;用 Arduino App Lab 打通嵌入式、Linux与边缘AI开发。
Devin
Devin 是 AI 编程代理,帮助软件团队并行完成代码迁移与大规模重构子任务;工程师负责项目管理并批准改动。
Codex Plugins
使用 Codex Plugins 将技能、应用集成和 MCP 服务器打包成可复用工作流,扩展 Codex 访问 Gmail、Google Drive 与 Slack 等工具。
Ably Chat
Ably Chat 提供聊天 API 和 SDK,用于自定义实时聊天应用:支持反应、在线/房间状态及消息编辑/删除,面向高并发场景。
Falconer
Falconer 是自更新知识平台,帮高速度团队在一个地方编写、分享并搜索可靠内部文档与代码上下文。