@molroo-io/sdk 0.5.2 → 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 -81
  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
@@ -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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"}
@@ -121,6 +121,29 @@ export class MolrooPersona {
121
121
  const persona = new MolrooPersona({ ...config, llm, engineLlm, personaId: result.personaId });
122
122
  return persona;
123
123
  }
124
+ /**
125
+ * Generate a persona from a natural-language description, then create it on the API.
126
+ *
127
+ * Combines {@link generatePersona} + {@link MolrooPersona.create} in one step.
128
+ *
129
+ * @param config - API connection config and optional LLM adapter.
130
+ * @param description - Natural-language description of the persona to generate.
131
+ * @returns A connected MolrooPersona instance with a generated config.
132
+ *
133
+ * @example
134
+ * ```typescript
135
+ * const sera = await MolrooPersona.generate(
136
+ * { baseUrl: 'https://api.molroo.io', apiKey: 'mk_live_...', llm: { provider: 'openai', apiKey: '...' } },
137
+ * 'A warm and friendly barista named Sera who loves coffee and people.',
138
+ * );
139
+ * ```
140
+ */
141
+ static async generate(config, description) {
142
+ const { generatePersona } = await import('./generate/persona');
143
+ const llm = await resolveLLM(config.llm);
144
+ const personaConfig = await generatePersona(llm, description);
145
+ return MolrooPersona.create(config, personaConfig);
146
+ }
124
147
  /**
125
148
  * Connect to an existing persona by ID.
126
149
  *
@@ -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
  */
@@ -24,9 +24,9 @@ const errorMiddleware = {
24
24
  * apiKey: 'mk_live_...',
25
25
  * });
26
26
  *
