@rnsk/toolkits 0.0.8 → 0.0.10
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/README.md +15 -1
- package/dist/index.d.ts +15 -1
- package/dist/index.js +29 -1
- package/dist/toolkits/bitbucket/icon.d.ts +5 -0
- package/dist/toolkits/bitbucket/icon.js +6 -0
- package/dist/toolkits/bitbucket/manifest.d.ts +3 -0
- package/dist/toolkits/bitbucket/manifest.js +56 -0
- package/dist/toolkits/bitbucket/tools/client.d.ts +38 -0
- package/dist/toolkits/bitbucket/tools/client.js +87 -0
- package/dist/toolkits/bitbucket/tools/commits.d.ts +149 -0
- package/dist/toolkits/bitbucket/tools/commits.js +444 -0
- package/dist/toolkits/bitbucket/tools/index.d.ts +1093 -0
- package/dist/toolkits/bitbucket/tools/index.js +770 -0
- package/dist/toolkits/bitbucket/tools/issues.d.ts +73 -0
- package/dist/toolkits/bitbucket/tools/issues.js +234 -0
- package/dist/toolkits/bitbucket/tools/pipelines.d.ts +124 -0
- package/dist/toolkits/bitbucket/tools/pipelines.js +446 -0
- package/dist/toolkits/bitbucket/tools/pull-requests.d.ts +174 -0
- package/dist/toolkits/bitbucket/tools/pull-requests.js +541 -0
- package/dist/toolkits/bitbucket/tools/reports.d.ts +84 -0
- package/dist/toolkits/bitbucket/tools/reports.js +213 -0
- package/dist/toolkits/bitbucket/tools/repositories.d.ts +156 -0
- package/dist/toolkits/bitbucket/tools/repositories.js +531 -0
- package/dist/toolkits/bitbucket/tools/search.d.ts +17 -0
- package/dist/toolkits/bitbucket/tools/search.js +67 -0
- package/dist/toolkits/bitbucket/tools/snippets.d.ts +34 -0
- package/dist/toolkits/bitbucket/tools/snippets.js +122 -0
- package/dist/toolkits/bitbucket/tools/users-workspaces.d.ts +65 -0
- package/dist/toolkits/bitbucket/tools/users-workspaces.js +294 -0
- package/dist/toolkits/discord/icon.d.ts +5 -0
- package/dist/toolkits/discord/icon.js +12 -0
- package/dist/toolkits/discord/manifest.d.ts +3 -0
- package/dist/toolkits/discord/manifest.js +52 -0
- package/dist/toolkits/discord/tools/applications.d.ts +79 -0
- package/dist/toolkits/discord/tools/applications.js +216 -0
- package/dist/toolkits/discord/tools/client.d.ts +22 -0
- package/dist/toolkits/discord/tools/client.js +69 -0
- package/dist/toolkits/discord/tools/guilds.d.ts +39 -0
- package/dist/toolkits/discord/tools/guilds.js +123 -0
- package/dist/toolkits/discord/tools/index.d.ts +222 -0
- package/dist/toolkits/discord/tools/index.js +170 -0
- package/dist/toolkits/discord/tools/misc.d.ts +7 -0
- package/dist/toolkits/discord/tools/misc.js +40 -0
- package/dist/toolkits/discord/tools/users.d.ts +28 -0
- package/dist/toolkits/discord/tools/users.js +128 -0
- package/dist/toolkits/figma/tools/index.d.ts +1 -1
- package/dist/toolkits/figma/tools/render-images-of-file-nodes.d.ts +1 -1
- package/dist/toolkits/gitlab/icon.d.ts +5 -0
- package/dist/toolkits/gitlab/icon.js +6 -0
- package/dist/toolkits/gitlab/manifest.d.ts +3 -0
- package/dist/toolkits/gitlab/manifest.js +36 -0
- package/dist/toolkits/gitlab/tools/client.d.ts +7 -0
- package/dist/toolkits/gitlab/tools/client.js +45 -0
- package/dist/toolkits/gitlab/tools/index.d.ts +306 -0
- package/dist/toolkits/gitlab/tools/index.js +36 -0
- package/dist/toolkits/gitlab/tools/issues.d.ts +45 -0
- package/dist/toolkits/gitlab/tools/issues.js +103 -0
- package/dist/toolkits/gitlab/tools/merge-requests.d.ts +35 -0
- package/dist/toolkits/gitlab/tools/merge-requests.js +91 -0
- package/dist/toolkits/gitlab/tools/pipelines.d.ts +30 -0
- package/dist/toolkits/gitlab/tools/pipelines.js +66 -0
- package/dist/toolkits/gitlab/tools/projects.d.ts +36 -0
- package/dist/toolkits/gitlab/tools/projects.js +94 -0
- package/dist/toolkits/gitlab/tools/repository.d.ts +21 -0
- package/dist/toolkits/gitlab/tools/repository.js +53 -0
- package/dist/toolkits/gitlab/tools/users-groups.d.ts +11 -0
- package/dist/toolkits/gitlab/tools/users-groups.js +30 -0
- package/dist/toolkits/google-ads/tools/get-rmf-report.d.ts +2 -2
- package/dist/toolkits/google-ads/tools/index.d.ts +2 -2
- package/dist/toolkits/google-analytics/icon.d.ts +5 -0
- package/dist/toolkits/google-analytics/icon.js +11 -0
- package/dist/toolkits/google-analytics/manifest.d.ts +3 -0
- package/dist/toolkits/google-analytics/manifest.js +48 -0
- package/dist/toolkits/google-analytics/tools/admin.d.ts +73 -0
- package/dist/toolkits/google-analytics/tools/admin.js +238 -0
- package/dist/toolkits/google-analytics/tools/audiences.d.ts +81 -0
- package/dist/toolkits/google-analytics/tools/audiences.js +190 -0
- package/dist/toolkits/google-analytics/tools/client.d.ts +47 -0
- package/dist/toolkits/google-analytics/tools/client.js +74 -0
- package/dist/toolkits/google-analytics/tools/custom-definitions.d.ts +62 -0
- package/dist/toolkits/google-analytics/tools/custom-definitions.js +106 -0
- package/dist/toolkits/google-analytics/tools/index.d.ts +16 -0
- package/dist/toolkits/google-analytics/tools/index.js +88 -0
- package/dist/toolkits/google-analytics/tools/links.d.ts +22 -0
- package/dist/toolkits/google-analytics/tools/links.js +56 -0
- package/dist/toolkits/google-analytics/tools/measurement.d.ts +3 -0
- package/dist/toolkits/google-analytics/tools/measurement.js +55 -0
- package/dist/toolkits/google-analytics/tools/reports.d.ts +136 -0
- package/dist/toolkits/google-analytics/tools/reports.js +200 -0
- package/dist/toolkits/google-contacts/icon.d.ts +5 -0
- package/dist/toolkits/google-contacts/icon.js +6 -0
- package/dist/toolkits/google-contacts/manifest.d.ts +3 -0
- package/dist/toolkits/google-contacts/manifest.js +48 -0
- package/dist/toolkits/google-contacts/tools/client.d.ts +19 -0
- package/dist/toolkits/google-contacts/tools/client.js +44 -0
- package/dist/toolkits/google-contacts/tools/contacts.d.ts +94 -0
- package/dist/toolkits/google-contacts/tools/contacts.js +273 -0
- package/dist/toolkits/google-contacts/tools/directory.d.ts +36 -0
- package/dist/toolkits/google-contacts/tools/directory.js +99 -0
- package/dist/toolkits/google-contacts/tools/groups.d.ts +68 -0
- package/dist/toolkits/google-contacts/tools/groups.js +169 -0
- package/dist/toolkits/google-contacts/tools/index.d.ts +347 -0
- package/dist/toolkits/google-contacts/tools/index.js +34 -0
- package/dist/toolkits/google-contacts/tools/photos.d.ts +26 -0
- package/dist/toolkits/google-contacts/tools/photos.js +52 -0
- package/dist/toolkits/google-maps/icon.d.ts +5 -0
- package/dist/toolkits/google-maps/icon.js +39 -0
- package/dist/toolkits/google-maps/manifest.d.ts +3 -0
- package/dist/toolkits/google-maps/manifest.js +55 -0
- package/dist/toolkits/google-maps/tools/client.d.ts +27 -0
- package/dist/toolkits/google-maps/tools/client.js +72 -0
- package/dist/toolkits/google-maps/tools/geocode.d.ts +49 -0
- package/dist/toolkits/google-maps/tools/geocode.js +168 -0
- package/dist/toolkits/google-maps/tools/index.d.ts +432 -0
- package/dist/toolkits/google-maps/tools/index.js +31 -0
- package/dist/toolkits/google-maps/tools/misc.d.ts +70 -0
- package/dist/toolkits/google-maps/tools/misc.js +158 -0
- package/dist/toolkits/google-maps/tools/places.d.ts +112 -0
- package/dist/toolkits/google-maps/tools/places.js +185 -0
- package/dist/toolkits/google-maps/tools/routes.d.ts +48 -0
- package/dist/toolkits/google-maps/tools/routes.js +97 -0
- package/dist/toolkits/google-maps/tools/tiles.d.ts +51 -0
- package/dist/toolkits/google-maps/tools/tiles.js +84 -0
- package/dist/toolkits/google-photos/icon.d.ts +5 -0
- package/dist/toolkits/google-photos/icon.js +6 -0
- package/dist/toolkits/google-photos/manifest.d.ts +3 -0
- package/dist/toolkits/google-photos/manifest.js +47 -0
- package/dist/toolkits/google-photos/tools/albums.d.ts +83 -0
- package/dist/toolkits/google-photos/tools/albums.js +180 -0
- package/dist/toolkits/google-photos/tools/client.d.ts +24 -0
- package/dist/toolkits/google-photos/tools/client.js +77 -0
- package/dist/toolkits/google-photos/tools/index.d.ts +261 -0
- package/dist/toolkits/google-photos/tools/index.js +22 -0
- package/dist/toolkits/google-photos/tools/media.d.ts +52 -0
- package/dist/toolkits/google-photos/tools/media.js +142 -0
- package/dist/toolkits/google-photos/tools/uploads.d.ts +58 -0
- package/dist/toolkits/google-photos/tools/uploads.js +107 -0
- package/dist/toolkits/google-tasks/tools/index.d.ts +1 -1
- package/dist/toolkits/google-tasks/tools/update-task-full.d.ts +1 -1
- package/dist/toolkits/groww/tools/index.d.ts +1 -1
- package/dist/toolkits/groww/tools/instruments.d.ts +1 -1
- package/dist/toolkits/hacker-news/icon.d.ts +5 -0
- package/dist/toolkits/hacker-news/icon.js +9 -0
- package/dist/toolkits/hacker-news/manifest.d.ts +3 -0
- package/dist/toolkits/hacker-news/manifest.js +25 -0
- package/dist/toolkits/hacker-news/tools/client.d.ts +8 -0
- package/dist/toolkits/hacker-news/tools/client.js +51 -0
- package/dist/toolkits/hacker-news/tools/index.d.ts +89 -0
- package/dist/toolkits/hacker-news/tools/index.js +22 -0
- package/dist/toolkits/hacker-news/tools/items.d.ts +42 -0
- package/dist/toolkits/hacker-news/tools/items.js +126 -0
- package/dist/toolkits/hacker-news/tools/search.d.ts +12 -0
- package/dist/toolkits/hacker-news/tools/search.js +40 -0
- package/dist/toolkits/hacker-news/tools/stories.d.ts +25 -0
- package/dist/toolkits/hacker-news/tools/stories.js +98 -0
- package/dist/toolkits/hostinger/icon.d.ts +5 -0
- package/dist/toolkits/hostinger/icon.js +6 -0
- package/dist/toolkits/hostinger/manifest.d.ts +3 -0
- package/dist/toolkits/hostinger/manifest.js +36 -0
- package/dist/toolkits/hostinger/tools/billing.d.ts +12 -0
- package/dist/toolkits/hostinger/tools/billing.js +35 -0
- package/dist/toolkits/hostinger/tools/client.d.ts +6 -0
- package/dist/toolkits/hostinger/tools/client.js +57 -0
- package/dist/toolkits/hostinger/tools/dns.d.ts +22 -0
- package/dist/toolkits/hostinger/tools/dns.js +47 -0
- package/dist/toolkits/hostinger/tools/domains.d.ts +21 -0
- package/dist/toolkits/hostinger/tools/domains.js +62 -0
- package/dist/toolkits/hostinger/tools/hosting.d.ts +17 -0
- package/dist/toolkits/hostinger/tools/hosting.js +38 -0
- package/dist/toolkits/hostinger/tools/index.d.ts +179 -0
- package/dist/toolkits/hostinger/tools/index.js +35 -0
- package/dist/toolkits/hostinger/tools/vps.d.ts +27 -0
- package/dist/toolkits/hostinger/tools/vps.js +77 -0
- package/dist/toolkits/hostinger/tools/whois.d.ts +33 -0
- package/dist/toolkits/hostinger/tools/whois.js +85 -0
- package/dist/toolkits/hugging-face/icon.d.ts +5 -0
- package/dist/toolkits/hugging-face/icon.js +6 -0
- package/dist/toolkits/hugging-face/manifest.d.ts +3 -0
- package/dist/toolkits/hugging-face/manifest.js +42 -0
- package/dist/toolkits/hugging-face/tools/client.d.ts +93 -0
- package/dist/toolkits/hugging-face/tools/client.js +192 -0
- package/dist/toolkits/hugging-face/tools/datasets-viewer.d.ts +65 -0
- package/dist/toolkits/hugging-face/tools/datasets-viewer.js +150 -0
- package/dist/toolkits/hugging-face/tools/datasets.d.ts +160 -0
- package/dist/toolkits/hugging-face/tools/datasets.js +383 -0
- package/dist/toolkits/hugging-face/tools/discussions.d.ts +68 -0
- package/dist/toolkits/hugging-face/tools/discussions.js +144 -0
- package/dist/toolkits/hugging-face/tools/index.d.ts +523 -0
- package/dist/toolkits/hugging-face/tools/index.js +163 -0
- package/dist/toolkits/hugging-face/tools/inference.d.ts +42 -0
- package/dist/toolkits/hugging-face/tools/inference.js +86 -0
- package/dist/toolkits/hugging-face/tools/models.d.ts +117 -0
- package/dist/toolkits/hugging-face/tools/models.js +273 -0
- package/dist/toolkits/hugging-face/tools/papers.d.ts +37 -0
- package/dist/toolkits/hugging-face/tools/papers.js +91 -0
- package/dist/toolkits/hugging-face/tools/repos.d.ts +96 -0
- package/dist/toolkits/hugging-face/tools/repos.js +201 -0
- package/dist/toolkits/hugging-face/tools/settings.d.ts +53 -0
- package/dist/toolkits/hugging-face/tools/settings.js +88 -0
- package/dist/toolkits/hugging-face/tools/spaces.d.ts +245 -0
- package/dist/toolkits/hugging-face/tools/spaces.js +468 -0
- package/dist/toolkits/hugging-face/tools/sql.d.ts +21 -0
- package/dist/toolkits/hugging-face/tools/sql.js +47 -0
- package/dist/toolkits/hugging-face/tools/users.d.ts +60 -0
- package/dist/toolkits/hugging-face/tools/users.js +132 -0
- package/dist/toolkits/hugging-face/tools/webhooks.d.ts +35 -0
- package/dist/toolkits/hugging-face/tools/webhooks.js +87 -0
- package/dist/toolkits/jira/icon.d.ts +5 -0
- package/dist/toolkits/jira/icon.js +6 -0
- package/dist/toolkits/jira/manifest.d.ts +3 -0
- package/dist/toolkits/jira/manifest.js +53 -0
- package/dist/toolkits/jira/tools/boards.d.ts +52 -0
- package/dist/toolkits/jira/tools/boards.js +104 -0
- package/dist/toolkits/jira/tools/client.d.ts +23 -0
- package/dist/toolkits/jira/tools/client.js +270 -0
- package/dist/toolkits/jira/tools/index.d.ts +1280 -0
- package/dist/toolkits/jira/tools/index.js +119 -0
- package/dist/toolkits/jira/tools/issue-fields.d.ts +10 -0
- package/dist/toolkits/jira/tools/issue-fields.js +111 -0
- package/dist/toolkits/jira/tools/issues.d.ts +304 -0
- package/dist/toolkits/jira/tools/issues.js +593 -0
- package/dist/toolkits/jira/tools/meta.d.ts +212 -0
- package/dist/toolkits/jira/tools/meta.js +369 -0
- package/dist/toolkits/jira/tools/projects.d.ts +130 -0
- package/dist/toolkits/jira/tools/projects.js +263 -0
- package/dist/toolkits/jira/tools/search.d.ts +90 -0
- package/dist/toolkits/jira/tools/search.js +181 -0
- package/dist/toolkits/jira/tools/users.d.ts +114 -0
- package/dist/toolkits/jira/tools/users.js +221 -0
- package/dist/toolkits/neo4j/icon.d.ts +5 -0
- package/dist/toolkits/neo4j/icon.js +6 -0
- package/dist/toolkits/neo4j/manifest.d.ts +3 -0
- package/dist/toolkits/neo4j/manifest.js +33 -0
- package/dist/toolkits/neo4j/tools/analytics.d.ts +21 -0
- package/dist/toolkits/neo4j/tools/analytics.js +91 -0
- package/dist/toolkits/neo4j/tools/client.d.ts +6 -0
- package/dist/toolkits/neo4j/tools/client.js +105 -0
- package/dist/toolkits/neo4j/tools/index.d.ts +198 -0
- package/dist/toolkits/neo4j/tools/index.js +30 -0
- package/dist/toolkits/neo4j/tools/instances.d.ts +47 -0
- package/dist/toolkits/neo4j/tools/instances.js +127 -0
- package/dist/toolkits/neo4j/tools/projects.d.ts +44 -0
- package/dist/toolkits/neo4j/tools/projects.js +110 -0
- package/dist/toolkits/neo4j/tools/snapshots.d.ts +20 -0
- package/dist/toolkits/neo4j/tools/snapshots.js +57 -0
- package/dist/toolkits/neon/icon.d.ts +5 -0
- package/dist/toolkits/neon/icon.js +8 -0
- package/dist/toolkits/neon/manifest.d.ts +3 -0
- package/dist/toolkits/neon/manifest.js +36 -0
- package/dist/toolkits/neon/tools/auth.d.ts +115 -0
- package/dist/toolkits/neon/tools/auth.js +286 -0
- package/dist/toolkits/neon/tools/branches.d.ts +189 -0
- package/dist/toolkits/neon/tools/branches.js +465 -0
- package/dist/toolkits/neon/tools/client.d.ts +10 -0
- package/dist/toolkits/neon/tools/client.js +69 -0
- package/dist/toolkits/neon/tools/dataapi.d.ts +42 -0
- package/dist/toolkits/neon/tools/dataapi.js +111 -0
- package/dist/toolkits/neon/tools/endpoints.d.ts +59 -0
- package/dist/toolkits/neon/tools/endpoints.js +163 -0
- package/dist/toolkits/neon/tools/index.d.ts +976 -0
- package/dist/toolkits/neon/tools/index.js +130 -0
- package/dist/toolkits/neon/tools/meta.d.ts +4 -0
- package/dist/toolkits/neon/tools/meta.js +16 -0
- package/dist/toolkits/neon/tools/orgs.d.ts +112 -0
- package/dist/toolkits/neon/tools/orgs.js +303 -0
- package/dist/toolkits/neon/tools/projects.d.ts +177 -0
- package/dist/toolkits/neon/tools/projects.js +468 -0
- package/dist/toolkits/neon/tools/snapshots.d.ts +24 -0
- package/dist/toolkits/neon/tools/snapshots.js +67 -0
- package/dist/toolkits/reddit/tools/index.d.ts +1 -1
- package/dist/toolkits/reddit/tools/search-across-subreddits.d.ts +1 -1
- package/dist/toolkits/slack/icon.d.ts +5 -0
- package/dist/toolkits/slack/icon.js +20 -0
- package/dist/toolkits/slack/manifest.d.ts +3 -0
- package/dist/toolkits/slack/manifest.js +93 -0
- package/dist/toolkits/slack/tools/admin-apps.d.ts +32 -0
- package/dist/toolkits/slack/tools/admin-apps.js +116 -0
- package/dist/toolkits/slack/tools/admin-conversations.d.ts +62 -0
- package/dist/toolkits/slack/tools/admin-conversations.js +246 -0
- package/dist/toolkits/slack/tools/admin-invites.d.ts +19 -0
- package/dist/toolkits/slack/tools/admin-invites.js +75 -0
- package/dist/toolkits/slack/tools/admin-users.d.ts +52 -0
- package/dist/toolkits/slack/tools/admin-users.js +182 -0
- package/dist/toolkits/slack/tools/audit.d.ts +20 -0
- package/dist/toolkits/slack/tools/audit.js +81 -0
- package/dist/toolkits/slack/tools/calls.d.ts +38 -0
- package/dist/toolkits/slack/tools/calls.js +141 -0
- package/dist/toolkits/slack/tools/canvas.d.ts +24 -0
- package/dist/toolkits/slack/tools/canvas.js +102 -0
- package/dist/toolkits/slack/tools/client.d.ts +22 -0
- package/dist/toolkits/slack/tools/client.js +73 -0
- package/dist/toolkits/slack/tools/conversations.d.ts +131 -0
- package/dist/toolkits/slack/tools/conversations.js +463 -0
- package/dist/toolkits/slack/tools/emoji.d.ts +29 -0
- package/dist/toolkits/slack/tools/emoji.js +118 -0
- package/dist/toolkits/slack/tools/files.d.ts +113 -0
- package/dist/toolkits/slack/tools/files.js +368 -0
- package/dist/toolkits/slack/tools/index.d.ts +28 -0
- package/dist/toolkits/slack/tools/index.js +187 -0
- package/dist/toolkits/slack/tools/messages.d.ts +106 -0
- package/dist/toolkits/slack/tools/messages.js +340 -0
- package/dist/toolkits/slack/tools/misc.d.ts +42 -0
- package/dist/toolkits/slack/tools/misc.js +127 -0
- package/dist/toolkits/slack/tools/reactions-stars-pins.d.ts +69 -0
- package/dist/toolkits/slack/tools/reactions-stars-pins.js +236 -0
- package/dist/toolkits/slack/tools/reminders.d.ts +22 -0
- package/dist/toolkits/slack/tools/reminders.js +83 -0
- package/dist/toolkits/slack/tools/search.d.ts +49 -0
- package/dist/toolkits/slack/tools/search.js +155 -0
- package/dist/toolkits/slack/tools/slack-lists.d.ts +65 -0
- package/dist/toolkits/slack/tools/slack-lists.js +282 -0
- package/dist/toolkits/slack/tools/teams.d.ts +75 -0
- package/dist/toolkits/slack/tools/teams.js +285 -0
- package/dist/toolkits/slack/tools/usergroups.d.ts +56 -0
- package/dist/toolkits/slack/tools/usergroups.js +194 -0
- package/dist/toolkits/slack/tools/users.d.ts +87 -0
- package/dist/toolkits/slack/tools/users.js +396 -0
- package/dist/toolkits/youtube/tools/add-video-to-playlist.d.ts +1 -1
- package/dist/toolkits/youtube/tools/delete-video.d.ts +1 -1
- package/dist/toolkits/youtube/tools/index.d.ts +10 -10
- package/dist/toolkits/youtube/tools/list-caption-track.d.ts +1 -1
- package/dist/toolkits/youtube/tools/list-playlist-items.d.ts +1 -1
- package/dist/toolkits/youtube/tools/list-video-categories.d.ts +1 -1
- package/dist/toolkits/youtube/tools/post-comment.d.ts +1 -1
- package/dist/toolkits/youtube/tools/report-video-abuse.d.ts +1 -1
- package/dist/toolkits/youtube/tools/search-youtube.d.ts +1 -1
- package/dist/toolkits/youtube/tools/update-thumbnail.d.ts +1 -1
- package/dist/toolkits/youtube/tools/update-video.d.ts +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export declare const slackCustomizeUnfurl: import("ai").Tool<{
|
|
2
|
+
metadata?: Record<string, any> | undefined;
|
|
3
|
+
source?: string | undefined;
|
|
4
|
+
channel?: string | undefined;
|
|
5
|
+
ts?: string | undefined;
|
|
6
|
+
slackToken?: string | undefined;
|
|
7
|
+
unfurlId?: string | undefined;
|
|
8
|
+
unfurls?: Record<string, any> | undefined;
|
|
9
|
+
userAuthRequired?: boolean | undefined;
|
|
10
|
+
userAuthUrl?: string | undefined;
|
|
11
|
+
userAuthMessage?: string | undefined;
|
|
12
|
+
userAuthBlocks?: Record<string, any>[] | undefined;
|
|
13
|
+
}, any>;
|
|
14
|
+
export declare const slackApiTest: import("ai").Tool<{
|
|
15
|
+
error?: string | undefined;
|
|
16
|
+
slackToken?: string | undefined;
|
|
17
|
+
foo?: string | undefined;
|
|
18
|
+
}, any>;
|
|
19
|
+
export declare const slackTestAuth: import("ai").Tool<{
|
|
20
|
+
slackToken?: string | undefined;
|
|
21
|
+
}, any>;
|
|
22
|
+
export declare const slackWhoAmI: import("ai").Tool<{
|
|
23
|
+
slackToken?: string | undefined;
|
|
24
|
+
}, {
|
|
25
|
+
error: string;
|
|
26
|
+
} | {
|
|
27
|
+
data: {
|
|
28
|
+
user_id: any;
|
|
29
|
+
team_id: any;
|
|
30
|
+
user: any;
|
|
31
|
+
team: any;
|
|
32
|
+
url: any;
|
|
33
|
+
is_enterprise_install: any;
|
|
34
|
+
};
|
|
35
|
+
display_name: string | null;
|
|
36
|
+
}>;
|
|
37
|
+
export declare const slackRtmConnect: import("ai").Tool<{
|
|
38
|
+
slackToken?: string | undefined;
|
|
39
|
+
presenceSub?: boolean | undefined;
|
|
40
|
+
batchPresenceAware?: boolean | undefined;
|
|
41
|
+
}, any>;
|
|
42
|
+
//# sourceMappingURL=misc.d.ts.map
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
import { tool } from 'ai';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
import { slackApi, toSlackError, requireToken } from './client.js';
|
|
5
|
+
const tokenField = z.string().optional().describe('Injected by system; do not provide');
|
|
6
|
+
export const slackCustomizeUnfurl = tool({
|
|
7
|
+
description: 'Customize link previews (unfurls) on a message: provide custom preview content per URL or empty objects to remove previews. Target by channel+ts, or by unfurl_id+source. Either unfurls or metadata is required.',
|
|
8
|
+
inputSchema: z.object({
|
|
9
|
+
slackToken: tokenField,
|
|
10
|
+
channel: z.string().optional().describe('Channel ID (requires ts)'),
|
|
11
|
+
ts: z.string().optional().describe('Message ts (requires channel)'),
|
|
12
|
+
unfurlId: z.string().optional().describe('Link ID (requires source; alternative to channel+ts)'),
|
|
13
|
+
source: z.string().optional().describe("Link source: 'composer' or 'conversations_history' (requires unfurlId)"),
|
|
14
|
+
unfurls: z.record(z.any()).optional().describe('Map of URL to preview content (empty object removes the preview)'),
|
|
15
|
+
metadata: z.record(z.any()).optional().describe('Work-object metadata alternative to unfurls'),
|
|
16
|
+
userAuthRequired: z.boolean().optional().describe('Require user auth before unfurling a domain'),
|
|
17
|
+
userAuthUrl: z.string().optional().describe('Auth URL for the unfurl flow'),
|
|
18
|
+
userAuthMessage: z.string().optional().describe('Ephemeral prompt asking the user to authenticate'),
|
|
19
|
+
userAuthBlocks: z.array(z.record(z.any())).optional().describe('Block Kit auth invitation (richer alternative)'),
|
|
20
|
+
}),
|
|
21
|
+
execute: async ({ slackToken, ts, unfurlId, userAuthRequired, userAuthUrl, userAuthMessage, userAuthBlocks, ...rest }) => {
|
|
22
|
+
try {
|
|
23
|
+
const missing = requireToken(slackToken);
|
|
24
|
+
if (missing)
|
|
25
|
+
return missing;
|
|
26
|
+
return await slackApi(slackToken, 'chat.unfurl', {
|
|
27
|
+
...rest,
|
|
28
|
+
ts,
|
|
29
|
+
unfurl_id: unfurlId,
|
|
30
|
+
user_auth_required: userAuthRequired,
|
|
31
|
+
user_auth_url: userAuthUrl,
|
|
32
|
+
user_auth_message: userAuthMessage,
|
|
33
|
+
user_auth_blocks: userAuthBlocks,
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
catch (error) {
|
|
37
|
+
return toSlackError(error, 'Failed to customize unfurl');
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
});
|
|
41
|
+
export const slackApiTest = tool({
|
|
42
|
+
description: 'Test Slack API connectivity and auth. Pass foo to echo a value, or error to simulate an error response.',
|
|
43
|
+
inputSchema: z.object({
|
|
44
|
+
slackToken: tokenField,
|
|
45
|
+
foo: z.string().optional().describe('Arbitrary value echoed back in args'),
|
|
46
|
+
error: z.string().optional().describe('Error code to simulate, e.g. my_error'),
|
|
47
|
+
}),
|
|
48
|
+
execute: async ({ slackToken, foo, error }) => {
|
|
49
|
+
try {
|
|
50
|
+
const missing = requireToken(slackToken);
|
|
51
|
+
if (missing)
|
|
52
|
+
return missing;
|
|
53
|
+
return await slackApi(slackToken, 'api.test', { foo, error });
|
|
54
|
+
}
|
|
55
|
+
catch (error) {
|
|
56
|
+
return toSlackError(error, 'Failed to test API');
|
|
57
|
+
}
|
|
58
|
+
},
|
|
59
|
+
});
|
|
60
|
+
export const slackTestAuth = tool({
|
|
61
|
+
description: 'Verify authentication and get the caller identity (user, team, bot). Use first when diagnosing scope or token issues. Replaces the deprecated permission-scopes check.',
|
|
62
|
+
inputSchema: z.object({
|
|
63
|
+
slackToken: tokenField,
|
|
64
|
+
}),
|
|
65
|
+
execute: async ({ slackToken }) => {
|
|
66
|
+
try {
|
|
67
|
+
const missing = requireToken(slackToken);
|
|
68
|
+
if (missing)
|
|
69
|
+
return missing;
|
|
70
|
+
return await slackApi(slackToken, 'auth.test', {});
|
|
71
|
+
}
|
|
72
|
+
catch (error) {
|
|
73
|
+
return toSlackError(error, 'Failed to test auth');
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
});
|
|
77
|
+
export const slackWhoAmI = tool({
|
|
78
|
+
description: 'Return the connected account identity (user ID + workspace ID). User IDs are workspace-scoped, so both are included in the label.',
|
|
79
|
+
inputSchema: z.object({
|
|
80
|
+
slackToken: tokenField,
|
|
81
|
+
}),
|
|
82
|
+
execute: async ({ slackToken }) => {
|
|
83
|
+
try {
|
|
84
|
+
const missing = requireToken(slackToken);
|
|
85
|
+
if (missing)
|
|
86
|
+
return missing;
|
|
87
|
+
const auth = await slackApi(slackToken, 'auth.test', {});
|
|
88
|
+
return {
|
|
89
|
+
data: {
|
|
90
|
+
user_id: auth?.user_id,
|
|
91
|
+
team_id: auth?.team_id,
|
|
92
|
+
user: auth?.user,
|
|
93
|
+
team: auth?.team,
|
|
94
|
+
url: auth?.url,
|
|
95
|
+
is_enterprise_install: auth?.is_enterprise_install,
|
|
96
|
+
},
|
|
97
|
+
display_name: auth?.user && auth?.team ? `${auth.user} @ ${auth.team}` : null,
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
catch (error) {
|
|
101
|
+
return toSlackError(error, 'Failed to get identity');
|
|
102
|
+
}
|
|
103
|
+
},
|
|
104
|
+
});
|
|
105
|
+
export const slackRtmConnect = tool({
|
|
106
|
+
description: 'Start a Real Time Messaging session and get a WebSocket URL for persistent event streaming. Connect to the returned URL separately; the URL is short-lived.',
|
|
107
|
+
inputSchema: z.object({
|
|
108
|
+
slackToken: tokenField,
|
|
109
|
+
presenceSub: z.boolean().optional().describe('Only deliver presence events on subscription'),
|
|
110
|
+
batchPresenceAware: z.boolean().optional().describe('Batch presence deliveries (changes event shape)'),
|
|
111
|
+
}),
|
|
112
|
+
execute: async ({ slackToken, presenceSub, batchPresenceAware }) => {
|
|
113
|
+
try {
|
|
114
|
+
const missing = requireToken(slackToken);
|
|
115
|
+
if (missing)
|
|
116
|
+
return missing;
|
|
117
|
+
return await slackApi(slackToken, 'rtm.connect', {
|
|
118
|
+
presence_sub: presenceSub,
|
|
119
|
+
batch_presence_aware: batchPresenceAware,
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
catch (error) {
|
|
123
|
+
return toSlackError(error, 'Failed to start RTM session');
|
|
124
|
+
}
|
|
125
|
+
},
|
|
126
|
+
});
|
|
127
|
+
//# sourceMappingURL=misc.js.map
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
export declare const slackAddReaction: import("ai").Tool<{
|
|
2
|
+
name: string;
|
|
3
|
+
timestamp: string;
|
|
4
|
+
channel: string;
|
|
5
|
+
slackToken?: string | undefined;
|
|
6
|
+
}, any>;
|
|
7
|
+
export declare const slackRemoveReaction: import("ai").Tool<{
|
|
8
|
+
name: string;
|
|
9
|
+
file?: string | undefined;
|
|
10
|
+
timestamp?: string | undefined;
|
|
11
|
+
channel?: string | undefined;
|
|
12
|
+
slackToken?: string | undefined;
|
|
13
|
+
fileComment?: string | undefined;
|
|
14
|
+
}, any>;
|
|
15
|
+
export declare const slackGetReactions: import("ai").Tool<{
|
|
16
|
+
file?: string | undefined;
|
|
17
|
+
timestamp?: string | undefined;
|
|
18
|
+
channel?: string | undefined;
|
|
19
|
+
full?: boolean | undefined;
|
|
20
|
+
slackToken?: string | undefined;
|
|
21
|
+
fileComment?: string | undefined;
|
|
22
|
+
}, any>;
|
|
23
|
+
export declare const slackListUserReactions: import("ai").Tool<{
|
|
24
|
+
count?: number | undefined;
|
|
25
|
+
teamId?: string | undefined;
|
|
26
|
+
user?: string | undefined;
|
|
27
|
+
limit?: number | undefined;
|
|
28
|
+
page?: number | undefined;
|
|
29
|
+
cursor?: string | undefined;
|
|
30
|
+
full?: boolean | undefined;
|
|
31
|
+
slackToken?: string | undefined;
|
|
32
|
+
}, any>;
|
|
33
|
+
export declare const slackAddStar: import("ai").Tool<{
|
|
34
|
+
file?: string | undefined;
|
|
35
|
+
timestamp?: string | undefined;
|
|
36
|
+
channel?: string | undefined;
|
|
37
|
+
slackToken?: string | undefined;
|
|
38
|
+
fileComment?: string | undefined;
|
|
39
|
+
}, any>;
|
|
40
|
+
export declare const slackRemoveStar: import("ai").Tool<{
|
|
41
|
+
file?: string | undefined;
|
|
42
|
+
timestamp?: string | undefined;
|
|
43
|
+
channel?: string | undefined;
|
|
44
|
+
slackToken?: string | undefined;
|
|
45
|
+
fileComment?: string | undefined;
|
|
46
|
+
}, any>;
|
|
47
|
+
export declare const slackListStarredItems: import("ai").Tool<{
|
|
48
|
+
count?: number | undefined;
|
|
49
|
+
teamId?: string | undefined;
|
|
50
|
+
limit?: number | undefined;
|
|
51
|
+
page?: number | undefined;
|
|
52
|
+
cursor?: string | undefined;
|
|
53
|
+
slackToken?: string | undefined;
|
|
54
|
+
}, any>;
|
|
55
|
+
export declare const slackPinItem: import("ai").Tool<{
|
|
56
|
+
timestamp: string;
|
|
57
|
+
channel: string;
|
|
58
|
+
slackToken?: string | undefined;
|
|
59
|
+
}, any>;
|
|
60
|
+
export declare const slackUnpinItem: import("ai").Tool<{
|
|
61
|
+
timestamp: string;
|
|
62
|
+
channel: string;
|
|
63
|
+
slackToken?: string | undefined;
|
|
64
|
+
}, any>;
|
|
65
|
+
export declare const slackListPinnedItems: import("ai").Tool<{
|
|
66
|
+
channel: string;
|
|
67
|
+
slackToken?: string | undefined;
|
|
68
|
+
}, any>;
|
|
69
|
+
//# sourceMappingURL=reactions-stars-pins.d.ts.map
|
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
import { tool } from 'ai';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
import { slackApi, toSlackError, requireToken } from './client.js';
|
|
5
|
+
const tokenField = z.string().optional().describe('Injected by system; do not provide');
|
|
6
|
+
export const slackAddReaction = tool({
|
|
7
|
+
description: 'Add an emoji reaction to a message by channel and exact timestamp. The emoji must exist; use slackListCustomEmojis to verify. Skin tones append ::skin-tone-2..6.',
|
|
8
|
+
inputSchema: z.object({
|
|
9
|
+
slackToken: tokenField,
|
|
10
|
+
channel: z.string().describe('Channel ID containing the message'),
|
|
11
|
+
timestamp: z.string().describe('Exact message ts, e.g. 1234567890.123456'),
|
|
12
|
+
name: z.string().describe("Emoji name without colons, e.g. 'thumbsup'"),
|
|
13
|
+
}),
|
|
14
|
+
execute: async ({ slackToken, channel, timestamp, name }) => {
|
|
15
|
+
try {
|
|
16
|
+
const missing = requireToken(slackToken);
|
|
17
|
+
if (missing)
|
|
18
|
+
return missing;
|
|
19
|
+
return await slackApi(slackToken, 'reactions.add', { channel, timestamp, name });
|
|
20
|
+
}
|
|
21
|
+
catch (error) {
|
|
22
|
+
return toSlackError(error, 'Failed to add reaction');
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
});
|
|
26
|
+
export const slackRemoveReaction = tool({
|
|
27
|
+
description: 'Remove an emoji reaction from a message, file, or file comment. Provide exactly one target: channel+timestamp, file, or fileComment.',
|
|
28
|
+
inputSchema: z.object({
|
|
29
|
+
slackToken: tokenField,
|
|
30
|
+
name: z.string().describe("Emoji name without colons, e.g. 'thumbsup'"),
|
|
31
|
+
channel: z.string().optional().describe('Channel ID (requires timestamp)'),
|
|
32
|
+
timestamp: z.string().optional().describe('Message ts (requires channel)'),
|
|
33
|
+
file: z.string().optional().describe('File ID'),
|
|
34
|
+
fileComment: z.string().optional().describe('File comment ID'),
|
|
35
|
+
}),
|
|
36
|
+
execute: async ({ slackToken, name, channel, timestamp, file, fileComment }) => {
|
|
37
|
+
try {
|
|
38
|
+
const missing = requireToken(slackToken);
|
|
39
|
+
if (missing)
|
|
40
|
+
return missing;
|
|
41
|
+
return await slackApi(slackToken, 'reactions.remove', {
|
|
42
|
+
name,
|
|
43
|
+
channel,
|
|
44
|
+
timestamp,
|
|
45
|
+
file,
|
|
46
|
+
file_comment: fileComment,
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
catch (error) {
|
|
50
|
+
return toSlackError(error, 'Failed to remove reaction');
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
});
|
|
54
|
+
export const slackGetReactions = tool({
|
|
55
|
+
description: 'Get reactions for a message, file, or file comment. Provide exactly one target: channel+timestamp, file, or fileComment. A missing reactions field means zero reactions.',
|
|
56
|
+
inputSchema: z.object({
|
|
57
|
+
slackToken: tokenField,
|
|
58
|
+
channel: z.string().optional().describe('Channel ID (requires timestamp)'),
|
|
59
|
+
timestamp: z.string().optional().describe('Message ts (requires channel)'),
|
|
60
|
+
file: z.string().optional().describe('File ID'),
|
|
61
|
+
fileComment: z.string().optional().describe('File comment ID'),
|
|
62
|
+
full: z.boolean().optional().describe('Return the full user list per reaction'),
|
|
63
|
+
}),
|
|
64
|
+
execute: async ({ slackToken, channel, timestamp, file, fileComment, full }) => {
|
|
65
|
+
try {
|
|
66
|
+
const missing = requireToken(slackToken);
|
|
67
|
+
if (missing)
|
|
68
|
+
return missing;
|
|
69
|
+
return await slackApi(slackToken, 'reactions.get', {
|
|
70
|
+
channel,
|
|
71
|
+
timestamp,
|
|
72
|
+
file,
|
|
73
|
+
file_comment: fileComment,
|
|
74
|
+
full,
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
return toSlackError(error, 'Failed to get reactions');
|
|
79
|
+
}
|
|
80
|
+
},
|
|
81
|
+
});
|
|
82
|
+
export const slackListUserReactions = tool({
|
|
83
|
+
description: 'List reactions added by a user (defaults to caller). Paginate with cursor; page/count offer legacy pagination. Items repeat per reaction.',
|
|
84
|
+
inputSchema: z.object({
|
|
85
|
+
slackToken: tokenField,
|
|
86
|
+
user: z.string().optional().describe('User ID; omit for the caller'),
|
|
87
|
+
full: z.boolean().optional().describe('Include reactions on deleted items (larger payload)'),
|
|
88
|
+
limit: z.number().optional().describe('Max items (cursor pagination)'),
|
|
89
|
+
cursor: z.string().optional().describe('Pagination cursor from a previous response'),
|
|
90
|
+
count: z.number().optional().describe('Items per page (legacy pagination)'),
|
|
91
|
+
page: z.number().optional().describe('Page number (legacy pagination)'),
|
|
92
|
+
teamId: z.string().optional().describe('Workspace ID (org-level tokens only)'),
|
|
93
|
+
}),
|
|
94
|
+
execute: async ({ slackToken, teamId, ...rest }) => {
|
|
95
|
+
try {
|
|
96
|
+
const missing = requireToken(slackToken);
|
|
97
|
+
if (missing)
|
|
98
|
+
return missing;
|
|
99
|
+
return await slackApi(slackToken, 'reactions.list', { ...rest, team_id: teamId });
|
|
100
|
+
}
|
|
101
|
+
catch (error) {
|
|
102
|
+
return toSlackError(error, 'Failed to list user reactions');
|
|
103
|
+
}
|
|
104
|
+
},
|
|
105
|
+
});
|
|
106
|
+
export const slackAddStar = tool({
|
|
107
|
+
description: 'Star (save) a channel, file, file comment, or message. For messages provide channel+timestamp; otherwise file, fileComment, or channel alone.',
|
|
108
|
+
inputSchema: z.object({
|
|
109
|
+
slackToken: tokenField,
|
|
110
|
+
channel: z.string().optional().describe('Channel ID (alone, or with timestamp for a message)'),
|
|
111
|
+
timestamp: z.string().optional().describe('Message ts (requires channel)'),
|
|
112
|
+
file: z.string().optional().describe('File ID'),
|
|
113
|
+
fileComment: z.string().optional().describe('File comment ID, e.g. Fc1234567890'),
|
|
114
|
+
}),
|
|
115
|
+
execute: async ({ slackToken, channel, timestamp, file, fileComment }) => {
|
|
116
|
+
try {
|
|
117
|
+
const missing = requireToken(slackToken);
|
|
118
|
+
if (missing)
|
|
119
|
+
return missing;
|
|
120
|
+
return await slackApi(slackToken, 'stars.add', {
|
|
121
|
+
channel,
|
|
122
|
+
timestamp,
|
|
123
|
+
file,
|
|
124
|
+
file_comment: fileComment,
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
catch (error) {
|
|
128
|
+
return toSlackError(error, 'Failed to add star');
|
|
129
|
+
}
|
|
130
|
+
},
|
|
131
|
+
});
|
|
132
|
+
export const slackRemoveStar = tool({
|
|
133
|
+
description: 'Remove a star from a channel, file, file comment, or message. Same targeting rules as slackAddStar.',
|
|
134
|
+
inputSchema: z.object({
|
|
135
|
+
slackToken: tokenField,
|
|
136
|
+
channel: z.string().optional().describe('Channel ID (alone, or with timestamp for a message)'),
|
|
137
|
+
timestamp: z.string().optional().describe('Message ts (requires channel)'),
|
|
138
|
+
file: z.string().optional().describe('File ID'),
|
|
139
|
+
fileComment: z.string().optional().describe('File comment ID'),
|
|
140
|
+
}),
|
|
141
|
+
execute: async ({ slackToken, channel, timestamp, file, fileComment }) => {
|
|
142
|
+
try {
|
|
143
|
+
const missing = requireToken(slackToken);
|
|
144
|
+
if (missing)
|
|
145
|
+
return missing;
|
|
146
|
+
return await slackApi(slackToken, 'stars.remove', {
|
|
147
|
+
channel,
|
|
148
|
+
timestamp,
|
|
149
|
+
file,
|
|
150
|
+
file_comment: fileComment,
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
catch (error) {
|
|
154
|
+
return toSlackError(error, 'Failed to remove star');
|
|
155
|
+
}
|
|
156
|
+
},
|
|
157
|
+
});
|
|
158
|
+
export const slackListStarredItems = tool({
|
|
159
|
+
description: 'List items the caller starred (classic stars, not saved-for-later). Paginate with cursor (preferred) or page/count.',
|
|
160
|
+
inputSchema: z.object({
|
|
161
|
+
slackToken: tokenField,
|
|
162
|
+
count: z.number().optional().describe('Items per page'),
|
|
163
|
+
page: z.number().optional().describe('Page number'),
|
|
164
|
+
limit: z.number().optional().describe('Max items to return'),
|
|
165
|
+
cursor: z.string().optional().describe('Pagination cursor from a previous response'),
|
|
166
|
+
teamId: z.string().optional().describe('Workspace ID (org-level tokens only)'),
|
|
167
|
+
}),
|
|
168
|
+
execute: async ({ slackToken, teamId, ...rest }) => {
|
|
169
|
+
try {
|
|
170
|
+
const missing = requireToken(slackToken);
|
|
171
|
+
if (missing)
|
|
172
|
+
return missing;
|
|
173
|
+
return await slackApi(slackToken, 'stars.list', { ...rest, team_id: teamId });
|
|
174
|
+
}
|
|
175
|
+
catch (error) {
|
|
176
|
+
return toSlackError(error, 'Failed to list starred items');
|
|
177
|
+
}
|
|
178
|
+
},
|
|
179
|
+
});
|
|
180
|
+
export const slackPinItem = tool({
|
|
181
|
+
description: 'Pin a message to a channel by channel ID and exact timestamp. The message must not already be pinned.',
|
|
182
|
+
inputSchema: z.object({
|
|
183
|
+
slackToken: tokenField,
|
|
184
|
+
channel: z.string().describe('Channel ID to pin in'),
|
|
185
|
+
timestamp: z.string().describe('Message ts, e.g. 1624464000.000200'),
|
|
186
|
+
}),
|
|
187
|
+
execute: async ({ slackToken, channel, timestamp }) => {
|
|
188
|
+
try {
|
|
189
|
+
const missing = requireToken(slackToken);
|
|
190
|
+
if (missing)
|
|
191
|
+
return missing;
|
|
192
|
+
return await slackApi(slackToken, 'pins.add', { channel, timestamp });
|
|
193
|
+
}
|
|
194
|
+
catch (error) {
|
|
195
|
+
return toSlackError(error, 'Failed to pin item');
|
|
196
|
+
}
|
|
197
|
+
},
|
|
198
|
+
});
|
|
199
|
+
export const slackUnpinItem = tool({
|
|
200
|
+
description: 'Unpin a message from a channel by channel ID and timestamp. Destructive — confirm with the user first.',
|
|
201
|
+
inputSchema: z.object({
|
|
202
|
+
slackToken: tokenField,
|
|
203
|
+
channel: z.string().describe('Channel ID holding the pin'),
|
|
204
|
+
timestamp: z.string().describe('Pinned message ts'),
|
|
205
|
+
}),
|
|
206
|
+
execute: async ({ slackToken, channel, timestamp }) => {
|
|
207
|
+
try {
|
|
208
|
+
const missing = requireToken(slackToken);
|
|
209
|
+
if (missing)
|
|
210
|
+
return missing;
|
|
211
|
+
return await slackApi(slackToken, 'pins.remove', { channel, timestamp });
|
|
212
|
+
}
|
|
213
|
+
catch (error) {
|
|
214
|
+
return toSlackError(error, 'Failed to unpin item');
|
|
215
|
+
}
|
|
216
|
+
},
|
|
217
|
+
});
|
|
218
|
+
export const slackListPinnedItems = tool({
|
|
219
|
+
description: 'List messages and files pinned to a channel. The caller must have channel access.',
|
|
220
|
+
inputSchema: z.object({
|
|
221
|
+
slackToken: tokenField,
|
|
222
|
+
channel: z.string().describe('Channel, group, or DM ID'),
|
|
223
|
+
}),
|
|
224
|
+
execute: async ({ slackToken, channel }) => {
|
|
225
|
+
try {
|
|
226
|
+
const missing = requireToken(slackToken);
|
|
227
|
+
if (missing)
|
|
228
|
+
return missing;
|
|
229
|
+
return await slackApi(slackToken, 'pins.list', { channel });
|
|
230
|
+
}
|
|
231
|
+
catch (error) {
|
|
232
|
+
return toSlackError(error, 'Failed to list pinned items');
|
|
233
|
+
}
|
|
234
|
+
},
|
|
235
|
+
});
|
|
236
|
+
//# sourceMappingURL=reactions-stars-pins.js.map
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export declare const slackCreateReminder: import("ai").Tool<{
|
|
2
|
+
text: string;
|
|
3
|
+
time: string;
|
|
4
|
+
teamId?: string | undefined;
|
|
5
|
+
user?: string | undefined;
|
|
6
|
+
slackToken?: string | undefined;
|
|
7
|
+
}, any>;
|
|
8
|
+
export declare const slackGetReminder: import("ai").Tool<{
|
|
9
|
+
reminder: string;
|
|
10
|
+
teamId?: string | undefined;
|
|
11
|
+
slackToken?: string | undefined;
|
|
12
|
+
}, any>;
|
|
13
|
+
export declare const slackListReminders: import("ai").Tool<{
|
|
14
|
+
teamId?: string | undefined;
|
|
15
|
+
slackToken?: string | undefined;
|
|
16
|
+
}, any>;
|
|
17
|
+
export declare const slackDeleteReminder: import("ai").Tool<{
|
|
18
|
+
reminder: string;
|
|
19
|
+
teamId?: string | undefined;
|
|
20
|
+
slackToken?: string | undefined;
|
|
21
|
+
}, any>;
|
|
22
|
+
//# sourceMappingURL=reminders.d.ts.map
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
import { tool } from 'ai';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
import { slackApi, toSlackError, requireToken } from './client.js';
|
|
5
|
+
const tokenField = z.string().optional().describe('Injected by system; do not provide');
|
|
6
|
+
export const slackCreateReminder = tool({
|
|
7
|
+
description: 'Create a reminder with text and time. Time accepts a Unix timestamp, seconds-from-now, or natural language (e.g. "in 15 minutes", "every Monday at 10am"). Only bot tokens can target other users.',
|
|
8
|
+
inputSchema: z.object({
|
|
9
|
+
slackToken: tokenField,
|
|
10
|
+
text: z.string().describe("Reminder text, e.g. 'Submit weekly report'"),
|
|
11
|
+
time: z.string().describe("When: Unix timestamp, seconds, or natural language"),
|
|
12
|
+
user: z.string().optional().describe('Recipient user ID (omit for self; bot tokens only)'),
|
|
13
|
+
teamId: z.string().optional().describe('Workspace ID (org-level tokens only)'),
|
|
14
|
+
}),
|
|
15
|
+
execute: async ({ slackToken, text, time, user, teamId }) => {
|
|
16
|
+
try {
|
|
17
|
+
const missing = requireToken(slackToken);
|
|
18
|
+
if (missing)
|
|
19
|
+
return missing;
|
|
20
|
+
return await slackApi(slackToken, 'reminders.add', { text, time, user, team_id: teamId });
|
|
21
|
+
}
|
|
22
|
+
catch (error) {
|
|
23
|
+
return toSlackError(error, 'Failed to create reminder');
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
});
|
|
27
|
+
export const slackGetReminder = tool({
|
|
28
|
+
description: 'Get details for a reminder by ID (Rm-prefixed). Read-only.',
|
|
29
|
+
inputSchema: z.object({
|
|
30
|
+
slackToken: tokenField,
|
|
31
|
+
reminder: z.string().describe('Reminder ID, e.g. Rm12345678'),
|
|
32
|
+
teamId: z.string().optional().describe('Workspace ID (org-level tokens only)'),
|
|
33
|
+
}),
|
|
34
|
+
execute: async ({ slackToken, reminder, teamId }) => {
|
|
35
|
+
try {
|
|
36
|
+
const missing = requireToken(slackToken);
|
|
37
|
+
if (missing)
|
|
38
|
+
return missing;
|
|
39
|
+
return await slackApi(slackToken, 'reminders.info', { reminder, team_id: teamId });
|
|
40
|
+
}
|
|
41
|
+
catch (error) {
|
|
42
|
+
return toSlackError(error, 'Failed to get reminder');
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
});
|
|
46
|
+
export const slackListReminders = tool({
|
|
47
|
+
description: 'List reminders for the caller. An empty array is valid (no reminders), not an error. Match client-side on returned objects before deleting by ID.',
|
|
48
|
+
inputSchema: z.object({
|
|
49
|
+
slackToken: tokenField,
|
|
50
|
+
teamId: z.string().optional().describe('Workspace ID (org-level tokens only)'),
|
|
51
|
+
}),
|
|
52
|
+
execute: async ({ slackToken, teamId }) => {
|
|
53
|
+
try {
|
|
54
|
+
const missing = requireToken(slackToken);
|
|
55
|
+
if (missing)
|
|
56
|
+
return missing;
|
|
57
|
+
return await slackApi(slackToken, 'reminders.list', { team_id: teamId });
|
|
58
|
+
}
|
|
59
|
+
catch (error) {
|
|
60
|
+
return toSlackError(error, 'Failed to list reminders');
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
});
|
|
64
|
+
export const slackDeleteReminder = tool({
|
|
65
|
+
description: 'Delete a reminder by ID. Irreversible — confirm with the user first.',
|
|
66
|
+
inputSchema: z.object({
|
|
67
|
+
slackToken: tokenField,
|
|
68
|
+
reminder: z.string().describe('Reminder ID, e.g. Rm1234567890'),
|
|
69
|
+
teamId: z.string().optional().describe('Workspace ID (org-level tokens only)'),
|
|
70
|
+
}),
|
|
71
|
+
execute: async ({ slackToken, reminder, teamId }) => {
|
|
72
|
+
try {
|
|
73
|
+
const missing = requireToken(slackToken);
|
|
74
|
+
if (missing)
|
|
75
|
+
return missing;
|
|
76
|
+
return await slackApi(slackToken, 'reminders.delete', { reminder, team_id: teamId });
|
|
77
|
+
}
|
|
78
|
+
catch (error) {
|
|
79
|
+
return toSlackError(error, 'Failed to delete reminder');
|
|
80
|
+
}
|
|
81
|
+
},
|
|
82
|
+
});
|
|
83
|
+
//# sourceMappingURL=reminders.js.map
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
export declare const slackSearchAll: import("ai").Tool<{
|
|
2
|
+
query: string;
|
|
3
|
+
sort?: string | undefined;
|
|
4
|
+
count?: number | undefined;
|
|
5
|
+
teamId?: string | undefined;
|
|
6
|
+
page?: number | undefined;
|
|
7
|
+
slackToken?: string | undefined;
|
|
8
|
+
sortDir?: string | undefined;
|
|
9
|
+
highlight?: boolean | undefined;
|
|
10
|
+
}, any>;
|
|
11
|
+
export declare const slackSearchMessages: import("ai").Tool<{
|
|
12
|
+
query: string;
|
|
13
|
+
sort?: string | undefined;
|
|
14
|
+
count?: number | undefined;
|
|
15
|
+
teamId?: string | undefined;
|
|
16
|
+
page?: number | undefined;
|
|
17
|
+
cursor?: string | undefined;
|
|
18
|
+
slackToken?: string | undefined;
|
|
19
|
+
sortDir?: string | undefined;
|
|
20
|
+
highlight?: boolean | undefined;
|
|
21
|
+
autoPaginate?: boolean | undefined;
|
|
22
|
+
}, any>;
|
|
23
|
+
export declare const slackAssistantSearch: import("ai").Tool<{
|
|
24
|
+
query: string;
|
|
25
|
+
sort?: string | undefined;
|
|
26
|
+
limit?: number | undefined;
|
|
27
|
+
before?: number | undefined;
|
|
28
|
+
after?: number | undefined;
|
|
29
|
+
cursor?: string | undefined;
|
|
30
|
+
slackToken?: string | undefined;
|
|
31
|
+
sortDir?: string | undefined;
|
|
32
|
+
includeBots?: boolean | undefined;
|
|
33
|
+
highlight?: boolean | undefined;
|
|
34
|
+
contentTypes?: string | undefined;
|
|
35
|
+
channelTypes?: string | undefined;
|
|
36
|
+
modifiers?: string | undefined;
|
|
37
|
+
termClauses?: string[] | undefined;
|
|
38
|
+
includeDeletedUsers?: boolean | undefined;
|
|
39
|
+
includeMessageBlocks?: boolean | undefined;
|
|
40
|
+
includeContextMessages?: boolean | undefined;
|
|
41
|
+
includeArchivedChannels?: boolean | undefined;
|
|
42
|
+
disableSemanticSearch?: boolean | undefined;
|
|
43
|
+
contextChannelId?: string | undefined;
|
|
44
|
+
actionToken?: string | undefined;
|
|
45
|
+
}, any>;
|
|
46
|
+
export declare const slackGetSearchInfo: import("ai").Tool<{
|
|
47
|
+
slackToken?: string | undefined;
|
|
48
|
+
}, any>;
|
|
49
|
+
//# sourceMappingURL=search.d.ts.map
|