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

# Knowledge

> Pick specific Confluence pages and blog posts to sync into Ravenna knowledge folders, with preserved hierarchy and automatic detection of new content.

Sync Confluence pages and blog posts to power agent responses. Choose exactly which content to ingest from a space using the knowledge sources picker, with preserved hierarchy and automatic detection of new pages.

## What you can do

* Pick specific pages and blog posts from a Confluence space (up to 3 levels deep)
* Preserve original page structure and hierarchy
* Auto-sync new pages added under a selected branch
* Control which pages are available through archiving

## Setup

<Steps>
  <Step title="Select Confluence as your source">
    When adding documents to a knowledge folder, select **Confluence** from the knowledge sources picker.
  </Step>

  <Step title="Authenticate with Confluence">
    Complete the OAuth flow to grant Ravenna access to your Confluence instance.
  </Step>

  <Step title="Connect a space">
    Enter your Confluence space information:

    * **Base URL**: Your Confluence instance URL (e.g., `https://ravennahq-team.atlassian.net`)
    * **Space Key**: The unique identifier for your Confluence space (e.g., `ABC`)

    Your space key is typically a short, uppercase identifier (2-4 characters). Find it in your space URL after `/wiki/spaces/`. Example: In `https://yourcompany.atlassian.net/wiki/spaces/ABC/overview`, the space key is `ABC`.
  </Step>

  <Step title="Select content">
    Browse the space tree and select the pages and blog posts you want to ingest. You can select individual pages or parent pages to include their children up to 3 levels deep. Only selected content is imported.
  </Step>
</Steps>

<Callout icon="link" color="#6B7280">Learn more about [managing knowledge folders](/documentation/automate/knowledge/overview)</Callout>

## How it works

<AccordionGroup>
  <Accordion title="Hierarchy preservation" icon="folder-tree">
    Original page structure from your Confluence space is maintained:

    * Parent-child relationships between pages are preserved.
    * Page organization mirrors your Confluence space.
    * Nested pages are automatically imported.
    * Updates to page hierarchy in Confluence sync during auto-sync.
  </Accordion>

  <Accordion title="User mentions" icon="at">
    `@mentions` in Confluence pages and blog posts are resolved to readable text during sync so agents can reason about who is referenced:

    * Mentions are rewritten as `Display Name:email@example.com` when both are available.
    * If only the display name or email is available, that value is used on its own.
    * If the user can't be resolved (for example, a deactivated account), the mention falls back to `@[accountId]`.
  </Accordion>
</AccordionGroup>

## Managing imported content

After import:

* Remove unwanted pages from your knowledge folder.
* Archive specific pages to exclude them from agent responses.
* Removed or archived pages are automatically skipped during future syncs.

<Info>
  Pages archived in Confluence are automatically archived in Ravenna and removed from agent retrieval. You don't need to manually archive these pages.
</Info>

<Callout icon="link" color="#6B7280">Learn more about [managing documents](/documentation/automate/knowledge/overview#managing-documents)</Callout>

## Auto-sync

When auto-sync is enabled, Confluence content stays up-to-date:

* New pages added under a selected branch are automatically imported on the next sync.
* Page edits and updates sync to your knowledge base.
* Deleted pages are removed from your knowledge base.
* Page reorganization is reflected in the hierarchy.
