---
title: "stale-status"
description: "Mass-set MangaDex reading status for titles whose latest chapter is older than a cutoff."
---

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

# stale-status

```sh
manifold mangadex stale-status [flags]
```

Scans your MangaDex library for titles whose latest uploaded chapter is older than a cutoff, then moves them to a target reading status (default `on_hold`). Dry-run until `--apply`.

## Flags

### `--older-than <duration>`

Select titles whose latest uploaded chapter is at least this old. Durations
can be written as a number of days (`90` or `90d`), weeks (`12w`), months
(`6mo`), or years (`2y`).

- Default: `365d`

Example:

```sh
manifold mangadex stale-status --older-than 180d
```

### `--to <status>`

Set stale titles to this MangaDex reading status. Valid statuses include
`reading`, `re_reading`, `on_hold`, `plan_to_read`, `completed`, and `dropped`.

- Default: `on_hold`

Example:

```sh
manifold mangadex stale-status --to dropped
```

### `--from <statuses>`

Limit changes to titles currently in one of these comma-separated MangaDex
reading statuses.

- Default: `reading,re_reading`

Example:

```sh
manifold mangadex stale-status --from reading,on_hold
```

### `--apply`

Write the target status to MangaDex. Without this flag, the command builds and
reports a plan without changing your library.

- Default: `false`

Example:

```sh
manifold mangadex stale-status --older-than 180d --to on_hold --apply
```

### `--use-plan`

Skip the scan and reuse `.tmp/mangadex-stale-plan.json` from the previous run.
The command requires the relevant flags to match the saved plan.

- Default: `false`

Example:

```sh
manifold mangadex stale-status --use-plan --apply
```

### `--mangadex-client-id <id>`

OAuth client ID for the MangaDex password grant. Falls back to
`MANIFOLD_MANGADEX_CLIENT_ID`.

Example:

```sh
manifold mangadex stale-status --mangadex-client-id "$MANIFOLD_MANGADEX_CLIENT_ID"
```

### `--mangadex-client-secret <secret>`

OAuth client secret for the MangaDex password grant. Falls back to
`MANIFOLD_MANGADEX_CLIENT_SECRET`.

Example:

```sh
manifold mangadex stale-status --mangadex-client-secret "$MANIFOLD_MANGADEX_CLIENT_SECRET"
```

### `--mangadex-username <username>`

MangaDex account username for the password grant. Falls back to
`MANIFOLD_MANGADEX_USERNAME`.

Example:

```sh
manifold mangadex stale-status --mangadex-username "$MANIFOLD_MANGADEX_USERNAME"
```

### `--mangadex-password <password>`

MangaDex account password for the password grant. Falls back to
`MANIFOLD_MANGADEX_PASSWORD`.

Example:

```sh
manifold mangadex stale-status --mangadex-password "$MANIFOLD_MANGADEX_PASSWORD"
```

## Usage

```sh
manifold mangadex stale-status
manifold mangadex stale-status --older-than 180d --to on_hold
bun run manifold mangadex stale-status --apply
bun run manifold mangadex stale-status --use-plan --apply
```

The first run builds a plan under `.tmp/` (upload timestamps cached ~7 days). Large libraries take several minutes; requests are rate-spaced and retry on 429/5xx.

Source: https://manifold.jfa.dev/cli/mangadex/stale-status/index.mdx
