@stage-labs/metro 0.1.0-beta.76 → 0.1.0-beta.78

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 (233) hide show
  1. package/dist/cli.js +4 -4
  2. package/dist/runtime-install.js +7 -4
  3. package/dist/runtime.js +6 -2
  4. package/dist/serve.js +2 -3
  5. package/dist/service.js +29 -11
  6. package/package.json +1 -1
  7. package/runtime/node_modules/@metro-labs/core/package.json +43 -0
  8. package/runtime/node_modules/@metro-labs/core/src/endpoints.ts +7 -0
  9. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → core/src}/events.ts +1 -1
  10. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → core/src}/identity.ts +1 -1
  11. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → core/src}/protocol.ts +1 -1
  12. package/runtime/node_modules/@metro-labs/{mcp → core}/src/stations/account-store.ts +2 -2
  13. package/runtime/node_modules/@metro-labs/{mcp → core}/src/stations/station-runtime.ts +1 -1
  14. package/runtime/node_modules/@metro-labs/daemon/package.json +47 -0
  15. package/runtime/node_modules/@metro-labs/{mcp/src/db → daemon/src/agents}/account-attach.ts +1 -1
  16. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/account-api.ts → daemon/src/agents/accounts-api.ts} +6 -6
  17. package/runtime/node_modules/@metro-labs/{mcp/src/db/agent-admin.ts → daemon/src/agents/admin.ts} +2 -2
  18. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/agent-api.ts → daemon/src/agents/api.ts} +6 -6
  19. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/bundle-api.ts → daemon/src/agents/bundle.ts} +7 -7
  20. package/runtime/node_modules/@metro-labs/{mcp/src/db → daemon/src/agents}/file-admin.ts +9 -9
  21. package/runtime/node_modules/@metro-labs/{mcp/src/db/file-source.ts → daemon/src/agents/files.ts} +4 -4
  22. package/runtime/node_modules/@metro-labs/{mcp/src/db/key-map.ts → daemon/src/agents/keys.ts} +1 -1
  23. package/runtime/node_modules/@metro-labs/{mcp/src/db/agent-scope.ts → daemon/src/agents/scope.ts} +2 -2
  24. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/boot}/boot.ts +23 -51
  25. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/boot}/crash-guard.ts +1 -1
  26. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/boot}/local-owner.ts +2 -2
  27. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/boot}/paths.ts +1 -4
  28. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/channels/addressed.ts +1 -1
  29. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/channels/dedupe.ts +1 -1
  30. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/channels/inbound.ts +1 -1
  31. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/channels/pending.ts +1 -1
  32. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/channels/relay.ts +1 -1
  33. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/claude-api.ts → daemon/src/claude/api.ts} +7 -7
  34. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/claude-files.ts → daemon/src/claude/files.ts} +2 -2
  35. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/claude-login.ts → daemon/src/claude/login.ts} +3 -3
  36. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/claude-settings.ts → daemon/src/claude/settings.ts} +4 -4
  37. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/connector-api.ts → daemon/src/connectors/api.ts} +6 -6
  38. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/local-cli-api.ts → daemon/src/connectors/cli-api.ts} +5 -5
  39. package/runtime/node_modules/@metro-labs/{mcp/src/db/connector-config.ts → daemon/src/connectors/config.ts} +4 -4
  40. package/runtime/node_modules/@metro-labs/{mcp/src/db/connectors.ts → daemon/src/connectors/model.ts} +3 -3
  41. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/connectors}/oauth-client.ts +2 -2
  42. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/connectors}/oauth-discovery.ts +2 -2
  43. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/connector-oauth-routes.ts → daemon/src/connectors/oauth-routes.ts} +6 -6
  44. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/connector-oauth.ts → daemon/src/connectors/oauth.ts} +3 -3
  45. package/runtime/node_modules/@metro-labs/{mcp/src/db/connector-relay.ts → daemon/src/connectors/relay-target.ts} +1 -1
  46. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/connectors}/relay.ts +4 -4
  47. package/runtime/node_modules/@metro-labs/{mcp/src/db/local-connectors.ts → daemon/src/connectors/store.ts} +12 -12
  48. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/connector-tools.ts → daemon/src/connectors/tools.ts} +1 -1
  49. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/connector-url.ts → daemon/src/connectors/url.ts} +1 -1
  50. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/connector-verify.ts → daemon/src/connectors/verify.ts} +5 -5
  51. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/files}/attach-grant.ts +3 -3
  52. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/files}/attach-owner.ts +3 -3
  53. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/files}/attach-serve.ts +5 -12
  54. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/files}/upload-api.ts +5 -5
  55. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/files}/upload-store.ts +2 -2
  56. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/gateway/bedrock.ts +1 -1
  57. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/gateway/codex-auth.ts +1 -1
  58. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/gateway/codex-device.ts +2 -2
  59. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/gateway/codex-stream.ts +1 -1
  60. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/gateway/codex-translate.ts +1 -1
  61. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/gateway/codex.ts +2 -2
  62. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/gateway/gateway.ts +2 -2
  63. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/gateway}/model-api.ts +12 -12
  64. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/gateway/model-config.ts +3 -3
  65. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/gateway/openrouter.ts +1 -1
  66. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/mcp/accounts.ts +3 -7
  67. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/mcp/call-tools.ts +3 -3
  68. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/mcp/channel-owner.ts +1 -1
  69. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/mcp/ctx.ts +4 -4
  70. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/mcp/frame-scope.ts +2 -2
  71. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/mcp/group-tools.ts +2 -2
  72. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/mcp/index.ts +1 -1
  73. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/mcp/member-tools.ts +2 -2
  74. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/mcp/request-identity.ts +1 -1
  75. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/mcp/session-registry.ts +2 -2
  76. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/mcp/session.ts +2 -2
  77. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/mcp/tool-dispatch.ts +4 -4
  78. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/mcp/upload-tool.ts +5 -5
  79. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/monitor/api.ts +5 -5
  80. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/net}/tunnel.ts +6 -10
  81. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/routes}/http.ts +15 -15
  82. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/identity-routes.ts → daemon/src/routes/identity.ts} +5 -5
  83. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/routes}/local-mode.ts +16 -16
  84. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/routes}/session-apis.ts +14 -20
  85. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/session-api.ts → daemon/src/routes/session.ts} +1 -1
  86. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/control-api.ts → daemon/src/server/control.ts} +3 -3
  87. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/machine-api.ts → daemon/src/server/machine.ts} +8 -8
  88. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/update-api.ts → daemon/src/server/update.ts} +5 -5
  89. package/runtime/node_modules/@metro-labs/daemon/src/server.ts +2 -0
  90. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/stations/attach-resolve.ts +5 -3
  91. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/stations}/attach-session.ts +4 -4
  92. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/stations/attach-xmtp.ts +1 -1
  93. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/stations/attach.ts +3 -3
  94. package/runtime/node_modules/@metro-labs/{mcp/src/db → daemon/src/stations}/materialize.ts +9 -14
  95. package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/stations/registry.ts +2 -2
  96. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/stations}/runtime-deps.ts +4 -4
  97. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/stations}/supervisor-io.ts +2 -2
  98. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/stations}/supervisor.ts +4 -4
  99. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/stations}/train-call.ts +1 -1
  100. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/terminal-api.ts → daemon/src/terminal/api.ts} +4 -4
  101. package/runtime/node_modules/@metro-labs/{mcp/src/daemon/terminal-ws.ts → daemon/src/terminal/socket.ts} +3 -3
  102. package/runtime/node_modules/@metro-labs/discord-bot/package.json +1 -1
  103. package/runtime/node_modules/@metro-labs/discord-bot/src/accounts.ts +2 -2
  104. package/runtime/node_modules/@metro-labs/discord-bot/src/actions.ts +3 -3
  105. package/runtime/node_modules/@metro-labs/discord-bot/src/attachments.ts +2 -2
  106. package/runtime/node_modules/@metro-labs/discord-bot/src/group.ts +2 -2
  107. package/runtime/node_modules/@metro-labs/discord-bot/src/index.ts +2 -2
  108. package/runtime/node_modules/@metro-labs/discord-bot/src/members.ts +2 -2
  109. package/runtime/node_modules/@metro-labs/discord-bot/src/send-files.ts +1 -1
  110. package/runtime/node_modules/@metro-labs/discord-bot/src/station.ts +1 -1
  111. package/runtime/node_modules/@metro-labs/discord-bot/src/voice-speak.ts +1 -1
  112. package/runtime/node_modules/@metro-labs/discord-bot/src/voice-transcribe.ts +1 -1
  113. package/runtime/node_modules/@metro-labs/discord-bot/src/voice.ts +1 -1
  114. package/runtime/node_modules/@metro-labs/discord-bot/src/wire.ts +1 -1
  115. package/runtime/node_modules/@metro-labs/http/package.json +33 -0
  116. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → http/src}/api-http.ts +1 -1
  117. package/runtime/node_modules/@metro-labs/{mcp/src/daemon → http/src}/signed-identity.ts +1 -1
  118. package/runtime/node_modules/@metro-labs/telegram/package.json +1 -1
  119. package/runtime/node_modules/@metro-labs/telegram/src/accounts.ts +1 -1
  120. package/runtime/node_modules/@metro-labs/telegram/src/actions.ts +3 -3
  121. package/runtime/node_modules/@metro-labs/telegram/src/attachments.ts +1 -1
  122. package/runtime/node_modules/@metro-labs/telegram/src/client.ts +2 -2
  123. package/runtime/node_modules/@metro-labs/telegram/src/format.ts +1 -1
  124. package/runtime/node_modules/@metro-labs/telegram/src/group.ts +3 -3
  125. package/runtime/node_modules/@metro-labs/telegram/src/inbound.ts +1 -1
  126. package/runtime/node_modules/@metro-labs/telegram/src/index.ts +3 -3
  127. package/runtime/node_modules/@metro-labs/telegram/src/media-actions.ts +1 -1
  128. package/runtime/node_modules/@metro-labs/telegram/src/members.ts +1 -1
  129. package/runtime/node_modules/@metro-labs/telegram/src/normalize.ts +1 -1
  130. package/runtime/node_modules/@metro-labs/telegram/src/reactions.ts +1 -1
  131. package/runtime/node_modules/@metro-labs/telegram/src/station.ts +1 -1
  132. package/runtime/node_modules/@metro-labs/telegram/src/wire.ts +1 -1
  133. package/runtime/node_modules/@metro-labs/telegram-bot/package.json +1 -1
  134. package/runtime/node_modules/@metro-labs/telegram-bot/src/accounts.ts +2 -2
  135. package/runtime/node_modules/@metro-labs/telegram-bot/src/actions.ts +4 -4
  136. package/runtime/node_modules/@metro-labs/telegram-bot/src/attachments.ts +2 -2
  137. package/runtime/node_modules/@metro-labs/telegram-bot/src/format.ts +1 -1
  138. package/runtime/node_modules/@metro-labs/telegram-bot/src/index.ts +2 -2
  139. package/runtime/node_modules/@metro-labs/telegram-bot/src/media-actions.ts +1 -1
  140. package/runtime/node_modules/@metro-labs/telegram-bot/src/members.ts +1 -1
  141. package/runtime/node_modules/@metro-labs/telegram-bot/src/station.ts +1 -1
  142. package/runtime/node_modules/@metro-labs/telegram-bot/src/wire.ts +1 -1
  143. package/runtime/node_modules/@metro-labs/webhook/package.json +1 -1
  144. package/runtime/node_modules/@metro-labs/webhook/src/station.ts +4 -4
  145. package/runtime/node_modules/@metro-labs/whatsapp/package.json +1 -1
  146. package/runtime/node_modules/@metro-labs/whatsapp/src/accounts.ts +1 -1
  147. package/runtime/node_modules/@metro-labs/whatsapp/src/ack.ts +1 -1
  148. package/runtime/node_modules/@metro-labs/whatsapp/src/actions.ts +4 -4
  149. package/runtime/node_modules/@metro-labs/whatsapp/src/attachments.ts +2 -2
  150. package/runtime/node_modules/@metro-labs/whatsapp/src/auth-state.ts +1 -1
  151. package/runtime/node_modules/@metro-labs/whatsapp/src/client.ts +2 -2
  152. package/runtime/node_modules/@metro-labs/whatsapp/src/format.ts +1 -1
  153. package/runtime/node_modules/@metro-labs/whatsapp/src/inbound.ts +1 -1
  154. package/runtime/node_modules/@metro-labs/whatsapp/src/index.ts +3 -3
  155. package/runtime/node_modules/@metro-labs/whatsapp/src/keys.ts +1 -1
  156. package/runtime/node_modules/@metro-labs/whatsapp/src/login.ts +1 -1
  157. package/runtime/node_modules/@metro-labs/whatsapp/src/media.ts +1 -1
  158. package/runtime/node_modules/@metro-labs/whatsapp/src/normalize.ts +1 -1
  159. package/runtime/node_modules/@metro-labs/whatsapp/src/station.ts +1 -1
  160. package/runtime/node_modules/@metro-labs/whatsapp/src/token-store.ts +2 -2
  161. package/runtime/node_modules/@metro-labs/whatsapp/src/wire.ts +1 -1
  162. package/runtime/node_modules/@metro-labs/xmtp/package.json +1 -1
  163. package/runtime/node_modules/@metro-labs/xmtp/src/accounts.ts +2 -2
  164. package/runtime/node_modules/@metro-labs/xmtp/src/actions-close.ts +1 -1
  165. package/runtime/node_modules/@metro-labs/xmtp/src/actions-conv.ts +1 -1
  166. package/runtime/node_modules/@metro-labs/xmtp/src/actions-meta.ts +1 -1
  167. package/runtime/node_modules/@metro-labs/xmtp/src/actions.ts +3 -3
  168. package/runtime/node_modules/@metro-labs/xmtp/src/attachments.ts +3 -3
  169. package/runtime/node_modules/@metro-labs/xmtp/src/conv-helpers.ts +2 -2
  170. package/runtime/node_modules/@metro-labs/xmtp/src/emit-payloads.ts +1 -1
  171. package/runtime/node_modules/@metro-labs/xmtp/src/emit.ts +1 -1
  172. package/runtime/node_modules/@metro-labs/xmtp/src/group-members.ts +1 -1
  173. package/runtime/node_modules/@metro-labs/xmtp/src/group.ts +2 -2
  174. package/runtime/node_modules/@metro-labs/xmtp/src/index.ts +2 -2
  175. package/runtime/node_modules/@metro-labs/xmtp/src/member-args.ts +1 -1
  176. package/runtime/node_modules/@metro-labs/xmtp/src/push.ts +2 -2
  177. package/runtime/node_modules/@metro-labs/xmtp/src/station.ts +1 -1
  178. package/runtime/node_modules/@metro-labs/xmtp/src/tools-handlers.ts +3 -3
  179. package/runtime/node_modules/@metro-labs/xmtp/src/tools.ts +1 -1
  180. package/runtime/node_modules/@metro-labs/xmtp/src/transcribe.ts +1 -1
  181. package/runtime/node_modules/@metro-labs/xmtp/src/wire.ts +1 -1
  182. package/runtime/runtime.json +1 -1
  183. package/runtime/server.ts +1 -0
  184. package/dist/bedrock-eventstream.js +0 -120
  185. package/dist/bedrock-proxy.js +0 -260
  186. package/dist/bedrock-upstream.js +0 -72
  187. package/dist/bedrock.js +0 -37
  188. package/runtime/node_modules/@metro-labs/mcp/package.json +0 -64
  189. package/runtime/node_modules/@metro-labs/mcp/src/daemon/server-types.ts +0 -21
  190. package/runtime/node_modules/@metro-labs/mcp/src/daemon/servers-api.ts +0 -80
  191. package/runtime/node_modules/@metro-labs/mcp/src/daemon/vault-api.ts +0 -78
  192. package/runtime/node_modules/@metro-labs/mcp/src/daemon/vault-types.ts +0 -12
  193. package/runtime/node_modules/@metro-labs/mcp/src/db/client.ts +0 -32
  194. package/runtime/node_modules/@metro-labs/mcp/src/db/schema.ts +0 -33
  195. package/runtime/node_modules/@metro-labs/mcp/src/db/servers.ts +0 -83
  196. package/runtime/node_modules/@metro-labs/mcp/src/db/vault.ts +0 -109
  197. package/runtime/node_modules/@metro-labs/mcp/src/server.ts +0 -2
  198. /package/runtime/node_modules/@metro-labs/{mcp/src/db → core/src}/address.ts +0 -0
  199. /package/runtime/node_modules/@metro-labs/{mcp/src/db → core/src}/ids.ts +0 -0
  200. /package/runtime/node_modules/@metro-labs/{mcp/src/daemon → core/src}/is-record.ts +0 -0
  201. /package/runtime/node_modules/@metro-labs/{mcp/src/stations → core/src}/lines.ts +0 -0
  202. /package/runtime/node_modules/@metro-labs/{mcp/src/daemon → core/src}/log.ts +0 -0
  203. /package/runtime/node_modules/@metro-labs/{mcp/src/daemon → core/src}/secure-fs.ts +0 -0
  204. /package/runtime/node_modules/@metro-labs/{mcp/src/db/stations.ts → core/src/station-names.ts} +0 -0
  205. /package/runtime/node_modules/@metro-labs/{mcp → core}/src/stations/attachments.ts +0 -0
  206. /package/runtime/node_modules/@metro-labs/{mcp → core}/src/stations/messaging-normalize.ts +0 -0
  207. /package/runtime/node_modules/@metro-labs/{mcp → core}/src/stations/types.ts +0 -0
  208. /package/runtime/node_modules/@metro-labs/{mcp/src/mcp → core/src}/str.ts +0 -0
  209. /package/runtime/node_modules/@metro-labs/{mcp/src/daemon → core/src}/train-error.ts +0 -0
  210. /package/runtime/node_modules/@metro-labs/{mcp/src/daemon → core/src}/version.ts +0 -0
  211. /package/runtime/node_modules/@metro-labs/{mcp/src/db/agent-map.ts → daemon/src/agents/map.ts} +0 -0
  212. /package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/boot}/connect-hint.ts +0 -0
  213. /package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/channels/media-note.ts +0 -0
  214. /package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/channels/webhook-note.ts +0 -0
  215. /package/runtime/node_modules/@metro-labs/{mcp/src/daemon/connector-json.ts → daemon/src/connectors/json.ts} +0 -0
  216. /package/runtime/node_modules/@metro-labs/{mcp/src/daemon → daemon/src/connectors}/oauth-pending.ts +0 -0
  217. /package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/gateway/eventstream.ts +0 -0
  218. /package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/gateway/forward.ts +0 -0
  219. /package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/gateway/served.ts +0 -0
  220. /package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/mcp/event-store.ts +0 -0
  221. /package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/mcp/permission-relay.ts +0 -0
  222. /package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/mcp/raw-get-stream.ts +0 -0
  223. /package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/mcp/session-route.ts +0 -0
  224. /package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/mcp/tool-schemas.ts +0 -0
  225. /package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/stations/attach-inline.ts +0 -0
  226. /package/runtime/node_modules/@metro-labs/{mcp → daemon}/src/stations/attach-interactive.ts +0 -0
  227. /package/runtime/node_modules/@metro-labs/{mcp/src/daemon/terminal-tickets.ts → daemon/src/terminal/tickets.ts} +0 -0
  228. /package/runtime/node_modules/@metro-labs/{mcp/src/daemon → http/src}/api-error.ts +0 -0
  229. /package/runtime/node_modules/@metro-labs/{mcp/src/daemon → http/src}/cors.ts +0 -0
  230. /package/runtime/node_modules/@metro-labs/{mcp/src/daemon → http/src}/identity-key.ts +0 -0
  231. /package/runtime/node_modules/@metro-labs/{mcp/src/daemon → http/src}/identity-registry.ts +0 -0
  232. /package/runtime/node_modules/@metro-labs/{mcp/src/daemon → http/src}/mode-api.ts +0 -0
  233. /package/runtime/node_modules/@metro-labs/{mcp/src/daemon → http/src}/return-to.ts +0 -0
