@recombine-ai/platform 0.1.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,3 @@
1
+ # Bosun Lib
2
+
3
+ Bosun conversational agents IDE bindings to agents build on Recombine platform
@@ -0,0 +1,23 @@
1
+ type Ctx = Record<string, any>;
2
+ type Paths<T> = T extends object ? {
3
+ [K in keyof T]: [K] | [K, ...Paths<T[K]>];
4
+ }[keyof T] : never;
5
+ type PathValue<T, P extends any[]> = P extends [infer First, ...infer Rest] ? First extends keyof T ? Rest['length'] extends 0 ? T[First] : PathValue<T[First], Rest> : never : never;
6
+ declare class Context<T extends Ctx> {
7
+ #private;
8
+ constructor(context: T);
9
+ set<P extends Paths<T>>(path: P extends any[] ? P : never, value: PathValue<T, P>): void;
10
+ set(newContext: T): void;
11
+ get(): T;
12
+ swap(newContext: T): void;
13
+ subscribe: (listener: (context: T) => void) => () => boolean;
14
+ setPromptContextMapper(promptMapper: (ctx: T) => object): void;
15
+ getPromptContextMapper(): (ctx: T) => object;
16
+ }
17
+ export declare function createContext<T extends Ctx>(context: T): Context<T>;
18
+ type Public<T> = {
19
+ [P in keyof T]: T[P];
20
+ };
21
+ type PublicContext<T extends Ctx> = Public<Context<T>>;
22
+ export type { PublicContext as Context };
23
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA,KAAK,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAC9B,KAAK,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,GAC1B;KACK,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC5C,CAAC,MAAM,CAAC,CAAC,GACV,KAAK,CAAA;AAEX,KAAK,SAAS,CAAC,CAAC,EAAE,CAAC,SAAS,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,GACrE,KAAK,SAAS,MAAM,CAAC,GACjB,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GACpB,CAAC,CAAC,KAAK,CAAC,GACR,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,GAC7B,KAAK,GACT,KAAK,CAAA;AAEX,cAAM,OAAO,CAAC,CAAC,SAAS,GAAG;;gBAIX,OAAO,EAAE,CAAC;IAItB,GAAG,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,SAAS,GAAG,EAAE,GAAG,CAAC,GAAG,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI;IACxF,GAAG,CAAC,UAAU,EAAE,CAAC,GAAG,IAAI;IAgBxB,GAAG;IAKH,IAAI,CAAC,UAAU,EAAE,CAAC;IAIlB,SAAS,GAAI,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,IAAI,mBAG1C;IAED,sBAAsB,CAAC,YAAY,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,MAAM;IAIvD,sBAAsB,UAxCD,CAAC,KAAK,MAAM;CA2CpC;AAED,wBAAgB,aAAa,CAAC,CAAC,SAAS,GAAG,EAAE,OAAO,EAAE,CAAC,cAEtD;AAED,KAAK,MAAM,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,CAAA;AAEzC,KAAK,aAAa,CAAC,CAAC,SAAS,GAAG,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;AAEtD,YAAY,EAAE,aAAa,IAAI,OAAO,EAAE,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=context.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.spec.d.ts","sourceRoot":"","sources":["../src/context.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ export * from './interfaces/agent';
2
+ export * from './interfaces/step-registry';
3
+ export * from './context';
4
+ export * from './mock';
5
+ export * from './stubs';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,WAAW,CAAA;AACzB,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../src/index.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,37 @@
1
+ import type { ApiCallTracer, ConversationalTracer, StepTracer } from '@recombine-ai/telescope';
2
+ import { Scheduler } from 'timers/promises';
3
+ import { Context } from '../context';
4
+ import { Logger } from './dockyard';
5
+ import { Message } from './other';
6
+ import { StepRegistry } from './step-registry';
7
+ type DefaultContext = Record<string, any>;
8
+ export interface TestAgentFactoryProps<CTX extends DefaultContext = DefaultContext> {
9
+ stepRegistry: StepRegistry;
10
+ apiCallTracer?: ApiCallTracer;
11
+ conversationalTracer?: ConversationalTracer;
12
+ stepTracer: StepTracer;
13
+ logger: Logger;
14
+ scheduler: Scheduler;
15
+ getMessages: () => Message[];
16
+ sendMessage: (message: string | Message) => Promise<void>;
17
+ ctx: Context<CTX>;
18
+ }
19
+ export interface TestTextAgent {
20
+ start: () => Promise<unknown>;
21
+ reactOnMessage: () => Promise<unknown>;
22
+ respondToMessage: () => Promise<unknown>;
23
+ isAssigned: () => Promise<boolean>;
24
+ onFatalError: (error: Error) => Promise<unknown>;
25
+ }
26
+ export interface TestVoiceAgent {
27
+ streamResponse: () => Promise<unknown>;
28
+ onCallEnd: () => Promise<unknown>;
29
+ onCallStart: () => Promise<unknown>;
30
+ onFatalError: (error: Error) => Promise<unknown>;
31
+ resetContext: () => Promise<unknown>;
32
+ }
33
+ export type TestAgent = TestTextAgent | TestVoiceAgent;
34
+ export type TestAgentFactory<T extends DefaultContext = DefaultContext> = (props: TestAgentFactoryProps<T>) => Promise<TestAgent>;
35
+ export declare function createTestAgentFactory<T extends DefaultContext>(creator: TestAgentFactory<T>): TestAgentFactory<T>;
36
+ export {};
37
+ //# sourceMappingURL=agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/interfaces/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAC9F,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAuB9C,KAAK,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AACzC,MAAM,WAAW,qBAAqB,CAAC,GAAG,SAAS,cAAc,GAAG,cAAc;IAC9E,YAAY,EAAE,YAAY,CAAA;IAM1B,aAAa,CAAC,EAAE,aAAa,CAAA;IAM7B,oBAAoB,CAAC,EAAE,oBAAoB,CAAA;IAC3C,UAAU,EAAE,UAAU,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,SAAS,CAAA;IACpB,WAAW,EAAE,MAAM,OAAO,EAAE,CAAA;IAC5B,WAAW,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACzD,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;CACpB;AAED,MAAM,WAAW,aAAa;IAC1B,KAAK,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;IAC7B,cAAc,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;IACtC,gBAAgB,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;IACxC,UAAU,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;IAClC,YAAY,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;CACnD;AAED,MAAM,WAAW,cAAc;IAC3B,cAAc,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;IACtC,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;IACjC,WAAW,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;IACnC,YAAY,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IAEhD,YAAY,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;CACvC;AAED,MAAM,MAAM,SAAS,GAAG,aAAa,GAAG,cAAc,CAAA;AAEtD,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,IAAI,CACtE,KAAK,EAAE,qBAAqB,CAAC,CAAC,CAAC,KAC9B,OAAO,CAAC,SAAS,CAAC,CAAA;AAEvB,wBAAgB,sBAAsB,CAAC,CAAC,SAAS,cAAc,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,uBAE5F"}
@@ -0,0 +1,23 @@
1
+ type Ctx = Record<string, any>;
2
+ type Paths<T> = T extends object ? {
3
+ [K in keyof T]: [K] | [K, ...Paths<T[K]>];
4
+ }[keyof T] : never;
5
+ type PathValue<T, P extends any[]> = P extends [infer First, ...infer Rest] ? First extends keyof T ? Rest['length'] extends 0 ? T[First] : PathValue<T[First], Rest> : never : never;
6
+ declare class Context<T extends Ctx> {
7
+ #private;
8
+ constructor(context: T);
9
+ set<P extends Paths<T>>(path: P extends any[] ? P : never, value: PathValue<T, P>): void;
10
+ set(newContext: T): void;
11
+ get(): T;
12
+ swap(newContext: T): void;
13
+ subscribe: (listener: (context: T) => void) => () => boolean;
14
+ setPromptContextMapper(promptMapper: (ctx: T) => object): void;
15
+ getPromptContextMapper(): (ctx: T) => object;
16
+ }
17
+ export declare function createContext<T extends Ctx>(context: T): Context<T>;
18
+ type Public<T> = {
19
+ [P in keyof T]: T[P];
20
+ };
21
+ type PublicContext<T extends Ctx> = Public<Context<T>>;
22
+ export type { PublicContext as Context };
23
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/interfaces/context.ts"],"names":[],"mappings":"AAAA,KAAK,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAC9B,KAAK,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,GAC1B;KACK,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC5C,CAAC,MAAM,CAAC,CAAC,GACV,KAAK,CAAA;AAEX,KAAK,SAAS,CAAC,CAAC,EAAE,CAAC,SAAS,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,GACrE,KAAK,SAAS,MAAM,CAAC,GACjB,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GACpB,CAAC,CAAC,KAAK,CAAC,GACR,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,GAC7B,KAAK,GACT,KAAK,CAAA;AAEX,cAAM,OAAO,CAAC,CAAC,SAAS,GAAG;;gBAIX,OAAO,EAAE,CAAC;IAItB,GAAG,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,SAAS,GAAG,EAAE,GAAG,CAAC,GAAG,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI;IACxF,GAAG,CAAC,UAAU,EAAE,CAAC,GAAG,IAAI;IAgBxB,GAAG;IAKH,IAAI,CAAC,UAAU,EAAE,CAAC;IAIlB,SAAS,GAAI,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,IAAI,mBAG1C;IAED,sBAAsB,CAAC,YAAY,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,MAAM;IAIvD,sBAAsB,UAxCD,CAAC,KAAK,MAAM;CA2CpC;AAED,wBAAgB,aAAa,CAAC,CAAC,SAAS,GAAG,EAAE,OAAO,EAAE,CAAC,cAEtD;AAED,KAAK,MAAM,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,CAAA;AAEzC,KAAK,aAAa,CAAC,CAAC,SAAS,GAAG,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;AAEtD,YAAY,EAAE,aAAa,IAAI,OAAO,EAAE,CAAA"}
@@ -0,0 +1,6 @@
1
+ export interface Logger {
2
+ log: (...args: any[]) => void;
3
+ debug: (...args: any[]) => void;
4
+ error: (...args: any[]) => void;
5
+ }
6
+ //# sourceMappingURL=dockyard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dockyard.d.ts","sourceRoot":"","sources":["../../src/interfaces/dockyard.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,MAAM;IACnB,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;IAC7B,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;IAC/B,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;CAClC"}
@@ -0,0 +1,6 @@
1
+ import { Logger } from './dockyard';
2
+ type ConstructorType<T> = new (...args: any[]) => T;
3
+ type InstanceType<T extends ConstructorType<any>> = T extends new (...args: any[]) => infer R ? R : never;
4
+ export declare function createMock<T extends ConstructorType<any>>(logger: Logger, constructor: T, overrides?: Partial<InstanceType<T>>): InstanceType<T>;
5
+ export {};
6
+ //# sourceMappingURL=mock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock.d.ts","sourceRoot":"","sources":["../../src/interfaces/mock.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAEnC,KAAK,eAAe,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;AACnD,KAAK,YAAY,CAAC,CAAC,SAAS,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,GACvF,CAAC,GACD,KAAK,CAAA;AAEX,wBAAgB,UAAU,CAAC,CAAC,SAAS,eAAe,CAAC,GAAG,CAAC,EACrD,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,CAAC,EACd,SAAS,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GACrC,YAAY,CAAC,CAAC,CAAC,CAuBjB"}
@@ -0,0 +1,19 @@
1
+ export type ScheduleAction = (delay: Date, phone: string) => Promise<void>;
2
+ export interface Scheduler {
3
+ registerAction: (actionName: string, action: (phone: string) => Promise<unknown>) => ScheduleAction;
4
+ clearAllPendingActions: (phone: string) => Promise<unknown>;
5
+ }
6
+ export interface PromptFile {
7
+ type: 'file';
8
+ content: () => Promise<string>;
9
+ path: string;
10
+ }
11
+ export interface PromptFS {
12
+ loadFile(path: string): PromptFile;
13
+ }
14
+ export interface Message {
15
+ sender: 'user' | 'agent' | 'system';
16
+ text: string;
17
+ imageUrl?: string;
18
+ }
19
+ //# sourceMappingURL=other.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"other.d.ts","sourceRoot":"","sources":["../../src/interfaces/other.ts"],"names":[],"mappings":"AAQA,MAAM,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;AAE1E,MAAM,WAAW,SAAS;IAOtB,cAAc,EAAE,CACZ,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,KAC1C,cAAc,CAAA;IAKnB,sBAAsB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;CAC9D;AAED,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;IAC9B,IAAI,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,QAAQ;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAAA;CACrC;AASD,MAAM,WAAW,OAAO;IAEpB,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAA;IAEnC,IAAI,EAAE,MAAM,CAAA;IAEZ,QAAQ,CAAC,EAAE,MAAM,CAAA;CACpB"}
@@ -0,0 +1,16 @@
1
+ import { type ZodType } from 'zod';
2
+ import { PromptFile } from './other';
3
+ export interface PromptString {
4
+ type: 'string';
5
+ content: () => Promise<string>;
6
+ }
7
+ export interface StepDef {
8
+ name: string;
9
+ type: 'streaming-response' | 'streaming-detect' | 'text';
10
+ prompt: PromptFile | PromptString;
11
+ schema?: ZodType;
12
+ }
13
+ export interface StepRegistry {
14
+ addStep(def: StepDef): void;
15
+ }
16
+ //# sourceMappingURL=step-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"step-registry.d.ts","sourceRoot":"","sources":["../../src/interfaces/step-registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,KAAK,CAAA;AAGlC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEpC,MAAM,WAAW,YAAY;IACzB,IAAI,EAAE,QAAQ,CAAA;IACd,OAAO,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;CACjC;AAED,MAAM,WAAW,OAAO;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,oBAAoB,GAAG,kBAAkB,GAAG,MAAM,CAAA;IACxD,MAAM,EAAE,UAAU,GAAG,YAAY,CAAA;IACjC,MAAM,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,YAAY;IACzB,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAAA;CAC9B"}
@@ -0,0 +1,6 @@
1
+ import { Logger } from './interfaces/dockyard';
2
+ type ConstructorType<T> = new (...args: any[]) => T;
3
+ type InstanceType<T extends ConstructorType<any>> = T extends new (...args: any[]) => infer R ? R : never;
4
+ export declare function createMock<T extends ConstructorType<any>>(logger: Logger, constructor: T, overrides?: Partial<InstanceType<T>>): InstanceType<T>;
5
+ export {};
6
+ //# sourceMappingURL=mock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock.d.ts","sourceRoot":"","sources":["../src/mock.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAE9C,KAAK,eAAe,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;AACnD,KAAK,YAAY,CAAC,CAAC,SAAS,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,GACvF,CAAC,GACD,KAAK,CAAA;AAEX,wBAAgB,UAAU,CAAC,CAAC,SAAS,eAAe,CAAC,GAAG,CAAC,EACrD,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,CAAC,EACd,SAAS,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GACrC,YAAY,CAAC,CAAC,CAAC,CAuBjB"}
@@ -0,0 +1,4 @@
1
+ import { Logger } from './interfaces/dockyard';
2
+ import { StepRegistry } from './interfaces/step-registry';
3
+ export declare function createStubRegistry(logger: Logger): StepRegistry;
4
+ //# sourceMappingURL=stubs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stubs.d.ts","sourceRoot":"","sources":["../src/stubs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAKzD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAM/D"}
package/package.json ADDED
@@ -0,0 +1,31 @@
1
+ {
2
+ "name": "@recombine-ai/platform",
3
+ "version": "0.1.0",
4
+ "description": "Recombine AI: voice agent platform",
5
+ "license": "EULA",
6
+ "author": "recombine.ai",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/recombine-ai/platform.git",
10
+ "directory": "packages/platform"
11
+ },
12
+ "files": [
13
+ "build"
14
+ ],
15
+ "type": "module",
16
+ "dependencies": {
17
+ "@recombine-ai/engine": "1.0.0",
18
+ "@recombine-ai/telescope": "0.1.0",
19
+ "redis": "5.11.0",
20
+ "zod": "^4.4.3"
21
+ },
22
+ "exports": {
23
+ ".": "./src/index.ts"
24
+ },
25
+ "publishConfig": {
26
+ "registry": "https://registry.npmjs.org"
27
+ },
28
+ "devDependencies": {
29
+ "@types/node": "^25.2.3"
30
+ }
31
+ }