# @claudemesh/cli

Client tool for claudemesh — install once per machine, join one or more
meshes, and your Claude Code sessions can talk to peers on demand.

## Install

```sh
# From npm (once published)
npm install -g @claudemesh/cli

# Or from the monorepo during dev
cd apps/cli && bun link
```

Then register the MCP server with Claude Code:

```sh
claudemesh install
# prints:  claude mcp add claudemesh --scope user -- claudemesh mcp
```

Run the printed command, then restart Claude Code.

## Join a mesh

```sh
claudemesh join ic://join/BASE64URL...
```

The invite link is generated by whoever runs the mesh. It bundles the
mesh id, expiry, signing key, and role. Your CLI verifies it,
generates a fresh keypair, enrolls you with the broker, and persists
the result to `~/.claudemesh/config.json`.

## Commands

```sh
claudemesh install         # print MCP registration command
claudemesh join <link>     # join a mesh via invite link
claudemesh list            # show joined meshes + identities
claudemesh leave <slug>    # leave a mesh
claudemesh mcp             # start MCP server (stdio — Claude Code only)
claudemesh --help          # show usage
```

## Env overrides

| Var                     | Default                      | Purpose                        |
| ----------------------- | ---------------------------- | ------------------------------ |
| `CLAUDEMESH_BROKER_URL` | `wss://ic.claudemesh.com/ws` | Point at a self-hosted broker  |
| `CLAUDEMESH_CONFIG_DIR` | `~/.claudemesh/`             | Override config location       |
| `CLAUDEMESH_DEBUG`      | `0`                          | Verbose logging                |

## Status

v0.1.0 scaffold — CLI commands + MCP server shell in place. WS broker
connection, libsodium crypto, invite-link verification, and auto-install
of hooks land in subsequent steps.
