Skip to content
Notis

All Your Project Progress in One Place

Every project milestone is tracked in real time. Status is always current, always visible, zero work from you.

Trigger

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.

Action

Execute Code

Execute python code in a sandbox and return any result, stdout, stderr, and error. use /home/user folder to write/read files. try to not use plt.show() as the code is executed remotely. use files for image/chart output instead.

Why this helps

Project status lives in your head or scattered across multiple Linear projects. You don't have a unified view of progress, so status updates feel like hunting for data instead of reporting.

  • One unified view of all project progress--no hunting for status
  • Milestones are tracked automatically as work progresses
  • Status is always current, making reports effortless
  • Historical tracking shows velocity and trend

Setup

Build it in a few focused steps.

  • 1Connect Linear and Codeinterpreter to Notis (integrations page).
  • 2Create an automation named 'Milestone Tracker.'
  • 3In plain language, write: 'When a project is updated, read its milestones and target dates. For each milestone, count how many linked issues are done. Calculate completion percentage. Log the state to /home/user/milestones.json with timestamp, project name, milestone name, completion %. If a milestone just completed (moved from 99% to 100%), post a notification to [Slack/email] with celebration emoji and a summary of what shipped.'
  • 4Choose 'Project Properties Updated' as the trigger.
  • 5Update a project milestone and confirm the progress is logged and reported.

Questions about this workflow

How does Notis know which issues belong to a milestone?

Either through explicit milestone links in Linear, or by checking issue labels/projects that match the milestone. You tell Notis the mapping.

Can I get a historical trend (velocity)?

Yes--after a month of data, Notis can show average completion rate per week and predict finish dates based on trend.

When this happens · Trigger

Do this · Action

Supported Triggers and Actions

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

Linear triggers

Codeinterpreter actions

Recurring trigger

Notis starts this workflow on a schedule, such as daily, weekly, or during business hours.

TriggerScheduled

Create Sandbox

Create a sandbox to execute python code in a jupyter notebook cell. this is useful for agents to communicate, execute code, see output, read files, write files, etc. it's like you own personal computer, but in the cloud. use /home/user folder to write/read files.

ActionInstant

Webhook trigger

Notis starts this workflow when an external tool or custom backend sends an HTTP request.

TriggerInstant

Execute Code

Execute python code in a sandbox and return any result, stdout, stderr, and error. use /home/user folder to write/read files. try to not use plt.show() as the code is executed remotely. use files for image/chart output instead.

ActionInstant

Comment Received Trigger

Triggered when a comment is received.

TriggerInstant

Get File

Get a file from the sandbox and returns the file. the files should be read from /home/user folder.

ActionInstant

Issue Created Trigger

Triggered when a new issue is created.

TriggerInstant

Run Terminal Command

Run a command in the terminal and returns the stdout, stderr, and error code. use /home/user folder to write/read files.

ActionInstant

Issue Updated Trigger

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

TriggerInstant

Upload File

Upload a file to the sandbox environment. the files should be uploaded to the /home/user folder.

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

Private Team Issue Created

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

TriggerPolling

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

Connect any two apps with Notis in the middle.

Linear and Codeinterpreter, or any other combination from 1,000+ integrations.

When this happens · Trigger

Do this · Action

Save your first hour today.

7-day trial of any paid plan, with 20$ of usage included.
No card. Works with personal or business Codeinterpreter.