sidebud 0.1.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +65 -0
- package/dist/main.js +9361 -4209
- package/package.json +3 -2
- package/skills/widget-packs/SKILL.md +199 -0
- package/src/manage/guide/app-arrange.png +0 -0
- package/src/manage/guide/app-disk.png +0 -0
- package/src/manage/guide/app-open.png +0 -0
- package/src/manage/guide/app-thread.png +0 -0
- package/src/manage/guide/app-tiles.png +0 -0
- package/src/manage/guide/draft.png +0 -0
- package/src/manage/guide/layouts.png +0 -0
- package/src/manage/guide/library.png +0 -0
- package/src/manage/guide/pack-page.png +0 -0
- package/src/manage/guide/permissions.png +0 -0
- package/src/manage/guide/phone-home.png +0 -0
- package/src/manage/guide/phone-open.png +0 -0
- package/src/manage/guide/widget-voice.png +0 -0
- package/src/manage/guide.js +155 -0
- package/src/manage/guide.md +139 -0
- package/src/manage/index.html +14 -0
- package/src/manage/manage.css +782 -0
- package/src/manage/manage.js +155 -39
- package/src/manage/packs.js +347 -0
- package/src/manage/settings.js +1 -1
- package/src/manage/setup.js +83 -23
- package/packs/BRAND_ASSETS.md +0 -8
- package/packs/calendar/logo.png +0 -0
- package/packs/calendar/pack.json +0 -127
- package/packs/discord/pack.json +0 -107
- package/packs/filesystem/pack.json +0 -84
- package/packs/github/pack.json +0 -127
- package/packs/gmail/logo.png +0 -0
- package/packs/gmail/pack.json +0 -274
- package/packs/obsidian/pack.json +0 -88
- package/packs/t3-agents/logo.png +0 -0
- package/packs/t3-agents/pack.json +0 -492
- package/packs/telegram/pack.json +0 -137
- package/packs/trello/pack.json +0 -102
- package/packs/whatsapp/pack.json +0 -118
package/packs/github/pack.json
DELETED
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "../../../../docs/schemas/pack-v2.schema.json",
|
|
3
|
-
"schemaVersion": 2,
|
|
4
|
-
"id": "app.sidebud.github",
|
|
5
|
-
"name": "GitHub",
|
|
6
|
-
"description": "Read issues, pull requests, and files in one selected repository through GitHub\u2019s official hosted MCP server.",
|
|
7
|
-
"version": "1.0.0",
|
|
8
|
-
"author": {
|
|
9
|
-
"name": "Sidebud"
|
|
10
|
-
},
|
|
11
|
-
"license": "MIT",
|
|
12
|
-
"logo": {
|
|
13
|
-
"kind": "emoji",
|
|
14
|
-
"value": "\ud83d\udc19"
|
|
15
|
-
},
|
|
16
|
-
"controls": [
|
|
17
|
-
{
|
|
18
|
-
"id": "summarize",
|
|
19
|
-
"kind": "prompt",
|
|
20
|
-
"label": "Summarize",
|
|
21
|
-
"prompt": "Summarize the information available through my GitHub integration.",
|
|
22
|
-
"default": true
|
|
23
|
-
}
|
|
24
|
-
],
|
|
25
|
-
"mcp": {
|
|
26
|
-
"transport": "http",
|
|
27
|
-
"url": "https://api.githubcopilot.com/mcp/readonly",
|
|
28
|
-
"headers": {
|
|
29
|
-
"Authorization": "Bearer {{secret.GITHUB_TOKEN}}"
|
|
30
|
-
}
|
|
31
|
-
},
|
|
32
|
-
"secrets": [
|
|
33
|
-
{
|
|
34
|
-
"name": "GITHUB_TOKEN",
|
|
35
|
-
"description": "Fine-grained token restricted to the selected repository, with read access to contents, issues, and pull requests."
|
|
36
|
-
}
|
|
37
|
-
],
|
|
38
|
-
"settings": [
|
|
39
|
-
{
|
|
40
|
-
"id": "owner",
|
|
41
|
-
"label": "Repository owner",
|
|
42
|
-
"type": "text",
|
|
43
|
-
"required": true
|
|
44
|
-
},
|
|
45
|
-
{
|
|
46
|
-
"id": "repo",
|
|
47
|
-
"label": "Repository name",
|
|
48
|
-
"type": "text",
|
|
49
|
-
"required": true
|
|
50
|
-
}
|
|
51
|
-
],
|
|
52
|
-
"permissions": {
|
|
53
|
-
"network": [
|
|
54
|
-
"api.githubcopilot.com"
|
|
55
|
-
],
|
|
56
|
-
"tools": [
|
|
57
|
-
{
|
|
58
|
-
"name": "list_issues",
|
|
59
|
-
"access": "read",
|
|
60
|
-
"argumentSettings": {
|
|
61
|
-
"owner": "owner",
|
|
62
|
-
"repo": "repo"
|
|
63
|
-
}
|
|
64
|
-
},
|
|
65
|
-
{
|
|
66
|
-
"name": "list_pull_requests",
|
|
67
|
-
"access": "read",
|
|
68
|
-
"argumentSettings": {
|
|
69
|
-
"owner": "owner",
|
|
70
|
-
"repo": "repo"
|
|
71
|
-
}
|
|
72
|
-
},
|
|
73
|
-
{
|
|
74
|
-
"name": "issue_read",
|
|
75
|
-
"access": "read",
|
|
76
|
-
"argumentSettings": {
|
|
77
|
-
"owner": "owner",
|
|
78
|
-
"repo": "repo"
|
|
79
|
-
}
|
|
80
|
-
},
|
|
81
|
-
{
|
|
82
|
-
"name": "pull_request_read",
|
|
83
|
-
"access": "read",
|
|
84
|
-
"argumentSettings": {
|
|
85
|
-
"owner": "owner",
|
|
86
|
-
"repo": "repo"
|
|
87
|
-
}
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
"name": "get_file_contents",
|
|
91
|
-
"access": "read",
|
|
92
|
-
"argumentSettings": {
|
|
93
|
-
"owner": "owner",
|
|
94
|
-
"repo": "repo"
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
]
|
|
98
|
-
},
|
|
99
|
-
"data": [
|
|
100
|
-
{
|
|
101
|
-
"id": "issues",
|
|
102
|
-
"tool": "list_issues",
|
|
103
|
-
"arguments": {
|
|
104
|
-
"owner": "{{setting.owner}}",
|
|
105
|
-
"repo": "{{setting.repo}}",
|
|
106
|
-
"state": "OPEN",
|
|
107
|
-
"perPage": 8
|
|
108
|
-
},
|
|
109
|
-
"refreshSeconds": 300
|
|
110
|
-
}
|
|
111
|
-
],
|
|
112
|
-
"glance": {
|
|
113
|
-
"line": "{{setting.owner}}/{{setting.repo}}"
|
|
114
|
-
},
|
|
115
|
-
"blocks": [
|
|
116
|
-
{
|
|
117
|
-
"type": "list",
|
|
118
|
-
"items": "{{issues/issues}}",
|
|
119
|
-
"item": {
|
|
120
|
-
"title": "{{item/title}}",
|
|
121
|
-
"subtitle": "#{{item/number}}"
|
|
122
|
-
},
|
|
123
|
-
"limit": 8,
|
|
124
|
-
"emptyText": "No open issues"
|
|
125
|
-
}
|
|
126
|
-
]
|
|
127
|
-
}
|
package/packs/gmail/logo.png
DELETED
|
Binary file
|
package/packs/gmail/pack.json
DELETED
|
@@ -1,274 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"schemaVersion": 1,
|
|
3
|
-
"id": "dev.remotevoiceagent.gmail",
|
|
4
|
-
"name": "Gmail",
|
|
5
|
-
"description": "Unread and VIP mail, with inbox clean-up controls. Google API access and tokens stay on your companion computer.",
|
|
6
|
-
"version": "2.4.1",
|
|
7
|
-
"author": {
|
|
8
|
-
"name": "Sidebud"
|
|
9
|
-
},
|
|
10
|
-
"license": "MIT",
|
|
11
|
-
"logo": {
|
|
12
|
-
"kind": "file",
|
|
13
|
-
"path": "logo.png"
|
|
14
|
-
},
|
|
15
|
-
"tile": {
|
|
16
|
-
"size": "small"
|
|
17
|
-
},
|
|
18
|
-
"refreshSeconds": 60,
|
|
19
|
-
"mcp": {
|
|
20
|
-
"transport": "builtin",
|
|
21
|
-
"service": "gmail"
|
|
22
|
-
},
|
|
23
|
-
"auth": {
|
|
24
|
-
"type": "oauth2",
|
|
25
|
-
"authorizationUrl": "https://accounts.google.com/o/oauth2/v2/auth",
|
|
26
|
-
"tokenUrl": "https://oauth2.googleapis.com/token",
|
|
27
|
-
"scopes": [
|
|
28
|
-
"https://www.googleapis.com/auth/gmail.modify"
|
|
29
|
-
],
|
|
30
|
-
"clientIdSecret": "GOOGLE_OAUTH_CLIENT_ID",
|
|
31
|
-
"clientSecretSecret": "GOOGLE_OAUTH_CLIENT_SECRET",
|
|
32
|
-
"authorizationParams": {
|
|
33
|
-
"access_type": "offline",
|
|
34
|
-
"prompt": "consent"
|
|
35
|
-
}
|
|
36
|
-
},
|
|
37
|
-
"secrets": [
|
|
38
|
-
{
|
|
39
|
-
"name": "GOOGLE_OAUTH_CLIENT_ID",
|
|
40
|
-
"description": "Desktop OAuth client ID from your Google Cloud project with Gmail API enabled"
|
|
41
|
-
},
|
|
42
|
-
{
|
|
43
|
-
"name": "GOOGLE_OAUTH_CLIENT_SECRET",
|
|
44
|
-
"description": "That OAuth client's secret"
|
|
45
|
-
}
|
|
46
|
-
],
|
|
47
|
-
"permissions": {
|
|
48
|
-
"tools": [
|
|
49
|
-
{
|
|
50
|
-
"name": "search_threads",
|
|
51
|
-
"access": "read",
|
|
52
|
-
"description": "Search threads with Gmail query syntax"
|
|
53
|
-
},
|
|
54
|
-
{
|
|
55
|
-
"name": "get_thread",
|
|
56
|
-
"access": "read",
|
|
57
|
-
"description": "Read one thread"
|
|
58
|
-
},
|
|
59
|
-
{
|
|
60
|
-
"name": "list_labels",
|
|
61
|
-
"access": "read",
|
|
62
|
-
"description": "List labels"
|
|
63
|
-
},
|
|
64
|
-
{
|
|
65
|
-
"name": "unlabel_thread",
|
|
66
|
-
"access": "write",
|
|
67
|
-
"description": "Remove labels from a thread (archive = remove INBOX, mark read = remove UNREAD)"
|
|
68
|
-
}
|
|
69
|
-
],
|
|
70
|
-
"network": [
|
|
71
|
-
"gmail.googleapis.com",
|
|
72
|
-
"accounts.google.com",
|
|
73
|
-
"oauth2.googleapis.com"
|
|
74
|
-
]
|
|
75
|
-
},
|
|
76
|
-
"settings": [
|
|
77
|
-
{
|
|
78
|
-
"id": "scope",
|
|
79
|
-
"label": "Mailbox",
|
|
80
|
-
"type": "select",
|
|
81
|
-
"default": "in:inbox",
|
|
82
|
-
"options": [
|
|
83
|
-
{
|
|
84
|
-
"id": "in:inbox",
|
|
85
|
-
"label": "Inbox"
|
|
86
|
-
},
|
|
87
|
-
{
|
|
88
|
-
"id": "label:important",
|
|
89
|
-
"label": "Important"
|
|
90
|
-
},
|
|
91
|
-
{
|
|
92
|
-
"id": "in:anywhere",
|
|
93
|
-
"label": "All mail"
|
|
94
|
-
}
|
|
95
|
-
]
|
|
96
|
-
},
|
|
97
|
-
{
|
|
98
|
-
"id": "vipQuery",
|
|
99
|
-
"label": "VIP senders",
|
|
100
|
-
"type": "text",
|
|
101
|
-
"default": "is:starred",
|
|
102
|
-
"description": "A Gmail search for VIP mail, e.g. from:(boss@example.com OR partner@example.com)"
|
|
103
|
-
}
|
|
104
|
-
],
|
|
105
|
-
"data": [
|
|
106
|
-
{
|
|
107
|
-
"id": "unread",
|
|
108
|
-
"tool": "search_threads",
|
|
109
|
-
"arguments": {
|
|
110
|
-
"query": "is:unread {{setting.scope}}",
|
|
111
|
-
"pageSize": 50,
|
|
112
|
-
"view": "THREAD_VIEW_IDS"
|
|
113
|
-
},
|
|
114
|
-
"refreshSeconds": 60
|
|
115
|
-
},
|
|
116
|
-
{
|
|
117
|
-
"id": "recent",
|
|
118
|
-
"tool": "search_threads",
|
|
119
|
-
"arguments": {
|
|
120
|
-
"query": "is:unread {{setting.scope}}",
|
|
121
|
-
"pageSize": 8,
|
|
122
|
-
"view": "THREAD_VIEW_MINIMAL"
|
|
123
|
-
},
|
|
124
|
-
"refreshSeconds": 60
|
|
125
|
-
},
|
|
126
|
-
{
|
|
127
|
-
"id": "vip",
|
|
128
|
-
"tool": "search_threads",
|
|
129
|
-
"arguments": {
|
|
130
|
-
"query": "is:unread {{setting.vipQuery}}",
|
|
131
|
-
"pageSize": 20,
|
|
132
|
-
"view": "THREAD_VIEW_MINIMAL"
|
|
133
|
-
},
|
|
134
|
-
"refreshSeconds": 60
|
|
135
|
-
},
|
|
136
|
-
{
|
|
137
|
-
"id": "newsletters",
|
|
138
|
-
"tool": "search_threads",
|
|
139
|
-
"arguments": {
|
|
140
|
-
"query": "is:unread category:promotions in:inbox",
|
|
141
|
-
"pageSize": 50,
|
|
142
|
-
"view": "THREAD_VIEW_IDS"
|
|
143
|
-
},
|
|
144
|
-
"refreshSeconds": 60
|
|
145
|
-
}
|
|
146
|
-
],
|
|
147
|
-
"glance": {
|
|
148
|
-
"stats": [
|
|
149
|
-
{
|
|
150
|
-
"label": "Unread",
|
|
151
|
-
"value": "{{unread/threads|count}}",
|
|
152
|
-
"tone": "warning"
|
|
153
|
-
},
|
|
154
|
-
{
|
|
155
|
-
"label": "VIP",
|
|
156
|
-
"value": "{{vip/threads|count}}",
|
|
157
|
-
"tone": "info"
|
|
158
|
-
}
|
|
159
|
-
]
|
|
160
|
-
},
|
|
161
|
-
"blocks": [
|
|
162
|
-
{
|
|
163
|
-
"type": "stats",
|
|
164
|
-
"items": [
|
|
165
|
-
{
|
|
166
|
-
"label": "Unread",
|
|
167
|
-
"value": "{{unread/threads|count}}",
|
|
168
|
-
"tone": "warning"
|
|
169
|
-
},
|
|
170
|
-
{
|
|
171
|
-
"label": "VIP unread",
|
|
172
|
-
"value": "{{vip/threads|count}}",
|
|
173
|
-
"tone": "info"
|
|
174
|
-
},
|
|
175
|
-
{
|
|
176
|
-
"label": "Newsletters",
|
|
177
|
-
"value": "{{newsletters/threads|count}}"
|
|
178
|
-
}
|
|
179
|
-
]
|
|
180
|
-
},
|
|
181
|
-
{
|
|
182
|
-
"type": "list",
|
|
183
|
-
"items": "{{vip/threads}}",
|
|
184
|
-
"item": {
|
|
185
|
-
"title": "{{item/messages/0/subject}}",
|
|
186
|
-
"subtitle": "{{item/messages/0/sender}}",
|
|
187
|
-
"status": "VIP",
|
|
188
|
-
"statusTone": "info"
|
|
189
|
-
},
|
|
190
|
-
"limit": 5,
|
|
191
|
-
"emptyText": "No unread VIP mail."
|
|
192
|
-
},
|
|
193
|
-
{
|
|
194
|
-
"type": "list",
|
|
195
|
-
"items": "{{recent/threads}}",
|
|
196
|
-
"item": {
|
|
197
|
-
"title": "{{item/messages/0/subject}}",
|
|
198
|
-
"subtitle": "{{item/messages/0/sender}}"
|
|
199
|
-
},
|
|
200
|
-
"limit": 8,
|
|
201
|
-
"emptyText": "Inbox zero."
|
|
202
|
-
}
|
|
203
|
-
],
|
|
204
|
-
"controls": [
|
|
205
|
-
{
|
|
206
|
-
"id": "clean",
|
|
207
|
-
"kind": "prompt",
|
|
208
|
-
"label": "Clean up my inbox",
|
|
209
|
-
"prompt": "Clean up my inbox: archive the newsletters and tell me what needs a reply.",
|
|
210
|
-
"default": true
|
|
211
|
-
},
|
|
212
|
-
{
|
|
213
|
-
"id": "summarize",
|
|
214
|
-
"kind": "prompt",
|
|
215
|
-
"label": "Summarize unread",
|
|
216
|
-
"prompt": "Summarize my unread email.",
|
|
217
|
-
"default": true
|
|
218
|
-
},
|
|
219
|
-
{
|
|
220
|
-
"id": "vip",
|
|
221
|
-
"kind": "prompt",
|
|
222
|
-
"label": "Unread from VIPs",
|
|
223
|
-
"prompt": "Read me my unread emails from VIPs.",
|
|
224
|
-
"default": false
|
|
225
|
-
},
|
|
226
|
-
{
|
|
227
|
-
"id": "archive-newsletters",
|
|
228
|
-
"kind": "tool",
|
|
229
|
-
"label": "Archive newsletters",
|
|
230
|
-
"tool": "unlabel_thread",
|
|
231
|
-
"forEach": "{{newsletters/threads}}",
|
|
232
|
-
"arguments": {
|
|
233
|
-
"threadId": "{{item/id}}",
|
|
234
|
-
"labelIds": [
|
|
235
|
-
"INBOX"
|
|
236
|
-
]
|
|
237
|
-
},
|
|
238
|
-
"effect": "consequential",
|
|
239
|
-
"confirm": "Archive {{newsletters/threads|count}} unread newsletter threads?",
|
|
240
|
-
"default": false
|
|
241
|
-
},
|
|
242
|
-
{
|
|
243
|
-
"id": "mark-all-read",
|
|
244
|
-
"kind": "tool",
|
|
245
|
-
"label": "Mark all read",
|
|
246
|
-
"tool": "unlabel_thread",
|
|
247
|
-
"forEach": "{{unread/threads}}",
|
|
248
|
-
"arguments": {
|
|
249
|
-
"threadId": "{{item/id}}",
|
|
250
|
-
"labelIds": [
|
|
251
|
-
"UNREAD"
|
|
252
|
-
]
|
|
253
|
-
},
|
|
254
|
-
"effect": "consequential",
|
|
255
|
-
"confirm": "Mark {{unread/threads|count}} threads as read?",
|
|
256
|
-
"default": false
|
|
257
|
-
}
|
|
258
|
-
],
|
|
259
|
-
"notify": [
|
|
260
|
-
{
|
|
261
|
-
"id": "vip",
|
|
262
|
-
"category": "mail",
|
|
263
|
-
"items": "{{vip/threads}}",
|
|
264
|
-
"key": "{{item/id}}",
|
|
265
|
-
"rules": [
|
|
266
|
-
{
|
|
267
|
-
"new": true,
|
|
268
|
-
"priority": "update",
|
|
269
|
-
"text": "New mail from {{item/messages/0/sender}}: {{item/messages/0/subject}}"
|
|
270
|
-
}
|
|
271
|
-
]
|
|
272
|
-
}
|
|
273
|
-
]
|
|
274
|
-
}
|
package/packs/obsidian/pack.json
DELETED
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "../../../../docs/schemas/pack-v2.schema.json",
|
|
3
|
-
"schemaVersion": 2,
|
|
4
|
-
"id": "app.sidebud.obsidian",
|
|
5
|
-
"name": "Obsidian",
|
|
6
|
-
"description": "Read and search your open Obsidian vault through MCP Connector by istefox. Obsidian and its plugin must be running.",
|
|
7
|
-
"version": "1.0.1",
|
|
8
|
-
"author": {
|
|
9
|
-
"name": "Sidebud"
|
|
10
|
-
},
|
|
11
|
-
"license": "MIT",
|
|
12
|
-
"logo": {
|
|
13
|
-
"kind": "emoji",
|
|
14
|
-
"value": "📓"
|
|
15
|
-
},
|
|
16
|
-
"controls": [
|
|
17
|
-
{
|
|
18
|
-
"id": "summarize",
|
|
19
|
-
"kind": "prompt",
|
|
20
|
-
"label": "Summarize",
|
|
21
|
-
"prompt": "Summarize the information available through my Obsidian integration.",
|
|
22
|
-
"default": true
|
|
23
|
-
}
|
|
24
|
-
],
|
|
25
|
-
"mcp": {
|
|
26
|
-
"transport": "http",
|
|
27
|
-
"url": "{{setting.endpoint}}",
|
|
28
|
-
"headers": {
|
|
29
|
-
"Authorization": "Bearer {{secret.OBSIDIAN_TOKEN}}"
|
|
30
|
-
}
|
|
31
|
-
},
|
|
32
|
-
"secrets": [
|
|
33
|
-
{
|
|
34
|
-
"name": "OBSIDIAN_TOKEN",
|
|
35
|
-
"description": "A dedicated Sidebud token from MCP Connector → Access control. Allow only the declared read tools."
|
|
36
|
-
}
|
|
37
|
-
],
|
|
38
|
-
"settings": [
|
|
39
|
-
{
|
|
40
|
-
"id": "endpoint",
|
|
41
|
-
"label": "MCP endpoint",
|
|
42
|
-
"type": "text",
|
|
43
|
-
"required": true,
|
|
44
|
-
"format": "http-url",
|
|
45
|
-
"description": "Copy the local HTTP endpoint from MCP Connector settings. No API key in this field."
|
|
46
|
-
}
|
|
47
|
-
],
|
|
48
|
-
"permissions": {
|
|
49
|
-
"tools": [
|
|
50
|
-
{
|
|
51
|
-
"name": "get_recent_files",
|
|
52
|
-
"access": "read"
|
|
53
|
-
},
|
|
54
|
-
{
|
|
55
|
-
"name": "get_vault_file",
|
|
56
|
-
"access": "read"
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
"name": "search_vault_simple",
|
|
60
|
-
"access": "read"
|
|
61
|
-
}
|
|
62
|
-
]
|
|
63
|
-
},
|
|
64
|
-
"data": [
|
|
65
|
-
{
|
|
66
|
-
"id": "recent",
|
|
67
|
-
"tool": "get_recent_files",
|
|
68
|
-
"arguments": {
|
|
69
|
-
"limit": 8
|
|
70
|
-
},
|
|
71
|
-
"refreshSeconds": 120
|
|
72
|
-
}
|
|
73
|
-
],
|
|
74
|
-
"glance": {
|
|
75
|
-
"line": "{{recent/totalFiles|default:0}} notes"
|
|
76
|
-
},
|
|
77
|
-
"blocks": [
|
|
78
|
-
{
|
|
79
|
-
"type": "list",
|
|
80
|
-
"items": "{{recent/files}}",
|
|
81
|
-
"item": {
|
|
82
|
-
"title": "{{item/path}}"
|
|
83
|
-
},
|
|
84
|
-
"limit": 8,
|
|
85
|
-
"emptyText": "No recent notes"
|
|
86
|
-
}
|
|
87
|
-
]
|
|
88
|
-
}
|
package/packs/t3-agents/logo.png
DELETED
|
Binary file
|