slashvibe-mcp 0.8.25 → 0.8.26

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,10 +1,9 @@
1
1
  # slashvibe-mcp
2
2
 
3
- Reach your collaborators from any coding session. Presence, DMs, and messages that wait across sessions
4
- between the people (and agents) you already work with — nobody has to be online at the
5
- same time.
3
+ **Message people from Claude Code or Codex.**
6
4
 
7
- **Works in:** Claude Code, Codex, Cursor — anything that speaks MCP.
5
+ Presence, DMs, and messages that wait across sessions, between the people (and agents)
6
+ you already work with — nobody has to be online at the same time.
8
7
 
9
8
  ## Install — one command
10
9
 
@@ -12,15 +11,23 @@ same time.
12
11
  npx slashvibe-mcp
13
12
  ```
14
13
 
15
- That's the whole thing: it configures Claude Code, Codex, and Cursor in one run, opens
16
- GitHub to sign you in, and your GitHub username becomes your @handle. About 30 seconds.
14
+ It configures your coding agent, opens GitHub to sign you in, and your GitHub username
15
+ becomes your @handle. About 30 seconds. **Then restart your coding session** so it loads
16
+ the /vibe server.
17
17
 
18
- **Then restart your coding agent** so it loads the /vibe MCP server. (Setup writes the
19
- config; the agent only picks up a new MCP server on start.) After the restart, run
20
- `vibe init` if you weren't signed in during setup.
18
+ ## Then talk normally
21
19
 
22
- Invited by someone? After setup and restart, say `vibe inbox` — their message is waiting.
23
- Reply and you're done; that's the whole onboarding.
20
+ ```
21
+ show me who's on /vibe
22
+ message @brightseth — what are you building?
23
+ did anyone message me?
24
+ ```
25
+
26
+ No commands to learn. Your coding agent routes those to /vibe. If it ever asks you to
27
+ sign in, say `sign in to /vibe`.
28
+
29
+ **Works in:** Claude Code and Codex. Setup also writes Cursor's config; Cursor is not part
30
+ of the walked, proven path yet.
24
31
 
25
32
  ## Put waiting messages at the top of your next Claude session
26
33
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "slashvibe-mcp",
3
- "version": "0.8.25",
3
+ "version": "0.8.26",
4
4
  "mcpName": "io.github.vibecodinginc/vibe",
5
5
  "description": "Presence + messaging for terminal coding agents (Claude Code, Codex, Cursor) — the /vibe kernel",
6
6
  "main": "index.js",
package/tools/inbox.js CHANGED
@@ -248,7 +248,18 @@ async function handler(args) {
248
248
  };
249
249
  }
250
250
 
251
- const threads = await store.getInbox(myHandle);
251
+ // A failed read is not an empty inbox. getInbox() flattens "nobody
252
+ // answered" into [] — and the tool then said "no messages yet", which every
253
+ // host repeated as "you're caught up" (routing corpus R02, 0/6). Keep the
254
+ // outcome, as vibe_start already does, and say what is actually known.
255
+ const read = await store.getInboxResult(myHandle);
256
+ if (read.ok !== true) {
257
+ return {
258
+ display: `⚠️ could not check your inbox (${read.error || 'unknown'}) — unread is unknown, not zero. Try again in a moment.`,
259
+ footer: 'minimal',
260
+ };
261
+ }
262
+ const threads = read.threads;
252
263
 
253
264
  // Check for guest session messages (multiplayer)
254
265
  let guestMessages = [];
package/version.json CHANGED
@@ -1,11 +1,9 @@
1
1
  {
2
- "version": "0.8.25",
3
- "updated": "2026-09-02",
4
- "changelog": "Waiting means their words. After you replied to someone, their next session could open with their own message echoed back as if it had just arrived; now a waiting message is always the other person's newest words. And handles keep their dashes — a GitHub login like synth-stan is looked up as written, so the thread opens instead of coming back empty.",
2
+ "version": "0.8.26",
3
+ "updated": "2026-09-04",
4
+ "changelog": "A failed read is not an empty inbox. When the inbox could not be reached, vibe_inbox said \"no messages yet\" and every host repeated it as \"you're caught up\" — six out of six runs in the Sep 4 routing corpus. Now it says what is actually known: could not check your inbox, unread is unknown, not zero. A real empty inbox still reads as empty.",
5
5
  "features": [
6
- "A waiting message at session start is always the other person's newest message, never your own reply",
7
- "Handles with dashes open the right thread",
8
- "Long threads read from the end, and the startup check finishes inside its time budget"
6
+ "vibe_inbox reports a failed read as unknown, never as caught up (routing corpus R02)"
9
7
  ],
10
8
  "deprecated": [],
11
9
  "breaking": false,