hermes

Connect Hermes to PostgreSQL and Slack

Hand Hermes a Postgres connection and Slack and it can answer data questions right where your team asks them. It runs the query against Postgres and posts the result back into the Slack channel or thread that prompted it. Because Hermes is strong at messaging, the answers come back phrased for people, not as a raw result dump.

Loading preview…
Opens a workflow with 247 tools ready to use.

Tools Hermes gets

Pick the operations you want and each becomes a tool the agent can call directly while it works.

PostgreSQL

40 tools
Run Select Query

Execute a SELECT query and return results as JSON

Execute Sql Statement

Execute an INSERT, UPDATE, DELETE, or other non-SELECT statement

Execute Batch Statements

Execute a statement with multiple parameter sets (batch operations)

Run Query with Cursor

Execute query with cursor for large result sets

Copy Data to Table

Bulk import data to a table using COPY

Copy Data from Table

Bulk export data from a table using COPY

List Schema Tables

List all tables in a schema

List Table Columns

Get column metadata for a table

Get Table Info

Get detailed information about a table including constraints and indexes

Create Table

Create a new table

Drop Table

Drop a table

Truncate Table

Truncate a table (remove all rows)

List Schemas

List all schemas in the database

Create Schema

Create a new schema

Drop Schema

Drop a schema

List Databases

List all databases in the PostgreSQL server

List Schema Indexes

List all indexes in a schema

Create Index

Create an index on a table

Drop Index

Drop an index

List Schema Views

List all views in a schema

Create View

Create a view

Drop View

Drop a view

List Schema Sequences

List all sequences in a schema

Get Sequence Next Value

Get the next value from a sequence (nextval)

Get Sequence Current Value

Get the current value from a sequence (currval)

Set Sequence Value

Set the current value of a sequence (setval)

List Schema Functions

List all functions in a schema

Call Database Function

Call a PostgreSQL function

List Table Constraints

List all constraints for a table

List Schema Triggers

List all triggers in a schema

List Extensions

List all installed extensions

Install Extension

Create/install an extension

List Database Users

List all database users

List Database Roles

List all database roles

Explain Query Plan

Explain a query's execution plan

Vacuum Table

Vacuum a table to reclaim storage and update statistics

Analyze Table Statistics

Analyze a table to update statistics

Begin Transaction

Begin a new transaction

Commit Transaction

Commit the current transaction

Rollback Transaction

Rollback the current transaction

Slack

207 tools
Send Message to Channel

Post a message to a channel

Update Existing Message

Update an existing message

Delete Message

Delete a message

Send Ephemeral Message

Send an ephemeral message (only visible to one user)

Schedule Message for Later

Schedule a message for later

Get Message Permalink

Get a permalink URL for a message

List Channels in Workspace

List channels in the workspace

Get Channel Information

Get information about a channel

Get Channel Messages

Get messages from a channel

List Channel Members

Get members of a channel

Join Public Channel

Join a public channel

Leave Channel

Leave a channel

Create Channel

Create a new channel

Archive Channel

Archive a channel

Unarchive Channel

Unarchive a channel

Invite Users to Channel

Invite users to a channel

Remove User from Channel

Remove a user from a channel

Set Channel Topic

Set the topic of a channel

Set Channel Purpose

Set the purpose of a channel

Rename Channel

Rename a channel

Get Thread Replies

Get thread replies

Open Direct Message

Open or resume a direct message or multi-person DM

Close Direct Message

Close a direct message or multi-person DM

Mark Channel As Read

Mark a channel as read

List Workspace Users

List all users in the workspace

Get User Information

Get information about a user

Find User by Email

Find a user by their email address

Get User Presence Status

Get a user's presence status

List User Accessible Conversations

List conversations the calling user may access

Add Bookmark to Channel

Add a bookmark to a channel

Edit Channel Bookmark

Edit an existing bookmark

List Channel Bookmarks

List bookmarks in a channel

Remove Channel Bookmark

Remove a bookmark from a channel

List Workspace User Groups

List user groups in the workspace

Create User Group

Create a new user group

Disable User Group

Disable an existing user group

Enable User Group

Enable a disabled user group

Update User Group

Update an existing user group

List Usergroup Members

List users in a user group

Update Usergroup Member List

Update the list of users in a user group

Set Do Not Disturb Snooze

Turn on Do Not Disturb for the current user

End Snooze Mode

End the current user's snooze mode

End Do Not Disturb

