@agentrix/cli 0.0.10 → 0.0.11
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/{index-CWPJKpmJ.mjs → index-CvGINSkT.mjs} +93 -59
- package/dist/{index-CEbBjLT3.cjs → index-DuBvuZ3A.cjs} +2 -2
- package/dist/{index-DEoriCrL.cjs → index-Dw2iFM1t.cjs} +93 -59
- package/dist/{index-k9I-urnJ.mjs → index-zM9f-RKY.mjs} +2 -2
- package/dist/index.cjs +2 -2
- package/dist/index.mjs +2 -2
- package/dist/lib.cjs +1 -1
- package/dist/lib.mjs +1 -1
- package/dist/{logger-ChZYRh-E.mjs → logger-7E71dnBD.mjs} +1 -1
- package/dist/{logger-DVI_I2D6.cjs → logger-BZKdzrRM.cjs} +2 -2
- package/package.json +1 -1
|
@@ -4,7 +4,7 @@ import chalk from 'chalk';
|
|
|
4
4
|
import { encodeBase64, createKeyPairWithUit8Array, encryptMachineEncryptionKey, generateAESKey, decodeBase64, decryptWithEphemeralKey, createEventId, encryptFileContent, machineAuth, encryptSdkMessage, decryptSdkMessage, loadAgentConfig, getAgentContext, workerAuth } from '@agentrix/shared';
|
|
5
5
|
import { randomBytes, randomUUID as randomUUID$1 } from 'node:crypto';
|
|
6
6
|
import axios from 'axios';
|
|
7
|
-
import { m as machine, l as logger, p as projectPath, a as packageJson, c as createLogger, g as getLogPath, b as logger$1 } from './logger-
|
|
7
|
+
import { m as machine, l as logger, p as projectPath, a as packageJson, c as createLogger, g as getLogPath, b as logger$1 } from './logger-7E71dnBD.mjs';
|
|
8
8
|
import * as fs from 'node:fs';
|
|
9
9
|
import { existsSync, rmSync, readdirSync, mkdirSync, createWriteStream } from 'node:fs';
|
|
10
10
|
import { createInterface } from 'node:readline';
|
|
@@ -12593,6 +12593,29 @@ function createWorkerEventHandlers(context) {
|
|
|
12593
12593
|
class WorkerClient {
|
|
12594
12594
|
client;
|
|
12595
12595
|
context;
|
|
12596
|
+
/**
|
|
12597
|
+
* Static helper method to send error message and exit event
|
|
12598
|
+
* Used when worker fails during initialization before context is set up
|
|
12599
|
+
*
|
|
12600
|
+
* @param config - Worker client configuration
|
|
12601
|
+
* @param errorMessage - Error message to send to user
|
|
12602
|
+
*/
|
|
12603
|
+
static async sendErrorAndExit(config, errorMessage) {
|
|
12604
|
+
try {
|
|
12605
|
+
const workClient = new WorkerClient(config, {
|
|
12606
|
+
stopTask: async () => {
|
|
12607
|
+
},
|
|
12608
|
+
onTaskMessage: async () => {
|
|
12609
|
+
}
|
|
12610
|
+
});
|
|
12611
|
+
await workClient.connect();
|
|
12612
|
+
workClient.sendSystemErrorMessage(errorMessage);
|
|
12613
|
+
await workClient.client.flush(2e3);
|
|
12614
|
+
workClient.sendWorkerExit("error");
|
|
12615
|
+
await workClient.disconnect();
|
|
12616
|
+
} catch {
|
|
12617
|
+
}
|
|
12618
|
+
}
|
|
12596
12619
|
constructor(config, options) {
|
|
12597
12620
|
const { taskId, userId, machineId, cwd, ...socketConfig } = config;
|
|
12598
12621
|
const normalizedCwd = cwd.endsWith("/") ? cwd : `${cwd}/`;
|
|
@@ -12691,6 +12714,41 @@ class WorkerClient {
|
|
|
12691
12714
|
};
|
|
12692
12715
|
this.client.send("worker-exit", workerExitEvent);
|
|
12693
12716
|
}
|
|
12717
|
+
/**
|
|
12718
|
+
* Send system error message and worker exit event, then disconnect
|
|
12719
|
+
* Used when worker exits with error after context is set up
|
|
12720
|
+
*
|
|
12721
|
+
* @param errorMessage - Error message to send to user
|
|
12722
|
+
*/
|
|
12723
|
+
async sendErrorMessageAndExit(errorMessage) {
|
|
12724
|
+
this.sendSystemErrorMessage(errorMessage);
|
|
12725
|
+
await this.client.flush(2e3);
|
|
12726
|
+
this.sendWorkerExit("error");
|
|
12727
|
+
await this.disconnect();
|
|
12728
|
+
}
|
|
12729
|
+
sendSystemErrorMessage(errorMessage) {
|
|
12730
|
+
const systemMessage = {
|
|
12731
|
+
type: "assistant",
|
|
12732
|
+
session_id: "",
|
|
12733
|
+
uuid: crypto.randomUUID(),
|
|
12734
|
+
parent_tool_use_id: null,
|
|
12735
|
+
message: {
|
|
12736
|
+
role: "assistant",
|
|
12737
|
+
content: [
|
|
12738
|
+
{
|
|
12739
|
+
type: "text",
|
|
12740
|
+
text: `System Error
|
|
12741
|
+
|
|
12742
|
+
${errorMessage}`,
|
|
12743
|
+
metadata: {
|
|
12744
|
+
messageType: "system_error"
|
|
12745
|
+
}
|
|
12746
|
+
}
|
|
12747
|
+
]
|
|
12748
|
+
}
|
|
12749
|
+
};
|
|
12750
|
+
this.sendTaskMessage(systemMessage);
|
|
12751
|
+
}
|
|
12694
12752
|
sendRequirePermission(toolName, toolInput) {
|
|
12695
12753
|
const eventId = createEventId();
|
|
12696
12754
|
const permissionRequest = {
|
|
@@ -13088,7 +13146,8 @@ async function handleGitState(workingDirectory, userId, taskId, commitMessage) {
|
|
|
13088
13146
|
throw new Error(`Initial commit hash not found for task ${taskId}`);
|
|
13089
13147
|
}
|
|
13090
13148
|
const lastSentHash = await machine.readLastSentCommitHash(userId, taskId);
|
|
13091
|
-
const
|
|
13149
|
+
const baseHash = lastSentHash ?? initialHash;
|
|
13150
|
+
const hasNewCommits = currentCommitHash !== baseHash;
|
|
13092
13151
|
const dataDir = machine.resolveDataDir(userId, taskId);
|
|
13093
13152
|
const patchPath = await generateAndSavePatch(
|
|
13094
13153
|
workingDirectory,
|
|
@@ -13461,7 +13520,8 @@ class ClaudeWorker {
|
|
|
13461
13520
|
await this.exitWorker("completed");
|
|
13462
13521
|
} else {
|
|
13463
13522
|
this.log("warn", "AGENT", "Fatal error:", error);
|
|
13464
|
-
|
|
13523
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
13524
|
+
await this.exitWorker("error", errorMessage);
|
|
13465
13525
|
throw error;
|
|
13466
13526
|
}
|
|
13467
13527
|
} finally {
|
|
@@ -13499,18 +13559,11 @@ class ClaudeWorker {
|
|
|
13499
13559
|
} catch (error) {
|
|
13500
13560
|
this.log("error", "GIT", "Failed to setup workspace:", error);
|
|
13501
13561
|
const basicConfig = this.createBasicWorkerConfig(userId, taskId, workingDirectory);
|
|
13502
|
-
|
|
13503
|
-
|
|
13504
|
-
|
|
13505
|
-
|
|
13506
|
-
|
|
13507
|
-
}
|
|
13508
|
-
});
|
|
13509
|
-
await workClient2.connect();
|
|
13510
|
-
workClient2.sendWorkerExit("error");
|
|
13511
|
-
await workClient2.disconnect();
|
|
13512
|
-
} catch {
|
|
13513
|
-
}
|
|
13562
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
13563
|
+
await WorkerClient.sendErrorAndExit(
|
|
13564
|
+
basicConfig,
|
|
13565
|
+
`Failed to setup workspace: ${errorMessage}`
|
|
13566
|
+
);
|
|
13514
13567
|
process.exit(1);
|
|
13515
13568
|
}
|
|
13516
13569
|
const idleTimeoutMs = Math.max(0, this.options.idleTimeoutSecond ?? 0) * 1e3;
|
|
@@ -14168,14 +14221,18 @@ URL: ${result.pullRequestUrl}`
|
|
|
14168
14221
|
}
|
|
14169
14222
|
};
|
|
14170
14223
|
}
|
|
14171
|
-
async exitWorker(status) {
|
|
14224
|
+
async exitWorker(status, errorMessage) {
|
|
14172
14225
|
if (this.coordinator) {
|
|
14173
14226
|
this.coordinator.stop();
|
|
14174
14227
|
}
|
|
14175
14228
|
if (this.context?.workClient) {
|
|
14176
|
-
this.context.workClient.sendWorkerExit(status);
|
|
14177
14229
|
this.log("info", "WORKER", `Exiting with status: ${status} for task ${this.taskId}`);
|
|
14178
|
-
|
|
14230
|
+
if (status === "error" && errorMessage) {
|
|
14231
|
+
await this.context.workClient.sendErrorMessageAndExit(errorMessage);
|
|
14232
|
+
} else {
|
|
14233
|
+
this.context.workClient.sendWorkerExit(status);
|
|
14234
|
+
await this.context.workClient.disconnect();
|
|
14235
|
+
}
|
|
14179
14236
|
}
|
|
14180
14237
|
}
|
|
14181
14238
|
logGitStateResult(gitStateResult, phase) {
|
|
@@ -14199,7 +14256,7 @@ URL: ${result.pullRequestUrl}`
|
|
|
14199
14256
|
}
|
|
14200
14257
|
}
|
|
14201
14258
|
async createLogger(options) {
|
|
14202
|
-
const { createLogger } = await import('./logger-
|
|
14259
|
+
const { createLogger } = await import('./logger-7E71dnBD.mjs').then(function (n) { return n.b; });
|
|
14203
14260
|
return createLogger(options);
|
|
14204
14261
|
}
|
|
14205
14262
|
log(level, category, message, ...args) {
|
|
@@ -15882,7 +15939,8 @@ class CodexWorker {
|
|
|
15882
15939
|
await this.exitWorker("completed");
|
|
15883
15940
|
} else {
|
|
15884
15941
|
this.log("warn", "AGENT", "Fatal error:", error);
|
|
15885
|
-
|
|
15942
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
15943
|
+
await this.exitWorker("error", errorMessage);
|
|
15886
15944
|
throw error;
|
|
15887
15945
|
}
|
|
15888
15946
|
} finally {
|
|
@@ -15917,18 +15975,11 @@ class CodexWorker {
|
|
|
15917
15975
|
} catch (error) {
|
|
15918
15976
|
this.log("error", "GIT", "Failed to setup workspace:", error);
|
|
15919
15977
|
const basicConfig = this.createBasicWorkerConfig(userId, taskId, workingDirectory);
|
|
15920
|
-
|
|
15921
|
-
|
|
15922
|
-
|
|
15923
|
-
|
|
15924
|
-
|
|
15925
|
-
}
|
|
15926
|
-
});
|
|
15927
|
-
await workClient2.connect();
|
|
15928
|
-
workClient2.sendWorkerExit("error");
|
|
15929
|
-
await workClient2.disconnect();
|
|
15930
|
-
} catch {
|
|
15931
|
-
}
|
|
15978
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
15979
|
+
await WorkerClient.sendErrorAndExit(
|
|
15980
|
+
basicConfig,
|
|
15981
|
+
`Failed to setup workspace: ${errorMessage}`
|
|
15982
|
+
);
|
|
15932
15983
|
process.exit(1);
|
|
15933
15984
|
}
|
|
15934
15985
|
const idleTimeoutMs = Math.max(0, this.options.idleTimeoutSecond ?? 0) * 1e3;
|
|
@@ -16150,28 +16201,7 @@ ${stats.files.map((f) => ` ${f.path}: +${f.insertions}/-${f.deletions}`).join("
|
|
|
16150
16201
|
this.timerManager.clearIdleTimer();
|
|
16151
16202
|
this.toolIdMap.clear();
|
|
16152
16203
|
let input = userInput;
|
|
16153
|
-
if (this.turnCount === 0)
|
|
16154
|
-
const agentConfig = await this.loadAgentConfiguration();
|
|
16155
|
-
const systemPrompt = buildSystemPrompt(
|
|
16156
|
-
agentConfig.customSystemPrompt,
|
|
16157
|
-
agentConfig.systemPromptMode
|
|
16158
|
-
);
|
|
16159
|
-
const sysPrompt = systemPrompt instanceof String ? systemPrompt : systemPrompt.append;
|
|
16160
|
-
if (sysPrompt) {
|
|
16161
|
-
if (typeof userInput === "string") {
|
|
16162
|
-
input = `${sysPrompt}
|
|
16163
|
-
|
|
16164
|
-
---
|
|
16165
|
-
|
|
16166
|
-
${userInput}`;
|
|
16167
|
-
} else {
|
|
16168
|
-
input = [
|
|
16169
|
-
{ type: "text", text: sysPrompt },
|
|
16170
|
-
...userInput
|
|
16171
|
-
];
|
|
16172
|
-
}
|
|
16173
|
-
}
|
|
16174
|
-
}
|
|
16204
|
+
if (this.turnCount === 0) ;
|
|
16175
16205
|
const turnOptions = this.inMergeRequest ? { outputSchema: getPROutputSchema() } : {};
|
|
16176
16206
|
this.log("debug", "AGENT", "Calling thread.runStreamed");
|
|
16177
16207
|
const { events } = await this.thread.runStreamed(input, turnOptions);
|
|
@@ -16555,13 +16585,17 @@ URL: ${result.pullRequestUrl}`);
|
|
|
16555
16585
|
}
|
|
16556
16586
|
};
|
|
16557
16587
|
}
|
|
16558
|
-
async exitWorker(status) {
|
|
16588
|
+
async exitWorker(status, errorMessage) {
|
|
16559
16589
|
if (this.coordinator) {
|
|
16560
16590
|
this.coordinator.stop();
|
|
16561
16591
|
}
|
|
16562
|
-
this.context.workClient.sendWorkerExit(status);
|
|
16563
16592
|
this.log("info", "WORKER", `Exiting with status: ${status} for task ${this.taskId}`);
|
|
16564
|
-
|
|
16593
|
+
if (status === "error" && errorMessage) {
|
|
16594
|
+
await this.context.workClient.sendErrorMessageAndExit(errorMessage);
|
|
16595
|
+
} else {
|
|
16596
|
+
this.context.workClient.sendWorkerExit(status);
|
|
16597
|
+
await this.context.workClient.disconnect();
|
|
16598
|
+
}
|
|
16565
16599
|
}
|
|
16566
16600
|
/**
|
|
16567
16601
|
* Reports git state and sends artifacts update to API.
|
|
@@ -16901,7 +16935,7 @@ cli.command("upgrade", "Upgrade CLI to the latest version", {}, async (argv) =>
|
|
|
16901
16935
|
}
|
|
16902
16936
|
}
|
|
16903
16937
|
try {
|
|
16904
|
-
const { version } = await import('./logger-
|
|
16938
|
+
const { version } = await import('./logger-7E71dnBD.mjs').then(function (n) { return n._; });
|
|
16905
16939
|
console.log(chalk.green(`
|
|
16906
16940
|
\u2713 Now running version: ${version}`));
|
|
16907
16941
|
} catch {
|
|
@@ -17083,7 +17117,7 @@ cli.command(
|
|
|
17083
17117
|
},
|
|
17084
17118
|
async (argv) => {
|
|
17085
17119
|
try {
|
|
17086
|
-
const { testCommand } = await import('./index-
|
|
17120
|
+
const { testCommand } = await import('./index-zM9f-RKY.mjs');
|
|
17087
17121
|
await testCommand(argv);
|
|
17088
17122
|
} catch (error) {
|
|
17089
17123
|
console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Test mode failed");
|
|
@@ -4,10 +4,10 @@ var React = require('react');
|
|
|
4
4
|
var ink = require('ink');
|
|
5
5
|
var TextInput = require('ink-text-input');
|
|
6
6
|
var SelectInput = require('ink-select-input');
|
|
7
|
-
var _package = require('./logger-
|
|
7
|
+
var _package = require('./logger-BZKdzrRM.cjs');
|
|
8
8
|
var shared = require('@agentrix/shared');
|
|
9
9
|
var require$$0$3 = require('events');
|
|
10
|
-
var index = require('./index-
|
|
10
|
+
var index = require('./index-Dw2iFM1t.cjs');
|
|
11
11
|
var require$$2$1 = require('http');
|
|
12
12
|
var fs = require('fs');
|
|
13
13
|
var require$$1$2 = require('zlib');
|
|
@@ -6,7 +6,7 @@ var chalk = require('chalk');
|
|
|
6
6
|
var shared = require('@agentrix/shared');
|
|
7
7
|
var node_crypto = require('node:crypto');
|
|
8
8
|
var axios = require('axios');
|
|
9
|
-
var _package = require('./logger-
|
|
9
|
+
var _package = require('./logger-BZKdzrRM.cjs');
|
|
10
10
|
var fs$1 = require('node:fs');
|
|
11
11
|
var node_readline = require('node:readline');
|
|
12
12
|
var fs = require('fs');
|
|
@@ -12613,6 +12613,29 @@ function createWorkerEventHandlers(context) {
|
|
|
12613
12613
|
class WorkerClient {
|
|
12614
12614
|
client;
|
|
12615
12615
|
context;
|
|
12616
|
+
/**
|
|
12617
|
+
* Static helper method to send error message and exit event
|
|
12618
|
+
* Used when worker fails during initialization before context is set up
|
|
12619
|
+
*
|
|
12620
|
+
* @param config - Worker client configuration
|
|
12621
|
+
* @param errorMessage - Error message to send to user
|
|
12622
|
+
*/
|
|
12623
|
+
static async sendErrorAndExit(config, errorMessage) {
|
|
12624
|
+
try {
|
|
12625
|
+
const workClient = new WorkerClient(config, {
|
|
12626
|
+
stopTask: async () => {
|
|
12627
|
+
},
|
|
12628
|
+
onTaskMessage: async () => {
|
|
12629
|
+
}
|
|
12630
|
+
});
|
|
12631
|
+
await workClient.connect();
|
|
12632
|
+
workClient.sendSystemErrorMessage(errorMessage);
|
|
12633
|
+
await workClient.client.flush(2e3);
|
|
12634
|
+
workClient.sendWorkerExit("error");
|
|
12635
|
+
await workClient.disconnect();
|
|
12636
|
+
} catch {
|
|
12637
|
+
}
|
|
12638
|
+
}
|
|
12616
12639
|
constructor(config, options) {
|
|
12617
12640
|
const { taskId, userId, machineId, cwd, ...socketConfig } = config;
|
|
12618
12641
|
const normalizedCwd = cwd.endsWith("/") ? cwd : `${cwd}/`;
|
|
@@ -12711,6 +12734,41 @@ class WorkerClient {
|
|
|
12711
12734
|
};
|
|
12712
12735
|
this.client.send("worker-exit", workerExitEvent);
|
|
12713
12736
|
}
|
|
12737
|
+
/**
|
|
12738
|
+
* Send system error message and worker exit event, then disconnect
|
|
12739
|
+
* Used when worker exits with error after context is set up
|
|
12740
|
+
*
|
|
12741
|
+
* @param errorMessage - Error message to send to user
|
|
12742
|
+
*/
|
|
12743
|
+
async sendErrorMessageAndExit(errorMessage) {
|
|
12744
|
+
this.sendSystemErrorMessage(errorMessage);
|
|
12745
|
+
await this.client.flush(2e3);
|
|
12746
|
+
this.sendWorkerExit("error");
|
|
12747
|
+
await this.disconnect();
|
|
12748
|
+
}
|
|
12749
|
+
sendSystemErrorMessage(errorMessage) {
|
|
12750
|
+
const systemMessage = {
|
|
12751
|
+
type: "assistant",
|
|
12752
|
+
session_id: "",
|
|
12753
|
+
uuid: crypto.randomUUID(),
|
|
12754
|
+
parent_tool_use_id: null,
|
|
12755
|
+
message: {
|
|
12756
|
+
role: "assistant",
|
|
12757
|
+
content: [
|
|
12758
|
+
{
|
|
12759
|
+
type: "text",
|
|
12760
|
+
text: `System Error
|
|
12761
|
+
|
|
12762
|
+
${errorMessage}`,
|
|
12763
|
+
metadata: {
|
|
12764
|
+
messageType: "system_error"
|
|
12765
|
+
}
|
|
12766
|
+
}
|
|
12767
|
+
]
|
|
12768
|
+
}
|
|
12769
|
+
};
|
|
12770
|
+
this.sendTaskMessage(systemMessage);
|
|
12771
|
+
}
|
|
12714
12772
|
sendRequirePermission(toolName, toolInput) {
|
|
12715
12773
|
const eventId = shared.createEventId();
|
|
12716
12774
|
const permissionRequest = {
|
|
@@ -13108,7 +13166,8 @@ async function handleGitState(workingDirectory, userId, taskId, commitMessage) {
|
|
|
13108
13166
|
throw new Error(`Initial commit hash not found for task ${taskId}`);
|
|
13109
13167
|
}
|
|
13110
13168
|
const lastSentHash = await _package.machine.readLastSentCommitHash(userId, taskId);
|
|
13111
|
-
const
|
|
13169
|
+
const baseHash = lastSentHash ?? initialHash;
|
|
13170
|
+
const hasNewCommits = currentCommitHash !== baseHash;
|
|
13112
13171
|
const dataDir = _package.machine.resolveDataDir(userId, taskId);
|
|
13113
13172
|
const patchPath = await generateAndSavePatch(
|
|
13114
13173
|
workingDirectory,
|
|
@@ -13481,7 +13540,8 @@ class ClaudeWorker {
|
|
|
13481
13540
|
await this.exitWorker("completed");
|
|
13482
13541
|
} else {
|
|
13483
13542
|
this.log("warn", "AGENT", "Fatal error:", error);
|
|
13484
|
-
|
|
13543
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
13544
|
+
await this.exitWorker("error", errorMessage);
|
|
13485
13545
|
throw error;
|
|
13486
13546
|
}
|
|
13487
13547
|
} finally {
|
|
@@ -13519,18 +13579,11 @@ class ClaudeWorker {
|
|
|
13519
13579
|
} catch (error) {
|
|
13520
13580
|
this.log("error", "GIT", "Failed to setup workspace:", error);
|
|
13521
13581
|
const basicConfig = this.createBasicWorkerConfig(userId, taskId, workingDirectory);
|
|
13522
|
-
|
|
13523
|
-
|
|
13524
|
-
|
|
13525
|
-
|
|
13526
|
-
|
|
13527
|
-
}
|
|
13528
|
-
});
|
|
13529
|
-
await workClient2.connect();
|
|
13530
|
-
workClient2.sendWorkerExit("error");
|
|
13531
|
-
await workClient2.disconnect();
|
|
13532
|
-
} catch {
|
|
13533
|
-
}
|
|
13582
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
13583
|
+
await WorkerClient.sendErrorAndExit(
|
|
13584
|
+
basicConfig,
|
|
13585
|
+
`Failed to setup workspace: ${errorMessage}`
|
|
13586
|
+
);
|
|
13534
13587
|
process.exit(1);
|
|
13535
13588
|
}
|
|
13536
13589
|
const idleTimeoutMs = Math.max(0, this.options.idleTimeoutSecond ?? 0) * 1e3;
|
|
@@ -14188,14 +14241,18 @@ URL: ${result.pullRequestUrl}`
|
|
|
14188
14241
|
}
|
|
14189
14242
|
};
|
|
14190
14243
|
}
|
|
14191
|
-
async exitWorker(status) {
|
|
14244
|
+
async exitWorker(status, errorMessage) {
|
|
14192
14245
|
if (this.coordinator) {
|
|
14193
14246
|
this.coordinator.stop();
|
|
14194
14247
|
}
|
|
14195
14248
|
if (this.context?.workClient) {
|
|
14196
|
-
this.context.workClient.sendWorkerExit(status);
|
|
14197
14249
|
this.log("info", "WORKER", `Exiting with status: ${status} for task ${this.taskId}`);
|
|
14198
|
-
|
|
14250
|
+
if (status === "error" && errorMessage) {
|
|
14251
|
+
await this.context.workClient.sendErrorMessageAndExit(errorMessage);
|
|
14252
|
+
} else {
|
|
14253
|
+
this.context.workClient.sendWorkerExit(status);
|
|
14254
|
+
await this.context.workClient.disconnect();
|
|
14255
|
+
}
|
|
14199
14256
|
}
|
|
14200
14257
|
}
|
|
14201
14258
|
logGitStateResult(gitStateResult, phase) {
|
|
@@ -14219,7 +14276,7 @@ URL: ${result.pullRequestUrl}`
|
|
|
14219
14276
|
}
|
|
14220
14277
|
}
|
|
14221
14278
|
async createLogger(options) {
|
|
14222
|
-
const { createLogger } = await Promise.resolve().then(function () { return require('./logger-
|
|
14279
|
+
const { createLogger } = await Promise.resolve().then(function () { return require('./logger-BZKdzrRM.cjs'); }).then(function (n) { return n.logger$1; });
|
|
14223
14280
|
return createLogger(options);
|
|
14224
14281
|
}
|
|
14225
14282
|
log(level, category, message, ...args) {
|
|
@@ -15902,7 +15959,8 @@ class CodexWorker {
|
|
|
15902
15959
|
await this.exitWorker("completed");
|
|
15903
15960
|
} else {
|
|
15904
15961
|
this.log("warn", "AGENT", "Fatal error:", error);
|
|
15905
|
-
|
|
15962
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
15963
|
+
await this.exitWorker("error", errorMessage);
|
|
15906
15964
|
throw error;
|
|
15907
15965
|
}
|
|
15908
15966
|
} finally {
|
|
@@ -15937,18 +15995,11 @@ class CodexWorker {
|
|
|
15937
15995
|
} catch (error) {
|
|
15938
15996
|
this.log("error", "GIT", "Failed to setup workspace:", error);
|
|
15939
15997
|
const basicConfig = this.createBasicWorkerConfig(userId, taskId, workingDirectory);
|
|
15940
|
-
|
|
15941
|
-
|
|
15942
|
-
|
|
15943
|
-
|
|
15944
|
-
|
|
15945
|
-
}
|
|
15946
|
-
});
|
|
15947
|
-
await workClient2.connect();
|
|
15948
|
-
workClient2.sendWorkerExit("error");
|
|
15949
|
-
await workClient2.disconnect();
|
|
15950
|
-
} catch {
|
|
15951
|
-
}
|
|
15998
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
15999
|
+
await WorkerClient.sendErrorAndExit(
|
|
16000
|
+
basicConfig,
|
|
16001
|
+
`Failed to setup workspace: ${errorMessage}`
|
|
16002
|
+
);
|
|
15952
16003
|
process.exit(1);
|
|
15953
16004
|
}
|
|
15954
16005
|
const idleTimeoutMs = Math.max(0, this.options.idleTimeoutSecond ?? 0) * 1e3;
|
|
@@ -16170,28 +16221,7 @@ ${stats.files.map((f) => ` ${f.path}: +${f.insertions}/-${f.deletions}`).join("
|
|
|
16170
16221
|
this.timerManager.clearIdleTimer();
|
|
16171
16222
|
this.toolIdMap.clear();
|
|
16172
16223
|
let input = userInput;
|
|
16173
|
-
if (this.turnCount === 0)
|
|
16174
|
-
const agentConfig = await this.loadAgentConfiguration();
|
|
16175
|
-
const systemPrompt = buildSystemPrompt(
|
|
16176
|
-
agentConfig.customSystemPrompt,
|
|
16177
|
-
agentConfig.systemPromptMode
|
|
16178
|
-
);
|
|
16179
|
-
const sysPrompt = systemPrompt instanceof String ? systemPrompt : systemPrompt.append;
|
|
16180
|
-
if (sysPrompt) {
|
|
16181
|
-
if (typeof userInput === "string") {
|
|
16182
|
-
input = `${sysPrompt}
|
|
16183
|
-
|
|
16184
|
-
---
|
|
16185
|
-
|
|
16186
|
-
${userInput}`;
|
|
16187
|
-
} else {
|
|
16188
|
-
input = [
|
|
16189
|
-
{ type: "text", text: sysPrompt },
|
|
16190
|
-
...userInput
|
|
16191
|
-
];
|
|
16192
|
-
}
|
|
16193
|
-
}
|
|
16194
|
-
}
|
|
16224
|
+
if (this.turnCount === 0) ;
|
|
16195
16225
|
const turnOptions = this.inMergeRequest ? { outputSchema: getPROutputSchema() } : {};
|
|
16196
16226
|
this.log("debug", "AGENT", "Calling thread.runStreamed");
|
|
16197
16227
|
const { events } = await this.thread.runStreamed(input, turnOptions);
|
|
@@ -16575,13 +16605,17 @@ URL: ${result.pullRequestUrl}`);
|
|
|
16575
16605
|
}
|
|
16576
16606
|
};
|
|
16577
16607
|
}
|
|
16578
|
-
async exitWorker(status) {
|
|
16608
|
+
async exitWorker(status, errorMessage) {
|
|
16579
16609
|
if (this.coordinator) {
|
|
16580
16610
|
this.coordinator.stop();
|
|
16581
16611
|
}
|
|
16582
|
-
this.context.workClient.sendWorkerExit(status);
|
|
16583
16612
|
this.log("info", "WORKER", `Exiting with status: ${status} for task ${this.taskId}`);
|
|
16584
|
-
|
|
16613
|
+
if (status === "error" && errorMessage) {
|
|
16614
|
+
await this.context.workClient.sendErrorMessageAndExit(errorMessage);
|
|
16615
|
+
} else {
|
|
16616
|
+
this.context.workClient.sendWorkerExit(status);
|
|
16617
|
+
await this.context.workClient.disconnect();
|
|
16618
|
+
}
|
|
16585
16619
|
}
|
|
16586
16620
|
/**
|
|
16587
16621
|
* Reports git state and sends artifacts update to API.
|
|
@@ -16921,7 +16955,7 @@ cli.command("upgrade", "Upgrade CLI to the latest version", {}, async (argv) =>
|
|
|
16921
16955
|
}
|
|
16922
16956
|
}
|
|
16923
16957
|
try {
|
|
16924
|
-
const { version } = await Promise.resolve().then(function () { return require('./logger-
|
|
16958
|
+
const { version } = await Promise.resolve().then(function () { return require('./logger-BZKdzrRM.cjs'); }).then(function (n) { return n._package; });
|
|
16925
16959
|
console.log(chalk.green(`
|
|
16926
16960
|
\u2713 Now running version: ${version}`));
|
|
16927
16961
|
} catch {
|
|
@@ -17103,7 +17137,7 @@ cli.command(
|
|
|
17103
17137
|
},
|
|
17104
17138
|
async (argv) => {
|
|
17105
17139
|
try {
|
|
17106
|
-
const { testCommand } = await Promise.resolve().then(function () { return require('./index-
|
|
17140
|
+
const { testCommand } = await Promise.resolve().then(function () { return require('./index-DuBvuZ3A.cjs'); });
|
|
17107
17141
|
await testCommand(argv);
|
|
17108
17142
|
} catch (error) {
|
|
17109
17143
|
console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Test mode failed");
|
|
@@ -2,10 +2,10 @@ import{createRequire as _pkgrollCR}from"node:module";const require=_pkgrollCR(im
|
|
|
2
2
|
import { Box, Text, useInput, useApp, render } from 'ink';
|
|
3
3
|
import TextInput from 'ink-text-input';
|
|
4
4
|
import SelectInput from 'ink-select-input';
|
|
5
|
-
import { m as machine } from './logger-
|
|
5
|
+
import { m as machine } from './logger-7E71dnBD.mjs';
|
|
6
6
|
import { loadAgentConfig, createEventId } from '@agentrix/shared';
|
|
7
7
|
import require$$0$3, { EventEmitter } from 'events';
|
|
8
|
-
import { r as requireMimeTypes, g as getAugmentedNamespace, a as getDefaultExportFromCjs, s as spawnAgentrixCLI } from './index-
|
|
8
|
+
import { r as requireMimeTypes, g as getAugmentedNamespace, a as getDefaultExportFromCjs, s as spawnAgentrixCLI } from './index-CvGINSkT.mjs';
|
|
9
9
|
import require$$2$1, { createServer } from 'http';
|
|
10
10
|
import fs from 'fs';
|
|
11
11
|
import require$$1$2 from 'zlib';
|
package/dist/index.cjs
CHANGED
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
require('yargs');
|
|
4
4
|
require('yargs/helpers');
|
|
5
5
|
require('chalk');
|
|
6
|
-
require('./index-
|
|
7
|
-
require('./logger-
|
|
6
|
+
require('./index-Dw2iFM1t.cjs');
|
|
7
|
+
require('./logger-BZKdzrRM.cjs');
|
|
8
8
|
require('@agentrix/shared');
|
|
9
9
|
require('node:crypto');
|
|
10
10
|
require('axios');
|
package/dist/index.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import 'yargs';
|
|
2
2
|
import 'yargs/helpers';
|
|
3
3
|
import 'chalk';
|
|
4
|
-
import './index-
|
|
5
|
-
import './logger-
|
|
4
|
+
import './index-CvGINSkT.mjs';
|
|
5
|
+
import './logger-7E71dnBD.mjs';
|
|
6
6
|
import '@agentrix/shared';
|
|
7
7
|
import 'node:crypto';
|
|
8
8
|
import 'axios';
|
package/dist/lib.cjs
CHANGED
package/dist/lib.mjs
CHANGED
|
@@ -10,7 +10,7 @@ import { dirname, resolve } from 'path';
|
|
|
10
10
|
import { fileURLToPath } from 'url';
|
|
11
11
|
|
|
12
12
|
var name = "@agentrix/cli";
|
|
13
|
-
var version = "0.0.
|
|
13
|
+
var version = "0.0.11";
|
|
14
14
|
var description = "Mobile and Web client for Claude Code and Codex";
|
|
15
15
|
var author = "agentrix.xmz.ai";
|
|
16
16
|
var type = "module";
|
|
@@ -13,7 +13,7 @@ var require$$7 = require('url');
|
|
|
13
13
|
|
|
14
14
|
var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
|
|
15
15
|
var name = "@agentrix/cli";
|
|
16
|
-
var version = "0.0.
|
|
16
|
+
var version = "0.0.11";
|
|
17
17
|
var description = "Mobile and Web client for Claude Code and Codex";
|
|
18
18
|
var author = "agentrix.xmz.ai";
|
|
19
19
|
var type = "module";
|
|
@@ -189,7 +189,7 @@ var _package = /*#__PURE__*/Object.freeze({
|
|
|
189
189
|
version: version
|
|
190
190
|
});
|
|
191
191
|
|
|
192
|
-
const __dirname$1 = path.dirname(require$$7.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('logger-
|
|
192
|
+
const __dirname$1 = path.dirname(require$$7.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('logger-BZKdzrRM.cjs', document.baseURI).href))));
|
|
193
193
|
function projectPath() {
|
|
194
194
|
const path$1 = path.resolve(__dirname$1, "..");
|
|
195
195
|
return path$1;
|