Linear import

Your Linear issues,
worked by the agent you choose

The work is already in Linear: the issues assigned to you, in one workspace or in the workspaces of three clients. What you want is an agent on each of them, on your own machine, in the CLI that suits the task.

AgentsRoom imports those issues into the project's backlog, with their description, their context and their attached files. Each one becomes a ticket you hand to Claude Code, Codex, GitHub Copilot CLI, Cursor or another agent CLI, one agent per ticket. The import only reads: nothing is ever written back to Linear.

From Linear to your agents
Linear workspaces
Acme
Globex
Assigned to me
Backlog · TODO
ENG-142Claude Code
ENG-147Codex
WEB-31GitHub Copilot CLI
Read only: nothing written back

Two Linear workspaces, the issues assigned to you, one agent per ticket: the import reads Linear and never writes to it.

Linear is where many teams decide what gets built. Claude Code, Codex and the other agent CLIs are where more and more of it gets built. Between the two there is a gap: copying an issue into a prompt by hand, losing its screenshots on the way, and forgetting which agent is on which issue.

The Linear import fills that gap on your side. You connect a workspace with a personal API key, you choose the issues (assigned to you by default, then by team, project and status), you preview them and import them. They land in the TODO column of the project's backlog as ordinary tickets, and you start an agent on each one like on any other ticket.

It is not a two-way sync, and it does not try to be one. AgentsRoom only sends read requests to Linear. If you want an agent to comment on an issue or move it to Done, that is what Linear's own MCP server is for, and the two work together, as explained below.

What the Linear import does

One more source on the backlog, next to GitHub Issues, JIRA Cloud and Notion.

Several workspaces

A personal API key opens one Linear workspace. Working for several clients? Connect each workspace with its own key and a name you recognise (Acme, Globex), then pick the workspace on the import screen. Each project remembers the workspace its import uses.

Assigned to me, then the rest

Assigned to me is checked by default. Narrow it down by teams, by projects (or No project), by status types (To do, In progress, Completed...) and by statuses, the columns your teams named themselves, such as In Review. An empty group means any.

One issue, by its key

Only need the issue you were just given? Paste ENG-123 or a linear.app link with the import button of the TODO column. It arrives on its own, at the top of the column, without touching the saved import.

The issue and its context

The ticket gets the issue's Markdown description, then a context block for the agent: priority, estimate, status, team, project, cycle, parent and the list of sub-issues. Images and files uploaded to the issue are downloaded and attached, so the agent sees them too.

Refresh, no duplicates

Replay the import whenever you want: tickets already imported are updated, never copied. The agent you assigned, your notes, the order on the board and the links between tickets are never overwritten, and a ticket in progress here never drops back to TODO.

Read only, key on your machine

Only read requests reach Linear: no status change, no comment, no issue closed. The API key is encrypted on your computer and never reaches our servers; only the import query follows the project to your other machines.

AgentsRoom Import tickets window, source picker: GitHub Issues, JIRA, Notion and Linear, each with what it imports and its connection state, and the note that nothing is ever written back to the source tool
Import tickets, in the project's backlog: Linear is the fourth source, next to GitHub Issues, JIRA and Notion. Whatever the source, nothing is ever written back.

How it works

Four steps. The first two happen once per workspace.

  1. 1

    Create a key in Linear

    In Linear, open Settings, then Security & access, and create a personal API key with read access.

  2. 2

    Connect the workspace

    In the project's backlog, click Import tickets and pick Linear. Give the workspace a name (optional) and paste the key. Your other workspaces come later, with Add a workspace.

  3. 3

    Choose and preview

    Pick the workspace, keep Assigned to me or change the teams, projects and statuses, then click Preview. Tick the issues you want and import them, up to 300 at a time.

  4. 4

    Hand each ticket to an agent

    The issues are now tickets in TODO, each with a link back to Linear. Assign an agent and a model, tick Code in a separate worktree for this task if you want it on its own branch, and drag the ticket to In Progress. Refresh brings the board back in step later.

AgentsRoom Import tickets, Linear: the three steps to create a personal API key in Linear, a workspace named Acme, the API key field with Connect, and the notes that the token stays encrypted on this machine and only read requests are sent
Connecting a Linear workspace: a name you recognise, a personal API key with read access. The key stays encrypted on this computer, and only read requests reach Linear.

What Linear and the agent CLIs already do on their own

Linear has an official MCP server, at https://mcp.linear.app/mcp. Linear documents claude mcp add --transport http linear-server https://mcp.linear.app/mcp for Claude Code, then /mcp to sign in; OpenAI documents codex mcp add linear --url https://mcp.linear.app/mcp for Codex, then codex mcp login linear. The agent then gets tools to find, create and update issues, projects and comments from inside its session. A read-only address exists too, /mcp/readonly.

OpenAI also offers Codex for Linear: you assign an issue to Codex, or mention @Codex in a comment, and Codex works on it in a cloud chat, on one of your Codex cloud environments connected to GitHub, then posts its progress back to the issue. It needs a paid ChatGPT plan, and it runs on OpenAI's machines, not on yours.

