feat: claudemesh slug <old> <new> — change a mesh's slug (v1.20.0)
Some checks failed
CI / Lint (push) Has been cancelled
CI / Typecheck (push) Has been cancelled
CI / Broker tests (Postgres) (push) Has been cancelled
CI / Docker build (linux/amd64) (push) Has been cancelled

Slugs are not globally unique (mesh.id is canonical) so the route
only validates the regex and updates the row. CLI refuses a local
collision (two joined meshes sharing a slug would make the picker
ambiguous) and rewrites ~/.claudemesh/config.json on success.
Other peers pick up the new slug on next claudemesh sync.

Server: PATCH /api/cli/meshes/:slug body now accepts { name?, slug? }
— same route, just optional both fields.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Alejandro Gutiérrez
2026-05-03 15:08:32 +01:00
parent 5a1d5d6a49
commit e84914b25b
8 changed files with 142 additions and 9 deletions

View File

@@ -298,6 +298,18 @@ level, or wire claudemesh to messaging surfaces beyond Claude Code.
default returns last 30d). CLI: omitting `--mesh` on each
verb routes through the matching aggregator. *Shipped
2026-05-03 in CLI v1.16.0.*
- **v0.6.2 — `claudemesh slug <old> <new>`** — change a mesh's
URL-safe slug (the identifier the CLI picker, `--mesh` flag,
and dashboard sidebar all key on). Slugs are NOT globally
unique — `mesh.id` is canonical — so the route only validates
the regex (`^[a-z0-9][a-z0-9-]{1,31}$`); it does not enforce
cross-user uniqueness. The CLI does refuse a local collision
(two joined meshes with the same slug would make the picker
ambiguous). On success, local config rewrites the slug in
place; other peers heal on next `claudemesh sync`. Server-side
reuses the existing `PATCH /api/cli/meshes/:slug` route — body
now accepts `{ name?, slug? }`. *Shipped 2026-05-03 in CLI
v1.20.0 + web.*
- **v0.6.1 — `claudemesh rename` actually works** — adds the
missing endpoint `PATCH /api/cli/meshes/:slug` on the web app.
Lives under `/api/cli/*` (not `/api/my/*`) because the CLI's