> ## Documentation Index
> Fetch the complete documentation index at: https://docs.jjhub.tech/llms.txt
> Use this file to discover all available pages before exploring further.

# Quick Start

> Get up and running with JJHub in minutes

# Quick Start

Get up and running with JJHub - the jj-native code hosting platform with integrated collaborative agent sandboxes in the cloud.

## Prerequisites

* [jj (Jujutsu)](https://github.com/jj-vcs/jj) installed
* The JJHub CLI (`jjhub`) installed - see [Installation](/cli-reference/installation)
* A JJHub account - currently available via closed alpha invite

## 1. Authenticate

```bash theme={null}
jjhub auth login
```

This opens your browser for GitHub OAuth authentication. Once authorized, your credentials are stored securely in your OS keychain.

Verify you're logged in:

```bash theme={null}
jjhub auth status
```

For CI environments where a browser isn't available, use a personal access token:

```bash theme={null}
export JJHUB_TOKEN=jjhub_your_token_here
```

## 2. Create a Repository

```bash theme={null}
jjhub repo create my-project --description "My first JJHub project"
```

By default, repositories are public. To create a private repo:

```bash theme={null}
jjhub repo create my-private-project --private
```

## 3. Clone and Work

```bash theme={null}
jjhub repo clone username/my-project
cd my-project
```

Edit files, then describe your change (jj doesn't use `git add` or `git commit`):

```bash theme={null}
# Edit a file
echo "# My Project" > README.md

# Describe your change
jj describe -m "Add README"

# Push to JJHub
jj git push
```

## 4. Open a Landing Request

Landing Requests (LRs) are JJHub's replacement for Pull Requests, built natively for jj's stacked changes model.

```bash theme={null}
jjhub land create --title "Add README" --target main
```

To land a whole stack of changes:

```bash theme={null}
jjhub land create --title "Feature: user auth" --target main --stack
```

## 5. Review and Merge

View your landing request:

```bash theme={null}
jjhub land view 1
```

Check CI status:

```bash theme={null}
jjhub land checks 1
```

Land when ready:

```bash theme={null}
jjhub land land 1
```

## Next Steps

* [Authentication Guide](/getting-started/authentication) - Sign in with Key, GitHub OAuth, tokens, and keychain storage
* [Create Your First Repo](/getting-started/first-repo) - repo management in detail
* [Your First Workflow](/getting-started/first-workflow) - TypeScript CI + AI workflows
* [jj Concepts Guide](/cli-reference/jj-concepts) - understand changes, bookmarks, and stacked changes