@@ -7,18 +7,18 @@ import {
7
7
  } from 'node:fs';
8
8
  import { homedir } from 'node:os';
9
9
  import { join } from 'node:path';
10
- import { log } from '../daemon/log.js';
11
- import { writeSecure } from '../daemon/secure-fs.js';
12
- import { isLocalMode, trainsDir } from '../daemon/paths.js';
10
+ import { log } from '@metro-labs/core/log';
11
+ import { writeSecure } from '@metro-labs/core/secure-fs';
12
+ import { trainsDir } from '../boot/paths.js';
13
13
  import {
14
14
  setAgentMap,
15
15
  setAllowlistMap,
16
16
  type AgentMap,
17
17
  type AgentNameMap,
18
18
  type AllowlistMap,
19
- } from './agent-map.js';
20
- import { setKeyMap } from './key-map.js';
21
- import { STATIONS, type StationName } from './stations.js';
19
+ } from '../agents/map.js';
20
+ import { setKeyMap } from '../agents/keys.js';
21
+ import { STATIONS, type StationName } from '@metro-labs/core/station-names';
22
22
 
23
23
  interface StationTarget {
24
24
  file: string;
@@ -113,9 +113,6 @@ export function writeIfChanged(path: string, content: string): boolean {
113
113
  return true;
114
114
  }
115
115
 
116
- export const stationRunsHere = (station: StationName): boolean =>
117
- isLocalMode() || !MOVABLE_STATIONS.has(station);
118
-
119
116
  interface WrittenStations {
120
117
  active: Map<StationName, number>;
121
118
  changed: StationName[];
@@ -141,11 +138,9 @@ function writeStations(list: LoadedAgent[]): WrittenStations {
141
138
  }
142
139
  map[`${a.station}/${a.id}`] = agent.id;
143
140
  if (a.allowlist) allow[`${a.station}/${a.id}`] = a.allowlist;
144
- if (stationRunsHere(a.station)) {
145
- const cur = byStation.get(a.station);
146
- if (cur) cur.push(a);
147
- else byStation.set(a.station, [a]);
148
- }
141
+ const cur = byStation.get(a.station);
142
+ if (cur) cur.push(a);
143
+ else byStation.set(a.station, [a]);
149
144
  }
150
145
  }
