jimyag's Blog

个人使用的工具

Last modified:

这些是我日常会用到的工具,按用途简单分了一下类,方便以后换机器或重装环境时对照。

现在主要通过 Chezmoi 恢复环境:

来源覆盖内容
~/BrewfilemacOS 上的 Homebrew formula、cask、VS Code 插件
apt 初始化脚本Linux 上的基础命令行工具
Go 工具安装脚本Go 开发、Kubernetes、发布相关 CLI
二进制安装脚本AutoCorrect、tlrc,以及 Linux 上 apt 缺失的 release 二进制
私有 dotfiles本地脚本、工作 profile、MCGA 配置和其他私有配置

具体的 dotfiles 仓库结构、p-dotfiles / dotfiles 分工,以及新机器怎么应用配置,见常用工具配置与快捷键

终端与 Shell

工具用途
Ghostty主力终端
zsh默认 shell
bash系统 shell
tmux终端复用、长期会话
Zellij终端工作区和多 pane 管理
hstrshell history 搜索
zoxide目录跳转
fzf模糊搜索
yazi终端文件管理器
tree目录树查看
tldr命令速查
zsh-autosuggestionszsh 自动补全建议
zsh-syntax-highlightingzsh 语法高亮

编辑器与 IDE

工具用途
Neovim / Vim终端编辑器
Visual Studio Code通用编辑器
CursorAI IDE / Agent
Zed轻量编辑器

AI 编程与 Agent

工具用途
Codex / Codex CLI本地编码 Agent
Claude / Claude CodeAI 助手和编码 Agent
Cursor AgentCursor 命令行 Agent
Gemini CLIGemini 命令行
OpenAI CLIOpenAI 命令行工具
opencommit / ocoAI commit message
CodexBar菜单栏工具

语言与运行时

工具用途
GoGo 开发
Node.js / npm / npxJS/TS 运行时
pnpmNode 包管理
Bun / bunxJS 运行时与包管理
Python / pipPython 运行时和包管理
uv / uvxPython 包和命令运行
RubyRuby 运行时
Rust / CargoRust 开发
Java / javacJVM 开发
GradleJVM 构建
MavenJVM 构建
GCC / MakeC/C++ 构建基础工具

Rust / Cargo 工具

工具用途
cargo / rustc / rustdoc / rustfmtRust 基础工具链
cargo-clippy / clippy-driverRust lint
cargo-fmtRust formatter
cargo-miriRust Miri 解释器
rust-analyzerRust LSP
rust-gdb / rust-gdbgui / rust-lldbRust 调试辅助
rls旧版 Rust LSP
rustupRust toolchain 管理
mdbookRust 文档书籍生成
reqid-rs本地 Rust 工具
rustlingsRust 练习项目
tokei代码统计

Go 开发相关

工具用途
actionlintGitHub Actions workflow 检查
act本地运行 GitHub Actions
dive容器镜像层分析
dlvGo debugger
formattagstruct tag 格式化
ginkgoGo 测试框架 CLI
gofumptGo formatter
goimportsimport 整理
golangci-lint / golangci-lint-v2lint 聚合
gomodifytagsstruct tag 修改
goplsGo LSP
goreleaser发布自动化
gotests测试代码生成
Hugo extended博客生成,使用 extended 版本
implinterface 实现生成
kind本地 Kubernetes 集群
kubebuilderKubernetes controller 脚手架
mockgenmock 生成
protoc-gen-go / protoc-gen-go-grpc / protoc-gen-go-vtprotoProtobuf Go 插件
staticcheck静态检查
taskTaskfile CLI

其他命令行工具

工具用途
authy-cliAuthy 命令行工具
parquet-toolsParquet 文件工具
struct2jsonGo struct 转 JSON
jd本地 Go 工具
nettrace网络诊断工具
mactoolsmacOS 辅助工具
mcga本地工具
pingexporterping exporter
splitrail本地工具
sync-gitGit 同步脚本
virtctl虚拟化辅助工具
comet命令行工具
fstail文件 tail 工具
generatorsGo generator 辅助
pakeWeb app 打包工具
nsqd / nsqlookupd / nsqadminNSQ 服务端和管理工具
nsq_stat / nsq_tail / nsq_to_file / nsq_to_http / nsq_to_nsq / to_nsqNSQ 辅助命令
agent本地 Agent 命令
figshell/CLI 辅助
kiro-cli / kiro-cli-chat / kiro-cli-termKiro CLI
orb / orbctlOrbStack CLI
mihomo代理核心
nats-serverNATS server

版本控制与代码协作

工具用途
git版本控制
ghGitHub CLI
git-lfs大文件版本管理
lazygitGit TUI
gituiGit TUI
glabGitLab CLI
pre-commitGit hook 管理
git-filter-repoGit 历史重写
tigGit TUI
gistGitHub Gist

构建、格式化与代码质量

工具用途
cmakeC/C++ 构建
ninja构建工具
protobuf / protocProtobuf 编译
bufProtobuf 工具链
shellcheckShell 静态检查
shfmtShell formatter
act本地跑 GitHub Actions
chart-testingHelm chart 测试
terraform基础设施配置
trivy镜像和依赖漏洞扫描
yamaleYAML schema 校验
autocorrect中文文本校对
difftastic结构化 diff
bat / bat-extras代码查看和 diff 辅助
gawk文本处理
gnu-sed / gnu-getoptGNU 命令行工具
binutils二进制工具
flexlexer generator
guileScheme 运行时
mingw-w64Windows 交叉编译
virtualenvPython 虚拟环境

