crewx-agent-cli 0.2.2 → 0.2.4
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 +80 -5
- package/dist/adapters.d.ts +12 -0
- package/dist/adapters.d.ts.map +1 -1
- package/dist/adapters.js +139 -42
- package/dist/adapters.js.map +1 -1
- package/dist/api.d.ts +40 -17
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +187 -11
- package/dist/api.js.map +1 -1
- package/dist/bridge-watchdog.d.ts +10 -0
- package/dist/bridge-watchdog.d.ts.map +1 -0
- package/dist/bridge-watchdog.js +45 -0
- package/dist/bridge-watchdog.js.map +1 -0
- package/dist/config.d.ts +9 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +53 -2
- package/dist/config.js.map +1 -1
- package/dist/constants.d.ts +6 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +11 -1
- package/dist/constants.js.map +1 -1
- package/dist/daemon.d.ts +34 -2
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +495 -100
- package/dist/daemon.js.map +1 -1
- package/dist/errors.d.ts +4 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +3 -1
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17 -6
- package/dist/index.js.map +1 -1
- package/dist/join.d.ts +1 -0
- package/dist/join.d.ts.map +1 -1
- package/dist/join.js +13 -0
- package/dist/join.js.map +1 -1
- package/dist/outbox.d.ts +22 -0
- package/dist/outbox.d.ts.map +1 -0
- package/dist/outbox.js +189 -0
- package/dist/outbox.js.map +1 -0
- package/dist/process-lock.d.ts +31 -0
- package/dist/process-lock.d.ts.map +1 -0
- package/dist/process-lock.js +272 -0
- package/dist/process-lock.js.map +1 -0
- package/dist/prompt.d.ts.map +1 -1
- package/dist/prompt.js +7 -0
- package/dist/prompt.js.map +1 -1
- package/dist/runtime-proxy.d.ts +18 -0
- package/dist/runtime-proxy.d.ts.map +1 -0
- package/dist/runtime-proxy.js +221 -0
- package/dist/runtime-proxy.js.map +1 -0
- package/package.json +6 -2
package/dist/constants.js
CHANGED
|
@@ -1,8 +1,18 @@
|
|
|
1
|
+
import { readFileSync } from 'node:fs';
|
|
2
|
+
const packageMetadata = JSON.parse(readFileSync(new URL('../package.json', import.meta.url), 'utf8'));
|
|
3
|
+
if (typeof packageMetadata.version !== 'string') {
|
|
4
|
+
throw new Error('CrewX agent CLI package metadata does not contain a version.');
|
|
5
|
+
}
|
|
1
6
|
export const CLI_NAME = 'crewx';
|
|
2
|
-
export const CLI_VERSION =
|
|
7
|
+
export const CLI_VERSION = packageMetadata.version;
|
|
3
8
|
export const API_PATH = '/api/agent/v1';
|
|
4
9
|
export const DEFAULT_ADAPTER = 'codex';
|
|
5
10
|
export const DEFAULT_POLL_INTERVAL_MS = 2_000;
|
|
11
|
+
export const DEFAULT_API_REQUEST_TIMEOUT_MS = 20_000;
|
|
12
|
+
export const MAX_API_RESPONSE_BYTES = 2 * 1024 * 1024;
|
|
13
|
+
export const MAX_BUFFERED_EVENT_BYTES = 2 * 1024 * 1024;
|
|
14
|
+
export const MAX_BUFFERED_EVENTS = 512;
|
|
15
|
+
export const MAX_EVENT_BATCH_BYTES = 512 * 1024;
|
|
6
16
|
export const DEFAULT_RUN_TIMEOUT_MS = 30 * 60 * 1_000;
|
|
7
17
|
export const MAX_AGENT_OUTPUT_BYTES = 16 * 1024 * 1024;
|
|
8
18
|
export const MAX_EVENT_CONTENT_LENGTH = 32_000;
|
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,QAAQ,GAAG,OAAO,CAAC;AAChC,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAChC,YAAY,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CACzC,CAAC;AAE3B,IAAI,OAAO,eAAe,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;IAChD,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;AAClF,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,OAAO,CAAC;AAChC,MAAM,CAAC,MAAM,WAAW,GAAG,eAAe,CAAC,OAAO,CAAC;AACnD,MAAM,CAAC,MAAM,QAAQ,GAAG,eAAe,CAAC;AACxC,MAAM,CAAC,MAAM,eAAe,GAAG,OAAO,CAAC;AACvC,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC;AAC9C,MAAM,CAAC,MAAM,8BAA8B,GAAG,MAAM,CAAC;AACrD,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AACtD,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AACxD,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AACvC,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,GAAG,IAAI,CAAC;AAChD,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC;AACtD,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AACvD,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC;AAC/C,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC"}
|
package/dist/daemon.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { type AgentAdapter, type Assignment, type OutboundEvent } from "crewx-agent-protocol";
|
|
2
|
-
import { runAdapter, type ParsedAdapterLine } from "./adapters.js";
|
|
2
|
+
import { runAdapter, verifyOpenClawRuntime, type ParsedAdapterLine } from "./adapters.js";
|
|
3
3
|
import { CrewXApi } from "./api.js";
|
|
4
|
+
import { DurableEventOutbox, type EventOutbox } from "./outbox.js";
|
|
5
|
+
import { type AgentProcessLockLike } from "./process-lock.js";
|
|
4
6
|
export declare function compactNativeRuntimeDiagnostic(adapter: AgentAdapter, parsed: ParsedAdapterLine): string | undefined;
|
|
5
7
|
export declare function runtimeSessionKey(serverUrl: string, context: Record<string, unknown>, assignmentId: string): string;
|
|
6
8
|
export declare function assignmentWorkingDirectory(assignment: Assignment, context: Record<string, unknown>, fallback: string, lockedRoot?: string): string;
|
|
@@ -8,14 +10,40 @@ export declare class EventBuffer {
|
|
|
8
10
|
private readonly api;
|
|
9
11
|
private readonly sessionId;
|
|
10
12
|
private readonly queue;
|
|
13
|
+
private readonly inFlight;
|
|
11
14
|
private flushing;
|
|
12
15
|
private retryNotBefore;
|
|
13
16
|
private consecutiveFailures;
|
|
14
|
-
|
|
17
|
+
private readonly maxEvents;
|
|
18
|
+
private readonly maxBytes;
|
|
19
|
+
private readonly random;
|
|
20
|
+
private durableSnapshot;
|
|
21
|
+
constructor(api: CrewXApi, sessionId: string, options?: {
|
|
22
|
+
maxEvents?: number;
|
|
23
|
+
maxBytes?: number;
|
|
24
|
+
random?: () => number;
|
|
25
|
+
outbox?: EventOutbox;
|
|
26
|
+
});
|
|
27
|
+
private readonly outbox;
|
|
15
28
|
push(item: OutboundEvent): void;
|
|
29
|
+
pushMany(items: readonly OutboundEvent[]): void;
|
|
30
|
+
pendingCount(): number;
|
|
31
|
+
pendingBytes(): number;
|
|
32
|
+
hasPendingTerminalOutcome(assignmentId: string): boolean;
|
|
16
33
|
flush(signal?: AbortSignal): Promise<void>;
|
|
17
34
|
private drain;
|
|
35
|
+
private coalesce;
|
|
36
|
+
private findNewestIndex;
|
|
37
|
+
private eventPriority;
|
|
38
|
+
private eventBytes;
|
|
39
|
+
private persistDurableEvents;
|
|
40
|
+
private serializeDurableEvents;
|
|
41
|
+
private enforceBounds;
|
|
18
42
|
}
|
|
43
|
+
export declare function adaptiveIdlePollDelay(baseDelayMs: number, consecutiveEmptyPolls: number, options?: {
|
|
44
|
+
retryAfterMs?: number;
|
|
45
|
+
random?: () => number;
|
|
46
|
+
}): number;
|
|
19
47
|
export interface AssignmentExecutionOptions {
|
|
20
48
|
assignment: Assignment;
|
|
21
49
|
adapter: AgentAdapter;
|
|
@@ -25,6 +53,7 @@ export interface AssignmentExecutionOptions {
|
|
|
25
53
|
codingCommand?: string | undefined;
|
|
26
54
|
environment?: NodeJS.ProcessEnv | undefined;
|
|
27
55
|
serverUrl: string;
|
|
56
|
+
sessionId?: string | undefined;
|
|
28
57
|
signal?: AbortSignal | undefined;
|
|
29
58
|
runAgent?: typeof runAdapter | undefined;
|
|
30
59
|
}
|
|
@@ -43,6 +72,9 @@ export interface DaemonOptions {
|
|
|
43
72
|
signal?: AbortSignal | undefined;
|
|
44
73
|
log?: ((message: string) => void) | undefined;
|
|
45
74
|
executeAssignment?: AssignmentExecutor | undefined;
|
|
75
|
+
verifyOpenClaw?: typeof verifyOpenClawRuntime | undefined;
|
|
76
|
+
outbox?: DurableEventOutbox | undefined;
|
|
77
|
+
processLock?: AgentProcessLockLike | undefined;
|
|
46
78
|
}
|
|
47
79
|
export declare function runDaemon(options: DaemonOptions): Promise<void>;
|
|
48
80
|
//# sourceMappingURL=daemon.d.ts.map
|
package/dist/daemon.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,UAAU,EAEf,KAAK,aAAa,EACnB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,
|
|
1
|
+
{"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
|