@openweave/weave-cli 1.0.2 → 1.0.3

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 (63) hide show
  1. package/dist/cli.d.ts +3 -0
  2. package/dist/cli.d.ts.map +1 -0
  3. package/dist/cli.js +136 -0
  4. package/dist/cli.js.map +1 -0
  5. package/dist/commands/errors.d.ts +32 -0
  6. package/dist/commands/errors.d.ts.map +1 -0
  7. package/dist/commands/errors.js +182 -0
  8. package/dist/commands/errors.js.map +1 -0
  9. package/dist/commands/init.d.ts +29 -0
  10. package/dist/commands/init.d.ts.map +1 -0
  11. package/dist/commands/init.js +126 -0
  12. package/dist/commands/init.js.map +1 -0
  13. package/dist/commands/migrate.d.ts +23 -0
  14. package/dist/commands/migrate.d.ts.map +1 -0
  15. package/dist/commands/migrate.js +233 -0
  16. package/dist/commands/migrate.js.map +1 -0
  17. package/dist/commands/milestones.d.ts +32 -0
  18. package/dist/commands/milestones.d.ts.map +1 -0
  19. package/dist/commands/milestones.js +217 -0
  20. package/dist/commands/milestones.js.map +1 -0
  21. package/dist/commands/orphans.d.ts +38 -0
  22. package/dist/commands/orphans.d.ts.map +1 -0
  23. package/dist/commands/orphans.js +182 -0
  24. package/dist/commands/orphans.js.map +1 -0
  25. package/dist/commands/query.d.ts +30 -0
  26. package/dist/commands/query.d.ts.map +1 -0
  27. package/dist/commands/query.js +147 -0
  28. package/dist/commands/query.js.map +1 -0
  29. package/dist/commands/save-node.d.ts +45 -0
  30. package/dist/commands/save-node.d.ts.map +1 -0
  31. package/dist/commands/save-node.js +138 -0
  32. package/dist/commands/save-node.js.map +1 -0
  33. package/dist/commands/skills.d.ts +12 -0
  34. package/dist/commands/skills.d.ts.map +1 -0
  35. package/dist/commands/skills.js +202 -0
  36. package/dist/commands/skills.js.map +1 -0
  37. package/dist/commands/status.d.ts +25 -0
  38. package/dist/commands/status.d.ts.map +1 -0
  39. package/dist/commands/status.js +110 -0
  40. package/dist/commands/status.js.map +1 -0
  41. package/dist/commands/tools.d.ts +13 -0
  42. package/dist/commands/tools.d.ts.map +1 -0
  43. package/dist/commands/tools.js +341 -0
  44. package/dist/commands/tools.js.map +1 -0
  45. package/dist/index.d.ts +12 -0
  46. package/dist/index.d.ts.map +1 -0
  47. package/dist/index.js +28 -0
  48. package/dist/index.js.map +1 -0
  49. package/dist/types.d.ts +46 -0
  50. package/dist/types.d.ts.map +1 -0
  51. package/dist/types.js +6 -0
  52. package/dist/types.js.map +1 -0
  53. package/dist/utils.d.ts +17 -0
  54. package/dist/utils.d.ts.map +1 -0
  55. package/dist/utils.js +24 -0
  56. package/dist/utils.js.map +1 -0
  57. package/package.json +6 -7
  58. package/src/commands/errors.ts +1 -1
  59. package/src/commands/milestones.ts +1 -1
  60. package/src/commands/orphans.ts +1 -1
  61. package/src/commands/query.ts +1 -1
  62. package/src/commands/save-node.ts +1 -1
  63. package/src/commands/status.ts +1 -1
