helixmind 0.2.28 → 0.2.30
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.
Potentially problematic release.
This version of helixmind might be problematic. Click here for more details.
- package/dist/cli/brain/control-protocol.d.ts +118 -1
- package/dist/cli/brain/control-protocol.d.ts.map +1 -1
- package/dist/cli/brain/control-protocol.js +21 -0
- package/dist/cli/brain/control-protocol.js.map +1 -1
- package/dist/cli/brain/generator.d.ts +7 -1
- package/dist/cli/brain/generator.d.ts.map +1 -1
- package/dist/cli/brain/generator.js +31 -0
- package/dist/cli/brain/generator.js.map +1 -1
- package/dist/cli/brain/server.d.ts.map +1 -1
- package/dist/cli/brain/server.js +36 -0
- package/dist/cli/brain/server.js.map +1 -1
- package/dist/cli/brain/template.d.ts.map +1 -1
- package/dist/cli/brain/template.js +98 -285
- package/dist/cli/brain/template.js.map +1 -1
- package/dist/cli/commands/chat.d.ts.map +1 -1
- package/dist/cli/commands/chat.js +315 -5
- package/dist/cli/commands/chat.js.map +1 -1
- package/dist/cli/jarvis/daemon.d.ts +14 -0
- package/dist/cli/jarvis/daemon.d.ts.map +1 -0
- package/dist/cli/jarvis/daemon.js +170 -0
- package/dist/cli/jarvis/daemon.js.map +1 -0
- package/dist/cli/jarvis/index.d.ts +5 -0
- package/dist/cli/jarvis/index.d.ts.map +1 -0
- package/dist/cli/jarvis/index.js +3 -0
- package/dist/cli/jarvis/index.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { JarvisQueue } from './queue.js';
|
|
2
|
+
import type { JarvisTask } from './types.js';
|
|
3
|
+
export interface JarvisDaemonCallbacks {
|
|
4
|
+
sendMessage: (prompt: string) => Promise<string>;
|
|
5
|
+
isAborted: () => boolean;
|
|
6
|
+
isPaused: () => boolean;
|
|
7
|
+
onTaskStart: (task: JarvisTask) => void;
|
|
8
|
+
onTaskComplete: (task: JarvisTask, result: string) => void;
|
|
9
|
+
onTaskFailed: (task: JarvisTask, error: string) => void;
|
|
10
|
+
updateStatus: () => void;
|
|
11
|
+
storeInSpiral?: (content: string, type: string, tags: string[]) => Promise<void>;
|
|
12
|
+
}
|
|
13
|
+
export declare function runJarvisDaemon(queue: JarvisQueue, callbacks: JarvisDaemonCallbacks): Promise<number>;
|
|
14
|
+
//# sourceMappingURL=daemon.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../../../src/cli/jarvis/daemon.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,SAAS,EAAE,MAAM,OAAO,CAAC;IACzB,QAAQ,EAAE,MAAM,OAAO,CAAC;IACxB,WAAW,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,CAAC;IACxC,cAAc,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D,YAAY,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxD,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAClF;AAkDD,wBAAsB,eAAe,CACnC,KAAK,EAAE,WAAW,EAClB,SAAS,EAAE,qBAAqB,GAC/B,OAAO,CAAC,MAAM,CAAC,CAwIjB"}
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Jarvis Daemon — persistent autonomous task executor.
|
|
3
|
+
* Picks tasks from the queue and executes them one by one using the agent loop.
|
|
4
|
+
*/
|
|
5
|
+
import chalk from 'chalk';
|
|
6
|
+
import { renderInfo } from '../ui/chat-view.js';
|
|
7
|
+
function buildTaskPrompt(task) {
|
|
8
|
+
return `You are JARVIS — HelixMind's autonomous task executor.
|
|
9
|
+
|
|
10
|
+
TASK #${task.id}: ${task.title}
|
|
11
|
+
${task.description}
|
|
12
|
+
|
|
13
|
+
RULES:
|
|
14
|
+
- Focus exclusively on this task
|
|
15
|
+
- Work methodically — break into subtasks if needed
|
|
16
|
+
- Use all available tools (read_file, write_file, edit_file, run_command, git_status, etc.)
|
|
17
|
+
- End with a single-line summary starting with "DONE:" describing what you accomplished
|
|
18
|
+
- If you cannot complete the task, explain why and respond with: TASK_FAILED: <reason>`;
|
|
19
|
+
}
|
|
20
|
+
function buildRetryPrompt(task) {
|
|
21
|
+
return `You are JARVIS. Retrying TASK #${task.id}: ${task.title}
|
|
22
|
+
|
|
23
|
+
Previous attempt failed with: ${task.error || 'unknown error'}
|
|
24
|
+
|
|
25
|
+
Analyze the failure, try a different approach, and complete the task.
|
|
26
|
+
End with "DONE:" or "TASK_FAILED:" as appropriate.`;
|
|
27
|
+
}
|
|
28
|
+
function extractResult(text) {
|
|
29
|
+
// Check for failure marker
|
|
30
|
+
const failMatch = text.match(/TASK_FAILED:\s*(.+)/i);
|
|
31
|
+
if (failMatch) {
|
|
32
|
+
const reason = failMatch[1].trim();
|
|
33
|
+
return { success: false, summary: reason.length > 200 ? reason.slice(0, 197) + '...' : reason };
|
|
34
|
+
}
|
|
35
|
+
// Check for success marker
|
|
36
|
+
const doneMatch = text.match(/DONE:\s*(.+)/i);
|
|
37
|
+
if (doneMatch) {
|
|
38
|
+
const s = doneMatch[1].trim();
|
|
39
|
+
return { success: true, summary: s.length > 200 ? s.slice(0, 197) + '...' : s };
|
|
40
|
+
}
|
|
41
|
+
// Fallback: last non-empty line — treat as success
|
|
42
|
+
const lines = text.trim().split('\n').filter(l => l.trim());
|
|
43
|
+
const last = lines[lines.length - 1]?.trim() || text.slice(0, 100);
|
|
44
|
+
return { success: true, summary: last.length > 200 ? last.slice(0, 197) + '...' : last };
|
|
45
|
+
}
|
|
46
|
+
function sleep(ms) {
|
|
47
|
+
return new Promise(resolve => setTimeout(resolve, ms));
|
|
48
|
+
}
|
|
49
|
+
export async function runJarvisDaemon(queue, callbacks) {
|
|
50
|
+
let completedCount = 0;
|
|
51
|
+
let emptyChecks = 0;
|
|
52
|
+
const d = chalk.dim;
|
|
53
|
+
const j = chalk.hex('#ff00ff');
|
|
54
|
+
process.stdout.write('\n');
|
|
55
|
+
process.stdout.write(d('\u256D\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256E') + '\n');
|
|
56
|
+
process.stdout.write(d('\u2502 ') + j('\u{1F916} JARVIS MODE') + d(' \u2502') + '\n');
|
|
57
|
+
process.stdout.write(d('\u2502') + d(' \u2502') + '\n');
|
|
58
|
+
process.stdout.write(d('\u2502 ') + 'Persistent task queue — executing tasks' + d(' \u2502') + '\n');
|
|
59
|
+
process.stdout.write(d('\u2502 ') + 'autonomously from .helixmind/jarvis/' + d(' \u2502') + '\n');
|
|
60
|
+
process.stdout.write(d('\u2502') + d(' \u2502') + '\n');
|
|
61
|
+
process.stdout.write(d('\u2502 ') + d('/jarvis stop or ESC to stop') + d(' \u2502') + '\n');
|
|
62
|
+
process.stdout.write(d('\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256F') + '\n\n');
|
|
63
|
+
queue.setDaemonState('running');
|
|
64
|
+
callbacks.updateStatus();
|
|
65
|
+
while (!callbacks.isAborted()) {
|
|
66
|
+
// Handle pause
|
|
67
|
+
if (callbacks.isPaused()) {
|
|
68
|
+
await sleep(2000);
|
|
69
|
+
continue;
|
|
70
|
+
}
|
|
71
|
+
const task = queue.getNextTask();
|
|
72
|
+
if (!task) {
|
|
73
|
+
emptyChecks++;
|
|
74
|
+
if (emptyChecks > 3) {
|
|
75
|
+
// Deep idle — check every 30s
|
|
76
|
+
await sleep(30_000);
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
await sleep(5000);
|
|
80
|
+
}
|
|
81
|
+
continue;
|
|
82
|
+
}
|
|
83
|
+
emptyChecks = 0;
|
|
84
|
+
// Start task
|
|
85
|
+
queue.updateTask(task.id, { status: 'running', startedAt: Date.now() });
|
|
86
|
+
callbacks.onTaskStart(task);
|
|
87
|
+
callbacks.updateStatus();
|
|
88
|
+
process.stdout.write(chalk.dim(` \u2500\u2500 Task #${task.id}: `) + chalk.white(task.title) + chalk.dim(' \u2500'.repeat(10)) + '\n');
|
|
89
|
+
try {
|
|
90
|
+
const prompt = task.retries > 0 ? buildRetryPrompt(task) : buildTaskPrompt(task);
|
|
91
|
+
const resultText = await callbacks.sendMessage(prompt);
|
|
92
|
+
if (callbacks.isAborted())
|
|
93
|
+
break;
|
|
94
|
+
const { success, summary } = extractResult(resultText);
|
|
95
|
+
if (success) {
|
|
96
|
+
queue.updateTask(task.id, {
|
|
97
|
+
status: 'completed',
|
|
98
|
+
completedAt: Date.now(),
|
|
99
|
+
result: summary,
|
|
100
|
+
});
|
|
101
|
+
completedCount++;
|
|
102
|
+
callbacks.onTaskComplete(task, summary);
|
|
103
|
+
renderInfo(chalk.green(` \u2713 Task #${task.id}: ${summary}`));
|
|
104
|
+
// Store result in spiral memory
|
|
105
|
+
if (callbacks.storeInSpiral) {
|
|
106
|
+
try {
|
|
107
|
+
await callbacks.storeInSpiral(`Jarvis Task #${task.id} completed: ${task.title}\n${summary}`, 'pattern', ['jarvis', 'task_result', ...(task.tags || [])]);
|
|
108
|
+
}
|
|
109
|
+
catch {
|
|
110
|
+
// Non-critical — don't fail the task
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
// Task reported failure
|
|
116
|
+
const newRetries = task.retries + 1;
|
|
117
|
+
if (newRetries < task.maxRetries) {
|
|
118
|
+
queue.updateTask(task.id, {
|
|
119
|
+
status: 'pending',
|
|
120
|
+
retries: newRetries,
|
|
121
|
+
error: summary,
|
|
122
|
+
});
|
|
123
|
+
renderInfo(chalk.yellow(` \u21BB Task #${task.id} failed, will retry (${newRetries}/${task.maxRetries}): ${summary}`));
|
|
124
|
+
}
|
|
125
|
+
else {
|
|
126
|
+
queue.updateTask(task.id, {
|
|
127
|
+
status: 'failed',
|
|
128
|
+
retries: newRetries,
|
|
129
|
+
error: summary,
|
|
130
|
+
});
|
|
131
|
+
callbacks.onTaskFailed(task, summary);
|
|
132
|
+
renderInfo(chalk.red(` \u2717 Task #${task.id} failed permanently: ${summary}`));
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
catch (err) {
|
|
137
|
+
if (callbacks.isAborted())
|
|
138
|
+
break;
|
|
139
|
+
const errorMsg = err instanceof Error ? err.message : String(err);
|
|
140
|
+
const newRetries = task.retries + 1;
|
|
141
|
+
if (newRetries < task.maxRetries) {
|
|
142
|
+
queue.updateTask(task.id, {
|
|
143
|
+
status: 'pending',
|
|
144
|
+
retries: newRetries,
|
|
145
|
+
error: errorMsg,
|
|
146
|
+
});
|
|
147
|
+
renderInfo(chalk.yellow(` \u21BB Task #${task.id} error, will retry: ${errorMsg}`));
|
|
148
|
+
}
|
|
149
|
+
else {
|
|
150
|
+
queue.updateTask(task.id, {
|
|
151
|
+
status: 'failed',
|
|
152
|
+
retries: newRetries,
|
|
153
|
+
error: errorMsg,
|
|
154
|
+
});
|
|
155
|
+
callbacks.onTaskFailed(task, errorMsg);
|
|
156
|
+
renderInfo(chalk.red(` \u2717 Task #${task.id} error: ${errorMsg}`));
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
callbacks.updateStatus();
|
|
160
|
+
}
|
|
161
|
+
queue.setDaemonState('stopped');
|
|
162
|
+
callbacks.updateStatus();
|
|
163
|
+
if (callbacks.isAborted()) {
|
|
164
|
+
process.stdout.write('\n');
|
|
165
|
+
renderInfo(chalk.yellow(` \u23F9 Jarvis stopped after ${completedCount} tasks.`));
|
|
166
|
+
process.stdout.write('\n');
|
|
167
|
+
}
|
|
168
|
+
return completedCount;
|
|
169
|
+
}
|
|
170
|
+
//# sourceMappingURL=daemon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"daemon.js","sourceRoot":"","sources":["../../../src/cli/jarvis/daemon.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAehD,SAAS,eAAe,CAAC,IAAgB;IACvC,OAAO;;QAED,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,KAAK;EAC5B,IAAI,CAAC,WAAW;;;;;;;uFAOqE,CAAC;AACxF,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAgB;IACxC,OAAO,kCAAkC,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,KAAK;;gCAEjC,IAAI,CAAC,KAAK,IAAI,eAAe;;;mDAGV,CAAC;AACpD,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,2BAA2B;IAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IACrD,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACnC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAClG,CAAC;IAED,2BAA2B;IAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAC9C,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAClF,CAAC;IAED,mDAAmD;IACnD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACnE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAC3F,CAAC;AAED,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,KAAkB,EAClB,SAAgC;IAEhC,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,IAAI,WAAW,GAAG,CAAC,CAAC;IAEpB,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC;IACpB,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAE/B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,4RAA4R,CAAC,GAAG,IAAI,CAAC,CAAC;IAC7T,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,oCAAoC,CAAC,GAAG,IAAI,CAAC,CAAC;IAClH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,qDAAqD,CAAC,GAAG,IAAI,CAAC,CAAC;IACpG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,yCAAyC,GAAG,CAAC,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC;IACzG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,sCAAsC,GAAG,CAAC,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,CAAC;IACzG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,qDAAqD,CAAC,GAAG,IAAI,CAAC,CAAC;IACpG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,6BAA6B,CAAC,GAAG,CAAC,CAAC,qBAAqB,CAAC,GAAG,IAAI,CAAC,CAAC;IACzG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,4RAA4R,CAAC,GAAG,MAAM,CAAC,CAAC;IAE/T,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAChC,SAAS,CAAC,YAAY,EAAE,CAAC;IAEzB,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,CAAC;QAC9B,eAAe;QACf,IAAI,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC;YACzB,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;YAClB,SAAS;QACX,CAAC;QAED,MAAM,IAAI,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAEjC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,WAAW,EAAE,CAAC;YACd,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;gBACpB,8BAA8B;gBAC9B,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACN,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;YACD,SAAS;QACX,CAAC;QAED,WAAW,GAAG,CAAC,CAAC;QAEhB,aAAa;QACb,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACxE,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC5B,SAAS,CAAC,YAAY,EAAE,CAAC;QAEzB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,wBAAwB,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAExI,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YACjF,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAEvD,IAAI,SAAS,CAAC,SAAS,EAAE;gBAAE,MAAM;YAEjC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;YAEvD,IAAI,OAAO,EAAE,CAAC;gBACZ,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE;oBACxB,MAAM,EAAE,WAAW;oBACnB,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;oBACvB,MAAM,EAAE,OAAO;iBAChB,CAAC,CAAC;gBACH,cAAc,EAAE,CAAC;gBACjB,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBACxC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,kBAAkB,IAAI,CAAC,EAAE,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC;gBAEjE,gCAAgC;gBAChC,IAAI,SAAS,CAAC,aAAa,EAAE,CAAC;oBAC5B,IAAI,CAAC;wBACH,MAAM,SAAS,CAAC,aAAa,CAC3B,gBAAgB,IAAI,CAAC,EAAE,eAAe,IAAI,CAAC,KAAK,KAAK,OAAO,EAAE,EAC9D,SAAS,EACT,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAChD,CAAC;oBACJ,CAAC;oBAAC,MAAM,CAAC;wBACP,qCAAqC;oBACvC,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,wBAAwB;gBACxB,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;gBACpC,IAAI,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;oBACjC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE;wBACxB,MAAM,EAAE,SAAS;wBACjB,OAAO,EAAE,UAAU;wBACnB,KAAK,EAAE,OAAO;qBACf,CAAC,CAAC;oBACH,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,IAAI,CAAC,EAAE,wBAAwB,UAAU,IAAI,IAAI,CAAC,UAAU,MAAM,OAAO,EAAE,CAAC,CAAC,CAAC;gBAC1H,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE;wBACxB,MAAM,EAAE,QAAQ;wBAChB,OAAO,EAAE,UAAU;wBACnB,KAAK,EAAE,OAAO;qBACf,CAAC,CAAC;oBACH,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;oBACtC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,kBAAkB,IAAI,CAAC,EAAE,wBAAwB,OAAO,EAAE,CAAC,CAAC,CAAC;gBACpF,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,SAAS,CAAC,SAAS,EAAE;gBAAE,MAAM;YAEjC,MAAM,QAAQ,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAClE,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;YAEpC,IAAI,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;gBACjC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE;oBACxB,MAAM,EAAE,SAAS;oBACjB,OAAO,EAAE,UAAU;oBACnB,KAAK,EAAE,QAAQ;iBAChB,CAAC,CAAC;gBACH,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,IAAI,CAAC,EAAE,uBAAuB,QAAQ,EAAE,CAAC,CAAC,CAAC;YACvF,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE;oBACxB,MAAM,EAAE,QAAQ;oBAChB,OAAO,EAAE,UAAU;oBACnB,KAAK,EAAE,QAAQ;iBAChB,CAAC,CAAC;gBACH,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBACvC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,kBAAkB,IAAI,CAAC,EAAE,WAAW,QAAQ,EAAE,CAAC,CAAC,CAAC;YACxE,CAAC;QACH,CAAC;QAED,SAAS,CAAC,YAAY,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAChC,SAAS,CAAC,YAAY,EAAE,CAAC;IAEzB,IAAI,SAAS,CAAC,SAAS,EAAE,EAAE,CAAC;QAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3B,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,iCAAiC,cAAc,SAAS,CAAC,CAAC,CAAC;QACnF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO,cAAc,CAAC;AACxB,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { JarvisQueue } from './queue.js';
|
|
2
|
+
export { runJarvisDaemon } from './daemon.js';
|
|
3
|
+
export type { JarvisDaemonCallbacks } from './daemon.js';
|
|
4
|
+
export type { JarvisTask, JarvisTaskStatus, JarvisTaskPriority, JarvisDaemonState, JarvisQueueData, JarvisStatusInfo, } from './types.js';
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/jarvis/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,YAAY,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACzD,YAAY,EACV,UAAU,EACV,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,GACjB,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/jarvis/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC"}
|