@powerhousedao/reactor-mcp 4.1.0-dev.4 → 4.1.0-dev.40

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 (58) hide show
  1. package/dist/src/cli.js +7 -3
  2. package/dist/src/cli.js.map +1 -1
  3. package/dist/src/express.d.ts +5 -0
  4. package/dist/src/express.d.ts.map +1 -0
  5. package/dist/src/express.js +59 -0
  6. package/dist/src/express.js.map +1 -0
  7. package/dist/src/index.d.ts +1 -1
  8. package/dist/src/index.d.ts.map +1 -1
  9. package/dist/src/index.js +1 -10
  10. package/dist/src/index.js.map +1 -1
  11. package/dist/src/logger.d.ts +3 -0
  12. package/dist/src/logger.d.ts.map +1 -0
  13. package/dist/src/logger.js +3 -0
  14. package/dist/src/logger.js.map +1 -0
  15. package/dist/src/sdk/chat.d.ts +19 -0
  16. package/dist/src/sdk/chat.d.ts.map +1 -0
  17. package/dist/src/sdk/chat.js +60 -0
  18. package/dist/src/sdk/chat.js.map +1 -0
  19. package/dist/src/server.d.ts +3 -2
  20. package/dist/src/server.d.ts.map +1 -1
  21. package/dist/src/server.js +38 -762
  22. package/dist/src/server.js.map +1 -1
  23. package/dist/src/stdio/index.d.ts +7 -0
  24. package/dist/src/stdio/index.d.ts.map +1 -0
  25. package/dist/src/stdio/index.js +84 -0
  26. package/dist/src/stdio/index.js.map +1 -0
  27. package/dist/src/stdio/loader.d.ts +18 -0
  28. package/dist/src/stdio/loader.d.ts.map +1 -0
  29. package/dist/src/stdio/loader.js +86 -0
  30. package/dist/src/stdio/loader.js.map +1 -0
  31. package/dist/src/tools/reactor.d.ts +847 -0
  32. package/dist/src/tools/reactor.d.ts.map +1 -0
  33. package/dist/src/{mcp → tools}/reactor.js +200 -146
  34. package/dist/src/tools/reactor.js.map +1 -0
  35. package/dist/src/tools/types.d.ts.map +1 -0
  36. package/dist/src/{mcp → tools}/types.js.map +1 -1
  37. package/dist/src/{mcp → tools}/utils.d.ts +8 -21
  38. package/dist/src/tools/utils.d.ts.map +1 -0
  39. package/dist/src/{utils.js → tools/utils.js} +46 -3
  40. package/dist/src/tools/utils.js.map +1 -0
  41. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  42. package/package.json +15 -10
  43. package/dist/src/mcp/reactor.d.ts +0 -630
  44. package/dist/src/mcp/reactor.d.ts.map +0 -1
  45. package/dist/src/mcp/reactor.js.map +0 -1
  46. package/dist/src/mcp/types.d.ts.map +0 -1
  47. package/dist/src/mcp/utils.d.ts.map +0 -1
  48. package/dist/src/mcp/utils.js +0 -62
  49. package/dist/src/mcp/utils.js.map +0 -1
  50. package/dist/src/reactor.d.ts +0 -43
  51. package/dist/src/reactor.d.ts.map +0 -1
  52. package/dist/src/reactor.js +0 -142
  53. package/dist/src/reactor.js.map +0 -1
  54. package/dist/src/utils.d.ts +0 -10
  55. package/dist/src/utils.d.ts.map +0 -1
  56. package/dist/src/utils.js.map +0 -1
  57. /package/dist/src/{mcp → tools}/types.d.ts +0 -0
  58. /package/dist/src/{mcp → tools}/types.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGpE,MAAM,CAAC,MAAM,sBAAsB,GAAG;;;;;;;;;;;;;;CAcrC,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,OAA6B;IAE7B,MAAM,MAAM,GAAG,IAAI,SAAS,CAC1B;QACE,IAAI,EAAE,oBAAoB;QAC1B,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,sBAAsB;QACnC,YAAY,EAAE,sBAAsB;KACrC,EACD;QACE,YAAY,EAAE;YACZ,KAAK,EAAE,EAAE;YACT,SAAS,EAAE;gBACT,SAAS,EAAE,IAAI;gBACf,WAAW,EAAE,IAAI;aAClB;YACD,OAAO,EAAE;gBACP,WAAW,EAAE,IAAI;aAClB;SACF;KACF,CACF,CAAC;IAEF,MAAM,CAAC,gBAAgB,CACrB,cAAc,EACd,wBAAwB,EACxB;QACE,KAAK,EAAE,cAAc;QACrB,WAAW,EAAE,0DAA0D;QACvE,QAAQ,EAAE,YAAY;KACvB,EACD,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACR,QAAQ,EAAE;YACR;gBACE,GAAG,EAAE,GAAG,CAAC,IAAI;gBACb,IAAI,EAAE,sBAAsB;aAC7B;SACF;KACF,CAAC,CACH,CAAC;IAEF,MAAM,eAAe,GAAG,MAAM,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAEhE,MAAM,EAAE,QAAQ,EAAE,GAAG,UAAU,EAAE,GAAG,eAAe,CAAC,KAAK,CAAC,iBAAiB,CAAC;IAC5E,kEAAkE;IAClE,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,OAAO,CAC3C,CAAC,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;QACtC,iEAAiE;QACjE,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAa,EAAE,QAAe,CAAC,CAAC;IAChE,CAAC,CACF,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,7 @@
