---
title: "Run a thread"
description: "Start work, steer the agent mid-run, retry from a checkpoint, attach files, and manage context"
canonical_url: "https://hoplite.sh/docs/threads/run"
markdown_url: "https://hoplite.sh/docs/threads/run.md"
---

# Run a thread
URL: /docs/threads/run
LLM index: /llms.txt
Description: Start work, steer the agent mid-run, retry from a checkpoint, attach files, and manage context
Related: /docs/threads/review, /docs/prompting, /docs/agent/slash-commands

# Run a thread

Start a thread by sending a message against a project. Each message you send kicks off a **run** — one agent execution turn — and the thread gets its own [sandbox](/docs/sandboxes), diff, and pull requests. For how to phrase what you want, see [Prompting](/docs/prompting).

## Send messages while the agent works

You don't have to wait for a run to finish. Messages sent mid-run stack up in a **Queued** panel above the composer and are applied in order once the current run completes. You can remove a queued message before it runs.

## Stop and steer

Type `/stop` to halt the current run immediately. Your next message takes over from there, so stopping is how you redirect an agent that's headed the wrong way.

## Retry from a checkpoint

Type `/retry` to re-run from the last checkpoint after a failure or a wrong turn. A `failed` thread can always be retried this way — see [thread statuses](/docs/threads/manage#thread-statuses).

## Attach files

Drop, paste, or pick files in the composer:

| Rule | Detail |
| --- | --- |
| Count | Up to **10 attachments per message** |
| Size | Up to **50 MB each** |
| Images | Render inline and pass to the model as vision input, on models that support images |
| Other file types | Attach as links the agent can read from the sandbox |
| Long text pastes | Automatically convert to a `.txt` attachment so they don't flood the conversation |

## Manage the context window

A **context gauge** shows how much of the model's context window the thread has used. When it fills up, type `/compact` to summarize older context and free tokens.

<Callout type="tip" title="Compact before long follow-ups">
A nearly full gauge means less room for the agent to work. Compacting keeps a summary of the history, so long-running threads stay usable.
</Callout>

Slash commands like `/stop`, `/retry`, and `/compact` are covered in full at [Slash commands](/docs/agent/slash-commands).

## Sitemap

See the full [sitemap](/docs/sitemap.md) for all pages.
Well-known sitemap: [/docs/.well-known/sitemap.md](/docs/.well-known/sitemap.md).
