Pearl Pearl
Inside Pearl IDE

Meet Pearl Scout.

The AI coding partner built into Pearl. Three purpose-built modes share one inline-diff workflow, one project memory, and one context budget — across every major model.

Scout is gated by a Pearl account — including Codex, Claude Code, and Copilot.
The three modes

Three modes are not three personalities.

Each mode is a distinct agent with its own tool allowlist, its own system prompt, and its own output contract. Pick the mode that matches the work.

Ask — @Pearl-Ask

Explain and search.

Read-only Q&A grounded in the codebase. Never writes, never runs commands — even if you ask.

No TODO lists. No "let me start by…". Those phrasings belong to Agent mode. In Ask mode you describe and explain — never narrate work.

Tools: read file, search content, find by pattern, list directory, read diagnostics. No write, edit, or run.

Reach for it when: "What does this function do?", "Where is this used?", "Explain this error."

Plan — @Pearl-Plan

Design before you write.

Reads the workspace, then emits a phased execution plan as an interactive checklist with per-phase Run buttons.

Issue all the read calls in a single response. Pearl executes them concurrently and gives you the combined results in the next turn — sequential reads waste a round-trip per file.

Tools: read-only during planning; execution happens later in Agent mode, scoped per-phase.

Reach for it when: Multi-file refactors, new features, anything where you want to align on approach first.

Agent — @Pearl-Agent

Ship it.

Full-autonomy end-to-end coding. Reads, writes, edits, runs tests, runs builds, delegates to sub-agents.

Stop only when the task is fully done. Act without waiting for user input unless explicitly required. Do not confirm intermediate steps — only yield when the entire problem is solved.

Tools: file read/write/edit, command execution, diagnostics, runSubagent, web fetch — plus the inline-diff machinery on every write.

Reach for it when: "Implement this", "Fix the failing test", "Migrate this file from JS to TS."

Agent mode shows a one-time confirmation the first time you enter it. After that, it runs without gating.
The inline-diff workflow

No surprise writes. Ever.

Every Agent edit lands as an inline diff in the editor — green decorations on added lines, red ghost text on removed lines, right where the change is.

  • Floating prev/next navigator with Keep / Undo buttons per hunk
  • Lens widget shows before/after at a glance
  • Yellow ChangeSet dots on every file the agent touched — in the file explorer and on tabs
  • One Ctrl+Z reverts the entire response, not one hunk at a time
  • Yellow dots auto-clear when the session closes — no orphaned markers
3 hunks · UserService.php · 2 files in changeset
// hunk 1 of 3
$email = $data['email'];
$email = EmailValidator::normalize($data['email'] ?? '');
if ($email === null) throw new ValidationException;
↑ Prev·↓ Next·+ Keep·− Undo
 
// hunk 2 of 3 — imports
use App\Validators\EmailValidator;
Bring your own model

Every major frontier provider, one model picker.

Models are fetched from Pearl's entitlements and grouped by provider in a native dropdown. Switch providers in one click. Switch models in one click. No environment variables, no IDE restart.

Pearl Scout Native

Anthropic, OpenAI, Google, DeepSeek, PearlFibers — whichever models your plan entitles you to. Auth via your Pearl account.

Codex OpenAI

OpenAI frontier and reasoning models. Auth via your OpenAI API key (sk-…), stored in the OS keychain.

Claude Code Anthropic

Full Claude 4 lineup. Auth via your Anthropic API key (sk-ant-…), stored in the OS keychain.

GitHub Copilot Microsoft

Copilot's chat-model lineup. Auth via GitHub device flow — no key to paste.

Pearl never sees a non-Pearl provider key in plaintext beyond the keychain handoff.

Live indicators

The kind of state you want at a glance.

Project memory

Persistent file at .pearl/memory/project.md — conventions, prior incidents, where things live. A memory chip in the chat input shows Memory: N and opens the file for review. Stop re-explaining your codebase every morning.

Context-usage ring

Real-time token usage against the active model's context window. Green → orange → red as you fill up. Click to compact — Scout summarizes older turns and frees the budget in a single round-trip.

Thinking blocks

When the active model supports extended reasoning, Scout streams its chain-of-thought into a collapsible block above the response. Closed by default — open it when you want to debug an answer.

Clickable file references

Every backtick path in chat is a link. SiteController.php:42 jumps to line 42. app/User.ts:12-15 jumps to a line range. Bare identifiers like loginForm() stay inert by design.

Context attachments

#file, #selection, #image, or #file:path/to/file.ext to attach specific context. Drag-drop also works.

Agent mentions & sub-agents

@Pearl-Ask, @Pearl-Plan, or @Pearl-Agent routes a message without switching mode. Agent can call runSubagent to delegate research and keep its own context clean.

Details matter

The product-care list.

Inline-diff lens widget state persists across recomputes — cursor moves don't flicker the DOM.
Context-ring fetches are debounced (500ms) so streaming chunks don't fire 50 network calls per turn.
Thinking block toggle is sticky — your manual open/close isn't reset by re-renders.
Scout branding survives every re-render via a MutationObserver that re-runs on a schedule.
"New chat with summary…" starts a fresh conversation with a recap of the previous one — context handoff without conversation clutter.
Retry suggestions are inline on transient failures, but permanent errors don't tempt you with a useless Retry link.
Agent confirmation is one-time, not every-time. Opt in once, trust restored.
Honest fine print

What Scout is — and isn't.

Things we won't claim

  • Not local AI. Scout runs against frontier models in the cloud. Pearl IDE is local; the inference is not.
  • Not offline. Chat needs a network. Sign-in needs a network.
  • Doesn't train on your code. Scout reads your code at request time as context. It doesn't fine-tune on it.
  • Doesn't replace the developer. Every edit is a reviewable inline diff. Scout proposes; you accept.
  • Not free forever. Provider quotas and entitlements apply.

Things you can count on

  • A Pearl account is required for all providers — including Codex, Claude Code, and Copilot.
  • Your provider API keys stay in your OS keychain. We never see them in plaintext beyond the handoff.
  • Every edit lands as a reviewable diff in the editor. No silent writes.
  • One Ctrl+Z reverts an entire response.
  • Project memory is yours — a plain markdown file in your repo at .pearl/memory/project.md.

A Pearl account is required to use Pearl Scout — including the Codex, Claude Code, and GitHub Copilot providers. Sign in to continue. — Pearl Scout sign-in gate

Start with Scout in two minutes.

Download Pearl, sign in, pick a mode, ask a question. Bring your own keys if you have them.