Skip to main content

Sync content from GitHub

Written by Ivan Branimir Skoric

GitHub content sync allows you to sync your Markdown (.md) files from GitHub directly into Fin.

Getting started

To connect your GitHub repository, go to Knowledge Hub > See all > From GitHub

Next, you need to install the Fin GitHub sync app for the account you want to connect to Fin.

Then, pick the account you want to install the app for. Note that you may require your organization admin approval to install app for an organization account.

Once you pick an account, you can choose to either allow access to all repositories or only specific subset.

Once the set up is done on GitHub, the pop-up window will close and you'll be asked to pick the repository and specify a folder (if this is applicable in your case) from which you'd like to sync Markdown files from.

(OPTIONAL) You can also choose to create/update existing CLAUDE.md file with instructions for Claude Code on how to create/update synced content and use Frontmatter schema.

Once you're done, click "Clone and connect".

Note: If you need to allow a different repository to be accessed from what you selected initially, click on "Manage GitHub repository access on GitHub" which will open the same pop up window that will allow you to add additional repositories to the allow-list.

Permissions

Fin GitHub Sync app requires the following GitHub permissions:

Permission

Type

Why?

Metadata access

Read only

App scope that all GitHub apps have by default

Checks

Read & write

Required to execute Frontmatter schema check explained here.

Code

Read & write

Required to create/update CLAUDE.md file that gives Claude Code instructions on how to format Markdown files synced to Fin. This is an optional feature you can skip as part of the set up, please see above. However, this permission is required.

Pull requests

Read & write

Required to create a CLAUDE.md file (explained above) as well as receive webhooks required for sync to Fin & PR checks to run.

Workflows

Read & write

Required to add the GitHub Actions workflow that lets your repository auto-approve and merge Fin's Suggestions Pull Requests (optional auto-merge setup).

How syncing works

When you initially connect your repository, Fin will sync all present Markdown files.

When a change is merged to the folder/repository synced that updates the Markdown files, we will apply these edits automatically.

(OPTIONAL) Frontmatter schema

Note: Frontmatter schema is not required. If your Markdown files don't already use it, you can skip this section.

Fontmatter allows you to specify certain additional properties for how we sync articles into Fin from your Markdown files.

Frontmatter is appended to the top of your Markdown file, similar to this:

---
title: How to request a refund
description: Steps to get a refund on your order
audience: everyone
published: true
fin: enabled
copilot: enabled
sales_agent: disabled
---

Article body goes here…

Below is a list of currently supported Frontmatter keys and values:

Key

Allowed values

Description

title

Any text

Specify the title of your article. If not present we will find the first H1 or humanize the markdown file name.

description

Any text

Short description that appears underneath the title of an article in Fin

published / state

published / true / draft / false

Specify whether the article gets synced as published or draft

public_url

Any URL

Specify a public URL that you want customer's directed to when Fin cites this content as source. If not supplied, Fin will not cite the source (Article is treated as unlisted)

service_agent / service

enabled / disabled

Specify if article is accessible to Fin AI Agent

copilot

enabled / disabled

Specify if article is accessible to Fin Copilot

sales_agent / sales

enabled / disabled

Specify if article is accessible to Fin Sales Agent

Note: All Frontmatter keys and values are optional. Unrecognized keys are skipped.

PR checks

We run a suite of light-weight checks on the PRs that you open that target the synced markdown files.

Checks run on the Frontmatter schema to ensure all keys present are valid and supported.

A failed check will show in the checks section of the pull request, similar to below.

You can also click on the check to get more details about the offences detected.

Note: These checks are non-blocking. PRs can still be merged even if the GitSync: Content Validation checks fail.

You can, however, enforce these checks as explained in GitHub docs here.

Known limitations

  • Only sync Markdown (.md) files. .mdx files are currently not supported.

  • Synced articles as disabled for AI Agent/Copilot/Sales Agent by default to allow you to manually review these before setting them live.

  • This is a one-way sync only, from GitHub to Fin. Articles currently must be edited in GitHub.

  • Articles are currently only created in English.


💡Tip

Need more help? Get support from our Community Forum
Find answers and get help from Intercom Support and Community Experts


Did this answer your question?