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

# M203: Concurrency limit exceeded

> Manifest error M203 fires when an agent has more than 10 in-flight requests. Returns HTTP 429. Common with parallel streaming. Fix: reduce parallelism.

## What you saw

```text theme={"theme":{"light":"github-light","dark":"github-dark"}}
[🦚 Manifest M203] Too many concurrent requests. Give it a moment.
See https://manifest.build/docs/errors/M203
```

## Why it happened

Manifest caps in-flight requests per agent at 10 by default. Streaming completions hold a slot until the stream ends, so an agent that fires off parallel streams can hit this fast.

## How to fix it

1. Let in-flight requests finish, then retry. Most SDKs handle this automatically with backoff on `429`.
2. Reduce parallelism on the client side. Most agents only need one or two concurrent calls.
3. On a self-hosted install, raise `CONCURRENCY_MAX` in `proxy-rate-limiter.ts`.

## Related

* [M201: Per-user rate limit](/errors/M201)
* [M202: Per-IP rate limit](/errors/M202)
* [M200: Usage limit exceeded](/errors/M200)
* [Self-hosted setup](/self-hosted)
* [All error codes](/errors)
