repowisetemporalio/temporal

temporalio / temporal

Temporal service

Go★ 23,494

github.com/temporalio/temporalIndexed at a2de6d8Up to date with upstream

What is temporal?

temporal is a durable execution platform for building scalable applications with reliable application logic. The Temporal server executes Workflows and related tasks, handles intermittent failures, and retries failed operations. The repository is primarily written in Go.

Written by a model from the README and the source

3,156 files and 40,520 symbols in 17 modules, led by Go (2,689 files) and Shell (26).

Code health

6.7out of 10Fair

This codebase scores 6.7 out of 10 for code health, which we rate fair. It also scores maintainability 7.1 and static performance 9.9 out of 10. The three are scored separately and never blended into one number. Risk is concentrated, as it usually is: 300 of 3,156 files are git hotspots, and they average 4.8 — which is where the fixes pay off most.

On the leaderboards:#3 of 3 Workflow orchestrators#14 of 22 Go repos

Use temporalio/temporal in your agent

Point Claude Code, Cursor, Codex or VS Code at this repository. Your agent gets the index this page is built from: cited answers, callers, history and health for any file.

  1. 1.In Claude, open Customize → Connectors, click +, then Add custom connector. On a Team or Enterprise plan an owner adds it first under Organization settings → Connectors.
  2. 2.Paste the server URL below as the Remote MCP server URL, then click Add.
  3. 3.Click Connect. A Repowise sign-in window opens. Approve access.
  4. 4.Repowise's tools are now available in your Claude chats.

Connect with one click. Sign in with Repowise (OAuth), no API key to copy. Works in Claude on the web, desktop, and mobile.

Docs
bash
https://api.repowise.dev/mcp/temporalio/temporal
Editors need an API key: sign in to create one.Sign in to connect

This repo is public, so anyone with a Repowise account and an API key can connect.

Try asking

  • get_risk(["tools/tdbg/scheduleaudit/analyzer.go"])
  • get_answer("how is temporal put together?")
  • get_why("why is temporal structured this way?")

Explore temporal

Key features of temporal

  • Temporal executes application logic as Workflows.
  • Temporal handles intermittent failures during Workflow execution.
  • Temporal retries failed operations.
  • Temporal supports Activities and Workers implemented with supported languages.
  • Temporal provides a CLI for interacting with a running server.
  • Temporal provides a Web UI for viewing sample workflows executing on Temporal.

How temporalio/temporal works

Application logic enters temporal as executable Workflows and related tasks managed by the server. The service directory implements server-side execution and operational behavior. The common directory provides shared code used across the system, while the client directory contains client-side functionality for interacting with the server. The chasm directory maintains internal representations for composing and validating work. The schema directory defines data structures used by system components, and cmd contains command entry points for running server tools. The server preserves workflow behavior across retries and operational edge cases while producing workflow execution state and service responses.

The codebase has 3,156 files and 40,520 symbols in 17 modules, led by Go, Shell and Makefile. Code health is 6.7 out of 10, rated fair.

Getting started with temporal

  1. Install Temporal locally.
    brew install temporal
  2. Start the Temporal server with its dependencies.
    temporal server start-dev
  3. List namespaces with the Temporal CLI.
    temporal operator namespace list
  4. List workflows with the Temporal CLI.
    temporal workflow list

Commands copied from the README

temporalio/temporal FAQ

What is temporal?

temporal is a durable execution platform for building scalable applications. The Temporal server executes Workflows, handles intermittent failures, and retries failed operations.

How does temporal work?

temporal runs executable Workflows and related tasks through its server. The service, common, chasm, schema, client, and cmd directories support execution, shared logic, internal representations, data structures, client access, and commands.

How do I install temporal?

temporal can be installed locally with Homebrew using brew install temporal. Start the local server with temporal server start-dev.

What language is temporal written in?

temporal is primarily written in Go. The repository also includes shell, Makefile, and Terraform files.

How is the temporal code organized?

temporal is organized into modules including common, service, chasm, schema, client, and cmd. These modules cover shared code, server behavior, internal work representations, data structures, client functionality, and command entry points.

Who is temporal for?

temporal is for developers building scalable applications with reliable application logic. It supports implementing Workflows, Activities, and Workers with supported languages.

What license does temporal use?

temporal uses the MIT license.

The summary, features and answers on this page are written by a model from the README and the source, and refreshed with each index.

About this page

Get a page like this for your own codebase

Repowise built this map of temporalio/temporal from its source and git history. It parses every symbol, draws the dependency graph, scores each file's health from complexity, duplication, coverage and churn, finds hotspots and owners in the history, and writes documentation for every module. Your coding agent reads the same index over MCP, so its answers cite real files.

Index your repo freeSee how Repowise worksFree for 2 public repos, with a page like this one.

Prefer local? pip install repowise && repowise init indexes your own checkout, no account needed.