0pflow 0.1.0-dev.a318c24 → 0.1.0-dev.d003224

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 (87) hide show
  1. package/dist/__tests__/factory.test.js +11 -0
  2. package/dist/__tests__/factory.test.js.map +1 -1
  3. package/dist/__tests__/integration.e2e.test.js +2 -1
  4. package/dist/__tests__/integration.e2e.test.js.map +1 -1
  5. package/dist/__tests__/integration.test.js +87 -82
  6. package/dist/__tests__/integration.test.js.map +1 -1
  7. package/dist/agent.d.ts +1 -0
  8. package/dist/agent.d.ts.map +1 -1
  9. package/dist/agent.js +1 -1
  10. package/dist/agent.js.map +1 -1
  11. package/dist/cli/index.d.ts.map +1 -1
  12. package/dist/cli/index.js +22 -2
  13. package/dist/cli/index.js.map +1 -1
  14. package/dist/cli/install.d.ts.map +1 -1
  15. package/dist/cli/install.js +7 -7
  16. package/dist/cli/install.js.map +1 -1
  17. package/dist/cli/mcp/lib/scaffolding.d.ts +33 -0
  18. package/dist/cli/mcp/lib/scaffolding.d.ts.map +1 -0
  19. package/dist/cli/mcp/lib/scaffolding.js +216 -0
  20. package/dist/cli/mcp/lib/scaffolding.js.map +1 -0
  21. package/dist/cli/mcp/tools/createApp.d.ts.map +1 -1
  22. package/dist/cli/mcp/tools/createApp.js +6 -59
  23. package/dist/cli/mcp/tools/createApp.js.map +1 -1
  24. package/dist/cli/mcp/tools/createDatabase.d.ts.map +1 -1
  25. package/dist/cli/mcp/tools/createDatabase.js +2 -41
  26. package/dist/cli/mcp/tools/createDatabase.js.map +1 -1
  27. package/dist/cli/mcp/tools/getConnectionInfo.d.ts.map +1 -1
  28. package/dist/cli/mcp/tools/getConnectionInfo.js +4 -10
  29. package/dist/cli/mcp/tools/getConnectionInfo.js.map +1 -1
  30. package/dist/cli/mcp/tools/index.d.ts +0 -7
  31. package/dist/cli/mcp/tools/index.d.ts.map +1 -1
  32. package/dist/cli/mcp/tools/index.js +0 -2
  33. package/dist/cli/mcp/tools/index.js.map +1 -1
  34. package/dist/cli/mcp/tools/setupAppSchema.d.ts.map +1 -1
  35. package/dist/cli/mcp/tools/setupAppSchema.js +6 -139
  36. package/dist/cli/mcp/tools/setupAppSchema.js.map +1 -1
  37. package/dist/cli/run.d.ts +2 -0
  38. package/dist/cli/run.d.ts.map +1 -0
  39. package/dist/cli/run.js +389 -0
  40. package/dist/cli/run.js.map +1 -0
  41. package/dist/connections/resolver.d.ts +4 -4
  42. package/dist/connections/resolver.d.ts.map +1 -1
  43. package/dist/connections/resolver.js +12 -8
  44. package/dist/connections/resolver.js.map +1 -1
  45. package/dist/connections/schema.d.ts +3 -1
  46. package/dist/connections/schema.d.ts.map +1 -1
  47. package/dist/connections/schema.js +10 -4
  48. package/dist/connections/schema.js.map +1 -1
  49. package/dist/dev-ui/api.d.ts +3 -0
  50. package/dist/dev-ui/api.d.ts.map +1 -1
  51. package/dist/dev-ui/api.js +3 -3
  52. package/dist/dev-ui/api.js.map +1 -1
  53. package/dist/dev-ui/dag/extractor.d.ts.map +1 -1
  54. package/dist/dev-ui/dag/extractor.js +7 -19
  55. package/dist/dev-ui/dag/extractor.js.map +1 -1
  56. package/dist/dev-ui/dev-server.d.ts +4 -0
  57. package/dist/dev-ui/dev-server.d.ts.map +1 -1
  58. package/dist/dev-ui/dev-server.js +76 -12
  59. package/dist/dev-ui/dev-server.js.map +1 -1
  60. package/dist/dev-ui/pty.d.ts +16 -0
  61. package/dist/dev-ui/pty.d.ts.map +1 -0
  62. package/dist/dev-ui/pty.js +87 -0
  63. package/dist/dev-ui/pty.js.map +1 -0
  64. package/dist/dev-ui/ws.d.ts +26 -1
  65. package/dist/dev-ui/ws.d.ts.map +1 -1
  66. package/dist/dev-ui/ws.js +14 -1
  67. package/dist/dev-ui/ws.js.map +1 -1
  68. package/dist/dev-ui-client/assets/index-C-LxzUII.css +32 -0
  69. package/dist/dev-ui-client/assets/index-aAIwXl4O.js +127 -0
  70. package/dist/dev-ui-client/index.html +2 -2
  71. package/dist/factory.d.ts.map +1 -1
  72. package/dist/factory.js +4 -2
  73. package/dist/factory.js.map +1 -1
  74. package/dist/types.d.ts +2 -2
  75. package/dist/types.d.ts.map +1 -1
  76. package/dist/workflow.d.ts +1 -1
  77. package/dist/workflow.d.ts.map +1 -1
  78. package/dist/workflow.js +9 -2
  79. package/dist/workflow.js.map +1 -1
  80. package/package.json +8 -2
  81. package/templates/app/package.json +1 -0
  82. package/dist/cli/mcp/tools/startDevUi.d.ts +0 -15
  83. package/dist/cli/mcp/tools/startDevUi.d.ts.map +0 -1
  84. package/dist/cli/mcp/tools/startDevUi.js +0 -92
  85. package/dist/cli/mcp/tools/startDevUi.js.map +0 -1
  86. package/dist/dev-ui-client/assets/index-B5wNJx8a.js +0 -77
  87. package/dist/dev-ui-client/assets/index-DpOZNNnF.css +0 -1
