@agentified/mastra 0.0.3 → 0.0.5-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,160 @@
1
+ # @agentified/mastra
2
+
3
+ [Mastra](https://mastra.ai) adapter for [Agentified](../../README.md) — wraps a Mastra agent with Agentified context resolution, dynamic tool hydration, and AG-UI streaming.
4
+
5
+ ## Install
6
+
7
+ ```bash
8
+ npm install @agentified/mastra @agentified/sdk
9
+ ```
10
+
11
+ **Peer dependencies:** `@mastra/core >= 1.0.0`, `@ag-ui/client >= 0.0.45`, `@ag-ui/mastra >= 1.0.0`, `zod >= 3.0.0`
12
+
13
+ ## Quick Start
14
+
15
+ ```typescript
16
+ import { Agent } from "@mastra/core/agent";
17
+ import { AgentifiedMastra, streamSSE } from "@agentified/mastra";
18
+ import { tool } from "@agentified/sdk";
19
+
20
+ const agent = new Agent({ name: "my-agent", model: google("gemini-3-flash-preview"), instructions: "You are a helpful assistant." });
21
+
22
+ const agentified = new AgentifiedMastra({
23
+ agentifiedUrl: "http://localhost:9119",
24
+ tools: [
25
+ tool({ name: "get_weather", description: "Get weather", parameters: { type: "object", properties: { city: { type: "string" } }, required: ["city"] } }),
26
+ ],
27
+ toolHandlers: {
28
+ get_weather: async ({ city }) => ({ temp: 22, unit: "C", city }),
29
+ },
30
+ agent,
31
+ });
32
+
33
+ await agentified.register();
34
+ ```
35
+
36
+ ## API Reference
37
+
38
+ ### `new AgentifiedMastra(config)`
39
+
40
+ ```typescript
41
+ interface AgentifiedMastraConfig {
42
+ agentifiedUrl: string;
43
+ tools: ServerTool[];
44
+ toolHandlers: Record<string, (args: Record<string, unknown>) => Promise<unknown>>;
45
+ agent: { name: string; generate: (...args: any[]) => any; stream: (...args: any[]) => any };
46
+ }
47
+ ```
48
+
49
+ The `agent` field accepts any object with `name`, `generate`, and `stream` — typically a `@mastra/core` `Agent` instance.
50
+
51
+ ### `agentified.register()`
52
+
53
+ Registers tools with the Agentified server.
54
+
55
+ ```typescript
56
+ await agentified.register();
57
+ ```
58
+
59
+ ### `agentified.generate(options)`
60
+
61
+ Runs a full generate cycle: prefetch → hydrate tools → agent.generate → capture turn.
62
+
63
+ ```typescript
64
+ interface GenerateOptions {
65
+ messages: Message[];
66
+ maxSteps?: number;
67
+ turnId?: string; // session continuity
68
+ toolLimit?: number;
69
+ seed?: number;
70
+ debug?: boolean;
71
+ onStepFinish?: (event: { usage: any; toolCalls: any[] }) => void;
72
+ }
73
+
74
+ const result = await agentified.generate({
75
+ messages: [{ role: "user", content: "What's the weather in Rome?" }],
76
+ maxSteps: 5,
77
+ });
78
+
79
+ // result:
80
+ // {
81
+ // text: "The weather in Rome is 22°C.",
82
+ // toolCalls: [...],
83
+ // steps: [...],
84
+ // usage: { inputTokens, outputTokens, totalTokens },
85
+ // hydratedTools: ["get_weather"],
86
+ // turnId: "...",
87
+ // durationMs: 1234,
88
+ // }
89
+ ```
90
+
91
+ The `generate` flow:
92
+ 1. **Prefetch** — discovers relevant tools for the conversation
93
+ 2. **Hydrate** — converts ranked tools to Mastra tools (JSON Schema → Zod) and injects `agentified_discover` for runtime discovery
94
+ 3. **Generate** — calls `agent.generate()` with a `prepareStep` callback that dynamically expands tools when the agent discovers more
95
+ 4. **Capture turn** — stores the turn for session continuity
96
+
97
+ ### `agentified.run(options)`
98
+
99
+ Returns a `Promise<Observable<BaseEvent>>` for AG-UI streaming — designed for use with the frontend client.
100
+
101
+ ```typescript
102
+ interface RunOptions {
103
+ messages: Array<{
104
+ role: string;
105
+ content: string;
106
+ toolCallId?: string;
107
+ toolCalls?: Array<{ id: string; type: "function"; function: { name: string; arguments: string } }>;
108
+ }>;
109
+ frontendTools?: string[]; // frontend tool names to exclude from prefetch
110
+ }
111
+
112
+ const observable = await agentified.run({
113
+ messages: [{ role: "user", content: "Hello" }],
114
+ frontendTools: ["navigate_to_page"],
115
+ });
116
+ ```
117
+
118
+ ### `streamSSE(observable, res)`
119
+
120
+ Pipes an AG-UI Observable into an HTTP SSE response.
121
+
122
+ ```typescript
123
+ import { streamSSE } from "@agentified/mastra";
124
+ import http from "http";
125
+
126
+ http.createServer(async (req, res) => {
127
+ const observable = await agentified.run({ messages });
128
+ streamSSE(observable, res);
129
+ }).listen(3003);
130
+ ```
131
+
132
+ SSE format: `data: <JSON>\n\n` per event, connection closes on stream completion.
133
+
134
+ ### `jsonSchemaToZod(schema)`
135
+
136
+ Converts a JSON Schema object to a Zod schema. Used internally to hydrate Mastra tools from Agentified's JSON Schema parameters.
137
+
138
+ ```typescript
139
+ import { jsonSchemaToZod } from "@agentified/mastra";
140
+
141
+ const zodSchema = jsonSchemaToZod({
142
+ type: "object",
143
+ properties: { city: { type: "string" } },
144
+ required: ["city"],
145
+ });
146
+ ```
147
+
148
+ Supports: `string`, `number`, `integer`, `boolean`, `array`, `object`, `enum`.
149
+
150
+ ## Links
151
+
152
+ - [Root README](../../../README.md)
153
+ - [TypeScript SDK](../sdk/README.md)
154
+ - [Frontend Client](../fe-client/README.md)
155
+ - [React Bindings](../react/README.md)
156
+ - [QuickHR Example](../../../examples/quickhr/) — full Mastra + React app
157
+
158
+ ## License
159
+
160
+ [MIT](../../../LICENSE.md#mit-license)
package/dist/adapter.d.ts CHANGED
@@ -66,9 +66,11 @@ export interface RunOptions {
66
66
  }>;
67
67
  frontendTools?: string[];
68
68
  }
69
+ /** @deprecated Use the new `Agentified` class instead. This class will be removed in a future version. */
69
70
  export declare class AgentifiedMastra {
70
71
  private config;
71
72
  private sdk;
73
+ private datasetId;
72
74
  private lastPrefetchResult;
73
75
  constructor(config: AgentifiedMastraConfig);
74
76
  /**
@@ -82,6 +84,7 @@ export declare class AgentifiedMastra {
82
84
  private patchAgentStreamForGemini;
83
85
  private static hasToolResults;
84
86
  register(): Promise<RegisterResponse>;
87
+ private ensureDataset;
85
88
  generate(options: GenerateOptions): Promise<GenerateResult>;
86
89
  run(options: RunOptions): Promise<Observable<BaseEvent>>;
87
90
  private buildAllMastraTools;
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAwB,MAAM,eAAe,CAAC;AAIrE,OAAO,KAAK,EAGV,gBAAgB,EAChB,UAAU,EACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAW,MAAM,MAAM,CAAC;AAI3C,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,GAAG,CAAC;QAAC,SAAS,EAAE,GAAG,EAAE,CAAA;KAAE,KAAK,IAAI,CAAC;CAClE;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC,CAAC;IAC1F,KAAK,EAAE,GAAG,EAAE,CAAC;IACb,KAAK,EAAE;QACL,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;QACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,sBAAsB;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,YAAY,EAAE,MAAM,CAClB,MAAM,EACN,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CACpD,CAAC;IAGF,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;QAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAA;KAAE,CAAC;CAC7F;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,KAAK,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,KAAK,CAAC;YAChB,EAAE,EAAE,MAAM,CAAC;YACX,IAAI,EAAE,UAAU,CAAC;YACjB,QAAQ,EAAE;gBAAE,IAAI,EAAE,MAAM,CAAC;gBAAC,SAAS,EAAE,MAAM,CAAA;aAAE,CAAC;SAC/C,CAAC,CAAC;KACJ,CAAC,CAAC;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,GAAG,CAAa;IACxB,OAAO,CAAC,kBAAkB,CAA6D;gBAE3E,MAAM,EAAE,sBAAsB;IAS1C;;;;;;;OAOG;IACH,OAAO,CAAC,yBAAyB;IAqCjC,OAAO,CAAC,MAAM,CAAC,cAAc;IAIvB,QAAQ,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAIrC,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IAwJ3D,GAAG,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IAiG9D,OAAO,CAAC,mBAAmB;IAkB3B,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,wBAAwB;CAqCjC"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
package/dist/adapter.js CHANGED
@@ -1,16 +1,18 @@
1
1
  import { createTool } from "@mastra/core/tools";
2
2
  import { MastraAgent } from "@ag-ui/mastra";
3
- import { Agentified } from "@agentified/sdk";
3
+ import { ApiClient } from "@agentified/sdk";
4
4
  import { Observable, Subject } from "rxjs";
5
5
  import { z } from "zod";
6
6
  import { jsonSchemaToZod } from "./schema.js";
7
+ /** @deprecated Use the new `Agentified` class instead. This class will be removed in a future version. */
7
8
  export class AgentifiedMastra {
8
9
  config;
9
10
  sdk;
11
+ datasetId = null;
10
12
  lastPrefetchResult = null;
11
13
  constructor(config) {
12
14
  this.config = config;
13
- this.sdk = new Agentified({
15
+ this.sdk = new ApiClient({
14
16
  serverUrl: config.agentifiedUrl,
15
17
  tools: config.tools,
16
18
  });
@@ -63,7 +65,13 @@ export class AgentifiedMastra {
63
65
  return messages.some((m) => m.role === "tool");
64
66
  }
65
67
  async register() {
66
- return this.sdk.register();
68
+ return this.sdk.register(this.ensureDataset());
69
+ }
70
+ ensureDataset() {
71
+ if (!this.datasetId) {
72
+ this.datasetId = "default";
73
+ }
74
+ return this.datasetId;
67
75
  }
68
76
  async generate(options) {
69
77
  const start = performance.now();
@@ -76,7 +84,8 @@ export class AgentifiedMastra {
76
84
  console.error(`[agentified] ${phase}:`, JSON.stringify(detail));
77
85
  };
78
86
  // 1. Prefetch (with turnId for session continuity)
79
- const ranked = await this.sdk.prefetch({
87
+ const dsId = this.ensureDataset();
88
+ const ranked = await this.sdk.prefetch(dsId, {
80
89
  messages: options.messages.map(m => ({ role: m.role, content: m.content })),
81
90
  turnId: options.turnId,
82
91
  ...(options.toolLimit !== undefined && { limit: options.toolLimit }),
@@ -90,7 +99,7 @@ export class AgentifiedMastra {
90
99
  const allTools = this.buildAllMastraTools();
91
100
  const registryNames = new Set(Object.keys(allTools));
92
101
  // 3. Discover tool
93
- const discoverDef = this.sdk.asDiscoverTool();
102
+ const discoverDef = this.sdk.asDiscoverTool(dsId);
94
103
  const discoverTool = createTool({
95
104
  id: "agentified_discover",
96
105
  description: discoverDef.definition.description,
@@ -178,7 +187,7 @@ export class AgentifiedMastra {
178
187
  const toolsLoaded = [...activeSet].filter(n => n !== "agentified_discover");
179
188
  let turnId;
180
189
  try {
181
- const capture = await this.sdk.captureTurn({
190
+ const capture = await this.sdk.captureTurn("default", "default", {
182
191
  toolsLoaded,
183
192
  message: options.messages[options.messages.length - 1]?.content ?? "",
184
193
  });
@@ -206,6 +215,7 @@ export class AgentifiedMastra {
206
215
  };
207
216
  }
208
217
  async run(options) {
218
+ const dsId = this.ensureDataset();
209
219
  const allFrontendNames = this.sdk.getFrontendToolNames();
210
220
  const available = new Set(options.frontendTools ?? []);
211
221
  const unavailable = allFrontendNames.filter((n) => !available.has(n));
@@ -219,7 +229,7 @@ export class AgentifiedMastra {
219
229
  }
220
230
  else {
221
231
  const prefetchStart = performance.now();
222
- ranked = await this.sdk.prefetch({
232
+ ranked = await this.sdk.prefetch(dsId, {
223
233
  messages: options.messages.map((m) => ({
224
234
  role: m.role,
225
235
  content: m.content,
@@ -231,7 +241,7 @@ export class AgentifiedMastra {
231
241
  }
232
242
  const subject = new Subject();
233
243
  const mastraTools = this.buildMastraTools(ranked);
234
- const discoverTool = this.createDiscoverMastraTool(subject);
244
+ const discoverTool = this.createDiscoverMastraTool(subject, dsId);
235
245
  const frontendToolDefs = this.sdk
236
246
  .getFrontendTools()
237
247
  .filter((t) => available.has(t.name))
@@ -316,8 +326,8 @@ export class AgentifiedMastra {
316
326
  const all = this.buildAllMastraTools();
317
327
  return Object.fromEntries(Object.entries(all).filter(([n]) => names.has(n)));
318
328
  }
319
- createDiscoverMastraTool(subject) {
320
- const discoverTool = this.sdk.asDiscoverTool();
329
+ createDiscoverMastraTool(subject, datasetId) {
330
+ const discoverTool = this.sdk.asDiscoverTool(datasetId);
321
331
  return createTool({
322
332
  id: discoverTool.definition.name,
323
333
  description: discoverTool.definition.description,
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,145 @@
1
+ import { ApiClient, type StoredMessage, type AppendMessagesResponse, type GetMessagesOpts as SdkGetMessagesOpts } from "@agentified/sdk";
2
+ export interface BackendTool {
3
+ name: string;
4
+ description: string;
5
+ parameters: Record<string, unknown>;
6
+ type?: "backend";
7
+ handler: (args: Record<string, unknown>) => Promise<unknown>;
8
+ }
9
+ export interface ClientTool {
10
+ name: string;
11
+ description: string;
12
+ parameters: Record<string, unknown>;
13
+ type: "client";
14
+ }
15
+ export interface McpTool {
16
+ name: string;
17
+ description: string;
18
+ parameters: Record<string, unknown>;
19
+ type: "mcp";
20
+ server: string;
21
+ }
22
+ export type AgentifiedTool = BackendTool | ClientTool | McpTool;
23
+ export type PrepareStepFn = (params: {
24
+ stepNumber: number;
25
+ steps: any[];
26
+ }) => Promise<{
27
+ activeTools: string[];
28
+ }>;
29
+ export interface AssembledContext {
30
+ messages: StoredMessage[];
31
+ recalled: {
32
+ tools: unknown[];
33
+ memories: unknown[];
34
+ };
35
+ strategyUsed: string;
36
+ fallback: boolean;
37
+ tokenEstimate: number;
38
+ conversationMessages: number;
39
+ totalMessages: number;
40
+ includedMessages: number;
41
+ }
42
+ export interface GetMessagesOptions {
43
+ maxMessages?: number;
44
+ maxTokens?: number;
45
+ strategy?: string;
46
+ }
47
+ export interface GetMessagesResult {
48
+ messages: StoredMessage[];
49
+ totalMessages: number;
50
+ includedMessages: number;
51
+ strategyUsed: string;
52
+ fallback: boolean;
53
+ }
54
+ export declare class ContextBuilder {
55
+ private readonly sdk;
56
+ private readonly datasetId;
57
+ private readonly namespaceId;
58
+ private readonly sessionId;
59
+ private messageOpts;
60
+ constructor(sdk: ApiClient, datasetId: string, namespaceId: string, sessionId: string);
61
+ messages(opts: {
62
+ strategy?: string;
63
+ maxTokens?: number;
64
+ }): this;
65
+ recall(_opts?: unknown): this;
66
+ assemble(): Promise<AssembledContext>;
67
+ }
68
+ export declare class Conversation {
69
+ private readonly sdk;
70
+ private readonly datasetId;
71
+ private readonly namespaceId;
72
+ private readonly sessionId;
73
+ constructor(sdk: ApiClient, datasetId: string, namespaceId: string, sessionId: string);
74
+ append(messages: Array<{
75
+ role: string;
76
+ content: string;
77
+ }>): Promise<AppendMessagesResponse>;
78
+ messages(opts?: SdkGetMessagesOpts): Promise<StoredMessage[]>;
79
+ }
80
+ export declare class Session {
81
+ readonly id: string;
82
+ readonly namespaceId: string;
83
+ /** @internal */ private readonly sdk;
84
+ /** @internal */ private readonly datasetId;
85
+ /** @internal */ private readonly toolNames;
86
+ private lastPersistedSeq;
87
+ private lastProcessedStepIndex;
88
+ readonly conversation: Conversation;
89
+ constructor(id: string, namespaceId: string,
90
+ /** @internal */ sdk: ApiClient,
91
+ /** @internal */ datasetId: string,
92
+ /** @internal */ toolNames: string[]);
93
+ get context(): ContextBuilder;
94
+ getMessages(opts?: GetMessagesOptions): Promise<GetMessagesResult>;
95
+ readonly prepareStep: PrepareStepFn;
96
+ updateConversation(input: {
97
+ messages: Array<{
98
+ role: string;
99
+ content: string;
100
+ }>;
101
+ }): Promise<void>;
102
+ }
103
+ export interface RegisterInput {
104
+ tools: AgentifiedTool[];
105
+ }
106
+ export declare class Instance {
107
+ readonly instanceId: string;
108
+ readonly datasetId: string;
109
+ /** @internal */ private readonly sdk;
110
+ /** @internal */ private readonly toolNames;
111
+ readonly discoverTool: any;
112
+ constructor(instanceId: string, datasetId: string,
113
+ /** @internal */ sdk: ApiClient,
114
+ /** @internal */ toolNames: string[]);
115
+ readonly prepareStep: PrepareStepFn;
116
+ session(id: string): Session;
117
+ }
118
+ export declare class DatasetRef {
119
+ readonly agentified: Agentified;
120
+ readonly datasetName: string;
121
+ constructor(agentified: Agentified, datasetName: string);
122
+ register(input: RegisterInput): Promise<Instance>;
123
+ }
124
+ export declare class Agentified {
125
+ /** @internal */ sdk: ApiClient | null;
126
+ /** @internal */ serverUrl: string | null;
127
+ private connected;
128
+ private spawnedProcess;
129
+ private cleanupHandlers;
130
+ private restartCount;
131
+ private lastRestartAt;
132
+ private spawnArgs;
133
+ connect(serverUrl?: string): Promise<void>;
134
+ dataset(name: string): DatasetRef;
135
+ register(input: RegisterInput): Promise<Instance>;
136
+ private spawnChild;
137
+ private registerCrashHandler;
138
+ private registerCleanupHandlers;
139
+ private removeCleanupHandlers;
140
+ /** @internal */ healthCheckDelayMs: number;
141
+ /** @internal */ healthCheckMaxAttempts: number;
142
+ private healthCheckLoop;
143
+ disconnect(): Promise<void>;
144
+ }
145
+ //# sourceMappingURL=agentified.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agentified.d.ts","sourceRoot":"","sources":["../src/agentified.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,396 @@
1
+ import { ApiClient } from "@agentified/sdk";
2
+ import { createTool } from "@mastra/core/tools";
3
+ import { spawn } from "node:child_process";
4
+ import { z } from "zod";
5
+ import { resolveBinaryPath, findFreePort } from "./spawn-utils.js";
6
+ export class ContextBuilder {
7
+ sdk;
8
+ datasetId;
9
+ namespaceId;
10
+ sessionId;
11
+ messageOpts = {};
12
+ constructor(sdk, datasetId, namespaceId, sessionId) {
13
+ this.sdk = sdk;
14
+ this.datasetId = datasetId;
15
+ this.namespaceId = namespaceId;
16
+ this.sessionId = sessionId;
17
+ }
18
+ messages(opts) {
19
+ this.messageOpts = opts;
20
+ return this;
21
+ }
22
+ recall(_opts) {
23
+ return this;
24
+ }
25
+ async assemble() {
26
+ const res = await this.sdk.getContext(this.datasetId, this.namespaceId, this.sessionId, {
27
+ strategy: this.messageOpts.strategy,
28
+ maxTokens: this.messageOpts.maxTokens,
29
+ });
30
+ return {
31
+ messages: res.messages,
32
+ recalled: res.recalled,
33
+ strategyUsed: res.strategyUsed,
34
+ fallback: res.fallback,
35
+ tokenEstimate: res.tokenEstimate,
36
+ conversationMessages: res.conversationMessages,
37
+ totalMessages: res.totalMessages,
38
+ includedMessages: res.includedMessages,
39
+ };
40
+ }
41
+ }
42
+ export class Conversation {
43
+ sdk;
44
+ datasetId;
45
+ namespaceId;
46
+ sessionId;
47
+ constructor(sdk, datasetId, namespaceId, sessionId) {
48
+ this.sdk = sdk;
49
+ this.datasetId = datasetId;
50
+ this.namespaceId = namespaceId;
51
+ this.sessionId = sessionId;
52
+ }
53
+ async append(messages) {
54
+ return this.sdk.appendMessages(this.datasetId, this.namespaceId, this.sessionId, messages);
55
+ }
56
+ async messages(opts) {
57
+ const res = await this.sdk.getMessages(this.datasetId, this.namespaceId, this.sessionId, opts);
58
+ return res.messages;
59
+ }
60
+ }
61
+ export class Session {
62
+ id;
63
+ namespaceId;
64
+ sdk;
65
+ datasetId;
66
+ toolNames;
67
+ lastPersistedSeq = 0;
68
+ lastProcessedStepIndex = 0;
69
+ conversation;
70
+ constructor(id, namespaceId,
71
+ /** @internal */ sdk,
72
+ /** @internal */ datasetId,
73
+ /** @internal */ toolNames) {
74
+ this.id = id;
75
+ this.namespaceId = namespaceId;
76
+ this.sdk = sdk;
77
+ this.datasetId = datasetId;
78
+ this.toolNames = toolNames;
79
+ this.conversation = new Conversation(sdk, datasetId, namespaceId, id);
80
+ }
81
+ get context() {
82
+ return new ContextBuilder(this.sdk, this.datasetId, this.namespaceId, this.id);
83
+ }
84
+ async getMessages(opts) {
85
+ const res = await this.sdk.getContext(this.datasetId, this.namespaceId, this.id, {
86
+ strategy: opts?.strategy,
87
+ maxTokens: opts?.maxTokens,
88
+ });
89
+ let messages = res.messages;
90
+ let includedMessages = res.includedMessages;
91
+ if (opts?.maxMessages && messages.length > opts.maxMessages) {
92
+ messages = messages.slice(messages.length - opts.maxMessages);
93
+ includedMessages = messages.length;
94
+ }
95
+ return {
96
+ messages,
97
+ totalMessages: res.totalMessages,
98
+ includedMessages,
99
+ strategyUsed: res.strategyUsed,
100
+ fallback: res.fallback,
101
+ };
102
+ }
103
+ prepareStep = async ({ steps }) => {
104
+ const activeTools = new Set([...this.toolNames, "agentified_discover"]);
105
+ // Only process steps we haven't seen yet
106
+ const newSteps = steps.slice(this.lastProcessedStepIndex);
107
+ // Extract messages from new steps for persistence
108
+ const messages = [];
109
+ for (const step of newSteps) {
110
+ if (step.text) {
111
+ messages.push({ role: "assistant", content: step.text });
112
+ }
113
+ if (step.toolCalls && step.toolCalls.length > 0) {
114
+ messages.push({ role: "assistant", content: "", tool_calls: step.toolCalls });
115
+ }
116
+ if (step.toolResults) {
117
+ for (const result of step.toolResults) {
118
+ messages.push({
119
+ role: "tool",
120
+ content: typeof result.result === "string" ? result.result : JSON.stringify(result.result),
121
+ tool_call_id: result.toolCallId,
122
+ });
123
+ }
124
+ }
125
+ }
126
+ // Persist if there are new messages
127
+ if (messages.length > 0) {
128
+ const res = await this.sdk.appendMessages(this.datasetId, this.namespaceId, this.id, messages);
129
+ this.lastPersistedSeq = res.lastSeq;
130
+ }
131
+ this.lastProcessedStepIndex = steps.length;
132
+ // Scan ALL steps for discovered tools (need full history for active set)
133
+ for (const step of steps) {
134
+ if (step.toolResults) {
135
+ for (const result of step.toolResults) {
136
+ if (result.toolName === "agentified_discover" && Array.isArray(result.result)) {
137
+ for (const tool of result.result) {
138
+ if (tool.name)
139
+ activeTools.add(tool.name);
140
+ }
141
+ }
142
+ }
143
+ }
144
+ }
145
+ return { activeTools: [...activeTools] };
146
+ };
147
+ async updateConversation(input) {
148
+ const { messages } = input;
149
+ if (messages.length === 0)
150
+ return;
151
+ const stored = await this.sdk.getMessages(this.datasetId, this.namespaceId, this.id, { limit: messages.length });
152
+ const tail = stored.messages;
153
+ // Find longest suffix of stored tail that matches a contiguous slice of incoming.
154
+ // Stored tail represents the last N messages in DB. We compare it against
155
+ // the END of incoming to find overlap, avoiding duplicates when stored
156
+ // tail=[c,d,e] and incoming=[d,e,f].
157
+ let overlap = 0;
158
+ for (let tryLen = Math.min(tail.length, messages.length); tryLen > 0; tryLen--) {
159
+ const tailStart = tail.length - tryLen;
160
+ let match = true;
161
+ for (let i = 0; i < tryLen; i++) {
162
+ if (tail[tailStart + i].role !== messages[i].role || tail[tailStart + i].content !== messages[i].content) {
163
+ match = false;
164
+ break;
165
+ }
166
+ }
167
+ if (match) {
168
+ overlap = tryLen;
169
+ break;
170
+ }
171
+ }
172
+ const newMessages = messages.slice(overlap);
173
+ if (newMessages.length === 0)
174
+ return;
175
+ const res = await this.sdk.appendMessages(this.datasetId, this.namespaceId, this.id, newMessages);
176
+ this.lastPersistedSeq = res.lastSeq;
177
+ }
178
+ }
179
+ export class Instance {
180
+ instanceId;
181
+ datasetId;
182
+ sdk;
183
+ toolNames;
184
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
185
+ discoverTool;
186
+ constructor(instanceId, datasetId,
187
+ /** @internal */ sdk,
188
+ /** @internal */ toolNames) {
189
+ this.instanceId = instanceId;
190
+ this.datasetId = datasetId;
191
+ this.sdk = sdk;
192
+ this.toolNames = toolNames;
193
+ const discoverDef = sdk.asDiscoverTool(datasetId);
194
+ this.discoverTool = createTool({
195
+ id: "agentified_discover",
196
+ description: discoverDef.definition.description,
197
+ inputSchema: z.object({ query: z.string(), limit: z.number().optional() }),
198
+ execute: async (input) => {
199
+ return discoverDef.execute(input);
200
+ },
201
+ });
202
+ }
203
+ prepareStep = async ({ steps }) => {
204
+ const activeTools = new Set([...this.toolNames, "agentified_discover"]);
205
+ for (const step of steps) {
206
+ if (step.toolResults) {
207
+ for (const result of step.toolResults) {
208
+ if (result.toolName === "agentified_discover" && Array.isArray(result.result)) {
209
+ for (const tool of result.result) {
210
+ if (tool.name)
211
+ activeTools.add(tool.name);
212
+ }
213
+ }
214
+ }
215
+ }
216
+ }
217
+ return { activeTools: [...activeTools] };
218
+ };
219
+ session(id) {
220
+ return new Session(id, "default", this.sdk, this.datasetId, this.toolNames);
221
+ }
222
+ }
223
+ function validateTools(tools) {
224
+ for (const tool of tools) {
225
+ if ("type" in tool && tool.type === "client") {
226
+ throw new Error("Client tools are not yet supported");
227
+ }
228
+ if ("type" in tool && tool.type === "mcp") {
229
+ throw new Error("MCP tools are not yet supported");
230
+ }
231
+ if (!("handler" in tool)) {
232
+ throw new Error(`Tool '${tool.name}' has no type and no handler`);
233
+ }
234
+ }
235
+ }
236
+ export class DatasetRef {
237
+ agentified;
238
+ datasetName;
239
+ constructor(agentified, datasetName) {
240
+ this.agentified = agentified;
241
+ this.datasetName = datasetName;
242
+ }
243
+ async register(input) {
244
+ validateTools(input.tools);
245
+ const sdk = this.agentified.sdk;
246
+ if (!sdk)
247
+ throw new Error("Not connected");
248
+ const serverTools = input.tools.map((t) => ({
249
+ name: t.name,
250
+ description: t.description,
251
+ parameters: t.parameters,
252
+ }));
253
+ const regSdk = new ApiClient({
254
+ serverUrl: this.agentified.serverUrl,
255
+ tools: serverTools,
256
+ });
257
+ await regSdk.register(this.datasetName);
258
+ const toolNames = input.tools.map((t) => t.name);
259
+ return new Instance(this.datasetName, this.datasetName, sdk, toolNames);
260
+ }
261
+ }
262
+ export class Agentified {
263
+ /** @internal */ sdk = null;
264
+ /** @internal */ serverUrl = null;
265
+ connected = false;
266
+ spawnedProcess = null;
267
+ cleanupHandlers = [];
268
+ restartCount = 0;
269
+ lastRestartAt = 0;
270
+ spawnArgs = null;
271
+ async connect(serverUrl) {
272
+ if (!serverUrl) {
273
+ if (!process.env.OPENAI_API_KEY) {
274
+ throw new Error("OPENAI_API_KEY environment variable is required for local spawn");
275
+ }
276
+ const binaryPath = resolveBinaryPath();
277
+ if (!binaryPath) {
278
+ throw new Error("Could not resolve agentified core binary. Install the platform-specific package.");
279
+ }
280
+ const port = await findFreePort();
281
+ this.spawnArgs = { binaryPath, port };
282
+ this.spawnChild();
283
+ const url = `http://127.0.0.1:${port}`;
284
+ await this.healthCheckLoop(url);
285
+ this.registerCleanupHandlers();
286
+ this.registerCrashHandler();
287
+ this.serverUrl = url;
288
+ this.sdk = new ApiClient({ serverUrl: url, tools: [] });
289
+ this.connected = true;
290
+ return;
291
+ }
292
+ const res = await fetch(`${serverUrl}/health`, {
293
+ method: "GET",
294
+ signal: AbortSignal.timeout(5000),
295
+ });
296
+ if (!res.ok) {
297
+ throw new Error(`Health check failed: ${res.status}`);
298
+ }
299
+ this.serverUrl = serverUrl;
300
+ this.sdk = new ApiClient({ serverUrl, tools: [] });
301
+ this.connected = true;
302
+ }
303
+ dataset(name) {
304
+ return new DatasetRef(this, name);
305
+ }
306
+ async register(input) {
307
+ return this.dataset("default").register(input);
308
+ }
309
+ spawnChild() {
310
+ if (!this.spawnArgs)
311
+ return;
312
+ const { binaryPath, port } = this.spawnArgs;
313
+ const child = spawn(binaryPath, [], {
314
+ stdio: ["ignore", "pipe", "pipe"],
315
+ env: { ...process.env, AGENTIFIED_PORT: String(port) },
316
+ });
317
+ this.spawnedProcess = child;
318
+ }
319
+ registerCrashHandler() {
320
+ if (!this.spawnedProcess)
321
+ return;
322
+ this.spawnedProcess.on("exit", (code, signal) => {
323
+ if (!this.connected)
324
+ return; // intentional shutdown
325
+ const now = Date.now();
326
+ if (this.restartCount >= 1 || now - this.lastRestartAt < 60_000)
327
+ return;
328
+ this.restartCount++;
329
+ this.lastRestartAt = now;
330
+ this.spawnChild();
331
+ this.registerCrashHandler();
332
+ });
333
+ }
334
+ registerCleanupHandlers() {
335
+ const cleanup = () => {
336
+ if (this.spawnedProcess) {
337
+ this.spawnedProcess.kill("SIGTERM");
338
+ const child = this.spawnedProcess;
339
+ setTimeout(() => {
340
+ try {
341
+ child.kill("SIGKILL");
342
+ }
343
+ catch { /* already dead */ }
344
+ }, 2000);
345
+ this.spawnedProcess = null;
346
+ }
347
+ };
348
+ for (const sig of ["SIGINT", "SIGTERM"]) {
349
+ const handler = () => { cleanup(); process.exit(); };
350
+ process.on(sig, handler);
351
+ this.cleanupHandlers.push([sig, handler]);
352
+ }
353
+ const exitHandler = () => { cleanup(); };
354
+ process.on("exit", exitHandler);
355
+ this.cleanupHandlers.push(["exit", exitHandler]);
356
+ }
357
+ removeCleanupHandlers() {
358
+ for (const [event, handler] of this.cleanupHandlers) {
359
+ process.removeListener(event, handler);
360
+ }
361
+ this.cleanupHandlers = [];
362
+ }
363
+ /** @internal */ healthCheckDelayMs = 200;
364
+ /** @internal */ healthCheckMaxAttempts = 25;
365
+ async healthCheckLoop(url) {
366
+ for (let i = 0; i < this.healthCheckMaxAttempts; i++) {
367
+ try {
368
+ const res = await fetch(`${url}/health`);
369
+ if (res.ok)
370
+ return;
371
+ }
372
+ catch {
373
+ // server not ready yet
374
+ }
375
+ await new Promise((r) => setTimeout(r, this.healthCheckDelayMs));
376
+ }
377
+ if (this.spawnedProcess) {
378
+ this.spawnedProcess.kill();
379
+ this.spawnedProcess = null;
380
+ }
381
+ throw new Error("Local server failed to start within 5s");
382
+ }
383
+ async disconnect() {
384
+ if (!this.connected)
385
+ return;
386
+ if (this.spawnedProcess) {
387
+ this.spawnedProcess.kill();
388
+ this.spawnedProcess = null;
389
+ }
390
+ this.removeCleanupHandlers();
391
+ this.sdk = null;
392
+ this.serverUrl = null;
393
+ this.connected = false;
394
+ }
395
+ }
396
+ //# sourceMappingURL=agentified.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agentified.js","sourceRoot":"","sources":["../src/agentified.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,7 @@
1
1
  export { AgentifiedMastra } from "./adapter.js";
2
+ export { Agentified, DatasetRef, Instance, Session, ContextBuilder, Conversation } from "./agentified.js";
2
3
  export { streamSSE } from "./stream-sse.js";
3
4
  export { jsonSchemaToZod } from "./schema.js";
4
5
  export type { AgentifiedMastraConfig, RunOptions, GenerateOptions, GenerateResult } from "./adapter.js";
6
+ export type { AgentifiedTool, BackendTool, ClientTool, McpTool, RegisterInput, PrepareStepFn, AssembledContext, GetMessagesOptions, GetMessagesResult } from "./agentified.js";
5
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,YAAY,EAAE,sBAAsB,EAAE,UAAU,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC1G,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,YAAY,EAAE,sBAAsB,EAAE,UAAU,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACxG,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC"}
package/dist/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  export { AgentifiedMastra } from "./adapter.js";
2
+ export { Agentified, DatasetRef, Instance, Session, ContextBuilder, Conversation } from "./agentified.js";
2
3
  export { streamSSE } from "./stream-sse.js";
3
4
  export { jsonSchemaToZod } from "./schema.js";
4
5
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC1G,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare function resolveBinaryPath(): string | null;
2
+ export declare function findFreePort(): Promise<number>;
3
+ //# sourceMappingURL=spawn-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spawn-utils.d.ts","sourceRoot":"","sources":["../src/spawn-utils.ts"],"names":[],"mappings":"AAcA,wBAAgB,iBAAiB,IAAI,MAAM,GAAG,IAAI,CAYjD;AAED,wBAAgB,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAc9C"}
@@ -0,0 +1,42 @@
1
+ import { createRequire } from "node:module";
2
+ import { createServer } from "node:net";
3
+ const PLATFORM_MAP = {
4
+ darwin: "darwin",
5
+ linux: "linux",
6
+ win32: "win32",
7
+ };
8
+ const ARCH_MAP = {
9
+ arm64: "arm64",
10
+ x64: "x64",
11
+ };
12
+ export function resolveBinaryPath() {
13
+ const platform = PLATFORM_MAP[process.platform];
14
+ const arch = ARCH_MAP[process.arch];
15
+ if (!platform || !arch)
16
+ return null;
17
+ const packageName = `@agentified/core-${platform}-${arch}`;
18
+ try {
19
+ const require = createRequire(import.meta.url);
20
+ return require.resolve(packageName);
21
+ }
22
+ catch {
23
+ return null;
24
+ }
25
+ }
26
+ export function findFreePort() {
27
+ return new Promise((resolve, reject) => {
28
+ const server = createServer();
29
+ server.listen(0, "127.0.0.1", () => {
30
+ const addr = server.address();
31
+ if (addr && typeof addr === "object") {
32
+ const port = addr.port;
33
+ server.close(() => resolve(port));
34
+ }
35
+ else {
36
+ server.close(() => reject(new Error("Failed to get port")));
37
+ }
38
+ });
39
+ server.on("error", reject);
40
+ });
41
+ }
42
+ //# sourceMappingURL=spawn-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spawn-utils.js","sourceRoot":"","sources":["../src/spawn-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,MAAM,YAAY,GAA2B;IAC3C,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;CACf,CAAC;AAEF,MAAM,QAAQ,GAA2B;IACvC,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,KAAK;CACX,CAAC;AAEF,MAAM,UAAU,iBAAiB;IAC/B,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAEpC,MAAM,WAAW,GAAG,oBAAoB,QAAQ,IAAI,IAAI,EAAE,CAAC;IAC3D,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/C,OAAO,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;QAC9B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE;YACjC,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;YAC9B,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACrC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;gBACvB,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;AACL,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "@agentified/mastra",
3
- "version": "0.0.3",
3
+ "version": "0.0.5-beta.0",
4
+ "license": "MIT",
4
5
  "type": "module",
5
6
  "main": "dist/index.js",
6
7
  "types": "dist/index.d.ts",
@@ -26,7 +27,7 @@
26
27
  "@ag-ui/mastra": ">=1.0.0",
27
28
  "@mastra/core": ">=1.0.0",
28
29
  "zod": ">=3.0.0",
29
- "@agentified/sdk": "0.0.3"
30
+ "@agentified/sdk": "0.0.5-beta.0"
30
31
  },
31
32
  "dependencies": {
32
33
  "rxjs": "^7.8.0"
@@ -39,7 +40,7 @@
39
40
  "typescript": "^5.9.0",
40
41
  "vitest": "^2.1.0",
41
42
  "zod": "^3.25.0",
42
- "@agentified/sdk": "0.0.3"
43
+ "@agentified/sdk": "0.0.5-beta.0"
43
44
  },
44
45
  "scripts": {
45
46
  "build": "tsc -p tsconfig.build.json",