sidebud 0.1.0 → 0.2.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 +17 -0
- package/dist/main.js +4725 -3310
- package/package.json +2 -2
- package/skills/widget-packs/SKILL.md +198 -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 +10 -0
- package/src/manage/manage.css +744 -0
- package/src/manage/manage.js +66 -35
- package/src/manage/packs.js +340 -0
- package/src/manage/setup.js +12 -13
- 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/discord/pack.json
DELETED
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "../../../../docs/schemas/pack-v2.schema.json",
|
|
3
|
-
"schemaVersion": 2,
|
|
4
|
-
"id": "dev.remotevoiceagent.discord",
|
|
5
|
-
"name": "Discord",
|
|
6
|
-
"description": "A Discord channel through a bot (barryyip0625/mcp-discord). Bots see only servers they are in and DMs sent to the bot, never your personal DMs. Read-only here.",
|
|
7
|
-
"version": "1.1.0",
|
|
8
|
-
"author": {
|
|
9
|
-
"name": "Sidebud"
|
|
10
|
-
},
|
|
11
|
-
"license": "MIT",
|
|
12
|
-
"logo": {
|
|
13
|
-
"kind": "icon",
|
|
14
|
-
"name": "chat"
|
|
15
|
-
},
|
|
16
|
-
"tile": {
|
|
17
|
-
"size": "small"
|
|
18
|
-
},
|
|
19
|
-
"mcp": {
|
|
20
|
-
"transport": "stdio",
|
|
21
|
-
"command": "npx",
|
|
22
|
-
"args": [
|
|
23
|
-
"-y",
|
|
24
|
-
"mcp-discord@1.5.1"
|
|
25
|
-
],
|
|
26
|
-
"env": {
|
|
27
|
-
"DISCORD_TOKEN": "{{secret.DISCORD_TOKEN}}"
|
|
28
|
-
}
|
|
29
|
-
},
|
|
30
|
-
"secrets": [
|
|
31
|
-
{
|
|
32
|
-
"name": "DISCORD_TOKEN",
|
|
33
|
-
"description": "A bot token from the Discord Developer Portal (never a user token: that breaks Discord's terms)"
|
|
34
|
-
}
|
|
35
|
-
],
|
|
36
|
-
"permissions": {
|
|
37
|
-
"tools": [
|
|
38
|
-
{
|
|
39
|
-
"name": "discord_read_messages",
|
|
40
|
-
"access": "read",
|
|
41
|
-
"description": "Messages in a channel",
|
|
42
|
-
"argumentSettings": {
|
|
43
|
-
"channelId": "channelId"
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
]
|
|
47
|
-
},
|
|
48
|
-
"settings": [
|
|
49
|
-
{
|
|
50
|
-
"id": "channelId",
|
|
51
|
-
"label": "Channel id",
|
|
52
|
-
"type": "text",
|
|
53
|
-
"default": "",
|
|
54
|
-
"description": "The channel (or bot DM channel) to watch; enable Developer Mode in Discord and copy the channel id.",
|
|
55
|
-
"required": true
|
|
56
|
-
}
|
|
57
|
-
],
|
|
58
|
-
"data": [
|
|
59
|
-
{
|
|
60
|
-
"id": "recent",
|
|
61
|
-
"tool": "discord_read_messages",
|
|
62
|
-
"arguments": {
|
|
63
|
-
"channelId": "{{setting.channelId}}",
|
|
64
|
-
"limit": 20
|
|
65
|
-
},
|
|
66
|
-
"extract": "text-json",
|
|
67
|
-
"refreshSeconds": 30
|
|
68
|
-
}
|
|
69
|
-
],
|
|
70
|
-
"glance": {
|
|
71
|
-
"line": "{{recent/messages/0/author/username|default:No messages}}: {{recent/messages/0/content|truncate:50}}"
|
|
72
|
-
},
|
|
73
|
-
"blocks": [
|
|
74
|
-
{
|
|
75
|
-
"type": "list",
|
|
76
|
-
"items": "{{recent/messages}}",
|
|
77
|
-
"item": {
|
|
78
|
-
"title": "{{item/author/username}}",
|
|
79
|
-
"subtitle": "{{item/content|truncate:120}}"
|
|
80
|
-
},
|
|
81
|
-
"limit": 8,
|
|
82
|
-
"emptyText": "No messages"
|
|
83
|
-
}
|
|
84
|
-
],
|
|
85
|
-
"controls": [
|
|
86
|
-
{
|
|
87
|
-
"id": "summarize",
|
|
88
|
-
"kind": "prompt",
|
|
89
|
-
"label": "Summarize the channel",
|
|
90
|
-
"prompt": "Summarize the recent messages in my Discord channel.",
|
|
91
|
-
"default": true
|
|
92
|
-
}
|
|
93
|
-
],
|
|
94
|
-
"alerts": [
|
|
95
|
-
{
|
|
96
|
-
"id": "incoming",
|
|
97
|
-
"items": "{{recent/messages}}",
|
|
98
|
-
"key": "{{item/id}}",
|
|
99
|
-
"sender": [
|
|
100
|
-
"{{item/author/username}}",
|
|
101
|
-
"{{item/author/id}}"
|
|
102
|
-
],
|
|
103
|
-
"text": "{{item/content}}",
|
|
104
|
-
"fromMe": "{{item/author/bot}}"
|
|
105
|
-
}
|
|
106
|
-
]
|
|
107
|
-
}
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "../../../../docs/schemas/pack-v2.schema.json",
|
|
3
|
-
"schemaVersion": 2,
|
|
4
|
-
"id": "app.sidebud.filesystem",
|
|
5
|
-
"name": "Filesystem",
|
|
6
|
-
"description": "Read and search one explicitly selected folder on this computer. This baseline exposes no write tools.",
|
|
7
|
-
"version": "1.0.0",
|
|
8
|
-
"author": {
|
|
9
|
-
"name": "Sidebud"
|
|
10
|
-
},
|
|
11
|
-
"license": "MIT",
|
|
12
|
-
"logo": {
|
|
13
|
-
"kind": "emoji",
|
|
14
|
-
"value": "\ud83d\udcc1"
|
|
15
|
-
},
|
|
16
|
-
"controls": [
|
|
17
|
-
{
|
|
18
|
-
"id": "summarize",
|
|
19
|
-
"kind": "prompt",
|
|
20
|
-
"label": "Summarize",
|
|
21
|
-
"prompt": "Summarize the information available through my Filesystem integration.",
|
|
22
|
-
"default": true
|
|
23
|
-
}
|
|
24
|
-
],
|
|
25
|
-
"mcp": {
|
|
26
|
-
"transport": "stdio",
|
|
27
|
-
"command": "npx",
|
|
28
|
-
"args": [
|
|
29
|
-
"-y",
|
|
30
|
-
"@modelcontextprotocol/server-filesystem@2026.8.31",
|
|
31
|
-
"{{setting.folder}}"
|
|
32
|
-
]
|
|
33
|
-
},
|
|
34
|
-
"settings": [
|
|
35
|
-
{
|
|
36
|
-
"id": "folder",
|
|
37
|
-
"label": "Allowed folder",
|
|
38
|
-
"type": "text",
|
|
39
|
-
"required": true,
|
|
40
|
-
"format": "directory",
|
|
41
|
-
"description": "An existing absolute folder. Select the smallest folder needed; do not select your home or disk root."
|
|
42
|
-
}
|
|
43
|
-
],
|
|
44
|
-
"permissions": {
|
|
45
|
-
"tools": [
|
|
46
|
-
{
|
|
47
|
-
"name": "read_text_file",
|
|
48
|
-
"access": "read"
|
|
49
|
-
},
|
|
50
|
-
{
|
|
51
|
-
"name": "list_directory",
|
|
52
|
-
"access": "read"
|
|
53
|
-
},
|
|
54
|
-
{
|
|
55
|
-
"name": "search_files",
|
|
56
|
-
"access": "read"
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
"name": "get_file_info",
|
|
60
|
-
"access": "read"
|
|
61
|
-
}
|
|
62
|
-
]
|
|
63
|
-
},
|
|
64
|
-
"data": [
|
|
65
|
-
{
|
|
66
|
-
"id": "files",
|
|
67
|
-
"tool": "list_directory",
|
|
68
|
-
"arguments": {
|
|
69
|
-
"path": "{{setting.folder}}"
|
|
70
|
-
},
|
|
71
|
-
"extract": "text",
|
|
72
|
-
"refreshSeconds": 300
|
|
73
|
-
}
|
|
74
|
-
],
|
|
75
|
-
"glance": {
|
|
76
|
-
"line": "{{setting.folder}}"
|
|
77
|
-
},
|
|
78
|
-
"blocks": [
|
|
79
|
-
{
|
|
80
|
-
"type": "text",
|
|
81
|
-
"text": "{{files|truncate:550}}"
|
|
82
|
-
}
|
|
83
|
-
]
|
|
84
|
-
}
|
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
|