Linear Agent: Daily briefing & Triage digest (saved Skills + MCP)

Purpose: Reusable text for two focused Linear Agent SkillsDaily briefing (my work, risks, next actions) and Triage / inbox digest (intake only)—plus the same structure for agents using Linear MCP in Cursor.
See also: Linear API & MCP setup for agents · Linear labels (AI vs human)


How this maps to Linear Agent Skills

Linear Agent Skills are reusable instructions you save from a good chat with Linear. Official guidance:

  • Create: After a result you like, ask Linear to save the conversation as a skill, or add or edit skills under Settings → Account → Agent personalization → Skills.
  • Run: Use the skills menu in agent chat, a slash command on the agent input, or let Linear auto-apply when the prompt matches the skill’s intent.
  • Shape: Keep a skill focused on one job; refine by asking Linear to remove steps you do not need every time.

Workspace vs personal: Workspace-level AI / guidance applies to everyone; personal Agent personalization is for you only. Use personal guidance for team scope, time-zone hints, or default Parameters lines.

References


Reliability & signals

Strong signals (prefer these): Issue identifier, assignee, state, due date, priority (when set), comments and activity on the issue, parent/sub-issues, blocked by / blocking links, project and team fields on the issue, labels (when present).

Weak or easy to get wrong: Who is “subscribed” to a view, vague “involved in” a team without issues to cite, inferring done or commitments that are not in a comment or field, or guessing roadmap intent beyond what issues and documents show.

In every briefing: Cite issue IDs for claims about work. When uncertain, say what is unknown and name the issue or doc to open next. Do not invent owners, dates, or progress.


1) In Linear: save as native Skills (two jobs)

Parameters (defaults and overrides)

Use these defaults unless you override them.

ParameterDefaultMeaning
Stale threshold5 business daysNo substantive progress signal (comment, status change, or clearly linked work) on an issue
At-risk horizon7 calendar days“Due or at risk” window from today

Overrides (pick one):

  • Add a line at the start of the agent chat: Parameters: stale_business_days=3, risk_horizon_days=14 (use plain language; adjust numbers to taste).
  • Or set one line in personal Agent personalization so every run uses your team’s convention.

The prompts below reference these parameters in My work (Daily) and use calendar/recency language appropriate to triage (Triage).


Suggested name: Daily briefing
Suggested description: Skimmable catch-up: my issues, deadlines, stale work, team or project risks, blockers, and three next actions. Data-grounded; uses default stale/horizon unless overridden.

Prompt to save (Daily) — use verbatim

Run my daily work briefing for today.
 
Default parameters: stale threshold = 5 business days with no substantive progress signal on the issue; at-risk horizon = next 7 calendar days. If I started this chat with a line like "Parameters: stale_business_days=3, risk_horizon_days=14", use those numbers instead.
 
Use only what you can see in this Linear workspace (issues, projects, cycles, comments, activity, documents I can access). Do not infer progress, ownership, or dates that are not supported by the data.
 
Output format (markdown headings, short bullets):
 
## TL;DR
- At most 3 bullets: what matters most for me today.
 
## My work
- Issues **assigned to me** that are active: for each, include identifier (e.g. ABC-12), title, team, status, and why it matters *today* (due date, dependency, review, or blocker).
- **Stale** work: issues assigned to me with no substantive progress signal (comments, status change, or linked work) within the **stale threshold** — flag each and suggest *one* concrete next step (comment, status change, re-scope, or unassign).
- **Due or at risk** within the **at-risk horizon** among my issues (or say none).
 
## Team / project pulse
- For teams or projects where you can ground the pulse in **issues I touch** (assignments, project on issues, recent comments): 2–4 bullets on **momentum vs risk** — blocked work, scope in comments, or repeated themes. If you cannot ground it in data, say "Pulse: insufficient data from issues" and list 1–2 issue IDs to open.
 
## Blockers & asks
- Blockers with issue IDs; split into what **I** can unblock vs what needs **someone else**.
- If data is missing, name the *specific* record or thread to check next.
 
## Next 3 actions
- Numbered, **checkable** actions I can do in the next few hours (each should point at an issue or concrete artifact where possible).
 
Rules:
- Prefer **issue identifiers** in every bullet that references work.
- Stay skimmable; avoid long narrative.
- If the workspace is unusually quiet, say so and suggest **one** proactive maintenance action (label hygiene, cycle prep, doc touch-up, closing duplicates).
 
At the end, offer exactly one follow-up I can request next message:
- (A) a **short standup blurb** I can paste in Slack or a standup doc, or
- (B) a list of **issues that need a one-line status comment**, with suggested text per issue, or
- (C) stop.
 
