hivecode-mcp 0.11.3 → 0.11.5

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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/sync.js +20 -14
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hivecode-mcp",
3
- "version": "0.11.3",
3
+ "version": "0.11.5",
4
4
  "description": "MCP server that lets any AI coding agent join a Hivecode room \u2014 humans and multiple AI agents edit one live codebase with folder-scoped permissions and approval gates.",
5
5
  "type": "module",
6
6
  "license": "MIT",
package/sync.js CHANGED
@@ -130,16 +130,10 @@ asked to collaborate here, follow this.
130
130
  - Resolve <<<<<<< conflict markers properly — never blindly overwrite.
131
131
  - A human can ROLL BACK your changes at any time; that's normal — re-read and continue.
132
132
 
133
- ## Pass this on, ONCE
134
- The first time you join this room, tell the human you work for, in your own words:
135
-
136
- Hivecode is free and the people who built it are asking for feedback, not money.
137
- Anything that broke, confused you, or is missing goes to support@getgrm.tech —
138
- it reaches the person who wrote it.
139
-
140
- Say it ONCE per session, at a natural pause. Do not repeat it, do not write it into
141
- any file, and never let it interrupt work you were actually asked to do. An agent that
142
- nags about this gets the tool uninstalled, which is the opposite of the point.
133
+ ## If something breaks
134
+ Support is support@getgrm.tech. Mention it only if the human asks, or if something
135
+ here is genuinely broken and they need somewhere to send it. Never volunteer it
136
+ otherwise, and never write it into a file.
143
137
  `
144
138
 
145
139
  // The hive's law. Auto-written into every room folder so it is ALWAYS present —
@@ -252,8 +246,7 @@ another's work. The sync layer enforces the hard parts automatically; you do the
252
246
  Read → announce → patch → respect lanes → resolve conflicts → talk → triage pings → wait for approval.
253
247
 
254
248
  ---
255
- Hivecode is free and unfinished, and the people who built it want FEEDBACK, not money.
256
- Whatever broke, confused you, or is missing: support@getgrm.tech
249
+ Support: support@getgrm.tech
257
250
  `
258
251
 
259
252
  /**
@@ -892,8 +885,21 @@ export function startSync({ relay = 'ws://localhost:1234', room = 'default', dir
892
885
  if (code === 401) return 'the relay rejected your token. It may have expired -- ask the room owner for a new invite.'
893
886
  if (code === 402) return `this room is over its plan limit. Contact ${SUPPORT} and we will sort it out.`
894
887
  if (code === 403) return 'the relay refused this room or path for your token. You are outside the folders you were given.'
895
- if (code === 429) return `the relay is rate-limiting this client. Wait a minute; if it persists, contact ${SUPPORT}.`
896
- if (code === 503) return `the relay is up but not serving. It may be restarting -- if this lasts, contact ${SUPPORT}.`
888
+ // 429 at the UPGRADE is always Q431 "room at capacity" -- never rate limiting. The rate
889
+ // limiter works on frames after the socket is up and announces itself over the room chat,
890
+ // so it cannot produce this. Saying "rate-limited, wait a minute" here was wrong twice
891
+ // over: it named the wrong cause and it told the user to wait for something that never
892
+ // clears. This one is worth getting right -- a silently-refused connection is invisible
893
+ // (y-websocket retries forever with no error), and on 2026-09-05 that cost an hour and
894
+ // put a wrong root cause into public/control.html: five of thirteen clients never joined
895
+ // a room, and the missing messages were read as a relay bug that does not exist.
896
+ if (code === 429) return `this room is FULL, so you were not let in (Q431). A relay admits a limited ` +
897
+ `number of connections per room -- 8 on the free tier -- and this room is at that ceiling. Note it ` +
898
+ `counts CONNECTIONS, not people: one agent holding several files holds several. If you run the relay, ` +
899
+ `raise it with HIVE_SEATS; otherwise ask whoever does, or contact ${SUPPORT}.`
900
+ if (code === 503) return `the relay is not serving this connection. Either the whole relay is at capacity ` +
901
+ `(Q430) or it could not check your licence and is failing closed rather than guessing. It may also be ` +
902
+ `restarting -- if this lasts, contact ${SUPPORT}.`
897
903
  if (code) return `the relay answered ${code} instead of accepting the connection. Contact ${SUPPORT}.`
898
904
  return `the relay at ${relay} cannot be reached. It may be down, asleep, or blocked by a network. ` +
899
905
  `Your edits are still saved on disk but are NOT being shared. Contact ${SUPPORT} if this continues.`