@memnexus-ai/cli 0.1.0

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 (148) hide show
  1. package/.env.example +13 -0
  2. package/.eslintrc.js +24 -0
  3. package/.github/ISSUE_TEMPLATE/phase-1-foundation.md +1078 -0
  4. package/.github/workflows/publish.yml +277 -0
  5. package/.github/workflows/test-app-token.yml +54 -0
  6. package/.npmrc.backup +3 -0
  7. package/.npmrc.example +6 -0
  8. package/.prettierignore +4 -0
  9. package/.prettierrc +8 -0
  10. package/CHANGELOG.md +138 -0
  11. package/PLATFORM_TESTING.md +243 -0
  12. package/README.md +986 -0
  13. package/RELEASE.md +428 -0
  14. package/RELEASE_READINESS.md +253 -0
  15. package/USAGE.md +1373 -0
  16. package/bin/mx.js +2 -0
  17. package/dist/commands/apikeys.d.ts +7 -0
  18. package/dist/commands/apikeys.d.ts.map +1 -0
  19. package/dist/commands/apikeys.js +133 -0
  20. package/dist/commands/apikeys.js.map +1 -0
  21. package/dist/commands/artifacts.d.ts +7 -0
  22. package/dist/commands/artifacts.d.ts.map +1 -0
  23. package/dist/commands/artifacts.js +277 -0
  24. package/dist/commands/artifacts.js.map +1 -0
  25. package/dist/commands/auth.d.ts +7 -0
  26. package/dist/commands/auth.d.ts.map +1 -0
  27. package/dist/commands/auth.js +119 -0
  28. package/dist/commands/auth.js.map +1 -0
  29. package/dist/commands/communities.d.ts +7 -0
  30. package/dist/commands/communities.d.ts.map +1 -0
  31. package/dist/commands/communities.js +137 -0
  32. package/dist/commands/communities.js.map +1 -0
  33. package/dist/commands/config.d.ts +7 -0
  34. package/dist/commands/config.d.ts.map +1 -0
  35. package/dist/commands/config.js +138 -0
  36. package/dist/commands/config.js.map +1 -0
  37. package/dist/commands/conversations.d.ts +7 -0
  38. package/dist/commands/conversations.d.ts.map +1 -0
  39. package/dist/commands/conversations.js +160 -0
  40. package/dist/commands/conversations.js.map +1 -0
  41. package/dist/commands/facts.d.ts +7 -0
  42. package/dist/commands/facts.d.ts.map +1 -0
  43. package/dist/commands/facts.js +298 -0
  44. package/dist/commands/facts.js.map +1 -0
  45. package/dist/commands/graphrag.d.ts +7 -0
  46. package/dist/commands/graphrag.d.ts.map +1 -0
  47. package/dist/commands/graphrag.js +139 -0
  48. package/dist/commands/graphrag.js.map +1 -0
  49. package/dist/commands/memories.d.ts +7 -0
  50. package/dist/commands/memories.d.ts.map +1 -0
  51. package/dist/commands/memories.js +304 -0
  52. package/dist/commands/memories.js.map +1 -0
  53. package/dist/commands/patterns.d.ts +7 -0
  54. package/dist/commands/patterns.d.ts.map +1 -0
  55. package/dist/commands/patterns.js +227 -0
  56. package/dist/commands/patterns.js.map +1 -0
  57. package/dist/commands/system.d.ts +7 -0
  58. package/dist/commands/system.d.ts.map +1 -0
  59. package/dist/commands/system.js +97 -0
  60. package/dist/commands/system.js.map +1 -0
  61. package/dist/commands/topics.d.ts +7 -0
  62. package/dist/commands/topics.d.ts.map +1 -0
  63. package/dist/commands/topics.js +314 -0
  64. package/dist/commands/topics.js.map +1 -0
  65. package/dist/index.d.ts +3 -0
  66. package/dist/index.d.ts.map +1 -0
  67. package/dist/index.js +44 -0
  68. package/dist/index.js.map +1 -0
  69. package/dist/lib/api-client.d.ts +29 -0
  70. package/dist/lib/api-client.d.ts.map +1 -0
  71. package/dist/lib/api-client.js +64 -0
  72. package/dist/lib/api-client.js.map +1 -0
  73. package/dist/lib/auth.d.ts +10 -0
  74. package/dist/lib/auth.d.ts.map +1 -0
  75. package/dist/lib/auth.js +47 -0
  76. package/dist/lib/auth.js.map +1 -0
  77. package/dist/lib/config.d.ts +19 -0
  78. package/dist/lib/config.d.ts.map +1 -0
  79. package/dist/lib/config.js +59 -0
  80. package/dist/lib/config.js.map +1 -0
  81. package/dist/lib/errors.d.ts +7 -0
  82. package/dist/lib/errors.d.ts.map +1 -0
  83. package/dist/lib/errors.js +133 -0
  84. package/dist/lib/errors.js.map +1 -0
  85. package/dist/lib/formatters.d.ts +12 -0
  86. package/dist/lib/formatters.d.ts.map +1 -0
  87. package/dist/lib/formatters.js +103 -0
  88. package/dist/lib/formatters.js.map +1 -0
  89. package/dist/lib/spinner.d.ts +54 -0
  90. package/dist/lib/spinner.d.ts.map +1 -0
  91. package/dist/lib/spinner.js +108 -0
  92. package/dist/lib/spinner.js.map +1 -0
  93. package/dist/lib/validators.d.ts +92 -0
  94. package/dist/lib/validators.d.ts.map +1 -0
  95. package/dist/lib/validators.js +257 -0
  96. package/dist/lib/validators.js.map +1 -0
  97. package/dist/types/index.d.ts +13 -0
  98. package/dist/types/index.d.ts.map +1 -0
  99. package/dist/types/index.js +3 -0
  100. package/dist/types/index.js.map +1 -0
  101. package/docs/README.md +219 -0
  102. package/docs/code-generation-strategy.md +560 -0
  103. package/docs/prd.md +748 -0
  104. package/docs/sync-strategy.md +533 -0
  105. package/jest.config.js +30 -0
  106. package/package.json +67 -0
  107. package/scripts/install-deps.sh +38 -0
  108. package/src/commands/apikeys.ts +144 -0
  109. package/src/commands/artifacts.ts +296 -0
  110. package/src/commands/auth.ts +122 -0
  111. package/src/commands/communities.ts +153 -0
  112. package/src/commands/config.ts +144 -0
  113. package/src/commands/conversations.ts +176 -0
  114. package/src/commands/facts.ts +320 -0
  115. package/src/commands/graphrag.ts +149 -0
  116. package/src/commands/memories.ts +332 -0
  117. package/src/commands/patterns.ts +251 -0
  118. package/src/commands/system.ts +102 -0
  119. package/src/commands/topics.ts +354 -0
  120. package/src/index.ts +43 -0
  121. package/src/lib/api-client.ts +68 -0
  122. package/src/lib/auth.ts +42 -0
  123. package/src/lib/config.ts +68 -0
  124. package/src/lib/errors.ts +143 -0
  125. package/src/lib/formatters.ts +123 -0
  126. package/src/lib/spinner.ts +113 -0
  127. package/src/lib/validators.ts +302 -0
  128. package/src/types/index.ts +17 -0
  129. package/tests/__mocks__/chalk.ts +16 -0
  130. package/tests/__mocks__/cli-table3.ts +37 -0
  131. package/tests/__mocks__/configstore.ts +38 -0
  132. package/tests/commands/apikeys.test.ts +179 -0
  133. package/tests/commands/artifacts.test.ts +194 -0
  134. package/tests/commands/auth.test.ts +120 -0
  135. package/tests/commands/communities.test.ts +154 -0
  136. package/tests/commands/config.test.ts +154 -0
  137. package/tests/commands/conversations.test.ts +136 -0
  138. package/tests/commands/facts.test.ts +210 -0
  139. package/tests/commands/graphrag.test.ts +194 -0
  140. package/tests/commands/memories.test.ts +215 -0
  141. package/tests/commands/patterns.test.ts +201 -0
  142. package/tests/commands/system.test.ts +172 -0
  143. package/tests/commands/topics.test.ts +274 -0
  144. package/tests/lib/auth.test.ts +77 -0
  145. package/tests/lib/config.test.ts +50 -0
  146. package/tests/lib/errors.test.ts +126 -0
  147. package/tests/lib/formatters.test.ts +87 -0
  148. package/tsconfig.json +20 -0
