{"adoption": {"forks": 1839, "observed_at": "2026-08-28T04:11:32.706877+00:00", "stars": 22549}, "canonical_url": "https://ross.abutalabs.com/products/temporal", "card": {"archived": false, "artifact_type": "service", "description": "Temporal service", "domain": ["microservices", "backend", "developer-tools"], "enriched": true, "function": ["workflow-automation", "scheduling", "microservices", "concurrency", "agent-framework", "developer-tools"], "health_score": 100, "homepage": "https://docs.temporal.io", "language": "Go", "license": "MIT", "license_family": "permissive", "maturity": "stable", "member_repos": ["temporalio/temporal"], "name": "temporalio/temporal", "platform": ["go", "self-hosted", "cloud", "cross-platform"], "pushed_at": "2026-08-27T00:26:48+00:00", "repo": "temporalio/temporal", "stars": 22549, "tags": ["durable-execution", "workflow-engine", "orchestration", "reliability", "fault-tolerance", "distributed-cron", "temporal", "automation", "ai-agents", "docker"], "topics": ["workflows", "workflow-engine", "workflow-automation", "workflow-management", "workflow-management-system", "distributed-systems", "golang", "service-bus", "service-fabric", "microservices-architecture", "microservice-framework", "microservice-orchestration", "cronjob-scheduler", "distributed-cron", "orchestrator", "durable-execution"], "urls": [], "use_cases": ["orchestrate long-running business processes like order fulfillment and payment processing", "run distributed cron jobs and scheduled workflows", "build crash-proof AI agent pipelines that survive failures", "coordinate microservices with reliable retries and timeouts", "execute multi-step workflows that resume after infrastructure outages", "replace fragile in-house job schedulers and state machines"], "what_it_is": "Temporal is an open-source durable execution platform that runs application logic as resilient Workflows, automatically handling failures, retries, and resumption after crashes or outages. It is a mature fork of Uber's Cadence with SDKs for Go, Java, Python, TypeScript, and more, plus a CLI and Web UI.", "when_to_avoid": ["you only need simple one-shot background jobs without durability guarantees", "you cannot operate a stateful server cluster and don't want to use Temporal Cloud", "your workflows are short-lived and a simple queue or cron scheduler suffices", "you need a lightweight library embedded in a single process rather than a platform"], "when_to_choose": ["you need workflows that reliably survive crashes, restarts, and outages over hours, days, or years", "you are orchestrating microservices or long-running business processes with retries and compensation", "you need durable execution for AI agents or multi-step pipelines", "you want a battle-tested, actively maintained platform with SDKs in many languages"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/temporal", "repo": "temporalio/temporal", "role": "main", "score": 97}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:11:32.706877+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T16:57:08.555241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "243da0134c3c54a319b93491731ced655af3cd6a4f9f28703f37190528430625", "fetched_at": "2026-08-28T04:11:32.706877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/temporalio/temporal"}, {"content_hash": "42950598b19ca5cec0e26ca1e5877633614f2d311960f2f0395d974ee56510b1", "fetched_at": "2026-08-29T07:55:21.040823+00:00", "kind": "homepage", "missing": false, "url": "https://docs.temporal.io"}, {"content_hash": "9c3cc08c3480933040784bc8812d567bd24b0deb42fb2f33963f2a3dd9d496b5", "fetched_at": "2026-08-29T07:55:21.050064+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/quickstarts"}, {"content_hash": "3263c35b39179b6bb817b2601743d56c5c53b2b31a4a5e997d2d61c02e2126ec", "fetched_at": "2026-08-29T07:55:21.052212+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/integrations"}, {"content_hash": "30f6170a3633cf5b8721e87d7e1aa1563d5781a7941ce49bb0987a60f45d4ecf", "fetched_at": "2026-08-29T07:55:21.054188+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/develop"}, {"content_hash": "40b298b473aa872459ef123367870ac870d85dece84b089ee2fffd4477b80af7", "fetched_at": "2026-08-29T07:55:21.056006+00:00", "kind": "site_page", "missing": false, "url": "https://temporal.io/changelog"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:11:32.706877+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T16:57:08.555241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "243da0134c3c54a319b93491731ced655af3cd6a4f9f28703f37190528430625", "fetched_at": "2026-08-28T04:11:32.706877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/temporalio/temporal"}, {"content_hash": "42950598b19ca5cec0e26ca1e5877633614f2d311960f2f0395d974ee56510b1", "fetched_at": "2026-08-29T07:55:21.040823+00:00", "kind": "homepage", "missing": false, "url": "https://docs.temporal.io"}, {"content_hash": "9c3cc08c3480933040784bc8812d567bd24b0deb42fb2f33963f2a3dd9d496b5", "fetched_at": "2026-08-29T07:55:21.050064+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/quickstarts"}, {"content_hash": "3263c35b39179b6bb817b2601743d56c5c53b2b31a4a5e997d2d61c02e2126ec", "fetched_at": "2026-08-29T07:55:21.052212+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/integrations"}, {"content_hash": "30f6170a3633cf5b8721e87d7e1aa1563d5781a7941ce49bb0987a60f45d4ecf", "fetched_at": "2026-08-29T07:55:21.054188+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/develop"}, {"content_hash": "40b298b473aa872459ef123367870ac870d85dece84b089ee2fffd4477b80af7", "fetched_at": "2026-08-29T07:55:21.056006+00:00", "kind": "site_page", "missing": false, "url": "https://temporal.io/changelog"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T16:57:08.555241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "243da0134c3c54a319b93491731ced655af3cd6a4f9f28703f37190528430625", "fetched_at": "2026-08-28T04:11:32.706877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/temporalio/temporal"}, {"content_hash": "42950598b19ca5cec0e26ca1e5877633614f2d311960f2f0395d974ee56510b1", "fetched_at": "2026-08-29T07:55:21.040823+00:00", "kind": "homepage", "missing": false, "url": "https://docs.temporal.io"}, {"content_hash": "9c3cc08c3480933040784bc8812d567bd24b0deb42fb2f33963f2a3dd9d496b5", "fetched_at": "2026-08-29T07:55:21.050064+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/quickstarts"}, {"content_hash": "3263c35b39179b6bb817b2601743d56c5c53b2b31a4a5e997d2d61c02e2126ec", "fetched_at": "2026-08-29T07:55:21.052212+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/integrations"}, {"content_hash": "30f6170a3633cf5b8721e87d7e1aa1563d5781a7941ce49bb0987a60f45d4ecf", "fetched_at": "2026-08-29T07:55:21.054188+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/develop"}, {"content_hash": "40b298b473aa872459ef123367870ac870d85dece84b089ee2fffd4477b80af7", "fetched_at": "2026-08-29T07:55:21.056006+00:00", "kind": "site_page", "missing": false, "url": "https://temporal.io/changelog"}], "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:11:32.706877+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:11:32.706877+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:11:32.706877+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T16:57:08.555241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "243da0134c3c54a319b93491731ced655af3cd6a4f9f28703f37190528430625", "fetched_at": "2026-08-28T04:11:32.706877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/temporalio/temporal"}, {"content_hash": "42950598b19ca5cec0e26ca1e5877633614f2d311960f2f0395d974ee56510b1", "fetched_at": "2026-08-29T07:55:21.040823+00:00", "kind": "homepage", "missing": false, "url": "https://docs.temporal.io"}, {"content_hash": "9c3cc08c3480933040784bc8812d567bd24b0deb42fb2f33963f2a3dd9d496b5", "fetched_at": "2026-08-29T07:55:21.050064+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/quickstarts"}, {"content_hash": "3263c35b39179b6bb817b2601743d56c5c53b2b31a4a5e997d2d61c02e2126ec", "fetched_at": "2026-08-29T07:55:21.052212+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/integrations"}, {"content_hash": "30f6170a3633cf5b8721e87d7e1aa1563d5781a7941ce49bb0987a60f45d4ecf", "fetched_at": "2026-08-29T07:55:21.054188+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/develop"}, {"content_hash": "40b298b473aa872459ef123367870ac870d85dece84b089ee2fffd4477b80af7", "fetched_at": "2026-08-29T07:55:21.056006+00:00", "kind": "site_page", "missing": false, "url": "https://temporal.io/changelog"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:11:32.706877+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:11:32.706877+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T16:57:08.555241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "243da0134c3c54a319b93491731ced655af3cd6a4f9f28703f37190528430625", "fetched_at": "2026-08-28T04:11:32.706877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/temporalio/temporal"}, {"content_hash": "42950598b19ca5cec0e26ca1e5877633614f2d311960f2f0395d974ee56510b1", "fetched_at": "2026-08-29T07:55:21.040823+00:00", "kind": "homepage", "missing": false, "url": "https://docs.temporal.io"}, {"content_hash": "9c3cc08c3480933040784bc8812d567bd24b0deb42fb2f33963f2a3dd9d496b5", "fetched_at": "2026-08-29T07:55:21.050064+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/quickstarts"}, {"content_hash": "3263c35b39179b6bb817b2601743d56c5c53b2b31a4a5e997d2d61c02e2126ec", "fetched_at": "2026-08-29T07:55:21.052212+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/integrations"}, {"content_hash": "30f6170a3633cf5b8721e87d7e1aa1563d5781a7941ce49bb0987a60f45d4ecf", "fetched_at": "2026-08-29T07:55:21.054188+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/develop"}, {"content_hash": "40b298b473aa872459ef123367870ac870d85dece84b089ee2fffd4477b80af7", "fetched_at": "2026-08-29T07:55:21.056006+00:00", "kind": "site_page", "missing": false, "url": "https://temporal.io/changelog"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:11:32.706877+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:11:32.706877+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:11:32.706877+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T16:57:08.555241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "243da0134c3c54a319b93491731ced655af3cd6a4f9f28703f37190528430625", "fetched_at": "2026-08-28T04:11:32.706877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/temporalio/temporal"}, {"content_hash": "42950598b19ca5cec0e26ca1e5877633614f2d311960f2f0395d974ee56510b1", "fetched_at": "2026-08-29T07:55:21.040823+00:00", "kind": "homepage", "missing": false, "url": "https://docs.temporal.io"}, {"content_hash": "9c3cc08c3480933040784bc8812d567bd24b0deb42fb2f33963f2a3dd9d496b5", "fetched_at": "2026-08-29T07:55:21.050064+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/quickstarts"}, {"content_hash": "3263c35b39179b6bb817b2601743d56c5c53b2b31a4a5e997d2d61c02e2126ec", "fetched_at": "2026-08-29T07:55:21.052212+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/integrations"}, {"content_hash": "30f6170a3633cf5b8721e87d7e1aa1563d5781a7941ce49bb0987a60f45d4ecf", "fetched_at": "2026-08-29T07:55:21.054188+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/develop"}, {"content_hash": "40b298b473aa872459ef123367870ac870d85dece84b089ee2fffd4477b80af7", "fetched_at": "2026-08-29T07:55:21.056006+00:00", "kind": "site_page", "missing": false, "url": "https://temporal.io/changelog"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:11:32.706877+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:11:32.706877+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T16:57:08.555241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "243da0134c3c54a319b93491731ced655af3cd6a4f9f28703f37190528430625", "fetched_at": "2026-08-28T04:11:32.706877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/temporalio/temporal"}, {"content_hash": "42950598b19ca5cec0e26ca1e5877633614f2d311960f2f0395d974ee56510b1", "fetched_at": "2026-08-29T07:55:21.040823+00:00", "kind": "homepage", "missing": false, "url": "https://docs.temporal.io"}, {"content_hash": "9c3cc08c3480933040784bc8812d567bd24b0deb42fb2f33963f2a3dd9d496b5", "fetched_at": "2026-08-29T07:55:21.050064+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/quickstarts"}, {"content_hash": "3263c35b39179b6bb817b2601743d56c5c53b2b31a4a5e997d2d61c02e2126ec", "fetched_at": "2026-08-29T07:55:21.052212+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/integrations"}, {"content_hash": "30f6170a3633cf5b8721e87d7e1aa1563d5781a7941ce49bb0987a60f45d4ecf", "fetched_at": "2026-08-29T07:55:21.054188+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/develop"}, {"content_hash": "40b298b473aa872459ef123367870ac870d85dece84b089ee2fffd4477b80af7", "fetched_at": "2026-08-29T07:55:21.056006+00:00", "kind": "site_page", "missing": false, "url": "https://temporal.io/changelog"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T16:57:08.555241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "243da0134c3c54a319b93491731ced655af3cd6a4f9f28703f37190528430625", "fetched_at": "2026-08-28T04:11:32.706877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/temporalio/temporal"}, {"content_hash": "42950598b19ca5cec0e26ca1e5877633614f2d311960f2f0395d974ee56510b1", "fetched_at": "2026-08-29T07:55:21.040823+00:00", "kind": "homepage", "missing": false, "url": "https://docs.temporal.io"}, {"content_hash": "9c3cc08c3480933040784bc8812d567bd24b0deb42fb2f33963f2a3dd9d496b5", "fetched_at": "2026-08-29T07:55:21.050064+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/quickstarts"}, {"content_hash": "3263c35b39179b6bb817b2601743d56c5c53b2b31a4a5e997d2d61c02e2126ec", "fetched_at": "2026-08-29T07:55:21.052212+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/integrations"}, {"content_hash": "30f6170a3633cf5b8721e87d7e1aa1563d5781a7941ce49bb0987a60f45d4ecf", "fetched_at": "2026-08-29T07:55:21.054188+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/develop"}, {"content_hash": "40b298b473aa872459ef123367870ac870d85dece84b089ee2fffd4477b80af7", "fetched_at": "2026-08-29T07:55:21.056006+00:00", "kind": "site_page", "missing": false, "url": "https://temporal.io/changelog"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T16:57:08.555241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "243da0134c3c54a319b93491731ced655af3cd6a4f9f28703f37190528430625", "fetched_at": "2026-08-28T04:11:32.706877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/temporalio/temporal"}, {"content_hash": "42950598b19ca5cec0e26ca1e5877633614f2d311960f2f0395d974ee56510b1", "fetched_at": "2026-08-29T07:55:21.040823+00:00", "kind": "homepage", "missing": false, "url": "https://docs.temporal.io"}, {"content_hash": "9c3cc08c3480933040784bc8812d567bd24b0deb42fb2f33963f2a3dd9d496b5", "fetched_at": "2026-08-29T07:55:21.050064+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/quickstarts"}, {"content_hash": "3263c35b39179b6bb817b2601743d56c5c53b2b31a4a5e997d2d61c02e2126ec", "fetched_at": "2026-08-29T07:55:21.052212+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/integrations"}, {"content_hash": "30f6170a3633cf5b8721e87d7e1aa1563d5781a7941ce49bb0987a60f45d4ecf", "fetched_at": "2026-08-29T07:55:21.054188+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/develop"}, {"content_hash": "40b298b473aa872459ef123367870ac870d85dece84b089ee2fffd4477b80af7", "fetched_at": "2026-08-29T07:55:21.056006+00:00", "kind": "site_page", "missing": false, "url": "https://temporal.io/changelog"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T16:57:08.555241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "243da0134c3c54a319b93491731ced655af3cd6a4f9f28703f37190528430625", "fetched_at": "2026-08-28T04:11:32.706877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/temporalio/temporal"}, {"content_hash": "42950598b19ca5cec0e26ca1e5877633614f2d311960f2f0395d974ee56510b1", "fetched_at": "2026-08-29T07:55:21.040823+00:00", "kind": "homepage", "missing": false, "url": "https://docs.temporal.io"}, {"content_hash": "9c3cc08c3480933040784bc8812d567bd24b0deb42fb2f33963f2a3dd9d496b5", "fetched_at": "2026-08-29T07:55:21.050064+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/quickstarts"}, {"content_hash": "3263c35b39179b6bb817b2601743d56c5c53b2b31a4a5e997d2d61c02e2126ec", "fetched_at": "2026-08-29T07:55:21.052212+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/integrations"}, {"content_hash": "30f6170a3633cf5b8721e87d7e1aa1563d5781a7941ce49bb0987a60f45d4ecf", "fetched_at": "2026-08-29T07:55:21.054188+00:00", "kind": "site_page", "missing": false, "url": "https://docs.temporal.io/develop"}, {"content_hash": "40b298b473aa872459ef123367870ac870d85dece84b089ee2fffd4477b80af7", "fetched_at": "2026-08-29T07:55:21.056006+00:00", "kind": "site_page", "missing": false, "url": "https://temporal.io/changelog"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 92}, "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": 2513, "days_push": 7, "days_rel": 56, "gap_med": 9, "n_releases_24m": 36}, "score": 97, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}