1
+ export interface IMcpOptions {
2
+ remoteDrive?: string;
3
+ root?: string;
4
+ documentModelsDir?: string;
5
+ }
6
+ export declare function initStdioMcpServer(options?: IMcpOptions): Promise<void>;
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/stdio/index.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,WAAW;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAeD,wBAAsB,kBAAkB,CAAC,OAAO,CAAC,EAAE,WAAW,iBAoF7D"}
@@ -0,0 +1,84 @@
1
+ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
2
+ import { driveDocumentModelModule, ReactorBuilder } from "document-drive";
3
+ import { documentModelDocumentModelModule, generateId, } from "document-model";
4
+ import { logger } from "../logger.js";
5
+ import { createServer } from "../server.js";
6
+ import { VitePackageLoader } from "./loader.js";
7
+ const baseDocumentModels = [
8
+ documentModelDocumentModelModule,
9
+ driveDocumentModelModule,
10
+ ];
11
+ async function createReactor(documentModels = []) {
12
+ const builder = new ReactorBuilder(baseDocumentModels.concat(documentModels));
13
+ const reactor = builder.build();
14
+ await reactor.initialize();
15
+ return reactor;
16
+ }
17
+ export async function initStdioMcpServer(options) {
18
+ const { remoteDrive, root, documentModelsDir = "./document-models", } = options ?? {};
19
+ // if root of project is passed then loads local document models
20
+ let documentModelsLoader;
21
+ const documentModels = [];
22
+ if (root) {
23
+ documentModelsLoader = new VitePackageLoader(root, documentModelsDir);
24
+ try {
25
+ const loadedModels = await documentModelsLoader.load();
26
+ documentModels.push(...loadedModels);
27
+ logger.log("Loaded document models:", loadedModels.map((m) => m.documentModel.name).join(", "));
28
+ }
29
+ catch (e) {
30
+ logger.error(e);
31
+ }
32
+ }
33
+ // initializes reactor with loaded document models
34
+ const reactor = await createReactor(documentModels);
35
+ // listens for changes in the local document models to update the reactor
36
+ if (documentModelsLoader) {
37
+ const unsubscribe = await documentModelsLoader.onDocumentModelsChange((models) => {
38
+ reactor.setDocumentModelModules(baseDocumentModels.concat(models));
39
+ });
40
+ process.on("exit", () => {
41
+ unsubscribe();
42
+ });
43
+ }
44
+ // if a remote drive is passed then adds it to the reactor
45
+ if (remoteDrive) {
46
+ try {
47
+ await reactor.addRemoteDrive(remoteDrive, {
48
+ sharingType: "PUBLIC",
49
+ availableOffline: true,
50
+ listeners: [
51
+ {
52
+ block: true,
53
+ callInfo: {
54
+ data: remoteDrive,
55
+ name: "switchboard-push",
56
+ transmitterType: "SwitchboardPush",
57
+ },
58
+ filter: {
59
+ branch: ["main"],
60
+ documentId: ["*"],
61
+ documentType: ["*"],
62
+ scope: ["global"],
63
+ },
64
+ label: "Switchboard Sync",
65
+ listenerId: generateId(),
66
+ system: true,
67
+ },
68
+ ],
69
+ triggers: [],
70
+ });
71
+ }
72
+ catch (e) {
73
+ throw new Error(`Failed to add remote drive "${remoteDrive}": ${e instanceof Error ? e.message : e}`, {
74
+ cause: e,
75
+ });
76
+ }
77
+ }
78
+ // starts the server
79
+ const server = await createServer(reactor);
80
+ // starts Stdio transport
81
+ const transport = new StdioServerTransport();
82
+ await server.connect(transport);
83
+ }
84
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/stdio/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { type DocumentModelModule } from "document-model";
2
+ interface IPackageLoader {
3
+ load(): Promise<DocumentModelModule[]>;
4
+ onDocumentModelsChange(callback: (models: DocumentModelModule[]) => void): Promise<() => void>;
5
+ }
6
+ export declare class VitePackageLoader implements IPackageLoader {
7
+ private readonly logger;
8
+ private readonly root;
9
+ private readonly documentModelsDir;
10
+ private vite;
11
+ constructor(root: string, documentModelsDir: string);
12
+ private get fullPath();
13
+ private initVite;
14
+ load(): Promise<DocumentModelModule[]>;
15
+ onDocumentModelsChange(callback: (models: DocumentModelModule[]) => void): Promise<() => void>;
16
+ }
17
+ export {};
18
+ //# sourceMappingURL=loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/stdio/loader.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAK1D,UAAU,cAAc;IACtB,IAAI,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IACvC,sBAAsB,CACpB,QAAQ,EAAE,CAAC,MAAM,EAAE,mBAAmB,EAAE,KAAK,IAAI,GAChD,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC;CACxB;AAaD,qBAAa,iBAAkB,YAAW,cAAc;IACtD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiD;IAExE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAE3C,OAAO,CAAC,IAAI,CAA4B;gBAE5B,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM;IAKnD,OAAO,KAAK,QAAQ,GAEnB;YAEa,QAAQ;IA4BhB,IAAI,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAqCtC,sBAAsB,CAC1B,QAAQ,EAAE,CAAC,MAAM,EAAE,mBAAmB,EAAE,KAAK,IAAI;CAepD"}
@@ -0,0 +1,86 @@
1
+ import { childLogger } from "document-drive";
2
+ import { access } from "node:fs/promises";
3
+ import path from "node:path";
4
+ import { createServer } from "vite";
5
+ function debounce(func, delay = 100) {
6
+ let timeoutId;
7
+ return (...args) => {
8
+ clearTimeout(timeoutId);
9
+ timeoutId = setTimeout(() => func(...args), delay);
10
+ };
11
+ }
12
+ export class VitePackageLoader {
13
+ logger = childLogger(["reactor-local", "vite-loader"]);
14
+ root;
15
+ documentModelsDir;
16
+ vite;
17
+ constructor(root, documentModelsDir) {
18
+ this.root = root;
19
+ this.documentModelsDir = documentModelsDir;
20
+ }
21
+ get fullPath() {
22
+ return path.join(this.root, this.documentModelsDir);
23
+ }
24
+ async initVite() {
25
+ if (this.vite) {
26
+ return this.vite;
27
+ }
28
+ this.vite = await createServer({
29
+ root: this.root,
30
+ logLevel: "info",
31
+ server: {
32
+ hmr: false,
33
+ middlewareMode: true,
34
+ warmup: {
35
+ ssrFiles: [this.fullPath],
36
+ },
37
+ fs: {
38
+ allow: [this.fullPath],
39
+ },
40
+ },
41
+ optimizeDeps: {
42
+ // It's recommended to disable deps optimization
43
+ noDiscovery: true,
44
+ include: [],
45
+ },
46
+ });
47
+ return this.vite;
48
+ }
49
+ async load() {
50
+ const vite = await this.initVite();
51
+ await access(this.fullPath);
52
+ this.logger.verbose("Loading document models from", this.fullPath);
53
+ try {
54
+ const localDMs = (await vite.ssrLoadModule(this.fullPath));
55
+ const exports = Object.values(localDMs);
56
+ // duck type
57
+ const documentModels = [];
58
+ for (const dm of exports) {
59
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
60
+ if (dm.documentModel) {
61
+ documentModels.push(dm);
62
+ }
63
+ }
64
+ this.logger.verbose(` ➜ Loaded ${documentModels.length} Document Models from: ${this.fullPath}`);
65
+ return documentModels;
66
+ }
67
+ catch (e) {
68
+ this.logger.verbose(` ➜ No Document Models found for: ${this.fullPath}${e ? `\n${JSON.stringify(e)}` : ""}`);
69
+ }
70
+ return [];
71
+ }
72
+ async onDocumentModelsChange(callback) {
73
+ const vite = await this.initVite();
74
+ const listener = debounce(async (changedPath) => {
75
+ if (path.matchesGlob(changedPath, path.join(this.fullPath, "**"))) {
76
+ const documentModels = await this.load();
77
+ callback(documentModels);
78
+ }
79
+ }, 100);
80
+ vite.watcher.on("change", listener);
81
+ return () => {
82
+ vite.watcher.off("change", listener);
83
+ };
84
+ }
85
+ }
86
+ //# sourceMappingURL=loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/stdio/loader.ts"],"names":[],"mappings":"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"}