@molroo-io/sdk 0.5.3 → 0.6.2

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.
Files changed (48) hide show
  1. package/README.md +59 -73
  2. package/dist/cjs/index.d.ts +2 -0
  3. package/dist/cjs/index.d.ts.map +1 -1
  4. package/dist/cjs/index.js +3 -1
  5. package/dist/cjs/persona.d.ts +26 -0
  6. package/dist/cjs/persona.d.ts.map +1 -1
  7. package/dist/cjs/persona.js +23 -0
  8. package/dist/cjs/world/client.d.ts +3 -3
  9. package/dist/cjs/world/client.js +3 -3
  10. package/dist/cjs/world/index.d.ts +4 -4
  11. package/dist/cjs/world/index.d.ts.map +1 -1
  12. package/dist/cjs/world/index.js +4 -4
  13. package/dist/cjs/world/types.d.ts +4 -4
  14. package/dist/cjs/world/types.d.ts.map +1 -1
  15. package/dist/cjs/world/{village.d.ts → world-domain.d.ts} +25 -25
  16. package/dist/cjs/world/world-domain.d.ts.map +1 -0
  17. package/dist/cjs/world/{village.js → world-domain.js} +36 -36
  18. package/dist/cjs/world/world-persona.d.ts +5 -5
  19. package/dist/cjs/world/world-persona.d.ts.map +1 -1
  20. package/dist/cjs/world/world-persona.js +14 -14
  21. package/dist/cjs/world/world.d.ts +61 -17
  22. package/dist/cjs/world/world.d.ts.map +1 -1
  23. package/dist/cjs/world/world.js +70 -27
  24. package/dist/esm/index.d.ts +2 -0
  25. package/dist/esm/index.d.ts.map +1 -1
  26. package/dist/esm/index.js +1 -0
  27. package/dist/esm/persona.d.ts +26 -0
  28. package/dist/esm/persona.d.ts.map +1 -1
  29. package/dist/esm/persona.js +23 -0
  30. package/dist/esm/world/client.d.ts +3 -3
  31. package/dist/esm/world/client.js +3 -3
  32. package/dist/esm/world/index.d.ts +4 -4
  33. package/dist/esm/world/index.d.ts.map +1 -1
  34. package/dist/esm/world/index.js +2 -2
  35. package/dist/esm/world/types.d.ts +4 -4
  36. package/dist/esm/world/types.d.ts.map +1 -1
  37. package/dist/esm/world/{village.d.ts → world-domain.d.ts} +25 -25
  38. package/dist/esm/world/world-domain.d.ts.map +1 -0
  39. package/dist/esm/world/{village.js → world-domain.js} +34 -34
  40. package/dist/esm/world/world-persona.d.ts +5 -5
  41. package/dist/esm/world/world-persona.d.ts.map +1 -1
  42. package/dist/esm/world/world-persona.js +14 -14
  43. package/dist/esm/world/world.d.ts +61 -17
  44. package/dist/esm/world/world.d.ts.map +1 -1
  45. package/dist/esm/world/world.js +68 -25
  46. package/package.json +1 -1
  47. package/dist/cjs/world/village.d.ts.map +0 -1
  48. package/dist/esm/world/village.d.ts.map +0 -1
package/README.md CHANGED
@@ -1,11 +1,11 @@
1
1
  # @molroo-io/sdk
2
2
 
