Delivering Briefs

Turn a ready Brief into a GitHub pull request — from a conversation, or directly from the Brief workspace — without leaving Hamster.

The job delivery does

A Brief is only valuable when it ships. Once your Plan is in place and your team is aligned, the next step is getting the code into a PR. Hamster handles the dispatch, tracks the agent's work live, and links the Result back into the thread where you were already working.

Two ways to deliver

From chat

When your Brief has a Plan and a connected GitHub repo, a Deliver button appears at the foot of the completed plan thread in chat. Click it to start delivery with your workspace's delivery method. For Hamster Cloud, that opens the delivery dialog: pick your target repo (or set up a repository if needed), and dispatch. Hamster checks that everything is ready, dispatches the job to your connected GitHub repo, and the Delivery thread opens in chat.

Alternatively, tell Hamster directly in conversation:

  • "Ship this Brief"
  • "Deliver to myorg/backend"
  • "Ship the authentication Brief to the API repo"

The delivery thread opens and updates in real time as Hamster works.

From the brief workspace

Open the Brief and select Deliver from the action bar. Pick the target repo and branch from your connected GitHub accounts, choose a delivery model, confirm, and dispatch. Hamster remembers your last pick for the next delivery.

Both paths run the same pre-flight checks and use the same Delivery agent. The output — a PR or branch — is identical regardless of how you triggered it.

Choosing a delivery method

The chevron beside Deliver opens a menu of every method this workspace offers:

  • Install Hamster — the Hamster plugin delivers from your own checkout, on your machine. It stays available while a hosted Delivery is already running.
  • Hamster Cloud — Hamster runs the Delivery in its managed environment. That is the path the rest of this page describes.
  • Cursor Cloud — Cursor Cloud Agents run the Delivery on the connected Cursor account, using your key or the team's. Pick the repository, branch, and model in the dialog.

Before Hamster can deliver

Hamster checks four things before dispatching:

CheckWhat it means
Plan existsThe Brief has a generated, accepted Plan with at least one Task
Repo connectedA GitHub repo is connected to your account
Push access confirmedHamster can push to that repo
No job in flightA Delivery for this Brief isn't already running

If any check fails, Hamster explains what's missing. Fix it — generate a Plan, connect a GitHub repo in Settings, or wait for the current Delivery to finish — then try again.

Watching delivery happen

A Delivery thread opens as soon as the job is dispatched. The agent's work streams in live:

  • Boot phases appear first — environment setup, context load
  • Each step the agent takes (reading files, writing code, running checks) appears as it completes
  • Tool calls and phase transitions render as distinct items so you can follow the agent's reasoning

You can leave the Delivery thread and come back. The transcript persists as a permanent record of what was built and why.

Steering a live delivery

Send a message in the Delivery thread while the delivery is running to give Hamster a new instruction. Your message waits while the current turn finishes, then enters the coding session at a safe boundary, and the same delivery continues without restarting.

Pending messages appear in the queued-messages dock until Hamster receives them, then move into the transcript. After delivery ends, the composer shows that the delivery is no longer running.

After delivery completes

When the agent finishes, the final step in the Delivery thread shows the Result:

  • Pull request opened: #123 — clickable link straight to the GitHub PR
  • Branch pushed: feature/my-branch — clickable link to the GitHub compare page so you can review the diff immediately

No need to switch to GitHub to find what was shipped — the link is right there in the thread.

On the Plan tab, the Deliver button shows delivery progress while the agent works, then drops away once the run finishes. Once a PR exists, the PR control in the brief header shows its state — "Draft #42," "Merged #42" — with a link to the pull request on GitHub. The brief status moves to Shipping while the delivery runs and to Delivered when it succeeds. If the delivery fails or is cancelled, the status goes back to what it was.

If delivery fails

If the agent hits an error, the Delivery thread shows the failure inline. The "View Delivery" link on the Delivery card stays active so you can inspect what happened. Common causes:

  • A test or lint check failed during the Delivery run — review the agent's output for specifics
  • Push access changed — check that Hamster's GitHub Connection is still active in Settings
  • A merge conflict or branch protection rule blocked the push — the thread will describe the blocker

Fix the underlying issue and re-deliver from the Brief workspace or chat.