@livestore/cli 0.4.0 → 0.5.0-dev.1

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 (125) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/__tests__/fixtures/mock-config.d.ts +8 -9
  3. package/dist/__tests__/fixtures/mock-config.d.ts.map +1 -1
  4. package/dist/__tests__/fixtures/mock-config.js +18 -8
  5. package/dist/__tests__/fixtures/mock-config.js.map +1 -1
  6. package/dist/__tests__/sync-operations.test.js +32 -22
  7. package/dist/__tests__/sync-operations.test.js.map +1 -1
  8. package/dist/bin.js +7 -6
  9. package/dist/bin.js.map +1 -1
  10. package/dist/cli.d.ts +2 -23
  11. package/dist/cli.d.ts.map +1 -1
  12. package/dist/cli.js +4 -4
  13. package/dist/cli.js.map +1 -1
  14. package/dist/commands/__fixtures__/mcp-protocol-server.d.ts +2 -0
  15. package/dist/commands/__fixtures__/mcp-protocol-server.d.ts.map +1 -0
  16. package/dist/commands/__fixtures__/mcp-protocol-server.js +10 -0
  17. package/dist/commands/__fixtures__/mcp-protocol-server.js.map +1 -0
  18. package/dist/commands/import-export.d.ts +5 -19
  19. package/dist/commands/import-export.d.ts.map +1 -1
  20. package/dist/commands/import-export.js +13 -13
  21. package/dist/commands/import-export.js.map +1 -1
  22. package/dist/commands/mcp-coach.d.ts +8 -7
  23. package/dist/commands/mcp-coach.d.ts.map +1 -1
  24. package/dist/commands/mcp-coach.js +11 -11
  25. package/dist/commands/mcp-coach.js.map +1 -1
  26. package/dist/commands/mcp-protocols.d.ts +7 -0
  27. package/dist/commands/mcp-protocols.d.ts.map +1 -0
  28. package/dist/commands/mcp-protocols.js +12 -0
  29. package/dist/commands/mcp-protocols.js.map +1 -0
  30. package/dist/commands/mcp-protocols.test.d.ts +2 -0
  31. package/dist/commands/mcp-protocols.test.d.ts.map +1 -0
  32. package/dist/commands/mcp-protocols.test.js +60 -0
  33. package/dist/commands/mcp-protocols.test.js.map +1 -0
  34. package/dist/commands/mcp-stdio.test.d.ts +2 -0
  35. package/dist/commands/mcp-stdio.test.d.ts.map +1 -0
  36. package/dist/commands/mcp-stdio.test.js +79 -0
  37. package/dist/commands/mcp-stdio.test.js.map +1 -0
  38. package/dist/commands/mcp-tool-handlers.d.ts +1 -1
  39. package/dist/commands/mcp-tool-handlers.d.ts.map +1 -1
  40. package/dist/commands/mcp-tool-handlers.js +9 -8
  41. package/dist/commands/mcp-tool-handlers.js.map +1 -1
  42. package/dist/commands/mcp-tools-defs.d.ts +74 -73
  43. package/dist/commands/mcp-tools-defs.d.ts.map +1 -1
  44. package/dist/commands/mcp-tools-defs.js +64 -57
  45. package/dist/commands/mcp-tools-defs.js.map +1 -1
  46. package/dist/commands/mcp-tools-defs.test.d.ts +2 -0
  47. package/dist/commands/mcp-tools-defs.test.d.ts.map +1 -0
  48. package/dist/commands/mcp-tools-defs.test.js +11 -0
  49. package/dist/commands/mcp-tools-defs.test.js.map +1 -0
  50. package/dist/commands/mcp.d.ts +1 -3
  51. package/dist/commands/mcp.d.ts.map +1 -1
  52. package/dist/commands/mcp.js +15 -14
  53. package/dist/commands/mcp.js.map +1 -1
  54. package/dist/commands/new-project.d.ts +19 -27
  55. package/dist/commands/new-project.d.ts.map +1 -1
  56. package/dist/commands/new-project.js +19 -18
  57. package/dist/commands/new-project.js.map +1 -1
  58. package/dist/mcp-content/architecture.d.ts +1 -1
  59. package/dist/mcp-content/architecture.d.ts.map +1 -1
  60. package/dist/mcp-content/architecture.js +3 -3
  61. package/dist/mcp-content/features.d.ts +1 -1
  62. package/dist/mcp-content/features.d.ts.map +1 -1
  63. package/dist/mcp-content/features.js +1 -1
  64. package/dist/mcp-content/getting-started.d.ts +1 -1
  65. package/dist/mcp-content/getting-started.d.ts.map +1 -1
  66. package/dist/mcp-content/getting-started.js +37 -37
  67. package/dist/mcp-content/overview.d.ts +1 -1
  68. package/dist/mcp-content/overview.d.ts.map +1 -1
  69. package/dist/mcp-content/overview.js +6 -6
  70. package/dist/mcp-content/schemas/blog.d.ts +1 -1
  71. package/dist/mcp-content/schemas/blog.d.ts.map +1 -1
  72. package/dist/mcp-content/schemas/blog.js +25 -25
  73. package/dist/mcp-content/schemas/ecommerce.d.ts +1 -1
  74. package/dist/mcp-content/schemas/ecommerce.d.ts.map +1 -1
  75. package/dist/mcp-content/schemas/ecommerce.js +67 -67
  76. package/dist/mcp-content/schemas/social.d.ts +1 -1
  77. package/dist/mcp-content/schemas/social.d.ts.map +1 -1
  78. package/dist/mcp-content/schemas/social.js +48 -48
  79. package/dist/mcp-content/schemas/todo.d.ts +1 -1
  80. package/dist/mcp-content/schemas/todo.d.ts.map +1 -1
  81. package/dist/mcp-content/schemas/todo.js +35 -35
  82. package/dist/mcp-runtime/runtime.d.ts +5 -5
  83. package/dist/mcp-runtime/runtime.d.ts.map +1 -1
  84. package/dist/mcp-runtime/runtime.js +5 -5
  85. package/dist/mcp-runtime/runtime.js.map +1 -1
  86. package/dist/mod.js +1 -1
  87. package/dist/module-loader.d.ts +2 -2
  88. package/dist/module-loader.d.ts.map +1 -1
  89. package/dist/module-loader.js +8 -8
  90. package/dist/module-loader.js.map +1 -1
  91. package/dist/package-manager.d.ts +3 -3
  92. package/dist/package-manager.d.ts.map +1 -1
  93. package/dist/package-manager.test.js +1 -1
  94. package/dist/sync-operations.d.ts +24 -30
  95. package/dist/sync-operations.d.ts.map +1 -1
  96. package/dist/sync-operations.js +15 -15
  97. package/dist/sync-operations.js.map +1 -1
  98. package/package.json +45 -59
  99. package/src/__tests__/fixtures/.gitignore +1 -0
  100. package/src/__tests__/fixtures/mock-config.ts +21 -10
  101. package/src/__tests__/sync-operations.test.ts +36 -35
  102. package/src/bin.ts +7 -6
  103. package/src/cli.ts +1 -1
  104. package/src/commands/__fixtures__/mcp-protocol-server.ts +12 -0
  105. package/src/commands/import-export.ts +29 -29
  106. package/src/commands/mcp-coach.ts +13 -12
  107. package/src/commands/mcp-protocols.test.ts +76 -0
  108. package/src/commands/mcp-protocols.ts +12 -0
  109. package/src/commands/mcp-stdio.test.ts +93 -0
  110. package/src/commands/mcp-tool-handlers.ts +11 -8
  111. package/src/commands/mcp-tools-defs.test.ts +13 -0
  112. package/src/commands/mcp-tools-defs.ts +57 -55
  113. package/src/commands/mcp.ts +9 -4
  114. package/src/commands/new-project.ts +50 -37
  115. package/src/mcp-content/architecture.ts +3 -3
  116. package/src/mcp-content/features.ts +1 -1
  117. package/src/mcp-content/getting-started.ts +37 -37
  118. package/src/mcp-content/overview.ts +6 -6
  119. package/src/mcp-content/schemas/blog.ts +25 -25
  120. package/src/mcp-content/schemas/ecommerce.ts +67 -67
  121. package/src/mcp-content/schemas/social.ts +48 -48
  122. package/src/mcp-content/schemas/todo.ts +35 -35
  123. package/src/mcp-runtime/runtime.ts +7 -7
  124. package/src/module-loader.ts +11 -12
  125. package/src/sync-operations.ts +26 -19
