{"adoption": {"forks": 244, "observed_at": "2026-08-28T04:08:27.536467+00:00", "stars": 3860}, "canonical_url": "https://ross.abutalabs.com/products/htracesh", "card": {"archived": false, "artifact_type": "cli-tool", "description": "My simple Swiss Army knife for http/https troubleshooting and profiling.", "domain": ["security", "web-development", "developer-tools", "networking"], "enriched": true, "function": ["http-client", "security", "vulnerability-scanning", "developer-tools"], "health_score": 20, "homepage": null, "language": "Shell", "license": "GPL-3.0", "license_family": "copyleft", "maturity": "active", "member_repos": ["trimstray/htrace.sh"], "name": "trimstray/htrace.sh", "platform": ["cli"], "pushed_at": "2024-11-19T14:04:50+00:00", "repo": "trimstray/htrace.sh", "stars": 3860, "tags": ["http-troubleshooting", "https", "ssl-tls", "redirect-tracing", "header-analysis", "nmap", "testssl", "ssllabs", "mozilla-observatory", "waf-detection", "subdomain-enumeration", "shell-script", "swiss-army-knife", "linux", "macos", "docker"], "topics": ["https-troubleshoting", "http-requests", "httptracer", "redirect-urls", "testing-tools", "security-tools", "debugging-tools", "swissarmyknife", "mozilla-observatory", "ssllabs-scan", "nmap", "nmap-scripts", "testssl", "waf", "sublist3r"], "urls": [], "use_cases": ["trace the redirect chain of a url", "inspect http response headers and body", "check a site's ssl/tls configuration", "scan a website for missing security headers", "detect whether a waf is in front of a site", "run ssl labs and observatory scans from the terminal", "debug why an https endpoint behaves unexpectedly"], "what_it_is": "htrace.sh is a shell-script CLI that combines HTTP/HTTPS request troubleshooting (redirect tracing, headers, body, SSL parameters, custom methods and proxies) with wrappers around security tools like Nmap, testssl.sh, SSL Labs, and Mozilla Observatory. It packages these checks behind a single command, installable natively on Debian/Ubuntu/macOS or via a Docker image.", "when_to_avoid": ["You need structured JSON output or a programmatic API for automation and CI pipelines", "You require load testing, deep application profiling, or continuous monitoring rather than point-in-time triage", "You can't install the wrapped external tools (Nmap, testssl.sh, etc.) and don't want to use Docker"], "when_to_choose": ["You want one terminal command that mixes HTTP request inspection with TLS and security scanning", "You're doing quick triage of redirects, headers, and SSL misconfigurations on Linux or macOS", "You prefer avoiding dependency setup by running a prebuilt Docker image"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/htracesh", "repo": "trimstray/htrace.sh", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:27.536467+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:25:54.284632+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "45ffdf6eae4a5e31e9bd2c8e86c4dc293791f07190a03d3c547ca9d593c9508d", "fetched_at": "2026-08-28T04:08:27.536467+00:00", "kind": "readme", "missing": false, "url": "https://github.com/trimstray/htrace.sh"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:27.536467+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:25:54.284632+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "45ffdf6eae4a5e31e9bd2c8e86c4dc293791f07190a03d3c547ca9d593c9508d", "fetched_at": "2026-08-28T04:08:27.536467+00:00", "kind": "readme", "missing": false, "url": "https://github.com/trimstray/htrace.sh"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:25:54.284632+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "45ffdf6eae4a5e31e9bd2c8e86c4dc293791f07190a03d3c547ca9d593c9508d", "fetched_at": "2026-08-28T04:08:27.536467+00:00", "kind": "readme", "missing": false, "url": "https://github.com/trimstray/htrace.sh"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:08:27.536467+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:27.536467+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:27.536467+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:25:54.284632+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "45ffdf6eae4a5e31e9bd2c8e86c4dc293791f07190a03d3c547ca9d593c9508d", "fetched_at": "2026-08-28T04:08:27.536467+00:00", "kind": "readme", "missing": false, "url": "https://github.com/trimstray/htrace.sh"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:27.536467+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:27.536467+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:25:54.284632+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "45ffdf6eae4a5e31e9bd2c8e86c4dc293791f07190a03d3c547ca9d593c9508d", "fetched_at": "2026-08-28T04:08:27.536467+00:00", "kind": "readme", "missing": false, "url": "https://github.com/trimstray/htrace.sh"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:27.536467+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:27.536467+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:27.536467+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:25:54.284632+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "45ffdf6eae4a5e31e9bd2c8e86c4dc293791f07190a03d3c547ca9d593c9508d", "fetched_at": "2026-08-28T04:08:27.536467+00:00", "kind": "readme", "missing": false, "url": "https://github.com/trimstray/htrace.sh"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:27.536467+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:27.536467+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:25:54.284632+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "45ffdf6eae4a5e31e9bd2c8e86c4dc293791f07190a03d3c547ca9d593c9508d", "fetched_at": "2026-08-28T04:08:27.536467+00:00", "kind": "readme", "missing": false, "url": "https://github.com/trimstray/htrace.sh"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:25:54.284632+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "45ffdf6eae4a5e31e9bd2c8e86c4dc293791f07190a03d3c547ca9d593c9508d", "fetched_at": "2026-08-28T04:08:27.536467+00:00", "kind": "readme", "missing": false, "url": "https://github.com/trimstray/htrace.sh"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:25:54.284632+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "45ffdf6eae4a5e31e9bd2c8e86c4dc293791f07190a03d3c547ca9d593c9508d", "fetched_at": "2026-08-28T04:08:27.536467+00:00", "kind": "readme", "missing": false, "url": "https://github.com/trimstray/htrace.sh"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:25:54.284632+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "45ffdf6eae4a5e31e9bd2c8e86c4dc293791f07190a03d3c547ca9d593c9508d", "fetched_at": "2026-08-28T04:08:27.536467+00:00", "kind": "readme", "missing": false, "url": "https://github.com/trimstray/htrace.sh"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2973, "days_push": 652, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}