@parall/claude-agent 1.50.1 → 1.52.0
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/dispatch.d.ts +23 -16
- package/dist/dispatch.d.ts.map +1 -1
- package/dist/dispatch.js +297 -182
- package/dist/input-lifecycle.d.ts +39 -0
- package/dist/input-lifecycle.d.ts.map +1 -0
- package/dist/input-lifecycle.js +97 -0
- package/dist/output-parser.d.ts +37 -2
- package/dist/output-parser.d.ts.map +1 -1
- package/dist/output-parser.js +94 -3
- package/dist/turn-outcome.d.ts +10 -0
- package/dist/turn-outcome.d.ts.map +1 -0
- package/dist/turn-outcome.js +173 -0
- package/package.json +4 -4
- package/src/dispatch.ts +316 -189
- package/src/input-lifecycle.ts +137 -0
- package/src/output-parser.ts +137 -5
- package/src/turn-outcome.ts +177 -0
package/dist/dispatch.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { CleanupForkOpts, DispatchAdapter, DispatchOpts, ForkOpts, RuntimeEvent } from '@parall/agent-core';
|
|
1
|
+
import type { CleanupForkOpts, DispatchAdapter, DispatchInputLifecycle, DispatchOpts, ForkOpts, RuntimeEvent } from '@parall/agent-core';
|
|
2
2
|
import type { ClaudeAgentConfig } from './config.js';
|
|
3
|
-
import { ClaudeSessionManager } from './session-manager.js';
|
|
3
|
+
import type { ClaudeSessionManager } from './session-manager.js';
|
|
4
4
|
type ClaudeCodeAdapterOptions = Pick<ClaudeAgentConfig, 'additionalDirs' | 'allowApiKey' | 'allowedTools' | 'appendSystemPrompt' | 'claudeBin' | 'claudeHome' | 'disallowedTools' | 'model' | 'permissionMode' | 'workspaceDir'> & {
|
|
5
5
|
sessionManager: ClaudeSessionManager;
|
|
6
6
|
apiUrl: string;
|
|
@@ -35,8 +35,10 @@ export declare function buildSpawnEnv(parentEnv: NodeJS.ProcessEnv, claudeHome:
|
|
|
35
35
|
}): NodeJS.ProcessEnv;
|
|
36
36
|
export declare class ClaudeCodeAdapter implements DispatchAdapter {
|
|
37
37
|
private readonly opts;
|
|
38
|
+
readonly inputLifecycleMode: "explicit";
|
|
38
39
|
private readonly processes;
|
|
39
|
-
private
|
|
40
|
+
private capabilityProbe?;
|
|
41
|
+
private capabilityProbeHandle?;
|
|
40
42
|
private shuttingDown;
|
|
41
43
|
private _model;
|
|
42
44
|
private _effortLevel;
|
|
@@ -48,32 +50,37 @@ export declare class ClaudeCodeAdapter implements DispatchAdapter {
|
|
|
48
50
|
effort?: string | null;
|
|
49
51
|
}): void;
|
|
50
52
|
requestProcessRestart(): void;
|
|
51
|
-
enqueueDuringDispatch(sessionKey: string, body: string): boolean;
|
|
53
|
+
enqueueDuringDispatch(sessionKey: string, body: string, inputLifecycle?: DispatchInputLifecycle): boolean;
|
|
52
54
|
abortDispatch(sessionKey: string): void;
|
|
53
55
|
hasPendingInjections(sessionKey: string): boolean;
|
|
54
|
-
dispatch({ event, bodyForAgent, sessionKey, context, }: DispatchOpts): AsyncIterable<RuntimeEvent>;
|
|
56
|
+
dispatch({ event, bodyForAgent, sessionKey, context, inputLifecycle, }: DispatchOpts): AsyncIterable<RuntimeEvent>;
|
|
55
57
|
getBranchPoint(_sessionKey: string): string | undefined;
|
|
56
58
|
getSessionHistoryPath(sessionKey: string): string | undefined;
|
|
57
59
|
forkSession({ sessionKey }: ForkOpts): import("@parall/agent-core").ForkSessionHandle | null;
|
|
58
60
|
cleanupFork({ fork }: CleanupForkOpts): void;
|
|
59
61
|
resetProcesses(): void;
|
|
60
62
|
shutdown(): Promise<void>;
|
|
61
|
-
private
|
|
63
|
+
private runTurn;
|
|
64
|
+
private ensureRuntimeCapability;
|
|
62
65
|
/**
|
|
63
|
-
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
* On timeout, the losing parser.next() promise is saved to
|
|
69
|
-
* state.steerReadPending so the next runTurn can drain it instead of
|
|
70
|
-
* silently losing the first event of the subsequent turn.
|
|
66
|
+
* Claude does not emit system.init until it receives its first stdin
|
|
67
|
+
* command (2.1.220 emits queued/started before init). Probe a throwaway
|
|
68
|
+
* process with an empty, non-WorkItem command; only after its init
|
|
69
|
+
* advertises msg_lifecycle_v1 may any business input enter a real process.
|
|
71
70
|
*/
|
|
72
|
-
private
|
|
73
|
-
|
|
71
|
+
private probeRuntimeCapability;
|
|
72
|
+
/**
|
|
73
|
+
* Drain the shared stdout stream until the exact UUID written for target
|
|
74
|
+
* reaches a terminal lifecycle state. Other injected inputs may start and
|
|
75
|
+
* finish while this drain is active; their callbacks advance independently
|
|
76
|
+
* and their later bookkeeping dispatch becomes a no-op.
|
|
77
|
+
*/
|
|
78
|
+
private consumeDelivery;
|
|
74
79
|
private ensureProcess;
|
|
75
80
|
private spawnProcess;
|
|
76
81
|
private killProcess;
|
|
82
|
+
private terminateHandle;
|
|
83
|
+
private writeCapabilityProbe;
|
|
77
84
|
private writeUserMessage;
|
|
78
85
|
private buildArgs;
|
|
79
86
|
private buildPlaceholderContext;
|
package/dist/dispatch.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dispatch.d.ts","sourceRoot":"","sources":["../src/dispatch.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,YAAY,EACZ,QAAQ,EAER,YAAY,EACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"dispatch.d.ts","sourceRoot":"","sources":["../src/dispatch.ts"],"names":[],"mappings":"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"}
|