151
146
  setAgentMap(map, names);
@@ -1,5 +1,5 @@
1
- import type { Station } from './types.js';
2
- import { Line } from './lines.js';
1
+ import type { Station } from '@metro-labs/core/stations/types';
2
+ import { Line } from '@metro-labs/core/lines';
3
3
  import { xmtpStation } from '@metro-labs/xmtp';
4
4
  import { telegramBotStation } from '@metro-labs/telegram-bot';
5
5
  import { telegramStation } from '@metro-labs/telegram';
@@ -1,10 +1,10 @@
1
1
  import { spawnSync } from 'node:child_process';
2
2
  import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
3
3
  import { join } from 'node:path';
4
- import { log } from './log.js';
5
- import { isRecord } from './is-record.js';
6
- import type { StationName } from '../db/stations.js';
7
- import { knownAccounts } from '../db/agent-map.js';
4
+ import { log } from '@metro-labs/core/log';
5
+ import { isRecord } from '@metro-labs/core/is-record';
6
+ import type { StationName } from '@metro-labs/core/station-names';
7
+ import { knownAccounts } from '../agents/map.js';
8
8
 
9
9
  const INSTALL_TIMEOUT_MS = 15 * 60_000;
10
10
 
@@ -1,7 +1,7 @@
1
1
  import { watch, type FSWatcher } from 'node:fs';
