Share and rate configs
Publish a whole agent (one clai profile), or an MCP server, shell context, Agent Skill, theme or prompt, to the public hub, and rate and discuss the ones you use.
The Hub, the agent hub at https://www.clai.chat/hub/, is where clai users publish the parts of a setup that are worth copying, above all whole agents. Reading and downloading needs no account. Publishing, rating and commenting need a sign-in with GitHub or Google.
Every agent has an address made of its author’s handle and its name:
https://www.clai.chat/hub/<handle>/<name>/, and the same pair is its
target, cchub:<handle>/<name>. In clai 1.0 you download the file and put it
in your config directory yourself, or run it where it is with -prp; the
agent page also shows the clai -prp cchub:… line, for a clai that reads
remote targets.
What the Hub holds
| Kind | What it is | Where it goes |
|---|---|---|
| Agent | profiles/<name>.json |
<config>/profiles/ |
| MCP server | mcpServers/<name>.json |
<config>/mcpServers/ |
| Shell context | shellContexts/<name>.json |
<config>/shellContexts/ |
| Skill | a SKILL.md file |
<config>/skills/<name>/ |
| Theme | theme.json |
<config>/ |
| Prompt | a system prompt to paste in a profile | - |
<config> is what clai confdir prints: <os.UserConfigDir()>/.clai, which
is ~/.config/.clai on Linux. See
Configuration for every file and field.
Agents
An agent is one clai profile: its model, prompt, built-in tools and MCP servers in a single JSON file, so the file you download is the file clai runs. The agent page reads the profile and puts what it does on your machine above its prompt:
- Runs on your machine lists every MCP server’s command and arguments, or
its URL. A server started with
npx,pnpx,bunxoruvxand no@versionis marked not pinned: it fetches the newest package each time the agent starts. - Secrets it expects lists the
envfilepaths,auth.token_envnames andenvkeys the profile names. The values are yours to supply. - Setup lists the model, the built-in tools, banned commands, the shell context and any key clai does not read.
An agent installed from the Hub and published again carries a source
stamp naming the target it came from, and its page says “based on” that
agent, with a link.
Publish
Sign in, open Share an agent, pick a kind, and paste the file. The first time, the form asks for your Hub handle: 2 to 39 lower-case letters, digits and dashes, suggested from your GitHub login when you signed in with GitHub. You choose it once, it is shown as the author of everything you publish, and it is never given to anyone else, even after you delete your account.
A title of 1 to 80 characters is required. The name in the address is
optional: left blank, it comes from the title. The summary (at most 280
characters), the readme (at most 8 KiB) and the example run (what follows
clai -prp cchub:<handle>/<name>, one line, at most 300 characters) are
optional. An agent or an MCP server must be a JSON object.
Remove every secret first. The form refuses the common credential shapes
(sk-, AKIA, ghp_, AIza, xox[baprs]-), any key ending in KEY,
TOKEN, SECRET or PASSWORD with a value written beside it, and an MCP
env value of 20 or more characters with no space, since clai does not
expand variables inside env. Name a key with envfile or
auth.token_env instead. That check is a net, not a guarantee: a key in a
shape it does not know still reaches the page.
Versions
The author publishes a new version from the agent’s page. The kind and the address stay; ratings and comments carry over, and each comment shows the version it was written against. Every version keeps its own download link, so a scheduled run can stay on the version you read:
curl -fsSL https://www.clai.chat/hub/<handle>/<name>/v/<n>/raw \
-o "$(clai confdir)/profiles/<name>.json"
clai -p <name> q "Do your hourly run."
/hub/<handle>/<name>/raw always serves the newest version. The page’s
For scripts line pins the version and adds its SHA-256,
cchub:<handle>/<name>@<n>#sha256=<hex>, so a run with no terminal to ask
in gets exactly the bytes you read. A link from before handles,
/hub/<slug>/, redirects to the agent’s address. Read the file before you
use it. A shared agent can name commands, MCP servers and tool filters that
run on your machine with your keys.
Rate and discuss
A signed-in reader rates an agent or config from one to five stars. One account holds one rating per config, and a second vote replaces the first. An author cannot rate their own.
Anyone signed in can comment, up to 2,000 characters and ten comments an hour. A comment shows its writer’s current rating beside it. The writer, the author of the agent and an admin can remove a comment.
The list shows agents first; pick another kind, or Everything, above it. It ranks by the mean with a prior of four three-star votes, so one five-star rating does not outrank an agent with a history. Sort by newest to see what arrived last, or by most discussed.
Withdraw
The author can withdraw a config from its page. It then answers 404 to every public read, every version’s link included, and disappears from the author’s list and page. Deleting an account removes its configs, their versions and comments, the comments it wrote, and every rating it gave or received.