{"adoption": {"forks": 129, "observed_at": "2026-08-28T04:07:11.447159+00:00", "stars": 2702}, "canonical_url": "https://ross.abutalabs.com/products/bpftop", "card": {"archived": false, "artifact_type": "cli-tool", "description": "bpftop provides a dynamic real-time view of running eBPF programs. It displays the average runtime, events per second, and estimated total CPU % for each program.", "domain": ["developer-tools", "monitoring", "operating-systems", "performance"], "enriched": true, "function": ["monitoring", "cli", "developer-tools"], "health_score": 95, "homepage": "https://bpftop.sh", "language": "C", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["jfernandez/bpftop"], "name": "jfernandez/bpftop", "platform": ["cli"], "pushed_at": "2026-08-01T20:15:37+00:00", "repo": "jfernandez/bpftop", "stars": 2702, "tags": ["ebpf", "bpf", "top-like", "terminal-ui", "performance-profiling", "kernel", "linux"], "topics": ["bpf", "ebpf", "linux", "cli"], "urls": [], "use_cases": ["monitor cpu usage of running ebpf programs", "find which bpf programs are consuming the most cpu", "view events per second for loaded ebpf programs", "debug performance of ebpf programs in real time", "plot ebpf program runtime over time", "list processes holding references to ebpf programs"], "what_it_is": "bpftop is a top-like terminal tool that provides a dynamic real-time view of running eBPF programs on Linux, showing average runtime, events per second, and estimated CPU utilization per program. It minimizes overhead by enabling kernel performance statistics only while the tool is active and includes interactive filtering, sorting, and time-series graphs.", "when_to_avoid": ["you're not on Linux or lack root/CAP_BPF privileges", "you need non-interactive scripted metrics collection rather than a TUI", "you need to profile non-eBPF workloads"], "when_to_choose": ["you need a top-style interactive view of eBPF program performance on Linux", "you want low-overhead stats collection that only runs while monitoring", "you need time-series graphs and filtering for eBPF programs", "you're on kernel 5.8+ or need procfs fallback for older kernels"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/bpftop", "repo": "jfernandez/bpftop", "role": "main", "score": 76}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:11.447159+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:15:57.677607+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1649951af1b8d98083d5598daf5660c46cf02e525c803e23ea0c711d70c8f984", "fetched_at": "2026-08-28T04:07:11.447159+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jfernandez/bpftop"}, {"content_hash": "da742c1a62eed16453f5e167b12b8bbd1fddae61c99bbf7d8a628df009d7e372", "fetched_at": "2026-08-29T09:58:59.194163+00:00", "kind": "homepage", "missing": false, "url": "https://bpftop.sh"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:11.447159+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:15:57.677607+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1649951af1b8d98083d5598daf5660c46cf02e525c803e23ea0c711d70c8f984", "fetched_at": "2026-08-28T04:07:11.447159+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jfernandez/bpftop"}, {"content_hash": "da742c1a62eed16453f5e167b12b8bbd1fddae61c99bbf7d8a628df009d7e372", "fetched_at": "2026-08-29T09:58:59.194163+00:00", "kind": "homepage", "missing": false, "url": "https://bpftop.sh"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:15:57.677607+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1649951af1b8d98083d5598daf5660c46cf02e525c803e23ea0c711d70c8f984", "fetched_at": "2026-08-28T04:07:11.447159+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jfernandez/bpftop"}, {"content_hash": "da742c1a62eed16453f5e167b12b8bbd1fddae61c99bbf7d8a628df009d7e372", "fetched_at": "2026-08-29T09:58:59.194163+00:00", "kind": "homepage", "missing": false, "url": "https://bpftop.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:07:11.447159+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:11.447159+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:11.447159+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:15:57.677607+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1649951af1b8d98083d5598daf5660c46cf02e525c803e23ea0c711d70c8f984", "fetched_at": "2026-08-28T04:07:11.447159+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jfernandez/bpftop"}, {"content_hash": "da742c1a62eed16453f5e167b12b8bbd1fddae61c99bbf7d8a628df009d7e372", "fetched_at": "2026-08-29T09:58:59.194163+00:00", "kind": "homepage", "missing": false, "url": "https://bpftop.sh"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:11.447159+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:11.447159+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:15:57.677607+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1649951af1b8d98083d5598daf5660c46cf02e525c803e23ea0c711d70c8f984", "fetched_at": "2026-08-28T04:07:11.447159+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jfernandez/bpftop"}, {"content_hash": "da742c1a62eed16453f5e167b12b8bbd1fddae61c99bbf7d8a628df009d7e372", "fetched_at": "2026-08-29T09:58:59.194163+00:00", "kind": "homepage", "missing": false, "url": "https://bpftop.sh"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:11.447159+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:11.447159+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:11.447159+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:15:57.677607+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1649951af1b8d98083d5598daf5660c46cf02e525c803e23ea0c711d70c8f984", "fetched_at": "2026-08-28T04:07:11.447159+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jfernandez/bpftop"}, {"content_hash": "da742c1a62eed16453f5e167b12b8bbd1fddae61c99bbf7d8a628df009d7e372", "fetched_at": "2026-08-29T09:58:59.194163+00:00", "kind": "homepage", "missing": false, "url": "https://bpftop.sh"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:11.447159+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:11.447159+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:15:57.677607+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1649951af1b8d98083d5598daf5660c46cf02e525c803e23ea0c711d70c8f984", "fetched_at": "2026-08-28T04:07:11.447159+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jfernandez/bpftop"}, {"content_hash": "da742c1a62eed16453f5e167b12b8bbd1fddae61c99bbf7d8a628df009d7e372", "fetched_at": "2026-08-29T09:58:59.194163+00:00", "kind": "homepage", "missing": false, "url": "https://bpftop.sh"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:15:57.677607+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1649951af1b8d98083d5598daf5660c46cf02e525c803e23ea0c711d70c8f984", "fetched_at": "2026-08-28T04:07:11.447159+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jfernandez/bpftop"}, {"content_hash": "da742c1a62eed16453f5e167b12b8bbd1fddae61c99bbf7d8a628df009d7e372", "fetched_at": "2026-08-29T09:58:59.194163+00:00", "kind": "homepage", "missing": false, "url": "https://bpftop.sh"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:15:57.677607+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1649951af1b8d98083d5598daf5660c46cf02e525c803e23ea0c711d70c8f984", "fetched_at": "2026-08-28T04:07:11.447159+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jfernandez/bpftop"}, {"content_hash": "da742c1a62eed16453f5e167b12b8bbd1fddae61c99bbf7d8a628df009d7e372", "fetched_at": "2026-08-29T09:58:59.194163+00:00", "kind": "homepage", "missing": false, "url": "https://bpftop.sh"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:15:57.677607+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1649951af1b8d98083d5598daf5660c46cf02e525c803e23ea0c711d70c8f984", "fetched_at": "2026-08-28T04:07:11.447159+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jfernandez/bpftop"}, {"content_hash": "da742c1a62eed16453f5e167b12b8bbd1fddae61c99bbf7d8a628df009d7e372", "fetched_at": "2026-08-29T09:58:59.194163+00:00", "kind": "homepage", "missing": false, "url": "https://bpftop.sh"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 95, "longevity": 66, "rhythm": 58}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 935, "days_push": 32, "days_rel": 123, "gap_med": 101.0, "n_releases_24m": 5}, "score": 76, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}