{"adoption": {"forks": 86, "observed_at": "2026-08-28T04:04:43.852780+00:00", "stars": 1438}, "canonical_url": "https://ross.abutalabs.com/products/tugboat", "card": {"archived": false, "artifact_type": "cli-tool", "description": "A command line tool for interacting with your DigitalOcean droplets.", "domain": ["cloud-computing", "developer-tools"], "enriched": true, "function": ["cli", "cloud", "developer-tools", "ssh"], "health_score": 20, "homepage": null, "language": "Ruby", "license": "MIT", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["petems/tugboat"], "name": "petems/tugboat", "platform": ["cli", "ruby", "cross-platform"], "pushed_at": "2018-03-11T19:09:27+00:00", "repo": "petems/tugboat", "stars": 1438, "tags": ["digitalocean", "droplets", "cloud-management", "ruby-gem", "command-line", "devops"], "topics": ["digitalocean", "tugboat", "droplet", "ruby"], "urls": [], "use_cases": ["manage digitalocean droplets from the terminal", "ssh into my digitalocean servers quickly", "create and destroy droplets via cli", "list digitalocean images and regions", "script digitalocean server management", "alternative to doctl for digitalocean"], "what_it_is": "Tugboat is a Ruby-based command line tool for managing DigitalOcean droplets, offering commands to create, destroy, and SSH into servers. It predates DigitalOcean's official doctl client and is now maintained only for users who prefer its workflow.", "when_to_avoid": ["you want official support and the latest DigitalOcean API features", "you need a actively developed tool with recent releases", "you use other cloud providers besides DigitalOcean"], "when_to_choose": ["you prefer tugboat's workflow over doctl", "you work in a Ruby environment and want a gem-based tool", "you need a lightweight CLI for common droplet operations"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/tugboat", "repo": "petems/tugboat", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:43.852780+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:36:41.393018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "253d8f87975f98c4eac9d1ff74201ebc24f9f8e0a57ed5afe773338cf9f8df77", "fetched_at": "2026-08-28T04:04:43.852780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/petems/tugboat"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:43.852780+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:36:41.393018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "253d8f87975f98c4eac9d1ff74201ebc24f9f8e0a57ed5afe773338cf9f8df77", "fetched_at": "2026-08-28T04:04:43.852780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/petems/tugboat"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:36:41.393018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "253d8f87975f98c4eac9d1ff74201ebc24f9f8e0a57ed5afe773338cf9f8df77", "fetched_at": "2026-08-28T04:04:43.852780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/petems/tugboat"}], "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:43.852780+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:43.852780+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:43.852780+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:36:41.393018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "253d8f87975f98c4eac9d1ff74201ebc24f9f8e0a57ed5afe773338cf9f8df77", "fetched_at": "2026-08-28T04:04:43.852780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/petems/tugboat"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:43.852780+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:43.852780+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:36:41.393018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "253d8f87975f98c4eac9d1ff74201ebc24f9f8e0a57ed5afe773338cf9f8df77", "fetched_at": "2026-08-28T04:04:43.852780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/petems/tugboat"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:43.852780+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:43.852780+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:43.852780+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:36:41.393018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "253d8f87975f98c4eac9d1ff74201ebc24f9f8e0a57ed5afe773338cf9f8df77", "fetched_at": "2026-08-28T04:04:43.852780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/petems/tugboat"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:43.852780+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:43.852780+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:36:41.393018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "253d8f87975f98c4eac9d1ff74201ebc24f9f8e0a57ed5afe773338cf9f8df77", "fetched_at": "2026-08-28T04:04:43.852780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/petems/tugboat"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:36:41.393018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "253d8f87975f98c4eac9d1ff74201ebc24f9f8e0a57ed5afe773338cf9f8df77", "fetched_at": "2026-08-28T04:04:43.852780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/petems/tugboat"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:36:41.393018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "253d8f87975f98c4eac9d1ff74201ebc24f9f8e0a57ed5afe773338cf9f8df77", "fetched_at": "2026-08-28T04:04:43.852780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/petems/tugboat"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:36:41.393018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "253d8f87975f98c4eac9d1ff74201ebc24f9f8e0a57ed5afe773338cf9f8df77", "fetched_at": "2026-08-28T04:04:43.852780+00:00", "kind": "readme", "missing": false, "url": "https://github.com/petems/tugboat"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "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": 4890, "days_push": 3097, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 23, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}