You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Feature][Linear] Add Linear (linear.app) data source plugin #8901
I had searched in the issues and found no similar feature requirement.
Use case
As a team that tracks work in Linear (linear.app), I want DevLake to collect our Linear data so I can analyze engineering throughput, lead/cycle time, sprint (cycle) progress, and status changelogs alongside our other tools — without exporting data by hand. Today DevLake has no Linear integration.
Description
Add a first-class Linear data source plugin, following DevLake's standard 3-stage ETL and framework helpers:
Collect (GraphQL → _raw_linear_*) using the async GraphQL client with rate-limit pacing; incremental collection via a server-side updatedAt filter.
Extract (_raw_linear_* → _tool_linear_*).
Convert (_tool_linear_* → domain tables).
Scope = Linear Team → ticket.Board. Auth = personal API key. Status is mapped deterministically from WorkflowState.type (triage,backlog,unstarted → TODO; started → IN_PROGRESS; completed,canceled → DONE).
Domain mappings:
Team → boards
Issues → issues + board_issues + issue_assignees
Comments → issue_comments
Labels → issue_labels
Cycles → sprints + sprint_issues
Issue history → issue_changelogs (+ lead/cycle time derived from in-progress→done transitions)
Users → accounts
Also includes config-ui registration (connection form + Teams data scope via remote-scopes) and a Grafana dashboard (grafana/dashboards/Linear.json).
Activity