End the current user's Do Not Disturb session

Get Do Not Disturb Status

Get Do Not Disturb status for a user

Get Team Do Not Disturb Status

Get Do Not Disturb status for users on a team

List Custom Emoji in Workspace

List custom emoji in the workspace

Star Message or File

Star a message, file, or channel

Unstar Item

Remove a star from an item

List User Starred Items

List starred items for the current user

Get Bot Information

Get information about a bot

Create Reminder

Create a reminder

Mark Reminder Complete

Mark a reminder as complete

Delete Reminder

Delete a reminder

Get Reminder Information

Get information about a reminder

List User Reminders

List all reminders for the current user

Add Emoji Reaction to Message

Add an emoji reaction to a message

Remove Emoji Reaction from Message

Remove an emoji reaction from a message

Get Message Reactions

Get reactions on a message

Pin Message to Channel

Pin a message to a channel

Unpin Message from Channel

Unpin a message from a channel

List Pinned Items in Channel

List pinned items in a channel

List Workspace Files

List files in the workspace

Get File Information

Get information about a file

Delete File

Delete a file

Upload File to Slack

Upload a file to Slack

Create File Public Url

Create a public URL for a file (files.sharedPublicURL)

Revoke File Public Url

Revoke public URL for a file (files.revokePublicURL)

Search Workspace Messages

Search for messages in the workspace

Search Workspace Files

Search for files in the workspace (search.files)

Search Messages and Files

Search for messages and files (search.all)

Delete Scheduled Message

Delete a scheduled message (chat.deleteScheduledMessage)

List Scheduled Messages

List scheduled messages (chat.scheduledMessages.list)

Send Me Message

Share a /me message into a channel (chat.meMessage)

Provide Custom Unfurl Behavior

Provide custom unfurl behavior for URLs (chat.unfurl)

Get User Profile Information

Get a user's profile information (users.profile.get)

Set User Presence Status

Set user presence (users.setPresence)

Test Authentication

Test authentication and get info about the token

Get Workspace Information

Get information about the workspace

Test Api Connection

Test the API connection (api.test)

Revoke Oauth Token

Revoke an OAuth token (auth.revoke)

Uninstall App from Workspace

Uninstall an app from a workspace (apps.uninstall)

Get Team Billable Information

Get billable info for team members (team.billableInfo)

Get Workspace Access Logs

Get access logs for the workspace (team.accessLogs)

Get Workspace Integration Logs

Get integration logs for the workspace (team.integrationLogs)

Accept Shared Channel Invite

Accept a shared channel invite (conversations.acceptSharedInvite)

Decline Shared Channel Invite

Decline a shared channel invite (conversations.declineSharedInvite)

List Slack Connect Invites

List Slack Connect invites (conversations.listConnectInvites)

Get External File Upload Url

Get URL for uploading a file externally (files.getUploadURLExternal)

Complete External File Upload

Complete a file upload after uploading to external URL (files.completeUploadExternal)

Set User Profile Fields

Set user profile fields (users.profile.set)

Approve Slack Connect Channel Invite

Approve an invitation to a Slack Connect channel (conversations.approveSharedInvite)

Invite User to Slack Connect Channel

Invite a user to a Slack Connect channel (conversations.inviteShared)

Add Remote File to Workspace

Add a remote file (files.remote.add)

Remove Remote File

Remove a remote file (files.remote.remove)

Share Remote File to Channel

Share a remote file to a channel (files.remote.share)

List Remote Files

List remote files (files.remote.list)

List Reactions for Item

List reactions for an item (reactions.list)

Get Remote File Information

Get information about a remote file (files.remote.info)

Update Remote File

Update a remote file (files.remote.update)

Delete File Comment

Delete a file comment (files.comments.delete)

Delete User Profile Photo

Delete the user's profile photo (users.deletePhoto)

Set User As Active

Mark user as active (users.setActive) - Deprecated but still functional

Create Canvas in Channel

Create a canvas in a channel (conversations.canvases.create)

Set Channel External Invite Permissions

Set external invite permissions for a channel (conversations.externalInvitePermissions.set)

Approve Slack Connect Invite Request

Approve a Slack Connect invite request (conversations.requestSharedInvite.approve)

Deny Slack Connect Invite Request

Deny a Slack Connect invite request (conversations.requestSharedInvite.deny)

List Slack Connect Invite Requests

List Slack Connect invite requests (conversations.requestSharedInvite.list)

Get Analytics File for Date

