{"adoption": {"forks": 93, "observed_at": "2026-09-03T02:15:14.468744+00:00", "stars": 1232}, "canonical_url": "https://ross.abutalabs.com/products/multi-gitter", "card": {"archived": false, "artifact_type": "cli-tool", "description": "Update multiple repositories in with one command", "domain": ["developer-tools", "version-control"], "enriched": true, "function": ["developer-tools", "workflow-automation", "cli", "version-control"], "health_score": 99, "homepage": null, "language": "Go", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["lindell/multi-gitter"], "name": "lindell/multi-gitter", "platform": ["cli", "cross-platform", "go"], "pushed_at": "2026-09-02T22:11:38+00:00", "repo": "lindell/multi-gitter", "stars": 1232, "tags": ["git", "github", "gitlab", "bulk-changes", "pull-requests", "repository-management", "batch-updates", "devops", "automation", "command-line"], "topics": ["git", "github", "gitlab", "script", "golang", "go", "cli", "commandline", "developer-tools", "devops", "devtools", "automation", "productivity"], "urls": [], "use_cases": ["update a dependency across all repos in an org", "sync a PR template file to many repositories", "run automated refactoring over multiple repos", "bulk-fix linting issues and open PRs", "search and replace text across an organization's repositories", "automatically merge change PRs once CI succeeds"], "what_it_is": "multi-gitter is a Go CLI tool that runs a script or program across many Git repositories at once, creating pull requests for any changes. It supports GitHub, GitLab, and other platforms, with options for automatic merging after CI passes.", "when_to_avoid": ["you only need to change a single repository", "you need a GUI or web interface for bulk edits", "your changes require interactive review before each commit"], "when_to_choose": ["you maintain many repositories and need to apply the same change everywhere", "you want PR-based workflows rather than direct commits", "you want to script changes in any language (bash, Python, Node.js, Go)", "you use GitHub or GitLab and want automated PR creation and merging"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/multi-gitter", "repo": "lindell/multi-gitter", "role": "main", "score": 90}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-09-03T02:15:14.468744+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T08:22:21.814895+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e23e92c3928e2cc52faa6b9e812513546890d74f214cd5bfe67e125a074f686a", "fetched_at": "2026-09-03T02:15:14.468744+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lindell/multi-gitter"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-09-03T02:15:14.468744+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T08:22:21.814895+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e23e92c3928e2cc52faa6b9e812513546890d74f214cd5bfe67e125a074f686a", "fetched_at": "2026-09-03T02:15:14.468744+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lindell/multi-gitter"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T08:22:21.814895+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e23e92c3928e2cc52faa6b9e812513546890d74f214cd5bfe67e125a074f686a", "fetched_at": "2026-09-03T02:15:14.468744+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lindell/multi-gitter"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-09-03T02:15:14.468744+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-09-03T02:15:14.468744+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-09-03T02:15:14.468744+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T08:22:21.814895+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e23e92c3928e2cc52faa6b9e812513546890d74f214cd5bfe67e125a074f686a", "fetched_at": "2026-09-03T02:15:14.468744+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lindell/multi-gitter"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-09-03T02:15:14.468744+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-09-03T02:15:14.468744+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T08:22:21.814895+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e23e92c3928e2cc52faa6b9e812513546890d74f214cd5bfe67e125a074f686a", "fetched_at": "2026-09-03T02:15:14.468744+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lindell/multi-gitter"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-09-03T02:15:14.468744+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-09-03T02:15:14.468744+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-09-03T02:15:14.468744+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T08:22:21.814895+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e23e92c3928e2cc52faa6b9e812513546890d74f214cd5bfe67e125a074f686a", "fetched_at": "2026-09-03T02:15:14.468744+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lindell/multi-gitter"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-09-03T02:15:14.468744+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-09-03T02:15:14.468744+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T08:22:21.814895+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e23e92c3928e2cc52faa6b9e812513546890d74f214cd5bfe67e125a074f686a", "fetched_at": "2026-09-03T02:15:14.468744+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lindell/multi-gitter"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T08:22:21.814895+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e23e92c3928e2cc52faa6b9e812513546890d74f214cd5bfe67e125a074f686a", "fetched_at": "2026-09-03T02:15:14.468744+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lindell/multi-gitter"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T08:22:21.814895+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e23e92c3928e2cc52faa6b9e812513546890d74f214cd5bfe67e125a074f686a", "fetched_at": "2026-09-03T02:15:14.468744+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lindell/multi-gitter"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T08:22:21.814895+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e23e92c3928e2cc52faa6b9e812513546890d74f214cd5bfe67e125a074f686a", "fetched_at": "2026-09-03T02:15:14.468744+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lindell/multi-gitter"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 100, "longevity": 100, "rhythm": 71}, "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": 2298, "days_push": 0, "days_rel": 115, "gap_med": 38.0, "n_releases_24m": 15}, "score": 90, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 3, "stale_scrape": false}}