@rtsee/messenger-signaling 0.0.124 → 0.0.126
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/messenger-signaling/src/interfaces/ozzy/tasks/Task.d.ts +8 -0
- package/dist/messenger-signaling/src/interfaces/ozzy/tasks/Task.d.ts.map +1 -1
- package/dist/messenger-signaling/src/models/RTSeeMessengerSignaling.d.ts.map +1 -1
- package/dist/messenger-signaling/src/models/RTSeeMessengerSignaling.js +28 -0
- package/dist/messenger-signaling/src/models/RTSeeMessengerSignaling.js.map +1 -1
- package/dist/messenger-signaling/src/models/ozzy/tasks/StoryCreatorTask.d.ts +1 -45
- package/dist/messenger-signaling/src/models/ozzy/tasks/StoryCreatorTask.d.ts.map +1 -1
- package/dist/messenger-signaling/src/models/ozzy/tasks/StoryCreatorTask.js +15 -372
- package/dist/messenger-signaling/src/models/ozzy/tasks/StoryCreatorTask.js.map +1 -1
- package/dist/messenger-signaling/src/models/ozzy/tasks/StoryRepairTask.d.ts +1 -24
- package/dist/messenger-signaling/src/models/ozzy/tasks/StoryRepairTask.d.ts.map +1 -1
- package/dist/messenger-signaling/src/models/ozzy/tasks/StoryRepairTask.js +15 -670
- package/dist/messenger-signaling/src/models/ozzy/tasks/StoryRepairTask.js.map +1 -1
- package/dist/messenger-signaling/src/models/ozzy/tasks/StoryTranslateInPlaceTask.d.ts +1 -20
- package/dist/messenger-signaling/src/models/ozzy/tasks/StoryTranslateInPlaceTask.d.ts.map +1 -1
- package/dist/messenger-signaling/src/models/ozzy/tasks/StoryTranslateInPlaceTask.js +15 -460
- package/dist/messenger-signaling/src/models/ozzy/tasks/StoryTranslateInPlaceTask.js.map +1 -1
- package/dist/messenger-signaling/src/models/ozzy/tasks/StoryTranslatorTask.d.ts +1 -24
- package/dist/messenger-signaling/src/models/ozzy/tasks/StoryTranslatorTask.d.ts.map +1 -1
- package/dist/messenger-signaling/src/models/ozzy/tasks/StoryTranslatorTask.js +15 -200
- package/dist/messenger-signaling/src/models/ozzy/tasks/StoryTranslatorTask.js.map +1 -1
- package/dist/messenger-signaling/src/models/ozzy/tasks/Task.d.ts +16 -3
- package/dist/messenger-signaling/src/models/ozzy/tasks/Task.d.ts.map +1 -1
- package/dist/messenger-signaling/src/models/ozzy/tasks/Task.js +72 -7
- package/dist/messenger-signaling/src/models/ozzy/tasks/Task.js.map +1 -1
- package/dist/messenger-signaling/src/models/ozzy/tasks/TaskAction.d.ts +54 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/TaskAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/TaskAction.js +204 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/TaskAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/TasksManager.d.ts +16 -2
- package/dist/messenger-signaling/src/models/ozzy/tasks/TasksManager.d.ts.map +1 -1
- package/dist/messenger-signaling/src/models/ozzy/tasks/TasksManager.js +76 -4
- package/dist/messenger-signaling/src/models/ozzy/tasks/TasksManager.js.map +1 -1
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/CreateSlideAction.d.ts +10 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/CreateSlideAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/CreateSlideAction.js +24 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/CreateSlideAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/CreateStoryAction.d.ts +10 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/CreateStoryAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/CreateStoryAction.js +24 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/CreateStoryAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/CreateStoryElementAction.d.ts +15 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/CreateStoryElementAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/CreateStoryElementAction.js +29 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/CreateStoryElementAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/EditSlideAction.d.ts +9 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/EditSlideAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/EditSlideAction.js +25 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/EditSlideAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/EditStoryAction.d.ts +9 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/EditStoryAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/EditStoryAction.js +24 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/EditStoryAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/LoadStorySlidesAction.d.ts +19 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/LoadStorySlidesAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/LoadStorySlidesAction.js +35 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/LoadStorySlidesAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/ResolveAgentAction.d.ts +19 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/ResolveAgentAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/ResolveAgentAction.js +34 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/ResolveAgentAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/index.d.ts +8 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/index.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/index.js +24 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/common/actions/index.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/index.d.ts +6 -4
- package/dist/messenger-signaling/src/models/ozzy/tasks/index.d.ts.map +1 -1
- package/dist/messenger-signaling/src/models/ozzy/tasks/index.js +6 -4
- package/dist/messenger-signaling/src/models/ozzy/tasks/index.js.map +1 -1
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-creator/StoryCreatorTask.d.ts +33 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-creator/StoryCreatorTask.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-creator/StoryCreatorTask.js +154 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-creator/StoryCreatorTask.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-creator/actions/GenerateStoryDraftAction.d.ts +47 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-creator/actions/GenerateStoryDraftAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-creator/actions/GenerateStoryDraftAction.js +231 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-creator/actions/GenerateStoryDraftAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-creator/actions/index.d.ts +2 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-creator/actions/index.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-creator/actions/index.js +18 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-creator/actions/index.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-creator/index.d.ts +3 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-creator/index.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-creator/index.js +19 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-creator/index.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/StoryRepairTask.d.ts +20 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/StoryRepairTask.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/StoryRepairTask.js +370 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/StoryRepairTask.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/GenerateStoryRepairDraftAction.d.ts +45 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/GenerateStoryRepairDraftAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/GenerateStoryRepairDraftAction.js +246 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/GenerateStoryRepairDraftAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/LoadStoryForRepairAction.d.ts +23 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/LoadStoryForRepairAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/LoadStoryForRepairAction.js +71 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/LoadStoryForRepairAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/SanitizeStoryImagesAction.d.ts +13 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/SanitizeStoryImagesAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/SanitizeStoryImagesAction.js +38 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/SanitizeStoryImagesAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/UpdateStoryElementAction.d.ts +14 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/UpdateStoryElementAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/UpdateStoryElementAction.js +29 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/UpdateStoryElementAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/index.d.ts +5 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/index.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/index.js +21 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/actions/index.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/index.d.ts +3 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/index.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/index.js +19 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-repair/index.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/StoryTranslateInPlaceTask.d.ts +16 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/StoryTranslateInPlaceTask.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/StoryTranslateInPlaceTask.js +181 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/StoryTranslateInPlaceTask.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/LoadStoryForTranslationAction.d.ts +61 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/LoadStoryForTranslationAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/LoadStoryForTranslationAction.js +165 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/LoadStoryForTranslationAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/SaveElementTranslationAction.d.ts +18 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/SaveElementTranslationAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/SaveElementTranslationAction.js +67 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/SaveElementTranslationAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/SaveSlideTranslationAction.d.ts +13 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/SaveSlideTranslationAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/SaveSlideTranslationAction.js +33 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/SaveSlideTranslationAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/SaveStoryTranslationAction.d.ts +10 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/SaveStoryTranslationAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/SaveStoryTranslationAction.js +28 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/SaveStoryTranslationAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/TranslateStoryInPlaceLlmAction.d.ts +17 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/TranslateStoryInPlaceLlmAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/TranslateStoryInPlaceLlmAction.js +143 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/TranslateStoryInPlaceLlmAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/index.d.ts +6 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/index.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/index.js +22 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/actions/index.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/index.d.ts +3 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/index.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/index.js +19 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translate-in-place/index.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/StoryTranslatorTask.d.ts +16 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/StoryTranslatorTask.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/StoryTranslatorTask.js +94 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/StoryTranslatorTask.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/actions/CloneStoryAction.d.ts +14 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/actions/CloneStoryAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/actions/CloneStoryAction.js +26 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/actions/CloneStoryAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/actions/TranslateStoryContentAction.d.ts +24 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/actions/TranslateStoryContentAction.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/actions/TranslateStoryContentAction.js +91 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/actions/TranslateStoryContentAction.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/actions/index.d.ts +3 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/actions/index.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/actions/index.js +19 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/actions/index.js.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/index.d.ts +3 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/index.d.ts.map +1 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/index.js +19 -0
- package/dist/messenger-signaling/src/models/ozzy/tasks/story-translator/index.js.map +1 -0
- package/package.json +2 -2
|
@@ -1,375 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
2
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
exports.getStoryCreatorTask = getStoryCreatorTask;
|
|
5
|
-
const Task_js_1 = require("./Task.js");
|
|
6
|
-
exports.STORY_CREATOR_TASK_NAME = 'story-creator';
|
|
7
|
-
const STORY_CREATOR_INSTRUCTIONS = `
|
|
8
|
-
You are an expert story editor for the RTSee presentation player.
|
|
9
|
-
Your task is to take a complete story and partition it into sequenced slides, while also identifying key story elements (characters, locations, artifacts) and linking them to individual slides.
|
|
10
|
-
The story text provided to you is sometimes copied from very old books scans, so it might have typos, stylistic or punctuation errors, you should fix these.
|
|
11
|
-
The output descriptions you provide must be SEO friendly.
|
|
12
|
-
|
|
13
|
-
CRITICAL ZERO-LOSS TEXT INVARIANT:
|
|
14
|
-
- You must keep it very close to the original story text.
|
|
15
|
-
- DO NOT summarize, shorten or condense.
|
|
16
|
-
- Feel free to modify for readability and fixing mistakes, punctuation or flow.
|
|
17
|
-
- Use line-by-line dialogue style. Every time the active speaker shifts, indent a fresh paragraph.
|
|
18
|
-
- CONCATENATION TEST: If all "text" values in the "slides" array are joined together, the result MUST be very close to the original story.
|
|
19
|
-
|
|
20
|
-
Slide Splitting Rules:
|
|
21
|
-
- Divide the story at natural scene transitions, emotional beats, or meaningful episodes.
|
|
22
|
-
- Create as many slides as needed to cover the entire story without dropping any text (typically 5 to 25 slides depending on length).
|
|
23
|
-
- Each slide should contain one or a few complete, continuous paragraphs.
|
|
24
|
-
- Never split in the middle of a sentence or dialogue exchange.
|
|
25
|
-
|
|
26
|
-
Entity Rules:
|
|
27
|
-
- "description": 1-2 sentence teaser of the story taking historic context into account.
|
|
28
|
-
- "friendlyUrl": lowercase kebab-case title (e.g. "jack-and-the-beanstalk").
|
|
29
|
-
- "recommendedAge": recommended minimum age with a plus sign (e.g. "3+", "5+", "8+").
|
|
30
|
-
- "history": 5-6 sentences on where the story comes from. History of writing or origins in folk tales.
|
|
31
|
-
- "moralMeaning": 5-6 sentences on what can be learned from this story.
|
|
32
|
-
- "locations": specific places where episodes of the story take place ("id": unique short identifier like "loc-1", "name": 2-3 words; "description": 1-2 sentences on its story significance; "visualDescription": detailed visual prompt for generating an image with NanoBanana).
|
|
33
|
-
- "characters": specific heroes, villains, or supporting characters ("id": unique short identifier like "char-1", "name", "description": 1-2 sentences, "visualDescription": detailed visual appearance for image generation).
|
|
34
|
-
- "artifacts": meaningful or memorable objects from the story ("id": unique short identifier like "art-1", "name", "description": 1-2 sentences, "visualDescription": detailed visual appearance for image generation).
|
|
35
|
-
- In each slide, associate relevant entities:
|
|
36
|
-
* "location": id of the location where the slide takes place (or null if none)
|
|
37
|
-
* "characters": array of character ids present in this slide (e.g. ["char-1", "char-2"])
|
|
38
|
-
* "artifacts": array of artifact ids present or relevant to this slide (e.g. ["art-1"])
|
|
39
|
-
|
|
40
|
-
CRITICAL SLIDE ILLUSTRATION PROMPT ("illustrationDescription"):
|
|
41
|
-
- For EVERY single slide, you MUST populate the "illustrationDescription" field.
|
|
42
|
-
- This is a CRITICAL field used directly as the generative prompt for our image generator (NanoBanana) to produce the fairy tale illustration for that slide.
|
|
43
|
-
- It MUST be a vivid, detailed, self-contained visual scene description that depicts the exact episode, mood, and dramatic moment of the slide:
|
|
44
|
-
* Specify what is visually happening in the foreground, midground, and background.
|
|
45
|
-
* Explicitly mention which characters are present, their actions, facial expressions, poses, clothing, and interactions.
|
|
46
|
-
* Include the environment/setting (lighting, atmospheric mood, weather, scenery matching the slide's location).
|
|
47
|
-
* Include any prominent artifacts held, used, or visible in the scene.
|
|
48
|
-
* Use painterly, cinematic visual descriptors suited for enchanted storybook illustrations (e.g., "Warm lantern glow illuminating dust motes in the air", "Dappled sunlight filtering through an ancient towering oak canopy", "Whimsical storybook composition").
|
|
49
|
-
* Do NOT write meta text such as "In this slide" or "This image illustrates". Write directly as an image prompt.
|
|
50
|
-
|
|
51
|
-
Respond with ONLY a valid JSON object, no markdown fences, no comments, using this exact shape:
|
|
52
|
-
{
|
|
53
|
-
"description": string,
|
|
54
|
-
"friendlyUrl": string,
|
|
55
|
-
"recommendedAge": string,
|
|
56
|
-
"history": string,
|
|
57
|
-
"moralMeaning": string,
|
|
58
|
-
"locations": [{"id": string, "name": string, "description": string, "visualDescription": string}],
|
|
59
|
-
"characters": [{"id": string, "name": string, "description": string, "visualDescription": string}],
|
|
60
|
-
"artifacts": [{"id": string, "name": string, "description": string, "visualDescription": string}],
|
|
61
|
-
"slides": [
|
|
62
|
-
{
|
|
63
|
-
"text": string,
|
|
64
|
-
"location": string,
|
|
65
|
-
"characters": [string],
|
|
66
|
-
"artifacts": [string],
|
|
67
|
-
"illustrationDescription": string
|
|
68
|
-
}
|
|
69
|
-
]
|
|
70
|
-
}
|
|
71
|
-
`;
|
|
72
|
-
/**
|
|
73
|
-
* Asks Bedrock (through the selected agent's model & system prompt) to split a story into slides,
|
|
74
|
-
* then persists the Story and its Slides.
|
|
75
|
-
*/
|
|
76
|
-
class StoryCreatorTask extends Task_js_1.OzzyTask {
|
|
77
|
-
presentation;
|
|
78
|
-
constructor(options, presentation) {
|
|
79
|
-
super(options);
|
|
80
|
-
this.presentation = presentation;
|
|
81
|
-
}
|
|
82
|
-
async execute() {
|
|
83
|
-
this.validateInput();
|
|
84
|
-
const DEFAULT_IMAGE_URL = 'https://rtsee-files-vault-public.s3.us-east-1.amazonaws.com/default/default-story-pic.png';
|
|
85
|
-
this.log('Resolving selected agent...');
|
|
86
|
-
const member = await this.context.getChatMember(this.chatId, this.input.agentId);
|
|
87
|
-
if (!member || !member.isAgent || !member.agentConfiguration) {
|
|
88
|
-
throw new Error('Selected agent is not an agentic member of this chat.');
|
|
89
|
-
}
|
|
90
|
-
const agent = member;
|
|
91
|
-
const model = agent.agentConfiguration.model?.model;
|
|
92
|
-
this.log(`Asking ${agent.name || agent.agentConfiguration.name} (${model || 'default model'}) to create a story...`);
|
|
93
|
-
const { text, cost } = await this.context.ozzy.complete({
|
|
94
|
-
prompt: this.buildPrompt(),
|
|
95
|
-
systemPrompt: `${agent.agentConfiguration.systemPrompt || ''}\n${STORY_CREATOR_INSTRUCTIONS}`,
|
|
96
|
-
transport: this.transport,
|
|
97
|
-
model,
|
|
98
|
-
agentId: agent.id,
|
|
99
|
-
maxTokens: 16384,
|
|
100
|
-
onChunk: (chunk) => this.log(chunk, 'chunk'),
|
|
101
|
-
});
|
|
102
|
-
if (cost) {
|
|
103
|
-
const fmt = (n) => (n || 0).toLocaleString('en-US');
|
|
104
|
-
this.log(`Token usage: ${fmt(cost.inputTokens)} in / ${fmt(cost.outputTokens)} out / ${fmt(cost.totalTokens)} total`, 'info', cost);
|
|
105
|
-
}
|
|
106
|
-
this.log('Response received, parsing story structure...');
|
|
107
|
-
const draft = this.parseDraft(text);
|
|
108
|
-
const description = [draft.description] // [draft.description, this.input.historicDescription]
|
|
109
|
-
.filter((p) => !!p && p.trim())
|
|
110
|
-
.join('\n\n');
|
|
111
|
-
this.log('Handling entities...');
|
|
112
|
-
this.log(`Generated ${draft.locations.length} locations`);
|
|
113
|
-
this.log(`Generated ${draft.characters.length} characters`);
|
|
114
|
-
this.log(`Generated ${draft.artifacts.length} artifacts`);
|
|
115
|
-
const entityIdMap = new Map();
|
|
116
|
-
// create locations, artifacts and characters (they are linked to the story on creation)
|
|
117
|
-
const locationIds = await this.createElements('location', draft.locations, DEFAULT_IMAGE_URL, entityIdMap);
|
|
118
|
-
const charactersIds = await this.createElements('character', draft.characters, DEFAULT_IMAGE_URL, entityIdMap);
|
|
119
|
-
const artifactsIds = await this.createElements('artifact', draft.artifacts, DEFAULT_IMAGE_URL, entityIdMap);
|
|
120
|
-
this.log(`Creating story "${this.input.title}"...`);
|
|
121
|
-
const story = await this.presentation.createStory(this.transport, {
|
|
122
|
-
applicationId: this.transport.peer.rtseeAppId,
|
|
123
|
-
name: this.input.title,
|
|
124
|
-
description,
|
|
125
|
-
recommendedAge: draft.recommendedAge,
|
|
126
|
-
configurationId: '',
|
|
127
|
-
imageUrl: DEFAULT_IMAGE_URL,
|
|
128
|
-
tagIds: [],
|
|
129
|
-
tags: [],
|
|
130
|
-
totalSlides: draft.slides.length,
|
|
131
|
-
friendlyUrl: draft.friendlyUrl || undefined,
|
|
132
|
-
history: draft.history,
|
|
133
|
-
moralMeaning: draft.moralMeaning,
|
|
134
|
-
locationIds,
|
|
135
|
-
charactersIds,
|
|
136
|
-
artifactsIds
|
|
137
|
-
});
|
|
138
|
-
this.log(`Story created (id: ${story.id}), adding ${draft.slides.length} slides...`);
|
|
139
|
-
for (let i = 0; i < draft.slides.length; i++) {
|
|
140
|
-
const draftSlide = draft.slides[i];
|
|
141
|
-
const slideLocationId = draftSlide.location
|
|
142
|
-
? entityIdMap.get(draftSlide.location) || entityIdMap.get(draftSlide.location.toLowerCase()) || undefined
|
|
143
|
-
: undefined;
|
|
144
|
-
const slideCharacterIds = (draftSlide.characters || [])
|
|
145
|
-
.map((ref) => entityIdMap.get(ref) || entityIdMap.get(ref.toLowerCase()))
|
|
146
|
-
.filter((id) => Boolean(id));
|
|
147
|
-
const slideArtifactIds = (draftSlide.artifacts || [])
|
|
148
|
-
.map((ref) => entityIdMap.get(ref) || entityIdMap.get(ref.toLowerCase()))
|
|
149
|
-
.filter((id) => Boolean(id));
|
|
150
|
-
const slide = {
|
|
151
|
-
applicationId: this.transport.peer.rtseeAppId,
|
|
152
|
-
name: `${this.input.title} #${i + 1}`,
|
|
153
|
-
configurationId: '',
|
|
154
|
-
tagIds: [],
|
|
155
|
-
tags: [],
|
|
156
|
-
storyId: story.id,
|
|
157
|
-
text: draftSlide.text,
|
|
158
|
-
illustrationDescription: draftSlide.illustrationDescription,
|
|
159
|
-
slideNumber: i + 1,
|
|
160
|
-
imageUrl: DEFAULT_IMAGE_URL,
|
|
161
|
-
locationId: slideLocationId,
|
|
162
|
-
charactersIds: slideCharacterIds,
|
|
163
|
-
artifactsIds: slideArtifactIds
|
|
164
|
-
};
|
|
165
|
-
await this.presentation.createSlide(this.transport, slide);
|
|
166
|
-
this.log(`Slide ${i + 1}/${draft.slides.length} created.`);
|
|
167
|
-
}
|
|
168
|
-
return {
|
|
169
|
-
storyId: story.id,
|
|
170
|
-
name: story.name,
|
|
171
|
-
description,
|
|
172
|
-
slidesCount: draft.slides.length,
|
|
173
|
-
charactersCount: charactersIds.length,
|
|
174
|
-
artifactsCount: artifactsIds.length,
|
|
175
|
-
locationsCount: locationIds.length,
|
|
176
|
-
};
|
|
177
|
-
}
|
|
178
|
-
/**
|
|
179
|
-
* Persists the drafted story elements, failures are logged and skipped
|
|
180
|
-
* so a single bad element doesn't break the whole story creation.
|
|
181
|
-
*/
|
|
182
|
-
async createElements(kind, drafts, imageUrl, idMapping) {
|
|
183
|
-
const ids = [];
|
|
184
|
-
if (!drafts.length) {
|
|
185
|
-
return ids;
|
|
186
|
-
}
|
|
187
|
-
this.log(`Creating ${drafts.length} ${kind}(s)...`);
|
|
188
|
-
for (let i = 0; i < drafts.length; i++) {
|
|
189
|
-
const element = {
|
|
190
|
-
applicationId: this.transport.peer.rtseeAppId,
|
|
191
|
-
configurationId: '',
|
|
192
|
-
name: drafts[i].name,
|
|
193
|
-
description: drafts[i].description,
|
|
194
|
-
visualDescription: drafts[i].visualDescription,
|
|
195
|
-
imageUrl,
|
|
196
|
-
images: [],
|
|
197
|
-
tagIds: [],
|
|
198
|
-
tags: [],
|
|
199
|
-
};
|
|
200
|
-
try {
|
|
201
|
-
const created = kind === 'location'
|
|
202
|
-
? await this.presentation.createLocation(this.transport, element)
|
|
203
|
-
: kind === 'character'
|
|
204
|
-
? await this.presentation.createCharacter(this.transport, element)
|
|
205
|
-
: await this.presentation.createArtifact(this.transport, element);
|
|
206
|
-
ids.push(created.id);
|
|
207
|
-
if (idMapping) {
|
|
208
|
-
if (drafts[i].id) {
|
|
209
|
-
idMapping.set(drafts[i].id, created.id);
|
|
210
|
-
}
|
|
211
|
-
if (drafts[i].name) {
|
|
212
|
-
idMapping.set(drafts[i].name.toLowerCase(), created.id);
|
|
213
|
-
}
|
|
214
|
-
}
|
|
215
|
-
this.log(`${kind} ${i + 1}/${drafts.length} "${created.name}" created.`);
|
|
216
|
-
}
|
|
217
|
-
catch (e) {
|
|
218
|
-
this.log(`Failed to create ${kind} "${drafts[i].name}": ${e?.message || e}`, 'warn');
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
return ids;
|
|
222
|
-
}
|
|
223
|
-
validateInput() {
|
|
224
|
-
if (!this.input?.title?.trim()) {
|
|
225
|
-
throw new Error('Story title is required.');
|
|
226
|
-
}
|
|
227
|
-
if (!this.input?.text?.trim()) {
|
|
228
|
-
throw new Error('Story text is required.');
|
|
229
|
-
}
|
|
230
|
-
if (!this.input?.agentId) {
|
|
231
|
-
throw new Error('Agent is required.');
|
|
232
|
-
}
|
|
233
|
-
}
|
|
234
|
-
buildPrompt() {
|
|
235
|
-
return [
|
|
236
|
-
`Story title: ${this.input.title}`,
|
|
237
|
-
`Historic description / context:\n${this.input.historicDescription || '-'}`,
|
|
238
|
-
`Full story text:\n${this.input.text}`,
|
|
239
|
-
`CRITICAL INSTRUCTIONS:
|
|
240
|
-
1. Zero-loss text preservation: Partition the ENTIRE story text above into the "slides" array. Every single paragraph, sentence, and dialogue line must be preserved across the slides without summarization.
|
|
241
|
-
2. Mandatory "illustrationDescription": For EVERY slide in the "slides" array, you MUST generate a rich, vivid, and detailed "illustrationDescription" prompt. Describe the specific scene, characters present, setting, lighting, mood, and artifacts for the image generator.`,
|
|
242
|
-
].join('\n\n');
|
|
243
|
-
}
|
|
244
|
-
/**
|
|
245
|
-
* Extracts the JSON draft from the LLM response.
|
|
246
|
-
* Falls back to paragraph-based slides if the response can't be parsed.
|
|
247
|
-
*/
|
|
248
|
-
parseDraft(text) {
|
|
249
|
-
try {
|
|
250
|
-
console.log('=====');
|
|
251
|
-
console.log(text);
|
|
252
|
-
console.log('=====');
|
|
253
|
-
if (!text || !text.trim()) {
|
|
254
|
-
throw new Error('Response is empty');
|
|
255
|
-
}
|
|
256
|
-
const start = text.indexOf('{');
|
|
257
|
-
const end = text.lastIndexOf('}');
|
|
258
|
-
if (start === -1 || end <= start) {
|
|
259
|
-
throw new Error(`No JSON object found in the response (start: ${start}, end: ${end}, text length: ${text.length})`);
|
|
260
|
-
}
|
|
261
|
-
let candidate = text.substring(start, end + 1).trim();
|
|
262
|
-
// Clean markdown fences if any
|
|
263
|
-
candidate = candidate.replace(/^```json\s*/i, '').replace(/```$/i, '').trim();
|
|
264
|
-
let parsed;
|
|
265
|
-
try {
|
|
266
|
-
parsed = JSON.parse(candidate);
|
|
267
|
-
}
|
|
268
|
-
catch (firstError) {
|
|
269
|
-
// Attempt to clean trailing commas before closing braces/brackets
|
|
270
|
-
const cleaned = candidate.replace(/,\s*([\]}])/g, '$1');
|
|
271
|
-
parsed = JSON.parse(cleaned);
|
|
272
|
-
}
|
|
273
|
-
const slides = (parsed.slides || [])
|
|
274
|
-
.map((s) => ({
|
|
275
|
-
text: `${s?.text || ''}`.trim(),
|
|
276
|
-
location: s?.location ? `${s.location}`.trim() : undefined,
|
|
277
|
-
characters: Array.isArray(s?.characters)
|
|
278
|
-
? s.characters.map((c) => `${c}`.trim()).filter(Boolean)
|
|
279
|
-
: [],
|
|
280
|
-
artifacts: Array.isArray(s?.artifacts)
|
|
281
|
-
? s.artifacts.map((a) => `${a}`.trim()).filter(Boolean)
|
|
282
|
-
: [],
|
|
283
|
-
illustrationDescription: s?.illustrationDescription
|
|
284
|
-
? `${s.illustrationDescription}`.trim()
|
|
285
|
-
: undefined,
|
|
286
|
-
}))
|
|
287
|
-
.filter((s) => !!s.text);
|
|
288
|
-
if (!slides.length) {
|
|
289
|
-
throw new Error('Response contains no slides');
|
|
290
|
-
}
|
|
291
|
-
return {
|
|
292
|
-
description: `${parsed.description || ''}`.trim(),
|
|
293
|
-
slides,
|
|
294
|
-
friendlyUrl: this.sanitizeFriendlyUrl(parsed.friendlyUrl),
|
|
295
|
-
recommendedAge: `${parsed.recommendedAge || ''}`.trim() || undefined,
|
|
296
|
-
locations: this.parseElements(parsed.locations),
|
|
297
|
-
characters: this.parseElements(parsed.characters),
|
|
298
|
-
artifacts: this.parseElements(parsed.artifacts),
|
|
299
|
-
};
|
|
300
|
-
}
|
|
301
|
-
catch (e) {
|
|
302
|
-
this.log(`Could not parse agent response (${e?.message}), splitting story by paragraphs.`, 'warn');
|
|
303
|
-
return this.fallbackDraft();
|
|
304
|
-
}
|
|
305
|
-
}
|
|
306
|
-
fallbackDraft() {
|
|
307
|
-
const slides = this.input.text
|
|
308
|
-
.split(/\n\s*\n/)
|
|
309
|
-
.map((p) => p.trim())
|
|
310
|
-
.filter((p) => !!p)
|
|
311
|
-
.map((p, idx) => ({
|
|
312
|
-
text: p,
|
|
313
|
-
characters: [],
|
|
314
|
-
artifacts: [],
|
|
315
|
-
illustrationDescription: `Illustration for "${this.input.title}", Scene ${idx + 1}: ${p.slice(0, 160)}`,
|
|
316
|
-
}));
|
|
317
|
-
return {
|
|
318
|
-
description: this.input.text.trim().substring(0, 200),
|
|
319
|
-
slides: slides.length
|
|
320
|
-
? slides
|
|
321
|
-
: [
|
|
322
|
-
{
|
|
323
|
-
text: this.input.text.trim(),
|
|
324
|
-
characters: [],
|
|
325
|
-
artifacts: [],
|
|
326
|
-
illustrationDescription: `Illustration for "${this.input.title}": ${this.input.text.trim().slice(0, 160)}`,
|
|
327
|
-
},
|
|
328
|
-
],
|
|
329
|
-
friendlyUrl: this.sanitizeFriendlyUrl(this.input.title),
|
|
330
|
-
locations: [],
|
|
331
|
-
characters: [],
|
|
332
|
-
artifacts: [],
|
|
333
|
-
};
|
|
334
|
-
}
|
|
335
|
-
parseElements(raw) {
|
|
336
|
-
if (!Array.isArray(raw)) {
|
|
337
|
-
return [];
|
|
338
|
-
}
|
|
339
|
-
const seen = new Set();
|
|
340
|
-
return raw
|
|
341
|
-
.map((e) => ({
|
|
342
|
-
id: e?.id ? `${e.id}`.trim() : undefined,
|
|
343
|
-
name: `${e?.name || ''}`.trim(),
|
|
344
|
-
description: `${e?.description || ''}`.trim(),
|
|
345
|
-
visualDescription: `${e?.visualDescription || ''}`.trim(),
|
|
346
|
-
}))
|
|
347
|
-
.filter((e) => {
|
|
348
|
-
const key = e.name.toLowerCase();
|
|
349
|
-
if (!e.name || seen.has(key)) {
|
|
350
|
-
return false;
|
|
351
|
-
}
|
|
352
|
-
seen.add(key);
|
|
353
|
-
return true;
|
|
354
|
-
});
|
|
355
|
-
}
|
|
356
|
-
sanitizeFriendlyUrl(value) {
|
|
357
|
-
const url = `${value || ''}`
|
|
358
|
-
.toLowerCase()
|
|
359
|
-
.trim()
|
|
360
|
-
.replace(/[^a-z0-9\s-]/g, '')
|
|
361
|
-
.replace(/[\s_]+/g, '-')
|
|
362
|
-
.replace(/-+/g, '-')
|
|
363
|
-
.replace(/^-|-$/g, '');
|
|
364
|
-
return url || undefined;
|
|
365
|
-
}
|
|
366
|
-
}
|
|
367
|
-
exports.StoryCreatorTask = StoryCreatorTask;
|
|
368
|
-
function getStoryCreatorTask(presentation) {
|
|
369
|
-
return {
|
|
370
|
-
name: exports.STORY_CREATOR_TASK_NAME,
|
|
371
|
-
description: 'Creates a Story with Slides from a user-written text using an agent.',
|
|
372
|
-
create: (options) => new StoryCreatorTask(options, presentation),
|
|
373
|
-
};
|
|
374
|
-
}
|
|
17
|
+
__exportStar(require("./story-creator/index.js"), exports);
|
|
375
18
|
//# sourceMappingURL=StoryCreatorTask.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StoryCreatorTask.js","sourceRoot":"","sources":["../../../../../../src/models/ozzy/tasks/StoryCreatorTask.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StoryCreatorTask.js","sourceRoot":"","sources":["../../../../../../src/models/ozzy/tasks/StoryCreatorTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2DAAyC"}
|
|
@@ -1,25 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
import { IOzzyTaskDefinition, IOzzyTaskOptions } from "../../../interfaces/ozzy/tasks/Task.js";
|
|
3
|
-
import { OzzyTask } from "./Task.js";
|
|
4
|
-
export type StoryRepairPresentationHandlers = Pick<IPresentationStorageHandlers, 'getStory' | 'getSlides' | 'getCharacters' | 'getLocations' | 'getArtifacts' | 'editStory' | 'editSlide' | 'createCharacter' | 'editCharacter' | 'createLocation' | 'editLocation' | 'createArtifact' | 'editArtifact' | 'sanitizeStoryImages'>;
|
|
5
|
-
/**
|
|
6
|
-
* Repairs an existing story: fixes grammar/flow of story, slides, and entities,
|
|
7
|
-
* and/or identifies and creates missing important characters, locations, and artifacts
|
|
8
|
-
* and links them to slides.
|
|
9
|
-
*/
|
|
10
|
-
export declare class StoryRepairTask extends OzzyTask<IStoryRepairInput, IStoryRepairOutput> {
|
|
11
|
-
private presentation;
|
|
12
|
-
constructor(options: IOzzyTaskOptions<IStoryRepairInput>, presentation: StoryRepairPresentationHandlers);
|
|
13
|
-
execute(): Promise<IStoryRepairOutput>;
|
|
14
|
-
private validateInput;
|
|
15
|
-
private resolveAgent;
|
|
16
|
-
private loadSlides;
|
|
17
|
-
private buildPrompt;
|
|
18
|
-
private createElements;
|
|
19
|
-
private updateExistingElements;
|
|
20
|
-
private parseRepairDraft;
|
|
21
|
-
private parseElements;
|
|
22
|
-
private sameStringArray;
|
|
23
|
-
}
|
|
24
|
-
export declare function getStoryRepairTask(presentation: StoryRepairPresentationHandlers): IOzzyTaskDefinition<IStoryRepairInput, IStoryRepairOutput>;
|
|
1
|
+
export * from './story-repair/index.js';
|
|
25
2
|
//# sourceMappingURL=StoryRepairTask.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StoryRepairTask.d.ts","sourceRoot":"","sources":["../../../../../../src/models/ozzy/tasks/StoryRepairTask.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"StoryRepairTask.d.ts","sourceRoot":"","sources":["../../../../../../src/models/ozzy/tasks/StoryRepairTask.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC"}
|