@reminix/runtime 0.0.6 → 0.0.7

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,6 +1,6 @@
1
1
  # @reminix/runtime
2
2
 
3
- Core runtime package for serving AI agents and tools via REST APIs. Provides the `serve()` function, `Agent` class, `tool()` factory, and `BaseAdapter` for building framework integrations.
3
+ Core runtime package for serving AI agents and tools via REST APIs. Provides the `serve()` function, `Agent` class, `tool()` factory, and `AgentAdapter` for building framework integrations.
4
4
 
5
5
  Built on [Hono](https://hono.dev) for portability across Node.js, Deno, Bun, and edge runtimes.
6
6
 
@@ -67,23 +67,31 @@ Returns `{"status": "ok"}` if the server is running.
67
67
  curl http://localhost:8080/info
68
68
  ```
69
69
 
70
- Returns runtime information and available agents:
70
+ Returns runtime information, available agents, and tools:
71
71
 
72
72
  ```json
73
73
  {
74
74
  "runtime": {
75
75
  "name": "reminix-runtime",
76
- "version": "0.0.6",
76
+ "version": "0.0.7",
77
77
  "language": "typescript",
78
78
  "framework": "hono"
79
79
  },
80
80
  "agents": [
81
81
  {
82
82
  "name": "my-agent",
83
- "type": "adapter",
84
- "adapter": "langchain",
85
- "invoke": { "streaming": true },
86
- "chat": { "streaming": true }
83
+ "type": "agent",
84
+ "invoke": { "streaming": false },
85
+ "chat": { "streaming": false }
86
+ }
87
+ ],
88
+ "tools": [
89
+ {
90
+ "name": "get_weather",
91
+ "type": "tool",
92
+ "description": "Get current weather for a location",
93
+ "parameters": { ... },
94
+ "output": { ... }
87
95
  }
88
96
  ]
89
97
  }
@@ -359,18 +367,18 @@ Deno.serve(agent.toHandler());
359
367
  Bun.serve({ fetch: agent.toHandler() });
360
368
  ```
361
369
 
362
- ### `BaseAdapter`
370
+ ### `AgentAdapter`
363
371
 
364
372
  Abstract base class for framework adapters. Use this when wrapping an existing AI framework.
365
373
 
366
374
  ```typescript
367
- import { BaseAdapter, InvokeRequest, InvokeResponse, ChatRequest, ChatResponse } from '@reminix/runtime';
375
+ import { AgentAdapter, InvokeRequest, InvokeResponse, ChatRequest, ChatResponse } from '@reminix/runtime';
368
376
 
369
- class MyFrameworkAdapter extends BaseAdapter {
377
+ class MyFrameworkAdapter extends AgentAdapter {
370
378
  // Adapter name shown in /info endpoint
371
379
  static adapterName = 'my-framework';
372
380
 
373
- // BaseAdapter defaults both to true; override if your adapter doesn't support streaming
381
+ // AgentAdapter defaults both to true; override if your adapter doesn't support streaming
374
382
  // override readonly invokeStreaming = false;
375
383
  // override readonly chatStreaming = false;
376
384
 
@@ -1,15 +1,15 @@
1
1
  /**
2
- * Base adapter class for framework integrations.
2
+ * Base agent adapter class for framework integrations.
3
3
  */
4
4
  import type { InvokeRequest, ChatRequest } from './types.js';
5
5
  import { AgentBase, type AgentMetadata } from './agent.js';
6
6
  /**
7
- * Base class for framework adapters.
7
+ * Base class for framework agent adapters.
8
8
  *
9
- * Extend this class when wrapping an existing AI framework
9
+ * Extend this class when wrapping an existing AI framework's agent
10
10
  * (e.g., LangChain, OpenAI, Anthropic).
11
11
  */
12
- export declare abstract class AdapterBase extends AgentBase {
12
+ export declare abstract class AgentAdapter extends AgentBase {
13
13
  /**
14
14
  * The adapter name. Subclasses should override this.
15
15
  */
@@ -32,4 +32,4 @@ export declare abstract class AdapterBase extends AgentBase {
32
32
  */
33
33
  chatStream(_request: ChatRequest): AsyncGenerator<string, void, unknown>;
34
34
  }
35
- //# sourceMappingURL=adapter.d.ts.map
35
+ //# sourceMappingURL=agent-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-adapter.d.ts","sourceRoot":"","sources":["../src/agent-adapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3D;;;;;GAKG;AACH,8BAAsB,YAAa,SAAQ,SAAS;IAClD;;OAEG;IACH,MAAM,CAAC,WAAW,EAAE,MAAM,CAAa;IAEvC;;OAEG;IACH,IAAa,eAAe,IAAI,OAAO,CAEtC;IAED,IAAa,aAAa,IAAI,OAAO,CAEpC;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,aAAa,CAK5B;IAED;;OAEG;IAEI,YAAY,CAAC,QAAQ,EAAE,aAAa,GAAG,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC;IAInF;;OAEG;IAEI,UAAU,CAAC,QAAQ,EAAE,WAAW,GAAG,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC;CAGhF"}
@@ -1,14 +1,14 @@
1
1
  /**
2
- * Base adapter class for framework integrations.
2
+ * Base agent adapter class for framework integrations.
3
3
  */
4
4
  import { AgentBase } from './agent.js';
5
5
  /**
6
- * Base class for framework adapters.
6
+ * Base class for framework agent adapters.
7
7
  *
8
- * Extend this class when wrapping an existing AI framework
8
+ * Extend this class when wrapping an existing AI framework's agent
9
9
  * (e.g., LangChain, OpenAI, Anthropic).
10
10
  */
11
- export class AdapterBase extends AgentBase {
11
+ export class AgentAdapter extends AgentBase {
12
12
  /**
13
13
  * The adapter name. Subclasses should override this.
14
14
  */
@@ -46,4 +46,4 @@ export class AdapterBase extends AgentBase {
46
46
  throw new Error('Streaming not implemented for this adapter');
47
47
  }
48
48
  }
49
- //# sourceMappingURL=adapter.js.map
49
+ //# sourceMappingURL=agent-adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-adapter.js","sourceRoot":"","sources":["../src/agent-adapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,SAAS,EAAsB,MAAM,YAAY,CAAC;AAE3D;;;;;GAKG;AACH,MAAM,OAAgB,YAAa,SAAQ,SAAS;IAClD;;OAEG;IACH,MAAM,CAAC,WAAW,GAAW,SAAS,CAAC;IAEvC;;OAEG;IACH,IAAa,eAAe;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAa,aAAa;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACV,OAAO;YACL,IAAI,EAAE,SAAS;YACf,OAAO,EAAG,IAAI,CAAC,WAAmC,CAAC,WAAW;SAC/D,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,yCAAyC;IACzC,KAAK,CAAC,CAAC,YAAY,CAAC,QAAuB;QACzC,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,yCAAyC;IACzC,KAAK,CAAC,CAAC,UAAU,CAAC,QAAqB;QACrC,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC"}
package/dist/index.d.ts CHANGED
@@ -4,7 +4,7 @@ export { VERSION } from './version.js';
4
4
  export type { Role, InvokeRequest, InvokeResponse, ChatRequest, ChatResponse, Message, ToolSchema, ToolExecuteRequest, ToolExecuteResponse, } from './types.js';
5
5
  export { AgentBase, Agent } from './agent.js';
6
6
  export type { AgentMetadata, InvokeHandler, ChatHandler, InvokeStreamHandler, ChatStreamHandler, FetchHandler, } from './agent.js';
7
- export { AdapterBase } from './adapter.js';
7
+ export { AgentAdapter } from './agent-adapter.js';
8
8
  export { ToolBase, Tool, tool } from './tool.js';
9
9
  export type { ToolMetadata, ToolOptions, ExecuteHandler } from './tool.js';
10
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC/C,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpF,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,YAAY,EACV,IAAI,EACJ,aAAa,EACb,cAAc,EACd,WAAW,EACX,YAAY,EACZ,OAAO,EAEP,UAAU,EACV,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAC9C,YAAY,EACV,aAAa,EACb,aAAa,EACb,WAAW,EACX,mBAAmB,EACnB,iBAAiB,EACjB,YAAY,GACb,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjD,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC/C,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpF,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,YAAY,EACV,IAAI,EACJ,aAAa,EACb,cAAc,EACd,WAAW,EACX,YAAY,EACZ,OAAO,EAEP,UAAU,EACV,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAC9C,YAAY,EACV,aAAa,EACb,aAAa,EACb,WAAW,EACX,mBAAmB,EACnB,iBAAiB,EACjB,YAAY,GACb,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjD,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC"}
package/dist/index.js CHANGED
@@ -3,7 +3,7 @@ export { VERSION } from './version.js';
3
3
  // Agent exports
4
4
  export { AgentBase, Agent } from './agent.js';
5
5
  // Adapter exports
6
- export { AdapterBase } from './adapter.js';
6
+ export { AgentAdapter } from './agent-adapter.js';
7
7
  // Tool exports
8
8
  export { ToolBase, Tool, tool } from './tool.js';
9
9
  //# 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,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAavC,gBAAgB;AAChB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAS9C,kBAAkB;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,eAAe;AACf,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAavC,gBAAgB;AAChB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAS9C,kBAAkB;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,eAAe;AACf,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC"}
package/dist/version.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
2
  * Runtime version.
3
3
  */
4
- export declare const VERSION = "0.0.6";
4
+ export declare const VERSION = "0.0.7";
5
5
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
2
  * Runtime version.
3
3
  */
4
- export const VERSION = '0.0.6';
4
+ export const VERSION = '0.0.7';
5
5
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reminix/runtime",
3
- "version": "0.0.6",
3
+ "version": "0.0.7",
4
4
  "description": "Reminix Runtime - Serve AI agents as REST APIs with streaming support",
5
5
  "license": "Apache-2.0",
6
6
  "author": {
@@ -1 +0,0 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3D;;;;;GAKG;AACH,8BAAsB,WAAY,SAAQ,SAAS;IACjD;;OAEG;IACH,MAAM,CAAC,WAAW,EAAE,MAAM,CAAa;IAEvC;;OAEG;IACH,IAAa,eAAe,IAAI,OAAO,CAEtC;IAED,IAAa,aAAa,IAAI,OAAO,CAEpC;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,aAAa,CAK5B;IAED;;OAEG;IAEI,YAAY,CAAC,QAAQ,EAAE,aAAa,GAAG,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC;IAInF;;OAEG;IAEI,UAAU,CAAC,QAAQ,EAAE,WAAW,GAAG,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC;CAGhF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,SAAS,EAAsB,MAAM,YAAY,CAAC;AAE3D;;;;;GAKG;AACH,MAAM,OAAgB,WAAY,SAAQ,SAAS;IACjD;;OAEG;IACH,MAAM,CAAC,WAAW,GAAW,SAAS,CAAC;IAEvC;;OAEG;IACH,IAAa,eAAe;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAa,aAAa;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACV,OAAO;YACL,IAAI,EAAE,SAAS;YACf,OAAO,EAAG,IAAI,CAAC,WAAkC,CAAC,WAAW;SAC9D,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,yCAAyC;IACzC,KAAK,CAAC,CAAC,YAAY,CAAC,QAAuB;QACzC,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,yCAAyC;IACzC,KAAK,CAAC,CAAC,UAAU,CAAC,QAAqB;QACrC,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC"}