@balchemyai/agent-sdk 0.1.14 → 0.1.16

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/CHANGELOG.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Changelog
2
2
 
3
- All notable changes to `@balchemy/agent-sdk` are documented here.
3
+ All notable changes to `@balchemyai/agent-sdk` are documented here.
4
4
 
5
5
  The format follows [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
6
6
  This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Balchemy
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,11 +1,11 @@
1
- # @balchemy/agent-sdk
1
+ # @balchemyai/agent-sdk
2
2
 
3
3
  TypeScript SDK for Balchemy external AI agents. Handles onboarding (SIWE wallet-based or walletless Identity flow), MCP tool access, token lifecycle management, and real-time SSE event streaming.
4
4
 
5
5
  ## Installation
6
6
 
7
7
  ```sh
8
- npm install @balchemy/agent-sdk
8
+ npm install @balchemyai/agent-sdk
9
9
  ```
10
10
 
11
11
  ## Auth Paths
@@ -15,7 +15,7 @@ npm install @balchemy/agent-sdk
15
15
  Use this when your agent controls a Solana or EVM wallet and can sign messages.
16
16
 
17
17
  ```ts
18
- import { BalchemyAgentSdk } from "@balchemy/agent-sdk";
18
+ import { BalchemyAgentSdk } from "@balchemyai/agent-sdk";
19
19
 
20
20
  const sdk = new BalchemyAgentSdk({
21
21
  apiBaseUrl: "https://api.balchemy.ai/api",
@@ -52,7 +52,7 @@ const mcp = sdk.connectMcp({
52
52
  Use this when your agent has an HMAC-signed identity token (for balchemy native) or ES256 JWT (for external providers) from a provider registered with Balchemy.
53
53
 
54
54
  ```ts
55
- import { BalchemyAgentSdk } from "@balchemy/agent-sdk";
55
+ import { BalchemyAgentSdk } from "@balchemyai/agent-sdk";
56
56
 
57
57
  const sdk = new BalchemyAgentSdk({
58
58
  apiBaseUrl: "https://api.balchemy.ai/api",
@@ -106,9 +106,9 @@ const swap = await mcp.evmSwap({
106
106
 
107
107
  ## Tool Exposure and Scope
108
108
 
109
- By default the MCP endpoint exposes **7 tools**: `ask_bot`, `trade_command`, `agent_execute`, `agent_research`, `agent_portfolio`, `agent_status`, `agent_config`.
109
+ By default the MCP endpoint exposes a curated agent-facing tool set for chat, execution, setup, behavior rules, portfolio/status, and subscriptions.
110
110
 
111
- The full catalog of **106 tools** is available when the platform flag `MCP_EXPOSE_GRANULAR_TOOLS=true` is enabled on the bot. Contact the Balchemy team to enable granular tool access for your integration.
111
+ The broader internal catalog is only exposed when the platform flag `MCP_EXPOSE_GRANULAR_TOOLS=true` is enabled on the bot. Contact the Balchemy team if your integration needs granular tool access beyond the default agent-facing surface.
112
112
 
113
113
  Tool scopes:
114
114
 
@@ -124,8 +124,8 @@ Pass `scope` during onboarding to receive an MCP key with the appropriate permis
124
124
  All SDK methods throw `AgentSdkError` on failure.
125
125
 
126
126
  ```ts
127
- import { AgentSdkError } from "@balchemy/agent-sdk";
128
- import type { AgentSdkErrorCode } from "@balchemy/agent-sdk";
127
+ import { AgentSdkError } from "@balchemyai/agent-sdk";
128
+ import type { AgentSdkErrorCode } from "@balchemyai/agent-sdk";
129
129
 
130
130
  try {
131
131
  const result = await mcp.agentExecute({ instruction: "..." });
@@ -142,7 +142,7 @@ try {
142
142
  ## Tool Response Helpers
143
143
 
144
144
  ```ts
145
- import { getToolText, parseToolJson, isToolError } from "@balchemy/agent-sdk";
145
+ import { getToolText, parseToolJson, isToolError } from "@balchemyai/agent-sdk";
146
146
 
147
147
  const response = await mcp.agentPortfolio();
148
148
 
@@ -157,7 +157,7 @@ if (isToolError(response)) {
157
157
  ## Token Management
158
158
 
159
159
  ```ts
160
- import { TokenStore } from "@balchemy/agent-sdk";
160
+ import { TokenStore } from "@balchemyai/agent-sdk";
161
161
 
162
162
  const store = new TokenStore({
163
163
  // Called when the stored token nears expiry — return a fresh OnboardingResponse
@@ -175,7 +175,7 @@ const token = await store.get(); // auto-refreshes if expiry < threshold
175
175
  The `OnboardingResponse` includes an `identityAccess` field when the platform issues a short-lived access token alongside the MCP key.
176
176
 
177
177
  ```ts
178
- import type { IdentityAccess } from "@balchemy/agent-sdk";
178
+ import type { IdentityAccess } from "@balchemyai/agent-sdk";
179
179
 
180
180
  const access: IdentityAccess | undefined = response.identityAccess;
181
181
  if (access) {
@@ -187,13 +187,13 @@ if (access) {
187
187
  ## SSE Event Streaming
188
188
 
189
189
  ```ts
190
- import { SseEventStream } from "@balchemy/agent-sdk";
191
- import type { SseEvent } from "@balchemy/agent-sdk";
190
+ import { SseEventStream } from "@balchemyai/agent-sdk";
191
+ import type { SseEvent } from "@balchemyai/agent-sdk";
192
192
 
193
193
  const stream = new SseEventStream(
194
- "https://api.balchemy.ai/api/events",
194
+ `${response.mcp.endpoint}/events/sse`,
195
195
  response.mcp.apiKey ?? "",
196
- { reconnectDelayMs: 2000, maxReconnects: 5 }
196
+ { reconnectDelayMs: 2000, maxReconnects: 0 }
197
197
  );
198
198
 
199
199
  // Async iterator
@@ -251,7 +251,7 @@ To enable agent onboarding, the following environment variables must be configur
251
251
 
252
252
  1. Install the SDK:
253
253
  ```sh
254
- npm install @balchemy/agent-sdk
254
+ npm install @balchemyai/agent-sdk
255
255
  ```
256
256
 
257
257
  2. Create an MCP API key for your bot via the Hub UI: `Hub > Your Bot > API Keys > Create Key`.
@@ -1 +1 @@
1
- {"version":3,"file":"agent-loop.d.ts","sourceRoot":"","sources":["../../src/agent-loop/agent-loop.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,eAAe,EACf,WAAW,EAMZ,MAAM,SAAS,CAAC;AAejB,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAiB;IAC7C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAa;IACjC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAClD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAoB;IACxC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IACjD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;IAC9C,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,SAAS,CAA+B;IAChD,OAAO,CAAC,cAAc,CAA6B;IAEnD,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,YAAY,CAAqB;IAEzC,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,UAAU,CAA2B;IAE7C,kEAAkE;IAClE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqB;IAEhD,mEAAmE;IACnE,OAAO,CAAC,cAAc,CAAK;IAC3B,8EAA8E;IAC9E,OAAO,CAAC,gBAAgB,CAAK;IAE7B,yEAAyE;IACzE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;gBAEtB,MAAM,EAAE,eAAe;IA0C7B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA0CtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAS3B,SAAS,IAAI,WAAW;IAkBxB;;;;;OAKG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAoBnD,OAAO,CAAC,WAAW;YAsCL,YAAY;IAqG1B;;;;OAIG;YACW,cAAc;IAmB5B;;;;;OAKG;YACW,kBAAkB;IAmBhC;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAQlC,OAAO,CAAC,gBAAgB;CAuBzB"}
1
+ {"version":3,"file":"agent-loop.d.ts","sourceRoot":"","sources":["../../src/agent-loop/agent-loop.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,eAAe,EACf,WAAW,EAMZ,MAAM,SAAS,CAAC;AAejB,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAiB;IAC7C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAa;IACjC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAClD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAoB;IACxC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IACjD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;IAC9C,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,SAAS,CAA+B;IAChD,OAAO,CAAC,cAAc,CAA6B;IAEnD,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,YAAY,CAAqB;IAEzC,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,UAAU,CAA2B;IAE7C,kEAAkE;IAClE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqB;IAEhD,mEAAmE;IACnE,OAAO,CAAC,cAAc,CAAK;IAC3B,8EAA8E;IAC9E,OAAO,CAAC,gBAAgB,CAAK;IAE7B,yEAAyE;IACzE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;gBAEtB,MAAM,EAAE,eAAe;IAgD7B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA0CtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAS3B,SAAS,IAAI,WAAW;IAkBxB;;;;;OAKG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAoBnD,OAAO,CAAC,WAAW;YAsCL,YAAY;IAqG1B;;;;OAIG;YACW,cAAc;IAoB5B;;;;;OAKG;YACW,kBAAkB;IAoBhC;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAQlC,OAAO,CAAC,gBAAgB;CAuBzB"}
@@ -76,7 +76,7 @@ class AgentLoop {
76
76
  // Derive the telemetry endpoint from the MCP endpoint:
77
77
  // https://api.balchemy.ai/mcp/abc123 → https://api.balchemy.ai/api/agent-telemetry/abc123
78
78
  const telemetryEndpoint = config.mcpEndpoint.replace(/\/mcp\//, '/api/agent-telemetry/');
79
- this.telemetry = new telemetry_reporter_1.TelemetryReporter(telemetryEndpoint, config.apiKey);
79
+ this.telemetry = new telemetry_reporter_1.TelemetryReporter(telemetryEndpoint, config.apiKey, 30_000, undefined, { sdkVersion: config.sdkVersion, cliVersion: config.cliVersion });
80
80
  }
81
81
  async start() {
82
82
  this.status = 'starting';
@@ -152,7 +152,7 @@ class AgentLoop {
152
152
  const reply = parsed['reply'] ?? parsed['text'];
153
153
  return typeof reply === 'string' ? reply : text;
154
154
  }
155
- catch {
155
+ catch (_error) {
156
156
  return text;
157
157
  }
158
158
  }
@@ -304,9 +304,10 @@ class AgentLoop {
304
304
  this.portfolioCache = { snapshot, fetchedAt: now };
305
305
  return snapshot;
306
306
  }
307
- catch {
308
- // Graceful degradation continue with empty snapshot
309
- this.config.onError?.(new Error('agent_portfolio fetch failed — continuing with empty snapshot'));
307
+ catch (err) {
308
+ const msg = err instanceof Error ? err.message : String(err);
309
+ // Graceful degradation: continue with empty snapshot.
310
+ this.config.onError?.(new Error(`agent_portfolio fetch failed: ${msg}; continuing with empty snapshot`));
310
311
  return {};
311
312
  }
312
313
  }
@@ -328,9 +329,10 @@ class AgentLoop {
328
329
  this.rulesCache = { compressed, fetchedAt: now };
329
330
  return compressed;
330
331
  }
331
- catch {
332
- // Graceful degradation continue without rule context
333
- this.config.onError?.(new Error('behavior-rules resource fetch failed continuing without rules'));
332
+ catch (err) {
333
+ const msg = err instanceof Error ? err.message : String(err);
334
+ // Graceful degradation: continue without rule context.
335
+ this.config.onError?.(new Error(`behavior-rules resource fetch failed: ${msg}; continuing without rules`));
334
336
  return '';
335
337
  }
336
338
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agent-loop.js","sourceRoot":"","sources":["../../src/agent-loop/agent-loop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-loop.js","sourceRoot":"","sources":["../../src/agent-loop/agent-loop.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,8 @@
5
5
  * the Balchemy server for ClickHouse analytics.
6
6
  *
7
7
  * Design principles:
8
- * - All sends are fire-and-forget errors are silently swallowed.
8
+ * - Sends are fire-and-forget from the agent loop, but failed batches are retried
9
+ * from a bounded in-memory spool.
9
10
  * - Events are batched; the flush runs every flushIntervalMs (default 30 s).
10
11
  * - A final flush is triggered synchronously on stop().
11
12
  */
@@ -40,21 +41,36 @@ export type TelemetryEntry = ({
40
41
  type: 'model_route';
41
42
  timestamp: number;
42
43
  } & ModelRouteData);
44
+ export interface TelemetryReporterMetadata {
45
+ sdkVersion?: string;
46
+ cliVersion?: string;
47
+ }
43
48
  export declare class TelemetryReporter {
44
49
  /** Full URL: e.g. https://api.balchemy.ai/api/agent-telemetry/abc123 */
45
50
  private readonly endpoint;
46
51
  private readonly apiKey;
47
52
  private readonly flushIntervalMs;
53
+ private readonly maxBufferedEntries;
54
+ private readonly metadata;
48
55
  private readonly buffer;
56
+ private readonly retryQueue;
49
57
  private timer;
58
+ private droppedSinceLastBatch;
59
+ private batchSequence;
60
+ private lastFailureReason;
50
61
  constructor(
51
62
  /** Full URL: e.g. https://api.balchemy.ai/api/agent-telemetry/abc123 */
52
- endpoint: string, apiKey: string, flushIntervalMs?: number);
63
+ endpoint: string, apiKey: string, flushIntervalMs?: number, maxBufferedEntries?: number, metadata?: TelemetryReporterMetadata);
53
64
  start(): void;
54
65
  stop(): void;
55
66
  reportLlmCall(data: LlmCallData): void;
56
67
  reportDecision(data: DecisionData): void;
57
68
  reportModelRoute(data: ModelRouteData): void;
69
+ getLastFailureReason(): string;
58
70
  private flush;
71
+ private enqueue;
72
+ private nextBatch;
73
+ private trimToCapacity;
74
+ private pendingEntryCount;
59
75
  }
60
76
  //# sourceMappingURL=telemetry-reporter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry-reporter.d.ts","sourceRoot":"","sources":["../../src/agent-loop/telemetry-reporter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG,UAAU,GAAG,aAAa,CAAC;AAEzE,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,OAAO,GAAG,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,cAAc,GACtB,CAAC;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,WAAW,CAAC,GACvD,CAAC;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,YAAY,CAAC,GACxD,CAAC;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,cAAc,CAAC,CAAC;AAElE,qBAAa,iBAAiB;IAK1B,wEAAwE;IACxE,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAPlC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwB;IAC/C,OAAO,CAAC,KAAK,CAA+C;;IAG1D,wEAAwE;IACvD,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,eAAe,GAAE,MAAe;IAGnD,KAAK,IAAI,IAAI;IAWb,IAAI,IAAI,IAAI;IASZ,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;IAItC,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAIxC,gBAAgB,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI;YAI9B,KAAK;CAkBpB"}
1
+ {"version":3,"file":"telemetry-reporter.d.ts","sourceRoot":"","sources":["../../src/agent-loop/telemetry-reporter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG,UAAU,GAAG,aAAa,CAAC;AAEzE,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,OAAO,GAAG,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,cAAc,GACtB,CAAC;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,WAAW,CAAC,GACvD,CAAC;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,YAAY,CAAC,GACxD,CAAC;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,cAAc,CAAC,CAAC;AASlE,MAAM,WAAW,yBAAyB;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAMD,qBAAa,iBAAiB;IAS1B,wEAAwE;IACxE,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAb3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwB;IAC/C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAwB;IACnD,OAAO,CAAC,KAAK,CAA+C;IAC5D,OAAO,CAAC,qBAAqB,CAAK;IAClC,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,iBAAiB,CAAM;;IAG7B,wEAAwE;IACvD,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,eAAe,GAAE,MAAe,EAChC,kBAAkB,GAAE,MAAqC,EACzD,QAAQ,GAAE,yBAA8B;IAG3D,KAAK,IAAI,IAAI;IAWb,IAAI,IAAI,IAAI;IASZ,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;IAItC,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAIxC,gBAAgB,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI;IAI5C,oBAAoB,IAAI,MAAM;YAIhB,KAAK;IAqCnB,OAAO,CAAC,OAAO;IAKf,OAAO,CAAC,SAAS;IAoBjB,OAAO,CAAC,cAAc;IAsBtB,OAAO,CAAC,iBAAiB;CAM1B"}
@@ -6,24 +6,36 @@
6
6
  * the Balchemy server for ClickHouse analytics.
7
7
  *
8
8
  * Design principles:
9
- * - All sends are fire-and-forget errors are silently swallowed.
9
+ * - Sends are fire-and-forget from the agent loop, but failed batches are retried
10
+ * from a bounded in-memory spool.
10
11
  * - Events are batched; the flush runs every flushIntervalMs (default 30 s).
11
12
  * - A final flush is triggered synchronously on stop().
12
13
  */
13
14
  Object.defineProperty(exports, "__esModule", { value: true });
14
15
  exports.TelemetryReporter = void 0;
16
+ const DEFAULT_MAX_BUFFERED_ENTRIES = 1_000;
17
+ const MAX_EVENTS_PER_BATCH = 200;
18
+ const BALCHEMY_AGENT_SDK_VERSION = '0.1.15';
15
19
  class TelemetryReporter {
16
20
  endpoint;
17
21
  apiKey;
18
22
  flushIntervalMs;
23
+ maxBufferedEntries;
24
+ metadata;
19
25
  buffer = [];
26
+ retryQueue = [];
20
27
  timer = null;
28
+ droppedSinceLastBatch = 0;
29
+ batchSequence = 0;
30
+ lastFailureReason = '';
21
31
  constructor(
22
32
  /** Full URL: e.g. https://api.balchemy.ai/api/agent-telemetry/abc123 */
23
- endpoint, apiKey, flushIntervalMs = 30_000) {
33
+ endpoint, apiKey, flushIntervalMs = 30_000, maxBufferedEntries = DEFAULT_MAX_BUFFERED_ENTRIES, metadata = {}) {
24
34
  this.endpoint = endpoint;
25
35
  this.apiKey = apiKey;
26
36
  this.flushIntervalMs = flushIntervalMs;
37
+ this.maxBufferedEntries = maxBufferedEntries;
38
+ this.metadata = metadata;
27
39
  }
28
40
  start() {
29
41
  if (this.timer !== null)
@@ -45,33 +57,97 @@ class TelemetryReporter {
45
57
  void this.flush();
46
58
  }
47
59
  reportLlmCall(data) {
48
- this.buffer.push({ type: 'llm_call', timestamp: Date.now(), ...data });
60
+ this.enqueue({ type: 'llm_call', timestamp: Date.now(), ...data });
49
61
  }
50
62
  reportDecision(data) {
51
- this.buffer.push({ type: 'decision', timestamp: Date.now(), ...data });
63
+ this.enqueue({ type: 'decision', timestamp: Date.now(), ...data });
52
64
  }
53
65
  reportModelRoute(data) {
54
- this.buffer.push({ type: 'model_route', timestamp: Date.now(), ...data });
66
+ this.enqueue({ type: 'model_route', timestamp: Date.now(), ...data });
67
+ }
68
+ getLastFailureReason() {
69
+ return this.lastFailureReason;
55
70
  }
56
71
  async flush() {
57
- if (this.buffer.length === 0)
72
+ const batch = this.nextBatch();
73
+ if (!batch)
58
74
  return;
59
- // Drain atomically — if fetch throws, events are lost (intentional: telemetry
60
- // must never block the agent loop or accumulate indefinitely on a dead server).
61
- const batch = this.buffer.splice(0);
62
75
  try {
63
- await fetch(this.endpoint, {
76
+ const response = await fetch(this.endpoint, {
64
77
  method: 'POST',
65
78
  headers: {
66
79
  Authorization: `Bearer ${this.apiKey}`,
67
80
  'Content-Type': 'application/json',
68
81
  },
69
- body: JSON.stringify({ events: batch }),
82
+ body: JSON.stringify({
83
+ batchId: batch.batchId,
84
+ attemptCount: batch.attemptCount,
85
+ droppedCount: batch.droppedCount,
86
+ sdkVersion: this.metadata.sdkVersion ?? BALCHEMY_AGENT_SDK_VERSION,
87
+ cliVersion: this.metadata.cliVersion,
88
+ events: batch.events,
89
+ }),
70
90
  });
91
+ if (!response.ok) {
92
+ throw new Error(`telemetry ingest failed: ${response.status}`);
93
+ }
94
+ if (this.retryQueue[0]?.batchId === batch.batchId) {
95
+ this.retryQueue.shift();
96
+ }
97
+ this.lastFailureReason = '';
98
+ }
99
+ catch (error) {
100
+ this.lastFailureReason = error instanceof Error ? error.message : String(error);
101
+ batch.attemptCount++;
102
+ if (!this.retryQueue.some((item) => item.batchId === batch.batchId)) {
103
+ this.retryQueue.unshift(batch);
104
+ }
105
+ this.trimToCapacity();
106
+ }
107
+ }
108
+ enqueue(entry) {
109
+ this.buffer.push(entry);
110
+ this.trimToCapacity();
111
+ }
112
+ nextBatch() {
113
+ const retryBatch = this.retryQueue[0];
114
+ if (retryBatch) {
115
+ return retryBatch;
71
116
  }
72
- catch {
73
- // Fire-and-forget — telemetry failures must not propagate to the agent loop
117
+ if (this.buffer.length === 0) {
118
+ return null;
74
119
  }
120
+ const events = this.buffer.splice(0, MAX_EVENTS_PER_BATCH);
121
+ const batch = {
122
+ batchId: `sdk-${Date.now()}-${++this.batchSequence}`,
123
+ events,
124
+ attemptCount: 1,
125
+ droppedCount: this.droppedSinceLastBatch,
126
+ };
127
+ this.droppedSinceLastBatch = 0;
128
+ return batch;
129
+ }
130
+ trimToCapacity() {
131
+ while (this.pendingEntryCount() > this.maxBufferedEntries) {
132
+ const droppedFromBuffer = this.buffer.shift();
133
+ if (droppedFromBuffer) {
134
+ this.droppedSinceLastBatch++;
135
+ continue;
136
+ }
137
+ const oldestRetry = this.retryQueue[this.retryQueue.length - 1];
138
+ const droppedFromRetry = oldestRetry?.events.shift();
139
+ if (droppedFromRetry) {
140
+ this.droppedSinceLastBatch++;
141
+ if (oldestRetry.events.length === 0) {
142
+ this.retryQueue.pop();
143
+ }
144
+ continue;
145
+ }
146
+ return;
147
+ }
148
+ }
149
+ pendingEntryCount() {
150
+ return this.retryQueue.reduce((count, batch) => count + batch.events.length, this.buffer.length);
75
151
  }
76
152
  }
77
153
  exports.TelemetryReporter = TelemetryReporter;
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry-reporter.js","sourceRoot":"","sources":["../../src/agent-loop/telemetry-reporter.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;AAgCH,MAAa,iBAAiB;IAMT;IACA;IACA;IAPF,MAAM,GAAqB,EAAE,CAAC;IACvC,KAAK,GAA0C,IAAI,CAAC;IAE5D;IACE,wEAAwE;IACvD,QAAgB,EAChB,MAAc,EACd,kBAA0B,MAAM;QAFhC,aAAQ,GAAR,QAAQ,CAAQ;QAChB,WAAM,GAAN,MAAM,CAAQ;QACd,oBAAe,GAAf,eAAe,CAAiB;IAChD,CAAC;IAEJ,KAAK;QACH,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI;YAAE,OAAO;QAChC,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;YAC5B,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;QACpB,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACzB,+DAA+D;QAC/D,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACrB,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;IAED,IAAI;QACF,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;YACxB,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QACpB,CAAC;QACD,+EAA+E;QAC/E,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;IAED,aAAa,CAAC,IAAiB;QAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,cAAc,CAAC,IAAkB;QAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,gBAAgB,CAAC,IAAoB;QACnC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;IAC5E,CAAC;IAEO,KAAK,CAAC,KAAK;QACjB,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QACrC,8EAA8E;QAC9E,gFAAgF;QAChF,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE;gBACzB,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;oBACtC,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;aACxC,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,4EAA4E;QAC9E,CAAC;IACH,CAAC;CACF;AA7DD,8CA6DC"}
1
+ {"version":3,"file":"telemetry-reporter.js","sourceRoot":"","sources":["../../src/agent-loop/telemetry-reporter.ts"],"names":[],"mappings":"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"}
@@ -51,6 +51,10 @@ export interface AgentLoopConfig {
51
51
  webhookSecret?: string;
52
52
  /** Custom fetch function for MCP requests (e.g., to inject replay protection headers). */
53
53
  mcpFetchFn?: typeof fetch;
54
+ /** Optional SDK version override sent with telemetry ingestion batches. */
55
+ sdkVersion?: string;
56
+ /** Optional CLI version sent with telemetry ingestion batches. */
57
+ cliVersion?: string;
54
58
  /** LLM call timeout in ms. Default: 10000 */
55
59
  llmTimeoutMs?: number;
56
60
  /** Max consecutive LLM failures before pausing. Default: 3 */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/agent-loop/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE5D,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IACvE,2EAA2E;IAC3E,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,eAAe;IAC9B,uEAAuE;IACvE,WAAW,EAAE,MAAM,CAAC;IACpB,2BAA2B;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,mBAAmB;IACnB,WAAW,EAAE,WAAW,CAAC;IACzB,kBAAkB;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mHAAmH;IACnH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,uDAAuD;IACvD,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,6CAA6C;IAC7C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,sEAAsE;IACtE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oDAAoD;IACpD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0FAA0F;IAC1F,UAAU,CAAC,EAAE,OAAO,KAAK,CAAC;IAC1B,6CAA6C;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,8DAA8D;IAC9D,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,+BAA+B;IAC/B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IACtC,8BAA8B;IAC9B,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,KAAK,IAAI,CAAC;IAC/C,sBAAsB;IACtB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,+BAA+B;IAC/B,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;IAC/C,4DAA4D;IAC5D,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CACzG;AAED,2EAA2E;AAC3E,MAAM,WAAW,sBAAsB;IACrC,mCAAmC;IACnC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mCAAmC;IACnC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,KAAK,GAAG,SAAS,CAAC;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED,MAAM,MAAM,eAAe,GACvB,UAAU,GACV,SAAS,GACT,QAAQ,GACR,kBAAkB,GAClB,aAAa,GACb,SAAS,GACT,OAAO,CAAC;AAEZ,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,eAAe,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,0EAA0E;AAC1E,MAAM,WAAW,kBAAkB;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,eAAO,MAAM,yBAAyB;;;;;CAK5B,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/agent-loop/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/agent-loop/types.ts"],"names":[],"mappings":";;;AAwIa,QAAA,yBAAyB,GAAG;IACvC,eAAe,EAAE,CAAC;IAClB,YAAY,EAAE,MAAM;IACpB,sBAAsB,EAAE,CAAC;IACzB,WAAW,EAAE,CAAC;CACN,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/agent-loop/types.ts"],"names":[],"mappings":";;;AA4Ia,QAAA,yBAAyB,GAAG;IACvC,eAAe,EAAE,CAAC;IAClB,YAAY,EAAE,MAAM;IACpB,sBAAsB,EAAE,CAAC;IACzB,WAAW,EAAE,CAAC;CACN,CAAC"}
@@ -21,8 +21,8 @@ automatically on failure or reboot.
21
21
  **1. On your local machine:**
22
22
 
23
23
  ```bash
24
- npx create-balchemy-agent # Setup wizard
25
- npx balchemy-agent docker # Generate Dockerfile + docker-compose.yml
24
+ npx balchemy # Setup wizard
25
+ npx balchemy docker # Generate Dockerfile + docker-compose.yml
26
26
  ```
27
27
 
28
28
  This creates:
@@ -107,13 +107,13 @@ If you prefer to run the agent directly as a system service:
107
107
  **1. Install globally:**
108
108
 
109
109
  ```bash
110
- npm install -g create-balchemy-agent @balchemy/agent-sdk
110
+ npm install -g balchemy
111
111
  ```
112
112
 
113
113
  **2. Create a systemd unit file:**
114
114
 
115
115
  ```ini
116
- # /etc/systemd/system/balchemy-agent.service
116
+ # /etc/systemd/system/balchemy.service
117
117
  [Unit]
118
118
  Description=Balchemy Trading Agent
119
119
  After=network.target
@@ -122,7 +122,7 @@ After=network.target
122
122
  Type=simple
123
123
  User=ubuntu
124
124
  WorkingDirectory=/home/ubuntu/agent
125
- ExecStart=/usr/bin/balchemy-agent start /home/ubuntu/agent/agent.config.yaml
125
+ ExecStart=/usr/bin/balchemy start /home/ubuntu/agent/agent.config.yaml
126
126
  EnvironmentFile=/home/ubuntu/agent/.env
127
127
  Restart=always
128
128
  RestartSec=10
@@ -137,9 +137,9 @@ WantedBy=multi-user.target
137
137
 
138
138
  ```bash
139
139
  sudo systemctl daemon-reload
140
- sudo systemctl enable balchemy-agent
141
- sudo systemctl start balchemy-agent
142
- sudo journalctl -u balchemy-agent -f
140
+ sudo systemctl enable balchemy
141
+ sudo systemctl start balchemy
142
+ sudo journalctl -u balchemy -f
143
143
  ```
144
144
 
145
145
  ---
@@ -26,7 +26,7 @@ Get an autonomous trading agent running in under 5 minutes.
26
26
  ## Step 2: Run the setup wizard
27
27
 
28
28
  ```bash
29
- npx create-balchemy-agent
29
+ npx balchemy
30
30
  ```
31
31
 
32
32
  The wizard asks:
@@ -43,7 +43,7 @@ It writes `agent.config.yaml` and `.env` to the current directory.
43
43
  ## Step 3: Start the agent
44
44
 
45
45
  ```bash
46
- npx balchemy-agent start
46
+ npx balchemy start
47
47
  ```
48
48
 
49
49
  You should see:
@@ -59,13 +59,14 @@ The agent:
59
59
  2. Receives market signals and platform events
60
60
  3. Calls your LLM to decide whether to buy, sell, or hold
61
61
  4. Executes approved trades via MCP tool calls
62
+ 5. Can be monitored and adjusted through the Balchemy CLI cockpit (`npx balchemy`)
62
63
 
63
64
  ---
64
65
 
65
66
  ## Step 4: Docker (production)
66
67
 
67
68
  ```bash
68
- npx balchemy-agent docker
69
+ npx balchemy docker
69
70
  docker compose up -d
70
71
  docker compose logs -f
71
72
  ```
@@ -80,7 +81,7 @@ The generated `docker-compose.yml` runs the agent with:
80
81
  ## Programmatic usage (TypeScript)
81
82
 
82
83
  ```typescript
83
- import { AgentLoop } from '@balchemy/agent-sdk';
84
+ import { AgentLoop } from '@balchemyai/agent-sdk';
84
85
 
85
86
  // From YAML config file
86
87
  const loop = AgentLoop.fromConfig('./agent.config.yaml');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@balchemyai/agent-sdk",
3
- "version": "0.1.14",
3
+ "version": "0.1.16",
4
4
  "license": "MIT",
5
5
  "private": false,
6
6
  "description": "Balchemy external AI agent onboarding + MCP SDK — ERC-8004 onboarding, Solana/EVM trading, 100 tools via MCP",
@@ -38,21 +38,15 @@
38
38
  "homepage": "https://balchemy.ai",
39
39
  "repository": {
40
40
  "type": "git",
41
- "url": "https://github.com/balchemy-ai/balchemy-agent-sdk"
41
+ "url": "https://github.com/balchemy/balchemy-agent",
42
+ "directory": "packages/sdk"
42
43
  },
43
44
  "bugs": {
44
- "url": "https://github.com/balchemy-ai/balchemy-agent-sdk/issues"
45
+ "url": "https://github.com/balchemy/balchemy-agent/issues"
45
46
  },
46
47
  "engines": {
47
48
  "node": ">=18.0.0"
48
49
  },
49
- "scripts": {
50
- "build": "tsc -p tsconfig.json",
51
- "typecheck": "tsc --noEmit -p tsconfig.json",
52
- "test": "jest",
53
- "test:cov": "jest --coverage",
54
- "prepublishOnly": "pnpm run typecheck && pnpm run build"
55
- },
56
50
  "dependencies": {
57
51
  "js-yaml": "^4.1.0"
58
52
  },
@@ -63,5 +57,11 @@
63
57
  "jest": "^30.0.0",
64
58
  "ts-jest": "^29.3.4",
65
59
  "typescript": "5.8.3"
60
+ },
61
+ "scripts": {
62
+ "build": "tsc -p tsconfig.json",
63
+ "typecheck": "tsc --noEmit -p tsconfig.json",
64
+ "test": "jest",
65
+ "test:cov": "jest --coverage"
66
66
  }
67
- }
67
+ }