@sylix/coworker 1.0.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.
- package/README.md +191 -0
- package/dist/api/sylix.d.ts +51 -0
- package/dist/api/sylix.d.ts.map +1 -0
- package/dist/api/sylix.js +234 -0
- package/dist/api/sylix.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +235 -0
- package/dist/cli.js.map +1 -0
- package/dist/commands/ask.d.ts +2 -0
- package/dist/commands/ask.d.ts.map +1 -0
- package/dist/commands/ask.js +55 -0
- package/dist/commands/ask.js.map +1 -0
- package/dist/commands/chat.d.ts +2 -0
- package/dist/commands/chat.d.ts.map +1 -0
- package/dist/commands/chat.js +292 -0
- package/dist/commands/chat.js.map +1 -0
- package/dist/commands/commit.d.ts +2 -0
- package/dist/commands/commit.d.ts.map +1 -0
- package/dist/commands/commit.js +163 -0
- package/dist/commands/commit.js.map +1 -0
- package/dist/commands/config.d.ts +3 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js +101 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/edit.d.ts +2 -0
- package/dist/commands/edit.d.ts.map +1 -0
- package/dist/commands/edit.js +112 -0
- package/dist/commands/edit.js.map +1 -0
- package/dist/commands/explain.d.ts +2 -0
- package/dist/commands/explain.d.ts.map +1 -0
- package/dist/commands/explain.js +99 -0
- package/dist/commands/explain.js.map +1 -0
- package/dist/commands/login.d.ts +2 -0
- package/dist/commands/login.d.ts.map +1 -0
- package/dist/commands/login.js +151 -0
- package/dist/commands/login.js.map +1 -0
- package/dist/commands/review.d.ts +2 -0
- package/dist/commands/review.d.ts.map +1 -0
- package/dist/commands/review.js +137 -0
- package/dist/commands/review.js.map +1 -0
- package/dist/commands/run.d.ts +2 -0
- package/dist/commands/run.d.ts.map +1 -0
- package/dist/commands/run.js +136 -0
- package/dist/commands/run.js.map +1 -0
- package/dist/context/reader.d.ts +24 -0
- package/dist/context/reader.d.ts.map +1 -0
- package/dist/context/reader.js +209 -0
- package/dist/context/reader.js.map +1 -0
- package/dist/memory/loader.d.ts +41 -0
- package/dist/memory/loader.d.ts.map +1 -0
- package/dist/memory/loader.js +249 -0
- package/dist/memory/loader.js.map +1 -0
- package/dist/scripts/postinstall.d.ts +7 -0
- package/dist/scripts/postinstall.d.ts.map +1 -0
- package/dist/scripts/postinstall.js +23 -0
- package/dist/scripts/postinstall.js.map +1 -0
- package/dist/tools/bash.d.ts +2 -0
- package/dist/tools/bash.d.ts.map +1 -0
- package/dist/tools/bash.js +40 -0
- package/dist/tools/bash.js.map +1 -0
- package/dist/tools/chrome.d.ts +10 -0
- package/dist/tools/chrome.d.ts.map +1 -0
- package/dist/tools/chrome.js +228 -0
- package/dist/tools/chrome.js.map +1 -0
- package/dist/tools/edit.d.ts +2 -0
- package/dist/tools/edit.d.ts.map +1 -0
- package/dist/tools/edit.js +67 -0
- package/dist/tools/edit.js.map +1 -0
- package/dist/tools/ls.d.ts +2 -0
- package/dist/tools/ls.d.ts.map +1 -0
- package/dist/tools/ls.js +75 -0
- package/dist/tools/ls.js.map +1 -0
- package/dist/tools/read.d.ts +2 -0
- package/dist/tools/read.d.ts.map +1 -0
- package/dist/tools/read.js +72 -0
- package/dist/tools/read.js.map +1 -0
- package/dist/tools/registry.d.ts +2 -0
- package/dist/tools/registry.d.ts.map +1 -0
- package/dist/tools/registry.js +64 -0
- package/dist/tools/registry.js.map +1 -0
- package/dist/utils/output.d.ts +62 -0
- package/dist/utils/output.d.ts.map +1 -0
- package/dist/utils/output.js +487 -0
- package/dist/utils/output.js.map +1 -0
- package/package.json +54 -0
|
@@ -0,0 +1,487 @@
|
|
|
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.Timer = exports.StreamingRenderer = exports.sleep = exports.theme = void 0;
|
|
7
|
+
exports.getTerminalWidth = getTerminalWidth;
|
|
8
|
+
exports.isNarrowTerminal = isNarrowTerminal;
|
|
9
|
+
exports.center = center;
|
|
10
|
+
exports.shouldShowBanner = shouldShowBanner;
|
|
11
|
+
exports.printHeader = printHeader;
|
|
12
|
+
exports.printUserInfo = printUserInfo;
|
|
13
|
+
exports.printSuccess = printSuccess;
|
|
14
|
+
exports.printError = printError;
|
|
15
|
+
exports.printWarning = printWarning;
|
|
16
|
+
exports.printInfo = printInfo;
|
|
17
|
+
exports.printErrorBox = printErrorBox;
|
|
18
|
+
exports.startLoadingAnimation = startLoadingAnimation;
|
|
19
|
+
exports.stopLoadingAnimation = stopLoadingAnimation;
|
|
20
|
+
exports.printResponseStats = printResponseStats;
|
|
21
|
+
exports.printCodeBlock = printCodeBlock;
|
|
22
|
+
exports.printDiffPreview = printDiffPreview;
|
|
23
|
+
exports.printDiff = printDiff;
|
|
24
|
+
exports.printCommitBox = printCommitBox;
|
|
25
|
+
exports.printReviewCard = printReviewCard;
|
|
26
|
+
exports.printUserMessage = printUserMessage;
|
|
27
|
+
exports.printAIMessage = printAIMessage;
|
|
28
|
+
exports.createSpinner = createSpinner;
|
|
29
|
+
exports.printExitMessage = printExitMessage;
|
|
30
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
31
|
+
const ora_1 = __importDefault(require("ora"));
|
|
32
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
33
|
+
// COLOR SYSTEM
|
|
34
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
35
|
+
exports.theme = {
|
|
36
|
+
brand: chalk_1.default.hex('#00D4FF'), // Electric cyan - Sylix brand
|
|
37
|
+
accent: chalk_1.default.hex('#7C3AED'), // Deep purple - highlights
|
|
38
|
+
success: chalk_1.default.hex('#10B981'), // Emerald green
|
|
39
|
+
error: chalk_1.default.hex('#EF4444'), // Clean red
|
|
40
|
+
warning: chalk_1.default.hex('#F59E0B'), // Amber
|
|
41
|
+
ai: chalk_1.default.hex('#A78BFA'), // Soft purple - AI responses
|
|
42
|
+
dim: chalk_1.default.hex('#6B7280'), // Gray - secondary info
|
|
43
|
+
white: chalk_1.default.hex('#F9FAFB'), // Off white
|
|
44
|
+
code: chalk_1.default.hex('#FCD34D'), // Yellow - code/commands
|
|
45
|
+
muted: chalk_1.default.hex('#9CA3AF'), // Muted gray
|
|
46
|
+
};
|
|
47
|
+
const noColor = process.env.NO_COLOR === '1' || !process.stdout.isTTY;
|
|
48
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
49
|
+
// UTILITY FUNCTIONS
|
|
50
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
51
|
+
const sleep = (ms) => new Promise(resolve => setTimeout(resolve, ms));
|
|
52
|
+
exports.sleep = sleep;
|
|
53
|
+
let terminalWidth = process.stdout.columns || 80;
|
|
54
|
+
process.stdout.on('resize', () => { terminalWidth = process.stdout.columns || 80; });
|
|
55
|
+
function getTerminalWidth() {
|
|
56
|
+
return Math.min(terminalWidth, 120);
|
|
57
|
+
}
|
|
58
|
+
function isNarrowTerminal() {
|
|
59
|
+
return getTerminalWidth() < 60;
|
|
60
|
+
}
|
|
61
|
+
function center(text, width) {
|
|
62
|
+
const w = width || getTerminalWidth();
|
|
63
|
+
const padding = Math.max(0, Math.floor((w - text.length) / 2));
|
|
64
|
+
return ' '.repeat(padding) + text;
|
|
65
|
+
}
|
|
66
|
+
function applyTheme(colorFn, text) {
|
|
67
|
+
return noColor ? text : colorFn(text);
|
|
68
|
+
}
|
|
69
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
70
|
+
// BANNER & HEADER
|
|
71
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
72
|
+
const LOADING_MESSAGES = [
|
|
73
|
+
'Sylix brain activated...',
|
|
74
|
+
'Reading your codebase...',
|
|
75
|
+
'Thinking really hard...',
|
|
76
|
+
'Consulting the AI oracle...',
|
|
77
|
+
'Crafting something brilliant...',
|
|
78
|
+
'CoWorker is on it...',
|
|
79
|
+
];
|
|
80
|
+
function shouldShowBanner() {
|
|
81
|
+
if (process.argv.includes('--no-banner'))
|
|
82
|
+
return false;
|
|
83
|
+
if (!process.stdout.isTTY)
|
|
84
|
+
return false;
|
|
85
|
+
if (process.env.COWORKER_NO_BANNER === '1')
|
|
86
|
+
return false;
|
|
87
|
+
return true;
|
|
88
|
+
}
|
|
89
|
+
async function printHeader() {
|
|
90
|
+
if (!shouldShowBanner())
|
|
91
|
+
return;
|
|
92
|
+
if (isNarrowTerminal()) {
|
|
93
|
+
console.log();
|
|
94
|
+
console.log(applyTheme(exports.theme.brand, 'โ CoWorker by Sylix'));
|
|
95
|
+
console.log();
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
const logo = [
|
|
99
|
+
' โโโโโโโ โโโโโโโ โโโ โโโ โโโโโโโ โโโโโโโ โโโ โโโโโโโโโโโโโโโโโโ ',
|
|
100
|
+
' โโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโ',
|
|
101
|
+
' โโโ โโโ โโโโโโ โโ โโโโโโ โโโโโโโโโโโโโโโโโโ โโโโโโ โโโโโโโโ',
|
|
102
|
+
' โโโ โโโ โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโ โโโโโโ โโโโโโโโ',
|
|
103
|
+
' โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโ โโโโโโโโโโโโโโ โโโ',
|
|
104
|
+
' โโโโโโโ โโโโโโโ โโโโโโโโ โโโโโโโ โโโ โโโโโโ โโโโโโโโโโโโโโ โโโ'
|
|
105
|
+
];
|
|
106
|
+
console.log();
|
|
107
|
+
const lines = new Array(6).fill('');
|
|
108
|
+
// Step 1: ASCII Typewriter
|
|
109
|
+
for (let c = 0; c < logo[0].length; c++) {
|
|
110
|
+
if (c > 0)
|
|
111
|
+
process.stdout.write('\x1B[6A');
|
|
112
|
+
for (let r = 0; r < 6; r++) {
|
|
113
|
+
lines[r] += logo[r][c];
|
|
114
|
+
console.log(applyTheme(exports.theme.brand, lines[r]));
|
|
115
|
+
}
|
|
116
|
+
await (0, exports.sleep)(10);
|
|
117
|
+
}
|
|
118
|
+
// Step 2: Tagline
|
|
119
|
+
console.log();
|
|
120
|
+
const tagline = ' by Sylix ยท Your AI Coding Partner';
|
|
121
|
+
const tagWords = tagline.split(/(\s+)/);
|
|
122
|
+
for (const word of tagWords) {
|
|
123
|
+
if (word.trim()) {
|
|
124
|
+
process.stdout.write(applyTheme(exports.theme.dim, word));
|
|
125
|
+
await (0, exports.sleep)(50);
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
process.stdout.write(word);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
console.log();
|
|
132
|
+
console.log();
|
|
133
|
+
// Step 3: Animated line
|
|
134
|
+
process.stdout.write(' ');
|
|
135
|
+
const innerWidth = Math.min(getTerminalWidth(), 75);
|
|
136
|
+
for (let i = 0; i < innerWidth - 4; i++) {
|
|
137
|
+
process.stdout.write(applyTheme(exports.theme.dim, 'โ'));
|
|
138
|
+
await (0, exports.sleep)(2);
|
|
139
|
+
}
|
|
140
|
+
console.log('\n');
|
|
141
|
+
}
|
|
142
|
+
function printUserInfo(email, model, version = '1.0.0') {
|
|
143
|
+
if (!shouldShowBanner())
|
|
144
|
+
return;
|
|
145
|
+
const parts = [];
|
|
146
|
+
if (email)
|
|
147
|
+
parts.push(`Signed in as ${applyTheme(exports.theme.accent, email)}`);
|
|
148
|
+
else
|
|
149
|
+
parts.push(applyTheme(exports.theme.dim, 'Not signed in'));
|
|
150
|
+
if (model)
|
|
151
|
+
parts.push(`Model: ${applyTheme(exports.theme.accent, model)}`);
|
|
152
|
+
parts.push(`v${version}`);
|
|
153
|
+
const separator = applyTheme(exports.theme.dim, ' ยท ');
|
|
154
|
+
console.log(' ' + applyTheme(exports.theme.dim, 'โ') + ' ' + parts.join(separator));
|
|
155
|
+
console.log();
|
|
156
|
+
}
|
|
157
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
158
|
+
// STATUS MESSAGES
|
|
159
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
160
|
+
function printSuccess(message, details) {
|
|
161
|
+
const detail = details ? ` ${applyTheme(exports.theme.dim, 'ยท')} ${applyTheme(exports.theme.white, details)}` : '';
|
|
162
|
+
console.log(' ' + applyTheme(exports.theme.success, 'โ') + ' ' + applyTheme(exports.theme.white, message) + detail);
|
|
163
|
+
}
|
|
164
|
+
function printError(message) {
|
|
165
|
+
console.log(' ' + applyTheme(exports.theme.error, 'โ') + ' ' + applyTheme(exports.theme.error, message));
|
|
166
|
+
}
|
|
167
|
+
function printWarning(message) {
|
|
168
|
+
console.log(' ' + applyTheme(exports.theme.warning, 'โ ') + ' ' + applyTheme(exports.theme.white, message));
|
|
169
|
+
}
|
|
170
|
+
function printInfo(message) {
|
|
171
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โน') + ' ' + applyTheme(exports.theme.white, message));
|
|
172
|
+
}
|
|
173
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
174
|
+
// ERROR BOX
|
|
175
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
176
|
+
function printErrorBox(title, message, suggestions, link) {
|
|
177
|
+
const width = Math.min(getTerminalWidth(), 65);
|
|
178
|
+
console.log();
|
|
179
|
+
console.log(' ' + applyTheme(exports.theme.error, 'โท'));
|
|
180
|
+
console.log(' ' + applyTheme(exports.theme.error, 'โ') + ' ' + applyTheme(exports.theme.error, 'โ Error: ') + applyTheme(exports.theme.white, title));
|
|
181
|
+
console.log(' ' + applyTheme(exports.theme.error, 'โ'));
|
|
182
|
+
const words = message.split(' ');
|
|
183
|
+
let line = 'โ ';
|
|
184
|
+
for (const word of words) {
|
|
185
|
+
if (line.length + word.length > width - 4) {
|
|
186
|
+
console.log(' ' + applyTheme(exports.theme.error, line));
|
|
187
|
+
line = 'โ ' + word + ' ';
|
|
188
|
+
}
|
|
189
|
+
else {
|
|
190
|
+
line += word + ' ';
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
if (line.trim() !== 'โ')
|
|
194
|
+
console.log(' ' + applyTheme(exports.theme.error, line));
|
|
195
|
+
if (suggestions && suggestions.length > 0) {
|
|
196
|
+
console.log(' ' + applyTheme(exports.theme.error, 'โ'));
|
|
197
|
+
console.log(' ' + applyTheme(exports.theme.error, 'โ') + ' ' + applyTheme(exports.theme.dim, 'Suggestions:'));
|
|
198
|
+
for (const suggestion of suggestions) {
|
|
199
|
+
console.log(' ' + applyTheme(exports.theme.error, 'โ') + ' ' + applyTheme(exports.theme.dim, 'โ ') + applyTheme(exports.theme.white, suggestion));
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
if (link) {
|
|
203
|
+
console.log(' ' + applyTheme(exports.theme.error, 'โ'));
|
|
204
|
+
console.log(' ' + applyTheme(exports.theme.error, 'โ') + ' ' + applyTheme(exports.theme.dim, 'Or visit: ') + applyTheme(exports.theme.brand, link));
|
|
205
|
+
}
|
|
206
|
+
console.log(' ' + applyTheme(exports.theme.error, 'โต'));
|
|
207
|
+
console.log();
|
|
208
|
+
}
|
|
209
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
210
|
+
// LOADING ANIMATION
|
|
211
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
212
|
+
let loadingInterval = null;
|
|
213
|
+
function startLoadingAnimation() {
|
|
214
|
+
if (!process.stdout.isTTY)
|
|
215
|
+
return;
|
|
216
|
+
const frames = ['โ โ โ', 'โ โ โ', 'โ โ โ'];
|
|
217
|
+
let frameIndex = 0;
|
|
218
|
+
let messageIndex = Math.floor(Math.random() * LOADING_MESSAGES.length);
|
|
219
|
+
process.stdout.write('\x1B[?25l'); // Hide cursor
|
|
220
|
+
loadingInterval = setInterval(() => {
|
|
221
|
+
const frame = frames[frameIndex];
|
|
222
|
+
const message = LOADING_MESSAGES[messageIndex];
|
|
223
|
+
process.stdout.write('\r\x1B[K'); // Clear line
|
|
224
|
+
process.stdout.write(' ' + applyTheme(exports.theme.brand, frame) + ' ' + applyTheme(exports.theme.dim, `โ ${message}`));
|
|
225
|
+
frameIndex = (frameIndex + 1) % frames.length;
|
|
226
|
+
if (frameIndex === 0) {
|
|
227
|
+
messageIndex = (messageIndex + 1) % LOADING_MESSAGES.length;
|
|
228
|
+
}
|
|
229
|
+
}, 300);
|
|
230
|
+
}
|
|
231
|
+
function stopLoadingAnimation() {
|
|
232
|
+
if (loadingInterval) {
|
|
233
|
+
clearInterval(loadingInterval);
|
|
234
|
+
loadingInterval = null;
|
|
235
|
+
}
|
|
236
|
+
if (process.stdout.isTTY) {
|
|
237
|
+
process.stdout.write('\x1B[?25h'); // Show cursor
|
|
238
|
+
process.stdout.write('\r\x1B[K');
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
242
|
+
// AI RESPONSE BOX
|
|
243
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
244
|
+
function startResponseBox() {
|
|
245
|
+
const width = Math.min(getTerminalWidth(), 75);
|
|
246
|
+
console.log();
|
|
247
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โญโ CoWorker โ' + 'โ'.repeat(width - 17)));
|
|
248
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โ'));
|
|
249
|
+
process.stdout.write(' ' + applyTheme(exports.theme.brand, 'โ') + ' ');
|
|
250
|
+
}
|
|
251
|
+
function endResponseBox() {
|
|
252
|
+
const width = Math.min(getTerminalWidth(), 75);
|
|
253
|
+
console.log();
|
|
254
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โ'));
|
|
255
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โฐ' + 'โ'.repeat(width - 4)));
|
|
256
|
+
}
|
|
257
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
258
|
+
// STREAMING OUTPUT
|
|
259
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
260
|
+
class StreamingRenderer {
|
|
261
|
+
constructor() {
|
|
262
|
+
this.inCodeBlock = false;
|
|
263
|
+
this.inBox = false;
|
|
264
|
+
this.wordDelay = 20;
|
|
265
|
+
}
|
|
266
|
+
start() {
|
|
267
|
+
stopLoadingAnimation();
|
|
268
|
+
if (shouldShowBanner()) {
|
|
269
|
+
startResponseBox();
|
|
270
|
+
this.inBox = true;
|
|
271
|
+
}
|
|
272
|
+
else {
|
|
273
|
+
process.stdout.write(' ');
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
write(text) {
|
|
277
|
+
const lines = text.split('\n');
|
|
278
|
+
for (let i = 0; i < lines.length; i++) {
|
|
279
|
+
if (i > 0)
|
|
280
|
+
process.stdout.write('\n ' + applyTheme(exports.theme.brand, 'โ') + ' ');
|
|
281
|
+
let chunk = lines[i];
|
|
282
|
+
if (chunk.includes('```')) {
|
|
283
|
+
this.inCodeBlock = !this.inCodeBlock;
|
|
284
|
+
}
|
|
285
|
+
process.stdout.write(this.inCodeBlock ? applyTheme(exports.theme.code, chunk) : applyTheme(exports.theme.ai, chunk));
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
async writeWithDelay(text) {
|
|
289
|
+
const words = text.split(/(\s+)/);
|
|
290
|
+
for (const word of words) {
|
|
291
|
+
this.write(word);
|
|
292
|
+
await (0, exports.sleep)(this.wordDelay);
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
end() {
|
|
296
|
+
if (this.inBox)
|
|
297
|
+
endResponseBox();
|
|
298
|
+
else
|
|
299
|
+
console.log();
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
exports.StreamingRenderer = StreamingRenderer;
|
|
303
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
304
|
+
// RESPONSE STATS
|
|
305
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
306
|
+
function printResponseStats(elapsedMs, tokens, verbose = false) {
|
|
307
|
+
const seconds = (elapsedMs / 1000).toFixed(1);
|
|
308
|
+
const timeStr = `${seconds}s`;
|
|
309
|
+
let stats = applyTheme(exports.theme.dim, 'Done');
|
|
310
|
+
stats += applyTheme(exports.theme.dim, ' ยท ');
|
|
311
|
+
stats += applyTheme(exports.theme.brand, 'sylix.ai');
|
|
312
|
+
stats += applyTheme(exports.theme.dim, ' ยท ');
|
|
313
|
+
stats += applyTheme(exports.theme.accent, timeStr);
|
|
314
|
+
if (verbose && tokens !== undefined) {
|
|
315
|
+
stats += applyTheme(exports.theme.dim, ' ยท ');
|
|
316
|
+
stats += applyTheme(exports.theme.dim, `[tokens: ${tokens}]`);
|
|
317
|
+
}
|
|
318
|
+
console.log();
|
|
319
|
+
console.log(' ' + applyTheme(exports.theme.success, 'โฆ') + ' ' + stats);
|
|
320
|
+
console.log();
|
|
321
|
+
}
|
|
322
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
323
|
+
// CODE BLOCK RENDERING
|
|
324
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
325
|
+
function printCodeBlock(code, language, filename) {
|
|
326
|
+
console.log();
|
|
327
|
+
if (filename) {
|
|
328
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โ') + ' ' + applyTheme(exports.theme.white, filename));
|
|
329
|
+
console.log();
|
|
330
|
+
}
|
|
331
|
+
const lines = code.split('\n');
|
|
332
|
+
const lineNumWidth = String(lines.length).length;
|
|
333
|
+
for (let i = 0; i < lines.length; i++) {
|
|
334
|
+
const lineNum = applyTheme(exports.theme.dim, String(i + 1).padStart(lineNumWidth) + ' โ');
|
|
335
|
+
const content = applyTheme(exports.theme.code, lines[i]);
|
|
336
|
+
console.log(' ' + lineNum + ' ' + content);
|
|
337
|
+
}
|
|
338
|
+
console.log();
|
|
339
|
+
}
|
|
340
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
341
|
+
// DIFF PREVIEW
|
|
342
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
343
|
+
function printDiffPreview(filename, changes) {
|
|
344
|
+
const width = Math.min(getTerminalWidth(), 75);
|
|
345
|
+
console.log();
|
|
346
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โโ') + applyTheme(exports.theme.dim, ' Changes to ') + applyTheme(exports.theme.white, filename) + ' ' + applyTheme(exports.theme.brand, 'โ'.repeat(Math.max(0, width - filename.length - 18))));
|
|
347
|
+
console.log();
|
|
348
|
+
for (const change of changes) {
|
|
349
|
+
const lineNum = applyTheme(exports.theme.dim, String(change.lineNumber).padStart(4) + ' โ');
|
|
350
|
+
const oldLine = applyTheme(exports.theme.error, '- ') + applyTheme(exports.theme.muted, change.oldLine);
|
|
351
|
+
const newLine = applyTheme(exports.theme.success, '+ ') + applyTheme(exports.theme.white, change.newLine);
|
|
352
|
+
console.log(' ' + lineNum + ' ' + oldLine);
|
|
353
|
+
console.log(' ' + lineNum + ' ' + newLine);
|
|
354
|
+
}
|
|
355
|
+
console.log();
|
|
356
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โ'.repeat(width - 2)));
|
|
357
|
+
console.log(' ' + applyTheme(exports.theme.dim, 'Apply these changes? (y/n) โบ '));
|
|
358
|
+
}
|
|
359
|
+
function printDiff(oldContent, newContent, filename) {
|
|
360
|
+
const width = Math.min(getTerminalWidth(), 75);
|
|
361
|
+
if (filename) {
|
|
362
|
+
console.log();
|
|
363
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โ') + ' ' + applyTheme(exports.theme.white, filename));
|
|
364
|
+
console.log();
|
|
365
|
+
}
|
|
366
|
+
const oldLines = oldContent.split('\n');
|
|
367
|
+
const newLines = newContent.split('\n');
|
|
368
|
+
console.log(' ' + applyTheme(exports.theme.dim, '--- Original'));
|
|
369
|
+
console.log(' ' + applyTheme(exports.theme.dim, '+++ Modified'));
|
|
370
|
+
console.log();
|
|
371
|
+
for (let i = 0; i < Math.max(oldLines.length, newLines.length); i++) {
|
|
372
|
+
const oldLine = oldLines[i];
|
|
373
|
+
const newLine = newLines[i];
|
|
374
|
+
if (oldLine !== undefined && newLine !== undefined && oldLine !== newLine) {
|
|
375
|
+
console.log(' ' + applyTheme(exports.theme.error, '-') + ' ' + applyTheme(exports.theme.muted, oldLine));
|
|
376
|
+
console.log(' ' + applyTheme(exports.theme.success, '+') + ' ' + applyTheme(exports.theme.white, newLine));
|
|
377
|
+
}
|
|
378
|
+
else if (oldLine === undefined) {
|
|
379
|
+
console.log(' ' + applyTheme(exports.theme.success, '+') + ' ' + applyTheme(exports.theme.white, newLine));
|
|
380
|
+
}
|
|
381
|
+
else if (newLine === undefined) {
|
|
382
|
+
console.log(' ' + applyTheme(exports.theme.error, '-') + ' ' + applyTheme(exports.theme.muted, oldLine));
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
console.log();
|
|
386
|
+
}
|
|
387
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
388
|
+
// COMMIT MESSAGE BOX
|
|
389
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
390
|
+
function printCommitBox(message) {
|
|
391
|
+
const width = Math.min(getTerminalWidth(), 65);
|
|
392
|
+
const innerWidth = width - 4;
|
|
393
|
+
console.log();
|
|
394
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โญโ Suggested Commit โ' + 'โ'.repeat(innerWidth - 20) + 'โฎ'));
|
|
395
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โ') + ' '.repeat(innerWidth) + applyTheme(exports.theme.brand, 'โ'));
|
|
396
|
+
const words = message.split(' ');
|
|
397
|
+
let line = ' ';
|
|
398
|
+
for (const word of words) {
|
|
399
|
+
if (line.length + word.length > innerWidth - 2) {
|
|
400
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โ') + line.padEnd(innerWidth) + applyTheme(exports.theme.brand, 'โ'));
|
|
401
|
+
line = ' ' + word + ' ';
|
|
402
|
+
}
|
|
403
|
+
else {
|
|
404
|
+
line += word + ' ';
|
|
405
|
+
}
|
|
406
|
+
}
|
|
407
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โ') + line.padEnd(innerWidth) + applyTheme(exports.theme.brand, 'โ'));
|
|
408
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โ') + ' '.repeat(innerWidth) + applyTheme(exports.theme.brand, 'โ'));
|
|
409
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โ') + ' ' + applyTheme(exports.theme.white, 'Use this commit message? (y/n) โบ').padEnd(innerWidth - 2) + applyTheme(exports.theme.brand, 'โ'));
|
|
410
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โฐ' + 'โ'.repeat(innerWidth) + 'โฏ'));
|
|
411
|
+
console.log();
|
|
412
|
+
}
|
|
413
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
414
|
+
// REVIEW SCORE CARD
|
|
415
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
416
|
+
function printReviewCard(filename, scores) {
|
|
417
|
+
const width = 45;
|
|
418
|
+
console.log();
|
|
419
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โ' + 'โ'.repeat(width - 2) + 'โ'));
|
|
420
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โ') + ' ' + applyTheme(exports.theme.brand, 'Code Review') + applyTheme(exports.theme.dim, ' ยท ') + applyTheme(exports.theme.white, filename).slice(0, Math.max(0, width - 21)).padEnd(Math.max(0, width - 21)) + applyTheme(exports.theme.brand, ' โ'));
|
|
421
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โ' + 'โ'.repeat(width - 2) + 'โค'));
|
|
422
|
+
const printScore = (label, score) => {
|
|
423
|
+
const filled = Math.round(score / 10);
|
|
424
|
+
const empty = 10 - filled;
|
|
425
|
+
// Fix: bar looks like โโโโโโโโโโ
|
|
426
|
+
const bar = applyTheme(exports.theme.success, 'โ'.repeat(filled)) + applyTheme(exports.theme.white, 'โ'.repeat(empty));
|
|
427
|
+
const scoreStr = applyTheme(exports.theme.accent, String(score).padStart(2));
|
|
428
|
+
const labelStr = applyTheme(exports.theme.white, label.padEnd(16));
|
|
429
|
+
console.log(` ${applyTheme(exports.theme.brand, 'โ')} ${labelStr} ${bar} ${scoreStr}/10 ${applyTheme(exports.theme.brand, 'โ')}`);
|
|
430
|
+
};
|
|
431
|
+
printScore('Quality Score', scores.quality);
|
|
432
|
+
printScore('Security', scores.security);
|
|
433
|
+
printScore('Performance', scores.performance);
|
|
434
|
+
printScore('Readability', scores.readability);
|
|
435
|
+
console.log(' ' + applyTheme(exports.theme.brand, 'โ' + 'โ'.repeat(width - 2) + 'โ'));
|
|
436
|
+
console.log();
|
|
437
|
+
}
|
|
438
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
439
|
+
// CHAT MODE STYLING
|
|
440
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
441
|
+
function printUserMessage(message) {
|
|
442
|
+
console.log(' ' + applyTheme(exports.theme.white, 'You') + applyTheme(exports.theme.dim, ' โบ ') + message);
|
|
443
|
+
}
|
|
444
|
+
function printAIMessage(message) {
|
|
445
|
+
console.log(' ' + applyTheme(exports.theme.ai, 'CoWorker') + applyTheme(exports.theme.dim, ' โบ ') + applyTheme(exports.theme.ai, message));
|
|
446
|
+
}
|
|
447
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
448
|
+
// SPINNER AND TIMER
|
|
449
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
450
|
+
function createSpinner(text) {
|
|
451
|
+
return (0, ora_1.default)({
|
|
452
|
+
text: applyTheme(exports.theme.dim, text),
|
|
453
|
+
spinner: 'dots',
|
|
454
|
+
color: 'cyan'
|
|
455
|
+
});
|
|
456
|
+
}
|
|
457
|
+
class Timer {
|
|
458
|
+
constructor() {
|
|
459
|
+
this.startTime = Date.now();
|
|
460
|
+
}
|
|
461
|
+
elapsed() {
|
|
462
|
+
return Date.now() - this.startTime;
|
|
463
|
+
}
|
|
464
|
+
elapsedSeconds() {
|
|
465
|
+
return (this.elapsed() / 1000).toFixed(1);
|
|
466
|
+
}
|
|
467
|
+
}
|
|
468
|
+
exports.Timer = Timer;
|
|
469
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
470
|
+
// EXIT MESSAGE
|
|
471
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
472
|
+
function printExitMessage() {
|
|
473
|
+
console.log();
|
|
474
|
+
console.log(' ' + applyTheme(exports.theme.dim, 'โ') + ' ' + applyTheme(exports.theme.dim, 'CoWorker session ended ยท Thanks for using Sylix'));
|
|
475
|
+
console.log();
|
|
476
|
+
}
|
|
477
|
+
// Set up globals
|
|
478
|
+
process.on('exit', () => {
|
|
479
|
+
stopLoadingAnimation();
|
|
480
|
+
});
|
|
481
|
+
process.on('SIGINT', () => {
|
|
482
|
+
stopLoadingAnimation();
|
|
483
|
+
console.log();
|
|
484
|
+
printExitMessage();
|
|
485
|
+
process.exit(0);
|
|
486
|
+
});
|
|
487
|
+
//# sourceMappingURL=output.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/utils/output.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@sylix/coworker",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "CoWorker by Sylix - AI-powered CLI coding assistant",
|
|
5
|
+
"main": "dist/cli.js",
|
|
6
|
+
"bin": {
|
|
7
|
+
"coworker": "./dist/cli.js"
|
|
8
|
+
},
|
|
9
|
+
"preferGlobal": true,
|
|
10
|
+
"engines": {
|
|
11
|
+
"node": ">=18.0.0"
|
|
12
|
+
},
|
|
13
|
+
"scripts": {
|
|
14
|
+
"build": "tsc",
|
|
15
|
+
"dev": "ts-node src/cli.ts",
|
|
16
|
+
"start": "node dist/cli.js",
|
|
17
|
+
"postinstall": "node dist/scripts/postinstall.js || true",
|
|
18
|
+
"prepublishOnly": "npm run build"
|
|
19
|
+
},
|
|
20
|
+
"files": [
|
|
21
|
+
"dist/",
|
|
22
|
+
"README.md"
|
|
23
|
+
],
|
|
24
|
+
"publishConfig": {
|
|
25
|
+
"access": "public"
|
|
26
|
+
},
|
|
27
|
+
"keywords": [
|
|
28
|
+
"cli",
|
|
29
|
+
"ai",
|
|
30
|
+
"coding-assistant",
|
|
31
|
+
"sylix"
|
|
32
|
+
],
|
|
33
|
+
"author": "Sylix",
|
|
34
|
+
"license": "MIT",
|
|
35
|
+
"dependencies": {
|
|
36
|
+
"axios": "^1.6.0",
|
|
37
|
+
"chalk": "^4.1.2",
|
|
38
|
+
"commander": "^11.1.0",
|
|
39
|
+
"dotenv": "^16.3.1",
|
|
40
|
+
"fs-extra": "^11.2.0",
|
|
41
|
+
"highlight.js": "^11.9.0",
|
|
42
|
+
"open": "^10.1.0",
|
|
43
|
+
"ora": "^5.4.1",
|
|
44
|
+
"playwright": "^1.58.2",
|
|
45
|
+
"prompts": "^2.4.2"
|
|
46
|
+
},
|
|
47
|
+
"devDependencies": {
|
|
48
|
+
"@types/fs-extra": "^11.0.4",
|
|
49
|
+
"@types/node": "^20.10.0",
|
|
50
|
+
"@types/prompts": "^2.4.9",
|
|
51
|
+
"ts-node": "^10.9.2",
|
|
52
|
+
"typescript": "^5.3.2"
|
|
53
|
+
}
|
|
54
|
+
}
|