3
- [![version](https://img.shields.io/badge/version-0.5.2-e94560)](package.json)
3
+ [![version](https://img.shields.io/badge/version-0.6.0-e94560)](package.json)
4
4
  [![license](https://img.shields.io/badge/license-MIT-blue)](LICENSE)
5
5
  [![TypeScript](https://img.shields.io/badge/TypeScript-5.9-3178C6)](tsconfig.json)
6
6
  [![tests](https://img.shields.io/badge/tests-148-brightgreen)](src/__tests__)
7
7
 
8
- Thin client SDK for the [molroo](https://molroo.io) emotion engine API. Handles prompt assembly, LLM orchestration, and memory recall — so your app just calls `chat()`.
8
+ Client SDK for the [molroo](https://molroo.io) emotion engine API. One client for personas and worlds — handles prompt assembly, LLM orchestration, and memory recall.
9
9
 
10
10
  ## Install
11
11
 
@@ -16,26 +16,29 @@ npm install @molroo-io/sdk
16
16
  ## Quick Start
17
17
 
18
18
  ```ts
19
- import { MolrooPersona } from '@molroo-io/sdk';
20
- import { createVercelAIAdapter } from '@molroo-io/sdk';
19
+ import { Molroo, createVercelAIAdapter } from '@molroo-io/sdk';
20
+
21
+ const molroo = new Molroo({ apiKey: 'mk_live_...' });
21
22
 
22
23
  const llm = createVercelAIAdapter({
23
24
  provider: 'openai',
24
25
  apiKey: process.env.OPENAI_API_KEY!,
25
26
  });
26
27
 
27
- const persona = await MolrooPersona.create({
28
- baseUrl: 'https://api.molroo.io',
29
- apiKey: 'mol_sk_your_api_key',
30
- llm,
31
- }, {
32
- identity: { name: 'Sera', coreValues: ['honesty', 'warmth'] },
33
- personality: { O: 0.7, C: 0.6, E: 0.8, A: 0.5, N: 0.3, H: 0.6 },
34
- });
28
+ // Create a persona
29
+ const sera = await molroo.createPersona(
30
+ { identity: { name: 'Sera', coreValues: ['honesty', 'warmth'] },
31
+ personality: { O: 0.7, C: 0.6, E: 0.8, A: 0.5, N: 0.3, H: 0.6 } },
32
+ { llm },
33
+ );
35
34
 
36
- const result = await persona.chat('Hello!');
35
+ const result = await sera.chat('Hello!');
37
36
  console.log(result.text); // "Hey! It's great to meet you..."
38
37
  console.log(result.response.emotion); // { V: 0.4, A: 0.5, D: 0.2 }
38
+
39
+ // Create a world with multiple personas
40
+ const world = await molroo.createWorld({ name: 'Cafe' });
41
+ await world.addPersona({ personaConfigId: sera.id, config: {...} });
39
42
  ```
40
43
 
41
44
  ## How It Works
@@ -71,6 +74,31 @@ console.log(result.response.emotion); // { V: 0.4, A: 0.5, D: 0.2 }
71
74
 
72
75
  The API does all emotion computation. The SDK just connects it to your LLM.
73
76
 
77
+ ## Molroo Client
78
+
79
+ The unified entry point. One client, one API key.
80
+
81
+ ```ts
82
+ const molroo = new Molroo({ apiKey: 'mk_live_...' });
83
+ ```
84
+
85
+ ### Persona Methods
86
+
87
+ | Method | Description |
88
+ |--------|-------------|
89
+ | `createPersona(config, options?)` | Create a new persona |
90
+ | `connectPersona(id, options?)` | Connect to an existing persona |
91
+ | `generatePersona(description, options)` | Generate persona from description via LLM |
92
+ | `listPersonas()` | List all personas |
93
+
94
+ ### World Methods
95
+
96
+ | Method | Description |
97
+ |--------|-------------|
98
+ | `createWorld(options)` | Create a new world |
99
+ | `getWorld(id)` | Get an existing world |
100
+ | `listWorlds(options?)` | List all worlds |
101
+
74
102
  ## Two LLM Modes
75
103
 
76
104
  ### Combined Mode (default)
@@ -78,10 +106,7 @@ The API does all emotion computation. The SDK just connects it to your LLM.
78
106
  Single LLM call returns both response text and appraisal in one `generateObject()` call:
79
107
 
80
108
  ```ts
81
- const persona = await MolrooPersona.create({
82
- baseUrl, apiKey,
83
- llm, // one LLM handles everything
84
- }, personaConfig);
109
+ const sera = await molroo.createPersona(personaConfig, { llm });
85
110
  ```
86
111
 
87
112
  ### Split Mode
@@ -89,24 +114,15 @@ const persona = await MolrooPersona.create({
89
114
  Separate LLM for appraisal (cheap/fast model) and response (quality model). Appraisal runs first -> engine updates emotion -> response generated with updated emotional state:
90
115
 
91
116
  ```ts
92
- const persona = await MolrooPersona.create({
93
- baseUrl, apiKey,
94
- llm: responseModel, // quality model for response text
117
+ const sera = await molroo.createPersona(personaConfig, {
118
+ llm: responseModel, // quality model for response text
95
119
  engineLlm: appraisalModel, // cheap model for appraisal vector
96
- }, personaConfig);
120
+ });
97
121
  ```
98
122
 
99
123
  ## MolrooPersona API
100
124
 
101
- ### Static Methods
102
-
103
- | Method | Description |
104
- |--------|-------------|
105
- | `MolrooPersona.create(config, personaConfig)` | Create a new persona |
106
- | `MolrooPersona.connect(config, personaId)` | Connect to an existing persona |
107
- | `MolrooPersona.listPersonas(config)` | List all personas |
108
-
109
- ### Instance Methods
125
+ Returned by `molroo.createPersona()`, `molroo.connectPersona()`, or `molroo.generatePersona()`.
110
126
 
111
127
  | Method | Description |
112
128
  |--------|-------------|
@@ -123,20 +139,6 @@ const persona = await MolrooPersona.create({
123
139
  | `destroy()` | Soft-delete the persona |
124
140
  | `restore()` | Restore a soft-deleted persona |
125
141
 
126
- ### Config
127
-
128
- ```ts
129
- interface MolrooPersonaConfig {
130
- baseUrl: string; // API URL (e.g. 'https://api.molroo.io')
131
- apiKey: string; // API key
132
- llm?: LLMAdapter; // LLM for chat (optional - emotion-only without)
133
- engineLlm?: LLMAdapter; // Separate LLM for appraisal (split mode)
134
- memory?: MemoryAdapter | MemoryConfig; // Single adapter or split config (optional)
135
- recall?: RecallLimits; // Recall limits for single adapter mode
136
- events?: EventAdapter; // Event emission (optional)
137
- }
138
- ```
139
-
140
142
  ## Adapters
141
143
 
142
144
  ### LLM Adapter
@@ -162,11 +164,11 @@ Client-side memory for episodic recall and semantic search. Optional — when no
162
164
  ```ts
163
165
  import { SqliteMemoryAdapter } from '@molroo-io/sdk/memory/sqlite';
164
166
 
165
- const persona = await MolrooPersona.create({
166
- baseUrl, apiKey, llm,
167
+ const sera = await molroo.createPersona(personaConfig, {
168
+ llm,
167
169
  memory: new SqliteMemoryAdapter({ dbPath: './memory.db' }),
168
- recall: { episodicLimit: 5, semanticLimit: 3 }, // optional limits
169
- }, personaConfig);
170
+ recall: { episodicLimit: 5, semanticLimit: 3 },
171
+ });
170
172
  ```
171
173
 
172
174
  Built-in `InMemoryEpisodeAdapter` also works as a single adapter (for demos/testing):
@@ -174,24 +176,10 @@ Built-in `InMemoryEpisodeAdapter` also works as a single adapter (for demos/test
174
176
  ```ts
175
177
  import { InMemoryEpisodeAdapter } from '@molroo-io/sdk';
176
178
 
177
- const persona = await MolrooPersona.create({
178
- baseUrl, apiKey, llm,
179
+ const sera = await molroo.createPersona(personaConfig, {
180
+ llm,
179
181
  memory: new InMemoryEpisodeAdapter(),
180
- }, personaConfig);
181
- ```
182
-
183
- **Split adapters (advanced)** — assemble episode store + vector search separately:
184
-
185
- ```ts
186
- const persona = await MolrooPersona.create({
187
- baseUrl, apiKey, llm,
188
- memory: {
189
- episodes: episodeStore,
190
- semantic: vectorStore,
191
- embedding: embeddingProvider,
192
- recall: { episodicLimit: 5, semanticLimit: 3 },
193
- },
194
- }, personaConfig);
182
+ });
195
183
  ```
196
184
 
197
185
  ### Events
@@ -210,16 +198,14 @@ const events = new WebhookEventAdapter({ url: 'https://...', secret: '...' });
210
198
 
211
199
  ## Persona Generation
212
200
 
213
- Generate a complete persona config from a description using LLM:
201
+ Generate a persona from a description no manual config needed:
214
202
 
215
203
  ```ts
216
- import { generatePersona } from '@molroo-io/sdk';
217
-
218
- const result = await generatePersona(llm, {
219
- name: 'Sera',
220
- description: 'A cheerful companion who loves music',
221
- });
222
- // result.config -> full PersonaConfigData
204
+ const sera = await molroo.generatePersona(
205
+ 'A cheerful companion who loves music',
206
+ { llm },
207
+ );
208
+ await sera.chat('Play me something!');
223
209
  ```
224
210
 
225
211
  ## Build & Test
@@ -30,6 +30,8 @@
30
30
  * const result = await persona.chat('Hello!');
31
31
  * ```
32
32
  */
33
+ export { Molroo } from './world/world';
34
+ export type { MolrooOptions, PersonaOptions } from './world/world';
33
35
  export { MolrooPersona } from './persona';
34
36
  export { MolrooApiError } from './types';
35
37
  export type { LLMAdapter, Message, GenerateTextOptions, GenerateObjectOptions, } from './llm/adapter';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/dist/cjs/index.js CHANGED
@@ -32,8 +32,10 @@
32
32
  * ```
33
33
  */
34
34
  Object.defineProperty(exports, "__esModule", { value: true });
35
- exports.withDefaults = exports.DEFAULT_PERSONA = exports.LLMResponseWithToolsSchema = exports.LLMResponseSchema = exports.AppraisalVectorSchema = exports.GeneratePersonaSchema = exports.generatePersona = exports.WebhookEventAdapter = exports.ConsoleEventAdapter = exports.InMemoryEpisodeStore = exports.InMemorySemanticMemory = exports.InMemoryEpisodeAdapter = exports.isMemoryConfig = exports.createVercelAIAdapter = exports.VercelAIAdapter = exports.MolrooApiError = exports.MolrooPersona = void 0;
35
+ exports.withDefaults = exports.DEFAULT_PERSONA = exports.LLMResponseWithToolsSchema = exports.LLMResponseSchema = exports.AppraisalVectorSchema = exports.GeneratePersonaSchema = exports.generatePersona = exports.WebhookEventAdapter = exports.ConsoleEventAdapter = exports.InMemoryEpisodeStore = exports.InMemorySemanticMemory = exports.InMemoryEpisodeAdapter = exports.isMemoryConfig = exports.createVercelAIAdapter = exports.VercelAIAdapter = exports.MolrooApiError = exports.MolrooPersona = exports.Molroo = void 0;
36
36
  // ── Main exports ──
37
+ var world_1 = require("./world/world");
38
+ Object.defineProperty(exports, "Molroo", { enumerable: true, get: function () { return world_1.Molroo; } });
37
39
  var persona_1 = require("./persona");
38
40
  Object.defineProperty(exports, "MolrooPersona", { enumerable: true, get: function () { return persona_1.MolrooPersona; } });
39
41
  var types_1 = require("./types");
@@ -145,6 +145,32 @@ export declare class MolrooPersona {
145
145
  recall?: RecallLimits;
146
146
  events?: EventAdapter;
147
147
  }, personaConfig: PersonaConfigData): Promise<MolrooPersona>;
148
+ /**
149
+ * Generate a persona from a natural-language description, then create it on the API.
150
+ *
151
+ * Combines {@link generatePersona} + {@link MolrooPersona.create} in one step.
152
+ *
153
+ * @param config - API connection config and optional LLM adapter.
154
+ * @param description - Natural-language description of the persona to generate.
155
+ * @returns A connected MolrooPersona instance with a generated config.
156
+ *
157
+ * @example
158
+ * ```typescript
159
+ * const sera = await MolrooPersona.generate(
160
+ * { baseUrl: 'https://api.molroo.io', apiKey: 'mk_live_...', llm: { provider: 'openai', apiKey: '...' } },
161
+ * 'A warm and friendly barista named Sera who loves coffee and people.',
162
+ * );
163
+ * ```
164
+ */
165
+ static generate(config: {
166
+ baseUrl: string;
167
+ apiKey: string;
168
+ llm: LLMInput;
169
+ engineLlm?: LLMInput;
170
+ memory?: MemoryAdapter | MemoryConfig;
171
+ recall?: RecallLimits;
172
+ events?: EventAdapter;
173
+ }, description: string): Promise<MolrooPersona>;
148
174
  /**
149
175
  * Connect to an existing persona by ID.
150
176
  *
@@ -1 +1 @@
1
- {"version":3,"file":"persona.d.ts","sourceRoot":"","sources":["../../src/persona.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"persona.d.ts","sourceRoot":"","sources":["../../src/persona.ts"],"names":[],"mappings":"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"}
@@ -157,6 +157,29 @@ class MolrooPersona {
157
157
  const persona = new MolrooPersona({ ...config, llm, engineLlm, personaId: result.personaId });
158
158
  return persona;
159
159
  }
160
+ /**
161
+ * Generate a persona from a natural-language description, then create it on the API.
162
+ *
163
+ * Combines {@link generatePersona} + {@link MolrooPersona.create} in one step.
164
+ *
165
+ * @param config - API connection config and optional LLM adapter.
166
+ * @param description - Natural-language description of the persona to generate.
167
+ * @returns A connected MolrooPersona instance with a generated config.
168
+ *
169
+ * @example
170
+ * ```typescript
171
+ * const sera = await MolrooPersona.generate(
172
+ * { baseUrl: 'https://api.molroo.io', apiKey: 'mk_live_...', llm: { provider: 'openai', apiKey: '...' } },
173
+ * 'A warm and friendly barista named Sera who loves coffee and people.',
174
+ * );
175
+ * ```
176
+ */
177
+ static async generate(config, description) {
178
+ const { generatePersona } = await Promise.resolve().then(() => __importStar(require('./generate/persona')));
179
+ const llm = await (0, resolve_1.resolveLLM)(config.llm);
180
+ const personaConfig = await generatePersona(llm, description);
181
+ return MolrooPersona.create(config, personaConfig);
182
+ }
160
183
  /**
161
184
  * Connect to an existing persona by ID.
162
185
  *
@@ -15,9 +15,9 @@ export interface WorldClientOptions {
15
15
  * apiKey: 'mk_live_...',
16
16
  * });
17
17
  *
18
- * // Create a village
19
- * const { data } = await client.POST('/villages', {
20
- * body: { name: 'My Village' },
18
+ * // Create a world
19
+ * const { data } = await client.POST('/worlds', {
20
+ * body: { name: 'My World' },
21
21
  * });
22
22
  * ```
23
23
  */
@@ -31,9 +31,9 @@ const errorMiddleware = {
31
31
  * apiKey: 'mk_live_...',
32
32
  * });
33
33
  *
34
- * // Create a village
35
- * const { data } = await client.POST('/villages', {
36
- * body: { name: 'My Village' },
34
+ * // Create a world
35
+ * const { data } = await client.POST('/worlds', {
36
+ * body: { name: 'My World' },
37
37
  * });
38
38
  * ```
39
39
  */
@@ -1,9 +1,9 @@
1
- export { World } from './world';
2
- export type { WorldOptions } from './world';
3
- export { Village } from './village';
1
+ export { Molroo } from './world';
2
+ export type { MolrooOptions, PersonaOptions } from './world';
3
+ export { World } from './world-domain';
4
4
  export { WorldPersona } from './world-persona';
5
5
  export type { WorldPersonaOptions, WorldLLM, LLMMessage, ReactOptions, ReactResult, PersonaState, PersonaEmotion, PromptContext, PersonaDetail, } from './world-persona';
6
- export type { VillageData, CreateVillageOptions, UpdateVillageOptions, PaginationOptions, AddPersonaOptions, VillagePersonaRef, AppraisalVector, CreateActionOptions, ActionData, ActionRef, EntityType, RelationshipEndpoint, SetRelationshipOptions, InteractOptions, InteractResult, EventEntry, } from './types';
6
+ export type { WorldData, CreateWorldOptions, UpdateWorldOptions, PaginationOptions, AddPersonaOptions, WorldPersonaRef, AppraisalVector, CreateActionOptions, ActionData, ActionRef, EntityType, RelationshipEndpoint, SetRelationshipOptions, InteractOptions, InteractResult, EventEntry, } from './types';
7
7
  export { WorldApiError } from './errors';
8
8
  export { createWorldClient } from './client';
9
9
  export type { WorldClientOptions } from './client';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/world/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,YAAY,EACV,mBAAmB,EACnB,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,cAAc,EACd,aAAa,EACb,aAAa,GACd,MAAM,iBAAiB,CAAC;AAGzB,YAAY,EACV,WAAW,EACX,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,UAAU,EACV,SAAS,EACT,UAAU,EACV,oBAAoB,EACpB,sBAAsB,EACtB,eAAe,EACf,cAAc,EACd,UAAU,GACX,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,YAAY,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/world/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,YAAY,EACV,mBAAmB,EACnB,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,cAAc,EACd,aAAa,EACb,aAAa,GACd,MAAM,iBAAiB,CAAC;AAGzB,YAAY,EACV,SAAS,EACT,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,UAAU,EACV,SAAS,EACT,UAAU,EACV,oBAAoB,EACpB,sBAAsB,EACtB,eAAe,EACf,cAAc,EACd,UAAU,GACX,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,YAAY,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC"}
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createWorldClient = exports.WorldApiError = exports.WorldPersona = exports.Village = exports.World = void 0;
3
+ exports.createWorldClient = exports.WorldApiError = exports.WorldPersona = exports.World = exports.Molroo = void 0;
4
4
  // Primary
5
5
  var world_1 = require("./world");
6
- Object.defineProperty(exports, "World", { enumerable: true, get: function () { return world_1.World; } });
7
- var village_1 = require("./village");
8
- Object.defineProperty(exports, "Village", { enumerable: true, get: function () { return village_1.Village; } });
6
+ Object.defineProperty(exports, "Molroo", { enumerable: true, get: function () { return world_1.Molroo; } });
7
+ var world_domain_1 = require("./world-domain");
8
+ Object.defineProperty(exports, "World", { enumerable: true, get: function () { return world_domain_1.World; } });
9
9
  var world_persona_1 = require("./world-persona");
10
10
  Object.defineProperty(exports, "WorldPersona", { enumerable: true, get: function () { return world_persona_1.WorldPersona; } });
11
11
  // Error
@@ -4,7 +4,7 @@
4
4
  *
5
5
  * @module types
6
6
  */
7
- export interface VillageData {
7
+ export interface WorldData {
8
8
  id: string;
9
9
  tenantId: string;
10
10
  name: string;
@@ -14,13 +14,13 @@ export interface VillageData {
14
14
  createdAt: number;
15
15
  updatedAt: number;
16
16
  }
17
- export interface CreateVillageOptions {
17
+ export interface CreateWorldOptions {
18
18
  name: string;
19
19
  description?: string;
20
20
  accessPolicy?: 'closed' | 'open';
21
21
  responseRule?: 'target' | 'all' | 'ai';
22
22
  }
23
- export interface UpdateVillageOptions {
23
+ export interface UpdateWorldOptions {
24
24
  name?: string;
25
25
  description?: string;
26
26
  accessPolicy?: 'closed' | 'open';
@@ -39,7 +39,7 @@ export type AddPersonaOptions = {
39
39
  displayName?: string;
40
40
  config: Record<string, unknown>;
41
41
  };
42
- export interface VillagePersonaRef {
42
+ export interface WorldPersonaRef {
43
43
  id: string;
44
44
  personaConfigId: string;
45
45
  createdAt: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/world/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/world/types.ts"],"names":[],"mappings":"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"}
@@ -1,40 +1,40 @@
1
1
  import { type ApiClient } from './client';
2
2
  import { WorldPersona, type WorldPersonaOptions } from './world-persona';
3
3
  import type { MolrooPersona } from '../persona';
4
- import type { VillageData, UpdateVillageOptions, AddPersonaOptions, VillagePersonaRef, CreateActionOptions, ActionData, ActionRef, SetRelationshipOptions, InteractOptions, InteractResult, EventEntry, PaginationOptions } from './types';
4
+ import type { WorldData, UpdateWorldOptions, AddPersonaOptions, WorldPersonaRef, CreateActionOptions, ActionData, ActionRef, SetRelationshipOptions, InteractOptions, InteractResult, EventEntry, PaginationOptions } from './types';
5
5
  /**
6
- * Represents a village and exposes domain methods for personas, actions,
6
+ * Represents a world and exposes domain methods for personas, actions,
7
7
  * relationships, interactions, and events.
8
8
  *
9
- * Instances are obtained via {@link World.createVillage} or {@link World.getVillage}.
9
+ * Instances are obtained via {@link Molroo.createWorld} or {@link Molroo.getWorld}.
10
10
  */
11
- export declare class Village {
11
+ export declare class World {
12
12
  /** @internal */
13
13
  private readonly _client;
14
14
  private _data;
15
- /** @internal — use World.createVillage / World.getVillage instead. */
16
- constructor(client: ApiClient, data: VillageData);
15
+ /** @internal — use Molroo.createWorld / Molroo.getWorld instead. */
16
+ constructor(client: ApiClient, data: WorldData);
17
17
  get id(): string;
18
18
  get name(): string;
19
19
  get description(): string | null;
20
20
  get accessPolicy(): string;
21
21
  get responseRule(): string;
22
- /** Returns a readonly snapshot of the village data. */
23
- get data(): Readonly<VillageData>;
22
+ /** Returns a readonly snapshot of the world data. */
23
+ get data(): Readonly<WorldData>;
24
24
  /**
25
- * Update village properties. Applies an optimistic local update on success.
25
+ * Update world properties. Applies an optimistic local update on success.
26
26
  */
27
- update(options: UpdateVillageOptions): Promise<void>;
28
- /** Soft-delete this village. */
27
+ update(options: UpdateWorldOptions): Promise<void>;
28
+ /** Soft-delete this world. */
29
29
  delete(): Promise<void>;
30
- /** Add a persona to this village (inline config or reference to existing persona). */
31
- addPersona(persona: MolrooPersona): Promise<VillagePersonaRef>;
32
- addPersona(options: AddPersonaOptions): Promise<VillagePersonaRef>;
33
- /** List all personas in this village. */
30
+ /** Add a persona to this world (inline config or reference to existing persona). */
31
+ addPersona(persona: MolrooPersona): Promise<WorldPersonaRef>;
32
+ addPersona(options: AddPersonaOptions): Promise<WorldPersonaRef>;
33
+ /** List all personas in this world. */
34
34
  listPersonas(): Promise<unknown[]>;
35
35
  /** Get a single persona by ID. */
36
36
  getPersona(personaId: string): Promise<unknown>;
37
- /** Remove a persona from this village. */
37
+ /** Remove a persona from this world. */
38
38
  removePersona(personaId: string): Promise<void>;
39
39
  /**
40
40
  * Get a persona handle for LLM-powered interactions.
@@ -44,7 +44,7 @@ export declare class Village {
44
44
  *
45
45
  * @example
46
46
  * ```typescript
47
- * const mina = village.persona('mina', { llm: adapter });
47
+ * const mina = world.persona('mina', { llm: adapter });
48
48
  * const r = await mina.react('flirt', {
49
49
  * actor: 'yongjun',
50
50
  * prompt: '거실에서 용준이 민아에게 윙크했다.',
@@ -52,24 +52,24 @@ export declare class Village {
52
52
  * ```
53
53
  */
54
54
  persona(personaId: string, options?: WorldPersonaOptions): WorldPersona;
55
- /** Create a custom action in this village. */
55
+ /** Create a custom action in this world. */
56
56
  createAction(options: CreateActionOptions): Promise<ActionRef>;
57
- /** List all actions (defaults + custom) in this village. */
57
+ /** List all actions (defaults + custom) in this world. */
58
58
  listActions(): Promise<ActionData[]>;
59
- /** Delete a custom action from this village. */
59
+ /** Delete a custom action from this world. */
60
60
  deleteAction(actionId: string): Promise<void>;
61
- /** Set (upsert) a relationship in this village. */
61
+ /** Set (upsert) a relationship in this world. */
62
62
  setRelationship(options: SetRelationshipOptions): Promise<void>;
63
- /** List all relationships in this village. */
63
+ /** List all relationships in this world. */
64
64
  listRelationships(): Promise<unknown[]>;
65
65
  /** Delete a relationship by ID. */
66
66
  deleteRelationship(relationshipId: string): Promise<void>;
67
- /** Execute an interaction in this village. */
67
+ /** Execute an interaction in this world. */
68
68
  interact(options: InteractOptions): Promise<InteractResult>;
69
- /** Retrieve the event log for this village. */
69
+ /** Retrieve the event log for this world. */
70
70
  getEvents(options?: PaginationOptions): Promise<{
71
71
  events: EventEntry[];
72
72
  nextCursor: string | null;
73
73
  }>;
74
74
  }
75
- //# sourceMappingURL=village.d.ts.map
75
+ //# sourceMappingURL=world-domain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"world-domain.d.ts","sourceRoot":"","sources":["../../../src/world/world-domain.ts"],"names":[],"mappings":"AACA,OAAO,EAAU,KAAK,SAAS,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EAEf,mBAAmB,EACnB,UAAU,EACV,SAAS,EACT,sBAAsB,EACtB,eAAe,EACf,cAAc,EACd,UAAU,EACV,iBAAiB,EAClB,MAAM,SAAS,CAAC;AAsCjB;;;;;GAKG;AACH,qBAAa,KAAK;IAChB,gBAAgB;IAChB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAY;IACpC,OAAO,CAAC,KAAK,CAAY;IAEzB,oEAAoE;gBACxD,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS;IAO9C,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,WAAW,IAAI,MAAM,GAAG,IAAI,CAE/B;IAED,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,qDAAqD;IACrD,IAAI,IAAI,IAAI,QAAQ,CAAC,SAAS,CAAC,CAE9B;IAID;;OAEG;IACG,MAAM,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBxD,8BAA8B;IACxB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ7B,oFAAoF;IAC9E,UAAU,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC;IAC5D,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC;IAwCtE,uCAAuC;IACjC,YAAY,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IASxC,kCAAkC;IAC5B,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQrD,wCAAwC;IAClC,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQrD;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,YAAY;IAMvE,4CAA4C;IACtC,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC;IAcpE,0DAA0D;IACpD,WAAW,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAsB1C,8CAA8C;IACxC,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQnD,iDAAiD;IAC3C,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBrE,4CAA4C;IACtC,iBAAiB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAS7C,mCAAmC;IAC7B,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ/D,4CAA4C;IACtC,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IAmBjE,6CAA6C;IACvC,SAAS,CACb,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC;QAAE,MAAM,EAAE,UAAU,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;CAiBhE"}