{"adoption": {"forks": 126, "observed_at": "2026-08-28T04:04:17.389129+00:00", "stars": 1299}, "canonical_url": "https://ross.abutalabs.com/products/rootlesskit", "card": {"archived": false, "artifact_type": "cli-tool", "description": "Linux-native \"fake root\" for implementing rootless containers", "domain": ["security", "self-hosted"], "enriched": true, "function": ["security", "container-runtime", "networking", "cli"], "health_score": 100, "homepage": null, "language": "Go", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["rootless-containers/rootlesskit"], "name": "rootless-containers/rootlesskit", "platform": ["cli"], "pushed_at": "2026-08-26T02:17:04+00:00", "repo": "rootless-containers/rootlesskit", "stars": 1299, "tags": ["rootless-containers", "user-namespaces", "fakeroot", "container-security", "slirp", "containers", "devops", "linux", "docker", "kubernetes"], "topics": ["rootless-containers"], "urls": [], "use_cases": ["run docker as an unprivileged user", "run kubernetes without root", "implement rootless containers", "fake root on linux without sudo", "isolate container networking with slirp", "protect host root from container breakouts"], "what_it_is": "RootlessKit is a Linux-native 'fake root' tool that uses user and mount namespaces to let unprivileged users run container engines like Docker and Kubernetes in rootless mode. It also provides network namespace isolation with userspace NAT (slirp) to protect the host's real root from container-breakout attacks.", "when_to_avoid": ["you are not on Linux, since it depends on user_namespaces", "you only need simple fakeroot for package builds, where classic fakeroot suffices", "your kernel or environment does not support unprivileged user namespaces or subuid/subgid setup"], "when_to_choose": ["you need to run Docker, Podman, or Kubernetes rootless on Linux", "you want user-namespace-based fakeroot with network isolation support", "you need better security isolation than LD_PRELOAD or ptrace-based tools like fakeroot or proot"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/rootlesskit", "repo": "rootless-containers/rootlesskit", "role": "main", "score": 94}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.389129+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:53:27.717639+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2eb497329e34d3601cbe5b9a6d81a6f0a2bcfbb9685b41fbe8056692a46536c", "fetched_at": "2026-08-28T04:04:17.389129+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rootless-containers/rootlesskit"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.389129+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:53:27.717639+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2eb497329e34d3601cbe5b9a6d81a6f0a2bcfbb9685b41fbe8056692a46536c", "fetched_at": "2026-08-28T04:04:17.389129+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rootless-containers/rootlesskit"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:53:27.717639+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2eb497329e34d3601cbe5b9a6d81a6f0a2bcfbb9685b41fbe8056692a46536c", "fetched_at": "2026-08-28T04:04:17.389129+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rootless-containers/rootlesskit"}], "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:04:17.389129+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.389129+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.389129+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:53:27.717639+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2eb497329e34d3601cbe5b9a6d81a6f0a2bcfbb9685b41fbe8056692a46536c", "fetched_at": "2026-08-28T04:04:17.389129+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rootless-containers/rootlesskit"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.389129+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.389129+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:53:27.717639+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2eb497329e34d3601cbe5b9a6d81a6f0a2bcfbb9685b41fbe8056692a46536c", "fetched_at": "2026-08-28T04:04:17.389129+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rootless-containers/rootlesskit"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.389129+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.389129+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.389129+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:53:27.717639+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2eb497329e34d3601cbe5b9a6d81a6f0a2bcfbb9685b41fbe8056692a46536c", "fetched_at": "2026-08-28T04:04:17.389129+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rootless-containers/rootlesskit"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.389129+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.389129+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:53:27.717639+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2eb497329e34d3601cbe5b9a6d81a6f0a2bcfbb9685b41fbe8056692a46536c", "fetched_at": "2026-08-28T04:04:17.389129+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rootless-containers/rootlesskit"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:53:27.717639+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2eb497329e34d3601cbe5b9a6d81a6f0a2bcfbb9685b41fbe8056692a46536c", "fetched_at": "2026-08-28T04:04:17.389129+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rootless-containers/rootlesskit"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:53:27.717639+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2eb497329e34d3601cbe5b9a6d81a6f0a2bcfbb9685b41fbe8056692a46536c", "fetched_at": "2026-08-28T04:04:17.389129+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rootless-containers/rootlesskit"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:53:27.717639+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2eb497329e34d3601cbe5b9a6d81a6f0a2bcfbb9685b41fbe8056692a46536c", "fetched_at": "2026-08-28T04:04:17.389129+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rootless-containers/rootlesskit"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 84}, "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": 3016, "days_push": 8, "days_rel": 29, "gap_med": 47.5, "n_releases_24m": 9}, "score": 94, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}