hivecode-mcp 0.14.0 → 0.14.2

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 (72) hide show
  1. package/HIVE_RULES.md +98 -98
  2. package/LICENSE +21 -21
  3. package/README.md +421 -421
  4. package/core.js +91 -91
  5. package/docs/ALWAYS_ON.md +310 -310
  6. package/docs/GITHUB_WORKFLOW.md +394 -394
  7. package/docs/HIVE_RULES.md +41 -41
  8. package/docs/MCP.md +157 -157
  9. package/docs/QUICKSTART.md +266 -266
  10. package/docs/SELF_HOSTING.md +256 -256
  11. package/docs/SLACK_SETUP.md +474 -450
  12. package/docs/TROUBLESHOOTING.md +105 -105
  13. package/hive-activity.js +336 -336
  14. package/hive-authors.js +46 -44
  15. package/hive-await.js +230 -230
  16. package/hive-branch.js +608 -607
  17. package/hive-busy.js +88 -88
  18. package/hive-coord.js +110 -110
  19. package/hive-gate.js +135 -135
  20. package/hive-github.js +2004 -1944
  21. package/hive-hook-install.js +179 -179
  22. package/hive-instructions.js +74 -74
  23. package/hive-land.js +695 -691
  24. package/hive-listen.js +81 -81
  25. package/hive-mailbox.js +520 -520
  26. package/hive-mcp-http.js +591 -580
  27. package/hive-mcp.js +2156 -2093
  28. package/hive-mux-proto.js +58 -58
  29. package/hive-mux.js +351 -350
  30. package/hive-notify.js +234 -233
  31. package/hive-obligations.js +247 -247
  32. package/hive-poll-proto.js +50 -50
  33. package/hive-pr-staleness.js +189 -189
  34. package/hive-pr.js +600 -512
  35. package/hive-privacy.js +327 -327
  36. package/hive-receipts.js +233 -233
  37. package/hive-relay-health.js +234 -230
  38. package/hive-repos.js +430 -430
  39. package/hive-room-key.js +210 -209
  40. package/hive-room-mode.js +1668 -1668
  41. package/hive-room-watcher.js +562 -561
  42. package/hive-secrets.js +89 -89
  43. package/hive-session.js +114 -114
  44. package/hive-setup.js +560 -558
  45. package/hive-slack-agent.js +408 -396
  46. package/hive-slack.js +2384 -1809
  47. package/hive-stdio.js +172 -172
  48. package/hive-stop-hook.js +293 -293
  49. package/hive-throttle.js +118 -118
  50. package/hive-time.js +71 -71
  51. package/hive-transport.js +578 -353
  52. package/hive-update.js +58 -58
  53. package/hive-version.js +110 -110
  54. package/hive-webhook.js +55 -54
  55. package/icr-merge.js +58 -58
  56. package/icr.js +851 -851
  57. package/lang-brace.js +305 -305
  58. package/lang-js.js +651 -651
  59. package/lang-json.js +211 -211
  60. package/lang-python.js +588 -588
  61. package/lang-ruby.js +230 -230
  62. package/lang-toml.js +136 -136
  63. package/lang-yaml.js +183 -183
  64. package/limits.js +413 -413
  65. package/package.json +192 -192
  66. package/reconcile.cjs +621 -614
  67. package/slack-app-manifest-agent.json +61 -61
  68. package/slack-app-manifest-inbound.json +36 -36
  69. package/slack-app-manifest.json +27 -27
  70. package/substrate.js +252 -252
  71. package/sync.js +5189 -4994
  72. package/token.js +201 -201
