tlaplus/tlaplus

TLC is a model checker for specifications written in TLA+. The TLA+Toolbox is an IDE for TLA+.

View on GitHub ↗Jump to charts ↓Open shareable report →

Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 3 hours ago
Added to GitGenius on September 22nd, 2026
Created on February 2nd, 2016
Open Issues & Pull Requests: 238 (+0)
GitHub issues: Enabled
Number of forks: 268
Total Stargazers: 3,079 (+0)
Total Subscribers: 47 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 8.3 hours
Mean response time: 247.2 days
90th percentile: 1244.9 days
Tracked items: 278

How this project is maintained

About 18% of issues opened in the past year have never received a reply. Only 25% of open issues come from outside the core team — the tracker reads mainly as internal planning. Work labelled "DevEnvironment" is answered fastest, typically in about an hour, while "Toolbox" waits about 3 weeks. Only 47% of issues opened in the past year have been closed. Three people close 95% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 117
New in 7 days: 2
Closed in 7 days: 2
Avg open age: 911 days
Stale 30+ days: 107
Stale 90+ days: 102

Recent activity

Opened in 7 days: 2
Closed in 7 days: 1
Comments in 7 days: 4
Events in 7 days: 6

Top labels

  • Tools (138)
  • enhancement (114)
  • bug (103)
  • Toolbox (71)
  • wontfix (68)
  • help wanted (42)
  • SANY (35)
  • DevEnvironment (18)

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

TLC is a model checker for specifications written in TLA+, paired with the TLA+Toolbox IDE for developing those specifications.

TLC addresses the problem of verifying that distributed systems, concurrent algorithms, and other complex systems behave correctly under all possible conditions. Rather than testing individual execution paths, TLC exhaustively explores the state space defined by a TLA+ specification to find violations of safety and liveness properties. The approach works by taking a formal specification written in TLA+ and systematically checking whether it satisfies stated invariants and temporal properties, catching subtle bugs that testing alone might miss.

Teams should adopt TLC when they need high confidence in the correctness of algorithms or system designs before implementation, particularly for distributed systems where race conditions and edge cases are difficult to reason about manually. The tool suits projects where the cost of failure is high and where specifications can be written at a level of abstraction above code. The TLA+Toolbox IDE provides an integrated environment for writing specifications and running model checking, making the workflow more accessible than command-line tools alone.

Development of the project shows sustained activity with regular commits across the codebase, indicating ongoing maintenance and refinement. The project maintains a structured approach to issue handling, with issues being actively reviewed and addressed. Pull requests receive attention and are merged as work progresses. The repository demonstrates consistent engagement with the community through responses to reported problems and incorporation of improvements.