@openrouter/agent 0.1.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/README.md +367 -0
- package/esm/api-shape-helpers/claude-message.d.ts +218 -0
- package/esm/api-shape-helpers/claude-message.d.ts.map +1 -0
- package/esm/api-shape-helpers/claude-message.js +6 -0
- package/esm/api-shape-helpers/claude-message.js.map +1 -0
- package/esm/index.d.ts +22 -0
- package/esm/index.d.ts.map +1 -0
- package/esm/index.js +27 -0
- package/esm/index.js.map +1 -0
- package/esm/inner-loop/call-model.d.ts +67 -0
- package/esm/inner-loop/call-model.d.ts.map +1 -0
- package/esm/inner-loop/call-model.js +116 -0
- package/esm/inner-loop/call-model.js.map +1 -0
- package/esm/lib/anthropic-compat.d.ts +51 -0
- package/esm/lib/anthropic-compat.d.ts.map +1 -0
- package/esm/lib/anthropic-compat.js +216 -0
- package/esm/lib/anthropic-compat.js.map +1 -0
- package/esm/lib/anthropic-compat.test.d.ts +2 -0
- package/esm/lib/anthropic-compat.test.d.ts.map +1 -0
- package/esm/lib/anthropic-compat.test.js +668 -0
- package/esm/lib/anthropic-compat.test.js.map +1 -0
- package/esm/lib/async-params.d.ts +107 -0
- package/esm/lib/async-params.d.ts.map +1 -0
- package/esm/lib/async-params.js +94 -0
- package/esm/lib/async-params.js.map +1 -0
- package/esm/lib/chat-compat.d.ts +46 -0
- package/esm/lib/chat-compat.d.ts.map +1 -0
- package/esm/lib/chat-compat.js +111 -0
- package/esm/lib/chat-compat.js.map +1 -0
- package/esm/lib/chat-compat.test.d.ts +2 -0
- package/esm/lib/chat-compat.test.d.ts.map +1 -0
- package/esm/lib/chat-compat.test.js +405 -0
- package/esm/lib/chat-compat.test.js.map +1 -0
- package/esm/lib/claude-constants.d.ts +22 -0
- package/esm/lib/claude-constants.d.ts.map +1 -0
- package/esm/lib/claude-constants.js +20 -0
- package/esm/lib/claude-constants.js.map +1 -0
- package/esm/lib/claude-type-guards.d.ts +10 -0
- package/esm/lib/claude-type-guards.d.ts.map +1 -0
- package/esm/lib/claude-type-guards.js +68 -0
- package/esm/lib/claude-type-guards.js.map +1 -0
- package/esm/lib/conversation-state.d.ts +61 -0
- package/esm/lib/conversation-state.d.ts.map +1 -0
- package/esm/lib/conversation-state.js +230 -0
- package/esm/lib/conversation-state.js.map +1 -0
- package/esm/lib/model-result.d.ts +370 -0
- package/esm/lib/model-result.d.ts.map +1 -0
- package/esm/lib/model-result.js +1483 -0
- package/esm/lib/model-result.js.map +1 -0
- package/esm/lib/next-turn-params.d.ts +30 -0
- package/esm/lib/next-turn-params.d.ts.map +1 -0
- package/esm/lib/next-turn-params.js +129 -0
- package/esm/lib/next-turn-params.js.map +1 -0
- package/esm/lib/reusable-stream.d.ts +39 -0
- package/esm/lib/reusable-stream.d.ts.map +1 -0
- package/esm/lib/reusable-stream.js +192 -0
- package/esm/lib/reusable-stream.js.map +1 -0
- package/esm/lib/stop-conditions.d.ts +80 -0
- package/esm/lib/stop-conditions.d.ts.map +1 -0
- package/esm/lib/stop-conditions.js +104 -0
- package/esm/lib/stop-conditions.js.map +1 -0
- package/esm/lib/stream-transformers.d.ts +109 -0
- package/esm/lib/stream-transformers.d.ts.map +1 -0
- package/esm/lib/stream-transformers.js +856 -0
- package/esm/lib/stream-transformers.js.map +1 -0
- package/esm/lib/stream-type-guards.d.ts +29 -0
- package/esm/lib/stream-type-guards.d.ts.map +1 -0
- package/esm/lib/stream-type-guards.js +85 -0
- package/esm/lib/stream-type-guards.js.map +1 -0
- package/esm/lib/tool-context.d.ts +68 -0
- package/esm/lib/tool-context.d.ts.map +1 -0
- package/esm/lib/tool-context.js +188 -0
- package/esm/lib/tool-context.js.map +1 -0
- package/esm/lib/tool-event-broadcaster.d.ts +44 -0
- package/esm/lib/tool-event-broadcaster.d.ts.map +1 -0
- package/esm/lib/tool-event-broadcaster.js +162 -0
- package/esm/lib/tool-event-broadcaster.js.map +1 -0
- package/esm/lib/tool-executor.d.ts +73 -0
- package/esm/lib/tool-executor.d.ts.map +1 -0
- package/esm/lib/tool-executor.js +267 -0
- package/esm/lib/tool-executor.js.map +1 -0
- package/esm/lib/tool-orchestrator.d.ts +50 -0
- package/esm/lib/tool-orchestrator.d.ts.map +1 -0
- package/esm/lib/tool-orchestrator.js +180 -0
- package/esm/lib/tool-orchestrator.js.map +1 -0
- package/esm/lib/tool-types.d.ts +572 -0
- package/esm/lib/tool-types.d.ts.map +1 -0
- package/esm/lib/tool-types.js +80 -0
- package/esm/lib/tool-types.js.map +1 -0
- package/esm/lib/tool.d.ts +108 -0
- package/esm/lib/tool.d.ts.map +1 -0
- package/esm/lib/tool.js +84 -0
- package/esm/lib/tool.js.map +1 -0
- package/esm/lib/turn-context.d.ts +50 -0
- package/esm/lib/turn-context.d.ts.map +1 -0
- package/esm/lib/turn-context.js +61 -0
- package/esm/lib/turn-context.js.map +1 -0
- package/package.json +125 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-result.js","sourceRoot":"","sources":["../../src/lib/model-result.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type * as models from '@openrouter/sdk/models';
|
|
2
|
+
import type { NextTurnParamsContext, ParsedToolCall, Tool } from './tool-types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Build a NextTurnParamsContext from the current request
|
|
5
|
+
* Extracts relevant fields that can be modified by nextTurnParams functions
|
|
6
|
+
*
|
|
7
|
+
* @param request - The current ResponsesRequest
|
|
8
|
+
* @returns Context object with current parameter values
|
|
9
|
+
*/
|
|
10
|
+
export declare function buildNextTurnParamsContext(request: models.ResponsesRequest): NextTurnParamsContext;
|
|
11
|
+
/**
|
|
12
|
+
* Execute nextTurnParams functions for all called tools
|
|
13
|
+
* Composes functions when multiple tools modify the same parameter
|
|
14
|
+
*
|
|
15
|
+
* @param toolCalls - Tool calls that were executed in this turn
|
|
16
|
+
* @param tools - All available tools
|
|
17
|
+
* @param currentRequest - The current request
|
|
18
|
+
* @returns Object with computed parameter values
|
|
19
|
+
*/
|
|
20
|
+
export declare function executeNextTurnParamsFunctions(toolCalls: ParsedToolCall<Tool>[], tools: readonly Tool[], currentRequest: models.ResponsesRequest): Promise<Partial<NextTurnParamsContext>>;
|
|
21
|
+
/**
|
|
22
|
+
* Apply computed nextTurnParams to the current request
|
|
23
|
+
* Returns a new request object with updated parameters
|
|
24
|
+
*
|
|
25
|
+
* @param request - The current request
|
|
26
|
+
* @param computedParams - Computed parameter values from nextTurnParams functions
|
|
27
|
+
* @returns New request with updated parameters
|
|
28
|
+
*/
|
|
29
|
+
export declare function applyNextTurnParamsToRequest(request: models.ResponsesRequest, computedParams: Partial<NextTurnParamsContext>): models.ResponsesRequest;
|
|
30
|
+
//# sourceMappingURL=next-turn-params.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"next-turn-params.d.ts","sourceRoot":"","sources":["../../src/lib/next-turn-params.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,EAAE,qBAAqB,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AASnF;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,CAAC,gBAAgB,GAC/B,qBAAqB,CAWvB;AAED;;;;;;;;GAQG;AACH,wBAAsB,8BAA8B,CAClD,SAAS,EAAE,cAAc,CAAC,IAAI,CAAC,EAAE,EACjC,KAAK,EAAE,SAAS,IAAI,EAAE,EACtB,cAAc,EAAE,MAAM,CAAC,gBAAgB,GACtC,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,CA2CzC;AAwED;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,CAAC,gBAAgB,EAChC,cAAc,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAC7C,MAAM,CAAC,gBAAgB,CAKzB"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type guard to check if a value is a Record<string, unknown>
|
|
3
|
+
*/
|
|
4
|
+
function isRecord(value) {
|
|
5
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Build a NextTurnParamsContext from the current request
|
|
9
|
+
* Extracts relevant fields that can be modified by nextTurnParams functions
|
|
10
|
+
*
|
|
11
|
+
* @param request - The current ResponsesRequest
|
|
12
|
+
* @returns Context object with current parameter values
|
|
13
|
+
*/
|
|
14
|
+
export function buildNextTurnParamsContext(request) {
|
|
15
|
+
return {
|
|
16
|
+
input: request.input ?? [],
|
|
17
|
+
model: request.model ?? '',
|
|
18
|
+
models: request.models ?? [],
|
|
19
|
+
temperature: request.temperature ?? null,
|
|
20
|
+
maxOutputTokens: request.maxOutputTokens ?? null,
|
|
21
|
+
topP: request.topP ?? null,
|
|
22
|
+
topK: request.topK,
|
|
23
|
+
instructions: request.instructions ?? null,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Execute nextTurnParams functions for all called tools
|
|
28
|
+
* Composes functions when multiple tools modify the same parameter
|
|
29
|
+
*
|
|
30
|
+
* @param toolCalls - Tool calls that were executed in this turn
|
|
31
|
+
* @param tools - All available tools
|
|
32
|
+
* @param currentRequest - The current request
|
|
33
|
+
* @returns Object with computed parameter values
|
|
34
|
+
*/
|
|
35
|
+
export async function executeNextTurnParamsFunctions(toolCalls, tools, currentRequest) {
|
|
36
|
+
// Build initial context from current request
|
|
37
|
+
const context = buildNextTurnParamsContext(currentRequest);
|
|
38
|
+
// Collect all nextTurnParams functions from tools (in tools array order)
|
|
39
|
+
const result = {};
|
|
40
|
+
const workingContext = {
|
|
41
|
+
...context,
|
|
42
|
+
};
|
|
43
|
+
for (const tool of tools) {
|
|
44
|
+
if (!tool.function.nextTurnParams) {
|
|
45
|
+
continue;
|
|
46
|
+
}
|
|
47
|
+
// Find tool calls for this tool
|
|
48
|
+
const callsForTool = toolCalls.filter((tc) => tc.name === tool.function.name);
|
|
49
|
+
for (const call of callsForTool) {
|
|
50
|
+
// For each parameter function in this tool's nextTurnParams
|
|
51
|
+
// We need to process each key individually to maintain type safety
|
|
52
|
+
const nextParams = tool.function.nextTurnParams;
|
|
53
|
+
// Validate that call.arguments is a record using type guard
|
|
54
|
+
if (!isRecord(call.arguments)) {
|
|
55
|
+
const typeStr = Array.isArray(call.arguments) ? 'array' : typeof call.arguments;
|
|
56
|
+
throw new Error(`Tool call arguments for ${tool.function.name} must be an object, got ${typeStr}`);
|
|
57
|
+
}
|
|
58
|
+
// Process each parameter key with proper typing
|
|
59
|
+
await processNextTurnParamsForCall(nextParams, call.arguments, workingContext, result, tool.function.name);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
return result;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Process nextTurnParams for a single tool call with full type safety
|
|
66
|
+
*/
|
|
67
|
+
async function processNextTurnParamsForCall(nextParams, params, workingContext, result, toolName) {
|
|
68
|
+
// Type-safe processing for each known parameter key
|
|
69
|
+
// We iterate through keys and use runtime checks instead of casts
|
|
70
|
+
for (const paramKey of Object.keys(nextParams)) {
|
|
71
|
+
const fn = nextParams[paramKey];
|
|
72
|
+
if (typeof fn !== 'function') {
|
|
73
|
+
continue;
|
|
74
|
+
}
|
|
75
|
+
// Validate that paramKey is actually a key of NextTurnParamsContext
|
|
76
|
+
if (!isValidNextTurnParamKey(paramKey)) {
|
|
77
|
+
if (process.env['NODE_ENV'] !== 'production') {
|
|
78
|
+
console.warn(`Invalid nextTurnParams key "${paramKey}" in tool "${toolName}". ` +
|
|
79
|
+
`Valid keys: input, model, models, temperature, maxOutputTokens, topP, topK, instructions`);
|
|
80
|
+
}
|
|
81
|
+
continue;
|
|
82
|
+
}
|
|
83
|
+
// Execute the function and await the result
|
|
84
|
+
const newValue = await Promise.resolve(fn(params, workingContext));
|
|
85
|
+
// Update both result and workingContext to enable composition
|
|
86
|
+
// Later tools will see modifications made by earlier tools
|
|
87
|
+
setNextTurnParam(result, paramKey, newValue);
|
|
88
|
+
setNextTurnParam(workingContext, paramKey, newValue);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Type guard to check if a string is a valid NextTurnParamsContext key
|
|
93
|
+
*/
|
|
94
|
+
function isValidNextTurnParamKey(key) {
|
|
95
|
+
const validKeys = new Set([
|
|
96
|
+
'input',
|
|
97
|
+
'model',
|
|
98
|
+
'models',
|
|
99
|
+
'temperature',
|
|
100
|
+
'maxOutputTokens',
|
|
101
|
+
'topP',
|
|
102
|
+
'topK',
|
|
103
|
+
'instructions',
|
|
104
|
+
]);
|
|
105
|
+
return validKeys.has(key);
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Type-safe setter for NextTurnParamsContext
|
|
109
|
+
* This wrapper is needed because TypeScript doesn't properly narrow the type
|
|
110
|
+
* after the type guard, even though we've validated the key
|
|
111
|
+
*/
|
|
112
|
+
function setNextTurnParam(target, key, value) {
|
|
113
|
+
target[key] = value;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Apply computed nextTurnParams to the current request
|
|
117
|
+
* Returns a new request object with updated parameters
|
|
118
|
+
*
|
|
119
|
+
* @param request - The current request
|
|
120
|
+
* @param computedParams - Computed parameter values from nextTurnParams functions
|
|
121
|
+
* @returns New request with updated parameters
|
|
122
|
+
*/
|
|
123
|
+
export function applyNextTurnParamsToRequest(request, computedParams) {
|
|
124
|
+
return {
|
|
125
|
+
...request,
|
|
126
|
+
...computedParams,
|
|
127
|
+
};
|
|
128
|
+
}
|
|
129
|
+
//# sourceMappingURL=next-turn-params.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"next-turn-params.js","sourceRoot":"","sources":["../../src/lib/next-turn-params.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A reusable readable stream that allows multiple consumers to read from the same source stream
|
|
3
|
+
* concurrently while it's actively streaming, without forcing consumers to wait for full buffering.
|
|
4
|
+
*
|
|
5
|
+
* Key features:
|
|
6
|
+
* - Multiple concurrent consumers with independent read positions
|
|
7
|
+
* - New consumers can attach while streaming is active
|
|
8
|
+
* - Efficient memory management with automatic cleanup
|
|
9
|
+
* - Each consumer can read at their own pace
|
|
10
|
+
*/
|
|
11
|
+
export declare class ReusableReadableStream<T> {
|
|
12
|
+
private sourceStream;
|
|
13
|
+
private buffer;
|
|
14
|
+
private consumers;
|
|
15
|
+
private nextConsumerId;
|
|
16
|
+
private sourceReader;
|
|
17
|
+
private sourceComplete;
|
|
18
|
+
private sourceError;
|
|
19
|
+
private pumpStarted;
|
|
20
|
+
constructor(sourceStream: ReadableStream<T>);
|
|
21
|
+
/**
|
|
22
|
+
* Create a new consumer that can independently iterate over the stream.
|
|
23
|
+
* Multiple consumers can be created and will all receive the same data.
|
|
24
|
+
*/
|
|
25
|
+
createConsumer(): AsyncIterableIterator<T>;
|
|
26
|
+
/**
|
|
27
|
+
* Start pumping data from the source stream into the buffer
|
|
28
|
+
*/
|
|
29
|
+
private startPump;
|
|
30
|
+
/**
|
|
31
|
+
* Notify all waiting consumers that new data is available
|
|
32
|
+
*/
|
|
33
|
+
private notifyAllConsumers;
|
|
34
|
+
/**
|
|
35
|
+
* Cancel the source stream and all consumers
|
|
36
|
+
*/
|
|
37
|
+
cancel(): Promise<void>;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=reusable-stream.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reusable-stream.d.ts","sourceRoot":"","sources":["../../src/lib/reusable-stream.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,qBAAa,sBAAsB,CAAC,CAAC;IASvB,OAAO,CAAC,YAAY;IARhC,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,SAAS,CAAoC;IACrD,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,YAAY,CAA+C;IACnE,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,WAAW,CAAsB;IACzC,OAAO,CAAC,WAAW,CAAS;gBAER,YAAY,EAAE,cAAc,CAAC,CAAC,CAAC;IAEnD;;;OAGG;IACH,cAAc,IAAI,qBAAqB,CAAC,CAAC,CAAC;IAgH1C;;OAEG;IACH,OAAO,CAAC,SAAS;IAmCjB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAa1B;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAgB9B"}
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A reusable readable stream that allows multiple consumers to read from the same source stream
|
|
3
|
+
* concurrently while it's actively streaming, without forcing consumers to wait for full buffering.
|
|
4
|
+
*
|
|
5
|
+
* Key features:
|
|
6
|
+
* - Multiple concurrent consumers with independent read positions
|
|
7
|
+
* - New consumers can attach while streaming is active
|
|
8
|
+
* - Efficient memory management with automatic cleanup
|
|
9
|
+
* - Each consumer can read at their own pace
|
|
10
|
+
*/
|
|
11
|
+
export class ReusableReadableStream {
|
|
12
|
+
constructor(sourceStream) {
|
|
13
|
+
this.sourceStream = sourceStream;
|
|
14
|
+
this.buffer = [];
|
|
15
|
+
this.consumers = new Map();
|
|
16
|
+
this.nextConsumerId = 0;
|
|
17
|
+
this.sourceReader = null;
|
|
18
|
+
this.sourceComplete = false;
|
|
19
|
+
this.sourceError = null;
|
|
20
|
+
this.pumpStarted = false;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Create a new consumer that can independently iterate over the stream.
|
|
24
|
+
* Multiple consumers can be created and will all receive the same data.
|
|
25
|
+
*/
|
|
26
|
+
createConsumer() {
|
|
27
|
+
const consumerId = this.nextConsumerId++;
|
|
28
|
+
const state = {
|
|
29
|
+
position: 0,
|
|
30
|
+
waitingPromise: null,
|
|
31
|
+
cancelled: false,
|
|
32
|
+
};
|
|
33
|
+
this.consumers.set(consumerId, state);
|
|
34
|
+
// Start pumping the source stream if not already started
|
|
35
|
+
if (!this.pumpStarted) {
|
|
36
|
+
this.startPump();
|
|
37
|
+
}
|
|
38
|
+
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
|
39
|
+
const self = this;
|
|
40
|
+
return {
|
|
41
|
+
async next() {
|
|
42
|
+
const consumer = self.consumers.get(consumerId);
|
|
43
|
+
if (!consumer) {
|
|
44
|
+
return {
|
|
45
|
+
done: true,
|
|
46
|
+
value: undefined,
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
if (consumer.cancelled) {
|
|
50
|
+
return {
|
|
51
|
+
done: true,
|
|
52
|
+
value: undefined,
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
// If we have buffered data at this position, return it
|
|
56
|
+
if (consumer.position < self.buffer.length) {
|
|
57
|
+
const value = self.buffer[consumer.position];
|
|
58
|
+
consumer.position++;
|
|
59
|
+
// Note: We don't clean up buffer to allow sequential/reusable access
|
|
60
|
+
return {
|
|
61
|
+
done: false,
|
|
62
|
+
value,
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
// If source is complete and we've read everything, we're done
|
|
66
|
+
if (self.sourceComplete) {
|
|
67
|
+
self.consumers.delete(consumerId);
|
|
68
|
+
return {
|
|
69
|
+
done: true,
|
|
70
|
+
value: undefined,
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
// If source had an error, propagate it
|
|
74
|
+
if (self.sourceError) {
|
|
75
|
+
self.consumers.delete(consumerId);
|
|
76
|
+
throw self.sourceError;
|
|
77
|
+
}
|
|
78
|
+
// Set up the waiting promise FIRST to avoid race condition
|
|
79
|
+
// where source completes after the check but before promise is set
|
|
80
|
+
const waitPromise = new Promise((resolve, reject) => {
|
|
81
|
+
consumer.waitingPromise = {
|
|
82
|
+
resolve,
|
|
83
|
+
reject,
|
|
84
|
+
};
|
|
85
|
+
// Immediately check if we should resolve after setting up the promise
|
|
86
|
+
// This handles the case where data arrived or source completed
|
|
87
|
+
// between our initial checks and promise creation
|
|
88
|
+
if (self.sourceComplete || self.sourceError || consumer.position < self.buffer.length) {
|
|
89
|
+
resolve();
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
await waitPromise;
|
|
93
|
+
// Clear the promise reference after it resolves
|
|
94
|
+
consumer.waitingPromise = null;
|
|
95
|
+
// Recursively try again after waking up
|
|
96
|
+
return this.next();
|
|
97
|
+
},
|
|
98
|
+
async return() {
|
|
99
|
+
const consumer = self.consumers.get(consumerId);
|
|
100
|
+
if (consumer) {
|
|
101
|
+
consumer.cancelled = true;
|
|
102
|
+
self.consumers.delete(consumerId);
|
|
103
|
+
}
|
|
104
|
+
return {
|
|
105
|
+
done: true,
|
|
106
|
+
value: undefined,
|
|
107
|
+
};
|
|
108
|
+
},
|
|
109
|
+
async throw(e) {
|
|
110
|
+
const consumer = self.consumers.get(consumerId);
|
|
111
|
+
if (consumer) {
|
|
112
|
+
consumer.cancelled = true;
|
|
113
|
+
self.consumers.delete(consumerId);
|
|
114
|
+
}
|
|
115
|
+
throw e;
|
|
116
|
+
},
|
|
117
|
+
[Symbol.asyncIterator]() {
|
|
118
|
+
return this;
|
|
119
|
+
},
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Start pumping data from the source stream into the buffer
|
|
124
|
+
*/
|
|
125
|
+
startPump() {
|
|
126
|
+
if (this.pumpStarted) {
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
this.pumpStarted = true;
|
|
130
|
+
this.sourceReader = this.sourceStream.getReader();
|
|
131
|
+
void (async () => {
|
|
132
|
+
try {
|
|
133
|
+
while (true) {
|
|
134
|
+
const result = await this.sourceReader.read();
|
|
135
|
+
if (result.done) {
|
|
136
|
+
this.sourceComplete = true;
|
|
137
|
+
this.notifyAllConsumers();
|
|
138
|
+
break;
|
|
139
|
+
}
|
|
140
|
+
// Add to buffer
|
|
141
|
+
this.buffer.push(result.value);
|
|
142
|
+
// Notify waiting consumers
|
|
143
|
+
this.notifyAllConsumers();
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
catch (error) {
|
|
147
|
+
this.sourceError = error instanceof Error ? error : new Error(String(error));
|
|
148
|
+
this.notifyAllConsumers();
|
|
149
|
+
}
|
|
150
|
+
finally {
|
|
151
|
+
if (this.sourceReader) {
|
|
152
|
+
this.sourceReader.releaseLock();
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
})();
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Notify all waiting consumers that new data is available
|
|
159
|
+
*/
|
|
160
|
+
notifyAllConsumers() {
|
|
161
|
+
for (const consumer of this.consumers.values()) {
|
|
162
|
+
if (consumer.waitingPromise) {
|
|
163
|
+
if (this.sourceError) {
|
|
164
|
+
consumer.waitingPromise.reject(this.sourceError);
|
|
165
|
+
}
|
|
166
|
+
else {
|
|
167
|
+
consumer.waitingPromise.resolve();
|
|
168
|
+
}
|
|
169
|
+
consumer.waitingPromise = null;
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Cancel the source stream and all consumers
|
|
175
|
+
*/
|
|
176
|
+
async cancel() {
|
|
177
|
+
// Cancel all consumers
|
|
178
|
+
for (const consumer of this.consumers.values()) {
|
|
179
|
+
consumer.cancelled = true;
|
|
180
|
+
if (consumer.waitingPromise) {
|
|
181
|
+
consumer.waitingPromise.resolve();
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
this.consumers.clear();
|
|
185
|
+
// Cancel the source stream
|
|
186
|
+
if (this.sourceReader) {
|
|
187
|
+
await this.sourceReader.cancel();
|
|
188
|
+
this.sourceReader.releaseLock();
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
//# sourceMappingURL=reusable-stream.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reusable-stream.js","sourceRoot":"","sources":["../../src/lib/reusable-stream.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import type { StepResult, StopCondition, Tool } from './tool-types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Stop condition that checks if step count equals or exceeds a specific number
|
|
4
|
+
* @param stepCount - The number of steps to allow before stopping
|
|
5
|
+
* @returns StopCondition that returns true when steps.length >= stepCount
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* stopWhen: stepCountIs(5) // Stop after 5 steps
|
|
10
|
+
* ```
|
|
11
|
+
*/
|
|
12
|
+
export declare function stepCountIs(stepCount: number): StopCondition;
|
|
13
|
+
/**
|
|
14
|
+
* Stop condition that checks if any step contains a tool call with the given name
|
|
15
|
+
* @param toolName - The name of the tool to check for
|
|
16
|
+
* @returns StopCondition that returns true if the tool was called in any step
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```typescript
|
|
20
|
+
* stopWhen: hasToolCall('search') // Stop when search tool is called
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
export declare function hasToolCall(toolName: string): StopCondition;
|
|
24
|
+
/**
|
|
25
|
+
* Evaluates an array of stop conditions
|
|
26
|
+
* Returns true if ANY condition returns true (OR logic)
|
|
27
|
+
* @param options - Object containing stopConditions and steps
|
|
28
|
+
* @returns Promise<boolean> indicating if execution should stop
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```typescript
|
|
32
|
+
* const shouldStop = await isStopConditionMet({
|
|
33
|
+
* stopConditions: [stepCountIs(5), hasToolCall('search')],
|
|
34
|
+
* steps: allSteps
|
|
35
|
+
* });
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
export declare function isStopConditionMet<TTools extends readonly Tool[]>(options: {
|
|
39
|
+
readonly stopConditions: ReadonlyArray<StopCondition<TTools>>;
|
|
40
|
+
readonly steps: ReadonlyArray<StepResult<TTools>>;
|
|
41
|
+
}): Promise<boolean>;
|
|
42
|
+
/**
|
|
43
|
+
* Stop when total token usage exceeds a threshold
|
|
44
|
+
* OpenRouter-specific helper using usage data
|
|
45
|
+
*
|
|
46
|
+
* @param maxTokens - Maximum total tokens to allow
|
|
47
|
+
* @returns StopCondition that returns true when token usage exceeds threshold
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* ```typescript
|
|
51
|
+
* stopWhen: maxTokensUsed(10000) // Stop when total tokens exceed 10,000
|
|
52
|
+
* ```
|
|
53
|
+
*/
|
|
54
|
+
export declare function maxTokensUsed(maxTokens: number): StopCondition;
|
|
55
|
+
/**
|
|
56
|
+
* Stop when total cost exceeds a threshold
|
|
57
|
+
* OpenRouter-specific helper using cost data
|
|
58
|
+
*
|
|
59
|
+
* @param maxCostInDollars - Maximum cost in dollars to allow
|
|
60
|
+
* @returns StopCondition that returns true when cost exceeds threshold
|
|
61
|
+
*
|
|
62
|
+
* @example
|
|
63
|
+
* ```typescript
|
|
64
|
+
* stopWhen: maxCost(0.50) // Stop when total cost exceeds $0.50
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
export declare function maxCost(maxCostInDollars: number): StopCondition;
|
|
68
|
+
/**
|
|
69
|
+
* Stop when a specific finish reason is encountered
|
|
70
|
+
*
|
|
71
|
+
* @param reason - The finish reason to check for
|
|
72
|
+
* @returns StopCondition that returns true when finish reason matches
|
|
73
|
+
*
|
|
74
|
+
* @example
|
|
75
|
+
* ```typescript
|
|
76
|
+
* stopWhen: finishReasonIs('length') // Stop when context length limit is hit
|
|
77
|
+
* ```
|
|
78
|
+
*/
|
|
79
|
+
export declare function finishReasonIs(reason: string): StopCondition;
|
|
80
|
+
//# sourceMappingURL=stop-conditions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stop-conditions.d.ts","sourceRoot":"","sources":["../../src/lib/stop-conditions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAEvE;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,CAE5D;AAED;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,CAM3D;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,SAAS,SAAS,IAAI,EAAE,EAAE,OAAO,EAAE;IAChF,QAAQ,CAAC,cAAc,EAAE,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9D,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;CACnD,GAAG,OAAO,CAAC,OAAO,CAAC,CAgBnB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,CAQ9D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,OAAO,CAAC,gBAAgB,EAAE,MAAM,GAAG,aAAa,CAQ/D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAI5D"}
|