@molroo-io/sdk 0.9.0 → 0.9.1
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/dist/cjs/events/types.d.ts +1 -1
- package/dist/cjs/events/types.d.ts.map +1 -1
- package/dist/cjs/index.d.ts +1 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/llm/resolve.d.ts.map +1 -1
- package/dist/cjs/llm/resolve.js +2 -1
- package/dist/cjs/llm/schema.d.ts +0 -114
- package/dist/cjs/llm/schema.d.ts.map +1 -1
- package/dist/cjs/llm/schema.js +1 -44
- package/dist/cjs/persona/chat-orchestrator.d.ts +18 -3
- package/dist/cjs/persona/chat-orchestrator.d.ts.map +1 -1
- package/dist/cjs/persona/chat-orchestrator.js +29 -109
- package/dist/cjs/persona/conversation.d.ts +22 -1
- package/dist/cjs/persona/conversation.d.ts.map +1 -1
- package/dist/cjs/persona/conversation.js +2 -0
- package/dist/cjs/persona/memory-pipeline.d.ts.map +1 -1
- package/dist/cjs/persona/memory-pipeline.js +30 -4
- package/dist/cjs/persona.d.ts +270 -36
- package/dist/cjs/persona.d.ts.map +1 -1
- package/dist/cjs/persona.js +238 -19
- package/dist/cjs/shared/errors.d.ts +5 -1
- package/dist/cjs/shared/errors.d.ts.map +1 -1
- package/dist/cjs/shared/errors.js +4 -0
- package/dist/cjs/types.d.ts +18 -0
- package/dist/cjs/types.d.ts.map +1 -1
- package/dist/cjs/world/world-persona.d.ts +20 -5
- package/dist/cjs/world/world-persona.d.ts.map +1 -1
- package/dist/cjs/world/world-persona.js +21 -5
- package/dist/cjs/world/world.d.ts +23 -3
- package/dist/cjs/world/world.d.ts.map +1 -1
- package/dist/cjs/world/world.js +24 -1
- package/dist/esm/events/types.d.ts +1 -1
- package/dist/esm/events/types.d.ts.map +1 -1
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/llm/resolve.d.ts.map +1 -1
- package/dist/esm/llm/resolve.js +2 -1
- package/dist/esm/llm/schema.d.ts +0 -114
- package/dist/esm/llm/schema.d.ts.map +1 -1
- package/dist/esm/llm/schema.js +0 -43
- package/dist/esm/persona/chat-orchestrator.d.ts +18 -3
- package/dist/esm/persona/chat-orchestrator.d.ts.map +1 -1
- package/dist/esm/persona/chat-orchestrator.js +29 -109
- package/dist/esm/persona/conversation.d.ts +22 -1
- package/dist/esm/persona/conversation.d.ts.map +1 -1
- package/dist/esm/persona/conversation.js +2 -0
- package/dist/esm/persona/memory-pipeline.d.ts.map +1 -1
- package/dist/esm/persona/memory-pipeline.js +30 -4
- package/dist/esm/persona.d.ts +270 -36
- package/dist/esm/persona.d.ts.map +1 -1
- package/dist/esm/persona.js +237 -19
- package/dist/esm/shared/errors.d.ts +5 -1
- package/dist/esm/shared/errors.d.ts.map +1 -1
- package/dist/esm/shared/errors.js +4 -0
- package/dist/esm/types.d.ts +18 -0
- package/dist/esm/types.d.ts.map +1 -1
- package/dist/esm/world/world-persona.d.ts +20 -5
- package/dist/esm/world/world-persona.d.ts.map +1 -1
- package/dist/esm/world/world-persona.js +21 -5
- package/dist/esm/world/world.d.ts +23 -3
- package/dist/esm/world/world.d.ts.map +1 -1
- package/dist/esm/world/world.js +24 -1
- package/package.json +1 -1
package/dist/esm/world/world.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import { createWorldClient, unwrap } from './client';
|
|
3
3
|
import { World } from './world-domain';
|
|
4
4
|
import { MolrooPersona } from '../persona';
|
|
5
|
+
import { MolrooApiError, MolrooErrorCode } from '../shared/errors';
|
|
5
6
|
// ---------------------------------------------------------------------------
|
|
6
7
|
// Internal helper
|
|
7
8
|
// ---------------------------------------------------------------------------
|
|
@@ -53,7 +54,7 @@ export class Molroo {
|
|
|
53
54
|
if (typeof input === 'string') {
|
|
54
55
|
// Description path - requires llm
|
|
55
56
|
if (!options?.llm) {
|
|
56
|
-
throw new
|
|
57
|
+
throw new MolrooApiError('LLM adapter is required when using description string', MolrooErrorCode.LLM_REQUIRED, 400);
|
|
57
58
|
}
|
|
58
59
|
return MolrooPersona.create({ baseUrl: this._baseUrl, apiKey: this._apiKey, ...options, llm: options.llm }, input);
|
|
59
60
|
}
|
|
@@ -62,6 +63,28 @@ export class Molroo {
|
|
|
62
63
|
}
|
|
63
64
|
/**
|
|
64
65
|
* Connect to an existing persona by ID.
|
|
66
|
+
*
|
|
67
|
+
* LLM adapter is optional. Without it, {@link MolrooPersona.chat | chat()} will throw,
|
|
68
|
+
* but emotion/state APIs ({@link MolrooPersona.hear | hear()},
|
|
69
|
+
* {@link MolrooPersona.getState | getState()},
|
|
70
|
+
* {@link MolrooPersona.getEngineState | getEngineState()},
|
|
71
|
+
* {@link MolrooPersona.perceive | perceive()},
|
|
72
|
+
* {@link MolrooPersona.tick | tick()}) work without LLM.
|
|
73
|
+
*
|
|
74
|
+
* This is the recommended pattern for hybrid apps that build their own prompts
|
|
75
|
+
* and only need SDK for emotion/psychological state computation.
|
|
76
|
+
*
|
|
77
|
+
* @example
|
|
78
|
+
* ```typescript
|
|
79
|
+
* // Hybrid: emotion engine only (no LLM needed)
|
|
80
|
+
* const persona = await molroo.connectPersona('persona_abc123');
|
|
81
|
+
* const state = await persona.getEngineState(elapsed);
|
|
82
|
+
* const emotion = await persona.hear(userMessage, 'Alice');
|
|
83
|
+
*
|
|
84
|
+
* // Full: SDK handles everything (LLM required)
|
|
85
|
+
* const persona = await molroo.connectPersona('persona_abc123', { llm });
|
|
86
|
+
* const result = await persona.chat('Hello!');
|
|
87
|
+
* ```
|
|
65
88
|
*/
|
|
66
89
|
async connectPersona(personaId, options) {
|
|
67
90
|
return MolrooPersona.connect({ baseUrl: this._baseUrl, apiKey: this._apiKey, ...options }, personaId);
|