> ## Documentation Index
> Fetch the complete documentation index at: https://tbd-6fc993ce-cj-profile-state.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Quickstart

export const YouTubeVideo = ({videoId, title = "YouTube video"}) => {
  return <div style={{
    position: 'relative',
    width: '100%',
    aspectRatio: '16 / 9',
    marginBottom: '1rem'
  }}>
      <iframe width="100%" height="100%" src={`https://www.youtube.com/embed/${videoId}`} title={title} allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerPolicy="strict-origin-when-cross-origin" allowFullScreen style={{
    position: 'absolute',
    top: 0,
    left: 0,
    width: '100%',
    height: '100%'
  }} />
    </div>;
};

<Info>
  If you are already familiar with browser vendors and are looking to quickly switch to Kernel browsers, follow the instructions **[here](/browsers/create-a-browser)**.
</Info>

## Getting started

This quickstart guide will help you deploy and invoke your first browser automation on Kernel. You'll create a simple automation using Playwright, Computer Use, or a web agent framework like Browser Use.

<YouTubeVideo videoId="trMR8HM0Zgs" title="Kernel Quickstart Video" />

## Prerequisites

* `brew` for the Kernel CLI
* A [Kernel account](https://dashboard.onkernel.com/sign-up)

> **Note:** You can also deploy and invoke apps using the [Kernel MCP server](/reference/mcp-server) from AI assistants (Cursor, Goose, Claude, etc.).

## 1. Install the Kernel CLI

```bash theme={null}
# Using brew
brew install onkernel/tap/kernel

# Using pnpm
pnpm install -g @onkernel/cli

# Using npm
npm install -g @onkernel/cli
```

Verify the installation exists:

```bash theme={null}
which kernel
```

## 2. Create a new Kernel app

```bash theme={null}
kernel create
```

## 3. Authenticate with Kernel

The easiest way to authenticate is using OAuth:

```bash theme={null}
kernel login
```

This will open your browser to complete the authentication flow. Your credentials will be securely stored and automatically refreshed.

## 4. Deploy the sample app on Kernel

<CodeGroup>
  ```bash Typescript / Javascript theme={null}
  cd sample-app
  kernel deploy index.ts # --env-file .env if environment variables are needed
  ```

  ```bash Python theme={null}
  cd sample-app
  kernel deploy main.py # --env-file .env if environment variables are needed
  ```
</CodeGroup>

## 5. Invoke the app

<CodeGroup>
  ```bash Typescript / Javascript theme={null}
  # Sample app
  kernel invoke ts-basic get-page-title --payload '{"url": "https://www.google.com"}'

  # CAPTCHA Solver
  kernel invoke ts-captcha-solver test-captcha-solver

  # Stagehand
  kernel invoke ts-stagehand teamsize-task --payload '{"company": "Kernel"}'

  # Magnitude
  kernel invoke ts-magnitude mag-url-extract --payload '{"url": "https://en.wikipedia.org/wiki/Special:Random"}'

  # Anthropic Computer Use
  kernel invoke ts-anthropic-cua cua-task --payload '{"query": "Return the first url of a search result for NYC restaurant reviews Pete Wells"}'

  # OpenAI Computer Use
  kernel invoke ts-openai-cua cua-task --payload '{"task": "Go to https://news.ycombinator.com and get the top 5 articles"}'

  # Gemini Computer Use
  kernel invoke ts-gemini-cua gemini-cua-task --payload '{"startingUrl": "https://www.magnitasks.com/", "instruction": "Click the Tasks option in the left-side bar, and move the 5 items in the To Do and In Progress items to the Done section of the Kanban board"}'
  ```

  ```bash Python theme={null}
  # Sample app
  kernel invoke python-basic get-page-title --payload '{"url": "https://www.google.com"}'

  # CAPTCHA Solver
  kernel invoke python-captcha-solver test-captcha-solver

  # Browser Use
  kernel invoke python-bu bu-task --payload '{"task": "Compare the price of gpt-4o and DeepSeek-V3"}'

  # Anthropic Computer Use
  kernel invoke python-anthropic-cua cua-task --payload '{"query": "Return the first url of a search result for NYC restaurant reviews Pete Wells"}'

  # OpenAI Computer Use
  kernel invoke python-openai-cua cua-task --payload '{"task": "Go to https://news.ycombinator.com and get the top 5 articles"}'

  # OpenAGI Computer Use
  kernel invoke python-openagi-cua openagi-default-task --payload '{"instruction": "Navigate to https://agiopen.org and click the What is Computer Use? button", "record_replay": "True"}'
  ```
</CodeGroup>

## Next steps

Nice work! With Kernel, you:

1. Developed an app that uses Playwright, Computer Use, or a web agent framework like Browser Use
2. Deployed and invoked it in the cloud

You can now update your browser automation with your own logic and deploy it again. Install our [MCP server](/reference/mcp-server) to give your coding agent our `search_docs` tool.

## Sample apps reference

These are the sample apps currently available when you run `kernel create`:

| Template                   | Description                                      | Framework                  |
| -------------------------- | ------------------------------------------------ | -------------------------- |
| **sample-app**             | Implements a basic Kernel app                    | Playwright                 |
| **captcha-solver**         | Demo of Kernel's auto-CAPTCHA solving capability | Playwright                 |
| **browser-use**            | Implements Browser Use SDK                       | Browser Use                |
| **stagehand**              | Implements the Stagehand v3 SDK                  | Stagehand                  |
| **anthropic-computer-use** | Implements an Anthropic computer use agent       | Anthropic Computer Use API |
| **openai-computer-use**    | Implements an OpenAI computer use agent          | OpenAI Computer Use API    |
| **gemini-computer-use**    | Implements a Gemini computer use agent           | Gemini Computer Use API    |
| **openagi-computer-use**   | Implements an OpenAGI computer use agent         | OpenAGI Computer Use API   |
| **magnitude**              | Implements the Magnitude.run SDK                 | Magnitude.run              |
