omniharness-cli 0.1.28 → 0.1.29
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/agent/mastraEngine.d.ts +41 -2
- package/dist/agent/mastraEngine.js +273 -43
- package/dist/agent/mastraEngine.js.map +1 -1
- package/dist/cli.js +6 -2
- package/dist/cli.js.map +1 -1
- package/dist/config/omniRoute.d.ts +37 -5
- package/dist/config/omniRoute.js +138 -3
- package/dist/config/omniRoute.js.map +1 -1
- package/dist/config/settings.d.ts +4 -0
- package/dist/config/settings.js +45 -0
- package/dist/config/settings.js.map +1 -0
- package/dist/skills.d.ts +29 -0
- package/dist/skills.js +84 -0
- package/dist/skills.js.map +1 -0
- package/dist/types/index.d.ts +34 -1
- package/dist/ui/editor.d.ts +49 -0
- package/dist/ui/editor.js +140 -0
- package/dist/ui/editor.js.map +1 -0
- package/dist/ui/terminalInterface.js +94 -13
- package/dist/ui/terminalInterface.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,20 +1,59 @@
|
|
|
1
1
|
import { OmniRouteClient } from '../config/omniRoute.js';
|
|
2
|
-
import type { HarnessState } from '../types/index.js';
|
|
2
|
+
import type { AgentMode, HarnessState } from '../types/index.js';
|
|
3
3
|
import { type SystemTools } from '../tools/systemTools.js';
|
|
4
|
+
import { type Skill } from '../skills.js';
|
|
4
5
|
export interface MastraEngineConfig {
|
|
5
6
|
workspaceRoot: string;
|
|
6
7
|
model?: string;
|
|
8
|
+
mode?: AgentMode;
|
|
7
9
|
endpoint?: string;
|
|
8
10
|
apiKey?: string;
|
|
9
11
|
shellAllowed?: boolean;
|
|
10
12
|
}
|
|
13
|
+
export type HarnessEvent = {
|
|
14
|
+
type: 'thinking';
|
|
15
|
+
text: string;
|
|
16
|
+
} | {
|
|
17
|
+
type: 'thinking_delta';
|
|
18
|
+
delta: string;
|
|
19
|
+
} | {
|
|
20
|
+
type: 'text_delta';
|
|
21
|
+
delta: string;
|
|
22
|
+
} | {
|
|
23
|
+
type: 'tool_start';
|
|
24
|
+
tool: string;
|
|
25
|
+
input: unknown;
|
|
26
|
+
} | {
|
|
27
|
+
type: 'tool_result';
|
|
28
|
+
tool: string;
|
|
29
|
+
summary: string;
|
|
30
|
+
} | {
|
|
31
|
+
type: 'approval_requested';
|
|
32
|
+
tool: string;
|
|
33
|
+
input: Record<string, unknown>;
|
|
34
|
+
} | {
|
|
35
|
+
type: 'text';
|
|
36
|
+
content: string;
|
|
37
|
+
} | {
|
|
38
|
+
type: 'preview';
|
|
39
|
+
url: string;
|
|
40
|
+
};
|
|
41
|
+
export interface ApprovalAction {
|
|
42
|
+
tool: string;
|
|
43
|
+
input: Record<string, unknown>;
|
|
44
|
+
}
|
|
11
45
|
export interface MastraEngine {
|
|
12
46
|
readonly client: OmniRouteClient;
|
|
13
47
|
readonly tools: SystemTools;
|
|
14
48
|
readonly state: HarnessState;
|
|
49
|
+
readonly skills: readonly Skill[];
|
|
50
|
+
subscribe(listener: (event: HarnessEvent) => void): () => void;
|
|
51
|
+
selectModel(model: string): Promise<void>;
|
|
52
|
+
setApprovalHandler(handler: (action: ApprovalAction) => Promise<boolean>): void;
|
|
15
53
|
run(prompt: string, signal?: AbortSignal): Promise<{
|
|
16
54
|
content: string;
|
|
17
55
|
model: string;
|
|
18
56
|
}>;
|
|
57
|
+
stop(): void;
|
|
19
58
|
}
|
|
20
|
-
export declare function createMastraEngine(config: MastraEngineConfig): MastraEngine
|
|
59
|
+
export declare function createMastraEngine(config: MastraEngineConfig): Promise<MastraEngine>;
|
|
@@ -1,62 +1,292 @@
|
|
|
1
|
+
import { exec, spawn } from 'node:child_process';
|
|
1
2
|
import { OmniRouteClient } from '../config/omniRoute.js';
|
|
3
|
+
import { saveActiveCombo } from '../config/settings.js';
|
|
2
4
|
import { createSystemTools } from '../tools/systemTools.js';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
warnings: [],
|
|
30
|
-
};
|
|
31
|
-
},
|
|
32
|
-
doStream: async () => { throw new Error('streaming is not enabled by this adapter'); },
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
export function createMastraEngine(config) {
|
|
5
|
+
import { loadSkills, renderSkillCommand, skillSchema } from '../skills.js';
|
|
6
|
+
const VERIFY_RULES = '\n\nWORK LOGIC — you MUST follow this discipline when implementing:\n'
|
|
7
|
+
+ '1. Read files with read_file before editing them. Never guess at contents.\n'
|
|
8
|
+
+ '2. Make the smallest correct change with write_file, then run the relevant checks with run_command '
|
|
9
|
+
+ '(tests, typecheck/lint/build — whichever applies to the project you touched).\n'
|
|
10
|
+
+ '3. After checks, read back your own changes with git_diff to confirm exactly what you changed.\n'
|
|
11
|
+
+ '4. NEVER claim success or report completion until the checks you ran PASS with zero errors. '
|
|
12
|
+
+ 'Do not say \"done\", \"works\", or \"all set\" without that evidence.\n'
|
|
13
|
+
+ '5. If a check fails, fix the underlying cause and re-run it. Repeat until it is green.\n'
|
|
14
|
+
+ '6. If you truly cannot run a check (no test runner present), say so explicitly instead of pretending.\n'
|
|
15
|
+
+ '\nSPEED & CONCISION — reason briefly and use tools directly rather than narrating. '
|
|
16
|
+
+ 'Read once, act once, verify once. Avoid re-reading the same file repeatedly.';
|
|
17
|
+
const MODE_PROMPT = {
|
|
18
|
+
plan: 'You are in PLAN mode: investigate the workspace, name risks and steps, and produce a concrete plan. Do not edit files or run commands. Use read_file, index_workspace, and git_diff.',
|
|
19
|
+
build: 'You are in BUILD mode: implement the request with minimal, correct changes. The full work discipline below is MANDATORY.',
|
|
20
|
+
research: 'You are in RESEARCH mode: investigate and answer with evidence from the workspace. Use read_file, index_workspace, and git_diff. Do not modify files or run commands.',
|
|
21
|
+
};
|
|
22
|
+
const SYSTEM_FRAME = (endpoint, root, mode, skillNames) => 'You are OmniHarness, an autonomous developer agent running inside the user\'s terminal (OmniHarness CLI, powered by the OmniRoute gateway at '
|
|
23
|
+
+ `${endpoint}). Workspace: ${root}. Act carefully and concretely; use the provided tools rather than guessing at file contents. `
|
|
24
|
+
+ MODE_PROMPT[mode]
|
|
25
|
+
+ (mode === 'build' ? VERIFY_RULES : '')
|
|
26
|
+
+ (skillNames.length > 0 ? `\nCustom skills available: ${skillNames.map((name) => `\`${name}\``).join(', ')}.` : '');
|
|
27
|
+
const MAX_TURNS = 24;
|
|
28
|
+
const MAX_OUTPUT = 32_000;
|
|
29
|
+
const RISKY_TOOLS = new Set(['write_file', 'run_command', 'start_preview']);
|
|
30
|
+
export async function createMastraEngine(config) {
|
|
36
31
|
const client = new OmniRouteClient({ endpoint: config.endpoint, apiKey: config.apiKey });
|
|
37
32
|
const tools = createSystemTools(config.workspaceRoot, config.shellAllowed ?? false);
|
|
38
33
|
const activeModel = config.model ?? 'auto/best-coding';
|
|
34
|
+
const listeners = new Set();
|
|
35
|
+
let preview = null;
|
|
36
|
+
let previewChild = null;
|
|
37
|
+
let approvalHandler = null;
|
|
39
38
|
const state = {
|
|
40
|
-
taskStatus: 'idle', prompt: '', activeModel,
|
|
39
|
+
taskStatus: 'idle', prompt: '', mode: config.mode ?? 'build', activeModel,
|
|
41
40
|
workspace: { root: config.workspaceRoot, indexedAt: null, files: [], contextLocked: false },
|
|
42
|
-
metrics: client.snapshotMetrics(), messages: [],
|
|
41
|
+
metrics: client.snapshotMetrics(), messages: [], preview: null,
|
|
42
|
+
};
|
|
43
|
+
const emit = (event) => { for (const listener of listeners)
|
|
44
|
+
listener(event); };
|
|
45
|
+
const skills = await loadSkills(config.workspaceRoot);
|
|
46
|
+
const systemTools = {
|
|
47
|
+
read_file: {
|
|
48
|
+
name: 'read_file', description: tools.readFile.description, highRisk: false, parameters: { type: 'object', properties: { path: { type: 'string' } }, required: ['path'] },
|
|
49
|
+
execute: async (input) => { const r = await tools.readFile.execute({ path: String(input.path) }); return r.content; },
|
|
50
|
+
},
|
|
51
|
+
write_file: {
|
|
52
|
+
name: 'write_file', description: tools.writeFile.description, highRisk: true, parameters: { type: 'object', properties: { path: { type: 'string' }, content: { type: 'string' } }, required: ['path', 'content'] },
|
|
53
|
+
execute: async (input) => { const r = await tools.writeFile.execute({ path: String(input.path), content: String(input.content) }); return `wrote ${r.bytes} bytes to ${r.path}`; },
|
|
54
|
+
},
|
|
55
|
+
run_command: {
|
|
56
|
+
name: 'run_command', description: tools.runCommand.description, highRisk: true, parameters: { type: 'object', properties: { command: { type: 'string' }, args: { type: 'array', items: { type: 'string' } } }, required: ['command'] },
|
|
57
|
+
execute: async (input, signal) => {
|
|
58
|
+
const args = Array.isArray(input.args) ? input.args.map(String) : [];
|
|
59
|
+
const r = await tools.runCommand.execute({ command: String(input.command), args }, signal);
|
|
60
|
+
return `exit ${r.code}\n${r.stdout}${r.stderr ? `\n${r.stderr}` : ''}`;
|
|
61
|
+
},
|
|
62
|
+
},
|
|
63
|
+
index_workspace: {
|
|
64
|
+
name: 'index_workspace', description: tools.indexWorkspace.description, highRisk: false, parameters: { type: 'object', properties: {} },
|
|
65
|
+
execute: async () => {
|
|
66
|
+
const r = await tools.indexWorkspace.execute();
|
|
67
|
+
state.workspace = { ...state.workspace, indexedAt: r.indexedAt, files: r.files };
|
|
68
|
+
const paths = r.files.map((file) => file.path).slice(0, 100).join('\n');
|
|
69
|
+
return `indexed ${r.files.length} entries under ${r.root}:\n${paths}`;
|
|
70
|
+
},
|
|
71
|
+
},
|
|
72
|
+
git_diff: {
|
|
73
|
+
name: 'git_diff', description: tools.gitDiff.description, highRisk: false, parameters: { type: 'object', properties: {} },
|
|
74
|
+
execute: async (_, signal) => { const r = await tools.gitDiff.execute(undefined, signal); return r === '' ? '(no diff)' : r; },
|
|
75
|
+
},
|
|
76
|
+
start_preview: {
|
|
77
|
+
name: 'start_preview', description: 'Start a local preview server for the workspace and report its URL. Provide the command to run.', highRisk: true, parameters: { type: 'object', properties: { command: { type: 'string' }, args: { type: 'array', items: { type: 'string' } }, port: { type: 'integer' } }, required: ['command'] },
|
|
78
|
+
execute: async (input) => {
|
|
79
|
+
const port = typeof input.port === 'number' ? input.port : 4000;
|
|
80
|
+
const args = Array.isArray(input.args) ? input.args.map(String) : [];
|
|
81
|
+
await stopPreviewChild();
|
|
82
|
+
previewChild = spawn(String(input.command), args, { cwd: state.workspace.root, shell: true, stdio: 'pipe' });
|
|
83
|
+
const server = { url: `http://localhost:${port}`, command: String(input.command), startedAt: new Date().toISOString() };
|
|
84
|
+
preview = server;
|
|
85
|
+
state.preview = server;
|
|
86
|
+
emit({ type: 'preview', url: server.url });
|
|
87
|
+
return `preview running at ${server.url}`;
|
|
88
|
+
},
|
|
89
|
+
},
|
|
43
90
|
};
|
|
91
|
+
const execShell = (command, options) => new Promise((resolve, reject) => {
|
|
92
|
+
exec(command, options, (error, stdout, stderr) => {
|
|
93
|
+
if (error) {
|
|
94
|
+
error.stdout = stdout;
|
|
95
|
+
error.stderr = stderr;
|
|
96
|
+
reject(error);
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
resolve({ stdout: String(stdout), stderr: String(stderr) });
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
});
|
|
103
|
+
const execSkill = async (script) => {
|
|
104
|
+
try {
|
|
105
|
+
const r = await execShell(script, { cwd: state.workspace.root, timeout: 30_000, maxBuffer: MAX_OUTPUT });
|
|
106
|
+
return `exit 0\n${r.stdout}${r.stderr ? `\n${r.stderr}` : ''}`;
|
|
107
|
+
}
|
|
108
|
+
catch (reason) {
|
|
109
|
+
const err = reason;
|
|
110
|
+
return `exit ${err.code ?? -1}\n${String(err.stdout ?? '')}\n${String(err.stderr ?? '')}`;
|
|
111
|
+
}
|
|
112
|
+
};
|
|
113
|
+
for (const skill of skills) {
|
|
114
|
+
systemTools[skill.name] = {
|
|
115
|
+
name: skill.name, description: skill.description, highRisk: true, parameters: skillSchema(skill).parameters ?? { type: 'object', properties: {} },
|
|
116
|
+
execute: async (input) => {
|
|
117
|
+
if (!config.shellAllowed)
|
|
118
|
+
throw new Error('shell execution is disabled; custom skills need shell access');
|
|
119
|
+
const script = renderSkillCommand(skill.command, skill.parameters, input);
|
|
120
|
+
return execSkill(script);
|
|
121
|
+
},
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
const toolSchemas = Object.values(systemTools).map((entry) => ({
|
|
125
|
+
type: 'function', function: { name: entry.name, description: entry.description, parameters: entry.parameters },
|
|
126
|
+
}));
|
|
127
|
+
async function stopPreviewChild() {
|
|
128
|
+
if (!previewChild)
|
|
129
|
+
return;
|
|
130
|
+
previewChild.kill();
|
|
131
|
+
previewChild = null;
|
|
132
|
+
}
|
|
133
|
+
async function runTool(call, signal) {
|
|
134
|
+
const registered = systemTools[call.function.name];
|
|
135
|
+
if (!registered)
|
|
136
|
+
return `error: unknown tool ${call.function.name}`;
|
|
137
|
+
let parsed = {};
|
|
138
|
+
try {
|
|
139
|
+
parsed = call.function.arguments ? JSON.parse(call.function.arguments) : {};
|
|
140
|
+
}
|
|
141
|
+
catch {
|
|
142
|
+
parsed = {};
|
|
143
|
+
}
|
|
144
|
+
if (approvalHandler && registered.highRisk) {
|
|
145
|
+
emit({ type: 'approval_requested', tool: call.function.name, input: parsed });
|
|
146
|
+
const approved = await approvalHandler({ tool: call.function.name, input: parsed });
|
|
147
|
+
if (!approved)
|
|
148
|
+
return 'user denied this tool call';
|
|
149
|
+
}
|
|
150
|
+
try {
|
|
151
|
+
return await registered.execute(parsed, signal);
|
|
152
|
+
}
|
|
153
|
+
catch (reason) {
|
|
154
|
+
return `error: ${reason instanceof Error ? reason.message : String(reason)}`;
|
|
155
|
+
}
|
|
156
|
+
}
|
|
44
157
|
return {
|
|
45
|
-
client, tools, state,
|
|
158
|
+
client, tools, state, skills,
|
|
159
|
+
subscribe(listener) { listeners.add(listener); return () => listeners.delete(listener); },
|
|
160
|
+
setApprovalHandler(handler) { approvalHandler = handler; },
|
|
161
|
+
async selectModel(model) {
|
|
162
|
+
state.activeModel = model;
|
|
163
|
+
try {
|
|
164
|
+
await saveActiveCombo(model);
|
|
165
|
+
}
|
|
166
|
+
catch { /* persistence is best-effort */ }
|
|
167
|
+
},
|
|
168
|
+
stop() { void stopPreviewChild(); listeners.clear(); },
|
|
46
169
|
async run(prompt, signal) {
|
|
47
170
|
state.prompt = prompt;
|
|
48
171
|
state.taskStatus = 'running';
|
|
49
|
-
const
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
172
|
+
const userMessage = { role: 'user', content: prompt, createdAt: new Date().toISOString() };
|
|
173
|
+
state.messages = [...state.messages, userMessage];
|
|
174
|
+
const wire = [
|
|
175
|
+
{ role: 'system', content: SYSTEM_FRAME(client.endpoint, state.workspace.root, state.mode, skills.map((skill) => skill.name)) },
|
|
176
|
+
...state.messages.map(asWireMessage),
|
|
53
177
|
];
|
|
54
|
-
const
|
|
178
|
+
const results = [];
|
|
179
|
+
let turn = 0;
|
|
180
|
+
let model = activeModel;
|
|
181
|
+
let content = '';
|
|
182
|
+
let reasoning = '';
|
|
183
|
+
let toolCalls = [];
|
|
184
|
+
const finishRound = async () => {
|
|
185
|
+
content = '';
|
|
186
|
+
reasoning = '';
|
|
187
|
+
toolCalls = [];
|
|
188
|
+
const result = await client.chatStream(state.activeModel, wire, {
|
|
189
|
+
signal, tools: toolSchemas,
|
|
190
|
+
onDelta: (delta) => {
|
|
191
|
+
if (delta.type === 'reasoning') {
|
|
192
|
+
reasoning += delta.delta;
|
|
193
|
+
emit({ type: 'thinking_delta', delta: delta.delta });
|
|
194
|
+
}
|
|
195
|
+
else if (delta.type === 'text') {
|
|
196
|
+
content += delta.delta;
|
|
197
|
+
emit({ type: 'text_delta', delta: delta.delta });
|
|
198
|
+
}
|
|
199
|
+
else if (delta.type === 'tool_call') {
|
|
200
|
+
if (!toolCalls.some((call) => call.id === delta.call.id)) {
|
|
201
|
+
toolCalls.push(delta.call);
|
|
202
|
+
}
|
|
203
|
+
else {
|
|
204
|
+
toolCalls = toolCalls.map((call) => call.id === delta.call.id ? delta.call : call);
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
},
|
|
208
|
+
});
|
|
209
|
+
if (result.model)
|
|
210
|
+
model = result.model;
|
|
211
|
+
};
|
|
212
|
+
await finishRound();
|
|
213
|
+
while (toolCalls.length > 0) {
|
|
214
|
+
if (reasoning) {
|
|
215
|
+
emit({ type: 'thinking', text: reasoning });
|
|
216
|
+
state.messages = [...state.messages, { role: 'thought', content: reasoning, createdAt: new Date().toISOString() }];
|
|
217
|
+
}
|
|
218
|
+
wire.push({ role: 'assistant', content, tool_calls: toolCalls });
|
|
219
|
+
let executedAny = false;
|
|
220
|
+
for (const call of toolCalls) {
|
|
221
|
+
if (signal?.aborted)
|
|
222
|
+
break;
|
|
223
|
+
turn += 1;
|
|
224
|
+
if (turn > MAX_TURNS) {
|
|
225
|
+
const error = `too many tool turns (limit ${MAX_TURNS})`;
|
|
226
|
+
state.messages = [...state.messages, { role: 'error', content: error, createdAt: new Date().toISOString() }];
|
|
227
|
+
state.taskStatus = 'failed';
|
|
228
|
+
return { content: error + '; latest text: ' + content, model: activeModel };
|
|
229
|
+
}
|
|
230
|
+
emit({ type: 'tool_start', tool: call.function.name, input: undefined });
|
|
231
|
+
const output = await runTool(call, signal);
|
|
232
|
+
const summary = output.split('\n')[0] ?? '';
|
|
233
|
+
emit({ type: 'tool_result', tool: call.function.name, summary });
|
|
234
|
+
results.push({ call, output });
|
|
235
|
+
wire.push({ role: 'tool', tool_call_id: call.id, content: truncate(output) });
|
|
236
|
+
executedAny = true;
|
|
237
|
+
}
|
|
238
|
+
if (!executedAny)
|
|
239
|
+
break;
|
|
240
|
+
content = '';
|
|
241
|
+
reasoning = '';
|
|
242
|
+
toolCalls = [];
|
|
243
|
+
const next = await client.chatStream(state.activeModel, wire, {
|
|
244
|
+
signal, tools: toolSchemas,
|
|
245
|
+
onDelta: (delta) => {
|
|
246
|
+
if (delta.type === 'reasoning') {
|
|
247
|
+
reasoning += delta.delta;
|
|
248
|
+
emit({ type: 'thinking_delta', delta: delta.delta });
|
|
249
|
+
}
|
|
250
|
+
else if (delta.type === 'text') {
|
|
251
|
+
content += delta.delta;
|
|
252
|
+
emit({ type: 'text_delta', delta: delta.delta });
|
|
253
|
+
}
|
|
254
|
+
else if (delta.type === 'tool_call') {
|
|
255
|
+
if (!toolCalls.some((call) => call.id === delta.call.id)) {
|
|
256
|
+
toolCalls.push(delta.call);
|
|
257
|
+
}
|
|
258
|
+
else {
|
|
259
|
+
toolCalls = toolCalls.map((call) => call.id === delta.call.id ? delta.call : call);
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
},
|
|
263
|
+
});
|
|
264
|
+
if (next.model)
|
|
265
|
+
model = next.model;
|
|
266
|
+
}
|
|
55
267
|
state.taskStatus = 'completed';
|
|
56
268
|
state.metrics = client.snapshotMetrics();
|
|
57
|
-
|
|
58
|
-
|
|
269
|
+
const answer = content;
|
|
270
|
+
if (reasoning) {
|
|
271
|
+
emit({ type: 'thinking', text: reasoning });
|
|
272
|
+
state.messages = [...state.messages, { role: 'thought', content: reasoning, createdAt: new Date().toISOString() }];
|
|
273
|
+
}
|
|
274
|
+
for (const result of results) {
|
|
275
|
+
const tool = result.call.function.name;
|
|
276
|
+
state.messages = [...state.messages, { role: 'tool', content: result.output.slice(0, 500), toolName: tool, createdAt: new Date().toISOString() }];
|
|
277
|
+
}
|
|
278
|
+
emit({ type: 'text', content: answer });
|
|
279
|
+
state.messages = [...state.messages, { role: 'assistant', content: answer, model, createdAt: new Date().toISOString() }];
|
|
280
|
+
return { content: answer, model };
|
|
59
281
|
},
|
|
60
282
|
};
|
|
61
283
|
}
|
|
284
|
+
function asWireMessage(message) {
|
|
285
|
+
if (message.role === 'user' || message.role === 'assistant')
|
|
286
|
+
return { role: message.role, content: message.content };
|
|
287
|
+
return { role: 'assistant', content: message.content };
|
|
288
|
+
}
|
|
289
|
+
function truncate(text, max = 4000) {
|
|
290
|
+
return text.length <= max ? text : `${text.slice(0, max)}\n… (truncated ${text.length - max} chars)`;
|
|
291
|
+
}
|
|
62
292
|
//# sourceMappingURL=mastraEngine.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mastraEngine.js","sourceRoot":"","sources":["../../src/agent/mastraEngine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mastraEngine.js","sourceRoot":"","sources":["../../src/agent/mastraEngine.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.js
CHANGED
|
@@ -4,6 +4,7 @@ import { render } from 'ink';
|
|
|
4
4
|
import { createMastraEngine } from './agent/mastraEngine.js';
|
|
5
5
|
import { TerminalInterface } from './ui/terminalInterface.js';
|
|
6
6
|
import { ownVersion, runUpdate } from './update.js';
|
|
7
|
+
import { readActiveCombo } from './config/settings.js';
|
|
7
8
|
const command = process.argv[2];
|
|
8
9
|
if (command === 'update') {
|
|
9
10
|
process.exitCode = runUpdate();
|
|
@@ -12,7 +13,10 @@ else if (command === '--version' || command === '-v' || command === 'version') {
|
|
|
12
13
|
console.log(`omniharness ${ownVersion()}`);
|
|
13
14
|
}
|
|
14
15
|
else {
|
|
15
|
-
|
|
16
|
-
|
|
16
|
+
void (async () => {
|
|
17
|
+
const saved = await readActiveCombo();
|
|
18
|
+
const engine = await createMastraEngine({ workspaceRoot: process.cwd(), model: saved });
|
|
19
|
+
render(_jsx(TerminalInterface, { engine: engine }));
|
|
20
|
+
})();
|
|
17
21
|
}
|
|
18
22
|
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.tsx"],"names":[],"mappings":";;AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.tsx"],"names":[],"mappings":";;AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAEhC,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;IACzB,OAAO,CAAC,QAAQ,GAAG,SAAS,EAAE,CAAC;AACjC,CAAC;KAAM,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;IAChF,OAAO,CAAC,GAAG,CAAC,eAAe,UAAU,EAAE,EAAE,CAAC,CAAC;AAC7C,CAAC;KAAM,CAAC;IACN,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,MAAM,KAAK,GAAG,MAAM,eAAe,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACxF,MAAM,CAAC,KAAC,iBAAiB,IAAC,MAAM,EAAE,MAAM,GAAI,CAAC,CAAC;IAChD,CAAC,CAAC,EAAE,CAAC;AACP,CAAC"}
|
|
@@ -1,4 +1,20 @@
|
|
|
1
|
-
import type { OmniRouteMetrics } from '../types/index.js';
|
|
1
|
+
import type { ChatWireMessage, OmniRouteMetrics, ToolCallRequest } from '../types/index.js';
|
|
2
|
+
/** Deltas surfaced incrementally while a streaming completion is in flight. */
|
|
3
|
+
export type StreamDelta = {
|
|
4
|
+
type: 'reasoning';
|
|
5
|
+
delta: string;
|
|
6
|
+
} | {
|
|
7
|
+
type: 'text';
|
|
8
|
+
delta: string;
|
|
9
|
+
} | {
|
|
10
|
+
type: 'tool_call';
|
|
11
|
+
call: ToolCallRequest;
|
|
12
|
+
};
|
|
13
|
+
export interface ChatStreamOptions {
|
|
14
|
+
signal?: AbortSignal;
|
|
15
|
+
tools?: readonly ChatTool[];
|
|
16
|
+
onDelta?: (delta: StreamDelta) => void;
|
|
17
|
+
}
|
|
2
18
|
export interface OmniRouteConfig {
|
|
3
19
|
endpoint?: string;
|
|
4
20
|
apiKey?: string;
|
|
@@ -14,13 +30,21 @@ export interface OmniRouteCombo {
|
|
|
14
30
|
}[];
|
|
15
31
|
isDefault?: boolean;
|
|
16
32
|
}
|
|
17
|
-
export
|
|
18
|
-
|
|
19
|
-
|
|
33
|
+
export type ChatMessage = ChatWireMessage;
|
|
34
|
+
export interface ChatTool {
|
|
35
|
+
type: 'function';
|
|
36
|
+
function: {
|
|
37
|
+
name: string;
|
|
38
|
+
description?: string;
|
|
39
|
+
parameters: unknown;
|
|
40
|
+
};
|
|
20
41
|
}
|
|
21
42
|
export interface ChatResult {
|
|
22
43
|
content: string;
|
|
23
44
|
model: string;
|
|
45
|
+
finishReason: 'stop' | 'tool_calls' | 'length' | 'content_filter' | string;
|
|
46
|
+
reasoning?: string;
|
|
47
|
+
toolCalls?: readonly ToolCallRequest[];
|
|
24
48
|
usage?: {
|
|
25
49
|
inputTokens: number;
|
|
26
50
|
outputTokens: number;
|
|
@@ -41,12 +65,20 @@ export declare class OmniRouteClient {
|
|
|
41
65
|
setApiKey(apiKey: string): void;
|
|
42
66
|
snapshotMetrics(): OmniRouteMetrics;
|
|
43
67
|
listCombos(signal?: AbortSignal): Promise<readonly OmniRouteCombo[]>;
|
|
44
|
-
|
|
68
|
+
/** Stream a completion, surfacing deltas as they arrive and returning the accumulated result. */
|
|
69
|
+
chatStream(model: string, messages: readonly ChatMessage[], options?: ChatStreamOptions): Promise<ChatResult>;
|
|
70
|
+
chat(model: string, messages: readonly ChatMessage[], options?: {
|
|
71
|
+
signal?: AbortSignal;
|
|
72
|
+
tools?: readonly ChatTool[];
|
|
73
|
+
}): Promise<ChatResult>;
|
|
45
74
|
private request;
|
|
46
75
|
private updateMetrics;
|
|
47
76
|
private safeBody;
|
|
48
77
|
private headerNumber;
|
|
49
78
|
private number;
|
|
79
|
+
private safeParse;
|
|
80
|
+
private isValidJson;
|
|
81
|
+
private asToolCall;
|
|
50
82
|
private isRecord;
|
|
51
83
|
private combineSignals;
|
|
52
84
|
}
|