@ank1015/providers 0.0.34 → 0.0.36

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 CHANGED
@@ -1,23 +1,20 @@
1
1
  # @ank1015/providers
2
2
 
3
- A provider abstraction layer for building agentic systems with multiple LLM providers. Built with a philosophy that **harnesses should be model-specific** while maintaining the ability to test and compose different models together.
3
+ A provider abstraction layer for building agentic systems with multiple LLM providers. Built with the philosophy of balancing **standardization** with **provider-specific fidelity**.
4
4
 
5
- Most of the coding patterns are taken and inspired from [PI-mono](https://github.com/badlogic/pi-mono/tree/main)
5
+ Most of the coding patterns are inspired by [PI-mono](https://github.com/badlogic/pi-mono/tree/main).
6
6
 
7
7
  ## Philosophy
8
8
 
9
- This library is designed around a key insight: **effective AI systems should be built for specific models**, following their unique best practices and capabilities. However, practical development requires:
9
+ LLM providers often offer unique capabilities and implementation details that are not universally available. Attempting to force different providers into a single, unified message abstraction often results in the loss of provider-specific features or information.
10
10
 
11
- 1. **Testing flexibility**: Try different models during development
12
- 2. **Multi-model systems**: Compose systems where different models work together
13
- 3. **Forking capability**: Convert state between providers when needed
11
+ This library balances standardization with flexibility by:
12
+ - **Standardizing User & Tool Messages**: Input messages and tool results use a universal format that can be adapted for any provider.
13
+ - **Preserving Native Assistant Messages**: Assistant responses retain their native provider structure while exposing common fields (like content and usage) for convenience.
14
+ - **Unified Streaming**: Streaming events are normalized to a consistent interface without discarding provider-specific data.
15
+ - **Seamless Handoffs**: Switching providers is fully supported. While some provider-specific context (like caching or reasoning traces) may be lost during conversion, the core conversation history remains intact.
14
16
 
15
- We achieve this by:
16
- - Storing **user messages** and **tool results** in a standardized format (can be built for any provider)
17
- - Storing **assistant messages** in their **native provider format** (preserving caching, thinking traces, and internal state)
18
- - Providing **standardized streaming** for UI display without losing provider-specific data
19
-
20
- **This is NOT** about switching models mid-session (which loses critical state). It's about building provider-specific implementations while avoiding vendor lock-in during development. But the library still allows hand-offs mid conversation using conversion function that transform one provider messages to another.
17
+ This approach ensures you can leverage the distinct strengths of each model—using specific harnesses to steer them effectively—while maintaining a consistent interface for testing and experimentation.
21
18
 
22
19
  ## Features
23
20
 
@@ -133,10 +130,12 @@ Subscribe to the conversation to receive real-time updates. This is crucial for
133
130
  conversation.subscribe((event) => {
134
131
  switch (event.type) {
135
132
  case "message_update":
136
- // Can handle 'thinking_delta', 'text_delta', etc. inside the event.message
137
- const msg = event.message;
138
- if (msg.type === 'text_delta') {
139
- process.stdout.write(msg.delta);
133
+ // The 'message' property here is the streaming event (BaseAssistantEvent)
134
+ // It contains the delta and the type (e.g., 'text_delta', 'thinking_delta')
135
+ const streamEvent = event.message;
136
+
137
+ if (streamEvent.type === 'text_delta') {
138
+ process.stdout.write(streamEvent.delta);
140
139
  }
141
140
  break;
142
141
 
@@ -151,12 +150,29 @@ conversation.subscribe((event) => {
151
150
  });
152
151
  ```
153
152
 
153
+ ## Examples
154
+
155
+ Check out the `examples/` directory for complete, runnable implementations:
156
+
157
+ - **[Coding Agent](examples/coding-agent)**: An agent demonstrating complex tool usage, file manipulation, and code generation capabilities.
158
+ - **[Research Agent](examples/research-agent)**: A research assistant showcasing multi-step reasoning and information gathering.
159
+
160
+ To run the examples:
161
+
162
+ ```bash
163
+ # Run the coding agent CLI
164
+ npx tsx examples/coding-agent/cli.ts
165
+
166
+ # Run the research agent CLI
167
+ npx tsx examples/research-agent/cli.ts
168
+ ```
169
+
154
170
  ## Architecture
155
171
 
156
- - **`Conversation`**: The high-level state manager. It tracks the message history (`Memory`), handles message queuing (for handling rapid user inputs), and manages the `AgentRunner`.
157
- - **`AgentRunner`**: A stateless engine that executes the "Agent Protocol". It sends messages to the LLM, parses tool calls from the response, executes the tools, and feeds the results back to the LLM until a final response is reached or the loop terminates.
172
+ - **`Conversation`**: The high-level state manager. It tracks message history, handles message queuing (for rapid user inputs), and manages the `AgentRunner`.
173
+ - **`AgentRunner`**: A stateless engine that executes the "Agent Protocol". It sends messages to the LLM, parses tool calls, executes tools, and feeds results back to the LLM until a final response is reached.
158
174
  - **`LLMClient`**: The low-level abstraction that standardizes API calls to OpenAI, Google, etc.
159
- - **`Utils`**: Includes powerful helpers like `parseStreamingJson` (for real-time tool visualization) and `isContextOverflow` (for handling token limits).
175
+ - **`Utils`**: Includes helpers like `parseStreamingJson` (for real-time tool visualization) and `isContextOverflow` (for handling token limits).
160
176
 
161
177
  ## License
162
178
 
@@ -8,6 +8,8 @@ export interface AgentOptions {
8
8
  queueMode?: "all" | "one-at-a-time";
9
9
  client?: LLMClient;
10
10
  runner?: AgentRunner;
11
+ costLimit?: number;
12
+ contextLimit?: number;
11
13
  }
12
14
  export declare class Conversation {
13
15
  private client;
@@ -26,6 +28,10 @@ export declare class Conversation {
26
28
  subscribe(fn: (e: AgentEvent) => void): () => void;
27
29
  private emit;
28
30
  setStreamAssistantMessage(stream: boolean): void;
31
+ setCostLimit(limit: number): void;
32
+ getCostLimit(): number | undefined;
33
+ setContextLimit(limit: number): void;
34
+ getContextLimit(): number | undefined;
29
35
  setSystemPrompt(v: string): void;
30
36
  setProvider<TApi extends Api>(provider: Provider<TApi>): void;
31
37
  setQueueMode(mode: "all" | "one-at-a-time"): void;
@@ -1 +1 @@
1
- {"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../src/agent/conversation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAiB,OAAO,EAAqB,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAmB,UAAU,EAAa,UAAU,EAAE,QAAQ,EAAiB,MAAM,YAAY,CAAC;AAErH,OAAO,EAAE,SAAS,EAAoB,MAAM,WAAW,CAAC;AAExD,OAAO,EAAE,WAAW,EAA4C,MAAM,aAAa,CAAC;AAEpF,MAAM,WAAW,YAAY;IAC5B,YAAY,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAEnC,kBAAkB,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAE7E,SAAS,CAAC,EAAE,KAAK,GAAG,eAAe,CAAC;IAEpC,MAAM,CAAC,EAAE,SAAS,CAAC;IAEnB,MAAM,CAAC,EAAE,WAAW,CAAC;CACrB;AAyBD,qBAAa,YAAY;IACxB,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,MAAM,CAAwC;IACtD,OAAO,CAAC,SAAS,CAAsC;IACvD,OAAO,CAAC,eAAe,CAAC,CAAkB;IAC1C,OAAO,CAAC,kBAAkB,CAA0D;IACpF,OAAO,CAAC,YAAY,CAAqC;IACzD,OAAO,CAAC,SAAS,CAA0B;IAC3C,OAAO,CAAC,aAAa,CAAC,CAAgB;IACtC,OAAO,CAAC,oBAAoB,CAAC,CAAa;IAC1C,OAAO,CAAC,sBAAsB,CAAiB;gBAEnC,IAAI,GAAE,YAAiB;IAiBnC,IAAI,KAAK,IAAI,UAAU,CAEtB;IAED,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,GAAG,MAAM,IAAI;IAKlD,OAAO,CAAC,IAAI;IAMZ,yBAAyB,CAAC,MAAM,EAAE,OAAO;IAOzC,eAAe,CAAC,CAAC,EAAE,MAAM;IAIzB,WAAW,CAAC,IAAI,SAAS,GAAG,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC;IAItD,YAAY,CAAC,IAAI,EAAE,KAAK,GAAG,eAAe;IAI1C,YAAY,IAAI,KAAK,GAAG,eAAe;IAIvC,QAAQ,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK;IAIpC,eAAe,CAAC,EAAE,EAAE,OAAO,EAAE;IAI7B,aAAa,CAAC,CAAC,EAAE,OAAO;IAIxB,cAAc,CAAC,EAAE,EAAE,OAAO,EAAE;IAItB,YAAY,CAAC,CAAC,EAAE,OAAO;IAS7B,iBAAiB;IAIjB,aAAa;IAIb;;OAEG;IACH,cAAc;IAId;;;OAGG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAUzC;;;;;OAKG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,GAAG,OAAO;IAYjF,KAAK;IAIL;;;OAGG;IACH,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B;;OAEG;IACH,KAAK;IAkBL;;;OAGG;IACH,OAAO,CAAC,QAAQ;IAShB;;;OAGG;IACG,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAgB7C,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAgB3E;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAepC;;;OAGG;YACW,WAAW;IAuCzB;;OAEG;YACW,aAAa;YAqBb,qBAAqB;IA2BnC;;OAEG;IACH,OAAO,CAAC,sBAAsB;CAQ9B"}
1
+ {"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../src/agent/conversation.ts"],"names":[],"mappings":"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"}
@@ -17,7 +17,12 @@ const defaultConversationState = {
17
17
  tools: [],
18
18
  isStreaming: false,
19
19
  pendingToolCalls: new Set(),
20
- error: undefined
20
+ error: undefined,
21
+ usage: {
22
+ totalTokens: 0,
23
+ totalCost: 0,
24
+ lastInputTokens: 0
25
+ }
21
26
  };
22
27
  const defaultMessageTransformer = (messages) => {
23
28
  return messages.slice(); // Return a copy to avoid mutation of original array
@@ -35,10 +40,13 @@ export class Conversation {
35
40
  this._state = {
36
41
  ...defaultConversationState,
37
42
  ...initialState,
43
+ costLimit: opts.costLimit ?? initialState.costLimit,
44
+ contextLimit: opts.contextLimit ?? initialState.contextLimit,
38
45
  // Override with fresh copies to ensure no shared references
39
46
  messages: initialState.messages ? [...initialState.messages] : [],
40
47
  tools: initialState.tools ? [...initialState.tools] : [],
41
48
  pendingToolCalls: new Set(initialState.pendingToolCalls ?? []),
49
+ usage: initialState.usage ? { ...initialState.usage } : { ...defaultConversationState.usage },
42
50
  };
43
51
  this.messageTransformer = opts.messageTransformer || defaultMessageTransformer;
44
52
  this.queueMode = opts.queueMode || "one-at-a-time";
@@ -60,6 +68,18 @@ export class Conversation {
60
68
  // Recreate runner with updated streaming setting
61
69
  this.runner = new DefaultAgentRunner(this.client, { streamAssistantMessage: stream });
62
70
  }
71
+ setCostLimit(limit) {
72
+ this._state.costLimit = limit;
73
+ }
74
+ getCostLimit() {
75
+ return this._state.costLimit;
76
+ }
77
+ setContextLimit(limit) {
78
+ this._state.contextLimit = limit;
79
+ }
80
+ getContextLimit() {
81
+ return this._state.contextLimit;
82
+ }
63
83
  // State mutators - update internal state without emitting events
64
84
  setSystemPrompt(v) {
65
85
  this._state.systemPrompt = v;
@@ -81,9 +101,21 @@ export class Conversation {
81
101
  }
82
102
  appendMessage(m) {
83
103
  this._state.messages = [...this._state.messages, m];
104
+ if (m.role === 'assistant') {
105
+ this._state.usage.totalTokens = m.usage.totalTokens;
106
+ this._state.usage.totalCost += m.usage.cost.total;
107
+ this._state.usage.lastInputTokens = m.usage.input;
108
+ }
84
109
  }
85
110
  appendMessages(ms) {
86
111
  this._state.messages = [...this._state.messages, ...ms];
112
+ for (const m of ms) {
113
+ if (m.role === 'assistant') {
114
+ this._state.usage.totalTokens = m.usage.totalTokens;
115
+ this._state.usage.totalCost += m.usage.cost.total;
116
+ this._state.usage.lastInputTokens = m.usage.input;
117
+ }
118
+ }
87
119
  }
88
120
  async queueMessage(m) {
89
121
  // Transform message and queue it for injection at next turn
@@ -234,6 +266,9 @@ export class Conversation {
234
266
  if (!model) {
235
267
  throw new Error("No model configured");
236
268
  }
269
+ if (this._state.costLimit && this._state.usage.totalCost >= this._state.costLimit) {
270
+ throw new Error("Cost limit exceeded");
271
+ }
237
272
  this.runningPrompt = new Promise((resolve) => {
238
273
  this.resolveRunningPrompt = resolve;
239
274
  });
@@ -245,6 +280,11 @@ export class Conversation {
245
280
  systemPrompt: this._state.systemPrompt,
246
281
  tools: this._state.tools,
247
282
  provider: this._state.provider,
283
+ budget: {
284
+ costLimit: this._state.costLimit,
285
+ contextLimit: this._state.contextLimit,
286
+ currentCost: this._state.usage.totalCost
287
+ },
248
288
  getQueuedMessages: async () => {
249
289
  if (this.queueMode === "one-at-a-time") {
250
290
  if (this.messageQueue.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"conversation.js","sourceRoot":"","sources":["../../src/agent/conversation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conversation.js","sourceRoot":"","sources":["../../src/agent/conversation.ts"],"names":[],"mappings":"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"}
@@ -31,7 +31,7 @@ export declare class DefaultAgentRunner implements AgentRunner {
31
31
  constructor(client: LLMClient, options?: AgentRunnerOptions);
32
32
  run(config: AgentLoopConfig, initialMessages: Message[], emit: (event: AgentEvent) => void, signal: AbortSignal, callbacks: AgentRunnerCallbacks): Promise<Message[]>;
33
33
  callAssistant<TApi extends Api>(config: AgentLoopConfig, messages: Message[], providerOptions: OptionsForApi<TApi>, signal: AbortSignal, emit: (event: AgentEvent) => void): Promise<BaseAssistantMessage<TApi>>;
34
- executeToolCalls(tools: AgentTool[], assistantMessageContent: AssistantResponse, signal: AbortSignal, emit: (event: AgentEvent) => void, callbacks: AgentRunnerCallbacks): Promise<ToolResultMessage[]>;
34
+ executeToolCalls(tools: AgentTool[], assistantMessageContent: AssistantResponse, messages: Message[], signal: AbortSignal, emit: (event: AgentEvent) => void, callbacks: AgentRunnerCallbacks): Promise<ToolResultMessage[]>;
35
35
  private executeSingleTool;
36
36
  }
37
37
  //# sourceMappingURL=runner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/agent/runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,iBAAiB,EAAqB,oBAAoB,EAAE,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACzI,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,SAAS,EAAkC,MAAM,YAAY,CAAC;AACpG,OAAO,EAAkB,SAAS,EAAE,MAAM,WAAW,CAAC;AAKtD;;;GAGG;AACH,MAAM,WAAW,WAAW;IACxB,GAAG,CACC,MAAM,EAAE,eAAe,EACvB,eAAe,EAAE,OAAO,EAAE,EAC1B,IAAI,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,EACjC,MAAM,EAAE,WAAW,EACnB,SAAS,EAAE,oBAAoB,GAChC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACjC,aAAa,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,cAAc,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAC9C,kBAAkB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,qBAAqB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;CACvD;AAED,MAAM,WAAW,kBAAkB;IAC/B,sBAAsB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED;;;GAGG;AACH,qBAAa,kBAAmB,YAAW,WAAW;IAI9C,OAAO,CAAC,MAAM;IAHlB,OAAO,CAAC,sBAAsB,CAAU;gBAG5B,MAAM,EAAE,SAAS,EACzB,OAAO,GAAE,kBAAuB;IAK9B,GAAG,CACL,MAAM,EAAE,eAAe,EACvB,eAAe,EAAE,OAAO,EAAE,EAC1B,IAAI,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,EACjC,MAAM,EAAE,WAAW,EACnB,SAAS,EAAE,oBAAoB,GAChC,OAAO,CAAC,OAAO,EAAE,CAAC;IA6Ef,aAAa,CAAC,IAAI,SAAS,GAAG,EAChC,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE,OAAO,EAAE,EACnB,eAAe,EAAE,aAAa,CAAC,IAAI,CAAC,EACpC,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GAClC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAyChC,gBAAgB,CAClB,KAAK,EAAE,SAAS,EAAE,EAClB,uBAAuB,EAAE,iBAAiB,EAC1C,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,EACjC,SAAS,EAAE,oBAAoB,GAChC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YAqDjB,iBAAiB;CAuClC"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/agent/runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,iBAAiB,EAAqB,oBAAoB,EAAE,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACzI,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,SAAS,EAAwD,MAAM,YAAY,CAAC;AAC1H,OAAO,EAAkB,SAAS,EAAE,MAAM,WAAW,CAAC;AAKtD;;;GAGG;AACH,MAAM,WAAW,WAAW;IACxB,GAAG,CACC,MAAM,EAAE,eAAe,EACvB,eAAe,EAAE,OAAO,EAAE,EAC1B,IAAI,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,EACjC,MAAM,EAAE,WAAW,EACnB,SAAS,EAAE,oBAAoB,GAChC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACjC,aAAa,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,cAAc,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAC9C,kBAAkB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,qBAAqB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;CACvD;AAED,MAAM,WAAW,kBAAkB;IAC/B,sBAAsB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED;;;GAGG;AACH,qBAAa,kBAAmB,YAAW,WAAW;IAI9C,OAAO,CAAC,MAAM;IAHlB,OAAO,CAAC,sBAAsB,CAAU;gBAG5B,MAAM,EAAE,SAAS,EACzB,OAAO,GAAE,kBAAuB;IAK9B,GAAG,CACL,MAAM,EAAE,eAAe,EACvB,eAAe,EAAE,OAAO,EAAE,EAC1B,IAAI,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,EACjC,MAAM,EAAE,WAAW,EACnB,SAAS,EAAE,oBAAoB,GAChC,OAAO,CAAC,OAAO,EAAE,CAAC;IAuGf,aAAa,CAAC,IAAI,SAAS,GAAG,EAChC,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE,OAAO,EAAE,EACnB,eAAe,EAAE,aAAa,CAAC,IAAI,CAAC,EACpC,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GAClC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAyChC,gBAAgB,CAClB,KAAK,EAAE,SAAS,EAAE,EAClB,uBAAuB,EAAE,iBAAiB,EAC1C,QAAQ,EAAE,OAAO,EAAE,EACnB,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,EACjC,SAAS,EAAE,oBAAoB,GAChC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YA2DjB,iBAAiB;CAwClC"}
@@ -18,6 +18,8 @@ export class DefaultAgentRunner {
18
18
  let hasMoreToolCalls = true;
19
19
  let firstTurn = true;
20
20
  let queuedMessages = (await config.getQueuedMessages()) || [];
21
+ // Track accumulated cost within this run execution if budget is provided
22
+ let currentRunCost = 0;
21
23
  while (hasMoreToolCalls || queuedMessages.length > 0) {
22
24
  if (!firstTurn) {
23
25
  emit({ type: 'turn_start' });
@@ -42,6 +44,25 @@ export class DefaultAgentRunner {
42
44
  newMessages.push(assistantMessage);
43
45
  callbacks.appendMessage(assistantMessage);
44
46
  updatedMessages.push(assistantMessage);
47
+ // Check budget limits
48
+ if (config.budget) {
49
+ currentRunCost += assistantMessage.usage.cost.total;
50
+ const totalCost = config.budget.currentCost + currentRunCost;
51
+ const isCostLimitExceeded = config.budget.costLimit && totalCost >= config.budget.costLimit;
52
+ const isContextLimitExceeded = config.budget.contextLimit && assistantMessage.usage.input >= config.budget.contextLimit;
53
+ if (isCostLimitExceeded || isContextLimitExceeded) {
54
+ const toolCalls = assistantMessage.content.filter((c) => c.type === "toolCall");
55
+ const hasMoreActions = toolCalls.length > 0 || queuedMessages.length > 0;
56
+ if (hasMoreActions) {
57
+ if (isCostLimitExceeded) {
58
+ throw new Error(`Cost limit exceeded: ${totalCost} >= ${config.budget.costLimit}`);
59
+ }
60
+ if (isContextLimitExceeded) {
61
+ throw new Error(`Context limit exceeded: ${assistantMessage.usage.input} >= ${config.budget.contextLimit}`);
62
+ }
63
+ }
64
+ }
65
+ }
45
66
  const stopReason = assistantMessage.stopReason;
46
67
  if (stopReason === 'aborted' || stopReason === 'error') {
47
68
  emit({ type: "turn_end" });
@@ -53,7 +74,7 @@ export class DefaultAgentRunner {
53
74
  const toolCalls = assistantMessageContent.filter((c) => c.type === "toolCall");
54
75
  hasMoreToolCalls = toolCalls.length > 0;
55
76
  if (hasMoreToolCalls) {
56
- const toolResults = await this.executeToolCalls(config.tools, assistantMessageContent, signal, emit, callbacks);
77
+ const toolResults = await this.executeToolCalls(config.tools, assistantMessageContent, updatedMessages, signal, emit, callbacks);
57
78
  updatedMessages.push(...toolResults);
58
79
  newMessages.push(...toolResults);
59
80
  callbacks.appendMessages(toolResults);
@@ -92,9 +113,13 @@ export class DefaultAgentRunner {
92
113
  return assistantMessage;
93
114
  }
94
115
  }
95
- async executeToolCalls(tools, assistantMessageContent, signal, emit, callbacks) {
116
+ async executeToolCalls(tools, assistantMessageContent, messages, signal, emit, callbacks) {
96
117
  const toolCalls = assistantMessageContent.filter((c) => c.type === "toolCall");
97
118
  const results = [];
119
+ // Create execution context with current messages (read-only)
120
+ const context = {
121
+ messages: Object.freeze([...messages])
122
+ };
98
123
  for (const toolCall of toolCalls) {
99
124
  if (signal.aborted)
100
125
  break;
@@ -114,7 +139,7 @@ export class DefaultAgentRunner {
114
139
  toolName: toolCall.name,
115
140
  args: toolCall.arguments,
116
141
  partialResult
117
- }));
142
+ }), context);
118
143
  // Cleanup and emit end
119
144
  callbacks.removePendingToolCall(toolCall.toolCallId);
120
145
  emit({
@@ -132,7 +157,7 @@ export class DefaultAgentRunner {
132
157
  }
133
158
  return results;
134
159
  }
135
- async executeSingleTool(tool, toolCall, signal, onUpdate) {
160
+ async executeSingleTool(tool, toolCall, signal, onUpdate, context) {
136
161
  if (!tool) {
137
162
  return {
138
163
  result: {
@@ -148,7 +173,7 @@ export class DefaultAgentRunner {
148
173
  }
149
174
  try {
150
175
  const validatedArgs = validateToolArguments(tool, toolCall);
151
- const result = await tool.execute(toolCall.toolCallId, validatedArgs, signal, onUpdate);
176
+ const result = await tool.execute(toolCall.toolCallId, validatedArgs, signal, onUpdate, context);
152
177
  return { result, isError: false };
153
178
  }
154
179
  catch (e) {
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/agent/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/agent/runner.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,13 @@
1
1
  import { Api, BaseAssistantEvent, Content, Message, Model, OptionsForApi, Tool } from "../types.js";
2
2
  import type { Static, TSchema } from "@sinclair/typebox";
3
+ /**
4
+ * Context provided to tools during execution.
5
+ * Allows tools to make decisions based on conversation history.
6
+ */
7
+ export interface ToolExecutionContext {
8
+ /** Read-only conversation history (messages up to but not including current tool results) */
9
+ messages: readonly Message[];
10
+ }
3
11
  export interface AgentToolResult<T> {
4
12
  content: Content;
5
13
  details: T;
@@ -19,7 +27,7 @@ export interface Attachment {
19
27
  export type AgentToolUpdateCallback<T = any> = (partialResult: AgentToolResult<T>) => void;
20
28
  export interface AgentTool<TParameters extends TSchema = TSchema, TDetails = any> extends Tool<TParameters> {
21
29
  label: string;
22
- execute: (toolCallId: string, params: Static<TParameters>, signal?: AbortSignal, onUpdate?: AgentToolUpdateCallback<TDetails>) => Promise<AgentToolResult<TDetails>>;
30
+ execute: (toolCallId: string, params: Static<TParameters>, signal?: AbortSignal, onUpdate?: AgentToolUpdateCallback<TDetails>, context?: ToolExecutionContext) => Promise<AgentToolResult<TDetails>>;
23
31
  }
24
32
  export interface Provider<TApi extends Api> {
25
33
  model: Model<TApi>;
@@ -37,11 +45,23 @@ export interface AgentState {
37
45
  isStreaming: boolean;
38
46
  pendingToolCalls: Set<string>;
39
47
  error?: string;
48
+ usage: {
49
+ totalTokens: number;
50
+ totalCost: number;
51
+ lastInputTokens: number;
52
+ };
53
+ costLimit?: number;
54
+ contextLimit?: number;
40
55
  }
41
56
  export interface AgentLoopConfig {
42
57
  systemPrompt?: string;
43
58
  tools: AgentTool[];
44
59
  provider: Provider<Api>;
60
+ budget?: {
61
+ costLimit?: number;
62
+ contextLimit?: number;
63
+ currentCost: number;
64
+ };
45
65
  getQueuedMessages: <T>() => Promise<QueuedMessage<T>[]>;
46
66
  }
47
67
  export type AgentEvent = {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/agent/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/agent/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ank1015/providers",
3
- "version": "0.0.34",
3
+ "version": "0.0.36",
4
4
  "type": "module",
5
5
  "description": "Multi-provider LLM SDK with native provider options support.",
6
6
  "main": "./dist/index.js",