---
title: "Quickstart"
description: "From an empty workspace to a merged, agent-authored pull request."
canonical_url: "https://hoplite.sh/docs/quickstart"
markdown_url: "https://hoplite.sh/docs/quickstart.md"
---

# Quickstart
URL: /docs/quickstart
LLM index: /llms.txt
Description: From an empty workspace to a merged, agent-authored pull request.
Related: /docs/agent-ready, /docs/prompting, /docs/threads, /docs/github

# Quickstart

By the end of this guide you'll have gone from an empty workspace to a merged, agent-authored pull request. Your part takes a few minutes; the agent works on its own in between.

## 1. Create your account and workspace

Go to [hoplite.sh](https://hoplite.sh) and sign in with email and password, GitHub, or Google. Onboarding walks you through creating a **workspace** — your team's account, which holds members, billing, integrations, and projects.

On hosted Hoplite, choosing Free for a new workspace opens Stripe so you can
save a billing address and non-prepaid card without a charge. Existing Free
workspaces, paid-to-Free downgrades, and local or self-hosted deployments do not
repeat this hosted enrollment step. See [Billing](/docs/workspace/billing#free-signup-and-pro-trials) for the Free signup and Pro trial rules.

You should see the onboarding flow with your new workspace ready.

## 2. Connect GitHub

Install the Hoplite GitHub App on your organization or personal account and grant it access to the repositories you want agents to work on. Then select a repository — Hoplite creates a **project** for each one you pick.

For a public repository, you can also visit `https://hoplite.sh/<owner>/<repo>`. The rollout-gated launch flow carries you through sign-in or workspace creation, lets you choose the destination workspace and GitHub App installation, creates a fork in that GitHub account, and opens the project while its prebuild continues. If the installation cannot access the destination, update its repository access and retry from the same page.

You should see your project in the workspace, bound to the repository and its base branch.

## 3. Start a thread

Create a new thread from your project. The new-thread dialog lets you pick the
repository, source, and [model](/docs/agent/models). Choose **Branches** to start
from a branch (the project base branch is the default), or choose **PRs** to
search for an existing pull request. Selecting a PR checks out its head branch,
links it to the thread, and gives the agent the PR's source context. Then
describe the task like you would to a colleague:

```text title="first message"
The signup form doesn't validate email addresses client-side.
Add validation with a sensible error message, match the existing
form patterns in src/components/forms, and add a test.
```

You should see the agent clone your repo into a fresh [sandbox](/docs/sandboxes), run the project's setup script, and start working. Tool calls stream into the thread's activity timeline as they happen.

## 4. Watch and approve

Sensitive actions — file edits, shell commands — pause for your approval in an inline bar. Approve or deny each one without leaving the conversation. A diff view tracks everything changed so far, and you can keep typing while the run is in flight: messages queue and apply in order.

When the run finishes, the thread status turns `ready` and the diff holds the completed change. See [Threads](/docs/threads) for the full tour.

## 5. Open the pull request

Type `/pr` in the composer to create a draft PR from the thread's diff, or just ask the agent to open one.

You should see the **PR rail** slide out alongside the conversation, showing the PR's branches, status checks, reviews, and unresolved comments.

## 6. Review and merge

If reviewers leave feedback, click **Attach all comments** in the PR rail to hand their comments to the agent, then send "address the review". When checks are green and reviews are in, click **Merge** in the PR rail to squash-merge — you never have to leave the thread.

That's the loop: thread → sandbox → pull request → merge.

<Callout type="info" title="Set up your project scripts early">
The agent is much more effective when it can run your app. Add a `.hoplite/settings.json` with `setup` and `run` scripts — [Make your repo agent-ready](/docs/agent-ready) walks through it.
</Callout>

## Next steps

- [Make your repo agent-ready](/docs/agent-ready) — scripts, environment variables, and instructions
- [What to delegate](/docs/delegate) — pick tasks that suit an agent thread
- [Write effective instructions](/docs/prompting) — get better results from every prompt

## Sitemap

See the full [sitemap](/docs/sitemap.md) for all pages.
Well-known sitemap: [/docs/.well-known/sitemap.md](/docs/.well-known/sitemap.md).