容器、Kubernetes 与虚拟化

工具用途
Docker CLI容器管理
docker-composeCompose
Docker BuildxDocker build 扩展
containerd容器运行时
OrbStack本地容器与 Linux VM
kubectlKubernetes CLI
helmKubernetes 包管理
kind本地 Kubernetes 集群
k9sKubernetes TUI
dive容器镜像分析
qemu虚拟化
virt-manager虚拟机管理
libvirt / virsh虚拟化管理
libguestfs-toolsVM 镜像工具
cockpit-machinesVM Web UI
openvswitch虚拟交换机
ovmfVM UEFI firmware
cloud-image-utilscloud image 工具
genisoimage / xorrisoISO 工具
incus系统容器和 VM 管理

数据库与数据处理

工具用途
psql / PostgreSQLPostgreSQL 客户端与服务端
redis-cli / RedisRedis 客户端与服务端
mongosh / MongoDBMongoDB Shell
DuckDB本地分析数据库
sqlite3SQLite
parquet-cli / parquet-toolsParquet 文件查看
jqJSON 处理
yqYAML 处理
csvtkCSV/TSV 处理

网络与远程连接

工具用途
curlHTTP 客户端
wget下载工具
httpieHTTP 客户端
mtr网络链路诊断
nexttracetraceroute 替代工具
traceroute路由跟踪
iperf3网络吞吐测试
ifstat网络流量
dnsutils / dig / nslookup / hostDNS 诊断
net-tools / netstat传统网络工具
autosshSSH 保活
sshfsSSH 文件系统
openssh-serverSSH 服务端
openconnectVPN 客户端
WireGuard / wgWireGuard CLI
cloudflaredCloudflare Tunnel
Tailscale内网组网
ZeroTier内网穿透/组网
RustDesk远程桌面
Surge / Clash Verge代理与网络调试
socatsocket 工具
nginxWeb server
SambaSMB 文件共享
croc临时文件传输
speedtest网络测速
telnetTCP 连通性测试
termshark / Wireshark抓包分析
vpn-sliceVPN 路由拆分
websocatWebSocket 调试
tcpdump抓包
bpftool / bpftraceeBPF 检查

文件、备份与环境管理

工具用途
chezmoidotfiles 管理
rclone云盘/对象存储同步
restic备份
s3cmdS3 命令行
gdu磁盘占用分析
OmniDiskSweeper磁盘空间分析
PrettyClean / Tencent Lemon清理工具
Bitwarden / rbw密码管理
LocalSend局域网文件传输
aDrive / BaiduNetdisk_mac / Quark网盘
AndDrive / 小米互联服务设备互联
macFUSEmacOS 文件系统扩展

文档、图片、视频与发布

工具用途
Hugo博客生成
Pandoc文档转换
Typst排版
ImageMagick图片处理
ffmpeg音视频处理
poppler / pdftotextPDF 工具
tesseractOCR
OBS录屏/直播
QuickRecorder录屏
Snipaste截图贴图
Obsidian笔记
ONLYOFFICEOffice 文档
balenaEtcher镜像写盘
NeteaseMusic音乐
微信读书 / 网易有道翻译阅读与翻译

桌面 App

App用途
Raycast启动器与自动化
Stats菜单栏系统监控
Ice菜单栏图标管理
SquirrelRime 输入法前端
Fira Code Nerd Font / Symbols Nerd Font字体
Google Chrome / Safari浏览器
Keyboard Pilot键盘/输入法自动切换
Lark / Slack / Telegram / WeChat沟通协作
LatestApp 更新检查
Loop窗口管理
RepoBarGitHub 菜单栏工具
Windows App远程 Windows
0xProto主力等宽字体

性能分析与系统调试

工具用途
htop进程监控
btop / bottom资源监控
iotopI/O 监控
lm-sensors硬件传感器
radeontopAMD GPU 监控
pv / progresspipe progress
sysstatsariostatmpstatpidstat
perf性能分析
stracesyscall tracing
lsof打开文件查看
fastfetch系统信息
coreutilsGNU 基础命令
sevenzip压缩解压
argon2密码哈希
gnupg / gpg加密与签名
apparmor-utilsAppArmor 管理
efibootmgrEFI boot 管理
fail2ban登录防护

macOS 初始化检查项

换新 Mac 时,这几项通常要先确认:

  1. 安装 Homebrew 和基础命令行工具。
  2. 安装 Ghostty、Zellij、Raycast、Stats、Chrome 等常用桌面工具。
  3. 配置 GitHub / GitLab CLI 登录。
  4. 将 F1、F2 等功能键设为标准功能键。
  5. 终端字体使用 0xProto。
  6. 设置 HostNameLocalHostNameComputerName,避免 hostname 又变成 Mac.lan
  7. 用 Chezmoi 同步 dotfiles,并确认 ~/Brewfile、Go 工具、Python uv 工具、MCGA 配置和私有 profile 都能恢复。

#工具