# How to Resume a Previous Rescue Task After Interruption in Codex

> Easily resume interrupted Codex rescue tasks. Learn how to use the --resume flag to pick up where you left off in the openai codex-plugin-cc repository.

- Repository: [OpenAI/codex-plugin-cc](https://github.com/openai/codex-plugin-cc)
- Tags: how-to-guide
- Published: 2026-07-18

---

**When you run `/codex:rescue`, the plugin automatically detects existing Codex rescue threads and prompts you to continue or start fresh, or you can bypass the prompt by adding `--resume` or `--fresh` flags directly to the command.**

The `openai/codex-plugin-cc` plugin provides a seamless way to pick up where you left off after interrupting a Codex rescue session. When you invoke the `/codex:rescue` command, the system checks for active threads and offers intelligent continuation options. Understanding the resume mechanism ensures you never lose context when switching between tasks or recovering from an interrupted session.

## Automatic Detection of Resumable Threads

Before launching a new rescue operation, the command checks for existing state. This prevents accidental overwrites of in-progress work.

### Querying for Active Rescue Sessions

The detection logic resides in [`plugins/codex/commands/rescue.md`](https://github.com/openai/codex-plugin-cc/blob/main/plugins/codex/commands/rescue.md). When you execute `/codex:rescue`, the plugin first runs:

```bash
node "${CLAUDE_PLUGIN_ROOT}/scripts/codex-companion.mjs" task-resume-candidate --json

```

This returns a JSON object indicating whether a **Codex rescue thread** is still alive for the current repository. When `available: true`, the plugin knows a previous session exists and can be resumed.

### Interactive User Prompts

If the script detects a resumable thread, the command issues an `AskUserQuestion` prompt offering two distinct choices:

- **Continue current Codex thread** (recommended when your wording suggests "continue", "resume", or "apply the top fix")
- **Start a new Codex thread** (recommended for entirely new tasks)

## Routing Flags Through the Sub-Agent

Once you make a selection (or provide explicit flags), the system routes your request through the **`codex-rescue`** sub-agent defined in [`plugins/codex/agents/codex-rescue.md`](https://github.com/openai/codex-plugin-cc/blob/main/plugins/codex/agents/codex-rescue.md).

### Flag Translation Logic

The sub-agent translates your choice into arguments for the companion script:

- Selecting *Continue* adds `--resume`, which becomes **`--resume-last`** when calling `codex-companion.mjs`
- Selecting *Start a new thread* adds `--fresh`, which invokes the script without resume flags

The sub-agent then executes a single `Bash` call:

```bash
node "${CLAUDE_PLUGIN_ROOT}/scripts/codex-companion.mjs" task <flags> <natural-language-prompt>

```

The raw stdout from the companion script returns verbatim to you, preserving Codex's original output without additional commentary.

## Manual Resume with Explicit Flags

If you already know your intent, you can skip the interactive prompt by appending flags directly to the `/codex:rescue` command.

Use **`--resume`** to explicitly continue the most recent thread:

```bash
/codex:rescue --resume investigate flaky test

```

Use **`--fresh`** to force a brand-new thread, discarding any previous state:

```bash
/codex:rescue --fresh investigate flaky test

```

## Practical Code Examples

Here are common patterns for managing rescue session continuity:

```bash

# Let the plugin decide (prompts you if a thread exists)

/codex:rescue investigate flaky test

# Explicitly continue the most recent thread

/codex:rescue --resume investigate flaky test

# Explicitly start a new thread, discarding any previous state

/codex:rescue --fresh investigate flaky test

# Run the rescue in the background while you keep working

/codex:rescue --background --resume investigate flaky test

```

## Summary

- The `/codex:rescue` command automatically detects resumable threads using `codex-companion.mjs task-resume-candidate --json`
- When a pending session exists, the plugin prompts you to continue or start fresh via `AskUserQuestion`
- The `codex-rescue` sub-agent translates `--resume` to `--resume-last` and `--fresh` to no-resume-flag when calling the companion script
- Append `--resume` or `--fresh` to bypass prompts and control session behavior explicitly
- Background execution works with resume flags for multitasking scenarios

## Frequently Asked Questions

### What happens if I don't specify --resume or --fresh?

If you run `/codex:rescue` without explicit flags, the plugin executes the resume candidate check. When an active thread exists, it prompts you interactively to choose between continuing the existing session or starting fresh. If no resumable thread exists, it automatically starts a new session.

### Where is the resume logic implemented in the source code?

According to the `openai/codex-plugin-cc` source code, the detection logic resides in [`plugins/codex/commands/rescue.md`](https://github.com/openai/codex-plugin-cc/blob/main/plugins/codex/commands/rescue.md), which handles the `task-resume-candidate` query and user prompting. The flag translation and execution logic lives in [`plugins/codex/agents/codex-rescue.md`](https://github.com/openai/codex-plugin-cc/blob/main/plugins/codex/agents/codex-rescue.md), where the sub-agent forwards requests to `codex-companion.mjs`.

### Can I resume a rescue task while running other Claude Code operations?

Yes. Use the **`--background`** flag combined with **`--resume`** to continue a previous rescue session without blocking your terminal. This allows the Codex companion script to run independently while you execute other commands.

### What's the difference between --resume and --fresh at the companion script level?

As implemented in `openai/codex-plugin-cc`, `--resume` becomes **`--resume-last`** when passed to `codex-companion.mjs task`, which instructs Codex to load the previous conversation state. The `--fresh` flag results in no resume argument being passed, forcing Codex to initialize a completely new task context.