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

# Installation

> Install Bugster CLI and start AI-powered end-to-end testing

Bugster CLI generates and runs AI-powered end-to-end tests for web applications.

## Requirements

<AccordionGroup>
  <Accordion title="System Requirements" icon="computer" defaultClosed>
    <CardGroup cols={2}>
      <Card title="Node.js 18+" icon="node-js">
        Required for browser automation
      </Card>

      <Card title="GLIBC 2.35+" icon="gear">
        Required for Linux distributions
      </Card>
    </CardGroup>

    **Operating Systems**:

    * macOS (compatible)
    * Linux: Ubuntu 22+, Ubuntu 24+, Debian 12+, and any distribution with GLIBC ≥ 2.35
    * Windows (compatible)
  </Accordion>
</AccordionGroup>

<AccordionGroup>
  <Accordion title="Frameworks Supported" icon="react" defaultClosed>
    <CardGroup cols={2}>
      <Card title="Next.js" icon={<svg viewBox="0 0 256 256" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" preserveAspectRatio="xMidYMid" fill="#000000"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"> <g> <path d="M119.616813,0.0688905149 C119.066276,0.118932037 117.314565,0.294077364 115.738025,0.419181169 C79.3775171,3.69690087 45.3192571,23.3131775 23.7481916,53.4631946 C11.7364614,70.2271045 4.05395894,89.2428829 1.15112414,109.384595 C0.12512219,116.415429 0,118.492153 0,128.025062 C0,137.557972 0.12512219,139.634696 1.15112414,146.665529 C8.10791789,194.730411 42.3163245,235.11392 88.7116325,250.076335 C97.0197458,252.753556 105.778299,254.580072 115.738025,255.680985 C119.616813,256.106338 136.383187,256.106338 140.261975,255.680985 C157.453763,253.779407 172.017986,249.525878 186.382014,242.194795 C188.584164,241.068861 189.00958,240.768612 188.709286,240.518404 C188.509091,240.36828 179.124927,227.782837 167.86393,212.570214 L147.393939,184.922273 L121.743891,146.965779 C107.630108,126.098464 96.0187683,109.034305 95.9186706,109.034305 C95.8185728,109.009284 95.7184751,125.873277 95.6684262,146.465363 C95.5933529,182.52028 95.5683284,183.971484 95.1178886,184.82219 C94.4672532,186.048207 93.9667644,186.548623 92.915738,187.099079 C92.114956,187.499411 91.4142717,187.574474 87.6355816,187.574474 L83.3063539,187.574474 L82.1552297,186.848872 C81.4044966,186.373477 80.8539589,185.747958 80.4785924,185.022356 L79.9530792,183.896422 L80.0031281,133.729796 L80.0782014,83.5381493 L80.8539589,82.5623397 C81.25435,82.0369037 82.1051808,81.3613431 82.7057674,81.0360732 C83.7317693,80.535658 84.1321603,80.4856165 88.4613881,80.4856165 C93.5663734,80.4856165 94.4172043,80.6857826 95.7434995,82.1369867 C96.1188661,82.5373189 110.007429,103.454675 126.623656,128.650581 C143.239883,153.846488 165.962072,188.250034 177.122972,205.139048 L197.392766,235.839522 L198.418768,235.163961 C207.502639,229.259062 217.112023,220.852086 224.719453,212.09482 C240.910264,193.504394 251.345455,170.835585 254.848876,146.665529 C255.874878,139.634696 256,137.557972 256,128.025062 C256,118.492153 255.874878,116.415429 254.848876,109.384595 C247.892082,61.3197135 213.683675,20.9362052 167.288368,5.97379012 C159.105376,3.32158945 150.396872,1.49507389 140.637341,0.394160408 C138.234995,0.143952798 121.693842,-0.131275573 119.616813,0.0688905149 L119.616813,0.0688905149 Z M172.017986,77.4831252 C173.219159,78.0836234 174.195112,79.2345784 174.545455,80.435575 C174.74565,81.0861148 174.795699,94.9976579 174.74565,126.348671 L174.670577,171.336 L166.73783,159.17591 L158.780059,147.01582 L158.780059,114.313685 C158.780059,93.1711423 158.880156,81.2862808 159.030303,80.7108033 C159.430694,79.3096407 160.306549,78.2087272 161.507722,77.5581875 C162.533724,77.0327515 162.909091,76.98271 166.837928,76.98271 C170.541544,76.98271 171.19218,77.0327515 172.017986,77.4831252 Z" fill="#000000"> </path> </g> </g></svg>} color="#green">
        Pages and App Router supported.
      </Card>

      <Card title="React.js" icon="react">
        React Router DOM v6/v7 supported.
      </Card>

      <Card title="Vue" icon="vuejs">
        All major Vue configurations supported.
      </Card>

      <Card title="Angular" icon="angular">
        All major Angular configurations supported.
      </Card>

      <Card title="Svelte" icon="s">
        All major Svelte configurations supported.
      </Card>

      <Card title="Other Frameworks" icon="brackets-curly">
        All major JavaScript frameworks supported.
      </Card>
    </CardGroup>

    <Info>
      **Framework behavior note**: Next.js and React have enhanced features for the `generate` and `update` commands. Other frameworks use standard implementation.
    </Info>

    <Card title="Framework Compatibility Details" icon="code" href="/framework-compatibility">
      View detailed framework support and routing compatibility information
    </Card>
  </Accordion>
</AccordionGroup>

<AccordionGroup>
  <Accordion title="Platforms Supported" icon="cloud" defaultClosed>
    <CardGroup cols={3}>
      <Card title="Vercel" icon={<svg viewBox="0 -17 256 256" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" preserveAspectRatio="xMidYMid" fill="#000000" stroke="#000000"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"> <g> <polygon fill="#000000" points="128 0 256 221.705007 0 221.705007"> </polygon> </g> </g></svg>}>
        Vercel deployments compatible.
      </Card>

      <Card title="Railway" icon={<svg data-v-423bf9ae="" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 60 60" class="Logo___StyledSvg-sc-teruw2-0 dFgCbS Sidebar___StyledLogo-sc-1w9v62x-5 dOCLSL"><g data-v-423bf9ae="" id="6f639fe5-02e1-4640-a1fb-f4b22b64e5ef" transform="matrix(0.5999641134746578,0,0,0.5999641134746578,-437.5538206497148,-266.68705118956507)" stroke="none"><path d="M729.872 487.327a50.86 50.86 0 0 0-.464 5.033h75.879c-.265-.518-.621-.985-.98-1.442-12.972-16.769-19.95-15.315-29.932-15.741-3.328-.137-5.585-.192-18.832-.192-7.09 0-14.798.018-22.304.038.737-1.746 1.6-3.419 2.525-5.061-2.885 5.106-4.865 10.771-5.805 16.789l.891-4.397c.007-.031.018-.063.024-.094h38.883v5.067h-39.885zM805.885 497.432h-76.438c.08 1.352.206 2.686.388 4.002h70.571c3.146 0 4.907-1.786 5.479-4.002zM733.851 515.257a52.226 52.226 0 0 1-1.98-4.997c6.608 19.89 25.328 34.251 47.433 34.251 20.205 0 37.566-12.007 45.452-29.254h-90.905zM729.38 492.915c-.018.531-.08 1.055-.08 1.589 0 .538.063 1.059.08 1.59v-3.179zM824.77 515.229z"></path><path d="M779.303 444.505c-18.682 0-34.939 10.265-43.524 25.439 6.709-.014 19.775-.022 19.775-.022h.003v-.005c15.444 0 16.018.069 19.035.195l1.868.069c6.507.217 14.505.916 20.798 5.68 3.416 2.584 8.348 8.287 11.288 12.35 2.718 3.758 3.5 8.078 1.652 12.217-1.701 3.804-5.361 6.073-9.793 6.073H730.85l-.884-4.201c.426 2.707 1.037 5.344 1.879 7.886h94.914a49.863 49.863 0 0 0 2.546-15.682c.001-27.611-22.386-49.999-50.002-49.999z"></path></g></svg>}>
        Railway deployments compatible.
      </Card>

      <Card title="Netlify" icon={<svg viewBox="0 0 128 113" fill="none" xmlns="http://www.w3.org/2000/svg"><g clipPath="url(#clip0_236_138)"><path d="M34.593 94.0509H33.3844L27.3514 88.0179V86.8094L36.5743 77.5866H42.9639L43.8158 78.4385V84.8281L34.593 94.0509Z" fill="#05BDBA"/><path d="M27.3514 25.816V24.6074L33.3844 18.5744H34.593L43.8158 27.7972V34.1868L42.9639 35.0388H36.5743L27.3514 25.816Z" fill="#05BDBA"/><path d="M80.4594 74.6047H71.6824L70.9493 73.8717V53.3259C70.9493 49.6705 69.5129 46.8372 65.1046 46.7382C62.836 46.6787 60.2405 46.7382 57.4668 46.8471L57.0507 47.2731V73.8618L56.3176 74.5948H47.5406L46.8075 73.8618V38.7636L47.5406 38.0305H67.2939C74.9713 38.0305 81.1925 44.2517 81.1925 51.9291V73.8717L80.4594 74.6047Z" fill="#014847"/><path d="M35.8412 61.4491H0.73307L0 60.716V51.9192L0.73307 51.1861H35.8412L36.5743 51.9192V60.716L35.8412 61.4491Z" fill="#05BDBA"/><path d="M127.277 61.4491H92.1687L91.4356 60.716V51.9192L92.1687 51.1861H127.277L128.01 51.9192V60.716L127.277 61.4491Z" fill="#05BDBA"/><path d="M58.9428 27.0642V0.73307L59.6759 0H68.4727L69.2058 0.73307V27.0642L68.4727 27.7972H59.6759L58.9428 27.0642Z" fill="#05BDBA"/><path d="M58.9428 111.902V85.5711L59.6759 84.838H68.4727L69.2058 85.5711V111.902L68.4727 112.635H59.6759L58.9428 111.902Z" fill="#05BDBA"/></g><defs><clipPath id="clip0_236_138"><rect width="128" height="112.635" fill="white"/></clipPath></defs></svg>}>
        Netlify deployments compatible.
      </Card>
    </CardGroup>
  </Accordion>
</AccordionGroup>

## Installation

<Tabs>
  <Tab title="Homebrew">
    ### Installation

    Install Bugster CLI using Homebrew on macOS or Linux:

    ```bash theme={null}
    brew install Bugsterapp/homebrew-tap/bugster
    ```

    ### Updating

    To update Bugster to the latest version:

    ```bash theme={null}
    brew upgrade bugster
    ```
  </Tab>

  <Tab title="npm">
    ### Installation

    Install Bugster CLI globally using npm:

    ```bash theme={null}
    npm install -g @bugster/bugster-cli
    ```

    <Info>
      **Note**: You need Node.js 18+ installed. Verify your Node.js version with `node --version`.
    </Info>

    ### Updating

    To update Bugster to the latest version:

    ```bash theme={null}
    npm update -g @bugster/bugster-cli
    ```
  </Tab>

  <Tab title="Linux/macOS">
    ### Automated Installation

    Install Bugster CLI using the automated installer script on macOS or Linux:

    ```bash theme={null}
    curl -sSL https://bugster.dev/install.sh | bash 
    ```

    ### Reset your terminal session

    After installation, make sure to reset your terminal so PATH changes take effect. You can either close and reopen your terminal, or run:

    ```bash theme={null}
    source ~/.zshrc   # zsh
    source ~/.bashrc  # bash
    ```
  </Tab>

  <Tab title="Windows">
    ### Recommended Method

    The recommended way to install Bugster CLI on Windows is by using the PowerShell installer. Open a PowerShell terminal and run the following command:

    ```powershell theme={null}
    irm https://bugster.dev/install.ps1 | iex 
    ```

    This command downloads and executes the official installer script, which will:

    1. Determine the correct version for your system.
    2. Download the binary from the latest GitHub Release.
    3. Unzip and place it in a standard user directory (`%LOCALAPPDATA%\Programs\bugster`).
    4. Add the installation directory to your user's `PATH` environment variable.

    <Info>
      After installation, you must **open a new terminal window** for the `bugster` command to be available.
    </Info>

    ### Manual Installation

    If you prefer not to run the script, you can install the CLI manually:

    <Steps>
      <Step title="Go to GitHub Releases">
        Go to the [latest GitHub Release](https://github.com/Bugsterapp/bugster-cli/releases/latest).
      </Step>

      <Step title="Download the archive">
        Download the `bugster-windows.zip` file.
      </Step>

      <Step title="Extract the executable">
        Extract the `bugster.exe` file to a directory of your choice (e.g., `C:\Program Files\bugster`).
      </Step>

      <Step title="Add to PATH">
        Manually add that directory to your system's or user's `PATH` environment variable.
      </Step>
    </Steps>
  </Tab>
</Tabs>

### Verify Installation

```bash theme={null}
bugster --version
```

## Troubleshooting

<AccordionGroup>
  <Accordion title="Check Node.js version">
    ```bash theme={null}
    node --version  
    # Should show v18.0.0 or higher
    ```
  </Accordion>

  <Accordion title="Check GLIBC version (Linux)">
    ```bash theme={null}
    ldd --version
    # Should show GLIBC 2.35 or higher
    ```
  </Accordion>

  <Accordion title="Permission errors (macOS/Linux)">
    **Symptom:** Installation fails with permission errors, even when using `sudo`.

    **Cause:** The `~/.local` directory may have been created by another process with root ownership, preventing your user from writing to `~/.local/bin`.

    **Solution:**

    <Steps>
      <Step title="Check directory ownership">
        ```bash theme={null}
        ls -ld ~/.local ~/.local/bin
        ```

        If the owner is `root` instead of your username, proceed to the next step.
      </Step>

      <Step title="Fix ownership">
        ```bash theme={null}
        sudo chown -R $(whoami) ~/.local
        ```
      </Step>

      <Step title="Retry installation">
        Run the installer again **without** sudo:

        ```bash theme={null}
        curl -sSL https://bugster.dev/install.sh | bash
        ```
      </Step>
    </Steps>

    **Alternative solution:** Install directly to `/usr/local/bin`:

    ```bash theme={null}
    # Download the binary manually first, then:
    sudo cp bugster /usr/local/bin/
    ```
  </Accordion>

  <Accordion title="Unsupported Linux distribution">
    If you encounter compatibility issues on Linux, ensure your distribution has GLIBC 2.35 or higher. Supported distributions include Ubuntu 22+, Ubuntu 24+, Debian 12+, and other modern distributions.
  </Accordion>

  <Accordion title="Antivirus flags the executable on Windows">
    **Symptom:** After running the installer, `bugster.exe` is not found in the installation directory (`%LOCALAPPDATA%\Programs\bugster`), or it disappears shortly after installation.

    **Cause:** Because the executable is downloaded from the internet and is not digitally signed by a major publisher, Windows Defender or other antivirus software may automatically quarantine or delete it as a security precaution.

    **Solution:**

    <Steps>
      <Step title="Check Protection History">
        1. Open **Windows Security** > **Virus & threat protection**.
        2. Go to **Protection history** to see if `bugster.exe` was quarantined. If so, you can restore it and allow it on your device.
      </Step>

      <Step title="Add an Exclusion">
        To prevent this from happening in the future, add an exclusion:

        * Under **Virus & threat protection settings**, click **Manage settings**.
        * Scroll down to **Exclusions** and click **Add or remove exclusions**.
        * Click **Add an exclusion**, select **Folder**, and paste the following path: `%LOCALAPPDATA%\Programs\bugster`
      </Step>
    </Steps>
  </Accordion>

  <Accordion title="`bugster` command not found on Windows">
    **Symptom:** After a successful installation, you type `bugster --help` and get an error like `'bugster' is not recognized...`.

    **Cause:** The terminal session where you ran the installer has an old copy of the `PATH` variable. The changes made by the installer will only be loaded by new terminal sessions.

    **Solution:**
    Close your current terminal window and **open a new one**. The command should now work correctly.
  </Accordion>
</AccordionGroup>

<Info>
  **What gets installed**: Bugster CLI, Playwright browsers, and all required dependencies are installed automatically. Python is no longer required for Bugster versions > 0.3.26.
</Info>

<Card title="Get Started" icon="rocket" href="/quickstart">
  Follow our quickstart guide to set up your first project
</Card>