package/package.json CHANGED
@@ -1,192 +1,192 @@
1
- {
2
- "name": "hivecode-mcp",
3
- "version": "0.14.0",
4
- "description": "MCP server that lets any AI coding agent join a Hivecode room — humans and multiple AI agents edit one live codebase with folder-scoped permissions and approval gates.",
5
- "type": "module",
6
- "license": "MIT",
7
- "homepage": "https://hivecode.getgrm.tech",
8
- "bugs": {
9
- "url": "https://hivecode.getgrm.tech/contact",
10
- "email": "support@getgrm.tech"
11
- },
12
- "keywords": [
13
- "mcp",
14
- "model-context-protocol",
15
- "ai-agents",
16
- "multi-agent",
17
- "claude",
18
- "collaboration",
19
- "realtime",
20
- "yjs"
21
- ],
22
- "bin": {
23
- "hivecode-mcp": "hive-mcp.js",
24
- "hivecode-hook": "hive-hook-install.js",
25
- "hivecode-await": "hive-await.js"
26
- },
27
- "files": [
28
- "hive-mcp.js",
29
- "hive-await.js",
30
- "hive-listen.js",
31
- "hive-session.js",
32
- "hive-mux.js",
33
- "hive-mux-proto.js",
34
- "hive-transport.js",
35
- "hive-poll-proto.js",
36
- "hive-version.js",
37
- "hive-pr-staleness.js",
38
- "hive-pr.js",
39
- "hive-branch.js", "hive-land.js", "hive-repos.js", "hive-room-mode.js", "hive-room-watcher.js",
40
- "hive-mailbox.js",
41
- "hive-obligations.js",
42
- "hive-receipts.js",
43
- "hive-throttle.js",
44
- "hive-instructions.js",
45
- "hive-activity.js",
46
- "hive-relay-health.js",
47
- "hive-privacy.js",
48
- "hive-secrets.js",
49
- "hive-room-key.js",
50
- "hive-setup.js",
51
- "hive-stdio.js",
52
- "hive-update.js",
53
- "docs/SELF_HOSTING.md",
54
- "reconcile.cjs",
55
- "hive-busy.js",
56
- "hive-stop-hook.js",
57
- "hive-hook-install.js",
58
- "sync.js",
59
- "core.js",
60
- "limits.js",
61
- "token.js",
62
- "icr.js",
63
- "lang-js.js",
64
- "lang-brace.js",
65
- "lang-python.js",
66
- "lang-ruby.js",
67
- "lang-json.js",
68
- "lang-yaml.js",
69
- "lang-toml.js",
70
- "icr-merge.js",
71
- "hive-coord.js",
72
- "hive-authors.js",
73
- "hive-gate.js",
74
- "substrate.js",
75
- "HIVE_RULES.md",
76
- "docs/MCP.md",
77
- "README.md",
78
- "LICENSE",
79
- "hive-github.js",
80
- "hive-notify.js",
81
- "hive-webhook.js",
82
- "hive-slack.js",
83
- "hive-slack-agent.js",
84
- "hive-mcp-http.js",
85
- "slack-app-manifest.json",
86
- "slack-app-manifest-inbound.json",
87
- "slack-app-manifest-agent.json",
88
- "hive-time.js",
89
- "docs/GITHUB_WORKFLOW.md",
90
- "docs/QUICKSTART.md",
91
- "docs/TROUBLESHOOTING.md",
92
- "docs/SLACK_SETUP.md",
93
- "docs/ALWAYS_ON.md"
94
- ],
95
- "publishConfig": {
96
- "access": "public"
97
- },
98
- "scripts": {
99
- "prepare": "node scripts/install-hooks.mjs || exit 0",
100
- "start": "node server.js",
101
- "relay": "node server.js",
102
- "sync:engine": "node sync-engine.mjs",
103
- "check:engine": "node sync-engine.mjs --check",
104
- "check:deps": "node scripts/check-deps.mjs",
105
- "pretest": "node scripts/check-deps.mjs && node scripts/sync-engine.mjs --check && node scripts/check-files.mjs && node scripts/check-deploy.mjs",
106
- "test": "node tests/test.js",
107
- "test:features": "node tests/features-test.mjs",
108
- "test:features:shape": "node tests/features-test.mjs --shape",
109
- "test:learnings": "node tests/learnings-test.mjs",
110
- "test:docs": "node tests/readme-promises-test.mjs && node tests/rules-promises-test.mjs && node tests/site-cli-usage-test.mjs",
111
- "test:setup": "node tests/setup-test.mjs --package",
112
- "test:mcp": "node tests/mcp-conformance-test.mjs",
113
- "test:recreate": "node tests/blind-recreate-test.mjs",
114
- "test:liveness": "node tests/presence-listener-test.mjs && node tests/agent-liveness-test.mjs && node tests/unreachable-recipient-test.mjs",
115
- "test:attest": "node tests/attest-stale-test.mjs && node tests/hive-smp-test.js",
116
- "build:ext": "node scripts/build-icr-cjs.cjs && node scripts/build-privacy-cjs.cjs",
117
- "test:selfhost": "node tests/relay-pin-test.mjs && node tests/self-host-test.mjs && node tests/extension-privacy-parity-test.mjs",
118
- "test:hardening": "node tests/genesis-claim-test.mjs && node tests/bare-root-write-test.mjs && node tests/version-truth-test.mjs && node tests/room-repo-drift-test.mjs && node tests/first-contact-refusal-test.mjs && node tests/first-contact-summary-test.mjs && node tests/open-file-cap-test.mjs && node tests/learnings-test.mjs && node tests/presence-listener-test.mjs && node tests/agent-liveness-test.mjs && node tests/unreachable-recipient-test.mjs && node tests/join-honesty-test.mjs && node tests/relay-diagnosis-test.mjs && node tests/blind-recreate-test.mjs && node tests/relay-pin-test.mjs && node tests/self-host-test.mjs && node tests/extension-privacy-parity-test.mjs && node tests/readme-promises-test.mjs && node tests/setup-test.mjs && node tests/mcp-conformance-test.mjs && node tests/update-notice-test.mjs && node tests/mux-test.mjs && node tests/own-files-quiet-test.mjs && node tests/wiped-relay-rejoin-test.mjs && node tests/token-budget-test.mjs && node tests/relay-presence-sweep-test.mjs && node tests/join-scale-test.mjs && node tests/join-queue-delete-test.mjs && node tests/delete-safety-test.mjs && node tests/relay-no-echo-test.mjs && node tests/genesis-collision-test.mjs && node tests/dead-heat-verdict-test.mjs && node tests/dead-heat-forced-test.mjs && node tests/deleted-dir-write-test.mjs && node tests/hive-await-test.mjs && node tests/listener-mail-once-test.mjs && node tests/build-identity-test.mjs && node tests/task-authority-test.mjs && node tests/grm-private-test.mjs && node tests/mixed-build-test.mjs && node tests/duplicate-name-test.mjs && node tests/unwritable-file-test.mjs && node tests/relay-claim-delete-test.mjs && node tests/secret-gate-test.mjs && node tests/package-closure-test.mjs && node tests/guessable-room-test.mjs && node tests/case-collision-test.mjs && node tests/case-rename-test.mjs && node tests/collided-notice-test.mjs && node tests/secured-invite-test.mjs && node tests/personal-room-test.mjs &&node tests/attest-stale-test.mjs && node tests/hive-smp-test.js && node tests/branch-test.mjs && node tests/unshared-binary-notice-test.mjs && node tests/binary-sync-test.mjs && node tests/doc-cap-remeasure-test.mjs && node tests/session-resume-test.mjs && node tests/shared-launch-folder-test.mjs && node tests/portable-agent-config-test.mjs",
119
- "test:extension": "node tests/extension-parity-test.mjs && node tests/extension-privacy-parity-test.mjs",
120
- "test:ceiling": "node tests/refused-visible-test.mjs && node tests/ceiling-no-data-loss-test.mjs",
121
- "test:mux": "node tests/mux-test.mjs && node tests/mux-open-turns-test.mjs",
122
- "test:live": "node scripts/live-stranger.mjs",
123
- "test:tokens": "node tests/token-budget-test.mjs && node tests/status-cost-test.mjs",
124
- "test:identity": "node tests/identity-audit-test.mjs",
125
- "test:billing": "node tests/billing-test.mjs",
126
- "test:license": "node tests/hive-license-test.js",
127
- "test:money": "node tests/payment-e2e-test.mjs && node tests/subscribe-test.mjs && node tests/lifecycle-test.mjs && node tests/billing-test.mjs && node tests/hive-license-test.js && node tests/recover-test.mjs",
128
- "check:web": "tsc --noEmit",
129
- "build:web": "esbuild web/src/main.ts --bundle --minify --format=iife --target=es2019 --outfile=public/app.js",
130
- "build:crdt": "esbuild web/crdt.js --bundle --minify --format=esm --target=es2019 --outfile=public/hive-crdt.js",
131
- "test:substrate": "node substrate-test.js",
132
- "test:substrate:live": "node substrate-live-test.js",
133
- "test:substrate:enforce": "node substrate-enforce-test.js",
134
- "test:substrate:authority": "node substrate-authority-test.js",
135
- "test:substrate:all": "node substrate-test.js && node substrate-live-test.js && node substrate-enforce-test.js && node substrate-authority-test.js",
136
- "test:recover": "node tests/recover-test.mjs",
137
- "test:mailbox": "node tests/mailbox-test.mjs && node tests/mcp-wait-test.mjs && node tests/mailbox-noise-test.mjs",
138
- "test:stophook": "node tests/stop-hook-test.mjs",
139
- "test:limits": "node tests/limits-test.mjs && node tests/rate-hold-test.mjs && node tests/persist-batch-test.mjs",
140
- "test:merge": "node tests/diff3-test.mjs && node tests/merge-balloon-test.mjs && node tests/icr-merge-test.js && node tests/icr-gap-comments-test.mjs && node tests/icr-comment-fuzz-test.mjs",
141
- "test:rejoin": "node tests/rejoin-clobber-test.mjs",
142
- "test:prod": "node tests/test.js && node tests/firstrun-test.mjs && node tests/credential-split-test.mjs && node tests/limits-test.mjs && node tests/usage-meter-test.mjs && node tests/rejoin-clobber-test.mjs && node tests/stop-hook-test.mjs && node tests/coordination-test.mjs && node tests/control-panel-test.mjs && node tests/hive-map-test.mjs && node tests/hive-gate-test.mjs && node tests/durability-test.mjs && node tests/payment-e2e-test.mjs && node tests/subscribe-test.mjs && node tests/lifecycle-test.mjs && node tests/billing-test.mjs && node tests/hive-license-test.js && node tests/recover-test.mjs && node demo/wrap-test.mjs",
143
- "test:meter": "node tests/usage-meter-test.mjs",
144
- "test:subscribe": "node tests/subscribe-test.mjs",
145
- "test:cred": "node tests/credential-split-test.mjs",
146
- "test:firstrun": "node tests/firstrun-test.mjs",
147
- "test:lifecycle": "node tests/lifecycle-test.mjs",
148
- "test:payment": "node tests/payment-e2e-test.mjs",
149
- "scorecard": "node scorecard.mjs",
150
- "demo:video": "node demo/record.mjs",
151
- "test:wrap": "node demo/wrap-test.mjs",
152
- "demo:panel": "node demo/record-panel.mjs",
153
- "demo:all": "node demo/record.mjs && node demo/record-panel.mjs",
154
- "check:files": "node scripts/check-files.mjs",
155
- "prepublishOnly": "node scripts/check-files.mjs",
156
- "demo:cast": "node demo/cast.mjs --dry-run",
157
- "check:deploy": "node scripts/check-deploy.mjs",
158
- "test:coordination": "node tests/coordination-test.mjs",
159
- "test:panel": "node tests/control-panel-test.mjs && node tests/control-room-walk.mjs",
160
- "test:map": "node tests/hive-map-test.mjs",
161
- "test:gate": "node tests/hive-gate-test.mjs",
162
- "bench:ab": "node bench/coordination-ab.mjs",
163
- "test:branch": "node tests/branch-test.mjs",
164
- "test:github": "node tests/github-cli-test.mjs && node tests/notify-test.mjs && node tests/github-watcher-test.mjs"
165
- },
166
- "engines": {
167
- "node": ">=18"
168
- },
169
- "dependencies": {
170
- "acorn": "^8.17.0",
171
- "ignore": "^7.0.5",
172
- "lib0": "^0.2.117",
173
- "lodash.debounce": "^4.0.8",
174
- "ws": "^8.18.0",
175
- "y-protocols": "^1.0.6",
176
- "y-websocket": "^3.1.0",
177
- "yjs": "^13.6.18"
178
- },
179
- "devDependencies": {
180
- "@anthropic-ai/sdk": "^0.104.2",
181
- "@modelcontextprotocol/sdk": "^1.30.0",
182
- "@types/node": "^26.1.2",
183
- "esbuild": "^0.28.1",
184
- "typescript": "^7.0.2"
185
- },
186
- "main": "core.js",
187
- "directories": {
188
- "doc": "docs",
189
- "test": "tests"
190
- },
191
- "author": "Ganesh Shivlal Kute <support@getgrm.tech>"
192
- }
1
+ {
2
+ "name": "hivecode-mcp",
3
+ "version": "0.14.2",
4
+ "description": "MCP server that lets any AI coding agent join a Hivecode room — humans and multiple AI agents edit one live codebase with folder-scoped permissions and approval gates.",
5
+ "type": "module",
6
+ "license": "MIT",
7
+ "homepage": "https://hivecode.getgrm.tech",
8
+ "bugs": {
9
+ "url": "https://hivecode.getgrm.tech/contact",
10
+ "email": "support@getgrm.tech"
11
+ },
12
+ "keywords": [
13
+ "mcp",
14
+ "model-context-protocol",
15
+ "ai-agents",
16
+ "multi-agent",
17
+ "claude",
18
+ "collaboration",
19
+ "realtime",
20
+ "yjs"
21
+ ],
22
+ "bin": {
23
+ "hivecode-mcp": "hive-mcp.js",
24
+ "hivecode-hook": "hive-hook-install.js",
25
+ "hivecode-await": "hive-await.js"
26
+ },
27
+ "files": [
28
+ "hive-mcp.js",
29
+ "hive-await.js",
30
+ "hive-listen.js",
31
+ "hive-session.js",
32
+ "hive-mux.js",
33
+ "hive-mux-proto.js",
34
+ "hive-transport.js",
35
+ "hive-poll-proto.js",
36
+ "hive-version.js",
37
+ "hive-pr-staleness.js",
38
+ "hive-pr.js",
39
+ "hive-branch.js", "hive-land.js", "hive-repos.js", "hive-room-mode.js", "hive-room-watcher.js",
40
+ "hive-mailbox.js",
41
+ "hive-obligations.js",
42
+ "hive-receipts.js",
43
+ "hive-throttle.js",
44
+ "hive-instructions.js",
45
+ "hive-activity.js",
46
+ "hive-relay-health.js",
47
+ "hive-privacy.js",
48
+ "hive-secrets.js",
49
+ "hive-room-key.js",
50
+ "hive-setup.js",
51
+ "hive-stdio.js",
52
+ "hive-update.js",
53
+ "docs/SELF_HOSTING.md",
54
+ "reconcile.cjs",
55
+ "hive-busy.js",
56
+ "hive-stop-hook.js",
57
+ "hive-hook-install.js",
58
+ "sync.js",
59
+ "core.js",
60
+ "limits.js",
61
+ "token.js",
62
+ "icr.js",
63
+ "lang-js.js",
64
+ "lang-brace.js",
65
+ "lang-python.js",
66
+ "lang-ruby.js",
67
+ "lang-json.js",
68
+ "lang-yaml.js",
69
+ "lang-toml.js",
70
+ "icr-merge.js",
71
+ "hive-coord.js",
72
+ "hive-authors.js",
73
+ "hive-gate.js",
74
+ "substrate.js",
75
+ "HIVE_RULES.md",
76
+ "docs/MCP.md",
77
+ "README.md",
78
+ "LICENSE",
79
+ "hive-github.js",
80
+ "hive-notify.js",
81
+ "hive-webhook.js",
82
+ "hive-slack.js",
83
+ "hive-slack-agent.js",
84
+ "hive-mcp-http.js",
85
+ "slack-app-manifest.json",
86
+ "slack-app-manifest-inbound.json",
87
+ "slack-app-manifest-agent.json",
88
+ "hive-time.js",
89
+ "docs/GITHUB_WORKFLOW.md",
90
+ "docs/QUICKSTART.md",
91
+ "docs/TROUBLESHOOTING.md",
92
+ "docs/SLACK_SETUP.md",
93
+ "docs/ALWAYS_ON.md"
94
+ ],
95
+ "publishConfig": {
96
+ "access": "public"
97
+ },
98
+ "scripts": {
99
+ "prepare": "node scripts/install-hooks.mjs || exit 0",
100
+ "start": "node server.js",
101
+ "relay": "node server.js",
102
+ "sync:engine": "node sync-engine.mjs",
103
+ "check:engine": "node sync-engine.mjs --check",
104
+ "check:deps": "node scripts/check-deps.mjs",
105
+ "pretest": "node scripts/check-deps.mjs && node scripts/sync-engine.mjs --check && node scripts/check-files.mjs && node scripts/check-deploy.mjs",
106
+ "test": "node tests/test.js",
107
+ "test:features": "node tests/features-test.mjs",
108
+ "test:features:shape": "node tests/features-test.mjs --shape",
109
+ "test:learnings": "node tests/learnings-test.mjs",
110
+ "test:docs": "node tests/readme-promises-test.mjs && node tests/rules-promises-test.mjs && node tests/site-cli-usage-test.mjs",
111
+ "test:setup": "node tests/setup-test.mjs --package",
112
+ "test:mcp": "node tests/mcp-conformance-test.mjs",
113
+ "test:recreate": "node tests/blind-recreate-test.mjs",
114
+ "test:liveness": "node tests/presence-listener-test.mjs && node tests/agent-liveness-test.mjs && node tests/unreachable-recipient-test.mjs",
115
+ "test:attest": "node tests/attest-stale-test.mjs && node tests/hive-smp-test.js",
116
+ "build:ext": "node scripts/build-icr-cjs.cjs && node scripts/build-privacy-cjs.cjs",
117
+ "test:selfhost": "node tests/relay-pin-test.mjs && node tests/self-host-test.mjs && node tests/extension-privacy-parity-test.mjs",
118
+ "test:hardening": "node tests/genesis-claim-test.mjs && node tests/bare-root-write-test.mjs && node tests/version-truth-test.mjs && node tests/room-repo-drift-test.mjs && node tests/first-contact-refusal-test.mjs && node tests/first-contact-summary-test.mjs && node tests/open-file-cap-test.mjs && node tests/learnings-test.mjs && node tests/presence-listener-test.mjs && node tests/agent-liveness-test.mjs && node tests/unreachable-recipient-test.mjs && node tests/join-honesty-test.mjs && node tests/relay-diagnosis-test.mjs && node tests/blind-recreate-test.mjs && node tests/relay-pin-test.mjs && node tests/self-host-test.mjs && node tests/extension-privacy-parity-test.mjs && node tests/readme-promises-test.mjs && node tests/setup-test.mjs && node tests/mcp-conformance-test.mjs && node tests/update-notice-test.mjs && node tests/mux-test.mjs && node tests/own-files-quiet-test.mjs && node tests/wiped-relay-rejoin-test.mjs && node tests/token-budget-test.mjs && node tests/relay-presence-sweep-test.mjs && node tests/join-scale-test.mjs && node tests/join-queue-delete-test.mjs && node tests/delete-safety-test.mjs && node tests/relay-no-echo-test.mjs && node tests/genesis-collision-test.mjs && node tests/dead-heat-verdict-test.mjs && node tests/dead-heat-forced-test.mjs && node tests/deleted-dir-write-test.mjs && node tests/hive-await-test.mjs && node tests/listener-mail-once-test.mjs && node tests/build-identity-test.mjs && node tests/task-authority-test.mjs && node tests/grm-private-test.mjs && node tests/mixed-build-test.mjs && node tests/duplicate-name-test.mjs && node tests/unwritable-file-test.mjs && node tests/relay-claim-delete-test.mjs && node tests/secret-gate-test.mjs && node tests/package-closure-test.mjs && node tests/guessable-room-test.mjs && node tests/case-collision-test.mjs && node tests/case-rename-test.mjs && node tests/collided-notice-test.mjs && node tests/secured-invite-test.mjs && node tests/personal-room-test.mjs &&node tests/attest-stale-test.mjs && node tests/hive-smp-test.js && node tests/branch-test.mjs && node tests/unshared-binary-notice-test.mjs && node tests/binary-sync-test.mjs && node tests/doc-cap-remeasure-test.mjs && node tests/session-resume-test.mjs && node tests/shared-launch-folder-test.mjs && node tests/portable-agent-config-test.mjs",
119
+ "test:extension": "node tests/extension-parity-test.mjs && node tests/extension-privacy-parity-test.mjs",
120
+ "test:ceiling": "node tests/refused-visible-test.mjs && node tests/ceiling-no-data-loss-test.mjs",
121
+ "test:mux": "node tests/mux-test.mjs && node tests/mux-open-turns-test.mjs",
122
+ "test:live": "node scripts/live-stranger.mjs",
123
+ "test:tokens": "node tests/token-budget-test.mjs && node tests/status-cost-test.mjs",
124
+ "test:identity": "node tests/identity-audit-test.mjs",
125
+ "test:billing": "node tests/billing-test.mjs",
126
+ "test:license": "node tests/hive-license-test.js",
127
+ "test:money": "node tests/payment-e2e-test.mjs && node tests/subscribe-test.mjs && node tests/lifecycle-test.mjs && node tests/billing-test.mjs && node tests/hive-license-test.js && node tests/recover-test.mjs",
128
+ "check:web": "tsc --noEmit",
129
+ "build:web": "esbuild web/src/main.ts --bundle --minify --format=iife --target=es2019 --outfile=public/app.js",
130
+ "build:crdt": "esbuild web/crdt.js --bundle --minify --format=esm --target=es2019 --outfile=public/hive-crdt.js",
131
+ "test:substrate": "node substrate-test.js",
132
+ "test:substrate:live": "node substrate-live-test.js",
133
+ "test:substrate:enforce": "node substrate-enforce-test.js",
134
+ "test:substrate:authority": "node substrate-authority-test.js",
135
+ "test:substrate:all": "node substrate-test.js && node substrate-live-test.js && node substrate-enforce-test.js && node substrate-authority-test.js",
136
+ "test:recover": "node tests/recover-test.mjs",
137
+ "test:mailbox": "node tests/mailbox-test.mjs && node tests/mcp-wait-test.mjs && node tests/mailbox-noise-test.mjs",
138
+ "test:stophook": "node tests/stop-hook-test.mjs",
139
+ "test:limits": "node tests/limits-test.mjs && node tests/rate-hold-test.mjs && node tests/persist-batch-test.mjs",
140
+ "test:merge": "node tests/diff3-test.mjs && node tests/merge-balloon-test.mjs && node tests/icr-merge-test.js && node tests/icr-gap-comments-test.mjs && node tests/icr-comment-fuzz-test.mjs",
141
+ "test:rejoin": "node tests/rejoin-clobber-test.mjs",
142
+ "test:prod": "node tests/test.js && node tests/firstrun-test.mjs && node tests/credential-split-test.mjs && node tests/limits-test.mjs && node tests/usage-meter-test.mjs && node tests/rejoin-clobber-test.mjs && node tests/stop-hook-test.mjs && node tests/coordination-test.mjs && node tests/control-panel-test.mjs && node tests/hive-map-test.mjs && node tests/hive-gate-test.mjs && node tests/durability-test.mjs && node tests/payment-e2e-test.mjs && node tests/subscribe-test.mjs && node tests/lifecycle-test.mjs && node tests/billing-test.mjs && node tests/hive-license-test.js && node tests/recover-test.mjs && node demo/wrap-test.mjs",
143
+ "test:meter": "node tests/usage-meter-test.mjs",
144
+ "test:subscribe": "node tests/subscribe-test.mjs",
145
+ "test:cred": "node tests/credential-split-test.mjs",
146
+ "test:firstrun": "node tests/firstrun-test.mjs",
147
+ "test:lifecycle": "node tests/lifecycle-test.mjs",
148
+ "test:payment": "node tests/payment-e2e-test.mjs",
149
+ "scorecard": "node scorecard.mjs",
150
+ "demo:video": "node demo/record.mjs",
151
+ "test:wrap": "node demo/wrap-test.mjs",
152
+ "demo:panel": "node demo/record-panel.mjs",
153
+ "demo:all": "node demo/record.mjs && node demo/record-panel.mjs",
154
+ "check:files": "node scripts/check-files.mjs",
155
+ "prepublishOnly": "node scripts/check-files.mjs",
156
+ "demo:cast": "node demo/cast.mjs --dry-run",
157
+ "check:deploy": "node scripts/check-deploy.mjs",
158
+ "test:coordination": "node tests/coordination-test.mjs",
159
+ "test:panel": "node tests/control-panel-test.mjs && node tests/control-room-walk.mjs",
160
+ "test:map": "node tests/hive-map-test.mjs",
161
+ "test:gate": "node tests/hive-gate-test.mjs",
162
+ "bench:ab": "node bench/coordination-ab.mjs",
163
+ "test:branch": "node tests/branch-test.mjs",
164
+ "test:github": "node tests/github-cli-test.mjs && node tests/notify-test.mjs && node tests/github-watcher-test.mjs"
165
+ },
166
+ "engines": {
167
+ "node": ">=18"
168
+ },
169
+ "dependencies": {
170
+ "acorn": "^8.17.0",
171
+ "ignore": "^7.0.5",
172
+ "lib0": "^0.2.117",
173
+ "lodash.debounce": "^4.0.8",
174
+ "ws": "^8.18.0",
175
+ "y-protocols": "^1.0.6",
176
+ "y-websocket": "^3.1.0",
177
+ "yjs": "^13.6.18"
178
+ },
179
+ "devDependencies": {
180
+ "@anthropic-ai/sdk": "^0.104.2",
181
+ "@modelcontextprotocol/sdk": "^1.30.0",
182
+ "@types/node": "^26.1.2",
183
+ "esbuild": "^0.28.1",
184
+ "typescript": "^7.0.2"
185
+ },
186
+ "main": "core.js",
187
+ "directories": {
188
+ "doc": "docs",
189
+ "test": "tests"
190
+ },
191
+ "author": "Ganesh Shivlal Kute <support@getgrm.tech>"
192
+ }