Get analytics data for a given date (admin.analytics.getFile)

List App Activity Logs

Get logs for app activities (admin.apps.activities.list)

Approve App for Installation

Approve an app for installation (admin.apps.approve)

List Approved Apps

List approved apps (admin.apps.approved.list)

Clear App Resolution

Clear app resolution (admin.apps.clearResolution)

Lookup App Configuration

Look up app config (admin.apps.config.lookup)

Set App Configuration

Set app config (admin.apps.config.set)

Cancel App Request

Cancel an app request (admin.apps.requests.cancel)

List App Requests

List app requests (admin.apps.requests.list)

Restrict App

Restrict an app (admin.apps.restrict)

List Restricted Apps

List restricted apps (admin.apps.restricted.list)

Uninstall App

Uninstall an app (admin.apps.uninstall)

Get Allowed Audit Anomaly Item

Get allowed audit anomaly item (admin.audit.anomaly.allow.getItem)

Update Allowed Audit Anomaly Item

Update allowed audit anomaly item (admin.audit.anomaly.allow.updateItem)

Assign Entities to Auth Policy

Assign entities to auth policy (admin.auth.policy.assignEntities)

Get Entities for Auth Policy

Get entities for auth policy (admin.auth.policy.getEntities)

Remove Entities from Auth Policy

Remove entities from auth policy (admin.auth.policy.removeEntities)

Create Information Barrier

Create an information barrier (admin.barriers.create)

Delete Information Barrier

Delete an information barrier (admin.barriers.delete)

List Information Barriers

List information barriers (admin.barriers.list)

Update Information Barrier

Update an information barrier (admin.barriers.update)

Archive Conversation As Admin

Archive a conversation (admin.conversations.archive)

Bulk Archive Conversations

Bulk archive conversations (admin.conversations.bulkArchive)

Bulk Delete Conversations

Bulk delete conversations (admin.conversations.bulkDelete)

Bulk Move Conversations to Team

Bulk move conversations to a team (admin.conversations.bulkMove)

Convert Channel to Private

Convert public channel to private (admin.conversations.convertToPrivate)

Convert Channel to Public

Convert private channel to public (admin.conversations.convertToPublic)

Create Admin Conversation

Create a conversation (admin.conversations.create)

Delete Conversation

Delete a conversation (admin.conversations.delete)

Disconnect Shared Channel

Disconnect a shared channel (admin.conversations.disconnectShared)

List Ekm Original Channel Info

List original connected channel info for EKM (admin.conversations.ekm.listOriginalConnectedChannelInfo)

Get Conversation Preferences

Get conversation preferences (admin.conversations.getConversationPrefs)

Get Channel Retention Settings

Get custom retention settings (admin.conversations.getCustomRetention)

List Teams for Conversation

Get teams for a conversation (admin.conversations.getTeams)

Invite Users to Conversation As Admin

Invite users to a conversation (admin.conversations.invite)

Lookup Conversations

Look up conversations (admin.conversations.lookup)

Remove Channel Retention Settings

Remove custom retention settings (admin.conversations.removeCustomRetention)

Rename Conversation As Admin

Rename a conversation (admin.conversations.rename)

Add Idp Group to Channel

Add IDP group to channel (admin.conversations.restrictAccess.addGroup)

List Idp Groups for Channel

List IDP groups for channel (admin.conversations.restrictAccess.listGroups)

Remove Idp Group from Channel

Remove IDP group from channel (admin.conversations.restrictAccess.removeGroup)

Search Conversations

Search for conversations (admin.conversations.search)

Set Conversation Preferences

Set conversation preferences (admin.conversations.setConversationPrefs)

Set Channel Retention Settings

Set custom retention settings (admin.conversations.setCustomRetention)

Set Teams for Conversation

Set teams for a conversation (admin.conversations.setTeams)

Unarchive Conversation As Admin

Unarchive a conversation (admin.conversations.unarchive)

Add Custom Emoji

Add custom emoji (admin.emoji.add)

Add Emoji Alias

Add emoji alias (admin.emoji.addAlias)

List Custom Emoji

List custom emoji (admin.emoji.list)

Remove Custom Emoji

Remove custom emoji (admin.emoji.remove)

Rename Custom Emoji

Rename custom emoji (admin.emoji.rename)

List Functions

List functions (admin.functions.list)

Lookup Function Permissions

Look up function permissions (admin.functions.permissions.lookup)

Set Function Permissions