2
2
  import { join, parse as parsePath } from 'node:path';
3
- import { errMsg, log } from './log.js';
4
- import type { Pending } from './protocol.js';
3
+ import { errMsg, log } from '@metro-labs/core/log';
4
+ import type { Pending } from '@metro-labs/core/trains/protocol';
5
5
 
6
6
  export const RESTART_BACKOFFS_MS = [1_000, 5_000, 30_000] as const;
7
7
  export const MAX_CONSECUTIVE_FAILS = 5;
@@ -1,7 +1,7 @@
1
1
  import { mkdirSync, statSync, type FSWatcher } from 'node:fs';
2
2
  import { join } from 'node:path';
3
- import { errMsg, log } from './log.js';
4
- import { daemonSelf } from './events.js';
3
+ import { errMsg, log } from '@metro-labs/core/log';
4
+ import { daemonSelf } from '@metro-labs/core/events';
5
5
  import {
6
6
  drainLines,
7
7
  failAllPending,
@@ -11,7 +11,7 @@ import {
11
11
  sendCall,
12
12
  type TrainCallResponse,
13
13
  type TrainEvent,
14
- } from './protocol.js';
14
+ } from '@metro-labs/core/trains/protocol';
15
15
  import {
16
16
  HOT_RELOAD_DEBOUNCE_MS,
17
17
  MAX_CONSECUTIVE_FAILS,
@@ -21,7 +21,7 @@ import {
21
21
  startWatcher,
22
22
  type TrainState,
23
23
  } from './supervisor-io.js';
24
- import { trainsDir } from './paths.js';
24
+ import { trainsDir } from '../boot/paths.js';
25
25
 
26
26
  const DYLD_FALLBACK_ENV: Record<string, string> =
27
27
  process.platform === 'darwin'
@@ -1,4 +1,4 @@
1
- import type { TrainCallResponse } from './protocol.js';
1
+ import type { TrainCallResponse } from '@metro-labs/core/trains/protocol';
2
2
 
3
3
  export type TrainCallBackend = (
4
4
  train: string,
@@ -1,9 +1,9 @@
1
1
  import { spawnSync } from 'node:child_process';
2
2
  import type { IncomingMessage, ServerResponse } from 'node:http';
3
- import { ApiError } from './api-error.js';
4
- import { apiFailure, apiSession, bodyField, cors, readJsonBody, sendJson } from './api-http.js';
5
- import { log } from './log.js';
6
- import { mintTerminalTicket } from './terminal-tickets.js';
3
+ import { ApiError } from '@metro-labs/http/api-error';
4
+ import { apiFailure, apiSession, bodyField, cors, readJsonBody, sendJson } from '@metro-labs/http/api-http';
5
+ import { log } from '@metro-labs/core/log';
6
+ import { mintTerminalTicket } from './tickets.js';
7
7
 
8
8
  const PREFIX = '/api/terminal';
9
9
  const TICKETS = `${PREFIX}/tickets`;
@@ -2,9 +2,9 @@ import { spawn } from 'node:child_process';
2
2
  import type { IncomingMessage, Server } from 'node:http';
3
3
  import type { Duplex } from 'node:stream';
4
4
  import { WebSocketServer, type RawData, type WebSocket } from 'ws';
5
- import { errMsg, log } from './log.js';
6
- import { isRecord } from './is-record.js';
7
- import { takeTerminalTicket, type TerminalGrant } from './terminal-tickets.js';
5
+ import { errMsg, log } from '@metro-labs/core/log';
6
+ import { isRecord } from '@metro-labs/core/is-record';
7
+ import { takeTerminalTicket, type TerminalGrant } from './tickets.js';
8
8
 
9
9
  const TICKET_PATH = /^\/api\/terminal\/([A-Za-z0-9_-]{43})$/;
10
10
  const MAX_MESSAGE = 1024 * 1024;
@@ -13,7 +13,7 @@
13
13
  "test": "tsc --noEmit && bun test test/"
14
14
  },
15
15
  "dependencies": {
16
- "@metro-labs/mcp": "workspace:*",
16
+ "@metro-labs/core": "workspace:*",
17
17
  "@discordjs/voice": "^0.19.2",
18
18
  "discord.js": "^14.26.4",
19
19
  "prism-media": "^1.3.5"
@@ -4,8 +4,8 @@ import { join } from 'node:path';
4
4
  import {
5
5
  makeAccountStore,
6
6
  resolveAccountId,
7
- } from '@metro-labs/mcp/stations/account-store';
8
- import { Line } from '@metro-labs/mcp/lines';
7
+ } from '@metro-labs/core/stations/account-store';
8
+ import { Line } from '@metro-labs/core/lines';
9
9
  import { emit } from './wire.js';
10
10
  import { API } from './api-base.js';
11
11
 
@@ -13,8 +13,8 @@ import {
13
13
  } from './accounts.js';
14
14
  import { emitOutbound, emitOutboundEdit, emitOutboundReact } from './format.js';
15
15
  import { respond } from './wire.js';
16
- import { normalizeDiscord } from '@metro-labs/mcp/stations/messaging-normalize';
17
- import { assertContentLength } from '@metro-labs/mcp/stations/attachments';
16
+ import { normalizeDiscord } from '@metro-labs/core/stations/messaging-normalize';
17
+ import { assertContentLength } from '@metro-labs/core/stations/attachments';
18
18
  import {
19
19
  appendFiles,
20
20
  outgoingFiles,
@@ -24,7 +24,7 @@ import {
24
24
  makeStation,
25
25
  type CallMsg,
26
26
  type StationHandler,
27
- } from '@metro-labs/mcp/stations/station-runtime';
27
+ } from '@metro-labs/core/stations/station-runtime';
28
28
  import { joinVoice, leaveVoice, voiceDebug, voiceTranscribe } from './voice.js';
29
29
  import { speak } from './voice-speak.js';
30
30
  import { discordMembers } from './members.js';
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  saveBufferToCache,
3
3
  assertContentLength,
4
- } from '@metro-labs/mcp/stations/attachments';
5
- import type { SavedAttachment } from '@metro-labs/mcp/stations/attachments';
4
+ } from '@metro-labs/core/stations/attachments';
5
+ import type { SavedAttachment } from '@metro-labs/core/stations/attachments';
6
6
 
