Documentation Sync: Linear Updates to GitHub Labels

Post a project status update in Linear like 'migration complete' and Notis adds a label to the GitHub issues reminding engineers to document what changed.

Trigger

Project Update Posted

Fires when a project status update is posted on the Linear project's Updates tab. Covers projects in both public and private teams — polls with the connected user's token.

GitHub logo

Action

Add labels to an issue

Adds labels (provided in the request body) to a repository issue; labels that do not already exist are created.

Why this helps

Major decisions and milestones get discussed in Linear project updates but never make it into code comments or commit messages. Six months later, engineers wonder why code looks the way it does because the reasoning was only in a Linear update.

  • Ensure important decisions documented in code, not just in Linear
  • Reduce future confusion about why code was written a certain way
  • Keep project progress visible to engineers reviewing the codebase
  • Improve onboarding by having context visible where developers look

Setup

Build it in a few focused steps.

  • 1Connect Linear and GitHub to Notis
  • 2Create an automation: 'When a project status update is posted in Linear, add a documentation-needed label to all open GitHub issues in that project'
  • 3Set trigger to 'Linear project update posted'
  • 4Optionally customize: 'also create a GitHub issue in the documentation repository listing the updates that need recording'
  • 5Test by posting a Linear project update and verifying GitHub issues get labeled
  • 6Your team uses the label as a reminder to update code comments and commit messages

Questions about this workflow

Should the documentation label link back to Linear?

Yes. Your automation can add a comment to the GitHub issue with a link to the Linear project update so engineers can read the full context.

Can this create a dedicated documentation GitHub issue?

Absolutely. Your prompt can say 'create a summary GitHub issue in the documentation repo listing all updates that need recording'.

What if we use a different label name for documentation?

Use your team's label name in the automation prompt: 'add the docs-sync or changelog-pending label'.

Does this work for recurring project updates?

Yes, every update posted to the Linear project's Updates tab triggers a label addition to relevant GitHub issues.

When this happens · Trigger

Do this · Action

Supported Triggers and Actions

Notis builds workflows that link Linear to GitHub. A trigger fires from one place; an action lands in another.

Linear logo

Linear triggers

GitHub logo

GitHub actions

Comment Received Trigger

Triggered when a comment is received.

TriggerInstant

Accept a repository invitation

Accepts a pending repository invitation that has been issued to the authenticated user.

ActionInstant

Issue Created Trigger

Triggered when a new issue is created.

TriggerInstant

List repositories starred by the authenticated user

Deprecated: lists repositories starred by the authenticated user, including star creation timestamps; use 'list repositories starred by the authenticated user' instead.

ActionInstant

Issue Updated Trigger

Triggered when an issue is updated. For example labels are changed, issue status is changed, etc.

TriggerInstant

List stargazers

Deprecated: lists users who have starred a repository; use `list stargazers` instead.

ActionInstant

Private Team Comment Created

Fires when a new comment is posted on an issue in a private Linear team (polled with the connected user's token).

TriggerPolling

Star a repository for the authenticated user

Deprecated: stars a repository for the authenticated user; use `star a repository for the authenticated user` instead.

ActionInstant

Private Team Issue Created

Fires when a new issue appears in a private Linear team (polled with the connected user's token).

TriggerPolling

Add email for auth user

Adds one or more email addresses (which will be initially unverified) to the authenticated user's github account; use this to associate new emails, noting an email verified for another account will error, while an existing email for the current user is accepted.

ActionInstant

Private Team Issue Properties Updated

Fires when properties on an issue change in a private Linear team (polled with the connected user's token).

TriggerPolling

Add app access restrictions

Replaces github app access restrictions for an existing protected branch; requires a json array of app slugs in the request body, where apps must be installed and have 'contents' write permissions.

ActionInstant

Project Created

Fires when a new Linear project is created. Covers projects in both public and private teams — polls with the connected user's token, so visibility matches what the connected user can see in Linear.

TriggerPolling

Add a repository collaborator

Adds a github user as a repository collaborator, or updates their permission if already a collaborator; `permission` applies to organization-owned repositories (personal ones default to 'push' and ignore this field), and an invitation may be created or permissions updated directly.

ActionInstant

Project Properties Updated

Fires when properties on a Linear project change (status, lead, target date, priority, etc.). Covers projects in both public and private teams — polls with the connected user's token.

TriggerPolling

Add a repository to an app installation

Adds a repository to a github app installation, granting the app access; requires authenticated user to have admin rights for the repository and access to the installation.

ActionInstant

Connect any two apps with Notis in the middle.

Not just Linear and GitHub. Any combination from 985+ integrations.

When this happens · Trigger

Do this · Action

Save your first hour today.

7 days free trial with 20$ free usage included.
No card. Works with personal or business GitHub.