package/dist/cli.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":""}
package/dist/cli.js ADDED
@@ -0,0 +1,136 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ const init_1 = require("./commands/init");
5
+ const status_1 = require("./commands/status");
6
+ const milestones_1 = require("./commands/milestones");
7
+ const query_1 = require("./commands/query");
8
+ const orphans_1 = require("./commands/orphans");
9
+ const errors_1 = require("./commands/errors");
10
+ const save_node_1 = require("./commands/save-node");
11
+ const migrate_1 = require("./commands/migrate");
12
+ const skills_1 = require("./commands/skills");
13
+ const tools_1 = require("./commands/tools");
14
+ /**
15
+ * Weave CLI - Main Entry Point
16
+ */
17
+ const commands = {
18
+ init: init_1.initCommand,
19
+ status: status_1.statusCommand,
20
+ milestones: milestones_1.milestonesCommand,
21
+ query: query_1.queryCommand,
22
+ orphans: orphans_1.orphansCommand,
23
+ errors: errors_1.errorsCommand,
24
+ 'save-node': save_node_1.saveNodeCommand,
25
+ migrate: migrate_1.migrateCommand,
26
+ skills: skills_1.skillsCommand,
27
+ tools: tools_1.toolsCommand,
28
+ };
29
+ function parseArgs() {
30
+ const argv = process.argv.slice(2);
31
+ if (argv.length === 0) {
32
+ showHelp();
33
+ process.exit(0);
34
+ }
35
+ const command = argv[0];
36
+ const args = [];
37
+ const flags = {};
38
+ for (let i = 1; i < argv.length; i++) {
39
+ const arg = argv[i];
40
+ if (arg.startsWith('--')) {
41
+ const parts = arg.substring(2).split('=');
42
+ const flagName = parts[0];
43
+ const flagValue = parts[1] !== undefined ? parts[1] : true;
44
+ flags[flagName] = flagValue;
45
+ }
46
+ else if (arg.startsWith('-') && arg.length === 2) {
47
+ const flagName = arg.substring(1);
48
+ const nextArg = argv[i + 1];
49
+ if (nextArg && !nextArg.startsWith('-')) {
50
+ flags[flagName] = nextArg;
51
+ i++;
52
+ }
53
+ else {
54
+ flags[flagName] = true;
55
+ }
56
+ }
57
+ else {
58
+ args.push(arg);
59
+ }
60
+ }
61
+ return { command, args, flags };
62
+ }
63
+ function showHelp() {
64
+ console.log(`
65
+ 🧵 Weave CLI - AI Agent Knowledge Management
66
+
67
+ Usage: weave <command> [options]
68
+
69
+ Commands:
70
+ init <project> Initialize a new Weave project
71
+ status Show current project status
72
+ milestones List all milestones and tasks
73
+ query <term> Search the knowledge graph
74
+ orphans Analyze code for unused exports
75
+ errors Show error registry
76
+ save-node Manually add a node to the graph
77
+ skills Manage skill modules (list, enable, disable, info)
78
+ tools Manage external tool adapters (add, remove, list, info, test)
79
+ migrate Migrate data between storage providers
80
+
81
+ Global Options:
82
+ --help, -h Show this help message
83
+ --version, -v Show version number
84
+ --verbose Enable verbose output
85
+ --json Output as JSON
86
+
87
+ Examples:
88
+ weave init my-project
89
+ weave status --verbose
90
+ weave query "authentication"
91
+ weave orphans --severity=critical
92
+ weave save-node --label=MyClass --type=class
93
+
94
+ For command-specific help:
95
+ weave <command> --help
96
+
97
+ Documentation: https://github.com/openweave/openweave
98
+ `);
99
+ }
100
+ function showVersion() {
101
+ console.log('Weave CLI v1.0.0');
102
+ }
103
+ async function main() {
104
+ try {
105
+ const parsedArgs = parseArgs();
106
+ // Handle global flags
107
+ if (parsedArgs.flags.help || parsedArgs.flags.h) {
108
+ showHelp();
109
+ process.exit(0);
110
+ }
111
+ if (parsedArgs.flags.version || parsedArgs.flags.v) {
112
+ showVersion();
113
+ process.exit(0);
114
+ }
115
+ const command = commands[parsedArgs.command];
116
+ if (!command) {
117
+ console.error(`❌ Unknown command: ${parsedArgs.command}\n`);
118
+ console.log('Run "weave --help" for usage information.');
119
+ process.exit(1);
120
+ }
121
+ const result = await command.execute(parsedArgs);
122
+ console.log(result.message);
123
+ if (!result.success) {
124
+ process.exit(1);
125
+ }
126
+ }
127
+ catch (error) {
128
+ console.error('❌ CLI Error:', error instanceof Error ? error.message : String(error));
129
+ process.exit(1);
130
+ }
131
+ }
132
+ main().catch((error) => {
133
+ console.error('Fatal error:', error);
134
+ process.exit(1);
135
+ });
136
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import { CLIArgs, CommandResult, CliCommand } from '../types';
2
+ /**
3
+ * Errors Command - View error registry
4
+ */
5
+ export declare class ErrorsCommand implements CliCommand {
6
+ name: string;
7
+ description: string;
8
+ usage: string;
9
+ flags: {
10
+ type: {
11
+ short: string;
12
+ description: string;
13
+ default: string;
14
+ };
15
+ filter: {
16
+ short: string;
17
+ description: string;
18
+ default: string;
19
+ };
20
+ json: {
21
+ short: string;
22
+ description: string;
23
+ default: boolean;
24
+ };
25
+ };
26
+ execute(args: CLIArgs): Promise<CommandResult>;
27
+ private formatError;
28
+ private getTypeIcon;
29
+ private getSeverityIcon;
30
+ }
31
+ export declare const errorsCommand: ErrorsCommand;
32
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/commands/errors.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAe9D;;GAEG;AACH,qBAAa,aAAc,YAAW,UAAU;IAC9C,IAAI,SAAY;IAChB,WAAW,SAAgD;IAC3D,KAAK,SAAiD;IACtD,KAAK;;;;;;;;;;;;;;;;MAiBH;IAEI,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC;IA+HpD,OAAO,CAAC,WAAW;IAmBnB,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,eAAe;CAQxB;AAED,eAAO,MAAM,aAAa,eAAsB,CAAC"}
@@ -0,0 +1,182 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.errorsCommand = exports.ErrorsCommand = void 0;
4
+ const fs_1 = require("fs");
5
+ const path_1 = require("path");
6
+ const utils_1 = require("../utils");
7
+ /**
8
+ * Errors Command - View error registry
9
+ */
10
+ class ErrorsCommand {
11
+ name = 'errors';
12
+ description = 'Show error registry and suppression status';
13
+ usage = 'weave errors [--type=all] [--filter=active]';
14
+ flags = {
15
+ type: {
16
+ short: 't',
17
+ description: 'Filter by error type: all, runtime, syntax, type, semantic',
18
+ default: 'all',
19
+ },
20
+ filter: {
21
+ short: 'f',
22
+ description: 'Filter: all, active, suppressed (default: all)',
23
+ default: 'all',
24
+ },
25
+ json: {
26
+ short: 'j',
27
+ description: 'Output as JSON',
28
+ default: false,
29
+ },
30
+ };
31
+ async execute(args) {
32
+ try {
33
+ const projectRoot = (0, utils_1.resolveProjectRoot)(args.flags.root);
34
+ const weaveDir = (0, path_1.join)(projectRoot, '.weave');
35
+ if (!(0, fs_1.existsSync)(weaveDir)) {
36
+ return {
37
+ success: false,
38
+ message: 'Error: .weave directory not found',
39
+ error: 'Please run "weave init <project-name>" first',
40
+ };
41
+ }
42
+ // Mock error registry
43
+ const mockErrors = [
44
+ {
45
+ id: 'e1',
46
+ error_type: 'runtime',
47
+ message: 'Null pointer exception in data processing',
48
+ file: 'src/processors/data.ts',
49
+ line: 142,
50
+ timestamp: new Date(Date.now() - 2 * 60 * 60 * 1000)
51
+ .toISOString(),
52
+ severity: 'error',
53
+ suppressed: false,
54
+ correction: 'Added null check before accessing property. Fixed in commit abc123.',
55
+ },
56
+ {
57
+ id: 'e2',
58
+ error_type: 'type',
59
+ message: 'Type mismatch: Expected string, got number',
60
+ file: 'src/types/config.ts',
61
+ line: 28,
62
+ timestamp: new Date(Date.now() - 1 * 60 * 60 * 1000)
63
+ .toISOString(),
64
+ severity: 'error',
65
+ suppressed: true,
66
+ correction: 'Type coercion applied. Investigate further.',
67
+ },
68
+ {
69
+ id: 'e3',
70
+ error_type: 'syntax',
71
+ message: 'Missing semicolon',
72
+ file: 'src/index.ts',
73
+ line: 5,
74
+ timestamp: new Date(Date.now() - 3000).toISOString(),
75
+ severity: 'warning',
76
+ suppressed: false,
77
+ },
78
+ {
79
+ id: 'e4',
80
+ error_type: 'semantic',
81
+ message: 'Unused import statement',
82
+ file: 'src/utils/helpers.ts',
83
+ line: 12,
84
+ timestamp: new Date(Date.now() - 5 * 60 * 60 * 1000)
85
+ .toISOString(),
86
+ severity: 'info',
87
+ suppressed: true,
88
+ },
89
+ ];
90
+ const typeFilter = args.flags.type || 'all';
91
+ const filter = args.flags.filter || 'all';
92
+ let results = mockErrors;
93
+ if (typeFilter !== 'all') {
94
+ results = results.filter((e) => e.error_type === typeFilter.toLowerCase());
95
+ }
96
+ if (filter === 'active') {
97
+ results = results.filter((e) => !e.suppressed);
98
+ }
99
+ else if (filter === 'suppressed') {
100
+ results = results.filter((e) => e.suppressed);
101
+ }
102
+ if (args.flags.json) {
103
+ return {
104
+ success: true,
105
+ message: JSON.stringify(results, null, 2),
106
+ data: {
107
+ total: results.length,
108
+ active: results.filter((e) => !e.suppressed).length,
109
+ suppressed: results.filter((e) => e.suppressed).length,
110
+ errors: results,
111
+ },
112
+ };
113
+ }
114
+ let output = '\n📋 Error Registry\n';
115
+ output += '='.repeat(60) + '\n';
116
+ if (results.length === 0) {
117
+ output += '✨ No errors to display!\n';
118
+ }
119
+ else {
120
+ for (const error of results) {
121
+ output += this.formatError(error);
122
+ }
123
+ }
124
+ output += '\n' + '='.repeat(60) + '\n';
125
+ output += `Active: ${results.filter((e) => !e.suppressed).length} | `;
126
+ output += `Suppressed: ${results.filter((e) => e.suppressed).length}\n`;
127
+ return {
128
+ success: true,
129
+ message: output,
130
+ data: {
131
+ total: results.length,
132
+ active: results.filter((e) => !e.suppressed).length,
133
+ suppressed: results.filter((e) => e.suppressed).length,
134
+ errors: results,
135
+ },
136
+ };
137
+ }
138
+ catch (error) {
139
+ return {
140
+ success: false,
141
+ message: 'Error reading error registry',
142
+ error: error instanceof Error ? error.message : String(error),
143
+ };
144
+ }
145
+ }
146
+ formatError(error) {
147
+ const statusIcon = error.suppressed ? '🔇' : '🔴';
148
+ const typeIcon = this.getTypeIcon(error.error_type);
149
+ const severityColor = this.getSeverityIcon(error.severity);
150
+ let output = `\n${statusIcon} ${typeIcon} [${error.error_type.toUpperCase()}] `;
151
+ output += `${severityColor} ${error.severity.toUpperCase()}\n`;
152
+ output += ` Message: ${error.message}\n`;
153
+ output += ` Location: ${error.file}:${error.line}\n`;
154
+ output += ` Time: ${new Date(error.timestamp).toLocaleString()}\n`;
155
+ output += ` ID: ${error.id}\n`;
156
+ if (error.correction) {
157
+ output += ` Fix: ${error.correction}\n`;
158
+ }
159
+ return output;
160
+ }
161
+ getTypeIcon(type) {
162
+ const icons = {
163
+ runtime: '⚡',
164
+ type: '🔤',
165
+ syntax: '📝',
166
+ semantic: '🧠',
167
+ default: '❓',
168
+ };
169
+ return icons[type.toLowerCase()] || icons.default;
170
+ }
171
+ getSeverityIcon(severity) {
172
+ const icons = {
173
+ error: '🔴',
174
+ warning: '🟡',
175
+ info: '🔵',
176
+ };
177
+ return icons[severity.toLowerCase()] || '❓';
178
+ }
179
+ }
180
+ exports.ErrorsCommand = ErrorsCommand;
181
+ exports.errorsCommand = new ErrorsCommand();
182
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/commands/errors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import { CLIArgs, CommandResult, CliCommand } from '../types';
2
+ /**
3
+ * Init Command - Initialize a new Weave project
4
+ */
5
+ export declare class InitCommand implements CliCommand {
6
+ name: string;
7
+ description: string;
8
+ usage: string;
9
+ flags: {
10
+ root: {
11
+ short: string;
12
+ description: string;
13
+ default: string;
14
+ };
15
+ 'include-tests': {
16
+ short: string;
17
+ description: string;
18
+ default: boolean;
19
+ };
20
+ verbose: {
21
+ short: string;
22
+ description: string;
23
+ default: boolean;
24
+ };
25
+ };
26
+ execute(args: CLIArgs): Promise<CommandResult>;
27
+ }
28
+ export declare const initCommand: InitCommand;
29
+ //# sourceMappingURL=init.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAa,MAAM,UAAU,CAAC;AAGzE;;GAEG;AACH,qBAAa,WAAY,YAAW,UAAU;IAC5C,IAAI,SAAU;IACd,WAAW,SAAoC;IAC/C,KAAK,SAAgE;IACrE,KAAK;;;;;;;;;;;;;;;;MAgBH;IAEI,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC;CAoGrD;AAED,eAAO,MAAM,WAAW,aAAoB,CAAC"}
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.initCommand = exports.InitCommand = void 0;
4
+ const fs_1 = require("fs");
5
+ const path_1 = require("path");
6
+ const utils_1 = require("../utils");
7
+ /**
8
+ * Init Command - Initialize a new Weave project
9
+ */
10
+ class InitCommand {
11
+ name = 'init';
12
+ description = 'Initialize a new Weave project';
13
+ usage = 'weave init <project-name> [--root /path] [--include-tests]';
14
+ flags = {
15
+ root: {
16
+ short: 'r',
17
+ description: 'Project root directory',
18
+ default: '',
19
+ },
20
+ 'include-tests': {
21
+ short: 't',
22
+ description: 'Include test files in analysis',
23
+ default: false,
24
+ },
25
+ verbose: {
26
+ short: 'v',
27
+ description: 'Verbose output',
28
+ default: false,
29
+ },
30
+ };
31
+ async execute(args) {
32
+ try {
33
+ const projectName = args.args[0];
34
+ if (!projectName) {
35
+ return {
36
+ success: false,
37
+ message: 'Error: Project name is required',
38
+ error: 'Usage: weave init <project-name>',
39
+ };
40
+ }
41
+ const projectRoot = (0, utils_1.resolveProjectRoot)(args.flags.root);
42
+ const weaveDir = (0, path_1.join)(projectRoot, '.weave');
43
+ const graphDbPath = (0, path_1.join)(weaveDir, 'graph.json');
44
+ const roadmapPath = (0, path_1.join)(weaveDir, 'ROADMAP.md');
45
+ const configPath = (0, path_1.join)(weaveDir, 'config.json');
46
+ // Check if .weave directory already exists
47
+ if ((0, fs_1.existsSync)(weaveDir)) {
48
+ return {
49
+ success: false,
50
+ message: `Error: .weave directory already exists in ${projectRoot}`,
51
+ error: 'Project may already be initialized',
52
+ };
53
+ }
54
+ // Create .weave directory structure
55
+ (0, fs_1.mkdirSync)(weaveDir, { recursive: true });
56
+ // Create config file
57
+ const config = {
58
+ project_name: projectName,
59
+ project_root: projectRoot,
60
+ knowledge_graph_path: graphDbPath,
61
+ roadmap_file: roadmapPath,
62
+ include_tests: args.flags['include-tests'] || false,
63
+ max_context_depth: 5,
64
+ verbose: args.flags.verbose || false,
65
+ debug: false,
66
+ };
67
+ (0, fs_1.writeFileSync)(configPath, JSON.stringify(config, null, 2));
68
+ // Create empty graph database
69
+ const emptyGraph = {
70
+ created_at: new Date().toISOString(),
71
+ nodes: [],
72
+ edges: [],
73
+ sessions: {},
74
+ };
75
+ (0, fs_1.writeFileSync)(graphDbPath, JSON.stringify(emptyGraph, null, 2));
76
+ // Create roadmap file
77
+ const roadmapContent = `# ${projectName} - Development Roadmap
78
+
79
+ ## Project Overview
80
+ This roadmap tracks the development progress of ${projectName}.
81
+
82
+ **Initialized:** ${new Date().toLocaleDateString()}
83
+
84
+ ## Milestones
85
+
86
+ ### Phase 0: Planning
87
+ - [ ] Define project architecture
88
+ - [ ] Set up development environment
89
+ - [ ] Configure knowledge graph
90
+
91
+ `;
92
+ (0, fs_1.writeFileSync)(roadmapPath, roadmapContent);
93
+ const successMessage = `✅ Project "${projectName}" initialized successfully!
94
+
95
+ 📁 Created .weave directory in: ${projectRoot}
96
+ 📊 Knowledge graph created: ${graphDbPath}
97
+ 📋 Roadmap created: ${roadmapPath}
98
+ ⚙️ Config saved: ${configPath}
99
+
100
+ Next steps:
101
+ • Run 'weave status' to see project overview
102
+ • Run 'weave orphans' to analyze code for unused exports
103
+ • Run 'weave query <term>' to search the knowledge graph
104
+ `;
105
+ return {
106
+ success: true,
107
+ message: successMessage,
108
+ data: {
109
+ project_name: projectName,
110
+ project_root: projectRoot,
111
+ weave_directory: weaveDir,
112
+ },
113
+ };
114
+ }
115
+ catch (error) {
116
+ return {
117
+ success: false,
118
+ message: 'Error initializing project',
119
+ error: error instanceof Error ? error.message : String(error),
120
+ };
121
+ }
122
+ }
123
+ }
124
+ exports.InitCommand = InitCommand;
125
+ exports.initCommand = new InitCommand();
126
+ //# sourceMappingURL=init.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import { CliCommand } from "../types.js";
2
+ /**
3
+ * MigrateCommand
4
+ *
5
+ * Migrate data between any two registered OpenWeave providers.
6
+ *
7
+ * Usage:
8
+ * weave migrate --from json --to sqlite
9
+ * weave migrate --from sqlite --to json --data-dir /my/data
10
+ * weave migrate --from json --to sqlite --dry-run
11
+ *
12
+ * Supported built-in providers (no external service needed):
13
+ * json — JSON files in --data-dir (default: .weave)
14
+ * sqlite — SQLite file via node:sqlite (requires @openweave/weave-provider-sqlite)
15
+ * memory — In-memory (useful for --dry-run inspection)
16
+ *
17
+ * Extended providers (require running services + extra packages):
18
+ * mongodb — requires @openweave/weave-provider-mongodb + WEAVE_MONGODB_URI
19
+ * postgres — requires @openweave/weave-provider-postgres + WEAVE_POSTGRES_URL
20
+ * mysql — requires @openweave/weave-provider-mysql + WEAVE_MYSQL_URI
21
+ */
22
+ export declare const migrateCommand: CliCommand;
23
+ //# sourceMappingURL=migrate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,UAAU,EAAE,MAAM,aAAa,CAAC;AAGjE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,cAAc,EAAE,UAgI5B,CAAC"}