-
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathgithub-assistant.txt
More file actions
174 lines (136 loc) · 4.79 KB
/
github-assistant.txt
File metadata and controls
174 lines (136 loc) · 4.79 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
GitHub Assistant
Better integrate NeoMutt with GitHub Issues
Decode coded "cc:" addresses, etc
read GH "X-*:" headers
Menu:
open issue / comment
subsubscribe from issue (mute)
view all issues
mark as read (beacon) on sync-mailbox
beacon
mshow -A text/html .github/cur/EMAIL | grep --color=never -o 'https://[^"]*beacon[^"]*'
curl -s -o /dev/null https://github.com/notifications/beacon/XXX.gif
special treatment of
opened, closed, re-opened issue
add / remove label (not by email)
menu links for
@mentions
#NUM cross references
search mailbox for a match
lookup @mention in aliases
menu mailto:
How can I access the GH API from within NeoMutt?
close issue, label issue
=> GH module + JSON
=> Lua + JSON
Folded issue thread, fields:
subject
num replies
reactions (count)
labels (coloured)
or dots (coloured)
use tag-transforms
turn gh labels into real labels?
assignees
=> ~5/6 %L expandos
In docs for GTA, get user to enable
notifications of own replies
Can't get label info / reactions from email
add/del label from thread (index)
markup subject with magic ANSI URL link
#123 -> http://github.com/neomutt/neomutt/issue/123
requires painting magic in the Menu
get repo/issue metadata -> db (external)
=> done by cron (daily?/hourly?)
=> or done by neomutt manually
e.g. label colours
organisation member info
might need to login
Menu:
assign yourself to issue
assign someone else
list reactions - per comment / per issue
abbreviate labels to first word?
abbreviate labels to coloured dot?
insert fake entries into index for
add / del label
assign user
add reaction
Use GitHub Assistant as a model for:
Debian BTS Assistant
Trac Assistant
use GitHub API to create our own "review" marks on commits
auto update labels if a new one is encountered
option to turn :+1: into emoji character
integrate approvals (email notifications)
create fake headers
link to post
link for muting
mock up using message_filter?
labels, assignees, etc
fake header links for mute, mark-as-read
enable functions:
mark-as-read
mute
etc
manage github recipient hints
"you were mentioned" -> flag 'M' or '@' !
"you subscribed to" -> flag 'S' or '✓' !
icon (%L1) for PR vs Issue vs Discussion
move #123 number into %L2 (strip from subject)
only display these in *thread-root*
or if it's the first email visible in the thread
=> observing Menu navigation changes!
mark local email as *read* if item has been read on GitHub. HOW?
14063 Subscribed <subscribed@noreply.github.com>
10739 Your activity <your_activity@noreply.github.com>
3916 Push <push@noreply.github.com>
3548 Mention <mention@noreply.github.com>
3026 Review requested <review_requested@noreply.github.com>
2814 Comment <comment@noreply.github.com>
1078 Assign <assign@noreply.github.com>
1053 Ci activity <ci_activity@noreply.github.com>
777 Author <author@noreply.github.com>
665 State change <state_change@noreply.github.com>
404 Team mention <team_mention@noreply.github.com>
302 Manual <manual@noreply.github.com>
14093 X-GitHub-Reason: subscribed
10739 X-GitHub-Reason: your_activity
3916 X-GitHub-Reason: push
3567 X-GitHub-Reason: mention
3026 X-GitHub-Reason: review_requested
2819 X-GitHub-Reason: comment
1097 X-GitHub-Reason: assign
395 X-GitHub-Reason: ci_activity
783 X-GitHub-Reason: author
668 X-GitHub-Reason: state_change
404 X-GitHub-Reason: team_mention
303 X-GitHub-Reason: manual
121 X-GitHub-Assignees:
31 X-GitHub-Assignees: flatcap; Copilot
17 X-GitHub-Assignees: gahr
15 X-GitHub-Assignees: roccoblues
14 X-GitHub-Assignees: flatcap
8 X-GitHub-Assignees: roccoblues; Copilot
4 X-GitHub-Assignees: Copilot
From: Real Name and username
From: Scott Kostyshak <notifications@github.com>
X-GitHub-Sender: scottkosty
Labels: When?
X-GitHub-Labels: topic:build-process; topic:testing; type:bug
Status:
X-GitHub-IssueState: closed
X-GitHub-IssueState: open
X-GitHub-PullRequestStatus: closed
X-GitHub-PullRequestStatus: merged
X-GitHub-PullRequestStatus: open
List-*: / Reply-To
List-Archive: https://github.com/ORG/REPO
List-ID: ORG/REPO <REPO.ORG.github.com>
Different RANDOM ID in the <https://...>
List-Post: <mailto:reply+RANDOM@reply.github.com>
List-Unsubscribe: <mailto:unsub+RANDOM@reply.github.com>, <https://github.com/notifications/unsubscribe/RANDOM>
Same random field (84 bytes), in:
Reply-To: neomutt/neomutt <reply+000000000000000000000000000000000000000000000000000000000000000000000000000000000000@reply.github.com>
List-Post: <mailto:reply+000000000000000000000000000000000000000000000000000000000000000000000000000000000000@reply.github.com>
List-Unsubscribe: <mailto:unsub+000000000000000000000000000000000000000000000000000000000000000000000000000000000000@reply.github.com>