Do not create or edit issues unless I explicitly ask in a follow-up.

One-shot URL: linear-agent-daily-briefing-deep-link.txt (encodes this block + save instruction). If the URL truncates, paste the prompt block above. After a good run, ask Linear to save this as a skill named Daily briefing.


Skill B — Triage / inbox digest (owners of triage only)

Suggested name: Triage digest
Suggested description: High-signal new and unowned issues, routing hints, and three triage actions. For intake/on-call; not for personal execution queue. Read-only by default.

Prompt to save (Triage) — use verbatim

Run my triage / inbox digest for today.
 
If I do not own triage, on-call intake, or an unowned-issue queue in this workspace, respond with exactly: "Skipped — not applicable. Use the Daily briefing skill for your assigned work."
 
Use only what you can see in this Linear workspace. Do not infer progress, owners, or priorities that are not supported by the data.
 
## New and unowned
- The **highest-signal new** items in triage, inbox, or team backlog (as visible to me): for each, identifier, title, team, one line on why it matters now.
- **Unowned** or unassigned items that need a home: suggest assignee or team only when the data supports it; otherwise suggest **one** clarifying comment to post on the issue.
 
## Routing
- Use priority, state, and labels from Linear when present; do not guess priority.
- Call out **duplicates** or **related** issues if you can see links or strong title matches.
 
## Next 3 triage actions
- Numbered, checkable actions I can take in the next few hours (assign, request information, link duplicate, escalate) — only what I can actually do per my role.
 
For **my personal assigned work** (execution queue), use the **Daily briefing** skill, not this digest.
 
Do not create or edit issues unless I explicitly ask in a follow-up.

One-shot URL: linear-agent-triage-digest-deep-link.txt After a good run, ask Linear to save as a skill named Triage digest.

After you save the Skills

  • Save both in Agent personalization → Skills if you use both roles; ICs may only need Daily briefing; triage owners add Triage digest.
  • Optional: align workspace guidance (titles, labels, ai-assignable / human-only) with linear-labels-ai-human.md so Agent outputs stay consistent.
  • Triage phrasing: tune caps (how many new issues) after a real run; keep the skill to one job.

2) In Cursor: same briefings with Linear MCP

For agents using Linear outside the in-app chat:

  • Daily: Follow the same sections as Skill A (no triage block). Use tools per linear-api-setup.md — e.g. list_my_issues, list_issues, list_cycles, get_project / list_projects, get_issue / list_comments as needed. Apply default 5 business day / 7 calendar day windows unless the user provides overrides in the request.
  • Triage: Same sections as Skill B, with filters that match your triage view (team, state, unassigned).

Ground every claim in tool output. Do not fabricate assignees, dates, or done work. Do not bulk-update issues during a briefing unless the user asks. End with the same (A) / (B) / (C) offer for Daily; Triage can end with a single follow-up offer to draft a triage comment for one issue, if useful.


Linear’s docs include “My weekly focus areas” (prioritize by blockers, deadlines, high-priority projects). The Daily briefing skill here is a denser, daily variant with explicit stale or risk and next-action gates. See Linear Agent — Skills.


Appendix: Example output (redacted) — Daily briefing

Illustrates shape only; identifiers are fake.

## TL;DR
- PLAT-204 (review due tomorrow) is blocking the release label discussion.
- OPS-088 needs a one-line “waiting on vendor” or it will look stalled for 8 days.
 
## My work
- **PLAT-204** — Add retry to webhook handler — In review — **today:** reviewer asked for a test; unblock before EOD.
- **Stale — PLAT-198** — Docs: API errors — In progress — no comment in 6 business days → *Next step: post "still targeting this week; blocked on X?"*
- **Due / risk****OPS-088** due in 5 days (vendor); **PLAT-204** implicit review deadline next business day.
 
## Team / project pulse
- **Platform** — Momentum on PLAT-2xx; risk: two issues blocked on external review (PLAT-198, PLAT-204) — cite in standup.
 
## Blockers & asks
- **Me:** finish PLAT-204 review response.
- **Someone else:** vendor timeline for OPS-088 — nudge in thread linked from issue.
 
## Next 3 actions
1. Comment on PLAT-198 (staleness + ETA).
2. Address PLAT-204 review comment + push.
3. If OPS-088 is still unknown, add a dated note and @mention owner for vendor.
 
Follow-up: (A) standup blurb, (B) suggested one-liners, or (C) stop — which do you want?