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

# Connecting your data

> Step-by-step guide to connect your tools to Weave — permissions, setup, and what data is synced

This guide walks you through connecting each of your tools to Weave. Select your tool from each category below to see the exact permissions required, what data Weave receives, and how to set it up.

All connections are initiated from the **Data** page in Weave.

## Repositories

Connect your code platform so Weave can sync pull requests, commits, code reviews, and team structure.

<AccordionGroup>
  <Accordion title="Azure DevOps" icon="microsoft">
    ### Permissions required

    Azure DevOps Services connects via **Microsoft Entra ID OAuth**. For Azure DevOps Server 2022, use an HTTPS collection URL and PAT instead; see [Server setup and limitations](/code-platforms/azure-devops#connecting-azure-devops-server-2022). Services requires:

    * **Microsoft Entra ID app registration** with `user_impersonation` (delegated) permission for Azure DevOps
    * **offline\_access** — automatically included for refresh token support
    * Access to register applications in Microsoft Entra ID
    * An Azure DevOps organization admin to click **Install** during setup

    Access is limited by your permissions within Azure DevOps — Weave cannot access resources you don't have permission to view.

    ### What data Weave receives

    * Pull requests and their metadata (title, description, status, dates, reviewers)
    * Commits and code change statistics (additions, deletions — not source code)
    * Code reviews, comments, and threads
    * Team members and organization structure
    * Repository and project information

    ### How to connect

    1. Register an OAuth application in [Microsoft Entra admin center](https://entra.microsoft.com) (see [detailed setup](/code-platforms/azure-devops#microsoft-entra-id-oauth-setup))
    2. Go to **Data** → **Azure DevOps** → **Connect**
    3. Sign in to Microsoft and authorize the Weave application
    4. An org admin clicks **Install** to grant repository sync permissions
    5. Select which repositories to sync

    <Note>
      For the full setup walkthrough including Entra ID app registration, redirect URIs, and client secret creation, see the [Azure DevOps integration guide](/code-platforms/azure-devops).
    </Note>
  </Accordion>

  <Accordion title="Bitbucket Cloud" icon="bitbucket">
    ### Permissions required

    Weave connects via **OAuth 2.0**. The following scopes are requested:

    * **Repository** — read access to repositories, pull requests, and commits
    * **Account** — read access to your account information and email
    * **Pullrequest** — read access to pull request data
    * **Email** — read access to user email addresses
    * **Webhook** — manage webhooks for real-time updates

    <Warning>
      Weave only requests read permissions. We never modify your code.
    </Warning>

    ### What data Weave receives

    * Pull requests and their metadata
    * Commits and code change statistics
    * Code reviews and comments
    * Team members and workspace structure
    * Repository information
    * Pipeline and deployment data (Bitbucket Pipelines)

    ### How to connect

    1. Go to **Data** → **Bitbucket** → **Connect**
    2. Sign in to Bitbucket and authorize the Weave app
    3. Select which repositories to sync from your workspaces

    For more details, see the [Bitbucket integration guide](/code-platforms/bitbucket).
  </Accordion>

  <Accordion title="Bitbucket Data Center (self-hosted)" icon="bitbucket">
    ### Permissions required

    Weave connects via an **Application Link** you create on your Bitbucket instance:

    * **Projects: Admin** — required to fetch workspace members and list projects
    * **Repositories: Read** — read access to repository data (commits, PRs, etc.)

    ### What data Weave receives

    Same as Bitbucket Cloud: pull requests, commits, code reviews, team members, and repository information.

    ### How to connect

    1. Log in to your Bitbucket Data Center instance as an administrator
    2. Go to **Administration** → **Application Links** → **Create link**
    3. Select **External application** with direction **Incoming**
    4. Set the redirect URL to `https://app.workweave.ai/api/bitbucket/oauth/callback`
    5. Set permissions: **Projects: Admin**, **Repositories: Read**
    6. Copy the generated **Client ID** and **Client secret**
    7. In Weave, go to **Data** → **Bitbucket** → **Connect self-hosted** and enter your instance URL and credentials

    <Note>
      Bitbucket Data Center requires version 7.0 or later. If your instance is behind a firewall, you may need to allowlist Weave's IP addresses — see the [reference page](/data-sources/reference).
    </Note>

    For the full walkthrough, see the [Bitbucket Data Center setup guide](/code-platforms/bitbucket#bitbucket-data-center-self-hosted).
  </Accordion>

  <Accordion title="GitHub" icon="github">
    ### Permissions required

    Weave connects via a **GitHub App** installation. The app requests **read-only** access to:

    * **Actions** — workflow runs and deployment data
    * **Contents** — commits and code change statistics
    * **Deployments** — deployment events and environments
    * **Pull requests** — PR metadata, reviews, and comments
    * **Copilot Business** — Copilot usage metrics (if enabled)
    * **Members** — organization members and teams
    * **Email addresses** — user email addresses for account matching

    Weave also subscribes to **Pull request** and **Pull request review** webhook events for real-time sync.

    ### What data Weave receives

    * Pull requests and their metadata (title, description, status, dates, reviewers)
    * Commits and code change statistics (additions, deletions — not source code)
    * Code reviews and comments
    * Team members and organization structure
    * GitHub Actions workflow runs (enables CI/CD metrics)
    * Copilot usage metrics (if your org has Copilot Business/Enterprise)

    ### How to connect

    1. Go to **Data** → **GitHub** → **Connect**
    2. Sign in to GitHub and authorize the Weave GitHub App
    3. Select which repositories to sync (or grant access to all)
    4. Initial sync begins automatically — may take several minutes depending on repository size

    <Note>
      Weave syncs GitHub data in near real-time via webhooks. PR events appear within a few minutes. A full data sweep also runs every 3 hours.
    </Note>

    For more details, see the [GitHub integration guide](/code-platforms/github).
  </Accordion>

  <Accordion title="GitLab" icon="gitlab">
    ### Permissions required

    Weave connects via **OAuth 2.0** with the following scopes:

    * **api** — access to projects, merge requests, commits, and pipelines
    * **openid** — authenticate via OpenID Connect
    * **profile** — read access to user profile information
    * **email** — read access to user email address

    Your GitLab account must have at least the **Maintainer** role in the repositories you want to connect.

    ### What data Weave receives

    * Merge requests and their metadata
    * Commits and code change statistics
    * Code reviews and comments (discussions)
    * Team members and group structure
    * Repository (project) information
    * Pipeline and deployment data (enables CI/CD metrics)

    ### How to connect

    1. Go to **Data** → **GitLab** → **Connect**
    2. Sign in to GitLab and authorize the Weave application
    3. Select which GitLab projects (repositories) to sync

    <Note>
      For self-hosted GitLab instances, see [GitLab (self-hosted)](/data-sources/gitlab-self-hosted) for additional setup steps.
    </Note>

    For the full guide, see the [GitLab integration guide](/code-platforms/gitlab).
  </Accordion>

  <Accordion title="GitLab (self-hosted)" icon="gitlab">
    ### Permissions required

    Create an **OAuth application** on your GitLab instance with these scopes:

    * `read_api` — read access to GitLab API data
    * `read_repository` — read access to repository data
    * `openid`, `profile`, and `email` — authenticate users and read account information

    The connecting GitLab account needs **Maintainer** or **Owner** access to the repositories you want to sync.

    ### What data Weave receives

    * Merge requests and their metadata
    * Commits and code change statistics
    * Code reviews and comments
    * Team members and group structure
    * Repository (project) information
    * Pipeline and deployment data (enables CI/CD metrics)

    ### How to connect

    1. Go to **Data** → **GitLab** → **Connect self-hosted**
    2. Follow the instructions to create an OAuth application on your GitLab instance
    3. Configure the application with the scopes listed above
    4. Select the repositories you want to sync
    5. Go to the [members page](https://app.workweave.ai/members) and ensure everyone from your GitLab instance is added as a Weave user

    <Note>
      For details about automatic repository sync, reconnecting, outages, and limitations, see the [GitLab (self-hosted) setup guide](/data-sources/gitlab-self-hosted#gitlab-self-hosted).
    </Note>
  </Accordion>

  <Accordion title="Gerrit (self-hosted)" icon="git-branch">
    ### Permissions required

    Weave connects to each Gerrit instance with **HTTP Basic authentication**:

    * A Gerrit **base URL** reachable over HTTPS
    * A Gerrit **username** with read access to the projects you want to sync
    * An **HTTP password** generated under **Settings** → **HTTP Credentials** in Gerrit

    ### What data Weave receives

    * Changes (Gerrit pull requests) and their metadata
    * Commits and code change statistics
    * Code reviews, comments, and patch sets
    * Team members who contribute to connected projects
    * Project information

    ### How to connect

    1. In Gerrit, generate an HTTP password for an account that can read your projects
    2. Go to **Data** → **Gerrit** → **Connect**
    3. Enter the base URL, username, and HTTP password
    4. Select which Gerrit projects to sync

    For the full walkthrough, see the [Gerrit integration guide](/code-platforms/gerrit).
  </Accordion>
</AccordionGroup>

## AI tools

Connect your AI coding tools to track adoption, usage, and impact on productivity.

<AccordionGroup>
  <Accordion title="Claude Code" icon="terminal">
    The person connecting must be an **Owner** (Teams) or **Primary Owner** (Enterprise) in the Claude account. On the connect page, select your plan(s) first — Weave recommends the best setup for each.

    <AccordionGroup>
      <Accordion title="Teams plan">
        ### Permissions required

        * A **telemetry API key** generated in Weave, and/or the [Claude Code plugin](/tutorials/weave-plugin-installation) installed per developer

        ### What data Weave receives

        **Telemetry** — session metadata (duration, frequency, terminal type, OS), lines of code added and removed per session, token usage and costs per model, tool usage decisions (accept/reject counts), and user prompt text (used for activity classification; system messages are excluded).

        **Plugin** — richer MCP, tool, and skill usage data plus AI usage analysis.

        Weave **never** accesses source code content, Claude's responses, or file paths.

        ### How to connect

        1. Go to **Data** → **Claude Code** → **Connect** and select **Claude Team plan**
        2. Choose **Telemetry** and/or **Plugin** (plugin is recommended for richer insights)
        3. For telemetry: click **Set up telemetry**, create a telemetry API key, and save the configuration JSON
        4. Deploy telemetry via one of:
           * **Claude Code Admin Settings** (recommended) — paste the JSON into [managed settings](https://claude.ai/admin-settings/claude-code) for automatic distribution to all users
           * **Manual file placement** — place `managed-settings.json` on each developer's machine

        <Note>
          If using AWS Bedrock or Google Vertex AI, each user's config must include their email in `OTEL_RESOURCE_ATTRIBUTES`. See the [Claude Code guide](/ai-tools/claude-code#using-aws-bedrock-or-google-vertex-ai) for details.
        </Note>
      </Accordion>

      <Accordion title="Enterprise plan">
        ### Permissions required

        * An **analytics API key** from [claude.ai/analytics/api-keys](https://claude.ai/analytics/api-keys) with the `read:analytics` scope (Primary Owner), and/or the [Claude Code plugin](/tutorials/weave-plugin-installation) installed per developer

        ### What data Weave receives

        **API key** — per-user activity and cost breakdown, plus Claude.ai chat usage.

        **Plugin** — richer MCP, tool, and skill usage data plus AI usage analysis.

        Weave **never** accesses source code content, Claude's responses, or file paths.

        ### How to connect

        1. Go to [claude.ai/analytics/api-keys](https://claude.ai/analytics/api-keys) and create a key with the **read:analytics** scope (Primary Owner required)
        2. In Weave, go to **Data** → **Claude Code** → **Connect**, select **Claude Enterprise plan**, and click **Set up API key** on the **API key** card
        3. Paste the analytics API key and link Claude users to Weave accounts
        4. Optionally set up the **Plugin** card for richer Claude Code session insights
      </Accordion>

      <Accordion title="Other (Bedrock, Vertex AI, Free/Pro/Max)">
        ### Permissions required

        * A **telemetry API key** generated in Weave, and/or the [Claude Code plugin](/tutorials/weave-plugin-installation) installed per developer
        * For Claude Enterprise accounts that cannot use the plugin: a **Compliance API key** with the `read:compliance_activities` scope (Primary Owner). Requires **prompt retention** to be enabled — **Prevent prompt text retention** must be off under **Settings** → **Organization** → **General** → **Prompt retention**.

        ### How to connect

        1. Go to **Data** → **Claude Code** → **Connect** and select **Other**
        2. Choose **Telemetry**, **Plugin**, and/or **Compliance API key** (Enterprise only — activity and audit feed, not cost; compliance requires prompt retention to be on)
        3. For telemetry, follow the Teams-plan telemetry steps above

        <Note>
          If using AWS Bedrock or Google Vertex AI, each user's config must include their email in `OTEL_RESOURCE_ATTRIBUTES`. See the [Claude Code guide](/ai-tools/claude-code#using-aws-bedrock-or-google-vertex-ai) for details.
        </Note>
      </Accordion>
    </AccordionGroup>

    For the full setup guide, see the [Claude Code integration](/ai-tools/claude-code).
  </Accordion>

  <Accordion title="Cline" icon="code">
    ### Permissions required

    * A **telemetry API key** generated in Weave
    * Cline VS Code extension installed
    * For centralized config: **Cline Enterprise** organization

    ### What data Weave receives

    * Code generation statistics and task completion metrics
    * Session duration and frequency
    * Model usage (which AI models are used)
    * User prompt text from AI-assisted commits (used for activity classification)

    Weave **never** accesses source code content, Cline's responses, or file paths.

    ### How to connect

    **Option 1: Environment variables** (individuals/small teams)

    1. Go to **Data** → **Cline** → **Connect** and create an API key
    2. Add the provided environment variables to your shell profile
    3. Restart VS Code

    **Option 2: Remote configuration** (Cline Enterprise)

    1. Create an API key in Weave
    2. Configure OpenTelemetry in [Cline organization settings](https://app.cline.bot) under **Organization Settings** → **OpenTelemetry**

    For the full setup, see the [Cline integration guide](/ai-tools/cline).
  </Accordion>

  <Accordion title="Copilot" icon="github">
    ### Permissions required

    * **No additional setup required** — Copilot metrics are synced automatically via your GitHub integration
    * Your GitHub organization must have **GitHub Copilot Business or Enterprise** enabled
    * The Weave GitHub App needs the **Copilot Business** read permission (included by default)
    * For per-developer session telemetry: optionally install the [Weave plugin](/tutorials/weave-plugin-installation) on each developer machine

    ### What data Weave receives

    * Copilot usage metrics per user (suggestions shown, accepted, lines generated)
    * Copilot seat assignment data
    * With the optional plugin: session, prompt, tool, edit, and model telemetry per developer

    ### How to connect

    Copilot data flows automatically once GitHub is connected. If you don't see Copilot metrics, verify that your GitHub org has Copilot Business or Enterprise enabled and that the Weave GitHub App has the Copilot Business permission. For per-developer Copilot Chat telemetry, follow the [Weave plugin installation guide](/tutorials/weave-plugin-installation).
  </Accordion>

  <Accordion title="Codex" icon="terminal">
    ### Permissions required

    * Codex CLI installed on each machine
    * Admin access to your Weave organization for a shared install command, or a Weave account for **Create my personal command**
    * Node.js 18 or later on each machine (the hooks run on Node)

    ### What data Weave receives

    * Session telemetry (tokens, cost, prompts, tool calls) via Codex's native OTLP export
    * Agent replies and reasoning summaries via Weave hooks (after hook trust, and when the `agent_messages` category is enabled)

    ### How to connect

    1. In Weave, go to **Data** → **Codex** → **Connect**. Choose **Weave Plugin** and select **Install Weave Plugin**.
    2. Run the generated one-liner on each machine, restart Codex, and choose **Trust all and continue**.
    3. For Windows, MDM, content categories, and troubleshooting, follow the [Weave plugin installation guide](/tutorials/weave-plugin-installation).
  </Accordion>

  <Accordion title="Cursor" icon="mouse-pointer">
    ### Permissions required

    * A **Cursor organization API key** (requires Cursor admin access)
    * Active Cursor subscription

    ### What data Weave receives

    * IDE usage and active coding sessions
    * Code generation and acceptance rates
    * Cursor Agent and Bugbot activity
    * Subscription and cost data
    * User prompt text from AI-assisted commits

    Weave **never** accesses source code content, Cursor's AI responses, or file paths.

    ### How to connect

    1. Get your organization's API key from your Cursor administrator
    2. Go to **Data** → **Cursor** → **Connect** and paste your API key
    3. Data syncs every 3 hours via API polling

    For more details, see the [Cursor integration guide](/ai-tools/cursor).
  </Accordion>

  <Accordion title="Kiro" icon="cloud">
    ### Permissions required

    * A **Kiro enterprise subscription** with AWS IAM Identity Center configured
    * An **S3 bucket** to receive Kiro activity report CSVs
    * An **IAM user** with:
      * `s3:GetObject` and `s3:ListBucket` on the activity report bucket
      * `identitystore:ListUsers` and `identitystore:DescribeUser` to resolve user identities

    ### What data Weave receives

    * Inline suggestion counts, acceptance rates, and lines generated
    * Chat interactions and AI-generated code metrics
    * Code review findings, test generation, and documentation activity
    * 40+ metrics from Kiro's daily activity reports

    Weave **never** accesses source code content or individual completions.

    ### How to connect

    1. Create an S3 bucket and enable Kiro user activity reports in the [Kiro console](https://kiro.dev/docs/enterprise/settings/)
    2. Create an IAM user with the required permissions
    3. In Weave, go to **Data** → **Kiro** → **Connect** and enter your S3 bucket details, AWS credentials, and Identity Store ID

    For the full setup including IAM policies and S3 bucket requirements, see the [Kiro integration guide](/ai-tools/kiro).
  </Accordion>

  <Accordion title="Windsurf" icon="wind">
    ### Permissions required

    * A **Windsurf organization API key** (requires admin access)
    * Active Windsurf subscription

    ### What data Weave receives

    * IDE usage and development sessions
    * Code generation and acceptance rates
    * Feature usage counts
    * Subscription and cost data

    Weave **never** accesses source code content, Windsurf's AI responses, or file paths.

    ### How to connect

    1. In Windsurf IDE, go to **Settings** → **API Access** and generate your organization API key
    2. In Weave, go to **Data** → **Windsurf** → **Connect** and paste your API key
    3. Data syncs every 3 hours via API polling

    For more details, see the [Windsurf integration guide](/ai-tools/windsurf).
  </Accordion>

  <Accordion title="Other AI tools (API key)" icon="key">
    The following tools connect via an API key you generate in their respective admin consoles:

    | Tool | Connection method |
    | - | - |
    | **Augment** | API key → **Data** → **Augment** → **Connect** |
    | **Codex** | API key → **Data** → **Codex** → **Connect** |
    | **Firebender** | API key → **Data** → **Firebender** → **Connect** |
    | **Gemini CLI** | API key → **Data** → **Gemini CLI** → **Connect** |
    | **Amazon Q** | S3 integration (similar to Kiro) |
    | **JetBrains AI Assistant** | Plugin integration |
    | **Sourcegraph** | CSV upload |
  </Accordion>

  <Accordion title="Local agents (git attribution)" icon="git-branch">
    For any AI coding tool not listed above — or if you want line-level attribution across **all** your AI tools — use **git attribution**. This deploys a lightweight binary (`git-ai`) on each developer's machine that automatically tracks which lines of code were authored with AI assistance, regardless of the tool used.

    ### What it tracks

    * Which lines of code were written with AI assistance
    * Which AI tool contributed to each change
    * Per-commit AI vs human contribution breakdown

    ### How to connect

    1. Go to **Data** → **Git attribution** → **Setup**
    2. Download the install script for your platform (macOS/Linux or Windows)
    3. Deploy via MDM (Fleet, Intune, Kandji, Jamf) for org-wide rollout, or run manually on individual machines
    4. Data appears in Weave within \~3 hours after the first push

    Git attribution works with any local AI tool — Cursor, Claude Code, Copilot, Windsurf, and any custom or emerging tools you adopt in the future.

    <Note>
      Auto-detected tools (CodeRabbit, Devin, Jules, Junie, Continue, etc.) are tracked automatically from commit co-author metadata and require no setup.
    </Note>

    For the full setup guide including MDM deployment and troubleshooting, see [Git attribution](/ai-tools/git-attribution).
  </Accordion>
</AccordionGroup>

## Task management

Connect your project management tool to track task delivery, lead time, and link tasks to pull requests.

<AccordionGroup>
  <Accordion title="Jira" icon="jira">
    ### Permissions required

    Weave connects via **Atlassian OAuth 2.0** with the following scopes:

    * **read:jira-user** — read access to Jira user profiles
    * **read:jira-work** — read access to issues, projects, and boards
    * **manage:jira-webhook** — manage webhooks for real-time updates
    * **read:board-scope:jira-software** — read Agile board metadata (needed for sprint sync)
    * **read:project:jira** — read Jira project metadata (needed for sprint sync)
    * **offline\_access** — refresh tokens for automatic renewal

    An **admin** connects the organization first, then **individual team members** authorize their accounts to enable per-user task attribution.

    <Note>
      Jira Cloud only. Jira Data Center / Server is not currently supported.
    </Note>

    ### What data Weave receives

    * Issues and their status history
    * Epics and story points
    * Sprint data and boards
    * Project structure
    * Assignees and reporters
    * Task-to-PR links (via branch names or PR descriptions containing issue keys like `PROJ-123`)

    ### How to connect

    1. Go to **Data** → **Jira** → **Connect**
    2. Sign in to Jira and authorize the Weave app
    3. Select which projects to sync
    4. Have team members individually authorize to enable per-user attribution

    If you connected before sprint sync scopes were added, reconnect so Weave can sync sprint names and dates (task-level sprint membership still syncs from issue fields without a reconnect).

    For more details, see the [Jira integration guide](/project-management/jira).
  </Accordion>

  <Accordion title="Linear" icon="list-check">
    ### Permissions required

    Weave connects via **OAuth 2.0** with:

    * **read** — read access to issues, projects, cycles, and teams

    Optionally, for write features (e.g., Weave bot posting updates):

    * **write** — write access to Linear data
    * **comments:create** — create comments on issues

    ### What data Weave receives

    * Issues and their status transitions
    * Projects and milestones
    * Cycles and sprints
    * Team structure and labels
    * Task-to-PR links (via branch names or descriptions containing issue IDs like `ENG-123`)

    ### How to connect

    1. Go to **Data** → **Linear** → **Connect**
    2. Sign in to Linear and authorize the Weave app
    3. Select which Linear teams to sync

    For more details, see the [Linear integration guide](/project-management/linear).
  </Accordion>

  <Accordion title="Asana" icon="list-check">
    ### Permissions required

    Weave connects via **OAuth 2.0**. You authorize Weave to read your Asana workspace.

    An **admin** connects the organization, then selects which projects to sync.

    ### What data Weave receives

    * Tasks and their status history
    * Projects you select during setup
    * Teams (on Asana organizations)
    * Workspace members for attribution
    * Portfolios and portfolio hierarchy (optional — requires an Asana Enterprise service account token)

    ### How to connect

    1. Go to **Data** → **Asana** → **Connect**
    2. Sign in to Asana and authorize the Weave app
    3. Select which projects to sync
    4. Optionally add a service account token to sync portfolio hierarchy

    Weave auto-links Asana users to Weave accounts by email when possible.

    For more details, see the [Asana integration guide](/project-management/asana).
  </Accordion>
</AccordionGroup>

## CI/CD

Connect your CI/CD platform to enable DORA metrics: deployment frequency, lead time, change failure rate, and mean time to restore.

<AccordionGroup>
  <Accordion title="GitHub Actions" icon="github">
    ### Permissions required

    * **No additional setup required** — GitHub Actions data is automatically synced when you connect GitHub
    * The Weave GitHub App's **Actions: Read-only** permission handles everything

    ### What data Weave receives

    * Workflow runs and job statuses (success, failure, cancelled, skipped)
    * Execution duration and timing
    * Trigger events (push, pull\_request, schedule, manual)
    * Deployment environments and targets
    * Commit SHAs linked to deployments

    ### How to connect

    GitHub Actions data flows automatically once GitHub is connected. To configure:

    1. Deploy once and verify Weave detects the workflow run
    2. Mark production environments in Weave settings (Weave auto-detects environments named `production`, `prod`, `live`, or `prd`)

    For more details, see the [GitHub Actions guide](/ci-cd/github-actions).
  </Accordion>

  <Accordion title="GitLab CI/CD" icon="gitlab">
    ### Permissions required

    * **No additional setup required** — CI/CD pipeline data is automatically synced when you connect GitLab
    * The GitLab **api** OAuth scope covers pipeline access

    ### What data Weave receives

    * Pipeline execution status and duration
    * Deployment events and environments
    * Job-level success/failure rates
    * Commit SHAs linked to pipelines

    ### How to connect

    GitLab CI/CD data flows automatically once GitLab is connected. Ensure your GitLab projects have active pipelines for Weave to track.

    For details, see the [GitLab integration guide](/code-platforms/gitlab).
  </Accordion>

  <Accordion title="Jenkins" icon="wrench">
    ### Permissions required

    * A **Jenkins API token** from a user with **Overall: Read** and **Job: Read** permissions
    * We recommend using a dedicated read-only service account

    ### What data Weave receives

    * Build executions for configured jobs
    * Build results (success, failure, unstable, aborted)
    * Build duration and timing
    * Trigger type (manual, SCM push, scheduled, API, pull request)
    * Commit SHAs and branch names (requires the Jenkins Git plugin)

    ### How to connect

    **Option 1: API polling** (Jenkins must be reachable from the internet)

    1. Create a Jenkins API token from your user profile → **Configure** → **API Token**
    2. In Weave, go to **Data** → **Jenkins** → **Connect**
    3. Enter your Jenkins URL, username, and API token

    **Option 2: Push-based webhook** (Jenkins only needs outbound HTTPS — no inbound exposure required)

    1. Connect via API polling first (Weave generates the webhook secret)
    2. Add the provided Jenkinsfile snippet to your pipelines
    3. Requires the **HTTP Request** Jenkins plugin

    <Note>
      Jobs must use the Jenkins Git plugin for commit and branch tracking. Jobs without Git SCM data are skipped.
    </Note>

    For the full setup including Jenkinsfile snippets, see the [Jenkins integration guide](/ci-cd/jenkins).
  </Accordion>
</AccordionGroup>

## Communication

Connect your communication tools to enable conversation insights, automated reports, and AI-powered assistance.

<AccordionGroup>
  <Accordion title="Slack" icon="slack">
    ### Permissions required

    Weave installs as a **Slack App** with bot and user permissions:

    **Bot permissions:**

    | Permission | Purpose |
    | - | - |
    | `channels:read` | List public channels for report configuration |
    | `channels:history` | Read messages in public channels |
    | `groups:read` | List private channels the bot is added to |
    | `groups:history` | Read messages in private channels |
    | `chat:write` | Send reports and notifications |
    | `users:read` | Sync workspace members |
    | `users:read.email` | Match Slack users to Weave accounts |

    **User permissions:**

    | Permission | Purpose |
    | - | - |
    | `channels:read` | List channels you have access to |
    | `channels:history` | Read messages in channels you're a member of |

    ### What data Weave receives

    * Workspace members (names, emails, timezones)
    * Public and private channels (where the Weave bot is added)
    * Message metadata for conversation insights (response times, thread activity)

    <Note>
      Message content is only used to generate communication insights like response times and collaboration patterns. Weave does not store or display individual message content.
    </Note>

    ### How to connect

    1. Go to **Data** → **Slack** → **Connect**
    2. Sign in to Slack and authorize the Weave app (approve both bot and user permissions)
    3. Weave automatically matches Slack users to Weave accounts by email

    For more details, see the [Slack integration guide](/communication/slack).
  </Accordion>
</AccordionGroup>

## Documentation

Connect your documentation tools to track writing activity, collaboration, and documentation health.

<AccordionGroup>
  <Accordion title="Confluence" icon="book">
    ### Permissions required

    Weave connects via **Atlassian OAuth 2.0** with read-only access:

    * **Read spaces** — list and select spaces during setup
    * **Read pages** — view page content and version history
    * **Read blog posts** — view blog post content and history
    * **Read comments** — view comments on pages
    * **Read users** — identify who made edits and comments

    Weave does **not** write to or modify your Confluence workspace.

    ### What data Weave receives

    * Pages and blog posts with version history
    * Comments (footer and inline) on pages
    * Labels attached to pages and blog posts
    * User profiles for activity attribution

    ### How to connect

    1. Go to **Data** → **Confluence** → **Connect**
    2. Sign in to Atlassian and authorize Weave
    3. Select which pages and spaces Weave should track

    <Warning>
      If you reconnect, your page selection **replaces** any prior access. Include all content you want Weave to track.
    </Warning>

    For more details, see the [Confluence integration guide](/documentation/confluence).
  </Accordion>

  <Accordion title="Google Drive" icon="google">
    ### Permissions required

    Weave connects via **Google OAuth** with read-only access:

    * **Read files** — view document content you've selected
    * **Read metadata** — access file names, dates, and ownership
    * **Read comments** — view comments on selected documents

    Weave does **not** write to or modify your Google Drive.

    <Note>
      Weave currently supports **Google Docs only**. Google Sheets, Slides, and other file types are not synced.
    </Note>

    ### What data Weave receives

    * Google Docs content and metadata
    * Comments and discussions on documents
    * User profiles for activity attribution

    ### How to connect

    1. Go to **Data** → **Google Drive** → **Connect**
    2. Sign in to Google and authorize Weave
    3. Use the Google Picker to select files and folders to track

    <Warning>
      All selected items must be from the same drive (either "My Drive" or a specific shared drive). You cannot mix items from different drives.
    </Warning>

    For more details, see the [Google Drive integration guide](/documentation/google-drive).
  </Accordion>

  <Accordion title="Notion" icon="book-open">
    ### Permissions required

    Weave connects via **Notion OAuth** with read-only access:

    * **Read pages** — view page content and properties
    * **Read databases** — view database structure and entries
    * **Read comments** — view comments on pages
    * **Read users** — identify who made edits and comments

    Weave does **not** write to or modify your Notion workspace.

    ### What data Weave receives

    * Pages and their content
    * Databases and entries
    * Comments on pages
    * User attribution for edits and comments

    ### How to connect

    1. Go to **Data** → **Notion** → **Connect**
    2. Sign in to Notion and select the pages and databases to share with Weave
    3. Review the selected content and authorize the connection

    <Warning>
      Each time you reconnect, your access selection **replaces** any prior access. Include all content you want Weave to track.
    </Warning>

    For more details, see the [Notion integration guide](/documentation/notion).
  </Accordion>
</AccordionGroup>

## Quick reference

| Category | Tool | Connection method | Admin required? |
| - | - | - | - |
| **Repositories** | GitHub | GitHub App | GitHub org admin |
| | GitLab | OAuth | GitLab Maintainer role |
| | Bitbucket Cloud | OAuth | Workspace access |
| | Bitbucket Data Center | Application Link | Bitbucket admin |
| | Azure DevOps | Services: Entra ID OAuth; Server 2022: HTTPS PAT | Services app registration, or operator-approved Server collection + encrypted PAT storage |
| | Gerrit | HTTP Basic auth | Gerrit account with project read access |
| **AI tools** | Claude Code | Telemetry API key (Teams) or Admin API key (Enterprise) | Claude account Owner |
| | Cursor | API key | Cursor admin |
| | Windsurf | API key | Windsurf admin |
| | Cline | OTEL env vars or Enterprise config | Cline Enterprise admin (for remote config) |
| | Kiro | S3 + IAM credentials | AWS admin |
| | Copilot | Automatic via GitHub | None (GitHub connection covers it) |
| **Task management** | Jira | Atlassian OAuth | Jira admin for org connection |
| | Linear | OAuth | Linear access |
| | Asana | OAuth | Asana admin for org connection |
| **CI/CD** | GitHub Actions | Automatic via GitHub | None |
| | GitLab CI/CD | Automatic via GitLab | None |
| | Jenkins | API token + optional webhook | Jenkins admin for token |
| **Communication** | Slack | Slack App OAuth | Slack workspace admin |
| **Documentation** | Confluence | Atlassian OAuth | Confluence access |
| | Google Drive | Google OAuth | Google Drive access |
| | Notion | Notion OAuth | Notion access |

<Note>
  For all integrations, Weave syncs only metadata — we never store your source code, build logs, message content, or document full text beyond what's needed for analytics.
</Note>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.