@auvira.ai/sdk 0.6.1 → 0.6.3
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 +34 -3
- package/dist/agent/events.d.ts +16 -1
- package/dist/agent/events.d.ts.map +1 -1
- package/dist/agent/events.js.map +1 -1
- package/dist/agent/hostTools.d.ts +4 -0
- package/dist/agent/hostTools.d.ts.map +1 -1
- package/dist/agent/hostTools.js +8 -0
- package/dist/agent/hostTools.js.map +1 -1
- package/dist/agent/tools/toolConcurrency.d.ts +55 -0
- package/dist/agent/tools/toolConcurrency.d.ts.map +1 -0
- package/dist/agent/tools/toolConcurrency.js +136 -0
- package/dist/agent/tools/toolConcurrency.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/providers/agentic/agentLoop.d.ts.map +1 -1
- package/dist/providers/agentic/agentLoop.js +165 -49
- package/dist/providers/agentic/agentLoop.js.map +1 -1
- package/dist/runner/jobTypes.d.ts +1 -1
- package/dist/runner/jobTypes.d.ts.map +1 -1
- package/dist/runner/mapStreamEvents.d.ts.map +1 -1
- package/dist/runner/mapStreamEvents.js +22 -0
- package/dist/runner/mapStreamEvents.js.map +1 -1
- package/dist/util/apiThrottle.d.ts +5 -1
- package/dist/util/apiThrottle.d.ts.map +1 -1
- package/dist/util/apiThrottle.js +12 -44
- package/dist/util/apiThrottle.js.map +1 -1
- package/dist/util/minimaxImageClient.d.ts.map +1 -1
- package/dist/util/minimaxImageClient.js +3 -2
- package/dist/util/minimaxImageClient.js.map +1 -1
- package/dist/util/modelCallQueue.d.ts +38 -0
- package/dist/util/modelCallQueue.d.ts.map +1 -0
- package/dist/util/modelCallQueue.js +88 -0
- package/dist/util/modelCallQueue.js.map +1 -0
- package/docs/host-integration-image-placement.md +88 -0
- package/docs/sandbox-runner.md +6 -1
- package/package.json +3 -2
package/README.md
CHANGED
|
@@ -45,7 +45,7 @@ auvira-sdk-run --job <editJobId>
|
|
|
45
45
|
|
|
46
46
|
See [docs/sandbox-runner.md](docs/sandbox-runner.md) for job schema, NDJSON protocol, host integration, and session resume.
|
|
47
47
|
|
|
48
|
-
For image placement (attachments, completion rules, host tools), see [docs/host-integration-image-placement.md](docs/host-integration-image-placement.md).
|
|
48
|
+
For image placement (attachments, completion rules, host tools, **Plan → Apply → Polish** host pipeline), see [docs/host-integration-image-placement.md](docs/host-integration-image-placement.md).
|
|
49
49
|
|
|
50
50
|
## Quick start (local repo)
|
|
51
51
|
|
|
@@ -274,17 +274,33 @@ Bind to localhost or protect with a reverse proxy; v1 has no built-in auth.
|
|
|
274
274
|
|
|
275
275
|
## Test commands
|
|
276
276
|
|
|
277
|
+
**Always run MiniMax end-to-end smoke after unit tests** — mock/flex tests do not validate live model behavior, parallel tool batching against real M3 responses, or API queue behavior under real latency.
|
|
278
|
+
|
|
277
279
|
```bash
|
|
278
|
-
# Unit +
|
|
280
|
+
# 1) Unit + flex (no live model)
|
|
281
|
+
npm run test:unit
|
|
282
|
+
|
|
283
|
+
# 2) MiniMax e2e smoke (required after every SDK change; uses .env CUSTOM_MODEL_API_KEY)
|
|
284
|
+
npm run test:real:smoke
|
|
285
|
+
|
|
286
|
+
# Full suite (unit + all real integration tests)
|
|
279
287
|
npm run test
|
|
280
288
|
|
|
281
|
-
#
|
|
289
|
+
# All real integration tests
|
|
282
290
|
npm run test:real
|
|
283
291
|
|
|
284
292
|
npm run typecheck
|
|
285
293
|
npm run build
|
|
286
294
|
```
|
|
287
295
|
|
|
296
|
+
`test:real:smoke` runs:
|
|
297
|
+
|
|
298
|
+
| Test | Validates |
|
|
299
|
+
|------|-----------|
|
|
300
|
+
| `minimax-api.test.ts` | MiniMax API reachable |
|
|
301
|
+
| `agent-run-stream.e2e.test.ts` | Live agent loop + stream events |
|
|
302
|
+
| `agent-parallel-read-tools.e2e.test.ts` | v0.6.2 parallel read batches + harness edit |
|
|
303
|
+
|
|
288
304
|
Real tests require in `.env`:
|
|
289
305
|
|
|
290
306
|
```bash
|
|
@@ -397,6 +413,20 @@ AUVIRA_AGENT_HISTORY_TOOL_ROUNDS=3 # tool rounds kept in agent loop history
|
|
|
397
413
|
AUVIRA_CONTEXT_TOKEN_BUDGET=32000 # Priompt-style context cap
|
|
398
414
|
```
|
|
399
415
|
|
|
416
|
+
Parallel read tools and API concurrency (v0.6.2+):
|
|
417
|
+
|
|
418
|
+
The SDK parallelizes read-only discovery tools (`grep`, `read`, `glob`, `list_dir`, `get_attachment_urls`) within a single model turn while keeping mutating tools serial. This improves speed for slow models like MiniMax without sacrificing correctness.
|
|
419
|
+
|
|
420
|
+
```bash
|
|
421
|
+
AUVIRA_PARALLEL_READ_TOOLS=true # parallel read-only batches (default true)
|
|
422
|
+
AUVIRA_MAX_PARALLEL_READ_TOOLS=8 # max concurrent read tools per batch chunk
|
|
423
|
+
AUVIRA_API_MAX_CONCURRENT=3 # global in-flight limit for external API calls
|
|
424
|
+
```
|
|
425
|
+
|
|
426
|
+
`AUVIRA_API_MAX_CONCURRENT` applies to **all** model-like external API calls: chat completions, completion evaluator, image generation, and test judges. Legacy aliases `AUVIRA_MODEL_MAX_CONCURRENT` and `CUSTOM_MODEL_MAX_CONCURRENT` are still honored.
|
|
427
|
+
|
|
428
|
+
Host tools are serial by default. Opt in to parallel execution with `definition.parallelSafe: true` on `HostToolRegistration` (read-only/idempotent tools only).
|
|
429
|
+
|
|
400
430
|
MiniMax request tuning (custom provider):
|
|
401
431
|
|
|
402
432
|
```bash
|
|
@@ -416,6 +446,7 @@ Live `run.stream()` / `run.messages()` events are enriched for host UIs. **Model
|
|
|
416
446
|
| Event | Purpose |
|
|
417
447
|
|-------|---------|
|
|
418
448
|
| `tool.start` / `tool.end` | Tool lifecycle; `tool.end.ok` reflects `ToolExecutionResult.ok` |
|
|
449
|
+
| `tool.batch_start` / `tool.batch_end` | Read-only parallel or serial tool batch boundaries (v0.6.2+) |
|
|
419
450
|
| `tool.end.output` | Structured metadata (grep pattern/count, read preview, edit previews, etc.) |
|
|
420
451
|
| `edit.diff` | Per-file unified patch after successful edit (`path`, `patch`, `truncated`, line stats) |
|
|
421
452
|
| `edit.applied` | Edit outcome with optional `linesAdded` / `linesRemoved` / `errorMessage` |
|
package/dist/agent/events.d.ts
CHANGED
|
@@ -38,6 +38,7 @@ export interface ModelResponseEvent extends AgentRunEventBase {
|
|
|
38
38
|
contentPreview: string;
|
|
39
39
|
timingMs: number;
|
|
40
40
|
httpRetries: number;
|
|
41
|
+
queueWaitMs?: number;
|
|
41
42
|
}
|
|
42
43
|
export interface ModelRepairEvent extends AgentRunEventBase {
|
|
43
44
|
type: "model.repair";
|
|
@@ -94,6 +95,20 @@ export interface ToolEndEvent extends AgentRunEventBase {
|
|
|
94
95
|
ok: boolean;
|
|
95
96
|
output: Record<string, unknown>;
|
|
96
97
|
}
|
|
98
|
+
export interface ToolBatchStartEvent extends AgentRunEventBase {
|
|
99
|
+
type: "tool.batch_start";
|
|
100
|
+
batchId: string;
|
|
101
|
+
mode: "parallel_read_only" | "serial";
|
|
102
|
+
toolNames: string[];
|
|
103
|
+
count: number;
|
|
104
|
+
}
|
|
105
|
+
export interface ToolBatchEndEvent extends AgentRunEventBase {
|
|
106
|
+
type: "tool.batch_end";
|
|
107
|
+
batchId: string;
|
|
108
|
+
mode: "parallel_read_only" | "serial";
|
|
109
|
+
ok: boolean;
|
|
110
|
+
durationMs: number;
|
|
111
|
+
}
|
|
97
112
|
export interface EditParsedEvent extends AgentRunEventBase {
|
|
98
113
|
type: "edit.parsed";
|
|
99
114
|
editCount: number;
|
|
@@ -185,7 +200,7 @@ export interface ConversationUpdatedEvent extends AgentRunEventBase {
|
|
|
185
200
|
type: "conversation.updated";
|
|
186
201
|
turnCount: number;
|
|
187
202
|
}
|
|
188
|
-
export type AgentRunEvent = RunStartedEvent | WorkspacePreparedEvent | ScreenshotSavedEvent | ContextFilesSelectedEvent | ModelAttemptEvent | ModelRequestEvent | ModelResponseEvent | ModelRepairEvent | ThinkingEvent | AgentThinkingEvent | AgentRawModelTraceEvent | AssistantEvent | ToolStartEvent | ToolEndEvent | EditParsedEvent | EditAppliedEvent | EditDiffEvent | RunDiffEvent | CompletionEvaluatedEvent | RunContinueEvent | RunEarlyFinishEvent | ValidationStartedEvent | ValidationCompletedEvent | RunCompletedEvent | RunFailedEvent | ConversationUpdatedEvent;
|
|
203
|
+
export type AgentRunEvent = RunStartedEvent | WorkspacePreparedEvent | ScreenshotSavedEvent | ContextFilesSelectedEvent | ModelAttemptEvent | ModelRequestEvent | ModelResponseEvent | ModelRepairEvent | ThinkingEvent | AgentThinkingEvent | AgentRawModelTraceEvent | AssistantEvent | ToolStartEvent | ToolEndEvent | ToolBatchStartEvent | ToolBatchEndEvent | EditParsedEvent | EditAppliedEvent | EditDiffEvent | RunDiffEvent | CompletionEvaluatedEvent | RunContinueEvent | RunEarlyFinishEvent | ValidationStartedEvent | ValidationCompletedEvent | RunCompletedEvent | RunFailedEvent | ConversationUpdatedEvent;
|
|
189
204
|
export type AgentRunEventType = AgentRunEvent["type"];
|
|
190
205
|
/** Payload for emitting a typed run event (without runId/timestamp). */
|
|
191
206
|
export type AgentRunEventInput<T extends AgentRunEventType = AgentRunEventType> = Omit<Extract<AgentRunEvent, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/agent/events.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAgB,SAAQ,iBAAiB;IACxD,IAAI,EAAE,aAAa,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,sBAAuB,SAAQ,iBAAiB;IAC/D,IAAI,EAAE,oBAAoB,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,oBAAqB,SAAQ,iBAAiB;IAC7D,IAAI,EAAE,kBAAkB,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,yBAA0B,SAAQ,iBAAiB;IAClE,IAAI,EAAE,wBAAwB,CAAC;IAC/B,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,iBAAkB,SAAQ,iBAAiB;IAC1D,IAAI,EAAE,eAAe,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAkB,SAAQ,iBAAiB;IAC1D,IAAI,EAAE,eAAe,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAC3D,IAAI,EAAE,gBAAgB,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/agent/events.ts"],"names":[],"mappings":"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"}
|
package/dist/agent/events.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/agent/events.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/agent/events.ts"],"names":[],"mappings":"AA0RA,wDAAwD;AACxD,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,mBAAmB;IACnB,kBAAkB;IAClB,sBAAsB;IACtB,kBAAkB;IAClB,iBAAiB;IACjB,iBAAiB;IACjB,UAAU;IACV,gBAAgB;IAChB,eAAe;IACf,MAAM;IACN,MAAM;IACN,MAAM;IACN,UAAU;IACV,gBAAgB;IAChB,OAAO;IACP,yBAAyB;IACzB,gBAAgB;CACR,CAAC;AAIX,MAAM,UAAU,WAAW,CACzB,KAAoB;IAEpB,OAAO,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAoB;IACnD,OAAO,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC;AACpC,CAAC"}
|
|
@@ -3,6 +3,8 @@ export interface HostToolDefinition {
|
|
|
3
3
|
name: string;
|
|
4
4
|
description: string;
|
|
5
5
|
parameters: Record<string, unknown>;
|
|
6
|
+
/** When true, host tool may run in parallel with other read-only tools. Default false. */
|
|
7
|
+
parallelSafe?: boolean;
|
|
6
8
|
}
|
|
7
9
|
export interface HostToolContext {
|
|
8
10
|
repoPath: string;
|
|
@@ -39,6 +41,8 @@ export declare function registerHostToolsForRun(registrations: HostToolRegistrat
|
|
|
39
41
|
export declare function clearHostToolsForRun(): void;
|
|
40
42
|
/** Dispatches a host tool call when registered for the current run. */
|
|
41
43
|
export declare function executeHostTool(toolName: string, args: Record<string, unknown>, ctx: HostToolContext): Promise<HostToolHandlerResult | undefined>;
|
|
44
|
+
/** Maps host tool names to parallelSafe opt-in for tool concurrency classification. */
|
|
45
|
+
export declare function buildHostToolParallelSafeMap(registrations: HostToolRegistration[]): Map<string, boolean>;
|
|
42
46
|
/** Converts host tool definitions to OpenAI-compatible tool schemas. */
|
|
43
47
|
export declare function hostToolsToOpenAiDefinitions(registrations: HostToolRegistration[]): Array<{
|
|
44
48
|
type: "function";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hostTools.d.ts","sourceRoot":"","sources":["../../src/agent/hostTools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAG1E,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"hostTools.d.ts","sourceRoot":"","sources":["../../src/agent/hostTools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAG1E,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,0FAA0F;IAC1F,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACpC,WAAW,CAAC,EAAE,kBAAkB,CAAC;CAClC;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,MAAM,MAAM,eAAe,GAAG,CAC5B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,GAAG,EAAE,eAAe,KACjB,OAAO,CAAC,qBAAqB,CAAC,CAAC;AAEpC,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,kBAAkB,CAAC;IAC/B,OAAO,EAAE,eAAe,CAAC;CAC1B;AAiBD,+EAA+E;AAC/E,wBAAgB,6BAA6B,CAC3C,aAAa,EAAE,oBAAoB,EAAE,GACpC,IAAI,CAiBN;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,GAAG,OAAO,EAAE,KAAK,CAAC,oBAAoB,EAAE,GAAG,SAAS,CAAC,GACpD,oBAAoB,EAAE,CAQxB;AAED,oEAAoE;AACpE,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,SAAS,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACnC,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACrC,GAAG,oBAAoB,EAAE,CAYzB;AAED,iFAAiF;AACjF,wBAAgB,+BAA+B,IAAI,oBAAoB,CAuBtE;AAID,2DAA2D;AAC3D,wBAAgB,uBAAuB,CACrC,aAAa,EAAE,oBAAoB,EAAE,GACpC,IAAI,CAQN;AAED,uDAAuD;AACvD,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C;AAED,uEAAuE;AACvE,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,GAAG,EAAE,eAAe,GACnB,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,CAM5C;AAED,uFAAuF;AACvF,wBAAgB,4BAA4B,CAC1C,aAAa,EAAE,oBAAoB,EAAE,GACpC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAStB;AAED,wEAAwE;AACxE,wBAAgB,4BAA4B,CAC1C,aAAa,EAAE,oBAAoB,EAAE,GACpC,KAAK,CAAC;IACP,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACrC,CAAC;CACH,CAAC,CASD"}
|
package/dist/agent/hostTools.js
CHANGED
|
@@ -97,6 +97,14 @@ export async function executeHostTool(toolName, args, ctx) {
|
|
|
97
97
|
}
|
|
98
98
|
return handler(args, ctx);
|
|
99
99
|
}
|
|
100
|
+
/** Maps host tool names to parallelSafe opt-in for tool concurrency classification. */
|
|
101
|
+
export function buildHostToolParallelSafeMap(registrations) {
|
|
102
|
+
const map = new Map();
|
|
103
|
+
for (const registration of registrations) {
|
|
104
|
+
map.set(registration.definition.name.trim().toLowerCase(), registration.definition.parallelSafe === true);
|
|
105
|
+
}
|
|
106
|
+
return map;
|
|
107
|
+
}
|
|
100
108
|
/** Converts host tool definitions to OpenAI-compatible tool schemas. */
|
|
101
109
|
export function hostToolsToOpenAiDefinitions(registrations) {
|
|
102
110
|
return registrations.map((registration) => ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hostTools.js","sourceRoot":"","sources":["../../src/agent/hostTools.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"hostTools.js","sourceRoot":"","sources":["../../src/agent/hostTools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { type ToolPolicyAbortReason, type ToolPolicyState } from "../../providers/agentic/toolPolicy.js";
|
|
2
|
+
export type ToolConcurrencyClass = "read_only" | "mutating" | "serial";
|
|
3
|
+
/** Classifies a tool for parallel execution policy. */
|
|
4
|
+
export declare function getToolConcurrencyClass(toolName: string, ctx?: {
|
|
5
|
+
hostToolParallelSafe?: boolean;
|
|
6
|
+
}): ToolConcurrencyClass;
|
|
7
|
+
/** Returns true when a tool mutates workspace state. */
|
|
8
|
+
export declare function isMutatingToolName(toolName: string): boolean;
|
|
9
|
+
export interface ParallelReadToolsConfig {
|
|
10
|
+
parallelEnabled: boolean;
|
|
11
|
+
maxParallelRead: number;
|
|
12
|
+
}
|
|
13
|
+
/** Reads parallel read-tool env configuration. */
|
|
14
|
+
export declare function getParallelReadToolsConfig(): ParallelReadToolsConfig;
|
|
15
|
+
export interface ToolCallLike {
|
|
16
|
+
id: string;
|
|
17
|
+
function: {
|
|
18
|
+
name: string;
|
|
19
|
+
arguments: string;
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
export type ToolCallBatch = {
|
|
23
|
+
kind: "parallel_read_only";
|
|
24
|
+
calls: ToolCallLike[];
|
|
25
|
+
} | {
|
|
26
|
+
kind: "serial";
|
|
27
|
+
calls: ToolCallLike[];
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Partitions tool calls into consecutive batches for parallel or serial execution.
|
|
31
|
+
* Never parallelizes mutating tools, unknown host tools, or shell tools.
|
|
32
|
+
*/
|
|
33
|
+
export declare function partitionToolCalls(toolCalls: ToolCallLike[], classify: (name: string) => ToolConcurrencyClass, options: {
|
|
34
|
+
parallelEnabled: boolean;
|
|
35
|
+
maxParallelRead: number;
|
|
36
|
+
}): ToolCallBatch[];
|
|
37
|
+
export interface ToolCallExecutionPlan {
|
|
38
|
+
call: ToolCallLike;
|
|
39
|
+
reason?: ToolPolicyAbortReason;
|
|
40
|
+
}
|
|
41
|
+
export interface ToolBudgetReservation {
|
|
42
|
+
allowed: ToolCallExecutionPlan[];
|
|
43
|
+
blocked: ToolCallExecutionPlan[];
|
|
44
|
+
policyState: ToolPolicyState;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Pre-reserves tool budget synchronously before parallel launch.
|
|
48
|
+
* Walks calls in original order; overflow calls are blocked without execution.
|
|
49
|
+
*/
|
|
50
|
+
export declare function reserveToolBudget(calls: ToolCallLike[], policyState: ToolPolicyState, maxToolCalls: number): ToolBudgetReservation;
|
|
51
|
+
/** Maps parallel execution results back to tool call ids. */
|
|
52
|
+
export declare function buildResultMapFromSettled<T>(allowed: ToolCallExecutionPlan[], settled: PromiseSettledResult<T>[]): Map<string, T>;
|
|
53
|
+
/** Converts a rejected parallel result into a tool error outcome message. */
|
|
54
|
+
export declare function formatParallelToolError(reason: unknown): string;
|
|
55
|
+
//# sourceMappingURL=toolConcurrency.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolConcurrency.d.ts","sourceRoot":"","sources":["../../../src/agent/tools/toolConcurrency.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACrB,MAAM,uCAAuC,CAAC;AAE/C,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG,UAAU,GAAG,QAAQ,CAAC;AAmBvE,uDAAuD;AACvD,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,MAAM,EAChB,GAAG,CAAC,EAAE;IAAE,oBAAoB,CAAC,EAAE,OAAO,CAAA;CAAE,GACvC,oBAAoB,CAYtB;AAED,wDAAwD;AACxD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED,MAAM,WAAW,uBAAuB;IACtC,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,kDAAkD;AAClD,wBAAgB,0BAA0B,IAAI,uBAAuB,CAUpE;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CAC/C;AAED,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,KAAK,EAAE,YAAY,EAAE,CAAA;CAAE,GACrD;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,YAAY,EAAE,CAAA;CAAE,CAAC;AAE9C;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,YAAY,EAAE,EACzB,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,oBAAoB,EAChD,OAAO,EAAE;IAAE,eAAe,EAAE,OAAO,CAAC;IAAC,eAAe,EAAE,MAAM,CAAA;CAAE,GAC7D,aAAa,EAAE,CA4CjB;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,CAAC,EAAE,qBAAqB,CAAC;CAChC;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,qBAAqB,EAAE,CAAC;IACjC,OAAO,EAAE,qBAAqB,EAAE,CAAC;IACjC,WAAW,EAAE,eAAe,CAAC;CAC9B;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,YAAY,EAAE,EACrB,WAAW,EAAE,eAAe,EAC5B,YAAY,EAAE,MAAM,GACnB,qBAAqB,CA8BvB;AAED,6DAA6D;AAC7D,wBAAgB,yBAAyB,CAAC,CAAC,EACzC,OAAO,EAAE,qBAAqB,EAAE,EAChC,OAAO,EAAE,oBAAoB,CAAC,CAAC,CAAC,EAAE,GACjC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAShB;AAED,6EAA6E;AAC7E,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAK/D"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { evaluateToolPolicy, } from "../../providers/agentic/toolPolicy.js";
|
|
2
|
+
const READ_ONLY_TOOLS = new Set([
|
|
3
|
+
"grep",
|
|
4
|
+
"read",
|
|
5
|
+
"read_file",
|
|
6
|
+
"glob",
|
|
7
|
+
"list_dir",
|
|
8
|
+
"get_attachment_urls",
|
|
9
|
+
]);
|
|
10
|
+
const MUTATING_TOOLS = new Set([
|
|
11
|
+
"write",
|
|
12
|
+
"search_replace",
|
|
13
|
+
"edit",
|
|
14
|
+
"publish_reference_image",
|
|
15
|
+
"generate_image",
|
|
16
|
+
]);
|
|
17
|
+
/** Classifies a tool for parallel execution policy. */
|
|
18
|
+
export function getToolConcurrencyClass(toolName, ctx) {
|
|
19
|
+
const normalized = toolName.trim().toLowerCase();
|
|
20
|
+
if (READ_ONLY_TOOLS.has(normalized)) {
|
|
21
|
+
return "read_only";
|
|
22
|
+
}
|
|
23
|
+
if (MUTATING_TOOLS.has(normalized)) {
|
|
24
|
+
return "mutating";
|
|
25
|
+
}
|
|
26
|
+
if (ctx?.hostToolParallelSafe === true) {
|
|
27
|
+
return "read_only";
|
|
28
|
+
}
|
|
29
|
+
return "serial";
|
|
30
|
+
}
|
|
31
|
+
/** Returns true when a tool mutates workspace state. */
|
|
32
|
+
export function isMutatingToolName(toolName) {
|
|
33
|
+
return getToolConcurrencyClass(toolName) === "mutating";
|
|
34
|
+
}
|
|
35
|
+
/** Reads parallel read-tool env configuration. */
|
|
36
|
+
export function getParallelReadToolsConfig() {
|
|
37
|
+
const rawEnabled = process.env.AUVIRA_PARALLEL_READ_TOOLS?.trim().toLowerCase();
|
|
38
|
+
const parallelEnabled = rawEnabled === undefined || rawEnabled === "true" || rawEnabled === "1";
|
|
39
|
+
const rawMax = process.env.AUVIRA_MAX_PARALLEL_READ_TOOLS?.trim();
|
|
40
|
+
const parsedMax = rawMax ? Number.parseInt(rawMax, 10) : 8;
|
|
41
|
+
const maxParallelRead = Number.isFinite(parsedMax) && parsedMax > 0 ? parsedMax : 8;
|
|
42
|
+
return { parallelEnabled, maxParallelRead };
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Partitions tool calls into consecutive batches for parallel or serial execution.
|
|
46
|
+
* Never parallelizes mutating tools, unknown host tools, or shell tools.
|
|
47
|
+
*/
|
|
48
|
+
export function partitionToolCalls(toolCalls, classify, options) {
|
|
49
|
+
if (toolCalls.length === 0) {
|
|
50
|
+
return [];
|
|
51
|
+
}
|
|
52
|
+
const batches = [];
|
|
53
|
+
let readBuffer = [];
|
|
54
|
+
const flushReadBuffer = () => {
|
|
55
|
+
if (readBuffer.length === 0) {
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
if (options.parallelEnabled && readBuffer.length > 1) {
|
|
59
|
+
for (let i = 0; i < readBuffer.length; i += options.maxParallelRead) {
|
|
60
|
+
const chunk = readBuffer.slice(i, i + options.maxParallelRead);
|
|
61
|
+
batches.push({
|
|
62
|
+
kind: chunk.length > 1 ? "parallel_read_only" : "serial",
|
|
63
|
+
calls: chunk,
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
for (const call of readBuffer) {
|
|
69
|
+
batches.push({ kind: "serial", calls: [call] });
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
readBuffer = [];
|
|
73
|
+
};
|
|
74
|
+
for (const call of toolCalls) {
|
|
75
|
+
const toolClass = classify(call.function.name);
|
|
76
|
+
if (options.parallelEnabled &&
|
|
77
|
+
toolClass === "read_only") {
|
|
78
|
+
readBuffer.push(call);
|
|
79
|
+
continue;
|
|
80
|
+
}
|
|
81
|
+
flushReadBuffer();
|
|
82
|
+
batches.push({ kind: "serial", calls: [call] });
|
|
83
|
+
}
|
|
84
|
+
flushReadBuffer();
|
|
85
|
+
return batches;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Pre-reserves tool budget synchronously before parallel launch.
|
|
89
|
+
* Walks calls in original order; overflow calls are blocked without execution.
|
|
90
|
+
*/
|
|
91
|
+
export function reserveToolBudget(calls, policyState, maxToolCalls) {
|
|
92
|
+
let state = { ...policyState };
|
|
93
|
+
const allowed = [];
|
|
94
|
+
const blocked = [];
|
|
95
|
+
for (const call of calls) {
|
|
96
|
+
if (state.abortReason) {
|
|
97
|
+
blocked.push({
|
|
98
|
+
call,
|
|
99
|
+
reason: state.abortReason,
|
|
100
|
+
});
|
|
101
|
+
continue;
|
|
102
|
+
}
|
|
103
|
+
const toolName = call.function.name;
|
|
104
|
+
const nextState = evaluateToolPolicy(toolName, state, maxToolCalls);
|
|
105
|
+
if (nextState.abortReason) {
|
|
106
|
+
state = nextState;
|
|
107
|
+
blocked.push({
|
|
108
|
+
call,
|
|
109
|
+
reason: nextState.abortReason,
|
|
110
|
+
});
|
|
111
|
+
continue;
|
|
112
|
+
}
|
|
113
|
+
state = nextState;
|
|
114
|
+
allowed.push({ call });
|
|
115
|
+
}
|
|
116
|
+
return { allowed, blocked, policyState: state };
|
|
117
|
+
}
|
|
118
|
+
/** Maps parallel execution results back to tool call ids. */
|
|
119
|
+
export function buildResultMapFromSettled(allowed, settled) {
|
|
120
|
+
const map = new Map();
|
|
121
|
+
for (let i = 0; i < allowed.length; i += 1) {
|
|
122
|
+
const entry = settled[i];
|
|
123
|
+
if (entry?.status === "fulfilled") {
|
|
124
|
+
map.set(allowed[i].call.id, entry.value);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
return map;
|
|
128
|
+
}
|
|
129
|
+
/** Converts a rejected parallel result into a tool error outcome message. */
|
|
130
|
+
export function formatParallelToolError(reason) {
|
|
131
|
+
if (reason instanceof Error) {
|
|
132
|
+
return reason.message;
|
|
133
|
+
}
|
|
134
|
+
return String(reason);
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=toolConcurrency.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolConcurrency.js","sourceRoot":"","sources":["../../../src/agent/tools/toolConcurrency.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ export { AgentNotFoundError } from "./agent/AgentRegistry.js";
|
|
|
5
5
|
export type { AgentAttachmentMeta, AgentAttachmentRole, AgentCreateOptions, AgentPromptOptions, AgentSendOptions, AgentSendPayload, AgentImageInput, AgentWorkspaceMode, AgentRunResult, AgentRunStatus, AgentModelConfig, AgentCompletionOptions, CompletionContractContext, CompletionFileRequirement, CompletionContentRequirement, CompletionWiringHints, SerializableCompletionRules, SelectedDomContext, ConversationTurn, } from "./agent/types.js";
|
|
6
6
|
export { formatAttachmentsContextBlock, writeAttachmentsManifest, readAttachmentsManifest, ATTACHMENTS_MANIFEST_RELATIVE, } from "./agent/attachmentContext.js";
|
|
7
7
|
export type { HostToolDefinition, HostToolContext, HostToolHandler, HostToolHandlerResult, HostToolRegistration, } from "./agent/hostTools.js";
|
|
8
|
-
export { validateHostToolRegistrations, mergeHostToolRegistrations, resolveHostToolsForRun, createGetAttachmentUrlsHostTool, hostToolsToOpenAiDefinitions, } from "./agent/hostTools.js";
|
|
8
|
+
export { validateHostToolRegistrations, mergeHostToolRegistrations, resolveHostToolsForRun, createGetAttachmentUrlsHostTool, buildHostToolParallelSafeMap, hostToolsToOpenAiDefinitions, } from "./agent/hostTools.js";
|
|
9
9
|
export { buildWiringHintNudge, pathExistsUnderRepo, shouldRequirePublicAssetPublish, getOrphanComponentNudge, } from "./agent/editCompletion.js";
|
|
10
10
|
export type { HarnessPinnedTarget } from "./providers/custom/harnessPinTypes.js";
|
|
11
11
|
export type { WorkspaceCheckpoint, WorkspaceDiffResult } from "./workspace/workspaceCheckpoint.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EACL,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,YAAY,EACV,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,yBAAyB,EACzB,yBAAyB,EACzB,4BAA4B,EAC5B,qBAAqB,EACrB,2BAA2B,EAC3B,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,6BAA6B,EAC7B,wBAAwB,EACxB,uBAAuB,EACvB,6BAA6B,GAC9B,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,6BAA6B,EAC7B,0BAA0B,EAC1B,sBAAsB,EACtB,+BAA+B,EAC/B,4BAA4B,GAC7B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,+BAA+B,EAC/B,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;AACnC,YAAY,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AACjF,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACnG,YAAY,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAChF,YAAY,EACV,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,qBAAqB,EACrB,wBAAwB,EACxB,aAAa,EACb,gBAAgB,EAChB,YAAY,EACZ,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,yBAAyB,EACzB,8BAA8B,EAC9B,gCAAgC,EAChC,2BAA2B,EAC3B,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EACL,8BAA8B,EAC9B,4BAA4B,EAC5B,mBAAmB,EACnB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,EACxB,oBAAoB,EACpB,kCAAkC,EAClC,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EACL,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,YAAY,EACV,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,yBAAyB,EACzB,yBAAyB,EACzB,4BAA4B,EAC5B,qBAAqB,EACrB,2BAA2B,EAC3B,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,6BAA6B,EAC7B,wBAAwB,EACxB,uBAAuB,EACvB,6BAA6B,GAC9B,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,6BAA6B,EAC7B,0BAA0B,EAC1B,sBAAsB,EACtB,+BAA+B,EAC/B,4BAA4B,EAC5B,4BAA4B,GAC7B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,+BAA+B,EAC/B,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;AACnC,YAAY,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AACjF,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACnG,YAAY,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAChF,YAAY,EACV,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,qBAAqB,EACrB,wBAAwB,EACxB,aAAa,EACb,gBAAgB,EAChB,YAAY,EACZ,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,yBAAyB,EACzB,8BAA8B,EAC9B,gCAAgC,EAChC,2BAA2B,EAC3B,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EACL,8BAA8B,EAC9B,4BAA4B,EAC5B,mBAAmB,EACnB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,EACxB,oBAAoB,EACpB,kCAAkC,EAClC,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@ export { AgentRun } from "./agent/AgentRun.js";
|
|
|
3
3
|
export { AgentConfigError, CursorAgentError, } from "./agent/types.js";
|
|
4
4
|
export { AgentNotFoundError } from "./agent/AgentRegistry.js";
|
|
5
5
|
export { formatAttachmentsContextBlock, writeAttachmentsManifest, readAttachmentsManifest, ATTACHMENTS_MANIFEST_RELATIVE, } from "./agent/attachmentContext.js";
|
|
6
|
-
export { validateHostToolRegistrations, mergeHostToolRegistrations, resolveHostToolsForRun, createGetAttachmentUrlsHostTool, hostToolsToOpenAiDefinitions, } from "./agent/hostTools.js";
|
|
6
|
+
export { validateHostToolRegistrations, mergeHostToolRegistrations, resolveHostToolsForRun, createGetAttachmentUrlsHostTool, buildHostToolParallelSafeMap, hostToolsToOpenAiDefinitions, } from "./agent/hostTools.js";
|
|
7
7
|
export { buildWiringHintNudge, pathExistsUnderRepo, shouldRequirePublicAssetPublish, getOrphanComponentNudge, } from "./agent/editCompletion.js";
|
|
8
8
|
export { AGENT_TOOL_NAMES, isToolEvent, isAssistantEvent, } from "./agent/events.js";
|
|
9
9
|
export { emitAgentPlanningThinking, emitAgentToolSelectionThinking, emitAgentCompletionCheckThinking, emitAgentReflectionThinking, emitAgentRawModelTrace, isRawModelTraceEnabled, } from "./agent/emitAgentThinking.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EACL,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAsB9D,OAAO,EACL,6BAA6B,EAC7B,wBAAwB,EACxB,uBAAuB,EACvB,6BAA6B,GAC9B,MAAM,8BAA8B,CAAC;AAQtC,OAAO,EACL,6BAA6B,EAC7B,0BAA0B,EAC1B,sBAAsB,EACtB,+BAA+B,EAC/B,4BAA4B,GAC7B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,+BAA+B,EAC/B,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;AAkBnC,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,yBAAyB,EACzB,8BAA8B,EAC9B,gCAAgC,EAChC,2BAA2B,EAC3B,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAGlE,OAAO,EACL,8BAA8B,EAC9B,4BAA4B,EAC5B,mBAAmB,EACnB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,mBAAmB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EACL,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAsB9D,OAAO,EACL,6BAA6B,EAC7B,wBAAwB,EACxB,uBAAuB,EACvB,6BAA6B,GAC9B,MAAM,8BAA8B,CAAC;AAQtC,OAAO,EACL,6BAA6B,EAC7B,0BAA0B,EAC1B,sBAAsB,EACtB,+BAA+B,EAC/B,4BAA4B,EAC5B,4BAA4B,GAC7B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,+BAA+B,EAC/B,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;AAkBnC,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,yBAAyB,EACzB,8BAA8B,EAC9B,gCAAgC,EAChC,2BAA2B,EAC3B,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAGlE,OAAO,EACL,8BAA8B,EAC9B,4BAA4B,EAC5B,mBAAmB,EACnB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,mBAAmB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentLoop.d.ts","sourceRoot":"","sources":["../../../src/providers/agentic/agentLoop.ts"],"names":[],"mappings":"AASA,OAAO,EAML,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC5B,MAAM,uCAAuC,CAAC;AAS/C,OAAO,
|
|
1
|
+
{"version":3,"file":"agentLoop.d.ts","sourceRoot":"","sources":["../../../src/providers/agentic/agentLoop.ts"],"names":[],"mappings":"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"}
|