展示 HN:解释 Curl 命令
Show HN: Explain Curl Commands

原始链接: https://github.com/akgitrepos/explain-my-curl

## Explain-My-Curl 摘要 `explain-my-curl` 是一个本地优先的 CLI 工具,旨在通过分解底层的网络过程——DNS、TLS 和 HTTP 来揭示 `curl` 命令的原理。它提供了对 `curl` 请求执行时“幕后”发生的事情的详细解释。 主要功能包括:用于解析 `curl` 输入的命令行界面,用于探索的交互式文本用户界面 (TUI),以及详细的遥测跟踪 DNS 解析、连接时间、TLS 握手和首次字节时间。它还优先考虑安全性,具有密钥隐藏功能,并通过“证据标签”强调透明度,指示信息的确定方式。 该项目拥有强大的测试、发布自动化(包括 macOS、Linux 和 Windows 的构建),甚至还有一个 Homebrew 公式,方便安装。它的目标是提供对网络请求的清晰和可信的理解。

黑客新闻 新 | 过去 | 评论 | 提问 | 展示 | 招聘 | 提交 登录 Show HN: 解释 Curl 命令 (github.com/akgitrepos) 7 分,akgitrepos 1 小时前 | 隐藏 | 过去 | 收藏 | 讨论 帮助 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请 YC | 联系 搜索:
相关文章

原文

explain-my-curl is a local-first CLI for understanding what a curl command is doing across DNS, TLS, and HTTP.

explain-my-curl TUI preview

This repository currently includes:

  • A CLI command to parse and explain a curl input
  • A starter TUI for interactive exploration
  • Execution telemetry for DNS, TCP connect, TLS handshake, and time-to-first-byte
  • Secret redaction for command display and error strings
  • Evidence labels (Observed, Inferred, Estimated) to support protocol transparency
  • A transparency contract in docs/transparency-contract.md
go mod tidy
go run ./cmd/explain-my-curl explain "curl https://example.com -I"
go run ./cmd/explain-my-curl tui
go run ./cmd/explain-my-curl doctor
go run ./cmd/explain-my-curl version
  • Enter: run current curl input
  • Esc: switch to inspect mode
  • Tab: switch input/inspect focus
  • i: focus input mode
  • j/k or arrow keys: move selected timeline step
  • Space: collapse/expand selected timeline step
  • Ctrl+R: toggle response diagnostics panel
  • Ctrl+B: toggle response body preview visibility
  • q: quit
  • Tagged releases (v*) are built automatically with GoReleaser via GitHub Actions.
  • CI validates go test ./... on pushes and pull requests.
  • CI also runs a GoReleaser snapshot build to verify release config continuously.
  • Artifacts are published for macOS/Linux/Windows on amd64 and arm64.
  • Release binaries include embedded build metadata (version, commit, date).
  • A Homebrew formula is generated in Formula/ during release (tap uses this same repository).

Local execution telemetry, split-pane TUI, redaction, tests, transparency contract, and release automation are in place.

联系我们 contact @ memedata.com