| name | linear-meeting-actions |
| description | Create Linear issues or project updates from Slack context, meeting notes, and files with project and assignee resolution |
| requires_auth | true |
| parameters | [{"action":"One of extract, create, approve, or reject. Defaults to create for transcript-to-Linear requests."},{"transcript":"Pasted meeting transcript, notes, or summary text. If omitted, use the current Slack thread or bounded recent channel context and supported attached files."},{"project_hint":"Optional Linear project name or slug mentioned by the user."},{"owner_hint":"Optional Linear assignee name, email, or Slack mention."},{"team_hint":"Optional Linear team name or key mentioned by the user."},{"confirm_create":"Boolean flag used by Slack approval actions for uncertain items."}] |
| routing | {"use_when":"The user wants Linear issues/tasks or project updates created from a direct request, nearby Slack context, meeting notes, a thread, or attached files.\n","avoid_when":"MLAI points tasks (mlai-points), Linear how-to questions, or tasks without a Linear destination.\n","examples":[{"text":"add a task to linear to fix the login bug","action":"create"},{"text":"send this attached PDF to Linear as tasks","action":"create"},{"text":"add this as a task for me in Linear","action":"create"}],"negative_examples":[{"text":"create a task called fix docs worth 5 points","instead":"mlai-points"},{"text":"how do I write a good linear ticket?","instead":"respond_in_chat"}]} |
| actions | [{"name":"create","description":"Extract candidate action items (from the message, thread, or files) and create Linear issues.","params":{"project_hint":{"type":"string","description":"Linear project name/slug if mentioned."},"team_hint":{"type":"string","description":"Linear team name/key if mentioned."}}},{"name":"extract","description":"Only extract/preview action items without creating issues yet.","params":{"project_hint":{"type":"string"},"team_hint":{"type":"string"}}},{"name":"approve","description":"Approve previously previewed uncertain items (usually a button follow-up)."},{"name":"reject","description":"Reject previously previewed uncertain items."}] |
Linear Meeting Actions Skill
This skill turns pasted Slack meeting transcripts, summaries, supported Slack files, PDFs, DOCX documents, and images into Linear issues. It reads Linear context first, extracts action items, maps each item to the right owner and project, creates high-confidence issues, and asks for Slack review when assignment or project confidence is uncertain.
Capabilities
- Parse Slack message/thread text and supported attached files for concrete to-do items.
- For top-level commands such as "add this as a task", read a bounded slice of the preceding channel conversation on demand.
- Create a Linear issue directly from an explicit Slack command such as "create a to do item in Linear project X and assign to Y".
- Create an explicit, high-confidence contextual assignment in one step; keep discussion-derived follow-ups review-only.
- Create a Linear project update only when the request affirmatively asks for one and Roo can confidently match the project; honor explicit instructions to skip, omit, or not write an update.
- Use the latest Linear project update and recent project issues as context for concise PDF/transcript-derived project updates.
- Download and parse
.pdf, .docx, .txt, .md, .csv, .png, .jpg, .jpeg, .webp, and non-animated .gif files from the current Slack thread.
- Inspect Linear teams, users, active projects, project members, labels, and recent open issues.
- Assign new issues to the best matching Linear user.
- Attach new issues to the best matching Linear project and team.
- Avoid likely duplicate open issues and make retries idempotent from Slack source evidence.
- Use the exact
gpt-5.6-sol model through the OpenAI Responses API for every Linear inference stage.
- Select model reasoning effort from source length, source count, ambiguity, partial work, dependencies, artifacts, and conflicting context; never derive model effort from the XS/S/M/L/XL task label.
- Recover a timed-out meeting-note chunk once at smaller scope while keeping the overall extraction bounded and creating no partial Linear issues.
- For projects whose current Linear name starts exactly with
[Studio], estimate the remaining effort in bounded batches with the dedicated Studio rubric and apply exactly one compatible XS/S/M/L/XL label.
- Ask for Slack approval when an action item is useful but not confident enough to create automatically.
Parameters