@@ -4,8 +4,8 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <title>0pflow Dev UI</title>
7
- <script type="module" crossorigin src="/assets/index-B5wNJx8a.js"></script>
8
- <link rel="stylesheet" crossorigin href="/assets/index-DpOZNNnF.css">
7
+ <script type="module" crossorigin src="/assets/index-aAIwXl4O.js"></script>
8
+ <link rel="stylesheet" crossorigin href="/assets/index-C-LxzUII.css">
9
9
  </head>
10
10
  <body>
11
11
  <div id="root"></div>
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAmB,MAAM,YAAY,CAAC;AAUtE;;GAEG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,CAyGtE"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAmB,MAAM,YAAY,CAAC;AAUtE;;GAEG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,CA2GtE"}
package/dist/factory.js CHANGED
@@ -33,9 +33,10 @@ export async function create0pflow(config) {
33
33
  const integrationProvider = await createIntegrationProvider(config.nangoSecretKey);
34
34
  // Create shared pg pool for connection management (needed for local connection mapping)
35
35
  const pool = new pg.Pool({ connectionString: config.databaseUrl });
36
- await ensureConnectionsTable(config.databaseUrl);
36
+ const appSchema = config.appName;
37
+ await ensureConnectionsTable(config.databaseUrl, appSchema);
37
38
  // Configure workflow runtime with pool + integration provider
38
- configureWorkflowRuntime(pool, integrationProvider);
39
+ configureWorkflowRuntime(pool, integrationProvider, appSchema);
39
40
  // Build node registry (includes built-in nodes + user nodes)
40
41
  // Nodes can be used both via ctx.run() and as agent tools
41
42
  const nodeRegistry = new NodeRegistry({
@@ -47,6 +48,7 @@ export async function create0pflow(config) {
47
48
  modelConfig: config.modelConfig,
48
49
  pool,
49
50
  integrationProvider,
51
+ appSchema,
50
52
  });
51
53
  return {
52
54
  listWorkflows: () => registry.listWorkflows(),
@@ -1 +1 @@
1
- {"version":3,"file":"factory.js","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"factory.js","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -43,8 +43,8 @@ type AnyExecutable = Executable<any, any>;
43
43
  export interface PflowConfig {
44
44
  /** Database connection URL for DBOS durability */
45
45
  databaseUrl: string;
46
- /** Application name (used for DBOS schema naming) */
47
- appName?: string;
46
+ /** Application name (used for DB schema naming and connection table) */
47
+ appName: string;
48
48
  /** Registered workflows */
49
49
  workflows?: Record<string, AnyExecutable>;
50
50
  /** Registered agents */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,7 @@ export interface WorkflowExecutable<TInput = unknown, TOutput = unknown> extends
23
23
  * Configure the workflow runtime (called by factory)
24
24
  * @internal
25
25
  */
26
- export declare function configureWorkflowRuntime(sql: pg.Pool | null, integrationProvider: IntegrationProvider | null): void;
26
+ export declare function configureWorkflowRuntime(sql: pg.Pool | null, integrationProvider: IntegrationProvider | null, appSchema: string): void;
27
27
  /**
28
28
  * Return type for createNodeWrapper — the executable plus a setter
29
29
  * to override the workflow name used for connection resolution.
@@ -1 +1 @@
1
- {"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../src/workflow.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAmC,MAAM,YAAY,CAAC;AAE/F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAEzB;;GAEG;AACH,MAAM,WAAW,kBAAkB,CAAC,MAAM,EAAE,OAAO;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/B,YAAY,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,GAAG,EAAE,CAAC,GAAG,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACjE;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB,CAAC,MAAM,GAAG,OAAO,EAAE,OAAO,GAAG,OAAO,CACrE,SAAQ,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AA0GD;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,EAAE,CAAC,IAAI,GAAG,IAAI,EACnB,mBAAmB,EAAE,mBAAmB,GAAG,IAAI,GAC9C,IAAI,CAGN;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW,CAAC,MAAM,GAAG,OAAO,EAAE,OAAO,GAAG,OAAO;IAC9D,UAAU,EAAE,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChD,qBAAqB,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;CAC3D;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ;WACZ,MAAM,EAAE,OAAO,cACR,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9C,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC;IA4BtC;;;;;OAKG;sBACe,MAAM,EAAE,OAAO,YACrB,MAAM,QACV,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC;CAiChC,CAAC"}
1
+ {"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../src/workflow.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAmC,MAAM,YAAY,CAAC;AAE/F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAEzB;;GAEG;AACH,MAAM,WAAW,kBAAkB,CAAC,MAAM,EAAE,OAAO;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/B,YAAY,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,GAAG,EAAE,CAAC,GAAG,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACjE;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB,CAAC,MAAM,GAAG,OAAO,EAAE,OAAO,GAAG,OAAO,CACrE,SAAQ,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAiHD;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,EAAE,CAAC,IAAI,GAAG,IAAI,EACnB,mBAAmB,EAAE,mBAAmB,GAAG,IAAI,EAC/C,SAAS,EAAE,MAAM,GAChB,IAAI,CAIN;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW,CAAC,MAAM,GAAG,OAAO,EAAE,OAAO,GAAG,OAAO;IAC9D,UAAU,EAAE,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChD,qBAAqB,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;CAC3D;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ;WACZ,MAAM,EAAE,OAAO,cACR,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9C,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC;IA6BtC;;;;;OAKG;sBACe,MAAM,EAAE,OAAO,YACrB,MAAM,QACV,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC;CAkChC,CAAC"}
package/dist/workflow.js CHANGED
@@ -33,7 +33,7 @@ function createDurableContext(config) {
33
33
  `Declared integrations: [${declared}]. ` +
34
34
  `Add "${integrationId}" to the node's integrations array.`);
35
35
  }
36
- const connectionId = await resolveConnectionId(config.sql, config.workflowName, _currentNodeName, integrationId);
36
+ const connectionId = await resolveConnectionId(config.sql, config.workflowName, _currentNodeName, integrationId, config.appSchema);
37
37
  if (!connectionId) {
38
38
  throw new Error(`No connection configured for integration "${integrationId}" ` +
39
39
  `(workflow="${config.workflowName}", node="${_currentNodeName}"). ` +
@@ -56,19 +56,24 @@ function createDurableContext(config) {
56
56
  */
57
57
  const POOL_KEY = Symbol.for("opflow.getWorkflowPool()");
58
58
  const PROVIDER_KEY = Symbol.for("opflow.getWorkflowIntegrationProvider()");
59
+ const SCHEMA_KEY = Symbol.for("opflow.getWorkflowAppSchema()");
59
60
  function getWorkflowPool() {
60
61
  return globalThis[POOL_KEY] ?? null;
61
62
  }
62
63
  function getWorkflowIntegrationProvider() {
63
64
  return globalThis[PROVIDER_KEY] ?? null;
64
65
  }
66
+ function getWorkflowAppSchema() {
67
+ return globalThis[SCHEMA_KEY] ?? "public";
68
+ }
65
69
  /**
66
70
  * Configure the workflow runtime (called by factory)
67
71
  * @internal
68
72
  */
69
- export function configureWorkflowRuntime(sql, integrationProvider) {
73
+ export function configureWorkflowRuntime(sql, integrationProvider, appSchema) {
70
74
  globalThis[POOL_KEY] = sql;
71
75
  globalThis[PROVIDER_KEY] = integrationProvider;
76
+ globalThis[SCHEMA_KEY] = appSchema;
72
77
  }
73
78
  /**
74
79
  * Factory for creating workflow executables
@@ -81,6 +86,7 @@ export const Workflow = {
81
86
  sql: getWorkflowPool(),
82
87
  integrationProvider: getWorkflowIntegrationProvider(),
83
88
  workflowName: definition.name,
89
+ appSchema: getWorkflowAppSchema(),
84
90
  });
85
91
  return definition.run(ctx, inputs);
86
92
  }
@@ -114,6 +120,7 @@ export const Workflow = {
114
120
  sql: getWorkflowPool(),
115
121
  integrationProvider: getWorkflowIntegrationProvider(),
116
122
  workflowName: _parentWorkflowName ?? wrapperName,
123
+ appSchema: getWorkflowAppSchema(),
117
124
  });
118
125
  _parentWorkflowName = undefined;
119
126
  return ctx.run(node, inputs);
@@ -1 +1 @@
1
- {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../src/workflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../src/workflow.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "0pflow",
3
- "version": "0.1.0-dev.a318c24",
3
+ "version": "0.1.0-dev.d003224",
4
4
  "type": "module",
5
5
  "repository": {
6
6
  "type": "git",
@@ -29,19 +29,21 @@
29
29
  "dependencies": {
30
30
  "@ai-sdk/anthropic": "^3.0.23",
31
31
  "@ai-sdk/openai": "^3.0.19",
32
+ "@clack/prompts": "^1.0.1",
32
33
  "@dbos-inc/dbos-sdk": "^4.7.9",
33
34
  "@mozilla/readability": "^0.6.0",
35
+ "@nangohq/node": "^0.45.0",
34
36
  "@tigerdata/mcp-boilerplate": "^1.1.0",
35
37
  "ai": "^6.0.49",
36
38
  "chokidar": "^4.0.0",
37
39
  "cli-table3": "^0.6.5",
38
- "@nangohq/node": "^0.45.0",
39
40
  "commander": "^14.0.2",
40
41
  "dotenv": "^17.2.3",
41
42
  "gray-matter": "^4.0.3",
42
43
  "handlebars": "^4.7.8",
43
44
  "jiti": "^2.6.1",
44
45
  "linkedom": "^0.18.12",
46
+ "node-pty": "1.2.0-beta.11",
45
47
  "pg": "^8.17.2",
46
48
  "picocolors": "^1.1.1",
47
49
  "tree-sitter-typescript": "^0.23.2",
@@ -57,10 +59,14 @@
57
59
  "@types/react-dom": "^19.0.0",
58
60
  "@types/ws": "^8.5.0",
59
61
  "@vitejs/plugin-react": "^4.3.0",
62
+ "@xterm/addon-fit": "^0.11.0",
63
+ "@xterm/addon-web-links": "^0.12.0",
64
+ "@xterm/xterm": "^6.0.0",
60
65
  "@xyflow/react": "^12.0.0",
61
66
  "react": "^19.0.0",
62
67
  "react-dom": "^19.0.0",
63
68
  "tailwindcss": "^4.0.0",
69
+ "tsx": "^4.21.0",
64
70
  "typescript": "^5.9.3",
65
71
  "vite": "^6.0.0",
66
72
  "vitest": "^4.0.15"
@@ -45,6 +45,7 @@
45
45
  "drizzle-kit": "^0.31.8",
46
46
  "postcss": "^8.5.6",
47
47
  "tailwindcss": "^4.1.18",
48
+ "tsx": "^4.21.0",
48
49
  "typescript": "^5.9.3"
49
50
  },
50
51
  "ct3aMetadata": {
@@ -1,15 +0,0 @@
1
- import type { ApiFactory } from "@tigerdata/mcp-boilerplate";
2
- import { z } from "zod";
3
- import type { ServerContext } from "../types.js";
4
- declare const inputSchema: {
5
- readonly port: z.ZodOptional<z.ZodNumber>;
6
- };
7
- declare const outputSchema: {
8
- readonly url: z.ZodOptional<z.ZodString>;
9
- readonly port: z.ZodOptional<z.ZodNumber>;
10
- readonly already_running: z.ZodOptional<z.ZodBoolean>;
11
- readonly error: z.ZodOptional<z.ZodString>;
12
- };
13
- export declare const startDevUiFactory: ApiFactory<ServerContext, typeof inputSchema, typeof outputSchema>;
14
- export {};
15
- //# sourceMappingURL=startDevUi.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"startDevUi.d.ts","sourceRoot":"","sources":["../../../../src/cli/mcp/tools/startDevUi.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,QAAA,MAAM,WAAW;;CAOP,CAAC;AAEX,QAAA,MAAM,YAAY;;;;;CAQR,CAAC;AAgBX,eAAO,MAAM,iBAAiB,EAAE,UAAU,CACxC,aAAa,EACb,OAAO,WAAW,EAClB,OAAO,YAAY,CA6EpB,CAAC"}
@@ -1,92 +0,0 @@
1
- import { existsSync } from "node:fs";
2
- import { resolve, dirname } from "node:path";
3
- import { fileURLToPath } from "node:url";
4
- import { z } from "zod";
5
- const inputSchema = {
6
- port: z
7
- .number()
8
- .optional()
9
- .describe("Preferred port (default 4173). Falls back to an available port if taken."),
10
- };
11
- const outputSchema = {
12
- url: z.string().optional().describe("Dev UI URL (e.g. http://localhost:4173)"),
13
- port: z.number().optional().describe("Actual port the server is running on"),
14
- already_running: z
15
- .boolean()
16
- .optional()
17
- .describe("True if the server was already running from a previous call"),
18
- error: z.string().optional().describe("Error message if the server could not start"),
19
- };
20
- // Module-level singleton state
21
- let devServer = null;
22
- export const startDevUiFactory = () => {
23
- return {
24
- name: "start_dev_ui",
25
- config: {
26
- title: "Start Dev UI",
27
- description: "Start the 0pflow Dev UI server for visualizing workflow DAGs. " +
28
- "Returns the URL with the actual port. Idempotent — if already running, returns existing URL. " +
29
- "Automatically picks an available port if the default (4173) is taken.",
30
- inputSchema,
31
- outputSchema,
32
- },
33
- fn: async ({ port }) => {
34
- // Singleton: if already running, return existing info
35
- if (devServer) {
36
- return {
37
- url: devServer.url,
38
- port: devServer.port,
39
- already_running: true,
40
- };
41
- }
42
- // Check that the dev-ui client has been built (find package root first)
43
- let pkgRoot = dirname(fileURLToPath(import.meta.url));
44
- while (!existsSync(resolve(pkgRoot, "package.json"))) {
45
- const parent = dirname(pkgRoot);
46
- if (parent === pkgRoot)
47
- break;
48
- pkgRoot = parent;
49
- }
50
- const clientIndex = resolve(pkgRoot, "dist/dev-ui-client/index.html");
51
- if (!existsSync(clientIndex)) {
52
- return {
53
- error: "Dev UI client not built. Run: pnpm --filter 0pflow build",
54
- };
55
- }
56
- // Load .env for DATABASE_URL and NANGO_SECRET_KEY (best-effort)
57
- try {
58
- const { resolveEnv } = await import("../../env.js");
59
- resolveEnv();
60
- }
61
- catch {
62
- // Dev UI works without env — connections API just won't be available
63
- }
64
- const { startDevServer } = await import("../../../dev-ui/index.js");
65
- const result = await startDevServer({
66
- projectRoot: process.cwd(),
67
- port: port ?? 4173,
68
- quiet: true, // Critical: suppress stdout in MCP stdio transport
69
- databaseUrl: process.env.DATABASE_URL,
70
- nangoSecretKey: process.env.NANGO_SECRET_KEY,
71
- });
72
- devServer = {
73
- url: result.url,
74
- port: result.port,
75
- cleanup: result.cleanup,
76
- };
77
- // Safety net: clean up if stdin closes (Claude Code exited)
78
- process.stdin.on("end", () => {
79
- if (devServer) {
80
- devServer.cleanup().catch(() => { });
81
- devServer = null;
82
- }
83
- });
84
- return {
85
- url: result.url,
86
- port: result.port,
87
- already_running: false,
88
- };
89
- },
90
- };
91
- };
92
- //# sourceMappingURL=startDevUi.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"startDevUi.js","sourceRoot":"","sources":["../../../../src/cli/mcp/tools/startDevUi.ts"],"names":[],"mappings":"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"}