[ Guide ]

Run Dragon at Full Power

Most agents stop when you stop watching. Dragon doesn't have to. Give it a goal it can't forget, let it approve its own work, and it will build toward that goal for hours or days — with the whole run in your pocket if you want to check on it.

Why any of this works

The context window is not your context. It's attention — the small, expensive slice the model looks at on this turn. Your context is everything the agent can reach: the whole repo, every past session, every decision and failure it has recorded.

Dragon keeps those separate. Your repo is indexed in the background, and each turn is assembled fresh from what actually matters right now, so attention stays small while the reachable context stays enormous. That's the reason a run can go for days without degrading into a model that has forgotten what it was doing. Everything below is how you point that at a goal.

Give it a North Star

A NORTHSTAR.md in your repo root is the goal the agent cannot lose. It holds your mission, your invariants (things that must stay true), and a list of current objectives. Dragon re-renders it into context on every single step, so it survives compaction and long tool-heavy stretches by construction, not by luck.

Let Dragon write the first draft for you:

/northstar init

Review what it wrote and edit it — this file is the bar the agent will hold itself to.

Check an existing one at any time:

/northstar status

Once the file exists, Dragon locks the session onto your first unchecked objective automatically on your first message. For a lot of runs that means you never touch step 2 at all.

Lock the mission

A mission lock pins the session to one objective and audits every plan for alignment with it. On autopilot, a run that drifts to something else is hard-blocked from editing rather than quietly wandering — which is the failure mode that makes unattended runs untrustworthy in the first place. In an interactive session you get a warning instead.

/mission lock Ship the billing dashboard behind a flag

/mission lock <objective>

Pins the session to one objective. Every plan is audited against it from that point on.

/mission status

Shows what the run is currently locked to, and whether it is still aligned.

/mission steer <note>

Adds a course correction mid-flight without unlocking or restarting the run.

/mission release

Unpins the session. Use it when the objective is genuinely done, not to unblock a drift warning.

Steering without stopping

If you spot the run heading somewhere you don't want, you don't have to kill it. Nudge it:

/mission steer Prefer the existing usePlan hook

Turn on autopilot

Autopilot keeps Dragon working turn after turn until the objective is done or you stop it. Done is a claim it has to earn: the finish is graded against the plan's acceptance rows before it counts. This is the switch that turns a chat session into a build.

/auto

/auto turns /bypass on with it, on purpose: an unattended run must never stall waiting for you to click approve. It only owns the state it switched on — if you had bypass on by hand, it stays on after autopilot stops, and Dragon tells you so.

What bypass actually approves

You can also run it alone, without autopilot:

/bypass

Be clear-eyed about this one. It auto-approves everytool permission for the rest of the session: shell commands that can change files, push, or reach the network, plus every file edit. That is exactly what you want for a multi-day build and exactly what you don't want pointed at something you can't afford to have changed. Run it in a repo you trust, on a branch you're happy to throw away. Type /bypass again to turn it off.

Prefer to think before it edits? Press Tab to cycle agents until Plan is selected, which has Dragon work out an approach before touching any files.

Take the run with you

A run that lasts days shouldn't need you at the desk. Pair your phone and the agents running on your Mac are in your pocket: watch the run live, steer it, and send the next prompt from anywhere.

/pair

Also answers to /remote and /phone.

Your laptop keeps doing the work — the phone is a window onto it, not a second agent.

Keep the index fresh

Dragon indexes your repo in the background so retrieval always has current vectors, and the agent can query that index directly instead of guessing its way through files. On a big repo, or the first time you point Dragon at one, push it explicitly:

dragon index push

To see what's configured, and probe the gateway, search, and code intel using your own repo:

dragon index status --check

Your index is scoped to your key and your project. Set DRAGON_INDEX_DISABLE=1 to stop uploads entirely. Background indexing fails quietly by design — a slow or unreachable index narrows what the agent can see, it never fails your turn.

Read the meter while it runs

The sidebar shows you what the session is actually doing, live, rather than leaving you to find out at the invoice:

  • Attention: how many tokens are in the window right now.
  • % to compaction: measured against the bound that actually fires, not the raw window size — 100% means compaction is due, not that the window is full.
  • % cached: how much of this turn's prompt the provider served from cache. This is the row that explains the money.
  • Spent, and last turn: the session total next to what the most recent turn cost. A sub-cent turn is shown to four decimal places so it doesn't round to a meaningless $0.00.

A cold turn can cost several times a warm one for identical work, so watching % cached and last turn together tells you when something has thrown away the cache. And when a task genuinely deserves more model, switch the session to the heavy lane with /max, and pick a lane again with /models when you're done.

Review before you ship

An unattended run means a lot of changes landed while you weren't reading them. Inspect everything the agent touched — the last turn, or the whole working tree — without leaving the terminal:

/diff

v for split or unified view, b for the file tree, and [ / ] to move hunk by hunk.

Quick reference

/northstar init

Write a NORTHSTAR.md for this repo. /northstar status reviews the one you have.

/mission lock <objective>

Pin the run to one goal. Also status, steer, and release.

/auto

Autopilot. Turns /bypass on with it so an unattended run never stalls on a permission prompt.

/bypass

Auto-approve every tool permission for the session: shell, file edits, network.

/pair

Put the live run on your phone. Also answers to /remote and /phone.

/diff

Review everything the agent changed before you ship it.

/max

Switch the session to the high-capability lane (GLM-5.2) when the work deserves it. /models picks a lane again.

dragon index push

Force a full index push of the current repo. dragon index status --check probes the gateway, search, and code intel too.

Start a run

If you haven't installed Dragon yet, that's two minutes and one command. Then come back and point it at something big.