The Slack experience
Hermes's Slack gateway is good. It generates the app manifest for you, runs on Socket Mode so no public URL is needed, streams replies through Slack's native streaming API, shows plan progress as task cards, formats with Block Kit, and answers slash commands. Tables past Slack's limits fall back to monospace, long output is capped at five posts, and custom status text needs an extra scope.
Chickpea does the same things and a few more, because Slack is all it does. Replies stream under the teammate's own name, task rows tick off above the answer, the status line under the composer narrates each step, seven or more rows come back as a native sortable table, and every reply ends with a footer naming the teammate and model with a link to change either. Teammates are Slack user groups, so @support is a handle people search for, not a bot user.
A personal agent that grows, or a workspace with roles
Hermes is built to grow with you. It curates its own memory, writes new skills when it solves a problem, and improves them while it works. Bot Mode turns that into a team of specialist bots with their own model, memory, and skills, coordinated through mentions in group chats. Access is gated by a list of Slack member IDs in the config; without it, the gateway denies everyone. For teams, Nous sells Hermes Business: a hosted agent for every member on Nous infrastructure, one balance with per-member spending caps, and skills that spread across the team. Its open source security policy still says Hermes is a single-tenant personal agent and that everyone it lets in is equally trusted.
Chickpea starts from the workspace. Every full member of the Slack workspace is provisioned the first time they talk to a teammate; guests and Slack Connect users are not. Members create teammates and edit the ones whose policy allows it. Admins and Owners manage providers. Changes that widen a teammate's reach come back as a proposal to approve in the thread. Memory is one per teammate, readable and editable by you, and skills come from GitHub or skills.sh rather than being written by the agent.
Where the credentials live
Hermes runs tools on the host it lives on, with API keys in its environment or, since v0.21.2, in a password-blind vault backed by 1Password, Bitwarden, or a local store. A bot with the Gmail credential has it because the process does. Dangerous shell commands wait for approval by default, with one-tap buttons in Slack, and writes to its own skill and memory files need approval too. Its security policy names the operating system as the only real boundary, and its terminal backend defaults to the local host.
A Chickpea teammate has the accounts connected to it and no other. The model picks an account by name; the secret is attached at the last moment, on the way out, and never appears in model context or tool arguments. Connecting an account is a short-lived link that finishes in the browser, locked to one teammate and one connector. Sending, deleting, publishing, and bulk changes wait for a person unless the teammate's instructions say otherwise.
Deployment
Hermes installs with one shell command on Linux, macOS, WSL2, native Windows, or Android, and runs on a $5 VPS, a GPU cluster, Docker, SSH, Daytona, Modal, or Vercel Sandbox. In our September 29, 2026 run the install script took 150 seconds on a clean Debian container and the official image idled under 0.4 GiB of memory. Someone keeps that process up, applies updates, and holds the config, unless Nous hosts it with Hermes Cloud from $0.56 a day.
Chickpea is a Deploy to Cloudflare button that clones the repository into your account, then connect Slack, pick a provider, send a message. On Cloudflare it runs on Workers with Durable Objects and D1, so nothing needs to stay alive. There is also a Node path for a host you run. On Cloudflare you can start with no API key at all through Workers AI.