@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,137 @@
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.registerCommunitiesCommands = registerCommunitiesCommands;
7
+ const inquirer_1 = __importDefault(require("inquirer"));
8
+ const chalk_1 = __importDefault(require("chalk"));
9
+ const ora_1 = __importDefault(require("ora"));
10
+ const mx_typescript_sdk_1 = require("@memnexus-ai/mx-typescript-sdk");
11
+ const api_client_1 = require("../lib/api-client");
12
+ const errors_1 = require("../lib/errors");
13
+ const formatters_1 = require("../lib/formatters");
14
+ /**
15
+ * Register community management commands
16
+ * @param program - Commander program instance
17
+ */
18
+ function registerCommunitiesCommands(program) {
19
+ const communities = program.command('communities').description('Manage topic communities');
20
+ /**
21
+ * mx communities list [options]
22
+ * List communities with pagination
23
+ */
24
+ communities
25
+ .command('list')
26
+ .description('List communities')
27
+ .option('--page <number>', 'Page number', '0')
28
+ .option('--limit <number>', 'Results per page', '20')
29
+ .option('--context-id <id>', 'Filter by context')
30
+ .option('--min-size <number>', 'Minimum community size')
31
+ .option('--format <format>', 'Output format (json|table|yaml)')
32
+ .action(async (options) => {
33
+ try {
34
+ const page = parseInt(options.page, 10);
35
+ const limit = parseInt(options.limit, 10);
36
+ const offset = page * limit;
37
+ const result = await (0, mx_typescript_sdk_1.listCommunities)({
38
+ ...(0, api_client_1.getApiOptions)(),
39
+ query: {
40
+ limit,
41
+ offset,
42
+ },
43
+ });
44
+ const responseData = result.data;
45
+ if (options.format === 'table' || !options.format) {
46
+ const tableData = (responseData?.data || []).map((c) => ({
47
+ id: c.id,
48
+ name: c.name || 'N/A',
49
+ memberCount: c.memberCount || 0,
50
+ topicCount: c.topicCount || 0,
51
+ createdAt: new Date(c.createdAt).toLocaleDateString(),
52
+ }));
53
+ (0, formatters_1.printOutput)(tableData, options.format, {
54
+ columns: ['id', 'name', 'memberCount', 'topicCount', 'createdAt'],
55
+ maxColumnWidth: 20,
56
+ });
57
+ const pagination = responseData?.pagination;
58
+ if (pagination) {
59
+ console.log(chalk_1.default.gray(`\nShowing ${pagination.offset + 1}-${pagination.offset + (responseData?.data?.length || 0)} (Page ${page + 1})`));
60
+ }
61
+ }
62
+ else {
63
+ (0, formatters_1.printOutput)(responseData, options.format);
64
+ }
65
+ }
66
+ catch (error) {
67
+ (0, errors_1.handleError)(error);
68
+ }
69
+ });
70
+ /**
71
+ * mx communities get <id>
72
+ * Get a specific community by ID
73
+ */
74
+ communities
75
+ .command('get <id>')
76
+ .description('Get community details')
77
+ .option('--format <format>', 'Output format (json|table|yaml)')
78
+ .action(async (id, options) => {
79
+ try {
80
+ const result = await (0, mx_typescript_sdk_1.getCommunityById)({
81
+ ...(0, api_client_1.getApiOptions)(),
82
+ path: { id },
83
+ });
84
+ (0, formatters_1.printOutput)(result.data, options.format);
85
+ }
86
+ catch (error) {
87
+ (0, errors_1.handleError)(error);
88
+ }
89
+ });
90
+ /**
91
+ * mx communities merge [options]
92
+ * Merge two communities
93
+ */
94
+ communities
95
+ .command('merge')
96
+ .description('Merge two communities')
97
+ .option('--source-id <id>', 'Source community ID')
98
+ .option('--target-id <id>', 'Target community ID')
99
+ .option('--force', 'Skip confirmation')
100
+ .option('--format <format>', 'Output format (json|table|yaml)')
101
+ .action(async (options) => {
102
+ try {
103
+ if (!options.sourceId || !options.targetId) {
104
+ console.log(chalk_1.default.red('Error: --source-id and --target-id are required'));
105
+ return;
106
+ }
107
+ if (!options.force) {
108
+ const answer = await inquirer_1.default.prompt([
109
+ {
110
+ type: 'confirm',
111
+ name: 'confirm',
112
+ message: `Merge community ${options.sourceId} into ${options.targetId}?`,
113
+ default: false,
114
+ },
115
+ ]);
116
+ if (!answer.confirm) {
117
+ console.log(chalk_1.default.gray('Merge cancelled'));
118
+ return;
119
+ }
120
+ }
121
+ const spinner = (0, ora_1.default)('Merging communities...').start();
122
+ const result = await (0, mx_typescript_sdk_1.mergeCommunities)({
123
+ ...(0, api_client_1.getApiOptions)(),
124
+ body: {
125
+ sourceCommunityId: options.sourceId,
126
+ targetCommunityId: options.targetId,
127
+ },
128
+ });
129
+ spinner.succeed('Communities merged successfully');
130
+ (0, formatters_1.printOutput)(result.data, options.format);
131
+ }
132
+ catch (error) {
133
+ (0, errors_1.handleError)(error);
134
+ }
135
+ });
136
+ }
137
+ //# sourceMappingURL=communities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"communities.js","sourceRoot":"","sources":["../../src/commands/communities.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { Command } from 'commander';
2
+ /**
3
+ * Register configuration commands
4
+ * @param program - Commander program instance
5
+ */
6
+ export declare function registerConfigCommands(program: Command): void;
7
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAoI7D"}
@@ -0,0 +1,138 @@
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.registerConfigCommands = registerConfigCommands;
7
+ const chalk_1 = __importDefault(require("chalk"));
8
+ const cli_table3_1 = __importDefault(require("cli-table3"));
9
+ const config_1 = require("../lib/config");
10
+ const errors_1 = require("../lib/errors");
11
+ /**
12
+ * Register configuration commands
13
+ * @param program - Commander program instance
14
+ */
15
+ function registerConfigCommands(program) {
16
+ const configCmd = program.command('config').description('Manage CLI configuration');
17
+ /**
18
+ * mx config get <key>
19
+ * Get a specific configuration value
20
+ */
21
+ configCmd
22
+ .command('get <key>')
23
+ .description('Get a configuration value')
24
+ .action(async (key) => {
25
+ try {
26
+ const validKeys = ['apiUrl', 'defaultFormat', 'defaultPageSize'];
27
+ if (!validKeys.includes(key)) {
28
+ throw new errors_1.CLIError(`Invalid config key: ${key}. Valid keys are: ${validKeys.join(', ')}`);
29
+ }
30
+ const value = config_1.config.get(key);
31
+ if (value === undefined) {
32
+ console.log(chalk_1.default.gray('(not set)'));
33
+ }
34
+ else {
35
+ console.log(value);
36
+ }
37
+ }
38
+ catch (error) {
39
+ (0, errors_1.handleError)(error);
40
+ }
41
+ });
42
+ /**
43
+ * mx config set <key> <value>
44
+ * Set a configuration value
45
+ */
46
+ configCmd
47
+ .command('set <key> <value>')
48
+ .description('Set a configuration value')
49
+ .action(async (key, value) => {
50
+ try {
51
+ // Validate key
52
+ const validKeys = ['apiUrl', 'defaultFormat', 'defaultPageSize'];
53
+ if (!validKeys.includes(key)) {
54
+ throw new errors_1.CLIError(`Invalid config key: ${key}. Valid keys are: ${validKeys.join(', ')}`);
55
+ }
56
+ // Validate value based on key
57
+ if (key === 'apiUrl') {
58
+ try {
59
+ new URL(value);
60
+ }
61
+ catch {
62
+ throw new errors_1.CLIError('Invalid URL format');
63
+ }
64
+ }
65
+ else if (key === 'defaultFormat') {
66
+ if (!['json', 'table', 'yaml'].includes(value)) {
67
+ throw new errors_1.CLIError('Invalid format. Must be one of: json, table, yaml');
68
+ }
69
+ }
70
+ else if (key === 'defaultPageSize') {
71
+ const num = parseInt(value, 10);
72
+ if (isNaN(num) || num < 1 || num > 100) {
73
+ throw new errors_1.CLIError('Invalid page size. Must be a number between 1 and 100');
74
+ }
75
+ config_1.config.set(key, num);
76
+ console.log(chalk_1.default.green(`✓ ${key} set to ${num}`));
77
+ return;
78
+ }
79
+ config_1.config.set(key, value);
80
+ console.log(chalk_1.default.green(`✓ ${key} set to ${value}`));
81
+ }
82
+ catch (error) {
83
+ (0, errors_1.handleError)(error);
84
+ }
85
+ });
86
+ /**
87
+ * mx config list
88
+ * List all configuration values
89
+ */
90
+ configCmd
91
+ .command('list')
92
+ .description('List all configuration values')
93
+ .action(async () => {
94
+ try {
95
+ const allConfig = config_1.config.get();
96
+ const table = new cli_table3_1.default({
97
+ head: [chalk_1.default.cyan('Key'), chalk_1.default.cyan('Value'), chalk_1.default.cyan('Source')],
98
+ colWidths: [25, 40, 20],
99
+ wordWrap: true,
100
+ });
101
+ // Check for environment variable overrides
102
+ const envOverrides = {
103
+ apiUrl: process.env.MX_API_URL,
104
+ defaultFormat: process.env.MX_OUTPUT_FORMAT,
105
+ };
106
+ table.push([
107
+ 'apiUrl',
108
+ envOverrides.apiUrl || allConfig.apiUrl,
109
+ envOverrides.apiUrl ? chalk_1.default.yellow('env') : 'config',
110
+ ], [
111
+ 'defaultFormat',
112
+ envOverrides.defaultFormat || allConfig.defaultFormat,
113
+ envOverrides.defaultFormat ? chalk_1.default.yellow('env') : 'config',
114
+ ], ['defaultPageSize', String(allConfig.defaultPageSize), 'config']);
115
+ console.log(table.toString());
116
+ }
117
+ catch (error) {
118
+ (0, errors_1.handleError)(error);
119
+ }
120
+ });
121
+ /**
122
+ * mx config reset
123
+ * Reset configuration to defaults
124
+ */
125
+ configCmd
126
+ .command('reset')
127
+ .description('Reset configuration to defaults')
128
+ .action(async () => {
129
+ try {
130
+ config_1.config.reset();
131
+ console.log(chalk_1.default.green('✓ Configuration reset to defaults'));
132
+ }
133
+ catch (error) {
134
+ (0, errors_1.handleError)(error);
135
+ }
136
+ });
137
+ }
138
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { Command } from 'commander';
2
+ /**
3
+ * Register conversation query commands
4
+ * @param program - Commander program instance
5
+ */
6
+ export declare function registerConversationsCommands(program: Command): void;
7
+ //# sourceMappingURL=conversations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversations.d.ts","sourceRoot":"","sources":["../../src/commands/conversations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAcpC;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA6JpE"}
@@ -0,0 +1,160 @@
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.registerConversationsCommands = registerConversationsCommands;
7
+ const chalk_1 = __importDefault(require("chalk"));
8
+ const mx_typescript_sdk_1 = require("@memnexus-ai/mx-typescript-sdk");
9
+ const api_client_1 = require("../lib/api-client");
10
+ const errors_1 = require("../lib/errors");
11
+ const formatters_1 = require("../lib/formatters");
12
+ /**
13
+ * Register conversation query commands
14
+ * @param program - Commander program instance
15
+ */
16
+ function registerConversationsCommands(program) {
17
+ const conversations = program
18
+ .command('conversations')
19
+ .description('Query and manage conversations');
20
+ /**
21
+ * mx conversations list [options]
22
+ * List conversations with pagination
23
+ */
24
+ conversations
25
+ .command('list')
26
+ .description('List conversations')
27
+ .option('--page <number>', 'Page number', '0')
28
+ .option('--limit <number>', 'Results per page', '20')
29
+ .option('--format <format>', 'Output format (json|table|yaml)')
30
+ .action(async (options) => {
31
+ try {
32
+ const page = parseInt(options.page, 10);
33
+ const limit = parseInt(options.limit, 10);
34
+ const offset = page * limit;
35
+ const result = await (0, mx_typescript_sdk_1.listConversations)({
36
+ ...(0, api_client_1.getApiOptions)(),
37
+ query: { limit, offset },
38
+ });
39
+ const responseData = result.data;
40
+ // Format for table display
41
+ if (options.format === 'table' || !options.format) {
42
+ const tableData = (responseData?.data || []).map((c) => ({
43
+ id: c.id,
44
+ title: c.title || c.id,
45
+ messageCount: c.messageCount || 0,
46
+ createdAt: new Date(c.createdAt).toLocaleDateString(),
47
+ }));
48
+ (0, formatters_1.printOutput)(tableData, options.format, {
49
+ columns: ['id', 'title', 'messageCount', 'createdAt'],
50
+ maxColumnWidth: 30,
51
+ });
52
+ const pagination = responseData?.pagination;
53
+ if (pagination) {
54
+ console.log(chalk_1.default.gray(`\nShowing ${pagination.offset + 1}-${pagination.offset + (responseData?.data?.length || 0)} (Page ${page + 1})`));
55
+ }
56
+ }
57
+ else {
58
+ (0, formatters_1.printOutput)(responseData, options.format);
59
+ }
60
+ }
61
+ catch (error) {
62
+ (0, errors_1.handleError)(error);
63
+ }
64
+ });
65
+ /**
66
+ * mx conversations summary <id>
67
+ * Get conversation summary
68
+ */
69
+ conversations
70
+ .command('summary <id>')
71
+ .description('Get conversation summary')
72
+ .option('--format <format>', 'Output format (json|table|yaml)')
73
+ .action(async (id, options) => {
74
+ try {
75
+ const result = await (0, mx_typescript_sdk_1.getConversationSummary)({
76
+ ...(0, api_client_1.getApiOptions)(),
77
+ path: { conversationId: id },
78
+ });
79
+ (0, formatters_1.printOutput)(result.data, options.format);
80
+ }
81
+ catch (error) {
82
+ (0, errors_1.handleError)(error);
83
+ }
84
+ });
85
+ /**
86
+ * mx conversations timeline <id>
87
+ * Get conversation timeline (chronological messages)
88
+ */
89
+ conversations
90
+ .command('timeline <id>')
91
+ .description('Get conversation timeline')
92
+ .option('--format <format>', 'Output format (json|table|yaml)')
93
+ .action(async (id, options) => {
94
+ try {
95
+ const result = await (0, mx_typescript_sdk_1.getConversationTimeline)({
96
+ ...(0, api_client_1.getApiOptions)(),
97
+ path: { conversationId: id },
98
+ });
99
+ (0, formatters_1.printOutput)(result.data, options.format);
100
+ }
101
+ catch (error) {
102
+ (0, errors_1.handleError)(error);
103
+ }
104
+ });
105
+ /**
106
+ * mx conversations search [options]
107
+ * Search conversations
108
+ */
109
+ conversations
110
+ .command('search')
111
+ .description('Search conversations')
112
+ .option('--query <text>', 'Search query')
113
+ .option('--limit <number>', 'Maximum results', '20')
114
+ .option('--format <format>', 'Output format (json|table|yaml)')
115
+ .action(async (options) => {
116
+ try {
117
+ if (!options.query) {
118
+ console.log(chalk_1.default.red('Error: --query is required'));
119
+ return;
120
+ }
121
+ const result = await (0, mx_typescript_sdk_1.searchConversations)({
122
+ ...(0, api_client_1.getApiOptions)(),
123
+ body: {
124
+ query: options.query,
125
+ limit: parseInt(options.limit, 10),
126
+ },
127
+ });
128
+ (0, formatters_1.printOutput)(result.data, options.format);
129
+ }
130
+ catch (error) {
131
+ (0, errors_1.handleError)(error);
132
+ }
133
+ });
134
+ /**
135
+ * mx conversations by-topic [options]
136
+ * Find conversations by topic
137
+ */
138
+ conversations
139
+ .command('by-topic')
140
+ .description('Find conversations by topic')
141
+ .option('--topic-id <id>', 'Topic ID')
142
+ .option('--format <format>', 'Output format (json|table|yaml)')
143
+ .action(async (options) => {
144
+ try {
145
+ if (!options.topicId) {
146
+ console.log(chalk_1.default.red('Error: --topic-id is required'));
147
+ return;
148
+ }
149
+ const result = await (0, mx_typescript_sdk_1.findConversationsByTopic)({
150
+ ...(0, api_client_1.getApiOptions)(),
151
+ body: { topicId: options.topicId },
152
+ });
153
+ (0, formatters_1.printOutput)(result.data, options.format);
154
+ }
155
+ catch (error) {
156
+ (0, errors_1.handleError)(error);
157
+ }
158
+ });
159
+ }
160
+ //# sourceMappingURL=conversations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversations.js","sourceRoot":"","sources":["../../src/commands/conversations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { Command } from 'commander';
2
+ /**
3
+ * Register semantic facts management commands
4
+ * @param program - Commander program instance
5
+ */
6
+ export declare function registerFactsCommands(program: Command): void;
7
+ //# sourceMappingURL=facts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"facts.d.ts","sourceRoot":"","sources":["../../src/commands/facts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAgBpC;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA2S5D"}