> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mesa.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Limits

> System limits for repositories, files, operations, pagination, and timeouts.

This page documents the current system limits for Mesa. These limits will evolve as we scale —
if you're hitting a limit, [reach out](https://discord.gg/mesa) and we can work with you.

## Repository limits

| Resource               | Limit          |
| ---------------------- | -------------- |
| Repository name length | 100 characters |

## Git push limits

| Resource                 | Limit  |
| ------------------------ | ------ |
| Max pack size per push   | 5 GiB  |
| Max ref updates per push | 10,000 |

There are no per-file size limits within a Git push — the constraint is on the total pack size.

## REST API content limits

When creating or modifying files through the REST API and SDKs, content is sent inline:

| Resource                             | Limit  |
| ------------------------------------ | ------ |
| Inline data per file operation       | 128 KB |
| Total inline data per API call       | 16 MB  |
| Max file operations per API call     | 10,000 |
| Max operations per streaming message | 500    |
| Max streaming messages per call      | 200    |

For files larger than 128 KB, use `git push` or the [virtual filesystem](/content/concepts/filesystem).

## Diff limits

| Resource                     | Limit |
| ---------------------------- | ----- |
| Max blob size for diffs      | 1 MB  |
| Max files in a diff response | 3,000 |

Files larger than 1 MB are omitted from diff responses with an `omitted` marker. The full file
content is still accessible via the Content API.

## Pagination limits

| Endpoint              | Default page size | Max page size |
| --------------------- | ----------------- | ------------- |
| List refs / bookmarks | 100               | 500           |
| List tree entries     | 100               | 500           |
| Change history        | 100               | 500           |
| List changes          | 20                | 100           |
| List commits          | 20                | 100           |

## Timeouts

| Resource                   | Timeout    |
| -------------------------- | ---------- |
| API request idle timeout   | 10 minutes |
| VCS operation idle timeout | 5 minutes  |

Long-running Git operations (large clones, big pushes) have up to 10 minutes before the
connection is closed due to inactivity.

## Unsupported features

| Feature                     | Status                                                                  |
| --------------------------- | ----------------------------------------------------------------------- |
| Git LFS                     | Not supported — commit large files directly                             |
| Shallow clones (`--depth`)  | Not yet supported                                                       |
| Partial clones (`--filter`) | Not yet supported                                                       |
| Git tags                    | Not supported — use [bookmarks](/content/concepts/versioning#bookmarks) |
