# Connect repositories and product sources

> Verified against the product on 2026-10-06

## Choose repositories

The native repository connection is GitHub-based. Cactus doesn't provide a native GitLab repository connector.

1. In **Settings › Sources**, select **Connect GitHub** or **Manage GitHub**.
2. In GitHub, authorize Cactus or install its GitHub App.
3. Back in **Settings › Sources**, select **Pick repositories**. If the page says **No repositories selected**, select **Open setup** instead.
4. In the setup conversation, select the repositories that make up this product.
5. In the setup conversation, select **Continue** to save your selection.

- detail: Pick repositories, the Slack page, Disconnect, Connect LaunchDarkly, Connect PostHog, Connect again, Find projects, **Connect GitHub** (1)

*In Settings › Sources, select Connect GitHub or Manage GitHub.*

### Tracked branch

Cactus saves each selected repository with its default branch. **Settings › Sources** shows the branch Cactus reads.

### Remove a repository

In **Settings › Sources**, select **Remove** beside the repository. Cactus stops reading it in future product refreshes. Already-published pages stay until the next refresh.

## Connect feature flags

**Connect PostHog** or LaunchDarkly to give Cactus feature-flag context.

### Connect PostHog

1. In **Settings › Sources**, select **Connect PostHog**.
2. Complete the PostHog authorization when prompted.

### Connect LaunchDarkly

1. In **Settings › Sources**, select **Connect LaunchDarkly**.
2. Enter a LaunchDarkly access token with the Reader role in **Reader token**.
3. Select **Find projects**. Cactus lists the projects the token can access.
4. Choose a **Project** and **Environment**.
5. Select **Save**. Cactus checks that the token can access the chosen project and environment before saving.

Cactus initially selects the first project and its first environment. When you change **Project**, Cactus selects that project's first environment.

## Use feature-flag context

Cactus reads flag state when it writes a page that checks a flag. **Settings › Sources** shows how many flag checks for each vendor Cactus finds in your code. If a flag changes, ask Cactus to republish the pages that check it.

## Refresh on pushes

When GitHub reports a push to a selected repository's tracked branch, Cactus schedules a product refresh. For when that work runs and which pages it updates, see [Keep product knowledge current](https://cactus.heycactus.ai/keep-product-knowledge-current).
