Rabbitrabbit/ide

Docs / Agent

How the agent loop works.

Overview

The Rabbit agent (@burrow) is a multi-step agentic loop powered by tool calling. When you send a message, the agent:

  • Reads your message and the loaded context (rules, memories, project profile).
  • Plans which tools to call and in what order.
  • Executes tools one-by-one, feeding results back into the context.
  • Produces a final response with code changes queued for your review.

Tool calling

The agent has 45 native tools registered at startup. These cover file reading, search, editing, shell commands, project graph analysis, context management, web access, and more. Every tool call is visible in the chat panel with a summary card.

Scratchpad (G2)

When a tool returns more data than fits inline (e.g. a 200KB file), the result is automatically stored in the scratchpad and replaced with a head/tail preview. The agent can expand any scratchpad entry on demand.

Sub-agents (O8)

The agent can spawn cheap-model sub-agents for side-quests like exploring a different part of the codebase. Sub-agents run on a local model, read up to 8 files, and return a one-paragraph summary.

Apply / Reject flow

File edits are queued as pending diffs. You can review each diff inline in the editor, accept or reject individual changes, or apply all at once. Destructive operations (shell commands, file writes) require confirmation by default.

Skills

Skills are reusable instruction packages (SKILL.md) stored in .rabbit-ide/skills/. When a task matches a skill, the agent loads it via use_skill. You can also invoke skills manually with slash-commands: /deploy, /test, etc.