@mulmocast/slide 0.3.0 → 0.3.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.
|
@@ -8,22 +8,27 @@ Convert a MulmoScript JSON into an ExtendedScript by adding `scriptMeta` and `be
|
|
|
8
8
|
/extend <mulmo_script.json path> [--source <source file path>]
|
|
9
9
|
```
|
|
10
10
|
|
|
11
|
+
## CLI Command
|
|
12
|
+
|
|
13
|
+
Determine the correct CLI command prefix by checking `package.json` in the project root:
|
|
14
|
+
- If `name` is `"@mulmocast/slide"` (i.e., developing MulmoCast-Slides itself) → use `yarn cli`
|
|
15
|
+
- Otherwise → use `npx mulmo-slide`
|
|
16
|
+
|
|
17
|
+
Use this prefix (referred to as `{cli}` below) for all CLI calls in the steps.
|
|
18
|
+
|
|
11
19
|
## Instructions
|
|
12
20
|
|
|
13
21
|
### Step 1: Read Inputs
|
|
14
22
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
4. Locate the source file:
|
|
23
|
+
Use the Read tool (not bash/node commands) to read the following files:
|
|
24
|
+
|
|
25
|
+
1. The MulmoScript JSON at the specified path
|
|
26
|
+
2. `.claude/skills/extend/references/extended-script-schema.md`
|
|
27
|
+
3. `extracted_texts.json` in the same directory as the MulmoScript (if it exists — generated by PDF converter, provides raw text per beat)
|
|
28
|
+
4. The source file:
|
|
22
29
|
- If `--source` is specified, use that file
|
|
23
|
-
- Otherwise, infer from the MulmoScript path:
|
|
24
|
-
- `scripts/{basename}/mulmo_script.json` -> search for `samples/{basename}.*` (try `.md`, `.pptx`, `.pdf`, `.key`)
|
|
30
|
+
- Otherwise, infer from the MulmoScript path: `scripts/{basename}/mulmo_script.json` -> search for `samples/{basename}.*` (try `.md`, `.pptx`, `.pdf`, `.key`)
|
|
25
31
|
- If no source file found, work from the MulmoScript content and extracted texts alone
|
|
26
|
-
5. If a source file is found, read it
|
|
27
32
|
|
|
28
33
|
### Step 2: Analyze Content
|
|
29
34
|
|
|
@@ -85,7 +90,7 @@ Based on the analysis, generate:
|
|
|
85
90
|
- Same directory as input: replace `mulmo_script.json` with `extended_script.json`
|
|
86
91
|
- Example: `scripts/simple_text/mulmo_script.json` -> `scripts/simple_text/extended_script.json`
|
|
87
92
|
2. Write the JSON with 2-space indentation
|
|
88
|
-
3. Run `
|
|
93
|
+
3. Run `{cli} extend validate <output_path>` to validate against the schema
|
|
89
94
|
4. If validation fails, fix the errors and re-write the file, then validate again
|
|
90
95
|
5. Generate MulmoScript from ExtendedScript using the preprocessor:
|
|
91
96
|
```bash
|
|
@@ -10,6 +10,14 @@ Convert any supported source file (PDF, PPTX, Markdown, Keynote) into a validate
|
|
|
10
10
|
|
|
11
11
|
Supported formats: `.pdf`, `.pptx`, `.md`, `.key`
|
|
12
12
|
|
|
13
|
+
## CLI Command
|
|
14
|
+
|
|
15
|
+
Determine the correct CLI command prefix by checking `package.json` in the project root:
|
|
16
|
+
- If `name` is `"@mulmocast/slide"` (i.e., developing MulmoCast-Slides itself) → use `yarn cli`
|
|
17
|
+
- Otherwise → use `npx mulmo-slide`
|
|
18
|
+
|
|
19
|
+
Use this prefix (referred to as `{cli}` below) for all CLI calls in the steps.
|
|
20
|
+
|
|
13
21
|
## Instructions
|
|
14
22
|
|
|
15
23
|
### Step 1: Convert Source to MulmoScript
|
|
@@ -18,22 +26,22 @@ Detect the file format and run the appropriate converter.
|
|
|
18
26
|
|
|
19
27
|
**PDF:**
|
|
20
28
|
```bash
|
|
21
|
-
|
|
29
|
+
{cli} pdf <file>
|
|
22
30
|
```
|
|
23
31
|
|
|
24
32
|
**PPTX:**
|
|
25
33
|
```bash
|
|
26
|
-
|
|
34
|
+
{cli} pptx <file>
|
|
27
35
|
```
|
|
28
36
|
|
|
29
37
|
**Markdown:**
|
|
30
38
|
```bash
|
|
31
|
-
|
|
39
|
+
{cli} markdown <file>
|
|
32
40
|
```
|
|
33
41
|
|
|
34
42
|
**Keynote (.key):**
|
|
35
43
|
```bash
|
|
36
|
-
|
|
44
|
+
{cli} keynote <file>
|
|
37
45
|
```
|
|
38
46
|
|
|
39
47
|
This produces `scripts/{basename}/mulmo_script.json` and (for PDF) `scripts/{basename}/extracted_texts.json`.
|
|
@@ -44,11 +52,12 @@ Confirm the output:
|
|
|
44
52
|
|
|
45
53
|
### Step 2: Read Inputs
|
|
46
54
|
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
55
|
+
Use the Read tool (not bash/node commands) to read the following files:
|
|
56
|
+
|
|
57
|
+
1. `scripts/{basename}/mulmo_script.json`
|
|
58
|
+
2. `.claude/skills/narrate/references/extended-script-schema.md`
|
|
59
|
+
3. `scripts/{basename}/extracted_texts.json` (if it exists, generated by PDF converter — provides raw text per beat)
|
|
60
|
+
4. The original source `.md` file (if Markdown, for speaker notes and structure)
|
|
52
61
|
|
|
53
62
|
### Step 3: Analyze Content
|
|
54
63
|
|
|
@@ -103,7 +112,7 @@ Based on the analysis, generate:
|
|
|
103
112
|
|
|
104
113
|
Run validation:
|
|
105
114
|
```bash
|
|
106
|
-
|
|
115
|
+
{cli} extend validate scripts/{basename}/extended_script.json
|
|
107
116
|
```
|
|
108
117
|
|
|
109
118
|
If validation fails, fix the errors and re-write the file. Repeat until validation passes.
|
package/package.json
CHANGED