Set function permissions (admin.functions.permissions.set)

Approve Invite Request

Approve invite request (admin.inviteRequests.approve)

List Approved Invite Requests

List approved invite requests (admin.inviteRequests.approved.list)

List Denied Invite Requests

List denied invite requests (admin.inviteRequests.denied.list)

Deny Invite Request

Deny invite request (admin.inviteRequests.deny)

List Invite Requests

List invite requests (admin.inviteRequests.list)

Add Role Assignments

Add role assignments (admin.roles.addAssignments)

List Role Assignments

List role assignments (admin.roles.listAssignments)

Remove Role Assignments

Remove role assignments (admin.roles.removeAssignments)

List Team Admins

List team admins (admin.teams.admins.list)

Create Team

Create a team (admin.teams.create)

List Teams

List teams (admin.teams.list)

List Team Owners

List team owners (admin.teams.owners.list)

Get Team Settings

Get team settings info (admin.teams.settings.info)

Set Default Channels for Team

Set default channels for team (admin.teams.settings.setDefaultChannels)

Set Team Description

Set team description (admin.teams.settings.setDescription)

Set Team Discoverability

Set team discoverability (admin.teams.settings.setDiscoverability)

Set Team Icon

Set team icon (admin.teams.settings.setIcon)

Set Team Name

Set team name (admin.teams.settings.setName)

Add Channels to Usergroup

Add channels to usergroup (admin.usergroups.addChannels)

Add Teams to Usergroup

Add teams to usergroup (admin.usergroups.addTeams)

List Channels in Usergroup

List channels in usergroup (admin.usergroups.listChannels)

Remove Channels from Usergroup

Remove channels from usergroup (admin.usergroups.removeChannels)

Assign User to Team

Assign a user to a team (admin.users.assign)

Get User Expiration

Get expiration for a user (admin.users.getExpiration)

Invite User to Team

Invite a user to a team (admin.users.invite)

List Users in Team

List users in a team (admin.users.list)

Remove User from Team

Remove a user from a team (admin.users.remove)

Clear User Session Settings

Clear session settings (admin.users.session.clearSettings)

Get User Session Settings

Get session settings (admin.users.session.getSettings)

Invalidate User Session

Invalidate user session (admin.users.session.invalidate)

List User Sessions

List user sessions (admin.users.session.list)

Reset User Session

Reset user session (admin.users.session.reset)

Bulk Reset User Sessions

Bulk reset user sessions (admin.users.session.resetBulk)

Set User Session Settings

Set session settings (admin.users.session.setSettings)

Set User As Admin

Set a user as admin (admin.users.setAdmin)

Set User Expiration

Set expiration for a user (admin.users.setExpiration)

Set User As Owner

Set a user as owner (admin.users.setOwner)

Set User As Regular

Set a user as regular (admin.users.setRegular)

Export Unsupported Version Users

Export unsupported version users (admin.users.unsupportedVersions.export)

Add Workflow Collaborators

Add workflow collaborators (admin.workflows.collaborators.add)

Remove Workflow Collaborators

Remove workflow collaborators (admin.workflows.collaborators.remove)

Lookup Workflow Permissions

Look up workflow permissions (admin.workflows.permissions.lookup)

Search Workflows

Search workflows (admin.workflows.search)

Lookup Workflow Trigger Type Permissions

Look up workflow trigger type permissions (admin.workflows.triggers.types.permissions.lookup)

Set Workflow Trigger Type Permissions

Set workflow trigger type permissions (admin.workflows.triggers.types.permissions.set)

Unpublish Workflow

Unpublish a workflow (admin.workflows.unpublish)

What you can build

Answer a Slack question by running a Postgres query and replying with the result
Post a Slack alert when a Postgres query crosses a threshold you define
Send a scheduled Slack digest of key metrics pulled from the database
Look up a record in Postgres from a Slack request and share the details in thread

About Hermes

Hermes is an open agent built on Nous Research’s Hermes models. NoClick runs it hosted and connects your apps to it as tools, so it can do real work across your systems. Wire an integration into the agent and Hermes can use that app’s operations directly while it reasons through a task. It is a strong pick when you want an open-model agent with genuine tool access.

Built on open Hermes models
Capable general reasoning
Flexible, open-model foundation
Hosted with apps wired in as tools

Frequently asked questions

Open your Hermes agent in one click

NoClick runs Hermes for you with PostgreSQL and Slack wired in as tools. Connect your account and run.