@@ -1,27 +1,28 @@
1
- import { Schema, Tool, Toolkit } from '@livestore/utils/effect';
2
- import { coachTool } from "./mcp-coach.js";
1
+ import { Tool, Toolkit } from 'effect/ai';
2
+ import { Schema } from '@livestore/utils/effect';
3
+ import { coachTool } from './mcp-coach.js';
3
4
  export const livestoreToolkit = Toolkit.make(coachTool, Tool.make('livestore_generate_schema', {
4
5
  description: 'Generate a LiveStore schema for a specific use case. Choose from predefined types (todo, blog, social, ecommerce) or request a custom schema by providing a description.',
5
- parameters: {
6
- schemaType: Schema.String.annotations({
6
+ parameters: Schema.Struct({
7
+ schemaType: Schema.String.annotate({
7
8
  description: "Schema type: 'todo', 'blog', 'social', 'ecommerce', or 'custom'",
8
9
  }),
9
- customDescription: Schema.optional(Schema.String.annotations({
10
+ customDescription: Schema.optional(Schema.String.annotate({
10
11
  description: "For custom schemas: describe your data model needs (e.g., 'user management system with roles and permissions')",
11
12
  })),
12
- },
13
+ }),
13
14
  success: Schema.Struct({
14
- schemaCode: Schema.String.annotations({ description: 'The generated LiveStore schema TypeScript code' }),
15
- explanation: Schema.String.annotations({ description: 'Brief explanation of the schema structure' }),
15
+ schemaCode: Schema.String.annotate({ description: 'The generated LiveStore schema TypeScript code' }),
16
+ explanation: Schema.String.annotate({ description: 'Brief explanation of the schema structure' }),
16
17
  }),
17
18
  }), Tool.make('livestore_get_example_schema', {
18
19
  description: 'Get a complete example LiveStore schema with TypeScript code. Returns ready-to-use schema definitions for common application types.',
19
- parameters: {
20
- type: Schema.String.annotations({ description: "Example type: 'todo', 'blog', 'social', or 'ecommerce'" }),
21
- },
20
+ parameters: Schema.Struct({
21
+ type: Schema.String.annotate({ description: "Example type: 'todo', 'blog', 'social', or 'ecommerce'" }),
22
+ }),
22
23
  success: Schema.Struct({
23
- schemaCode: Schema.String.annotations({ description: 'The complete LiveStore schema code' }),
24
- description: Schema.String.annotations({ description: 'Description of what this schema models' }),
24
+ schemaCode: Schema.String.annotate({ description: 'The complete LiveStore schema code' }),
25
+ description: Schema.String.annotate({ description: 'Description of what this schema models' }),
25
26
  }),
26
27
  })
27
28
  .annotate(Tool.Readonly, true)
@@ -72,23 +73,23 @@ Returns on success:
72
73
  "eventNames": ["<event-name-1>", "<event-name-2>", "..."]
73
74
  }
74
75
  }`,
75
- parameters: {
76
- configPath: Schema.String.annotations({
76
+ parameters: Schema.Struct({
77
+ configPath: Schema.String.annotate({
77
78
  description: 'Path to a module that exports named variables: schema and syncBackend',
78
79
  }),
79
- storeId: Schema.String.annotations({ description: 'Required store id for the LiveStore instance.' }),
80
- clientId: Schema.optional(Schema.String.annotations({ description: 'Optional client id for the LiveStore instance.' })),
81
- sessionId: Schema.optional(Schema.String.annotations({ description: 'Optional session id for the LiveStore instance.' })),
82
- },
80
+ storeId: Schema.String.annotate({ description: 'Required store id for the LiveStore instance.' }),
81
+ clientId: Schema.optional(Schema.String.annotate({ description: 'Optional client id for the LiveStore instance.' })),
82
+ sessionId: Schema.optional(Schema.String.annotate({ description: 'Optional session id for the LiveStore instance.' })),
83
+ }),
83
84
  success: Schema.Struct({
84
85
  storeId: Schema.String,
85
86
  clientId: Schema.String,
86
87
  sessionId: Schema.String,
87
88
  schemaInfo: Schema.Struct({
88
- tableNames: Schema.Array(Schema.String).annotations({
89
+ tableNames: Schema.Array(Schema.String).annotate({
89
90
  description: 'Non-system table names in the connected schema',
90
91
  }),
91
- eventNames: Schema.Array(Schema.String).annotations({
92
+ eventNames: Schema.Array(Schema.String).annotate({
92
93
  description: 'Canonical event names defined by the connected schema',
93
94
  }),
94
95
  }),
@@ -117,15 +118,18 @@ Returns on success:
117
118
  "rows": [{ "col": "value" }],
118
119
  "rowCount": 1
119
120
  }`,
120
- parameters: {
121
- sql: Schema.String.annotations({ description: 'The SQL query to execute' }),
122
- bindValues: Schema.Union(Schema.Array(Schema.JsonValue), Schema.Record({ key: Schema.String, value: Schema.JsonValue })).annotations({
121
+ parameters: Schema.Struct({
122
+ sql: Schema.String.annotate({ description: 'The SQL query to execute' }),
123
+ bindValues: Schema.Union([
124
+ Schema.Array(Schema.Json),
125
+ Schema.Record(Schema.String, Schema.Json),
126
+ ]).annotate({
123
127
  description: 'Bind values for the SQL query (array or record). Record keys must not start with $.',
124
128
  }),
125
- },
129
+ }),
126
130
  success: Schema.Struct({
127
- rows: Schema.Array(Schema.Record({ key: Schema.String, value: Schema.JsonValue })),
128
- rowCount: Schema.Number,
131
+ rows: Schema.Array(Schema.Record(Schema.String, Schema.Json)),
132
+ rowCount: Schema.Finite,
129
133
  }),
130
134
  }).annotate(Tool.Destructive, false), Tool.make('livestore_instance_commit_events', {
131
135
  description: `Commit one or more events defined by your connected LiveStore schema.
@@ -151,15 +155,15 @@ Example parameters:
151
155
 
152
156
  Returns on success:
153
157
  { "committed": 1 }`,
154
- parameters: {
158
+ parameters: Schema.Struct({
155
159
  events: Schema.Array(Schema.Struct({
156
- name: Schema.String.annotations({ description: 'The name of the event' }),
157
- args: Schema.JsonValue.annotations({
160
+ name: Schema.String.annotate({ description: 'The name of the event' }),
161
+ args: Schema.Json.annotate({
158
162
  description: 'The arguments for the event as a non-stringified JSON value',
159
163
  }),
160
164
  })),
161
- },
162
- success: Schema.Struct({ committed: Schema.Number }),
165
+ }),
166
+ success: Schema.Struct({ committed: Schema.Finite }),
163
167
  }).annotate(Tool.Destructive, true), Tool.make('livestore_instance_status', {
164
168
  description: `Report the LiveStore runtime status for the current MCP session.
165
169
 
@@ -176,21 +180,24 @@ Returns when not connected:
176
180
  {
177
181
  "_tag": "disconnected"
178
182
  }`,
179
- parameters: {},
180
- success: Schema.Union(Schema.TaggedStruct('connected', {
181
- storeId: Schema.String,
182
- clientId: Schema.String,
183
- sessionId: Schema.String,
184
- tableCounts: Schema.Record({ key: Schema.String, value: Schema.Number }).annotations({
185
- description: 'Tables in the LiveStore instance with their row count',
183
+ parameters: Tool.EmptyParams,
184
+ success: Schema.Union([
185
+ Schema.TaggedStruct('connected', {
186
+ storeId: Schema.String,
187
+ clientId: Schema.String,
188
+ sessionId: Schema.String,
189
+ tableCounts: Schema.Record(Schema.String, Schema.Finite).annotate({
190
+ description: 'Tables in the LiveStore instance with their row count',
191
+ }),
186
192
  }),
187
- }), Schema.TaggedStruct('disconnected', {})),
193
+ Schema.TaggedStruct('disconnected', {}),
194
+ ]),
188
195
  }).annotate(Tool.Readonly, true), Tool.make('livestore_instance_disconnect', {
189
196
  description: `Disconnect the current LiveStore instance and release resources.
190
197
 
191
198
  Example success:
192
199
  { "_tag": "disconnected" }`,
193
- parameters: {},
200
+ parameters: Tool.EmptyParams,
194
201
  success: Schema.TaggedStruct('disconnected', {}),
195
202
  }), Tool.make('livestore_sync_export', {
196
203
  description: `Export all events from a sync backend to JSON data.
@@ -217,18 +224,18 @@ Returns on success:
217
224
  "exportedAt": "2024-01-15T10:30:00.000Z",
218
225
  "data": { "version": 1, "storeId": "my-store", ... }
219
226
  }`,
220
- parameters: {
221
- configPath: Schema.String.annotations({
227
+ parameters: Schema.Struct({
228
+ configPath: Schema.String.annotate({
222
229
  description: 'Path to a module that exports schema and syncBackend',
223
230
  }),
224
- storeId: Schema.String.annotations({ description: 'Store identifier' }),
225
- clientId: Schema.optional(Schema.String.annotations({ description: 'Client identifier (default: mcp-export)' })),
226
- },
231
+ storeId: Schema.String.annotate({ description: 'Store identifier' }),
232
+ clientId: Schema.optional(Schema.String.annotate({ description: 'Client identifier (default: mcp-export)' })),
233
+ }),
227
234
  success: Schema.Struct({
228
235
  storeId: Schema.String,
229
- eventCount: Schema.Number,
236
+ eventCount: Schema.Finite,
230
237
  exportedAt: Schema.String,
231
- data: Schema.JsonValue.annotations({ description: 'The export file data (can be saved or passed to import)' }),
238
+ data: Schema.Json.annotate({ description: 'The export file data (can be saved or passed to import)' }),
232
239
  }),
233
240
  }).annotate(Tool.Readonly, true), Tool.make('livestore_sync_import', {
234
241
  description: `Import events from export data to a sync backend.
@@ -257,21 +264,21 @@ Returns on success:
257
264
  "eventCount": 127,
258
265
  "dryRun": false
259
266
  }`,
260
- parameters: {
261
- configPath: Schema.String.annotations({
267
+ parameters: Schema.Struct({
268
+ configPath: Schema.String.annotate({
262
269
  description: 'Path to a module that exports schema and syncBackend',
263
270
  }),
264
- storeId: Schema.String.annotations({ description: 'Store identifier' }),
265
- clientId: Schema.optional(Schema.String.annotations({ description: 'Client identifier (default: mcp-import)' })),
266
- data: Schema.JsonValue.annotations({
271
+ storeId: Schema.String.annotate({ description: 'Store identifier' }),
272
+ clientId: Schema.optional(Schema.String.annotate({ description: 'Client identifier (default: mcp-import)' })),
273
+ data: Schema.Json.annotate({
267
274
  description: 'The export data to import (from livestore_sync_export or a file)',
268
275
  }),
269
- force: Schema.optional(Schema.Boolean.annotations({ description: 'Force import even if store ID does not match' })),
270
- dryRun: Schema.optional(Schema.Boolean.annotations({ description: 'Validate without actually importing' })),
271
- },
276
+ force: Schema.optional(Schema.Boolean.annotate({ description: 'Force import even if store ID does not match' })),
277
+ dryRun: Schema.optional(Schema.Boolean.annotate({ description: 'Validate without actually importing' })),
278
+ }),
272
279
  success: Schema.Struct({
273
280
  storeId: Schema.String,
274
- eventCount: Schema.Number,
281
+ eventCount: Schema.Finite,
275
282
  dryRun: Schema.Boolean,
276
283
  }),
277
284
  }).annotate(Tool.Destructive, true));
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-tools-defs.js","sourceRoot":"","sources":["../../src/commands/mcp-tools-defs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-tools-defs.js","sourceRoot":"","sources":["../../src/commands/mcp-tools-defs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=mcp-tools-defs.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-tools-defs.test.d.ts","sourceRoot":"","sources":["../../src/commands/mcp-tools-defs.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ import { Tool } from 'effect/ai';
2
+ import { Vitest } from '@livestore/utils-dev/node-vitest';
3
+ import { livestoreToolkit } from './mcp-tools-defs.js';
4
+ Vitest.describe('livestoreToolkit', () => {
5
+ Vitest.it('exposes MCP-compatible object parameter schemas', () => {
6
+ for (const tool of Object.values(livestoreToolkit.tools)) {
7
+ Vitest.expect(Tool.getJsonSchema(tool), tool.name).toMatchObject({ type: 'object' });
8
+ }
9
+ });
10
+ });
11
+ //# sourceMappingURL=mcp-tools-defs.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-tools-defs.test.js","sourceRoot":"","sources":["../../src/commands/mcp-tools-defs.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AAEzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAEtD,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IACvC,MAAM,CAAC,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QAChE,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;YACzD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;QACtF,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,5 +1,3 @@
1
1
  import { Cli } from '@livestore/utils/node';
2
- export declare const mcpCommand: Cli.Command.Command<"mcp", never, never, {
3
- readonly subcommand: import("effect/Option").Option<{}>;
4
- }>;
2
+ export declare const mcpCommand: Cli.Command.Command<"mcp", {}, {}, import("effect/Cause").IllegalArgumentError, never>;
5
3
  //# sourceMappingURL=mcp.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAgB,MAAM,uBAAuB,CAAA;AAgGzD,eAAO,MAAM,UAAU;;EAAgF,CAAA"}
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,GAAG,EAAgB,MAAM,uBAAuB,CAAA;AAmGzD,eAAO,MAAM,UAAU,wFAAgF,CAAA"}
@@ -1,17 +1,19 @@
1
- import { Effect, Layer, Logger, McpServer } from '@livestore/utils/effect';
1
+ import { McpProtocol, McpServer } from 'effect/ai';
2
+ import { Effect, Layer, Logger } from '@livestore/utils/effect';
2
3
  import { Cli, PlatformNode } from '@livestore/utils/node';
3
- import { architectureContent } from "../mcp-content/architecture.js";
4
- import { featuresContent } from "../mcp-content/features.js";
5
- import { gettingStartedContent } from "../mcp-content/getting-started.js";
4
+ import { architectureContent } from '../mcp-content/architecture.js';
5
+ import { featuresContent } from '../mcp-content/features.js';
6
+ import { gettingStartedContent } from '../mcp-content/getting-started.js';
6
7
  // Content imports
7
- import { overviewContent } from "../mcp-content/overview.js";
8
- import { blogSchemaContent } from "../mcp-content/schemas/blog.js";
9
- import { ecommerceSchemaContent } from "../mcp-content/schemas/ecommerce.js";
10
- import { socialSchemaContent } from "../mcp-content/schemas/social.js";
11
- import { todoSchemaContent } from "../mcp-content/schemas/todo.js";
12
- import { toolHandlers } from "./mcp-tool-handlers.js";
8
+ import { overviewContent } from '../mcp-content/overview.js';
9
+ import { blogSchemaContent } from '../mcp-content/schemas/blog.js';
10
+ import { ecommerceSchemaContent } from '../mcp-content/schemas/ecommerce.js';
11
+ import { socialSchemaContent } from '../mcp-content/schemas/social.js';
12
+ import { todoSchemaContent } from '../mcp-content/schemas/todo.js';
13
+ import { toolHandlers } from './mcp-tool-handlers.js';
14
+ import { supportedMcpProtocols } from './mcp-protocols.js';
13
15
  // Tools imports
14
- import { livestoreToolkit } from "./mcp-tools-defs.js";
16
+ import { livestoreToolkit } from './mcp-tools-defs.js';
15
17
  const LivestoreResources = Layer.mergeAll(McpServer.resource({
16
18
  uri: 'livestore://overview',
17
19
  name: 'LiveStore Overview',
@@ -60,9 +62,8 @@ const mcpServerCommand = Cli.Command.make('server', {}, Effect.fn(function* () {
60
62
  return yield* McpServer.layerStdio({
61
63
  name: 'livestore-mcp',
62
64
  version: '0.1.0',
63
- stdin: PlatformNode.NodeStream.stdin,
64
- stdout: PlatformNode.NodeSink.stdout,
65
- }).pipe(Layer.provide(LivestoreResources), Layer.provide(LivestoreTools), Layer.provide(Logger.add(Logger.prettyLogger({ stderr: true }))), Layer.launch);
65
+ protocols: supportedMcpProtocols,
66
+ }).pipe(Layer.provide(LivestoreResources), Layer.provide(LivestoreTools), Layer.provide(Layer.merge(Logger.layer([Logger.consolePretty()]), Layer.succeed(Logger.LogToStderr, true))), Layer.provide(PlatformNode.NodeStdio.layer), Layer.launch);
66
67
  }));
67
68
  export const mcpCommand = Cli.Command.make('mcp').pipe(Cli.Command.withSubcommands([mcpServerCommand]));
68
69
  //# sourceMappingURL=mcp.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"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"}
@@ -1,41 +1,33 @@
1
- import { HttpClient, Option, Schema } from '@livestore/utils/effect';
1
+ import { ChildProcessSpawner, HttpClient, Option, Schema } from '@livestore/utils/effect';
2
2
  import { Cli } from '@livestore/utils/node';
3
- declare const ExampleNotFoundError_base: Schema.TaggedErrorClass<ExampleNotFoundError, "ExampleNotFoundError", {
4
- readonly _tag: Schema.tag<"ExampleNotFoundError">;
5
- } & {
6
- exampleName: typeof Schema.String;
7
- availableExamples: Schema.Array$<typeof Schema.String>;
8
- message: typeof Schema.String;
9
- }>;
3
+ declare const ExampleNotFoundError_base: Schema.Class<ExampleNotFoundError, Schema.TaggedStruct<"ExampleNotFoundError", {
4
+ readonly exampleName: Schema.String;
5
+ readonly availableExamples: Schema.$Array<Schema.String>;
6
+ readonly message: Schema.String;
7
+ }>, import("effect/Cause").YieldableError>;
10
8
  export declare class ExampleNotFoundError extends ExampleNotFoundError_base {
11
9
  }
12
- declare const NetworkError_base: Schema.TaggedErrorClass<NetworkError, "NetworkError", {
13
- readonly _tag: Schema.tag<"NetworkError">;
14
- } & {
15
- cause: typeof Schema.Unknown;
16
- message: typeof Schema.String;
17
- }>;
10
+ declare const NetworkError_base: Schema.Class<NetworkError, Schema.TaggedStruct<"NetworkError", {
11
+ readonly cause: Schema.Unknown;
12
+ readonly message: Schema.String;
13
+ }>, import("effect/Cause").YieldableError>;
18
14
  export declare class NetworkError extends NetworkError_base {
19
15
  }
20
- declare const DirectoryExistsError_base: Schema.TaggedErrorClass<DirectoryExistsError, "DirectoryExistsError", {
21
- readonly _tag: Schema.tag<"DirectoryExistsError">;
22
- } & {
23
- path: typeof Schema.String;
24
- message: typeof Schema.String;
25
- }>;
16
+ declare const DirectoryExistsError_base: Schema.Class<DirectoryExistsError, Schema.TaggedStruct<"DirectoryExistsError", {
17
+ readonly path: Schema.String;
18
+ readonly message: Schema.String;
19
+ }>, import("effect/Cause").YieldableError>;
26
20
  export declare class DirectoryExistsError extends DirectoryExistsError_base {
27
21
  }
28
- declare const NoExamplesError_base: Schema.TaggedErrorClass<NoExamplesError, "NoExamplesError", {
29
- readonly _tag: Schema.tag<"NoExamplesError">;
30
- } & {
31
- message: typeof Schema.String;
32
- }>;
22
+ declare const NoExamplesError_base: Schema.Class<NoExamplesError, Schema.TaggedStruct<"NoExamplesError", {
23
+ readonly message: Schema.String;
24
+ }>, import("effect/Cause").YieldableError>;
33
25
  export declare class NoExamplesError extends NoExamplesError_base {
34
26
  }
35
- export declare const createCommand: Cli.Command.Command<"create", HttpClient.HttpClient | Cli.Prompt.Prompt.Environment | import("@effect/platform/CommandExecutor").CommandExecutor, import("@effect/platform/Error").PlatformError | import("@effect/platform/HttpClientError").ResponseError | ExampleNotFoundError | NetworkError | NoExamplesError | import("@effect/platform/Terminal").QuitException, {
27
+ export declare const createCommand: Cli.Command.Command<"create", {
36
28
  readonly example: Option.Option<string>;
37
29
  readonly ref: string;
38
30
  readonly path: Option.Option<string>;
39
- }>;
31
+ }, {}, ExampleNotFoundError | import("effect/http/HttpClientError").HttpClientError | NetworkError | NoExamplesError | import("effect/PlatformError").PlatformError | import("effect/Terminal").QuitError, ChildProcessSpawner.ChildProcessSpawner | HttpClient.HttpClient | Cli.Prompt.Environment>;
40
32
  export {};
41
33
  //# sourceMappingURL=new-project.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"new-project.d.ts","sourceRoot":"","sources":["../../src/commands/new-project.ts"],"names":[],"mappings":"AAIA,OAAO,EAKL,UAAU,EAEV,MAAM,EACN,MAAM,EACP,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAA;;;;;;;;AA0B3C,qBAAa,oBAAqB,SAAQ,yBAIxC;CAAG;;;;;;;AAEL,qBAAa,YAAa,SAAQ,iBAGhC;CAAG;;;;;;;AAEL,qBAAa,oBAAqB,SAAQ,yBAGxC;CAAG;;;;;;AAEL,qBAAa,eAAgB,SAAQ,oBAEnC;CAAG;AA2JL,eAAO,MAAM,aAAa;;;;EAuGzB,CAAA"}
1
+ {"version":3,"file":"new-project.d.ts","sourceRoot":"","sources":["../../src/commands/new-project.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,mBAAmB,EAInB,UAAU,EAEV,MAAM,EACN,MAAM,EACP,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAA;;;;;;AA0B3C,qBAAa,oBAAqB,SAAQ,yBAMxC;CAAG;;;;;AAEL,qBAAa,YAAa,SAAQ,iBAGhC;CAAG;;;;;AAEL,qBAAa,oBAAqB,SAAQ,yBAKxC;CAAG;;;;AAEL,qBAAa,eAAgB,SAAQ,oBAKpC;CAAG;AA6JJ,eAAO,MAAM,aAAa;;;;oSA0GzB,CAAA"}
@@ -1,13 +1,13 @@
1
1
  import * as os from 'node:os';
2
2
  import * as nodePath from 'node:path';
3
3
  import { sluggify } from '@livestore/utils';
4
- import { Command, Console, Effect, FileSystem, HttpClient, HttpClientRequest, Option, Schema, } from '@livestore/utils/effect';
4
+ import { ChildProcess, ChildProcessSpawner, Console, Effect, FileSystem, HttpClient, HttpClientRequest, Option, Schema, } from '@livestore/utils/effect';
5
5
  import { Cli } from '@livestore/utils/node';
6
- import { detectPackageManager, pmCommands } from "../package-manager.js";
6
+ import { detectPackageManager, pmCommands } from '../package-manager.js';
7
7
  // Schema for GitHub API response
8
8
  const GitHubContentSchema = Schema.Struct({
9
9
  name: Schema.String,
10
- type: Schema.Literal('dir', 'file'),
10
+ type: Schema.Literals(['dir', 'file']),
11
11
  path: Schema.String,
12
12
  download_url: Schema.NullOr(Schema.String),
13
13
  });
@@ -19,7 +19,7 @@ const githubRequest = (url) => {
19
19
  };
20
20
  /** Schema for parsing package.json scripts (dev or start) */
21
21
  const PackageJsonScriptsSchema = Schema.Struct({
22
- scripts: Schema.Union(Schema.Struct({ dev: Schema.String }), Schema.Struct({ start: Schema.String })),
22
+ scripts: Schema.Union([Schema.Struct({ dev: Schema.String }), Schema.Struct({ start: Schema.String })]),
23
23
  });
24
24
  // Error types
25
25
  export class ExampleNotFoundError extends Schema.TaggedError('~@livestore/cli/ExampleNotFoundError')('ExampleNotFoundError', {
@@ -47,12 +47,12 @@ const fetchExamples = (ref) => Effect.gen(function* () {
47
47
  const url = `https://api.github.com/repos/livestorejs/livestore/contents/examples?ref=${ref}`;
48
48
  yield* Effect.log(`Fetching examples from ref: ${ref}`);
49
49
  const request = githubRequest(url);
50
- const response = yield* HttpClient.execute(request).pipe(Effect.scoped, Effect.catchAll((error) => new NetworkError({
50
+ const response = yield* HttpClient.execute(request).pipe(Effect.scoped, Effect.catch((error) => new NetworkError({
51
51
  cause: error,
52
52
  message: `Failed to fetch examples from GitHub: ${String(error)}`,
53
53
  })));
54
54
  const responseText = yield* response.text;
55
- const examples = yield* Schema.decodeUnknown(Schema.parseJson(GitHubContentsResponseSchema))(responseText).pipe(Effect.catchAll((error) => new NetworkError({
55
+ const examples = yield* Schema.decodeEffect(Schema.fromJsonString(GitHubContentsResponseSchema))(responseText).pipe(Effect.catch((error) => new NetworkError({
56
56
  cause: error,
57
57
  message: `Failed to parse GitHub API response: ${String(error)}`,
58
58
  })));
@@ -68,7 +68,7 @@ const selectExample = (examples) => Effect.gen(function* () {
68
68
  if (examples.length === 0) {
69
69
  return yield* new NoExamplesError({ message: 'No examples available' });
70
70
  }
71
- const prompt = Cli.Prompt.select({
71
+ const prompt = Cli.Prompt.Select({
72
72
  message: '📦 Select a LiveStore example to create:',
73
73
  choices: examples.map((example) => ({
74
74
  title: example,
@@ -81,12 +81,13 @@ const selectExample = (examples) => Effect.gen(function* () {
81
81
  // Download and extract example using tiged approach
82
82
  const downloadExample = (exampleName, ref, destinationPath) => Effect.gen(function* () {
83
83
  yield* Console.log(`📥 Downloading example "${exampleName}" from ref "${ref}"...`);
84
+ const spawner = yield* ChildProcessSpawner.ChildProcessSpawner;
84
85
  const tempDir = yield* Effect.sync(() => os.tmpdir());
85
86
  const tarballPath = nodePath.join(tempDir, `livestore-${sluggify(ref)}-${Date.now()}.tar.gz`);
86
87
  const tarballUrl = `https://api.github.com/repos/livestorejs/livestore/tarball/${ref}`;
87
88
  // Download tarball directly
88
89
  const request = githubRequest(tarballUrl);
89
- const response = yield* HttpClient.execute(request).pipe(Effect.scoped, Effect.catchAll((error) => new NetworkError({
90
+ const response = yield* HttpClient.execute(request).pipe(Effect.scoped, Effect.catch((error) => new NetworkError({
90
91
  cause: error,
91
92
  message: `Failed to download tarball: ${String(error)}`,
92
93
  })));
@@ -99,8 +100,8 @@ const downloadExample = (exampleName, ref, destinationPath) => Effect.gen(functi
99
100
  // Extract the tarball to a temporary directory first
100
101
  const extractDir = nodePath.join(tempDir, `extract-${Date.now()}`);
101
102
  yield* fs.makeDirectory(extractDir, { recursive: true });
102
- // Extract tarball using Effect Command
103
- yield* Command.make('tar', '-xzf', tarballPath, '-C', extractDir).pipe(Command.exitCode, Effect.catchAll((error) => new NetworkError({
103
+ // Extract tarball using a child process
104
+ yield* spawner.exitCode(ChildProcess.make('tar', ['-xzf', tarballPath, '-C', extractDir])).pipe(Effect.catch((error) => new NetworkError({
104
105
  cause: error,
105
106
  message: `Failed to extract tarball: ${String(error)}`,
106
107
  })));
@@ -123,21 +124,21 @@ const downloadExample = (exampleName, ref, destinationPath) => Effect.gen(functi
123
124
  message: `Example "${exampleName}" not found in the extracted repository`,
124
125
  });
125
126
  }
126
- // Copy the example directory contents to the destination using Effect Command
127
- yield* Command.make('cp', '-r', `${exampleSourcePath}/.`, destinationPath).pipe(Command.exitCode, Effect.catchAll((error) => new NetworkError({
127
+ // Copy the example directory contents to the destination using a child process
128
+ yield* spawner.exitCode(ChildProcess.make('cp', ['-r', `${exampleSourcePath}/.`, destinationPath])).pipe(Effect.catch((error) => new NetworkError({
128
129
  cause: error,
129
130
  message: `Failed to copy example files: ${String(error)}`,
130
131
  })));
131
132
  // Clean up extract directory
132
- yield* fs.remove(extractDir, { recursive: true }).pipe(Effect.catchAll(() => Effect.void));
133
+ yield* fs.remove(extractDir, { recursive: true }).pipe(Effect.ignore);
133
134
  // Clean up tarball
134
- yield* fs.remove(tarballPath).pipe(Effect.catchAll(() => Effect.void));
135
+ yield* fs.remove(tarballPath).pipe(Effect.ignore);
135
136
  yield* Console.log(`✅ Example "${exampleName}" created successfully at: ${destinationPath}`);
136
137
  });
137
138
  export const createCommand = Cli.Command.make('create', {
138
- example: Cli.Options.text('example').pipe(Cli.Options.optional, Cli.Options.withDescription('Example name to create (bypasses interactive selection)')),
139
- ref: Cli.Options.text('ref').pipe(Cli.Options.withAlias('commit'), Cli.Options.withAlias('branch'), Cli.Options.withAlias('tag'), Cli.Options.withDefault('main'), Cli.Options.withDescription('The name of the commit/branch/tag to fetch examples from. Pull requests refs must be fully-formed (e.g., `refs/pull/123/merge`).')),
140
- path: Cli.Args.text({ name: 'path' }).pipe(Cli.Args.optional, Cli.Args.withDescription('Destination path for the new project')),
139
+ example: Cli.Flag.String('example').pipe(Cli.Flag.optional, Cli.Flag.withDescription('Example name to create (bypasses interactive selection)')),
140
+ ref: Cli.Flag.String('ref').pipe(Cli.Flag.withAlias('commit'), Cli.Flag.withAlias('branch'), Cli.Flag.withAlias('tag'), Cli.Flag.withDefault('main'), Cli.Flag.withDescription('The name of the commit/branch/tag to fetch examples from. Pull requests refs must be fully-formed (e.g., `refs/pull/123/merge`).')),
141
+ path: Cli.Argument.String('path').pipe(Cli.Argument.optional, Cli.Argument.withDescription('Destination path for the new project')),
141
142
  }, Effect.fn(function* ({ example, ref, path, }) {
142
143
  yield* Effect.log('🚀 Creating new LiveStore project...');
143
144
  // Fetch available examples
@@ -172,7 +173,7 @@ export const createCommand = Cli.Command.make('create', {
172
173
  const fs = yield* FileSystem.FileSystem;
173
174
  const packageJsonPath = nodePath.join(destinationPath, 'package.json');
174
175
  const packageJsonContent = yield* fs.readFileString(packageJsonPath);
175
- const runScript = yield* Schema.decodeUnknown(Schema.parseJson(PackageJsonScriptsSchema))(packageJsonContent).pipe(Effect.map((pkg) => ('dev' in pkg.scripts ? 'dev' : 'start')), Effect.orElseSucceed(() => undefined));
176
+ const runScript = yield* Schema.decodeEffect(Schema.fromJsonString(PackageJsonScriptsSchema))(packageJsonContent).pipe(Effect.map((pkg) => ('dev' in pkg.scripts ? 'dev' : 'start')), Effect.orElseSucceed(() => undefined));
176
177
  // Detect which package manager was used to invoke the CLI (via npm_config_user_agent).
177
178
  // This ensures the "next steps" instructions match how the user ran the create command.
178
179
  const pmResult = detectPackageManager();
@@ -1 +1 @@
1
- {"version":3,"file":"new-project.js","sourceRoot":"","sources":["../../src/commands/new-project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"new-project.js","sourceRoot":"","sources":["../../src/commands/new-project.ts"],"names":[],"mappings":"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"}