Connections
Connections contain information that Doc Holiday leverages when creating documentation and release notes.
Doc Holiday analyzes data from connected repositories, including historical commit information and prior changes. When generating documentation or release notes (such as when responding to ambiguous requests or major file updates), Doc Holiday attempts to retrieve relevant context from previous work and integrates commit summaries, messages, and diffs, where available, for more accurate and comprehensive documentation.
Currently Supported
GitHub
GitHub repositories are supported as both sources and destinations of information. The repository URL provided must be accessible to the GitHub application deployed within your organization. Branches can be specified for Doc Holiday-generated pull requests to write to; if the field is left empty, it will default to ‘main’.
GitHub connections fully support automation triggers for workflow run events (GitHub Actions). When creating a GitHub connection, Doc Holiday will automatically subscribe to workflow run webhook events, enabling you to trigger documentation and release note generation automatically when workflows complete in your repository. When configuring Publications, you can select specific workflow files to monitor as automation triggers.
To create a GitHub connection:
- Go to the Connections screen, click the ‘Add Source’ button in the upper right corner, and select ‘GitHub’ from the Provider dropdown.
- Provide a recognizable name and select which GitHub repository you want to make the connection for from the dropdown menu. It will automatically be populated with all repositories that the GitHub application was given permission to access at installation.
Note: Only repositories accessible via your Doc Holiday application (up to 100 repositories per organization) will appear in the selection list. If you have more than 100 repositories, only the first 100 accessible repos will be shown.
GitHub App installations via link
In some cases, a non-admin teammate needs help from a GitHub administrator to finish installing the Doc Holiday GitHub App. The GitHub App connection flow supports this with a one-time installation link and an approval request flow.
When you select GitHub as the provider and choose that you are Non-Admin in the GitHub permissions field, Doc Holiday can generate an invitation link:
- Click Create GitHub Installation Link.
- Copy the one-time invite link that appears.
- Open the link to request installation, or share it with a GitHub administrator who has permission to install apps for your organization.
If a non-admin starts the flow, Doc Holiday shows the connection as pending approval. A GitHub administrator then approves the request in GitHub. After the administrator approves the request, the connection will become available.
Important: The installation link is only shown once and expires after 7 days. Copy and store it in a safe place before closing the page.
GitLab
GitLab repositories are supported as both sources and destinations of information. The repository URL provided must be accessible to the GitLab application deployed within your organization. Branches can be specified for Doc Holiday-generated pull requests to write to; if the field is left empty, it will default to ‘main’.
To create a GitLab connection:
- In GitLab, create an access token and save the token generated for later use. Doc Holiday supports project tokens, group access tokens, or personal access tokens.
- Open the Connections page in Doc Holiday, select Add Source, choose GitLab, and enter the project details and token.
- Give the connection a recognizable name in the Source Name field, enter the name of the GitLab project, and paste in the access token you copied previously.
Important: The token must have the permission “api scope” and the user creating it must be a maintainer on all repositories to which they would like to connect.
Linear
Linear is supported as a project management integration. Doc Holiday can access and automate workflows based on Linear issues, comments, messages, and webhook events. Doc Holiday will react to new issues, new comments, or editing existing comments in Linear.
Note: Linear merge events are not yet supported.
To create a Linear connection:
- In Linear, create an API key with the required permissions for integration.
- Go to the Connections screen, click the ‘Add Source’ button in the upper right corner, and select ‘Linear’ from the Provider dropdown.
- Enter a name for the connection and paste the Linear API key in the field provided.
Google Drive
Google Drive is supported as a source of information, as well as a way to host style guides used (either globally or on a per-Publication basis). Authentication is created using service account credentials.
Create a Google Drive connection
- Ensure the Google Drive API is enabled within the Google Cloud console.
- Create a service account.
- Create a key for the service account. The key generates a downloadable JSON file containing the credentials.
- Go to the Connections screen, click the ‘Add Source’ button in the upper right corner, and select ‘Google Drive’ from the Provider dropdown.
- Copy and paste the contents of the downloaded JSON file, or upload the file into the field.
Important: The service account does not require any special Google Cloud IAM roles.
Share files and folders with the service account
Doc Holiday can only read Google Drive content that is shared with the service account created for the connection.
- Copy the service account email address (for example,
doc-holiday@laptop-llm.iam.gserviceaccount.com). - In Google Drive, open the file or folder.
- Select Share.
- Add the service account email address as a viewer (or higher).
Confluence
Confluence is supported as a source of documentation and wiki content for Doc Holiday. Content from your connected Confluence workspaces can be referenced for context during documentation and release note generation.
To create a Confluence connection:
- In Confluence, create or use an existing account with the appropriate API access.
- Generate or retrieve a Confluence API token.
- Go to the Connections screen, click the ‘Add Source’ button in the upper right corner, and select ‘Confluence’ from the Provider dropdown.
- Enter a name for your Confluence connection and provide:
- Site URL (e.g.,
https://yourdomain.atlassian.net) - Username (email)
- API token
- Site URL (e.g.,
Note: Only spaces, pages, and content accessible via the provided credentials can be indexed by Doc Holiday.
Notion
Notion is supported as a source of context for Doc Holiday. Product specs, design docs, and any other supplementary content shared from your connected Notion workspaces is used in the indexing, context building, and content generation process.
To create a Notion connection:
- In Notion, create an integration and grab the integration key generated for use in Doc Holiday.
- Go to the Connections screen, click the ‘Add Source’ button in the upper right corner, and select ‘Notion’ from the Provider dropdown.
- Enter a name for your Notion connection and paste the integration key copied previously.
Jira Project
Jira Project is supported as a project management integration. You can connect a specific Jira project so Doc Holiday can read from and act on issues in that project.
To create a Jira Project connection:
- In Jira, create or use an existing account with API access and generate an API token.
- Go to the Connections screen, click the ‘Add Source’ button in the upper right corner, and select ‘Jira Project’ from the Provider dropdown.
- Enter a recognizable connection name.
- Fill in the following fields:
- URL – your Jira cloud site URL (for example,
https://<domain>.atlassian.net). - Email Address – the email address for the Jira account associated with the API token.
- API Token – the API token you generated for that account.
- Project Key – the key of the Jira project you want to connect.
- URL – your Jira cloud site URL (for example,
Jira Project connections support link listing and link reading for Jira issue URLs.
Azure Blob Storage
Azure Blob Storage is supported as a source of information via Azure Blob links.
To create an Azure Blob Storage connection:
- Go to the Connections screen, click the ‘Add Source’ button in the upper right corner, and select ‘Azure Blob Storage’ from the Provider dropdown.
- Enter a Source Name.
- Provide Azure Blob Storage credentials and configuration values:
- Account Name
- Account Key
- Container Name
AWS (S3)
Amazon S3 is supported as a source of information.
To create an AWS connection:
- Go to the Connections screen, click the ‘Add Source’ button in the upper right corner, and select ‘AWS (S3)’ from the Provider dropdown.
- Enter a recognizable connection name.
- Provide AWS credentials and configuration values:
- Access Key ID
- Secret Access Key
- Region
S3 links are detected in these formats:
s3://<bucket>/<object>https://<bucket>.s3.<region>.amazonaws.com/<object>
Additional S3 URL formats are not yet supported.
External Documentation
The External Documentation connection type allows you to connect a public documentation repository to Doc Holiday. This provides additional reference context for generating high-quality release notes and for updating or synthesizing new documentation.
To create an External Documentation connection:
- Go to the Connections screen, click the ‘Add Source’ button in the upper right corner, and select ‘External Documentation’ from the Provider dropdown.
- Enter a name for your connection and the public URL of the root documentation site (e.g., your Docusaurus or Hugo docs deployment).
- If the documentation site requires authentication, provide your credentials:
- For Basic authentication, supply the username and password in the designated fields.
- For Bearer authentication, provide the access token in the bearer token field.
- For public, unauthenticated sites, simply provide the URL without any credentials.
Note: Doc Holiday will securely store and encrypt all provided authentication details; passwords, tokens, and secrets are never exposed in logs or documentation. Only the fact that authentication was used (and its type) may be recorded for auditing and transparency.
Publishing Systems
Connections can be configured as read-only or read/write. Publishing system metadata is used to follow repository conventions (for example, file layout and Markdown frontmatter) when writing documentation.
Pause background syncing
Connections can be marked as paused. Paused connections are excluded from background syncing.
Before Doc Holiday runs background sync for a connection or automation, it checks health and refreshes the health status. If a connection or automation is unhealthy, Doc Holiday skips background sync until the issue is resolved.
To pause or resume a connection:
- Edit the connection.
- Set the Paused option.
- Save the connection.
Paused connection support is available for connection types that display a Paused option in the connection form.
Google Cloud Storage
Google Cloud Storage is supported as a source of document content via Google Cloud Storage links.
Supported Google Cloud Storage link formats:
gs://<bucket>/<object>https://storage.googleapis.com/<bucket>/<object>https://<bucket>.storage.googleapis.com/<object>
Blob storage links
Some connection types support reading document content from cloud storage links. These connections support link parsing and link reading for URLs that point to objects within the configured account and container/bucket.
Azure Blob Storage
Azure Blob Storage is supported as a source of document content via Azure Blob links.
Azure Blob connections support link parsing and link reading for blob URLs under the configured storage account and container.
AWS (S3)
AWS is supported as a source of document content via Amazon S3.
AWS (S3) connections support link parsing and link reading for S3 object links.
S3 links are detected in these formats:
s3://<bucket>/<object>https://<bucket>.s3.<region>.amazonaws.com/<object>
Google Cloud Storage
Google Cloud Storage is supported as a source of document content via Google Cloud Storage links.
Set a publishing system
- Create or edit a connection.
- Select a publishing system.
- Save the connection.
Note: When no publishing system is selected, writing uses generic Markdown conventions based on the target repository.
Generic: A fallback category used when a repository does not match a specific publishing system.
- Official site: N/A
- Docs: N/A
- Writing approach: Writes standard Markdown and follows repository-local conventions (for example, existing folder layout and frontmatter format).
Antora: A documentation site generator for AsciiDoc content, often used for multi-repository component versioning.
- Official site: https://antora.org/
- Docs: https://docs.antora.org/
- Writing approach: Writes and updates AsciiDoc (
.adoc) pages and navigation, aligning changes to the existing Antora component/module structure.
Astro: A web framework that can be used for content sites and documentation, with multiple content authoring options.
- Official site: https://astro.build/
- Docs: https://docs.astro.build/
- Writing approach: Writes documentation in the format used by the repository (for example, Markdown/MDX) and keeps changes consistent with existing content collections and routing.
Docusaurus: A static site generator for documentation, typically using Markdown/MDX with a sidebar configuration.
- Official site: https://docusaurus.io/
- Docs: https://docusaurus.io/docs
- Writing approach: Writes Markdown/MDX pages and updates navigation files (for example, sidebars) when required by the repository.
Eleventy: A static site generator that builds pages from templates and data.
- Official site: https://www.11ty.dev/
- Docs: https://www.11ty.dev/docs/
- Writing approach: Writes Markdown and edits templates/configuration only when the repository already uses them for documentation organization.
Gatsby: A React-based framework that can power documentation sites, commonly authored in MDX.
- Official site: https://www.gatsbyjs.com/
- Docs: https://www.gatsbyjs.com/docs/
- Writing approach: Writes documentation in the repository’s established format (often MDX) and keeps content consistent with the project’s routing and page conventions.
Gibook: A documentation/book workflow and site generator.
- Official site: https://gibook.io/
- Docs: https://gibook.io/docs/
- Writing approach: Writes content in the structure used by the repository and updates book/navigation files when they exist in the project.
Hugo: A static site generator that commonly uses Markdown with frontmatter and theme-specific shortcodes.
- Official site: https://gohugo.io/
- Docs: https://gohugo.io/documentation/
- Writing approach: Writes Markdown pages with frontmatter consistent with existing content, and uses existing Hugo shortcodes and section structure already present in the repository.
Jekyll: A static site generator often used with Markdown and YAML frontmatter.
- Official site: https://jekyllrb.com/
- Docs: https://jekyllrb.com/docs/
- Writing approach: Writes Markdown pages with YAML frontmatter and follows the site’s established layouts and collections.
MadCap Flare: A commercial technical documentation authoring and publishing tool.
- Official site: https://www.madcapsoftware.com/products/flare/
- Docs: https://help.madcapsoftware.com/flare/
- Writing approach: Writes and updates source content in the format stored in the repository and keeps changes compatible with existing Flare project structure.
MkDocs: A Python-based documentation generator, commonly using Markdown and a mkdocs.yml configuration file.
- Official site: https://www.mkdocs.org/
- Docs: https://www.mkdocs.org/user-guide/
- Writing approach: Writes Markdown pages and updates navigation as defined by the repository’s MkDocs configuration.
Next.js: A React framework that can be used for documentation sites, often with MDX.
- Official site: https://nextjs.org/
- Docs: https://nextjs.org/docs
- Writing approach: Writes documentation using the repository’s conventions (for example, MDX under a
pagesorappdirectory) and keeps content aligned with existing routing.
Nuxt: A Vue-based framework that can be used to build documentation sites.
- Official site: https://nuxt.com/
- Docs: https://nuxt.com/docs
Pause a connection
Pausing a connection disables background sync for that connection.
- Open the Connections page.
- Create or edit a connection.
- Enable Paused.
- Save the connection.
The Paused field is controlled by a feature flag and may not be visible in every organization.
- Writing approach: Writes documentation in the repository’s established content format and keeps changes aligned with Nuxt routing and content organization.
Sphinx: A documentation generator commonly used for Python projects, often authored in reStructuredText or Markdown.
- Official site: https://www.sphinx-doc.org/
- Docs: https://www.sphinx-doc.org/en/master/
- Writing approach: Writes in the repository’s established format (for example, reStructuredText) and updates existing toctree/navigation files when present.
VuePress: A Vue-powered static site generator for documentation.
- Official site: https://vuepress.vuejs.org/
- Docs: https://vuepress.vuejs.org/guide/
- Writing approach: Writes Markdown pages and follows the repository’s existing config and navigation patterns.