GitPedia

Agda stdlib

The Agda standard library

From agda·Updated June 24, 2026·View on GitHub·

**agda stdlib** is a The Agda standard library The project is written primarily in Agda, distributed under the Other license, first published in 2014. Key topics include: agda, library, proof.

Latest release: v2.4
June 17, 2026View Changelog →

Ubuntu build

Ubuntu build

DOI

The Agda standard library

The standard library aims to contain all the tools needed to write both
programs and proofs easily. While we always try and write efficient
code, we prioritize ease of proof over type-checking and normalization
performance. If computational performance is important to you, then
perhaps try agda-prelude
instead.

Getting started

If you're looking to find your way around the library, there are several
different ways to get started:

  • The library's structure and the associated design choices are described
    in the README.agda.

  • The README folder,
    which mirrors the structure of the main library, contains examples of how to
    use some of the more common modules. Feel free to open a new issue if there's a particular module you feel could do with
    some more documentation.

  • You can browse the library's source code
    in glorious clickable HTML.

Installation instructions

Automated installation (currently experimental)

On Unix-style systems, it should be as simple as running the following command in
a shell:

shell
sh -c "$(curl --proto '=https' --tlsv1.2 -s https://raw.githubusercontent.com/agda/agda-stdlib/refs/heads/master/stdlib-install.sh)"

Manual installation

See the installation instructions for the latest version of the standard library.

Old versions of Agda

If you're using an old version of Agda, you can download the corresponding version
of the standard library on the Agda wiki.
The module index for older versions of the library is also available. For example,
version 1.7 can be found at https://agda.github.io/agda-stdlib/v1.7/, just
replace in the URL 1.7 with the version that you need.

Development version of Agda

If you're using a development version of Agda rather than the latest official release,
you should use the experimental branch of the standard library rather than master.
Instructions for updating the experimental branch.
The experimental branch contains non-backward compatible patches for upcoming
changes to the language.

Type-checking with flags

The --safe flag

Most of the library can be type-checked using the --safe flag. Please consult
GenerateEverything.hs
for a full list of modules that use unsafe features.

The --without-K flag

Most of the library can be type-checked using the --without-K flag. Please consult
GenerateEverything.hs
for a full list of modules that use axiom K, requiring the --with-K flag.

Contributing to the library

If you would like to suggest improvements, feel free to use the Issues tab.
Even better, if you would like to make the improvements yourself, we have instructions
in HACKING to help
you get started. For those who would simply like to help out, issues marked with
the low-hanging-fruit tag are a good starting point.

Contributors

Showing top 12 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from agda/agda-stdlib via the GitHub API.Last fetched: 6/25/2026