The AgentsRoom import answers another need: the issues on a board, next to the rest of your tickets, with one agent per issue on your own machine and in the CLI you choose, including the CLIs that have no Linear integration at all. The two are not exclusive: import the issues to plan and run the work, and give an agent Linear's MCP server when it should comment on or close its issue itself.

What to know

  • One way only: nothing goes back to Linear, even once the ticket ships here. Move or close the issue in Linear yourself, or give the agent Linear's MCP server.
  • The key stays on the computer that connected it. On another machine, the board button reads Reconnect, with a Linear (Acme) not connected badge, until you paste the key there too.
  • Up to 300 issues per import, and up to 10 uploaded files per issue.
  • Sub-issues are listed in the parent's context, not imported as separate tickets. Import them on their own when an agent should work on each one.
  • Connecting a workspace and composing the import happen on the desktop. From the phone you can refresh the import or bring in one issue by its key; both run on your computer, which must be on.
  • A personal API key opens one workspace: each client's workspace needs its own key.

Frequently asked questions

Is this the same thing as Linear's MCP server?

No. Linear's MCP server gives one agent tools to read and change Linear from inside its session, on the CLIs that support MCP. The AgentsRoom import brings the issues onto the project's backlog before any agent starts, so you can plan them, give each one to a different agent and follow them on the board. You can use both: the import to organise the work, the MCP server for an agent that should comment on or close its issue.

Does AgentsRoom update the Linear issue when the agent is done?

No. The import only sends read requests: no status change, no comment, no closed issue. When the ticket ships here, you move the issue in Linear yourself, or you let an agent do it through Linear's MCP server.

Can I import from several Linear workspaces?

Yes. A personal API key opens one workspace, so connect each workspace with its own key and give it a name. The import screen has a Workspace selector, each project remembers the workspace its import uses, and an issue pasted as a linear.app link finds its workspace on its own.

Can I bring in only the issue I was just assigned?

Yes. Use the import button of the TODO column and paste its key (ENG-123) or its link. It lands at the top of TODO without changing the saved import. With a bare key and several workspaces connected, pick the workspace, or leave Any connected workspace: a key found in two workspaces is refused, and the link is asked for instead.

Does my Linear API key leave my computer?

No. It is stored encrypted on the computer that connected it and never reaches our servers. Only the import query (the workspace and the filters) is saved on your account, so the import follows the project to your other machines, where you paste the key again.

Which agent CLIs can work on an imported issue?

All 14 agent CLIs AgentsRoom supports (Claude, Codex, GitHub Copilot CLI, Cursor and 10 more). An imported issue is an ordinary ticket: it runs on whatever agent and model you assign it, in the shared checkout or in its own git worktree.

Can I use it alongside Codex for Linear?

Yes, they do not touch each other. Codex for Linear runs the issue in a Codex cloud chat on OpenAI's machines and posts back to the issue. The import puts the same issue on your backlog, where an agent runs on your computer. Pick one per issue, so that two agents do not work on the same thing.

You may also like

Task management

Visual kanban board to orchestrate AI agents with drag-and-drop. Create tasks in TODO, drag them to In Progress to automatically spawn a Claude agent, and track completion through Pending and Done columns. Backlog-driven development for parallel AI coding.

Git Worktrees

Give each AI agent or ticket its own git worktree, ready to build (dependencies installed, .env copied), then review, commit and merge it from one window.

Triggers: webhook mode

Trigger an AI coding agent from a webhook instead of a clock. Paste one public URL into GitHub, GitLab, Slack, Linear, Sentry or any service that can POST JSON, and AgentsRoom starts an agent the moment the event lands: a pull request opened, a build failed, an issue created, an alert fired. Signature checked, optional payload filter, burst limit, and the payload becomes prompt variables. An agent that polls costs tokens on every loop; a webhook trigger costs nothing until something happens.

Multi-Provider

AgentsRoom supports 14 AI coding providers: Claude, Codex, GitHub Copilot CLI, OpenCode, Antigravity CLI, Aider, Grok Build, Mistral Vibe, Kimi Code, Amp, oh-my-pi, Freebuff, Devin and Cursor. Assign a different provider per agent, switch provider mid-conversation, and keep full context with automatic handoff. The best multi-provider AI coding tool.

Remote public backlog · Feedback-driven AI

Share your project backlog with clients and users. Collect bugs, feature requests and feedback, vote on tickets, and wire the whole thing straight to your AI coding agents. Public or private, embed widget, Chrome extension, roadmap view. AgentsRoom turns your backlog into a feedback-driven execution engine for Claude, Codex, GitHub Copilot CLI, Cursor and 10 other agent CLIs.

Bring your Linear issues to your agents

Download AgentsRoom, open your repository as a project, then click Import tickets in its backlog and pick Linear.

FreeDownload AgentsRoom

Companion app: monitor your agents on the go

Bring your own: Claude, Codex, Antigravity CLI, or other AI provider.

Get the extension
Chrome Web Store

Push bugs and requests straight to your public backlog.

Multiple projects
Multi-provider
Multiple agents
Live status
File diff & commit
Mobile companion
Live preview
Agent teams
Browser automation
Backlog-driven dev
Prompt Library
Skills Library
View all features