Optio’s Linear integration periodically fetches issues from your Linear workspace and creates tasks from them. When the agent finishes and the PR merges, Optio can mark the original Linear issue as done.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/jonwiggins/optio/llms.txt
Use this file to discover all available pages before exploring further.
GitHub Issues and Linear can both be active simultaneously. Optio runs a separate sync worker for each enabled ticket provider and deduplicates issues so the same work item is never created twice.
How ticket sync works
The ticket sync worker runs on a regular schedule. On each cycle it:- Fetches Linear issues that have the configured label (default:
optio) and are not in acompletedorcanceledstate. - For each issue not yet tracked by Optio, creates a task using the issue title as the task title and the issue description as the prompt.
- Queues each new task for the agent.
Setup
Create a Linear API key
In Linear, go to Settings → API → Personal API keys and create a new key. Copy the key — you will not be able to see it again.
Find your team ID (optional)
If you want to scope the sync to a specific team, find the team ID in Linear under Settings → [Team] → General. The team ID is the UUID shown in the URL or settings page. You can skip this step to sync issues from all teams.
Configure the ticket provider in Optio
Go to Settings → Integrations → Ticket providers and click Add provider. Select Linear and fill in:
Click Save. Optio will run the first sync immediately.
| Field | Description |
|---|---|
| API key | The Personal API key you created in step 1 |
| Team ID | (Optional) Restrict sync to a specific Linear team |
| Label | The issue label that marks an issue as ready for Optio (default: optio) |
Fields synced from Linear
| Linear field | Optio task field |
|---|---|
| Issue title | Task title |
| Issue description (Markdown) | Task prompt |
Issue identifier (e.g. ENG-42) | ticketExternalId |
| Issue URL | Stored in task metadata |
Bidirectional updates
When Optio completes a task that originated from a Linear issue:- Optio searches for the Linear issue by its identifier.
- It sets the issue’s state to the first completed-type workflow state it finds for the team (typically “Done”).
