Repository navigation
v0.5.2: no secrets in MCP configs, safer share links
Install or upgrade: pipx install quorus-ai / pipx upgrade quorus-ai
Security
quorus init,quorus joinand agent spawning wrote the relay secret in plaintext into
the MCP configs they create, including a world-readable./.mcp.jsonthat projects
often commit. Those configs now hold no secret or key:quorus-mcpreads it from your
saved profile (mode 0600).- The hub's share card told teammates to install with
curl https://q.dev/r/<code>.sh, a
domain Quorus doesn't own. It now uses your relay's own installer, likequorus share.
Both build the line only for an http(s) URL, shell-quote it so nothing in a relay URL
can run when pasted, and pipe it tobash: undersh(dash on Debian/Ubuntu) it
stopped before installing anything. - A new agent no longer gets the relay's shared secret written into its agent dir before
its first sign-in. The secret is used only when sign-in confirms the relay has no
participant keys, and that warning prints once instead of on every new agent.
Added
quorus init --secret -(or--api-key -) reads it from stdin, so it stays out of
shell history andps.llms.txtand every setup hint now use it.- Every
v*tag lists the release in the official MCP Registry from CI, after PyPI has
it: GitHub OIDC sign-in, so no token or manualmcp-publisherlogin.
Fixed
- Five MCP tools (
social_verb,publish_capability,lookup_capability,
search_capabilities,list_room_tools) answered 403 "legacy auth not permitted" on a
shared-secret relay, the setupllms.txtteaches.quorus-mcpnow claims the agent's
own participant key once and retries, and the 403 says what to set. - Agents set up by
quorus joinor spawned from the CLI got an MCP config that ran a
file the package never had, so they started with no room tools. They now run
quorus-mcp. - MCP tools could not send a message over 4 KB: the audit receipt carried the full text
and the relay refuses audit records over 4 KB. Long fields are now receipted by their
SHA-256 and size, so messages up to the room limit (50 KB) go through. - MCP tool errors say why, like the CLI: the size limit, the name rule, or when to retry.
The relay's 429 itself now says "try again in Ns", for any client. - A free opencode model that
opencode modelslists but the provider won't serve
("Model unavailable") is cooled down and the next free model is tried, as for a rate
limit, instead of the wake reporting the error. A paid model still reports it. - A redirected sign-in stops with a clear error ("the relay redirected the sign-in, so
your key was not sent", exit 3) instead of a bare HTTP error. llms.txtsaid to start the relay beforequorus init, but the relay needs the secret
init saves. The MCP server's missing-credential error now saysquorus init, as
llms.txtdoes, notquorus login.quorus doctorlisted a~/.codex/config.tomlthat didn't exist under "MCP config
found".
Full changelog: v0.5.1...v0.5.2