Linear issues snapshot with filter-first options (status, assignee, team, project, priority, due window, label). Bars groups by group_by (default priority). Calendar highlights due dates; list shapes link each row to the Linear issue.
Kind Safety Shapes cached Safe linked_text_block, text, text_block, markdown_text_block, entries, bars, calendar, badge, timeline
Option Type Required Default Description tokenstring no — Linear personal API key (lin_api_*). Falls back to LINEAR_TOKEN env. filter_status"open" | "unstarted" | "started" | "completed" | "canceled" | "triage" | "backlog" no "open" Workflow state filter. open excludes completed and canceled. filter_assignee"me" | "unassigned" | email | "any" no "me" Assignee scope. filter_teamstring no — Team key (e.g. "ENG"). filter_projectstring no — Project name match. filter_priority"urgent" | "high" | "medium" | "low" | "none" no — Priority filter. filter_due"overdue" | "today" | "this_week" | "no_due" | "any" no "any" Due-date window. filter_labelstring no — Label name match. group_by"priority" | "status" | "team" | "assignee" | "project" no "priority" Bars grouping. Ignored by other shapes. limitinteger (1..=100) no 10 Max rows for list-shaped renderers.
Shape Renderers linked_text_blocklist_linkstextanimated_boot , animated_figlet_morph , animated_postfx , animated_scanlines , animated_splitflap , animated_typewriter , animated_wave , text_ascii , text_plaintext_blockanimated_boot , animated_postfx , animated_scanlines , animated_splitflap , animated_wave , list_plainmarkdown_text_blocktext_markdownentriesanimated_boot , animated_postfx , animated_scanlines , animated_splitflap , animated_wave , grid_tablebarsanimated_boot , animated_postfx , animated_scanlines , animated_splitflap , animated_wave , chart_bar , chart_pie , list_rankingcalendaranimated_boot , animated_postfx , animated_scanlines , animated_splitflap , animated_wave , grid_calendarbadgeanimated_boot , animated_postfx , animated_scanlines , animated_splitflap , animated_wave , status_badgetimelineanimated_boot , animated_postfx , animated_scanlines , animated_splitflap , animated_wave , list_timeline
E N G - 1 2 3 F i x l o g i n f l o w [ I n P r o g r e s s ] · t
E N G - 1 1 8 P o l i s h d a s h b o a r d l a y o u t [ T o d o ] ·
fetcher = " linear_issues "
█ ▀ █ ▀
▗ ▛ ▝ █ ▟ ▀ ▀ ▟ ▀ ▀ █ █ ▟ ▀ ▙ ▟ ▀ ▀
█ █ ▝ ▀ ▙ ▝ ▀ ▙ █ █ █ ▀ ▀ ▝ ▀ ▙
▀ ▝ ▀ ▘ ▀ ▀ ▘ ▀ ▀ ▘ ▝ ▀ ▝ ▘ ▝ ▀ ▘ ▀ ▀ ▘
fetcher = " linear_issues "
7 i s s u e s
fetcher = " linear_issues "
E N G - 1 2 3 F i x l o g i n f l o w [ I n P r o g r e s s ] · t
E N G - 1 1 8 P o l i s h d a s h b o a r d l a y o u t [ T o d o ] ·
fetcher = " linear_issues "
- E N G - 1 2 3 F i x l o g i n f l o w [ I n P r o g r e s s ] ·
t o d a y · P 1
- E N G - 1 1 8 P o l i s h d a s h b o a r d l a y o u t [ T o d o ]
· P 3
fetcher = " linear_issues "
E N G - 1 2 3 F i x l o g i n f l o w
E N G - 1 1 8 P o l i s h d a s h b o a r d l a y o u t
fetcher = " linear_issues "
█ █ █
█ █ █
█ █ █ ▅ ▅ ▅
█ █ █ █ █ █
▂ ▂ ▂ █ █ █ █ █ █ ▂ ▂ ▂
█ █ █ █ █ █ █ █ █ █ █ █
█ 1 █ █ 3 █ █ 2 █ █ 1 █
U r g H i g M e d L o w
fetcher = " linear_issues "
● ■ U r g e n t 1 4 . 3 %
● ● ● ● ● ● ● ● ● ● ●
● ● ● ● ● ● ● ● ● ● ● ● ● ■ H i g h 4 2 . 9 %
● ● ● ● ● ● ● ● ● ● ● ● ● ● ●
● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ■ M e d i u m 2 8 . 6 %
● ● ● ● ● ● ● ● ● ● ● ● ● ● ●
● ● ● ● ● ● ● ● ● ● ● ● ● ■ L o w 1 4 . 3 %
● ● ● ● ● ● ● ● ● ● ●
●
fetcher = " linear_issues "
1 . U r g e n t 1
2 . H i g h 3
3 . M e d i u m 2
4 . L o w 1
fetcher = " linear_issues "
A p r i l 2 0 2 6
S u M o T u W e T h F r S a
1 2 3 4
5 6 7 8 9 1 0 1 1
1 2 1 3 1 4 1 5 1 6 1 7 1 8
1 9 2 0 2 1 2 2 2 3 2 4 2 5
2 6 2 7 2 8 2 9 3 0
fetcher = " linear_issues "
● l i n e a r 7
fetcher = " linear_issues "
2 0 2 5 - 0 4 - 2 9 │ E N G - 1 2 3 F i x l o g i n f l o w
│ I n P r o g r e s s · P 1
2 0 2 5 - 0 4 - 2 8 │ E N G - 1 1 8 P o l i s h d a s h b o a r d l a y o u t
│ T o d o · P 3
fetcher = " linear_issues "