@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.
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +136 -0
- package/dist/cli.js.map +1 -0
- package/dist/commands/errors.d.ts +32 -0
- package/dist/commands/errors.d.ts.map +1 -0
- package/dist/commands/errors.js +182 -0
- package/dist/commands/errors.js.map +1 -0
- package/dist/commands/init.d.ts +29 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +126 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/migrate.d.ts +23 -0
- package/dist/commands/migrate.d.ts.map +1 -0
- package/dist/commands/migrate.js +233 -0
- package/dist/commands/migrate.js.map +1 -0
- package/dist/commands/milestones.d.ts +32 -0
- package/dist/commands/milestones.d.ts.map +1 -0
- package/dist/commands/milestones.js +217 -0
- package/dist/commands/milestones.js.map +1 -0
- package/dist/commands/orphans.d.ts +38 -0
- package/dist/commands/orphans.d.ts.map +1 -0
- package/dist/commands/orphans.js +182 -0
- package/dist/commands/orphans.js.map +1 -0
- package/dist/commands/query.d.ts +30 -0
- package/dist/commands/query.d.ts.map +1 -0
- package/dist/commands/query.js +147 -0
- package/dist/commands/query.js.map +1 -0
- package/dist/commands/save-node.d.ts +45 -0
- package/dist/commands/save-node.d.ts.map +1 -0
- package/dist/commands/save-node.js +138 -0
- package/dist/commands/save-node.js.map +1 -0
- package/dist/commands/skills.d.ts +12 -0
- package/dist/commands/skills.d.ts.map +1 -0
- package/dist/commands/skills.js +202 -0
- package/dist/commands/skills.js.map +1 -0
- package/dist/commands/status.d.ts +25 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +110 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/tools.d.ts +13 -0
- package/dist/commands/tools.d.ts.map +1 -0
- package/dist/commands/tools.js +341 -0
- package/dist/commands/tools.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +28 -0
- package/dist/index.js.map +1 -0
- package/dist/types.d.ts +46 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +6 -0
- package/dist/types.js.map +1 -0
- package/dist/utils.d.ts +17 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +24 -0
- package/dist/utils.js.map +1 -0
- package/package.json +6 -7
- package/src/commands/errors.ts +1 -1
- package/src/commands/milestones.ts +1 -1
- package/src/commands/orphans.ts +1 -1
- package/src/commands/query.ts +1 -1
- package/src/commands/save-node.ts +1 -1
- package/src/commands/status.ts +1 -1
package/dist/cli.d.ts
ADDED
|
@@ -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
|
package/dist/cli.js.map
ADDED
|
@@ -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":";;;AAAA,2BAA0D;AAC1D,+BAA4B;AAE5B,oCAA8C;AAE9C;;GAEG;AACH,MAAa,WAAW;IACtB,IAAI,GAAG,MAAM,CAAC;IACd,WAAW,GAAG,gCAAgC,CAAC;IAC/C,KAAK,GAAG,4DAA4D,CAAC;IACrE,KAAK,GAAG;QACN,IAAI,EAAE;YACJ,KAAK,EAAE,GAAG;YACV,WAAW,EAAE,wBAAwB;YACrC,OAAO,EAAE,EAAE;SACZ;QACD,eAAe,EAAE;YACf,KAAK,EAAE,GAAG;YACV,WAAW,EAAE,gCAAgC;YAC7C,OAAO,EAAE,KAAK;SACf;QACD,OAAO,EAAE;YACP,KAAK,EAAE,GAAG;YACV,WAAW,EAAE,gBAAgB;YAC7B,OAAO,EAAE,KAAK;SACf;KACF,CAAC;IAEF,KAAK,CAAC,OAAO,CAAC,IAAa;QACzB,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,iCAAiC;oBAC1C,KAAK,EAAE,kCAAkC;iBAC1C,CAAC;YACJ,CAAC;YAED,MAAM,WAAW,GAAG,IAAA,0BAAkB,EAAC,IAAI,CAAC,KAAK,CAAC,IAA0B,CAAC,CAAC;YAC9E,MAAM,QAAQ,GAAG,IAAA,WAAI,EAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YAC7C,MAAM,WAAW,GAAG,IAAA,WAAI,EAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YACjD,MAAM,WAAW,GAAG,IAAA,WAAI,EAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YACjD,MAAM,UAAU,GAAG,IAAA,WAAI,EAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;YAEjD,2CAA2C;YAC3C,IAAI,IAAA,eAAU,EAAC,QAAQ,CAAC,EAAE,CAAC;gBACzB,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,6CAA6C,WAAW,EAAE;oBACnE,KAAK,EAAE,oCAAoC;iBAC5C,CAAC;YACJ,CAAC;YAED,oCAAoC;YACpC,IAAA,cAAS,EAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAEzC,qBAAqB;YACrB,MAAM,MAAM,GAAc;gBACxB,YAAY,EAAE,WAAW;gBACzB,YAAY,EAAE,WAAW;gBACzB,oBAAoB,EAAE,WAAW;gBACjC,YAAY,EAAE,WAAW;gBACzB,aAAa,EAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAa,IAAI,KAAK;gBAChE,iBAAiB,EAAE,CAAC;gBACpB,OAAO,EAAG,IAAI,CAAC,KAAK,CAAC,OAAmB,IAAI,KAAK;gBACjD,KAAK,EAAE,KAAK;aACb,CAAC;YAEF,IAAA,kBAAa,EAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAE3D,8BAA8B;YAC9B,MAAM,UAAU,GAAG;gBACjB,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACpC,KAAK,EAAE,EAAE;gBACT,KAAK,EAAE,EAAE;gBACT,QAAQ,EAAE,EAAE;aACb,CAAC;YACF,IAAA,kBAAa,EAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAEhE,sBAAsB;YACtB,MAAM,cAAc,GAAG,KAAK,WAAW;;;kDAGK,WAAW;;mBAE1C,IAAI,IAAI,EAAE,CAAC,kBAAkB,EAAE;;;;;;;;;CASjD,CAAC;YACI,IAAA,kBAAa,EAAC,WAAW,EAAE,cAAc,CAAC,CAAC;YAE3C,MAAM,cAAc,GAAG,cAAc,WAAW;;kCAEpB,WAAW;8BACf,WAAW;sBACnB,WAAW;oBACb,UAAU;;;;;;CAM7B,CAAC;YAEI,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,cAAc;gBACvB,IAAI,EAAE;oBACJ,YAAY,EAAE,WAAW;oBACzB,YAAY,EAAE,WAAW;oBACzB,eAAe,EAAE,QAAQ;iBAC1B;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,4BAA4B;gBACrC,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AA1HD,kCA0HC;AAEY,QAAA,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC"}
|
|
@@ -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"}
|