@sylix/coworker 2.0.4 → 2.0.8
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 +41 -13
- package/dist/agents/SubagentLoader.d.ts.map +1 -1
- package/dist/agents/SubagentLoader.js +1 -2
- package/dist/agents/SubagentLoader.js.map +1 -1
- package/dist/agents/defaults/explore.md +24 -0
- package/dist/agents/defaults/plan.md +25 -0
- package/dist/agents/defaults/review.md +40 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +19 -16
- package/dist/cli/index.js.map +1 -1
- package/dist/commands/slash/core.d.ts.map +1 -1
- package/dist/commands/slash/core.js +40 -2
- package/dist/commands/slash/core.js.map +1 -1
- package/dist/commands/slash/developer.js +1 -1
- package/dist/commands/slash/developer.js.map +1 -1
- package/dist/commands/slash/plugins.d.ts +3 -0
- package/dist/commands/slash/plugins.d.ts.map +1 -0
- package/dist/commands/slash/plugins.js +139 -0
- package/dist/commands/slash/plugins.js.map +1 -0
- package/dist/commands/slash/registry.d.ts.map +1 -1
- package/dist/commands/slash/registry.js +2 -0
- package/dist/commands/slash/registry.js.map +1 -1
- package/dist/commands/slash/todo.d.ts +3 -0
- package/dist/commands/slash/todo.d.ts.map +1 -0
- package/dist/commands/slash/todo.js +281 -0
- package/dist/commands/slash/todo.js.map +1 -0
- package/dist/config/SettingsManager.d.ts +3 -0
- package/dist/config/SettingsManager.d.ts.map +1 -1
- package/dist/config/SettingsManager.js +14 -1
- package/dist/config/SettingsManager.js.map +1 -1
- package/dist/core/CoWorkerAgent.d.ts +15 -5
- package/dist/core/CoWorkerAgent.d.ts.map +1 -1
- package/dist/core/CoWorkerAgent.js +238 -36
- package/dist/core/CoWorkerAgent.js.map +1 -1
- package/dist/plugins/PluginManager.d.ts +66 -0
- package/dist/plugins/PluginManager.d.ts.map +1 -0
- package/dist/plugins/PluginManager.js +254 -0
- package/dist/plugins/PluginManager.js.map +1 -0
- package/dist/services/browser/browser-manager.d.ts +1 -0
- package/dist/services/browser/browser-manager.d.ts.map +1 -1
- package/dist/services/browser/browser-manager.js +44 -0
- package/dist/services/browser/browser-manager.js.map +1 -1
- package/dist/services/browser/protocol.d.ts +4 -4
- package/dist/services/browser/sandbox/quickjs-sandbox.d.ts.map +1 -1
- package/dist/services/browser/sandbox/quickjs-sandbox.js +33 -2
- package/dist/services/browser/sandbox/quickjs-sandbox.js.map +1 -1
- package/dist/session/SessionManager.d.ts +1 -1
- package/dist/session/SessionManager.d.ts.map +1 -1
- package/dist/session/db.d.ts +1 -1
- package/dist/session/db.d.ts.map +1 -1
- package/dist/session/db.js +2 -1
- package/dist/session/db.js.map +1 -1
- package/dist/snapshot/SnapshotManager.d.ts.map +1 -1
- package/dist/snapshot/SnapshotManager.js +4 -5
- package/dist/snapshot/SnapshotManager.js.map +1 -1
- package/dist/todos/TodoManager.d.ts +42 -14
- package/dist/todos/TodoManager.d.ts.map +1 -1
- package/dist/todos/TodoManager.js +231 -46
- package/dist/todos/TodoManager.js.map +1 -1
- package/dist/tools/CronManager.d.ts +33 -13
- package/dist/tools/CronManager.d.ts.map +1 -1
- package/dist/tools/CronManager.js +197 -17
- package/dist/tools/CronManager.js.map +1 -1
- package/dist/tools/NativeTools.d.ts +40 -16
- package/dist/tools/NativeTools.d.ts.map +1 -1
- package/dist/tools/NativeTools.js +196 -104
- package/dist/tools/NativeTools.js.map +1 -1
- package/dist/tools/Schemas.d.ts +568 -1
- package/dist/tools/Schemas.d.ts.map +1 -1
- package/dist/tools/Schemas.js +148 -6
- package/dist/tools/Schemas.js.map +1 -1
- package/dist/utils/PromptCache.d.ts +27 -0
- package/dist/utils/PromptCache.d.ts.map +1 -0
- package/dist/utils/PromptCache.js +113 -0
- package/dist/utils/PromptCache.js.map +1 -0
- package/dist/utils/character.d.ts +1 -0
- package/dist/utils/character.d.ts.map +1 -1
- package/dist/utils/character.js +37 -22
- package/dist/utils/character.js.map +1 -1
- package/dist/utils/clipboard.d.ts +5 -0
- package/dist/utils/clipboard.d.ts.map +1 -0
- package/dist/utils/clipboard.js +139 -0
- package/dist/utils/clipboard.js.map +1 -0
- package/dist/utils/inputbar.d.ts +12 -8
- package/dist/utils/inputbar.d.ts.map +1 -1
- package/dist/utils/inputbar.js +151 -64
- package/dist/utils/inputbar.js.map +1 -1
- package/dist/utils/output.d.ts +2 -2
- package/dist/utils/output.js +3 -3
- package/dist/utils/systemPrompt.d.ts +2 -1
- package/dist/utils/systemPrompt.d.ts.map +1 -1
- package/dist/utils/systemPrompt.js +108 -7
- package/dist/utils/systemPrompt.js.map +1 -1
- package/dist/utils/welcome.d.ts.map +1 -1
- package/dist/utils/welcome.js +17 -14
- package/dist/utils/welcome.js.map +1 -1
- package/package.json +4 -3
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.getPlatform = getPlatform;
|
|
37
|
+
exports.readClipboardImage = readClipboardImage;
|
|
38
|
+
exports.clipboardHasImage = clipboardHasImage;
|
|
39
|
+
const child_process_1 = require("child_process");
|
|
40
|
+
const fs = __importStar(require("fs"));
|
|
41
|
+
const path = __importStar(require("path"));
|
|
42
|
+
function getPlatform() {
|
|
43
|
+
if (process.platform === 'darwin')
|
|
44
|
+
return 'macos';
|
|
45
|
+
if (process.platform === 'win32')
|
|
46
|
+
return 'windows';
|
|
47
|
+
return 'linux';
|
|
48
|
+
}
|
|
49
|
+
async function readClipboardImage() {
|
|
50
|
+
const platform = getPlatform();
|
|
51
|
+
try {
|
|
52
|
+
switch (platform) {
|
|
53
|
+
case 'macos':
|
|
54
|
+
return await getMacClipboardImage();
|
|
55
|
+
case 'windows':
|
|
56
|
+
return await getWindowsClipboardImage();
|
|
57
|
+
case 'linux':
|
|
58
|
+
return await getLinuxClipboardImage();
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
catch (error) {
|
|
62
|
+
return null;
|
|
63
|
+
}
|
|
64
|
+
return null;
|
|
65
|
+
}
|
|
66
|
+
async function getMacClipboardImage() {
|
|
67
|
+
const script = `
|
|
68
|
+
set theData to the clipboard as «class PNGf»
|
|
69
|
+
return base64 encode (get theData)
|
|
70
|
+
`;
|
|
71
|
+
try {
|
|
72
|
+
const result = (0, child_process_1.execSync)(`osascript -e '${script}'`, { encoding: 'utf8' });
|
|
73
|
+
if (result && result.trim()) {
|
|
74
|
+
return result.trim();
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
catch {
|
|
78
|
+
return null;
|
|
79
|
+
}
|
|
80
|
+
const tiffScript = `
|
|
81
|
+
set theData to the clipboard as «class TIFF»
|
|
82
|
+
return base64 encode (get theData)
|
|
83
|
+
`;
|
|
84
|
+
try {
|
|
85
|
+
const result = (0, child_process_1.execSync)(`osascript -e '${tiffScript}'`, { encoding: 'utf8' });
|
|
86
|
+
if (result && result.trim()) {
|
|
87
|
+
return result.trim();
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
catch {
|
|
91
|
+
return null;
|
|
92
|
+
}
|
|
93
|
+
return null;
|
|
94
|
+
}
|
|
95
|
+
async function getWindowsClipboardImage() {
|
|
96
|
+
const tempDir = process.env.TEMP || process.env.TMP || '/tmp';
|
|
97
|
+
const tempFile = path.join(tempDir, `clipboard_${Date.now()}.png`);
|
|
98
|
+
const psScript = `
|
|
99
|
+
Add-Type -AssemblyName System.Windows.Forms
|
|
100
|
+
Add-Type -AssemblyName System.Drawing
|
|
101
|
+
$img = [System.Windows.Forms.Clipboard]::GetImage()
|
|
102
|
+
if ($img -ne $null) {
|
|
103
|
+
$img.Save('${tempFile.replace(/\\/g, '\\\\')}', [System.Drawing.Imaging.ImageFormat]::Png)
|
|
104
|
+
Write-Output 'success'
|
|
105
|
+
}
|
|
106
|
+
`;
|
|
107
|
+
try {
|
|
108
|
+
const result = (0, child_process_1.execSync)(`powershell -Command "${psScript}"`, { encoding: 'utf8' });
|
|
109
|
+
if (result.includes('success') && fs.existsSync(tempFile)) {
|
|
110
|
+
const base64 = fs.readFileSync(tempFile).toString('base64');
|
|
111
|
+
fs.unlinkSync(tempFile);
|
|
112
|
+
return base64;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
catch {
|
|
116
|
+
if (fs.existsSync(tempFile)) {
|
|
117
|
+
fs.unlinkSync(tempFile);
|
|
118
|
+
}
|
|
119
|
+
return null;
|
|
120
|
+
}
|
|
121
|
+
return null;
|
|
122
|
+
}
|
|
123
|
+
async function getLinuxClipboardImage() {
|
|
124
|
+
try {
|
|
125
|
+
const result = (0, child_process_1.execSync)('wl-paste -t image/png 2>/dev/null || xclip -selection clipboard -t image/png -o 2>/dev/null || echo ""', { encoding: 'utf8' });
|
|
126
|
+
if (result && result.trim()) {
|
|
127
|
+
return Buffer.from(result.trim(), 'base64').toString('base64');
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
catch {
|
|
131
|
+
return null;
|
|
132
|
+
}
|
|
133
|
+
return null;
|
|
134
|
+
}
|
|
135
|
+
async function clipboardHasImage() {
|
|
136
|
+
const image = await readClipboardImage();
|
|
137
|
+
return image !== null;
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=clipboard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clipboard.js","sourceRoot":"","sources":["../../src/utils/clipboard.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/inputbar.d.ts
CHANGED
|
@@ -1,20 +1,24 @@
|
|
|
1
1
|
import { AgentMode } from '../types/modes';
|
|
2
|
-
/**
|
|
3
|
-
* Premium Input Bar Manager — v2.0.5
|
|
4
|
-
* Handles the boxed input area and Mode Cycling (BUILD, PLAN, RESEARCH, ASK).
|
|
5
|
-
*/
|
|
6
2
|
export declare function drawTopBorder(): void;
|
|
7
3
|
export declare function drawBottomBorder(): void;
|
|
8
|
-
export declare function
|
|
4
|
+
export declare function getPromptString(): string;
|
|
5
|
+
export declare function drawStatusLine(mode: AgentMode | string, contextPct?: number, contextLabel?: string, extraHint?: string): void;
|
|
6
|
+
export interface UserInput {
|
|
7
|
+
text: string;
|
|
8
|
+
images: string[];
|
|
9
|
+
}
|
|
9
10
|
export declare class InputBarManager {
|
|
10
11
|
private mode;
|
|
12
|
+
private contextPct;
|
|
13
|
+
private pendingImages;
|
|
14
|
+
private showTasks;
|
|
11
15
|
constructor();
|
|
12
16
|
getMode(): AgentMode;
|
|
13
|
-
|
|
17
|
+
setContextPct(pct: number): void;
|
|
14
18
|
destroy(): void;
|
|
15
|
-
/** Lifecycle: Reset internal state */
|
|
16
19
|
reset(): void;
|
|
17
20
|
private cycleMode;
|
|
18
|
-
|
|
21
|
+
private toggleTasks;
|
|
22
|
+
ask(history: string[], contextLabel?: string): Promise<UserInput>;
|
|
19
23
|
}
|
|
20
24
|
//# sourceMappingURL=inputbar.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inputbar.d.ts","sourceRoot":"","sources":["../../src/utils/inputbar.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"inputbar.d.ts","sourceRoot":"","sources":["../../src/utils/inputbar.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAU3C,wBAAgB,aAAa,IAAI,IAAI,CAGpC;AAED,wBAAgB,gBAAgB,IAAI,IAAI,CAGvC;AAED,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,wBAAgB,cAAc,CAC5B,IAAI,EAAE,SAAS,GAAG,MAAM,EACxB,UAAU,GAAE,MAAU,EACtB,YAAY,CAAC,EAAE,MAAM,EACrB,SAAS,CAAC,EAAE,MAAM,GACjB,IAAI,CA+CN;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,IAAI,CAA8B;IAC1C,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,SAAS,CAAkB;;IAQnC,OAAO,IAAI,SAAS;IACpB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAEhC,OAAO,IAAI,IAAI;IAGf,KAAK,IAAI,IAAI;IAMb,OAAO,CAAC,SAAS;YAMH,WAAW;IAkDnB,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;CA4DxE"}
|
package/dist/utils/inputbar.js
CHANGED
|
@@ -36,105 +36,192 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
36
36
|
exports.InputBarManager = void 0;
|
|
37
37
|
exports.drawTopBorder = drawTopBorder;
|
|
38
38
|
exports.drawBottomBorder = drawBottomBorder;
|
|
39
|
+
exports.getPromptString = getPromptString;
|
|
39
40
|
exports.drawStatusLine = drawStatusLine;
|
|
40
41
|
const readline = __importStar(require("readline"));
|
|
41
|
-
const
|
|
42
|
+
const chalk = __importStar(require("chalk"));
|
|
42
43
|
const modes_1 = require("../types/modes");
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
44
|
+
const clipboard_1 = require("./clipboard");
|
|
45
|
+
const TodoManager_1 = require("../todos/TodoManager");
|
|
46
|
+
const BORDER_COLOR = '#374151';
|
|
47
|
+
const BRAND_COLOR = '#00D4FF';
|
|
48
|
+
const DIM_COLOR = '#4B5563';
|
|
49
|
+
const WARNING_COLOR = '#F59E0B';
|
|
50
|
+
const DANGER_COLOR = '#EF4444';
|
|
47
51
|
function drawTopBorder() {
|
|
48
|
-
const
|
|
49
|
-
|
|
52
|
+
const cols = process.stdout.columns || 80;
|
|
53
|
+
process.stdout.write(chalk.hex(BORDER_COLOR)('─'.repeat(cols)) + '\n');
|
|
50
54
|
}
|
|
51
55
|
function drawBottomBorder() {
|
|
52
|
-
const
|
|
53
|
-
|
|
56
|
+
const cols = process.stdout.columns || 80;
|
|
57
|
+
process.stdout.write(chalk.hex(BORDER_COLOR)('─'.repeat(cols)) + '\n');
|
|
54
58
|
}
|
|
55
|
-
function
|
|
56
|
-
|
|
57
|
-
|
|
59
|
+
function getPromptString() {
|
|
60
|
+
return chalk.hex(BRAND_COLOR)(' ◆ ');
|
|
61
|
+
}
|
|
62
|
+
function drawStatusLine(mode, contextPct = 0, contextLabel, extraHint) {
|
|
63
|
+
const width = process.stdout.columns || 80;
|
|
64
|
+
const msgs = {
|
|
65
|
+
ready: '? /help · Ctrl+C to exit',
|
|
66
|
+
thinking: '◆ thinking...',
|
|
67
|
+
receiving: '◆ responding...',
|
|
68
|
+
slash: '↑↓ navigate · Enter · Esc cancel',
|
|
69
|
+
};
|
|
70
|
+
let status = 'ready';
|
|
71
|
+
if (typeof mode === 'string') {
|
|
72
|
+
if (mode === 'thinking')
|
|
73
|
+
status = 'thinking';
|
|
74
|
+
else if (mode === 'receiving')
|
|
75
|
+
status = 'receiving';
|
|
76
|
+
else if (mode === 'slash')
|
|
77
|
+
status = 'slash';
|
|
78
|
+
}
|
|
79
|
+
const msg = msgs[status] || msgs.ready;
|
|
58
80
|
let modeLabel = '';
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
81
|
+
const modeStr = typeof mode === 'string' && Object.values(modes_1.AgentMode).includes(mode)
|
|
82
|
+
? mode
|
|
83
|
+
: typeof mode === 'string' ? 'BUILD' : mode;
|
|
84
|
+
if (modeStr === modes_1.AgentMode.PLAN) {
|
|
85
|
+
modeLabel = chalk.hex(WARNING_COLOR)('· PLAN ');
|
|
64
86
|
}
|
|
65
|
-
else {
|
|
66
|
-
|
|
67
|
-
modeLabel = ` [${activeMode} MODE] `;
|
|
68
|
-
modeColor = getModeColor(activeMode);
|
|
87
|
+
else if (modeStr === modes_1.AgentMode.RESEARCH) {
|
|
88
|
+
modeLabel = chalk.hex(BRAND_COLOR)('· RESEARCH ');
|
|
69
89
|
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
const leftPart = ' ';
|
|
73
|
-
const padding = width - visLen(leftPart) - visLen(rightPart) - 8;
|
|
74
|
-
process.stdout.write('\r' + leftPart + output_1.theme.dim('│') + ' '.repeat(Math.max(0, padding)) + rightPart + output_1.theme.dim('│') + '\n');
|
|
75
|
-
}
|
|
76
|
-
function getModeColor(mode) {
|
|
77
|
-
switch (mode) {
|
|
78
|
-
case modes_1.AgentMode.BUILD: return output_1.theme.success;
|
|
79
|
-
case modes_1.AgentMode.PLAN: return output_1.theme.warning;
|
|
80
|
-
case modes_1.AgentMode.RESEARCH: return output_1.theme.brand;
|
|
81
|
-
case modes_1.AgentMode.ASK: return output_1.theme.purple;
|
|
82
|
-
default: return output_1.theme.dim;
|
|
90
|
+
else if (modeStr === modes_1.AgentMode.ASK) {
|
|
91
|
+
modeLabel = chalk.hex('#A78BFA')('· ASK ');
|
|
83
92
|
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
93
|
+
let ctxColor = chalk.hex(DIM_COLOR);
|
|
94
|
+
if (contextPct >= 80) {
|
|
95
|
+
ctxColor = chalk.hex(DANGER_COLOR);
|
|
96
|
+
contextPct = contextPct + Math.floor(Math.random() * 5);
|
|
97
|
+
}
|
|
98
|
+
else if (contextPct >= 60) {
|
|
99
|
+
ctxColor = chalk.hex(WARNING_COLOR);
|
|
100
|
+
}
|
|
101
|
+
const ctxStr = contextPct > 0
|
|
102
|
+
? (contextPct >= 80 ? ' ⚠' : ' ') + contextPct + '% ctx'
|
|
103
|
+
: '';
|
|
104
|
+
const line = ' ' + msg + ' · ' + modeLabel + ctxColor(ctxStr) + (extraHint || '');
|
|
105
|
+
process.stdout.write(line + '\n');
|
|
87
106
|
}
|
|
88
107
|
class InputBarManager {
|
|
89
108
|
constructor() {
|
|
90
109
|
this.mode = modes_1.AgentMode.BUILD;
|
|
110
|
+
this.contextPct = 0;
|
|
111
|
+
this.pendingImages = [];
|
|
112
|
+
this.showTasks = false;
|
|
91
113
|
if (process.stdin.isTTY) {
|
|
92
|
-
process.stdin.setRawMode(true);
|
|
93
114
|
readline.emitKeypressEvents(process.stdin);
|
|
94
115
|
}
|
|
95
116
|
}
|
|
96
117
|
getMode() { return this.mode; }
|
|
97
|
-
|
|
118
|
+
setContextPct(pct) { this.contextPct = pct; }
|
|
98
119
|
destroy() {
|
|
99
|
-
if (process.stdin.isTTY) {
|
|
100
|
-
process.stdin.setRawMode(false);
|
|
101
|
-
}
|
|
102
120
|
}
|
|
103
|
-
/** Lifecycle: Reset internal state */
|
|
104
121
|
reset() {
|
|
105
122
|
this.mode = modes_1.AgentMode.BUILD;
|
|
123
|
+
this.contextPct = 0;
|
|
124
|
+
this.pendingImages = [];
|
|
106
125
|
}
|
|
107
126
|
cycleMode() {
|
|
108
127
|
const modes = Object.values(modes_1.AgentMode);
|
|
109
128
|
const nextIdx = (modes.indexOf(this.mode) + 1) % modes.length;
|
|
110
129
|
this.mode = modes[nextIdx];
|
|
111
130
|
}
|
|
131
|
+
async toggleTasks() {
|
|
132
|
+
this.showTasks = !this.showTasks;
|
|
133
|
+
process.stdout.write('\r\x1b[K');
|
|
134
|
+
if (this.showTasks) {
|
|
135
|
+
try {
|
|
136
|
+
const taskListId = TodoManager_1.TodoManager.getTaskListIdFromEnv();
|
|
137
|
+
const todoManager = new TodoManager_1.TodoManager(taskListId);
|
|
138
|
+
const tasks = await todoManager.getTasks();
|
|
139
|
+
const brand = chalk.hex('#00D4FF');
|
|
140
|
+
process.stdout.write('\n');
|
|
141
|
+
process.stdout.write(brand(' ╭─────────────────────────────────────────╮\n'));
|
|
142
|
+
process.stdout.write(brand(' │ ') + chalk.white('TASK LIST') + brand('').padEnd(36, ' ') + '│\n');
|
|
143
|
+
process.stdout.write(brand(' ├─────────────────────────────────────────┤\n'));
|
|
144
|
+
if (tasks.length === 0) {
|
|
145
|
+
process.stdout.write(brand(' │ ') + chalk.dim('No tasks') + brand('').padEnd(30, ' ') + '│\n');
|
|
146
|
+
}
|
|
147
|
+
else {
|
|
148
|
+
for (const task of tasks.slice(0, 10)) {
|
|
149
|
+
const statusSymbol = {
|
|
150
|
+
pending: '□',
|
|
151
|
+
in_progress: '→',
|
|
152
|
+
completed: '✓'
|
|
153
|
+
}[task.status];
|
|
154
|
+
const statusColor = {
|
|
155
|
+
pending: chalk.dim,
|
|
156
|
+
in_progress: chalk.yellow,
|
|
157
|
+
completed: chalk.green
|
|
158
|
+
}[task.status];
|
|
159
|
+
const line = ` ${statusColor(statusSymbol)} ${task.subject.substring(0, 30)}`;
|
|
160
|
+
const padding = 42 - line.length;
|
|
161
|
+
process.stdout.write(brand(' │') + line + brand('').padEnd(padding, ' ') + '│\n');
|
|
162
|
+
}
|
|
163
|
+
const summary = (0, TodoManager_1.formatTaskListSummary)(tasks);
|
|
164
|
+
process.stdout.write(brand(' ├─────────────────────────────────────────┤\n'));
|
|
165
|
+
process.stdout.write(brand(' │ ') + chalk.dim(summary) + brand('').padEnd(42 - summary.length, ' ') + '│\n');
|
|
166
|
+
}
|
|
167
|
+
process.stdout.write(brand(' ╰─────────────────────────────────────────╯\n'));
|
|
168
|
+
}
|
|
169
|
+
catch (e) {
|
|
170
|
+
process.stdout.write(chalk.red(`Error loading tasks: ${e.message}\n`));
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
}
|
|
112
174
|
async ask(history, contextLabel) {
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
process.stdout.write(
|
|
175
|
+
return new Promise(async (resolve) => {
|
|
176
|
+
const rl = readline.createInterface({
|
|
177
|
+
input: process.stdin,
|
|
178
|
+
output: process.stdout,
|
|
179
|
+
terminal: true,
|
|
180
|
+
history: history,
|
|
181
|
+
prompt: getPromptString()
|
|
182
|
+
});
|
|
183
|
+
const statusHint = chalk.dim(' · Ctrl+T tasks');
|
|
184
|
+
drawStatusLine(this.mode, this.contextPct, contextLabel, statusHint);
|
|
185
|
+
rl.prompt();
|
|
186
|
+
const checkClipboard = async () => {
|
|
187
|
+
const imageBase64 = await (0, clipboard_1.readClipboardImage)();
|
|
188
|
+
if (imageBase64 && !this.pendingImages.includes(imageBase64)) {
|
|
189
|
+
this.pendingImages.push(imageBase64);
|
|
190
|
+
process.stdout.write('\r\n');
|
|
191
|
+
process.stdout.write(chalk.green(` [Image ${this.pendingImages.length}] pasted from clipboard\n`));
|
|
192
|
+
drawStatusLine(this.mode, this.contextPct, contextLabel, statusHint);
|
|
193
|
+
rl.prompt();
|
|
194
|
+
process.stdout.write(getPromptString() + rl.line);
|
|
130
195
|
}
|
|
131
196
|
};
|
|
132
|
-
process.stdin.on('keypress',
|
|
133
|
-
|
|
197
|
+
process.stdin.on('keypress', async (str, key) => {
|
|
198
|
+
if (key && key.name === 'tab') {
|
|
199
|
+
this.cycleMode();
|
|
200
|
+
const line = rl.line || '';
|
|
201
|
+
process.stdout.write('\r\n');
|
|
202
|
+
drawStatusLine(this.mode, this.contextPct, contextLabel, statusHint);
|
|
203
|
+
rl.prompt();
|
|
204
|
+
process.stdout.write(getPromptString() + line);
|
|
205
|
+
}
|
|
206
|
+
if (key && (key.ctrl || key.meta) && key.name === 'v') {
|
|
207
|
+
await checkClipboard();
|
|
208
|
+
}
|
|
209
|
+
if (key && (key.ctrl || key.meta) && key.name === 't') {
|
|
210
|
+
process.stdin.removeAllListeners('keypress');
|
|
211
|
+
rl.close();
|
|
212
|
+
const text = rl.line?.trim() || '';
|
|
213
|
+
const images = [...this.pendingImages];
|
|
214
|
+
this.pendingImages = [];
|
|
215
|
+
resolve({ text, images });
|
|
216
|
+
}
|
|
217
|
+
});
|
|
134
218
|
rl.on('line', (line) => {
|
|
135
|
-
process.stdin.
|
|
219
|
+
process.stdin.removeAllListeners('keypress');
|
|
136
220
|
rl.close();
|
|
137
|
-
|
|
221
|
+
const text = line.trim();
|
|
222
|
+
const images = [...this.pendingImages];
|
|
223
|
+
this.pendingImages = [];
|
|
224
|
+
resolve({ text, images });
|
|
138
225
|
});
|
|
139
226
|
});
|
|
140
227
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inputbar.js","sourceRoot":"","sources":["../../src/utils/inputbar.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"inputbar.js","sourceRoot":"","sources":["../../src/utils/inputbar.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/output.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* ═══════════════════════════════════════════════════════════════════
|
|
3
|
-
* CoWorker v2.0.
|
|
3
|
+
* CoWorker v2.0.7 by Sylix — Premium Output System
|
|
4
4
|
* ═══════════════════════════════════════════════════════════════════
|
|
5
5
|
*/
|
|
6
|
-
export declare const CW_VERSION = "2.0.
|
|
6
|
+
export declare const CW_VERSION = "2.0.7";
|
|
7
7
|
export declare const BRAND_SYMBOL = "\u25C6";
|
|
8
8
|
export declare const PROMPT_PREFIX = " you ";
|
|
9
9
|
export declare const theme: {
|
package/dist/utils/output.js
CHANGED
|
@@ -56,10 +56,10 @@ exports.renderMarkdown = renderMarkdown;
|
|
|
56
56
|
const chalk = __importStar(require("chalk"));
|
|
57
57
|
/**
|
|
58
58
|
* ═══════════════════════════════════════════════════════════════════
|
|
59
|
-
* CoWorker v2.0.
|
|
59
|
+
* CoWorker v2.0.7 by Sylix — Premium Output System
|
|
60
60
|
* ═══════════════════════════════════════════════════════════════════
|
|
61
61
|
*/
|
|
62
|
-
exports.CW_VERSION = '2.0.
|
|
62
|
+
exports.CW_VERSION = '2.0.7';
|
|
63
63
|
exports.BRAND_SYMBOL = '◆';
|
|
64
64
|
exports.PROMPT_PREFIX = ' you ';
|
|
65
65
|
const NO_COLOR = !!process.env.NO_COLOR;
|
|
@@ -281,7 +281,7 @@ class StreamRenderer {
|
|
|
281
281
|
const tokenEst = Math.ceil(this.charCount / 4);
|
|
282
282
|
console.log('');
|
|
283
283
|
const tokStr = tokenEst < 50 ? '' : ` · ${tokenEst} tok`;
|
|
284
|
-
console.log(exports.theme.border(` ╵`) + exports.theme.dim(`
|
|
284
|
+
console.log(exports.theme.border(` ╵`) + exports.theme.dim(` ✦ ${elapsedStr}${tokStr} · ${this.model}`));
|
|
285
285
|
console.log('');
|
|
286
286
|
}
|
|
287
287
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export declare function resetPromptCache(): Promise<void>;
|
|
2
|
-
export declare function
|
|
2
|
+
export declare function isGreeting(message: string): boolean;
|
|
3
|
+
export declare function getSystemPrompt(cwd: string, message?: string): Promise<string>;
|
|
3
4
|
//# sourceMappingURL=systemPrompt.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"systemPrompt.d.ts","sourceRoot":"","sources":["../../src/utils/systemPrompt.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"systemPrompt.d.ts","sourceRoot":"","sources":["../../src/utils/systemPrompt.ts"],"names":[],"mappings":"AAkLA,wBAAsB,gBAAgB,kBAKrC;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAGnD;AAED,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAqBpF"}
|