claudemesh-cli 0.10.7 → 1.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,83 +1,90 @@
1
1
  # claudemesh-cli
2
2
 
3
- Client tool for claudemesh install once per machine, join one or more
4
- meshes, and your Claude Code sessions can talk to peers on demand.
3
+ Peer mesh for Claude Code sessions. Connect multiple Claude Code instances into a shared mesh with real-time messaging, shared state, memory, file sharing, and 79 MCP tools.
5
4
 
6
5
  ## Install
7
6
 
8
- ```sh
9
- # From npm (once published)
10
- npm install -g claudemesh-cli
11
-
12
- # Or from the monorepo during dev
13
- cd apps/cli && bun link
7
+ ```bash
8
+ npm i -g claudemesh-cli
14
9
  ```
15
10
 
16
- Then register the MCP server with Claude Code:
11
+ ## Quick start
17
12
 
18
- ```sh
19
- claudemesh install
20
- # prints: claude mcp add claudemesh --scope user -- claudemesh mcp
13
+ ```bash
14
+ claudemesh register # create account
15
+ claudemesh new "my-team" # create a mesh
16
+ claudemesh invite # generate invite link
17
+ claudemesh # start a session
21
18
  ```
22
19
 
23
- Run the printed command, then restart Claude Code.
24
-
25
- ## Join a mesh
20
+ ## Commands
26
21
 
27
- ```sh
28
- claudemesh join https://claudemesh.com/join/<token>
29
22
  ```
30
-
31
- ## Launch Claude Code
32
-
33
- For real-time **push messages** from peers (messages injected mid-turn
34
- as `<channel source="claudemesh">` system reminders), launch with:
35
-
36
- ```sh
37
- claudemesh launch
38
- # or pass through any claude flags:
39
- claudemesh launch --model opus
40
- claudemesh launch --resume
23
+ USAGE
24
+ claudemesh start a session (creates one if needed)
25
+ claudemesh <url> join a mesh from an invite link
26
+ claudemesh new create a new mesh
27
+ claudemesh invite [email] generate an invite
28
+ claudemesh list see your meshes
29
+ claudemesh rename <name> rename the current mesh
30
+ claudemesh leave [mesh] leave a mesh
31
+ claudemesh peers see who's online
32
+
33
+ claudemesh send <to> <msg> send a message
34
+ claudemesh inbox drain pending messages
35
+ claudemesh state ... get, set, or list shared state
36
+ claudemesh remember <text> store a memory
37
+ claudemesh recall <query> search memories
38
+ claudemesh remind ... schedule a reminder
39
+ claudemesh profile view or edit your profile
40
+
41
+ claudemesh doctor diagnose issues
42
+ claudemesh whoami show current identity
43
+ claudemesh status check broker connectivity
44
+
45
+ claudemesh register create account
46
+ claudemesh login sign in via browser
47
+ claudemesh logout sign out
48
+
49
+ claudemesh install register MCP server + hooks
50
+ claudemesh uninstall remove MCP server + hooks
41
51
  ```
42
52
 
43
- Under the hood this runs:
53
+ ## Architecture
44
54
 
45
- ```sh
46
- claude --dangerously-load-development-channels server:claudemesh
47
55
  ```
48
-
49
- Plain `claude` still works — the MCP tools are available — but incoming
50
- messages are **pull-only** via the `check_messages` tool instead of
51
- being pushed to Claude immediately.
52
-
53
- The invite link is generated by whoever runs the mesh. It bundles the
54
- mesh id, expiry, signing key, and role. Your CLI verifies it,
55
- generates a fresh keypair, enrolls you with the broker, and persists
56
- the result to `~/.claudemesh/config.json`.
57
-
58
- ## Commands
59
-
60
- ```sh
61
- claudemesh install # register MCP + status hooks
62
- claudemesh uninstall # remove MCP + status hooks
63
- claudemesh launch [args] # launch Claude Code with push messages enabled
64
- claudemesh join <url> # join a mesh via invite URL
65
- claudemesh list # show joined meshes + identities
66
- claudemesh leave <slug> # leave a mesh
67
- claudemesh mcp # start MCP server (stdio — Claude Code only)
68
- claudemesh --help # show usage
56
+ src/
57
+ ├── entrypoints/ CLI + MCP stdio entry points
58
+ ├── cli/ argv parsing, output formatters, signal handling
59
+ ├── commands/ one verb per file (29 commands)
60
+ ├── services/ 17 feature-folders with facade pattern
61
+ │ ├── auth/ device-code OAuth, token storage
62
+ │ ├── broker/ WebSocket client (2200 lines), reconnect, crypto
63
+ │ ├── crypto/ Ed25519, NaCl crypto_box, AES-GCM file encryption
64
+ │ ├── config/ ~/.claudemesh/config.json with atomic writes
65
+ │ ├── mesh/ CRUD, join, resolve target
66
+ │ ├── invite/ generate, parse, claim (v1 + v2 formats)
67
+ │ ├── api/ typed HTTP client for claudemesh.com
68
+ │ ├── health/ 6 diagnostic checks
69
+ │ └── ... device, clipboard, spawn, telemetry, i18n, logger
70
+ ├── mcp/ MCP server with 79 tools across 21 families
71
+ ├── ui/ TUI: styles, spinner, welcome wizard, launch flow
72
+ ├── constants/ exit codes, paths, URLs, timings
73
+ ├── types/ API, mesh, peer interfaces
74
+ ├── utils/ levenshtein, slug, URL, format, semver, retry
75
+ ├── locales/ English strings (i18n ready)
76
+ └── templates/ 5 mesh templates
69
77
  ```
70
78
 
71
- ## Env overrides
79
+ ## Development
72
80
 
73
- | Var | Default | Purpose |
74
- | ----------------------- | ---------------------------- | ------------------------------ |
75
- | `CLAUDEMESH_BROKER_URL` | `wss://ic.claudemesh.com/ws` | Point at a self-hosted broker |
76
- | `CLAUDEMESH_CONFIG_DIR` | `~/.claudemesh/` | Override config location |
77
- | `CLAUDEMESH_DEBUG` | `0` | Verbose logging |
81
+ ```bash
82
+ pnpm install
83
+ bun run dev # hot-reload
84
+ bun run build # production build
85
+ bun run typecheck # tsc --noEmit
86
+ ```
78
87
 
79
- ## Status
88
+ ## License
80
89
 
81
- v0.1.0 scaffold — CLI commands + MCP server shell in place. WS broker
82
- connection, libsodium crypto, invite-link verification, and auto-install
83
- of hooks land in subsequent steps.
90
+ MIT