7
7
  export type { SavedAttachment };
8
8
 
@@ -1,8 +1,8 @@
1
- import { errMsg } from '@metro-labs/mcp/log';
1
+ import { errMsg } from '@metro-labs/core/log';
2
2
  import type {
3
3
  GroupResult,
4
4
  MemberOutcome,
5
- } from '@metro-labs/mcp/stations/types';
5
+ } from '@metro-labs/core/stations/types';
6
6
  import { lineOf } from './accounts.js';
7
7
 
8
8
  export type RestFn = <T = unknown>(
@@ -1,4 +1,4 @@
1
- import { errMsg } from '@metro-labs/mcp/log';
1
+ import { errMsg } from '@metro-labs/core/log';
2
2
  import {
3
3
  Client,
4
4
  Events,
@@ -16,7 +16,7 @@ import {
16
16
  } from './accounts.js';
17
17
  import { emitInbound, messageEnvelope, reactionEnvelope } from './format.js';
18
18
  import { mintId } from './wire.js';
19
- import { readCalls } from '@metro-labs/mcp/trains/protocol';
19
+ import { readCalls } from '@metro-labs/core/trains/protocol';
20
20
  import { handleCall } from './actions.js';
21
21
 
22
22
  readCalls('discord-bot', handleCall);
@@ -1,5 +1,5 @@
1
- import { errMsg } from '@metro-labs/mcp/log';
2
- import type { MemberList, MetroMember } from '@metro-labs/mcp/stations/types';
1
+ import { errMsg } from '@metro-labs/core/log';
2
+ import type { MemberList, MetroMember } from '@metro-labs/core/stations/types';
3
3
  import { rest } from './accounts.js';
4
4
 
5
5
  export interface DiscordRole {
@@ -1,4 +1,4 @@
1
- import { appendFile } from '@metro-labs/mcp/stations/attachments';
1
+ import { appendFile } from '@metro-labs/core/stations/attachments';
2
2
 
3
3
  export interface OutgoingFile {
4
4
  path: string;
@@ -1,4 +1,4 @@
1
- import type { GroupOp, Station, Verb } from '@metro-labs/mcp/stations/types';
1
+ import type { GroupOp, Station, Verb } from '@metro-labs/core/stations/types';
2
2
 
3
3
  export const discordBotStation: Station = {
4
4
  name: 'discord-bot',
@@ -1,4 +1,4 @@
1
- import { errMsg } from '@metro-labs/mcp/log';
1
+ import { errMsg } from '@metro-labs/core/log';
2
2
  import { spawn } from 'node:child_process';
3
3
  import { unlink } from 'node:fs/promises';
4
4
  import {
@@ -1,4 +1,4 @@
1
- import { errMsg } from '@metro-labs/mcp/log';
1
+ import { errMsg } from '@metro-labs/core/log';
2
2
  import {
3
3
  EndBehaviorType,
4
4
  type VoiceConnection,
@@ -1,4 +1,4 @@
1
- import { errMsg } from '@metro-labs/mcp/log';
1
+ import { errMsg } from '@metro-labs/core/log';
2
2
  import {
3
3
  joinVoiceChannel,
4
4
  getVoiceConnection,
@@ -1,4 +1,4 @@
1
- export { emit, respond, mintId } from '@metro-labs/mcp/stations/station-runtime';
1
+ export { emit, respond, mintId } from '@metro-labs/core/stations/station-runtime';
2
2
 
3
3
  export const SELF_URI =
4
4
  process.env.METRO_SELF_URI ??
@@ -0,0 +1,33 @@
1
+ {
2
+ "name": "@metro-labs/http",
3
+ "version": "0.1.0",
4
+ "private": true,
5
+ "description": "How a metro server authenticates and answers a request: CORS, the JSON helpers, ApiError, the signed-identity header and the identity registry. Shared by the daemon and api.metro.box, never by a station.",
6
+ "type": "module",
7
+ "exports": {
8
+ "./cors": "./src/cors.ts",
9
+ "./api-http": "./src/api-http.ts",
10
+ "./api-error": "./src/api-error.ts",
11
+ "./signed-identity": "./src/signed-identity.ts",
12
+ "./identity-key": "./src/identity-key.ts",
13
+ "./identity-registry": "./src/identity-registry.ts",
14
+ "./return-to": "./src/return-to.ts",
15
+ "./mode-api": "./src/mode-api.ts"
16
+ },
17
+ "scripts": {
18
+ "build": "tsc",
19
+ "test": "tsc --noEmit && bun test test/"
20
+ },
21
+ "dependencies": {
22
+ "@metro-labs/core": "workspace:*",
23
+ "@noble/curves": "^1.9.7",
24
+ "viem": "2.52.2"
25
+ },
26
+ "devDependencies": {
27
+ "@stage-labs/config": "0.1.0-beta.2",
28
+ "eslint": "^10.3.0",
29
+ "knip": "^6.15.0",
30
+ "madge": "^8.0.0",
31
+ "typescript": "^5"
32
+ }
33
+ }
@@ -1,6 +1,6 @@
1
1
  import type { IncomingMessage, ServerResponse } from 'node:http';
2
2
  import { ApiError } from './api-error.js';
3
- import { errMsg, log } from './log.js';
3
+ import { errMsg, log } from '@metro-labs/core/log';
4
4
  import { signedIdentity } from './signed-identity.js';
5
5
  import { identitySubject } from './identity-registry.js';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import type { IncomingMessage } from 'node:http';
2
2
  import { verifyMessage } from 'viem';
3
- import { normalizeAddress } from '../db/address.js';
3
+ import { normalizeAddress } from '@metro-labs/core/address';
4
4
 
5
5
  export const AUTH_SCHEME = 'Metro';
6
6
  const SKEW_MS = 5 * 60_000;
@@ -13,7 +13,7 @@
13
13
  "test": "tsc --noEmit && bun test test/"
14
14
  },
15
15
  "dependencies": {
16
- "@metro-labs/mcp": "workspace:*",
16
+ "@metro-labs/core": "workspace:*",
17
17
  "@mtcute/bun": "0.30.1"
18
18
  },
19
19
  "devDependencies": {
@@ -4,7 +4,7 @@ import {
4
4
  makeAccountStore,
5
5
  resolveAccountId,
6
6
  type Die,
7
- } from '@metro-labs/mcp/stations/account-store';
7
+ } from '@metro-labs/core/stations/account-store';
8
8
  import type { UserAccount } from './types.js';
9
9
 
10
10
  const ACCOUNTS_FILE =
@@ -1,11 +1,11 @@
1
- import { TrainError } from '@metro-labs/mcp/train-error';
2
- import { errMsg } from '@metro-labs/mcp/log';
1
+ import { TrainError } from '@metro-labs/core/train-error';
2
+ import { errMsg } from '@metro-labs/core/log';
3
3
  import {
4
4
  makeStation,
5
5
  respond,
6
6
  type CallMsg,
7
7
  type StationHandler,
8
- } from '@metro-labs/mcp/stations/station-runtime';
8
+ } from '@metro-labs/core/stations/station-runtime';
9
9
  import { accountFor, accounts, targetOf } from './accounts.js';
10
10
  import type { UserClient } from './client.js';
11
11
  import { normalizeTelegramUser } from './normalize.js';
@@ -3,7 +3,7 @@ import { FileLocation } from '@mtcute/bun';
3
3
  import {
4
4
  saveBufferToCache,
5
5
  type SavedAttachment,
6
- } from '@metro-labs/mcp/stations/attachments';
6
+ } from '@metro-labs/core/stations/attachments';
7
7
  import type { UserClient } from './client.js';
8
8
 
9
9
  type Media = NonNullable<Message['media']>;
@@ -2,8 +2,8 @@ import { homedir } from 'node:os';
2
2
  import { join } from 'node:path';
3
3
  import { mkdirSync } from 'node:fs';
4
4
  import { TelegramClient } from '@mtcute/bun';
5
- import { TrainError } from '@metro-labs/mcp/train-error';
6
- import { errMsg } from '@metro-labs/mcp/log';
5
+ import { TrainError } from '@metro-labs/core/train-error';
6
+ import { errMsg } from '@metro-labs/core/log';
7
7
  import type { UserAccount } from './types.js';
8
8
 
9
9
  const STATE_DIR =
@@ -1,5 +1,5 @@
1
1
  import type { Chat, Message, Peer, User } from '@mtcute/bun';
2
- import type { SavedAttachment } from '@metro-labs/mcp/stations/attachments';
2
+ import type { SavedAttachment } from '@metro-labs/core/stations/attachments';
3
3
  import { lineOf } from './accounts.js';
4
4
  import { mintId } from './wire.js';
5
5
  import { isDownloadable, pendingDescriptorOf } from './attachments.js';
@@ -1,9 +1,9 @@
1
1
  import type {
2
2
  GroupResult,
3
3
  MemberOutcome,
4
- } from '@metro-labs/mcp/stations/types';
5
- import { TrainError } from '@metro-labs/mcp/train-error';
6
- import { errMsg } from '@metro-labs/mcp/log';
4
+ } from '@metro-labs/core/stations/types';
5
+ import { TrainError } from '@metro-labs/core/train-error';
6
+ import { errMsg } from '@metro-labs/core/log';
7
7
  import type { UserClient } from './client.js';
8
8
  import { lineOf } from './accounts.js';
9
9
 
@@ -1,5 +1,5 @@
1
1
  import type { Message } from '@mtcute/bun';
2
- import { errMsg, log } from '@metro-labs/mcp/log';
2
+ import { errMsg, log } from '@metro-labs/core/log';
3
3
  import { emit } from './wire.js';
4
4
  import { envelope, isOwnEcho, attachmentSavedEnvelope } from './format.js';
5
5
  import { downloadMedia, isDownloadable } from './attachments.js';
@@ -1,6 +1,6 @@
1
- import { TrainError } from '@metro-labs/mcp/train-error';
2
- import { errMsg } from '@metro-labs/mcp/log';
3
- import { readCalls } from '@metro-labs/mcp/trains/protocol';
1
+ import { TrainError } from '@metro-labs/core/train-error';
2
+ import { errMsg } from '@metro-labs/core/log';
3
+ import { readCalls } from '@metro-labs/core/trains/protocol';
4
4
  import {
5
5
  accounts,
6
6
  loadAccounts,
@@ -1,6 +1,6 @@
1
1
  import type { InputMediaLike, Message } from '@mtcute/bun';
2
2
  import { InputMedia } from '@mtcute/bun';
3
- import { isImageMime, isImageExt } from '@metro-labs/mcp/stations/attachments';
3
+ import { isImageMime, isImageExt } from '@metro-labs/core/stations/attachments';
4
4
  import type { UserClient } from './client.js';
5
5
 
6
6
  export interface CanonicalAttachment {
@@ -1,4 +1,4 @@
1
- import type { MemberList, MetroMember } from '@metro-labs/mcp/stations/types';
1
+ import type { MemberList, MetroMember } from '@metro-labs/core/stations/types';
2
2
  import type { UserClient } from './client.js';
3
3
 
4
4
  export interface RawUserMember {
@@ -1,4 +1,4 @@
1
- import type { Normalized } from '@metro-labs/mcp/stations/messaging-normalize';
1
+ import type { Normalized } from '@metro-labs/core/stations/messaging-normalize';
2
2
 
3
3
  type Args = Record<string, unknown>;
4
4
 
@@ -1,6 +1,6 @@
1
1
  import type { tl } from '@mtcute/bun';
2
2
  import { getBarePeerId, getMarkedPeerId } from '@mtcute/bun';
3
- import { errMsg } from '@metro-labs/mcp/log';
3
+ import { errMsg } from '@metro-labs/core/log';
4
4
  import { emit } from './wire.js';
5
5
  import { reactionEnvelope } from './format.js';
6
6
  import type { UserClient } from './client.js';
@@ -1,4 +1,4 @@
1
- import type { GroupOp, Station, Verb } from '@metro-labs/mcp/stations/types';
1
+ import type { GroupOp, Station, Verb } from '@metro-labs/core/stations/types';
2
2
 
3
3
  export const telegramStation: Station = {
4
4
  name: 'telegram',
@@ -1 +1 @@
1
- export { emit, mintId } from '@metro-labs/mcp/stations/station-runtime';
1
+ export { emit, mintId } from '@metro-labs/core/stations/station-runtime';
@@ -13,7 +13,7 @@
13
13
  "test": "tsc --noEmit && bun test test/"
14
14
  },
15
15
  "dependencies": {
16
- "@metro-labs/mcp": "workspace:*"
16
+ "@metro-labs/core": "workspace:*"
17
17
  },
18
18
  "devDependencies": {
19
19
  "@stage-labs/config": "0.1.0-beta.2",
@@ -3,8 +3,8 @@ import { join } from 'node:path';
3
3
  import {
4
4
  makeAccountStore,
5
5
  resolveAccountId,
6
- } from '@metro-labs/mcp/stations/account-store';
7
- import { Line } from '@metro-labs/mcp/lines';
6
+ } from '@metro-labs/core/stations/account-store';
7
+ import { Line } from '@metro-labs/core/lines';
8
8
 
9
9
  const ACCOUNTS_FILE =
10
10
  process.env.TELEGRAM_BOT_ACCOUNTS_FILE ??
@@ -1,7 +1,7 @@
1
1
  import { accountFor, accounts, tg, targetOf } from './accounts.js';
2
2
  import { respond } from './wire.js';
3
- import { errMsg } from '@metro-labs/mcp/log';
4
- import { normalizeTelegram } from '@metro-labs/mcp/stations/messaging-normalize';
3
+ import { errMsg } from '@metro-labs/core/log';
4
+ import { normalizeTelegram } from '@metro-labs/core/stations/messaging-normalize';
5
5
  import {
6
6
  adminMemberList,
7
7
  inaccessibleMemberList,
@@ -11,9 +11,9 @@ import {
11
11
  makeStation,
12
12
  type CallMsg,
13
13
  type StationHandler,
14
- } from '@metro-labs/mcp/stations/station-runtime';
14
+ } from '@metro-labs/core/stations/station-runtime';
15
15
  import { mediaKindOf } from './attachments.js';
16
- import { assertContentLength } from '@metro-labs/mcp/stations/attachments';
16
+ import { assertContentLength } from '@metro-labs/core/stations/attachments';
17
17
  import {
18
18
  emitOutbound,
19
19
  finishSend,
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  saveBufferToCache,
3
3
  assertContentLength,
4
- } from '@metro-labs/mcp/stations/attachments';
5
- import type { SavedAttachment } from '@metro-labs/mcp/stations/attachments';
4
+ } from '@metro-labs/core/stations/attachments';
5
+ import type { SavedAttachment } from '@metro-labs/core/stations/attachments';
6
6
  import { tg, accounts } from './accounts.js';
7
7
  import type { TgMsg } from './types.js';
8
8
 
@@ -1,4 +1,4 @@
1
- import { errMsg } from '@metro-labs/mcp/log';
1
+ import { errMsg } from '@metro-labs/core/log';
2
2
  import { accounts, lineOf } from './accounts.js';
3
3
  import { mintId, SELF_URI } from './wire.js';
4
4
  import { mediaRefOf, saveTelegramMedia } from './attachments.js';
@@ -1,4 +1,4 @@
1
- import { errMsg } from '@metro-labs/mcp/log';
1
+ import { errMsg } from '@metro-labs/core/log';
2
2
  import { accounts, loadAccounts, tg, type Account } from './accounts.js';
3
3
  import { emit } from './wire.js';
4
4
  import {
@@ -11,7 +11,7 @@ import {
11
11
  type TgReaction,
12
12
  type TgReactionCount,
13
13
  } from './format.js';
14
- import { readCalls } from '@metro-labs/mcp/trains/protocol';
14
+ import { readCalls } from '@metro-labs/core/trains/protocol';
15
15
  import { handleCall } from './actions.js';
16
16
 
17
17
  readCalls('telegram-bot', handleCall);
@@ -1,6 +1,6 @@
1
1
  import { tg, tgForm, targetOf } from './accounts.js';
2
2
  import { emit, mintId, respond, SELF_URI } from './wire.js';
3
- import { appendFile } from '@metro-labs/mcp/stations/attachments';
3
+ import { appendFile } from '@metro-labs/core/stations/attachments';
4
4
 
5
5
  export function emitOutbound(
6
6
  accountId: string,
@@ -1,4 +1,4 @@
1
- import type { MemberList, MetroMember } from '@metro-labs/mcp/stations/types';
1
+ import type { MemberList, MetroMember } from '@metro-labs/core/stations/types';
2
2
 
3
3
  export interface TgUser {
4
4
  id: number;
@@ -1,4 +1,4 @@
1
- import type { Station, Verb } from '@metro-labs/mcp/stations/types';
1
+ import type { Station, Verb } from '@metro-labs/core/stations/types';
2
2
 
3
3
  export const telegramBotStation: Station = {
4
4
  name: 'telegram-bot',
@@ -1,3 +1,3 @@
1
- export { emit, respond, mintId } from '@metro-labs/mcp/stations/station-runtime';
1
+ export { emit, respond, mintId } from '@metro-labs/core/stations/station-runtime';
2
2
 
3
3
  export const SELF_URI = process.env.METRO_SELF_URI ?? '';
@@ -11,7 +11,7 @@
11
11
  "test": "tsc --noEmit && bun test test/"
12
12
  },
13
13
  "dependencies": {
14
- "@metro-labs/mcp": "workspace:*"
14
+ "@metro-labs/core": "workspace:*"
15
15
  },
16
16
  "devDependencies": {
17
17
  "@stage-labs/config": "0.1.0-beta.2",
@@ -1,8 +1,8 @@
1
1
  import { randomUUID } from 'node:crypto';
2
- import { Line } from '@metro-labs/mcp/lines';
3
- import { mintId, type MetroEvent } from '@metro-labs/mcp/events';
4
- import type { Endpoint } from '@metro-labs/mcp/endpoints';
5
- import type { Station, Verb } from '@metro-labs/mcp/stations/types';
2
+ import { Line } from '@metro-labs/core/lines';
3
+ import { mintId, type MetroEvent } from '@metro-labs/core/events';
4
+ import type { Endpoint } from '@metro-labs/core/endpoints';
5
+ import type { Station, Verb } from '@metro-labs/core/stations/types';
6
6
 
7
7
  export const webhookStation: Station = {
8
8
  name: 'webhook',