@@ -0,0 +1,298 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.registerFactsCommands = registerFactsCommands;
7
+ const inquirer_1 = __importDefault(require("inquirer"));
8
+ const chalk_1 = __importDefault(require("chalk"));
9
+ const mx_typescript_sdk_1 = require("@memnexus-ai/mx-typescript-sdk");
10
+ const api_client_1 = require("../lib/api-client");
11
+ const errors_1 = require("../lib/errors");
12
+ const formatters_1 = require("../lib/formatters");
13
+ /**
14
+ * Register semantic facts management commands
15
+ * @param program - Commander program instance
16
+ */
17
+ function registerFactsCommands(program) {
18
+ const facts = program.command('facts').description('Manage semantic facts');
19
+ /**
20
+ * mx facts list [options]
21
+ * List facts with pagination
22
+ */
23
+ facts
24
+ .command('list')
25
+ .description('List facts')
26
+ .option('--page <number>', 'Page number', '0')
27
+ .option('--limit <number>', 'Results per page', '20')
28
+ .option('--format <format>', 'Output format (json|table|yaml)')
29
+ .action(async (options) => {
30
+ try {
31
+ const page = parseInt(options.page, 10);
32
+ const limit = parseInt(options.limit, 10);
33
+ const offset = page * limit;
34
+ const result = await (0, mx_typescript_sdk_1.listFacts)({
35
+ ...(0, api_client_1.getApiOptions)(),
36
+ query: { limit, offset },
37
+ });
38
+ // Format for table display
39
+ if (options.format === 'table' || !options.format) {
40
+ const tableData = (result.data?.data || []).map((f) => ({
41
+ id: f.id,
42
+ subject: f.subject?.substring(0, 20) + (f.subject?.length > 20 ? '...' : ''),
43
+ predicate: f.predicate,
44
+ object: f.object?.substring(0, 20) + (f.object?.length > 20 ? '...' : ''),
45
+ confidence: f.confidence?.toFixed(2) || 'N/A',
46
+ }));
47
+ (0, formatters_1.printOutput)(tableData, options.format, {
48
+ columns: ['id', 'subject', 'predicate', 'object', 'confidence'],
49
+ maxColumnWidth: 25,
50
+ });
51
+ console.log(chalk_1.default.gray(`\nShowing ${offset + 1}-${offset + (result.data?.data?.length || 0)} of ${result.data?.count || 0} (Page ${page + 1})`));
52
+ }
53
+ else {
54
+ (0, formatters_1.printOutput)(result.data, options.format);
55
+ }
56
+ }
57
+ catch (error) {
58
+ (0, errors_1.handleError)(error);
59
+ }
60
+ });
61
+ /**
62
+ * mx facts get <id>
63
+ * Get a specific fact by ID
64
+ */
65
+ facts
66
+ .command('get <id>')
67
+ .description('Get a specific fact')
68
+ .option('--format <format>', 'Output format (json|table|yaml)')
69
+ .action(async (id, options) => {
70
+ try {
71
+ const result = await (0, mx_typescript_sdk_1.getFactById)({
72
+ ...(0, api_client_1.getApiOptions)(),
73
+ path: { id },
74
+ });
75
+ (0, formatters_1.printOutput)(result.data?.data, options.format);
76
+ }
77
+ catch (error) {
78
+ (0, errors_1.handleError)(error);
79
+ }
80
+ });
81
+ /**
82
+ * mx facts create [options]
83
+ * Create a new fact
84
+ */
85
+ facts
86
+ .command('create')
87
+ .description('Create a new fact')
88
+ .option('--subject <text>', 'Fact subject (entity name)')
89
+ .option('--predicate <text>', 'Relationship type')
90
+ .option('--object <text>', 'Fact object (related entity)')
91
+ .option('--confidence <number>', 'Confidence score (0-1)', '1.0')
92
+ .option('--memory-id <id>', 'Associated memory ID')
93
+ .option('--interactive', 'Interactive mode')
94
+ .option('--format <format>', 'Output format (json|table|yaml)')
95
+ .action(async (options) => {
96
+ try {
97
+ let factData = {};
98
+ if (options.interactive || !options.subject || !options.predicate || !options.object) {
99
+ // Interactive mode
100
+ const answers = await inquirer_1.default.prompt([
101
+ {
102
+ type: 'input',
103
+ name: 'subject',
104
+ message: 'Subject (entity name):',
105
+ default: options.subject,
106
+ validate: (input) => input.trim().length > 0 || 'Subject is required',
107
+ },
108
+ {
109
+ type: 'input',
110
+ name: 'predicate',
111
+ message: 'Predicate (relationship):',
112
+ default: options.predicate,
113
+ validate: (input) => input.trim().length > 0 || 'Predicate is required',
114
+ },
115
+ {
116
+ type: 'input',
117
+ name: 'object',
118
+ message: 'Object (related entity):',
119
+ default: options.object,
120
+ validate: (input) => input.trim().length > 0 || 'Object is required',
121
+ },
122
+ {
123
+ type: 'number',
124
+ name: 'confidence',
125
+ message: 'Confidence (0-1):',
126
+ default: parseFloat(options.confidence) || 1.0,
127
+ validate: (input) => {
128
+ if (input < 0 || input > 1)
129
+ return 'Confidence must be between 0 and 1';
130
+ return true;
131
+ },
132
+ },
133
+ {
134
+ type: 'input',
135
+ name: 'memoryId',
136
+ message: 'Memory ID (optional):',
137
+ default: options.memoryId,
138
+ },
139
+ ]);
140
+ factData = {
141
+ subject: answers.subject,
142
+ predicate: answers.predicate,
143
+ object: answers.object,
144
+ confidence: answers.confidence,
145
+ memoryId: answers.memoryId || undefined,
146
+ };
147
+ }
148
+ else {
149
+ // Direct mode
150
+ factData = {
151
+ subject: options.subject,
152
+ predicate: options.predicate,
153
+ object: options.object,
154
+ confidence: parseFloat(options.confidence),
155
+ memoryId: options.memoryId,
156
+ };
157
+ }
158
+ const result = await (0, mx_typescript_sdk_1.createFact)({
159
+ ...(0, api_client_1.getApiOptions)(),
160
+ body: factData,
161
+ });
162
+ const fact = result.data?.data;
163
+ console.log(chalk_1.default.green(`✓ Fact created with ID: ${fact?.id}`));
164
+ (0, formatters_1.printOutput)(fact, options.format);
165
+ }
166
+ catch (error) {
167
+ (0, errors_1.handleError)(error);
168
+ }
169
+ });
170
+ /**
171
+ * mx facts update <id> [options]
172
+ * Update an existing fact
173
+ */
174
+ facts
175
+ .command('update <id>')
176
+ .description('Update an existing fact')
177
+ .option('--subject <text>', 'Updated subject')
178
+ .option('--predicate <text>', 'Updated predicate')
179
+ .option('--object <text>', 'Updated object')
180
+ .option('--confidence <number>', 'Updated confidence (0-1)')
181
+ .option('--format <format>', 'Output format (json|table|yaml)')
182
+ .action(async (id, options) => {
183
+ try {
184
+ const updates = {};
185
+ if (options.subject)
186
+ updates.subject = options.subject;
187
+ if (options.predicate)
188
+ updates.predicate = options.predicate;
189
+ if (options.object)
190
+ updates.object = options.object;
191
+ if (options.confidence) {
192
+ const conf = parseFloat(options.confidence);
193
+ if (conf < 0 || conf > 1) {
194
+ console.log(chalk_1.default.red('Error: Confidence must be between 0 and 1'));
195
+ return;
196
+ }
197
+ updates.confidence = conf;
198
+ }
199
+ if (Object.keys(updates).length === 0) {
200
+ console.log(chalk_1.default.yellow('No updates provided. Use --help to see available options.'));
201
+ return;
202
+ }
203
+ const result = await (0, mx_typescript_sdk_1.updateFact)({
204
+ ...(0, api_client_1.getApiOptions)(),
205
+ path: { id },
206
+ body: updates,
207
+ });
208
+ const fact = result.data?.data;
209
+ console.log(chalk_1.default.green(`✓ Fact ${id} updated successfully`));
210
+ (0, formatters_1.printOutput)(fact, options.format);
211
+ }
212
+ catch (error) {
213
+ (0, errors_1.handleError)(error);
214
+ }
215
+ });
216
+ /**
217
+ * mx facts delete <id>
218
+ * Delete a fact
219
+ */
220
+ facts
221
+ .command('delete <id>')
222
+ .description('Delete a fact')
223
+ .option('--force', 'Skip confirmation prompt')
224
+ .action(async (id, options) => {
225
+ try {
226
+ if (!options.force) {
227
+ const answers = await inquirer_1.default.prompt([
228
+ {
229
+ type: 'confirm',
230
+ name: 'confirm',
231
+ message: `Are you sure you want to delete fact ${id}?`,
232
+ default: false,
233
+ },
234
+ ]);
235
+ if (!answers.confirm) {
236
+ console.log(chalk_1.default.yellow('Delete cancelled'));
237
+ return;
238
+ }
239
+ }
240
+ await (0, mx_typescript_sdk_1.deleteFact)({
241
+ ...(0, api_client_1.getApiOptions)(),
242
+ path: { id },
243
+ });
244
+ console.log(chalk_1.default.green(`✓ Fact ${id} deleted successfully`));
245
+ }
246
+ catch (error) {
247
+ (0, errors_1.handleError)(error);
248
+ }
249
+ });
250
+ /**
251
+ * mx facts search [options]
252
+ * Search facts
253
+ */
254
+ facts
255
+ .command('search')
256
+ .description('Search facts')
257
+ .option('--query <text>', 'Search query')
258
+ .option('--limit <number>', 'Maximum results', '20')
259
+ .option('--format <format>', 'Output format (json|table|yaml)')
260
+ .action(async (options) => {
261
+ try {
262
+ if (!options.query) {
263
+ console.log(chalk_1.default.red('Error: --query is required'));
264
+ return;
265
+ }
266
+ const result = await (0, mx_typescript_sdk_1.searchFacts)({
267
+ ...(0, api_client_1.getApiOptions)(),
268
+ body: {
269
+ query: options.query,
270
+ limit: parseInt(options.limit, 10),
271
+ },
272
+ });
273
+ const searchData = result.data;
274
+ // Format for table display
275
+ if (options.format === 'table' || !options.format) {
276
+ const tableData = (searchData?.data || []).map((f) => ({
277
+ id: f.id || 'N/A',
278
+ subject: f.subject?.substring(0, 20) + (f.subject?.length > 20 ? '...' : ''),
279
+ predicate: f.predicate,
280
+ object: f.object?.substring(0, 20) + (f.object?.length > 20 ? '...' : ''),
281
+ confidence: f.confidence?.toFixed(2) || 'N/A',
282
+ }));
283
+ (0, formatters_1.printOutput)(tableData, options.format, {
284
+ columns: ['id', 'subject', 'predicate', 'object', 'confidence'],
285
+ maxColumnWidth: 25,
286
+ });
287
+ console.log(chalk_1.default.gray(`\nFound ${searchData?.count || 0} results`));
288
+ }
289
+ else {
290
+ (0, formatters_1.printOutput)(searchData, options.format);
291
+ }
292
+ }
293
+ catch (error) {
294
+ (0, errors_1.handleError)(error);
295
+ }
296
+ });
297
+ }
298
+ //# sourceMappingURL=facts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"facts.js","sourceRoot":"","sources":["../../src/commands/facts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { Command } from 'commander';
2
+ /**
3
+ * Register GraphRAG query commands
4
+ * @param program - Commander program instance
5
+ */
6
+ export declare function registerGraphragCommands(program: Command): void;
7
+ //# sourceMappingURL=graphrag.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graphrag.d.ts","sourceRoot":"","sources":["../../src/commands/graphrag.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAapC;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmI/D"}
@@ -0,0 +1,139 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.registerGraphragCommands = registerGraphragCommands;
7
+ const chalk_1 = __importDefault(require("chalk"));
8
+ const ora_1 = __importDefault(require("ora"));
9
+ const mx_typescript_sdk_1 = require("@memnexus-ai/mx-typescript-sdk");
10
+ const api_client_1 = require("../lib/api-client");
11
+ const errors_1 = require("../lib/errors");
12
+ const formatters_1 = require("../lib/formatters");
13
+ /**
14
+ * Register GraphRAG query commands
15
+ * @param program - Commander program instance
16
+ */
17
+ function registerGraphragCommands(program) {
18
+ const graphrag = program.command('graphrag').description('Execute GraphRAG queries');
19
+ /**
20
+ * mx graphrag query [options]
21
+ * Execute a GraphRAG query
22
+ */
23
+ graphrag
24
+ .command('query')
25
+ .description('Execute GraphRAG query')
26
+ .option('--query <text>', 'Query text (required)')
27
+ .option('--context-id <id>', 'Context ID')
28
+ .option('--mode <mode>', 'Query mode (local|global|hybrid)', 'hybrid')
29
+ .option('--max-depth <number>', 'Graph traversal depth', '3')
30
+ .option('--limit <number>', 'Max results', '20')
31
+ .option('--format <format>', 'Output format (json|table|yaml)')
32
+ .action(async (options) => {
33
+ try {
34
+ if (!options.query) {
35
+ console.log(chalk_1.default.red('Error: --query is required'));
36
+ return;
37
+ }
38
+ const spinner = (0, ora_1.default)('Executing GraphRAG query...').start();
39
+ const result = await (0, mx_typescript_sdk_1.executeGraphRagQuery)({
40
+ ...(0, api_client_1.getApiOptions)(),
41
+ body: {
42
+ query: options.query,
43
+ maxDepth: parseInt(options.maxDepth, 10),
44
+ limit: parseInt(options.limit, 10),
45
+ },
46
+ });
47
+ spinner.succeed('Query executed successfully');
48
+ const responseData = result.data;
49
+ if (options.format === 'table' || !options.format) {
50
+ const tableData = (responseData?.data || []).map((r) => ({
51
+ id: r.id,
52
+ answer: r.answer?.substring(0, 50) + (r.answer?.length > 50 ? '...' : ''),
53
+ sources: r.sources?.length || 0,
54
+ confidence: r.confidence || 0,
55
+ }));
56
+ (0, formatters_1.printOutput)(tableData, options.format, {
57
+ columns: ['id', 'answer', 'sources', 'confidence'],
58
+ maxColumnWidth: 25,
59
+ });
60
+ }
61
+ else {
62
+ (0, formatters_1.printOutput)(responseData, options.format);
63
+ }
64
+ }
65
+ catch (error) {
66
+ (0, errors_1.handleError)(error);
67
+ }
68
+ });
69
+ /**
70
+ * mx graphrag explain <result-id>
71
+ * Explain a query result
72
+ */
73
+ graphrag
74
+ .command('explain <result-id>')
75
+ .description('Explain query result')
76
+ .option('--format <format>', 'Output format (json|table|yaml)')
77
+ .action(async (resultId, options) => {
78
+ try {
79
+ const spinner = (0, ora_1.default)('Generating explanation...').start();
80
+ const result = await (0, mx_typescript_sdk_1.explainGraphRagQuery)({
81
+ ...(0, api_client_1.getApiOptions)(),
82
+ query: { queryId: resultId },
83
+ });
84
+ spinner.succeed('Explanation generated');
85
+ (0, formatters_1.printOutput)(result.data, options.format);
86
+ }
87
+ catch (error) {
88
+ (0, errors_1.handleError)(error);
89
+ }
90
+ });
91
+ /**
92
+ * mx graphrag query-communities [options]
93
+ * Query at community level
94
+ */
95
+ graphrag
96
+ .command('query-communities')
97
+ .description('Query communities')
98
+ .option('--query <text>', 'Query text (required)')
99
+ .option('--context-id <id>', 'Context ID')
100
+ .option('--limit <number>', 'Max communities', '10')
101
+ .option('--format <format>', 'Output format (json|table|yaml)')
102
+ .action(async (options) => {
103
+ try {
104
+ if (!options.query) {
105
+ console.log(chalk_1.default.red('Error: --query is required'));
106
+ return;
107
+ }
108
+ const spinner = (0, ora_1.default)('Querying communities...').start();
109
+ const result = await (0, mx_typescript_sdk_1.queryCommunities)({
110
+ ...(0, api_client_1.getApiOptions)(),
111
+ body: {
112
+ query: options.query,
113
+ limit: parseInt(options.limit, 10),
114
+ },
115
+ });
116
+ spinner.succeed('Community query completed');
117
+ const responseData = result.data;
118
+ if (options.format === 'table' || !options.format) {
119
+ const tableData = (responseData?.data || []).map((c) => ({
120
+ communityId: c.communityId,
121
+ communityName: c.communityName || 'N/A',
122
+ answer: c.answer?.substring(0, 40) + (c.answer?.length > 40 ? '...' : ''),
123
+ confidence: c.confidence || 0,
124
+ }));
125
+ (0, formatters_1.printOutput)(tableData, options.format, {
126
+ columns: ['communityId', 'communityName', 'answer', 'confidence'],
127
+ maxColumnWidth: 20,
128
+ });
129
+ }
130
+ else {
131
+ (0, formatters_1.printOutput)(responseData, options.format);
132
+ }
133
+ }
134
+ catch (error) {
135
+ (0, errors_1.handleError)(error);
136
+ }
137
+ });
138
+ }
139
+ //# sourceMappingURL=graphrag.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graphrag.js","sourceRoot":"","sources":["../../src/commands/graphrag.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { Command } from 'commander';
2
+ /**
3
+ * Register memory management commands
4
+ * @param program - Commander program instance
5
+ */
6
+ export declare function registerMemoriesCommands(program: Command): void;
7
+ //# sourceMappingURL=memories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memories.d.ts","sourceRoot":"","sources":["../../src/commands/memories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiBpC;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAsT/D"}