{"adoption": {"forks": 1096, "observed_at": "2026-08-28T04:06:42.122211+00:00", "stars": 2377}, "canonical_url": "https://ross.abutalabs.com/products/drush", "card": {"archived": false, "artifact_type": "cli-tool", "description": "Drush is a command-line shell and scripting interface for Drupal, a veritable Swiss Army knife designed to make life easier for those who spend their working hours hacking away at the command prompt.", "domain": ["developer-tools", "cms", "web-development"], "enriched": true, "function": ["cli", "developer-tools", "workflow-automation", "deployment"], "health_score": 99, "homepage": "https://www.drush.org", "language": "PHP", "license": null, "license_family": "other", "maturity": "stable", "member_repos": ["drush-ops/drush"], "name": "drush-ops/drush", "platform": ["cli", "php", "windows"], "pushed_at": "2026-08-17T17:47:38+00:00", "repo": "drush-ops/drush", "stars": 2377, "tags": ["drupal", "php", "site-management", "scripting", "database-updates", "command-line", "automation", "linux", "macos"], "topics": ["php", "drush", "drupal", "symfony", "cli", "psysh", "circleci"], "urls": [], "use_cases": ["manage drupal sites from the command line", "run drupal database updates via cli", "clear drupal caches without the admin ui", "install and update drupal modules with a command", "script drupal site deployments", "bootstrap a drupal site in a shell script", "run cron and maintenance tasks on drupal"], "what_it_is": "Drush is a command-line shell and Unix scripting interface for Drupal, providing commands for managing Drupal sites such as installing modules, running database updates, and clearing caches. It is the de facto standard tool for Drupal developers and site administrators working from the terminal.", "when_to_avoid": ["your project is not built on Drupal", "you prefer a graphical admin interface for all site management", "you need a general-purpose PHP REPL rather than Drupal tooling"], "when_to_choose": ["you develop or maintain Drupal sites and want fast terminal-based administration", "you need to automate Drupal deployments or maintenance tasks in scripts or CI", "you manage multiple Drupal sites and want a consistent command interface"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/drush", "repo": "drush-ops/drush", "role": "main", "score": 96}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:42.122211+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:34:55.746167+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b8702250c62c97b928a79c58e8169e5450fa556f4795f3ca58385fdf0d8b33a", "fetched_at": "2026-08-28T04:06:42.122211+00:00", "kind": "readme", "missing": false, "url": "https://github.com/drush-ops/drush"}, {"content_hash": "36c6c3c2e4f9f7e35fb7fea86ea9bfd1cf7fe7061016698b1a017ae1cc7f4a36", "fetched_at": "2026-08-29T10:15:48.569012+00:00", "kind": "homepage", "missing": false, "url": "https://www.drush.org"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:42.122211+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:34:55.746167+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b8702250c62c97b928a79c58e8169e5450fa556f4795f3ca58385fdf0d8b33a", "fetched_at": "2026-08-28T04:06:42.122211+00:00", "kind": "readme", "missing": false, "url": "https://github.com/drush-ops/drush"}, {"content_hash": "36c6c3c2e4f9f7e35fb7fea86ea9bfd1cf7fe7061016698b1a017ae1cc7f4a36", "fetched_at": "2026-08-29T10:15:48.569012+00:00", "kind": "homepage", "missing": false, "url": "https://www.drush.org"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:34:55.746167+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b8702250c62c97b928a79c58e8169e5450fa556f4795f3ca58385fdf0d8b33a", "fetched_at": "2026-08-28T04:06:42.122211+00:00", "kind": "readme", "missing": false, "url": "https://github.com/drush-ops/drush"}, {"content_hash": "36c6c3c2e4f9f7e35fb7fea86ea9bfd1cf7fe7061016698b1a017ae1cc7f4a36", "fetched_at": "2026-08-29T10:15:48.569012+00:00", "kind": "homepage", "missing": false, "url": "https://www.drush.org"}], "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:06:42.122211+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:42.122211+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:42.122211+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:34:55.746167+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b8702250c62c97b928a79c58e8169e5450fa556f4795f3ca58385fdf0d8b33a", "fetched_at": "2026-08-28T04:06:42.122211+00:00", "kind": "readme", "missing": false, "url": "https://github.com/drush-ops/drush"}, {"content_hash": "36c6c3c2e4f9f7e35fb7fea86ea9bfd1cf7fe7061016698b1a017ae1cc7f4a36", "fetched_at": "2026-08-29T10:15:48.569012+00:00", "kind": "homepage", "missing": false, "url": "https://www.drush.org"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:42.122211+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:42.122211+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:34:55.746167+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b8702250c62c97b928a79c58e8169e5450fa556f4795f3ca58385fdf0d8b33a", "fetched_at": "2026-08-28T04:06:42.122211+00:00", "kind": "readme", "missing": false, "url": "https://github.com/drush-ops/drush"}, {"content_hash": "36c6c3c2e4f9f7e35fb7fea86ea9bfd1cf7fe7061016698b1a017ae1cc7f4a36", "fetched_at": "2026-08-29T10:15:48.569012+00:00", "kind": "homepage", "missing": false, "url": "https://www.drush.org"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:42.122211+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:42.122211+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:42.122211+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:34:55.746167+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b8702250c62c97b928a79c58e8169e5450fa556f4795f3ca58385fdf0d8b33a", "fetched_at": "2026-08-28T04:06:42.122211+00:00", "kind": "readme", "missing": false, "url": "https://github.com/drush-ops/drush"}, {"content_hash": "36c6c3c2e4f9f7e35fb7fea86ea9bfd1cf7fe7061016698b1a017ae1cc7f4a36", "fetched_at": "2026-08-29T10:15:48.569012+00:00", "kind": "homepage", "missing": false, "url": "https://www.drush.org"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:42.122211+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:42.122211+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:34:55.746167+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b8702250c62c97b928a79c58e8169e5450fa556f4795f3ca58385fdf0d8b33a", "fetched_at": "2026-08-28T04:06:42.122211+00:00", "kind": "readme", "missing": false, "url": "https://github.com/drush-ops/drush"}, {"content_hash": "36c6c3c2e4f9f7e35fb7fea86ea9bfd1cf7fe7061016698b1a017ae1cc7f4a36", "fetched_at": "2026-08-29T10:15:48.569012+00:00", "kind": "homepage", "missing": false, "url": "https://www.drush.org"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:34:55.746167+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b8702250c62c97b928a79c58e8169e5450fa556f4795f3ca58385fdf0d8b33a", "fetched_at": "2026-08-28T04:06:42.122211+00:00", "kind": "readme", "missing": false, "url": "https://github.com/drush-ops/drush"}, {"content_hash": "36c6c3c2e4f9f7e35fb7fea86ea9bfd1cf7fe7061016698b1a017ae1cc7f4a36", "fetched_at": "2026-08-29T10:15:48.569012+00:00", "kind": "homepage", "missing": false, "url": "https://www.drush.org"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:34:55.746167+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b8702250c62c97b928a79c58e8169e5450fa556f4795f3ca58385fdf0d8b33a", "fetched_at": "2026-08-28T04:06:42.122211+00:00", "kind": "readme", "missing": false, "url": "https://github.com/drush-ops/drush"}, {"content_hash": "36c6c3c2e4f9f7e35fb7fea86ea9bfd1cf7fe7061016698b1a017ae1cc7f4a36", "fetched_at": "2026-08-29T10:15:48.569012+00:00", "kind": "homepage", "missing": false, "url": "https://www.drush.org"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:34:55.746167+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b8702250c62c97b928a79c58e8169e5450fa556f4795f3ca58385fdf0d8b33a", "fetched_at": "2026-08-28T04:06:42.122211+00:00", "kind": "readme", "missing": false, "url": "https://github.com/drush-ops/drush"}, {"content_hash": "36c6c3c2e4f9f7e35fb7fea86ea9bfd1cf7fe7061016698b1a017ae1cc7f4a36", "fetched_at": "2026-08-29T10:15:48.569012+00:00", "kind": "homepage", "missing": false, "url": "https://www.drush.org"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 98, "longevity": 100, "rhythm": 92}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 5343, "days_push": 16, "days_rel": 55, "gap_med": 17.0, "n_releases_24m": 21}, "score": 96, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}