1[
2 {
3 "name": "account_indicator",
4 "title": "Account Indicator",
5 "description": "Shows which account received the email you're currently viewing.",
6 "file": "account_indicator.lua"
7 },
8 {
9 "name": "ai_rewrite",
10 "title": "AI Rewrite",
11 "description": "Rewrites the email body using an AI model. Press ctrl+r in the composer to open the prompt overlay. Works with any OpenAI-compatible API.",
12 "file": "ai_rewrite.lua"
13 },
14 {
15 "name": "attachment_reminder",
16 "title": "Attachment Reminder",
17 "description": "Warns if your email body mentions an attachment but you might have forgotten to attach it.",
18 "file": "attachment_reminder.lua"
19 },
20 {
21 "name": "auto_bcc",
22 "title": "Auto BCC",
23 "description": "Automatically adds a BCC address to every email you compose.",
24 "file": "auto_bcc.lua"
25 },
26 {
27 "name": "char_counter",
28 "title": "Char Counter",
29 "description": "Shows a live character count in the composer help bar.",
30 "file": "char_counter.lua"
31 },
32 {
33 "name": "domain_filter",
34 "title": "Domain Filter",
35 "description": "Highlights emails from specific domains with a notification.",
36 "file": "domain_filter.lua"
37 },
38 {
39 "name": "email_age",
40 "title": "Email Age",
41 "description": "Shows the date of the email you're viewing in the status bar.",
42 "file": "email_age.lua"
43 },
44 {
45 "name": "empty_body_guard",
46 "title": "Empty Body Guard",
47 "description": "Warns before sending an email with an empty body.",
48 "file": "empty_body_guard.lua"
49 },
50 {
51 "name": "link_summary",
52 "title": "Link Summary",
53 "description": "Parses the raw body, extracts every URL, and prepends a numbered link summary to the displayed email. Demo of full body manipulation via the email_body_render hook.",
54 "file": "link_summary.lua"
55 },
56 {
57 "name": "github_highlighter",
58 "title": "GitHub Highlighter",
59 "description": "Highlights every \"GitHub\" mention in displayed email bodies with bold purple text. Demo of the email_body_render hook.",
60 "file": "github_highlighter.lua"
61 },
62 {
63 "name": "folder_announcer",
64 "title": "Folder Announcer",
65 "description": "Shows a brief notification when you switch folders.",
66 "file": "folder_announcer.lua"
67 },
68 {
69 "name": "folder_favorites",
70 "title": "Folder Favorites",
71 "description": "Tracks your most visited folders and logs the top 3 on shutdown.",
72 "file": "folder_favorites.lua"
73 },
74 {
75 "name": "greeting",
76 "title": "Greeting",
77 "description": "Shows a random motivational greeting on startup.",
78 "file": "greeting.lua"
79 },
80 {
81 "name": "hello",
82 "title": "Hello",
83 "description": "A minimal example plugin that logs lifecycle events.",
84 "file": "hello.lua"
85 },
86 {
87 "name": "inbox_activity",
88 "title": "Inbox Activity",
89 "description": "Shows a live activity indicator in the inbox status bar with received, read, and sent counts.",
90 "file": "inbox_activity.lua"
91 },
92 {
93 "name": "keyword_highlighter",
94 "title": "Keyword Highlighter",
95 "description": "Notifies you when incoming emails contain specific keywords.",
96 "file": "keyword_highlighter.lua"
97 },
98 {
99 "name": "notify_github",
100 "title": "Notify GitHub",
101 "description": "Shows a notification when emails from GitHub arrive.",
102 "file": "notify_github.lua"
103 },
104 {
105 "name": "quick_label",
106 "title": "Quick Label",
107 "description": "Demonstrates custom keyboard shortcuts with matcha.bind_key(). Press ctrl+i in the inbox to show the selected email's subject.",
108 "file": "quick_label.lua"
109 },
110 {
111 "name": "reading_time",
112 "title": "Reading Time",
113 "description": "Estimates reading time based on word count while composing.",
114 "file": "reading_time.lua"
115 },
116 {
117 "name": "prevent_auto_read",
118 "title": "Prevent Auto Read",
119 "description": "Prevents emails from being automatically marked as read when opened. Toggle on/off in Settings → Plugins.",
120 "file": "prevent_auto_read.lua"
121 },
122 {
123 "name": "read_tracker",
124 "title": "Read Tracker",
125 "description": "Displays a running count of emails you've read this session.",
126 "file": "read_tracker.lua"
127 },
128 {
129 "name": "toggle_read",
130 "title": "Toggle Read",
131 "description": "Press a configurable key (default: u) in the inbox or email view to toggle read/unread on the selected email.",
132 "file": "toggle_read.lua"
133 },
134 {
135 "name": "recipient_counter",
136 "title": "Recipient Counter",
137 "description": "Shows the number of recipients in the composer status bar.",
138 "file": "recipient_counter.lua"
139 },
140 {
141 "name": "reply_all_warn",
142 "title": "Reply All Warn",
143 "description": "Warns when sending to many recipients (possible accidental reply-all).",
144 "file": "reply_all_warn.lua"
145 },
146 {
147 "name": "self_email_warn",
148 "title": "Self Email Warn",
149 "description": "Notifies you when you receive an email you sent to yourself.",
150 "file": "self_email_warn.lua"
151 },
152 {
153 "name": "sender_frequency",
154 "title": "Sender Frequency",
155 "description": "Tracks how many emails each sender sends you and shows repeat senders.",
156 "file": "sender_frequency.lua"
157 },
158 {
159 "name": "send_logger",
160 "title": "Send Logger",
161 "description": "Logs every email you send for personal record-keeping.",
162 "file": "send_logger.lua"
163 },
164 {
165 "name": "session_stats",
166 "title": "Session Stats",
167 "description": "Tracks emails received, read, and sent during your session.",
168 "file": "session_stats.lua"
169 },
170 {
171 "name": "spam_detector",
172 "title": "Spam Detector",
173 "description": "Flags incoming emails that match common spam patterns.",
174 "file": "spam_detector.lua"
175 },
176 {
177 "name": "subject_length_warn",
178 "title": "Subject Length Warn",
179 "description": "Warns when your subject line is getting too long.",
180 "file": "subject_length_warn.lua"
181 },
182 {
183 "name": "subject_reminder",
184 "title": "Subject Reminder",
185 "description": "Warns you if you're composing an email without a subject line.",
186 "file": "subject_reminder.lua"
187 },
188 {
189 "name": "thread_tracker",
190 "title": "Thread Tracker",
191 "description": "Tracks how many replies and forwards you receive per session.",
192 "file": "thread_tracker.lua"
193 },
194 {
195 "name": "ultimate_plugin",
196 "title": "Ultimate Plugin",
197 "description": "A comprehensive demo plugin showcasing all available Matcha plugin APIs.",
198 "file": "ultimate_plugin.lua"
199 },
200 {
201 "name": "unread_counter",
202 "title": "Unread Counter",
203 "description": "Displays unread count in the inbox title bar.",
204 "file": "unread_counter.lua"
205 },
206 {
207 "name": "vip_alerts",
208 "title": "VIP Alerts",
209 "description": "Shows prominent notifications for emails from important senders.",
210 "file": "vip_alerts.lua"
211 },
212 {
213 "name": "weather_status",
214 "title": "Weather Status",
215 "description": "Fetches current weather and displays it in the inbox status bar.",
216 "file": "weather_status.lua"
217 },
218 {
219 "name": "webhook_notify",
220 "title": "Webhook Notify",
221 "description": "Posts a JSON payload to a webhook URL when an email is received.",
222 "file": "webhook_notify.lua"
223 },
224 {
225 "name": "word_counter",
226 "title": "Word Counter",
227 "description": "Shows a live word count in the composer help bar.",
228 "file": "word_counter.lua"
229 }
230]