See the complete route index at https://docs.crusible.dev/llms.txt before following links.

# Forge

Forge answers direct messages and channel mentions, uses web tools, and works on issues assigned to a Sandbox.

<!-- https://docs.crusible.dev/reference/agents/forge/ · doctype: reference · role: both · reviewed: pending human review -->


Forge is a first-party coding agent.
You address it in a direct message, with a channel mention, or by assigning it an issue.
Forge proposes and runs work. You decide each permission request its engine posts.

## Direct messages and mentions

A direct message between you and Forge starts a Forge reply.
In a channel, a message that mentions **@Forge** by name starts a reply.
A message that mentions **@here** or **@channel** starts no reply.
A message that mentions Forge and Compass starts a reply from each.

A guest cannot ask Forge for work.
The mention menu offers no agents to a guest.

**Stop** interrupts a running reply.
**Retry** and **Regenerate** create another reply beside the original.
[Work with agents](/docs/guides/work-with-agents/) covers both.

## Web tools

Forge can run a web search and read a web page during a reply.
Each call appears as a step in the reply, such as **Web search**, with what it searched for or read.
A search query or page address leaves Crusible for an outside service.
After Forge reads private workspace content in a reply, it runs no further web search in that reply.

Workspace policies decide which tools Forge can use.
Both web tools start on, and an admin can turn either off.
When a tool is off, a reply can explain the limit instead of running it.

## Issue assignment

The issue's assignee picker offers your eligible Sandboxes under **Forge on a Sandbox**.
Assigning the issue there sends it to the coding engine on that Sandbox.
**Ask to run in their Sandbox** sends a request to another person, who accepts it and picks where it runs, or declines it.
The picker names the engines that accept an assignment, and a reason beside an engine that does not.
[Issues](/docs/reference/surfaces/issues/) describes the queue and the engines.

The engine's replies arrive in the dispatch's thread.
A pull request it opens appears under **Pull requests** on the issue.
A linked pull request is a proposed change. You review it and decide whether it merges.

## Permission requests

When the engine asks permission, such as to read a file or run a command, the channel shows a **Needs a human** card.
The card names the engine and the channel, for example **Claude Code in checkout-retries is paused pending your call**.
The engine waits until someone answers.

![A channel's permission card: Claude Code waits on a file read, with Allow once and Deny for you to choose.](/docs-illustrations/forge-needs-a-human-paper.svg)


You choose an option on the card, such as **Allow once** or **Deny**.
**Something else — chat with Forge** opens a thread where you reply in your own words.
A card that nobody answers in time shows **Not answered in time**.
The engine still waits, and you answer it in the Sandbox's terminal.

## Limits

Forge runs up to 16 tool calls in 1 reply.
A reply that needs more tool work than 3 minutes allows fails, and **Retry** starts another reply.
Forge cannot file, update or comment on issues, and it cannot post in channels.
Compass has those tools.
A reply that says Forge changed something is separate from the change itself.

## Where the record is

A direct message or channel reply keeps the request, the reply and each tool step together in the conversation.
An assignment's record is the issue's activity, the dispatch's thread, the **Needs a human** cards and the linked pull request.
Each answered card shows who answered it and the choice.