27
- * // Create a village
28
- * const { data } = await client.POST('/villages', {
29
- * body: { name: 'My Village' },
27
+ * // Create a world
28
+ * const { data } = await client.POST('/worlds', {
29
+ * body: { name: 'My World' },
30
30
  * });
31
31
  * ```
32
32
  */
@@ -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,6 +1,6 @@
1
1
  // Primary
2
- export { World } from './world';
3
- export { Village } from './village';
2
+ export { Molroo } from './world';
3
+ export { World } from './world-domain';
4
4
  export { WorldPersona } from './world-persona';
5
5
  // Error
6
6
  export { WorldApiError } from './errors';
@@ -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":"AAAA;;;;;GAKG;AAMH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACjC,YAAY,CAAC,EAAE,QAAQ,GAAG,KAAK,GAAG,IAAI,CAAC;CACxC;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACjC,YAAY,CAAC,EAAE,QAAQ,GAAG,KAAK,GAAG,IAAI,CAAC;CACxC;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAMD,MAAM,MAAM,iBAAiB,GACzB;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9D;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAAC;AAEhF,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;CACnB;AAMD,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,eAAe,CAAC;CAClC;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,eAAe,CAAC;IACjC,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAMD,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC;AAE5C,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,UAAU,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,oBAAoB,CAAC;IAC7B,MAAM,EAAE,oBAAoB,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAMD,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC;AAED,MAAM,WAAW,cAAc;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB"}
@@ -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"}
@@ -1,4 +1,4 @@
1
- // INFO: @F001 Domain class wrapping village API — see plan step 3
1
+ // INFO: @F001 Domain class wrapping World API — see plan step 3
2
2
  import { unwrap } from './client';
3
3
  import { WorldPersona } from './world-persona';
4
4
  // ---------------------------------------------------------------------------
@@ -31,16 +31,16 @@ function fromApiAppraisal(raw) {
31
31
  };
32
32
  }
33
33
  // ---------------------------------------------------------------------------
34
- // Village class
34
+ // World class (domain)
35
35
  // ---------------------------------------------------------------------------
36
36
  /**
37
- * Represents a village and exposes domain methods for personas, actions,
37
+ * Represents a world and exposes domain methods for personas, actions,
38
38
  * relationships, interactions, and events.
39
39
  *
40
- * Instances are obtained via {@link World.createVillage} or {@link World.getVillage}.
40
+ * Instances are obtained via {@link Molroo.createWorld} or {@link Molroo.getWorld}.
41
41
  */
42
- export class Village {
43
- /** @internal — use World.createVillage / World.getVillage instead. */
42
+ export class World {
43
+ /** @internal — use Molroo.createWorld / Molroo.getWorld instead. */
44
44
  constructor(client, data) {
45
45
  this._client = client;
46
46
  this._data = { ...data };
@@ -61,16 +61,16 @@ export class Village {
61
61
  get responseRule() {
62
62
  return this._data.responseRule;
63
63
  }
64
- /** Returns a readonly snapshot of the village data. */
64
+ /** Returns a readonly snapshot of the world data. */
65
65
  get data() {
66
66
  return this._data;
67
67
  }
68
- // -- Village CRUD ---------------------------------------------------------
68
+ // -- World CRUD ---------------------------------------------------------
69
69
  /**
70
- * Update village properties. Applies an optimistic local update on success.
70
+ * Update world properties. Applies an optimistic local update on success.
71
71
  */
72
72
  async update(options) {
73
- await this._client.PATCH('/villages/{id}', {
73
+ await this._client.PATCH('/worlds/{id}', {
74
74
  params: { path: { id: this.id } },
75
75
  body: {
76
76
  name: options.name,
@@ -89,9 +89,9 @@ export class Village {
89
89
  if (options.responseRule !== undefined)
90
90
  this._data.responseRule = options.responseRule;
91
91
  }
92
- /** Soft-delete this village. */
92
+ /** Soft-delete this world. */
93
93
  async delete() {
94
- await this._client.DELETE('/villages/{id}', {
94
+ await this._client.DELETE('/worlds/{id}', {
95
95
  params: { path: { id: this.id } },
96
96
  });
97
97
  }
@@ -121,7 +121,7 @@ export class Village {
121
121
  };
122
122
  }
123
123
  }
124
- const { data } = await this._client.POST('/villages/{id}/personas', {
124
+ const { data } = await this._client.POST('/worlds/{id}/personas', {
125
125
  params: { path: { id: this.id } },
126
126
  body: body,
127
127
  });
@@ -132,9 +132,9 @@ export class Village {
132
132
  createdAt: raw.created_at,
133
133
  };
134
134
  }
135
- /** List all personas in this village. */
135
+ /** List all personas in this world. */
136
136
  async listPersonas() {
137
- const { data } = await this._client.GET('/villages/{id}/personas', {
137
+ const { data } = await this._client.GET('/worlds/{id}/personas', {
138
138
  params: { path: { id: this.id } },
139
139
  });
140
140
  const raw = unwrap(data);
@@ -142,14 +142,14 @@ export class Village {
142
142
  }
143
143
  /** Get a single persona by ID. */
144
144
  async getPersona(personaId) {
145
- const { data } = await this._client.GET('/villages/{id}/personas/{pid}', {
145
+ const { data } = await this._client.GET('/worlds/{id}/personas/{pid}', {
146
146
  params: { path: { id: this.id, pid: personaId } },
147
147
  });
148
148
  return unwrap(data);
149
149
  }
150
- /** Remove a persona from this village. */
150
+ /** Remove a persona from this world. */
151
151
  async removePersona(personaId) {
152
- await this._client.DELETE('/villages/{id}/personas/{pid}', {
152
+ await this._client.DELETE('/worlds/{id}/personas/{pid}', {
153
153
  params: { path: { id: this.id, pid: personaId } },
154
154
  });
155
155
  }
@@ -162,7 +162,7 @@ export class Village {
162
162
  *
163
163
  * @example
164
164
  * ```typescript
165
- * const mina = village.persona('mina', { llm: adapter });
165
+ * const mina = world.persona('mina', { llm: adapter });
166
166
  * const r = await mina.react('flirt', {
167
167
  * actor: 'yongjun',
168
168
  * prompt: '거실에서 용준이 민아에게 윙크했다.',
@@ -173,9 +173,9 @@ export class Village {
173
173
  return new WorldPersona(this._client, this.id, personaId, options);
174
174
  }
175
175
  // -- Actions --------------------------------------------------------------
176
- /** Create a custom action in this village. */
176
+ /** Create a custom action in this world. */
177
177
  async createAction(options) {
178
- const { data } = await this._client.POST('/villages/{id}/actions', {
178
+ const { data } = await this._client.POST('/worlds/{id}/actions', {
179
179
  params: { path: { id: this.id } },
180
180
  body: {
181
181
  name: options.name,
@@ -186,9 +186,9 @@ export class Village {
186
186
  const raw = unwrap(data);
187
187
  return { id: raw.id, name: raw.name };
188
188
  }
189
- /** List all actions (defaults + custom) in this village. */
189
+ /** List all actions (defaults + custom) in this world. */
190
190
  async listActions() {
191
- const { data } = await this._client.GET('/villages/{id}/actions', {
191
+ const { data } = await this._client.GET('/worlds/{id}/actions', {
192
192
  params: { path: { id: this.id } },
193
193
  });
194
194
  const raw = unwrap(data);
@@ -199,16 +199,16 @@ export class Village {
199
199
  isDefault: a.is_default,
200
200
  }));
201
201
  }
202
- /** Delete a custom action from this village. */
202
+ /** Delete a custom action from this world. */
203
203
  async deleteAction(actionId) {
204
- await this._client.DELETE('/villages/{id}/actions/{aid}', {
204
+ await this._client.DELETE('/worlds/{id}/actions/{aid}', {
205
205
  params: { path: { id: this.id, aid: actionId } },
206
206
  });
207
207
  }
208
208
  // -- Relationships --------------------------------------------------------
209
- /** Set (upsert) a relationship in this village. */
209
+ /** Set (upsert) a relationship in this world. */
210
210
  async setRelationship(options) {
211
- await this._client.PUT('/villages/{id}/relationships', {
211
+ await this._client.PUT('/worlds/{id}/relationships', {
212
212
  params: { path: { id: this.id } },
213
213
  body: {
214
214
  source_type: options.source.type,
@@ -222,9 +222,9 @@ export class Village {
222
222
  },
223
223
  });
224
224
  }
225
- /** List all relationships in this village. */
225
+ /** List all relationships in this world. */
226
226
  async listRelationships() {
227
- const { data } = await this._client.GET('/villages/{id}/relationships', {
227
+ const { data } = await this._client.GET('/worlds/{id}/relationships', {
228
228
  params: { path: { id: this.id } },
229
229
  });
230
230
  const raw = unwrap(data);
@@ -232,14 +232,14 @@ export class Village {
232
232
  }
233
233
  /** Delete a relationship by ID. */
234
234
  async deleteRelationship(relationshipId) {
235
- await this._client.DELETE('/villages/{id}/relationships/{rid}', {
235
+ await this._client.DELETE('/worlds/{id}/relationships/{rid}', {
236
236
  params: { path: { id: this.id, rid: relationshipId } },
237
237
  });
238
238
  }
239
239
  // -- Interaction ----------------------------------------------------------
240
- /** Execute an interaction in this village. */
240
+ /** Execute an interaction in this world. */
241
241
  async interact(options) {
242
- const { data } = await this._client.POST('/villages/{id}/interact', {
242
+ const { data } = await this._client.POST('/worlds/{id}/interact', {
243
243
  params: { path: { id: this.id } },
244
244
  body: {
245
245
  target_persona_id: options.target,
@@ -254,9 +254,9 @@ export class Village {
254
254
  return unwrap(data);
255
255
  }
256
256
  // -- Events ---------------------------------------------------------------
257
- /** Retrieve the event log for this village. */
257
+ /** Retrieve the event log for this world. */
258
258
  async getEvents(options) {
259
- const { data } = await this._client.GET('/villages/{id}/events', {
259
+ const { data } = await this._client.GET('/worlds/{id}/events', {
260
260
  params: {
261
261
  path: { id: this.id },
262
262
  query: {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * WorldPersona — a persona handle within a village.
2
+ * WorldPersona — a persona handle within a world.
3
3
  *
4
4
  * "누가 말하는가? 페르소나가 말한다."
5
5
  *
@@ -100,13 +100,13 @@ export interface WorldPersonaOptions {
100
100
  }
101
101
  export declare class WorldPersona {
102
102
  private readonly _client;
103
- private readonly _villageId;
103
+ private readonly _worldId;
104
104
  private readonly _personaId;
105
105
  private readonly _llm?;
106
106
  /** Cached persona detail (config + state). Invalidated on interact(). */
107
107
  private _detailCache;
108
- /** @internal — use Village.persona() instead. */
109
- constructor(client: ApiClient, villageId: string, personaId: string, options?: WorldPersonaOptions);
108
+ /** @internal — use World.persona() instead. */
109
+ constructor(client: ApiClient, worldId: string, personaId: string, options?: WorldPersonaOptions);
110
110
  get id(): string;
111
111
  /** Fetch full persona detail (config + state). Cached per-instance. */
112
112
  getDetail(): Promise<PersonaDetail>;
@@ -155,7 +155,7 @@ export declare class WorldPersona {
155
155
  *
156
156
  * @example
157
157
  * ```typescript
158
- * const mina = village.persona('mina', { llm: adapter });
158
+ * const mina = world.persona('mina', { llm: adapter });
159
159
  *
160
160
  * // Plain text reaction
161
161
  * const r1 = await mina.react('flirt', {
@@ -1 +1 @@
1
- {"version":3,"file":"world-persona.d.ts","sourceRoot":"","sources":["../../../src/world/world-persona.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"world-persona.d.ts","sourceRoot":"","sources":["../../../src/world/world-persona.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * WorldPersona — a persona handle within a village.
2
+ * WorldPersona — a persona handle within a world.
3
3
  *
4
4
  * "누가 말하는가? 페르소나가 말한다."
5
5
  *
@@ -25,12 +25,12 @@ function toApiAppraisal(v) {
25
25
  };
26
26
  }
27
27
  export class WorldPersona {
28
- /** @internal — use Village.persona() instead. */
29
- constructor(client, villageId, personaId, options) {
28
+ /** @internal — use World.persona() instead. */
29
+ constructor(client, worldId, personaId, options) {
30
30
  /** Cached persona detail (config + state). Invalidated on interact(). */
31
31
  this._detailCache = null;
32
32
  this._client = client;
33
- this._villageId = villageId;
33
+ this._worldId = worldId;
34
34
  this._personaId = personaId;
35
35
  this._llm = options?.llm;
36
36
  }
@@ -42,8 +42,8 @@ export class WorldPersona {
42
42
  async getDetail() {
43
43
  if (this._detailCache)
44
44
  return this._detailCache;
45
- const { data } = await this._client.GET('/villages/{id}/personas/{pid}', {
46
- params: { path: { id: this._villageId, pid: this._personaId } },
45
+ const { data } = await this._client.GET('/worlds/{id}/personas/{pid}', {
46
+ params: { path: { id: this._worldId, pid: this._personaId } },
47
47
  });
48
48
  const raw = unwrap(data);
49
49
  const config = typeof raw.config === 'string' ? JSON.parse(raw.config) : raw.config;
@@ -68,8 +68,8 @@ export class WorldPersona {
68
68
  }
69
69
  /** Get LLM system prompt assembled from all persona subsystems + world context. */
70
70
  async getPromptContext(sourceEntity) {
71
- const { data } = await this._client.POST('/villages/{id}/personas/{pid}/prompt-context', {
72
- params: { path: { id: this._villageId, pid: this._personaId } },
71
+ const { data } = await this._client.POST('/worlds/{id}/personas/{pid}/prompt-context', {
72
+ params: { path: { id: this._worldId, pid: this._personaId } },
73
73
  body: sourceEntity ? { sourceEntity } : {},
74
74
  });
75
75
  return unwrap(data);
@@ -81,8 +81,8 @@ export class WorldPersona {
81
81
  */
82
82
  async interact(action, options) {
83
83
  this._detailCache = null; // invalidate
84
- const { data } = await this._client.POST('/villages/{id}/interact', {
85
- params: { path: { id: this._villageId } },
84
+ const { data } = await this._client.POST('/worlds/{id}/interact', {
85
+ params: { path: { id: this._worldId } },
86
86
  body: {
87
87
  target_persona_id: this._personaId,
88
88
  action_name: action || undefined,
@@ -107,8 +107,8 @@ export class WorldPersona {
107
107
  */
108
108
  async tick(seconds) {
109
109
  this._detailCache = null; // invalidate — state changes after tick
110
- const { data } = await this._client.POST('/villages/{id}/personas/{pid}/tick', {
111
- params: { path: { id: this._villageId, pid: this._personaId } },
110
+ const { data } = await this._client.POST('/worlds/{id}/personas/{pid}/tick', {
111
+ params: { path: { id: this._worldId, pid: this._personaId } },
112
112
  body: { seconds },
113
113
  });
114
114
  return unwrap(data);
@@ -122,7 +122,7 @@ export class WorldPersona {
122
122
  *
123
123
  * @example
124
124
  * ```typescript
125
- * const mina = village.persona('mina', { llm: adapter });
125
+ * const mina = world.persona('mina', { llm: adapter });
126
126
  *
127
127
  * // Plain text reaction
128
128
  * const r1 = await mina.react('flirt', {
@@ -146,7 +146,7 @@ export class WorldPersona {
146
146
  */
147
147
  async react(action, options) {
148
148
  if (!this._llm) {
149
- throw new Error('WorldPersona.react() requires an LLM adapter. Pass { llm } to village.persona().');
149
+ throw new Error('WorldPersona.react() requires an LLM adapter. Pass { llm } to world.persona().');
150
150
  }
151
151
  // 1. Interact — emotion engine processes the action
152
152
  const interactResult = await this.interact(action, {