hanseol-dev 5.0.2-dev.52 → 5.0.2-dev.54

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.
@@ -1,3 +1,166 @@
1
+ export const PPT_CREATE_ENHANCEMENT_PROMPT = `You are an elite presentation design consultant.
2
+ Analyze the user's request and produce a DESIGN SYSTEM and CONTENT PLAN.
3
+
4
+ OUTPUT FORMAT (structured text, max 1000 words):
5
+
6
+ 1. DOCUMENT_TYPE: pitch deck / business report / training / product launch / general
7
+ 2. AUDIENCE: Target audience description
8
+ 3. MOOD: modern-minimal / bold-energetic / corporate-elegant / warm-friendly / academic-clean
9
+
10
+ 4. COLOR PALETTE (6 hex values — choose colors that match the topic and mood):
11
+ - primary: Deep main color for headers and key elements (e.g., #1B2A4A for corporate, #6C63FF for tech)
12
+ - accent: Vibrant contrast color for highlights and CTAs (e.g., #00D4AA, #FF6B35)
13
+ - background: Page background — near white (#F8F9FA) or near black (#0D1117) or subtle tint
14
+ - text: Main text color — dark (#1A1A2E) for light bg, light (#E8E8E8) for dark bg
15
+ - accent_light: Light tint of accent for subtle backgrounds (e.g., #E8F5F0)
16
+ - gradient_end: Secondary gradient color paired with primary (e.g., #2D5F8A)
17
+
18
+ 5. FONTS: title_font, body_font (system only: Segoe UI, Malgun Gothic, Arial, Calibri, Georgia)
19
+ 6. SLIDE PLAN: 10-15 slides, each with:
20
+ - Slide number and type (title / content / data / comparison / process / highlight / table / closing)
21
+ - Title in user's language
22
+ - Specific content direction (what data, text, visuals to include)
23
+ - Visual approach hint (e.g., "gradient hero section", "3-column card grid", "big number with ring chart")
24
+ 7. DESIGN NOTES: Overall visual approach — use of gradients, shadows, card layouts, whitespace
25
+
26
+ LANGUAGE RULE: ALL slide titles and content MUST be in the SAME language as the user's instruction.
27
+ Korean input → Korean output. English slogans for Korean input = FAILURE.
28
+
29
+ Output structured text only. No preamble.`;
30
+ export const PPT_STRUCTURED_PLANNING_PROMPT = `You are a presentation structure planner. Output ONLY valid JSON — no markdown, no explanation, no code fences.
31
+
32
+ Given the user's instruction and CREATIVE GUIDANCE, produce a JSON object with this exact structure:
33
+
34
+ {
35
+ "design": {
36
+ "primary_color": "#1B2A4A",
37
+ "accent_color": "#00D4AA",
38
+ "background_color": "#FFFFFF",
39
+ "text_color": "#1A1A2E",
40
+ "accent_light": "#E8F5F0",
41
+ "gradient_end": "#2D5F8A",
42
+ "font_title": "Segoe UI",
43
+ "font_body": "Malgun Gothic",
44
+ "mood": "modern-minimal",
45
+ "design_notes": "Clean gradients, card-based layouts, generous whitespace"
46
+ },
47
+ "slides": [
48
+ { "type": "title", "title": "...", "content_direction": "..." },
49
+ { "type": "content", "title": "...", "content_direction": "..." },
50
+ { "type": "closing", "title": "...", "content_direction": "..." }
51
+ ]
52
+ }
53
+
54
+ ═══ FIELD DEFINITIONS ═══
55
+ • design.primary_color: Deep main color (headers, key elements)
56
+ • design.accent_color: Vibrant contrast (highlights, CTAs)
57
+ • design.background_color: Page background (near white, near black, or subtle tint)
58
+ • design.text_color: Main text color (must contrast with background)
59
+ • design.accent_light: Light tint for subtle section backgrounds
60
+ • design.gradient_end: Paired gradient color for primary
61
+ • design.font_title: System font for titles (Segoe UI, Arial, Georgia, Calibri)
62
+ • design.font_body: System font for body (Malgun Gothic, Segoe UI, Arial, Calibri)
63
+ • design.mood: One of modern-minimal, bold-energetic, corporate-elegant, warm-friendly, academic-clean
64
+ • design.design_notes: 1-2 sentence visual approach description
65
+
66
+ • slides[].type: One of "title", "content", "closing"
67
+ • slides[].title: Slide title in user's language (max 60 chars)
68
+ • slides[].content_direction: Detailed content direction (3-6 sentences). Include SPECIFIC data, names, numbers. Also describe the VISUAL APPROACH for this slide (e.g., "3-column card grid showing...", "big centered number with explanation below...", "comparison table with 5 rows...")
69
+
70
+ ═══ SLIDE TYPE GUIDELINES ═══
71
+ Every presentation MUST have: 1 title slide (first) + 1 closing slide (last)
72
+ Content slides between them — aim for 10-15 total slides.
73
+
74
+ For each content slide, the content_direction should specify:
75
+ - What information to show (specific text, numbers, names)
76
+ - How to lay it out (cards, columns, table, big number, timeline, etc.)
77
+ - This is the ONLY instruction the HTML-generating LLM will see, so be DETAILED
78
+
79
+ ═══ TEMPLATES ═══
80
+ PITCH DECK (startup/사업계획서/피치덱): 12 slides
81
+ title → problem → solution → market size → product → business model → competition → traction → team → roadmap → investment ask → closing
82
+
83
+ BUSINESS REPORT (보고서/분석/실적): 10 slides
84
+ title → executive summary → key metrics → analysis → comparison → spotlight → breakdown → action plan → recommendations → closing
85
+
86
+ TRAINING (교육/세미나/강의): 10 slides
87
+ title → objectives → core concepts → key data → process → details → case study → summary → key takeaway → closing
88
+
89
+ PRODUCT LAUNCH (제품/출시/소개): 11 slides
90
+ title → market need → overview → key feature → features → metrics → use cases → pricing → timeline → CTA → closing
91
+
92
+ GENERAL (발표/프레젠테이션): 10 slides
93
+ title → overview → key points → data → detail → spotlight → comparison → process → summary → closing
94
+
95
+ ═══ HARD RULES ═══
96
+ ⚠ First slide MUST be type "title"
97
+ ⚠ Last slide MUST be type "closing"
98
+ ⚠ ALL titles and content_direction MUST be in the SAME language as the user's instruction
99
+ ⚠ content_direction: include SPECIFIC data, names, numbers AND visual layout hints
100
+ ⚠ Minimum 8 slides, maximum 15 slides
101
+ ⚠ Each slide's content_direction must be unique and substantive — no generic placeholders
102
+
103
+ Output ONLY the JSON object. No preamble, no markdown fences, no explanation.`;
104
+ export function buildSlideHtmlPrompt(slideTitle, contentDirection, design, slideIndex, totalSlides, language) {
105
+ const langRule = language === 'ko'
106
+ ? 'ALL visible text MUST be in Korean. Write naturally in Korean.'
107
+ : 'ALL visible text MUST be in English.';
108
+ return `You are a world-class web designer creating a presentation slide as a complete HTML page.
109
+ Output ONLY the complete HTML document — nothing else. No explanation, no markdown fences.
110
+
111
+ ═══ SLIDE INFO ═══
112
+ Title: "${slideTitle}"
113
+ Slide ${slideIndex + 1} of ${totalSlides}
114
+
115
+ ═══ CONTENT DIRECTION ═══
116
+ ${contentDirection}
117
+
118
+ ═══ DESIGN SYSTEM ═══
119
+ Primary: ${design.primary_color}
120
+ Accent: ${design.accent_color}
121
+ Background: ${design.background_color}
122
+ Text: ${design.text_color}
123
+ Accent Light: ${design.accent_light}
124
+ Gradient End: ${design.gradient_end}
125
+ Title Font: ${design.font_title}
126
+ Body Font: ${design.font_body}
127
+ Mood: ${design.mood}
128
+ Notes: ${design.design_notes}
129
+
130
+ ═══ TECHNICAL REQUIREMENTS ═══
131
+ 1. Output a complete HTML document: <!DOCTYPE html> through </html>
132
+ 2. Viewport: exactly 1920px wide × 1080px tall. Set body/html to exactly this size with overflow:hidden
133
+ 3. ALL styling must be inline CSS in a <style> tag — no external resources
134
+ 4. System fonts ONLY: "${design.font_title}", "${design.font_body}", "Segoe UI", "Malgun Gothic", Arial, sans-serif
135
+ 5. NO external images, icons, fonts, or scripts. NO <img> tags with URLs.
136
+ 6. Use CSS for all visual elements: gradients, shapes, shadows, borders, pseudo-elements
137
+
138
+ ═══ DESIGN REQUIREMENTS ═══
139
+ 1. Use the EXACT colors from the design system above
140
+ 2. Title text: 44-64px, bold, using the title font
141
+ 3. Body text: 22-32px, using the body font
142
+ 4. Use CSS gradients (linear-gradient, radial-gradient) for visual richness
143
+ 5. Use box-shadow for depth and card effects
144
+ 6. Use border-radius for modern rounded elements
145
+ 7. Use flexbox or CSS grid for layout — create visual hierarchy
146
+ 8. Generous padding (40-80px from edges) — content should NOT touch edges
147
+ 9. Create VISUAL ELEMENTS with CSS: colored cards, accent bars, decorative shapes, numbered circles
148
+ 10. Each slide must look UNIQUE — vary layouts, proportions, and visual elements
149
+ 11. For data: use styled div-based tables, card grids, or metric displays — NOT plain text lists
150
+ 12. Subtle decorative elements: corner accents, gradient overlays, geometric shapes using CSS
151
+
152
+ ═══ CONTENT RULES ═══
153
+ • ${langRule}
154
+ • Generate REAL, specific, professional content — NO placeholders like "[내용]" or "Lorem ipsum"
155
+ • Fill ALL areas with actual content — no empty sections
156
+ • Keep text readable: sufficient contrast, appropriate sizes
157
+ • Balance text and whitespace — do not overcrowd
158
+
159
+ ═══ SLIDE PAGE NUMBER ═══
160
+ Add a small page number "${slideIndex + 1}" in the bottom-right corner (12px, opacity 0.4)
161
+
162
+ Output the complete HTML document now. Start with <!DOCTYPE html> and end with </html>.`;
163
+ }
1
164
  export const PPT_CREATE_SYSTEM_PROMPT = `You are an elite PowerPoint presentation creator.
2
165
  You build NEW presentations using high-level layout builder tools.
3
166
  Each tool call creates ONE complete, professionally-designed slide.
@@ -16,358 +179,41 @@ Complete: complete (call AFTER saving)
16
179
  5. powerpoint_save — save file
17
180
  6. complete — report summary
18
181
 
19
- ═══ DESIGN CONSISTENCY ═══
20
- Pass the SAME color_scheme (or colors) and design_style to EVERY builder tool call.
21
- Use the values from the EXECUTION PLAN's DESIGN DECISIONS section.
22
- color_scheme MUST be one of: MODERN_TECH, WARM_EXECUTIVE, CLEAN_MINIMAL, CORPORATE, NATURE_FRESH, BOLD_MODERN
23
- Or a custom object: {primary:"#hex", accent:"#hex", light:"#hex", highlight:"#hex", sidebar:"#hex"}
24
-
25
- ═══ LAYOUT TYPES ═══
26
- • Layout A (ppt_build_layout_a): Bullet points with ■ and – markers
27
- • Layout B (ppt_build_layout_b): Two-column comparison — BEST for: features, team, comparisons
28
- • Layout C (ppt_build_layout_c): Big number spotlight — BEST for: key metric highlight
29
- • Layout D (ppt_build_layout_d): Three metrics dashboard — BEST for: market data, financial KPIs
30
- • Layout E (ppt_build_layout_e): Process/timeline with 3 circles — BEST for: roadmap, phases
31
- • Layout F (ppt_build_layout_f): Table with styled headers — BEST for: product specs, pricing, data
32
-
33
- ═══ CRITICAL: LAYOUT USAGE LIMITS ═══
34
- ⚠ ppt_build_layout_a: AT MOST 3 times. More than 3 → tool will REJECT the call.
35
- ⚠ ppt_build_layout_b: AT MOST 4 times. More than 4 → tool will REJECT the call.
36
- ⚠ If the EXECUTION PLAN assigns a specific layout to a slide, you MUST use that exact layout.
37
- ⚠ NEVER substitute Layout A or B for another layout type. This is a HARD RULE with no exceptions.
38
-
39
- ═══ MANDATORY PLAN COMPLIANCE ═══
40
- The EXECUTION PLAN specifies the EXACT tool name for each slide.
41
- You MUST call the specified tool for each slide — do NOT deviate.
42
- Example: If plan says "Slide 5: Product | ppt_build_layout_f" → you MUST call ppt_build_layout_f, NOT ppt_build_layout_a.
43
- Changing the plan's layout assignment = FAILURE.
44
-
45
182
  ═══ CONTENT QUALITY ═══
46
183
  • ALL text MUST be in the same language as the user's instruction
47
184
  • Korean input → Korean titles, bullets, table headers, everything
48
185
  • NEVER use placeholder text like "[내용]", "XXX", "lorem ipsum"
49
186
  • Generate REAL, specific, professional content with concrete data
50
- • Layout A: MUST have 3-4 ■ blocks, each with 2-3 – sub-details (NOT just single-line bullets)
51
- • Layout B: 3-4 items per column with details
52
- • Table cells must have realistic data — NO empty cells
53
- • Layout D numbers: MAX 6 characters. Units go in label, not number.
54
- • Layout E labels: MAX 8 Korean characters. Descriptions: 1-3 sentences.
55
-
56
- ═══ LAYOUT A FORMAT (CRITICAL) ═══
57
- CORRECT format — each ■ block has – sub-details:
58
- "■ Main Point Title\\n – Detail sentence one\\n – Detail sentence two\\n■ Next Main Point\\n – Sub-detail..."
59
-
60
- WRONG format — just single-line bullets:
61
- "■ Main point one\\n■ Main point two\\n■ Main point three"
62
-
63
- Keep body CONCISE: max 3-4 ■ blocks with 2 sub-details each. Less is more.
64
-
65
- ═══ TEXT OVERFLOW PREVENTION ═══
66
- • Title: max 60 chars
67
- • Layout A body: max 500 chars total (KEEP IT CONCISE — fewer ■ blocks, shorter sub-details)
68
- • Layout B columns: max 400 chars each
69
- • Layout C description: max 400 chars (FILL the description — write 3-4 complete sentences)
70
- • Layout D numbers: max 8 chars, labels: max 20 chars
71
- • Layout F cells: max 50 chars each
72
187
 
73
188
  ═══ RULES ═══
74
189
  1. Build each slide COMPLETELY with one tool call before moving to the next
75
190
  2. NEVER go back to modify a previous slide
76
191
  3. NEVER use HTML tags in text — use \\n for line breaks
77
192
  4. The LAST tool before "complete" MUST be powerpoint_save
78
- 5. If save fails with path error, try "C:\\\\temp\\\\presentation.pptx"
79
- 6. Follow the EXECUTION PLAN EXACTLY — the tool name specified for each slide is MANDATORY
80
- 7. ppt_build_closing_slide is ONLY for farewell. Call it ONCE, as the last slide before save.`;
193
+ 5. If save fails with path error, try "C:\\\\temp\\\\presentation.pptx"`;
81
194
  export const PPT_CREATE_PLANNING_PROMPT = `You are a presentation structure planner.
82
- Given the user's instruction and CREATIVE GUIDANCE, select a template and create the execution plan.
83
-
84
- ⚠⚠⚠ LANGUAGE RULE: ALL slide titles and content MUST be in the SAME language as the user's instruction. ⚠⚠⚠
85
- Korean input → Korean titles: "문제 인식", "솔루션 소개"
86
- English input → English titles: "Problem", "Solution"
87
- Only FORMAT labels (MODE, DESIGN DECISIONS, Layout:) stay in English.
88
-
89
- ═══ STEP 1: SELECT TEMPLATE ═══
90
- Based on the document type, select the matching template:
91
-
92
- TEMPLATE A — PITCH DECK (startup/investment/pitch/사업계획서/피치덱):
93
- Base: 12 slides (expandable to 15)
94
- Slide 1: Title | ppt_build_title_slide
95
- Slide 2: Problem | ppt_build_layout_a
96
- Slide 3: Solution | ppt_build_layout_b
97
- Slide 4: Market Size | ppt_build_layout_d
98
- Slide 5: Product | ppt_build_layout_f
99
- Slide 6: Business Model | ppt_build_layout_d
100
- Slide 7: Competition | ppt_build_layout_b
101
- Slide 8: Traction/KPIs | ppt_build_layout_d
102
- Slide 9: Team | ppt_build_layout_b
103
- Slide 10: Roadmap | ppt_build_layout_e
104
- Slide 11: Investment Ask | ppt_build_layout_c
105
- Slide 12: Closing | ppt_build_closing_slide
106
- Extension slots (add between 11 and 12 if user needs more sections):
107
- +A: Customer Cases | ppt_build_layout_b
108
- +B: Tech Detail | ppt_build_layout_f
109
- +C: Contact | ppt_build_layout_a
110
-
111
- TEMPLATE B — BUSINESS REPORT (보고서/분석/현황/실적):
112
- Base: 10 slides (expandable to 13)
113
- Slide 1: Title | ppt_build_title_slide
114
- Slide 2: Executive Summary | ppt_build_layout_a
115
- Slide 3: Key Metrics | ppt_build_layout_d
116
- Slide 4: Analysis Detail | ppt_build_layout_f
117
- Slide 5: Comparison | ppt_build_layout_b
118
- Slide 6: Spotlight Metric | ppt_build_layout_c
119
- Slide 7: Breakdown | ppt_build_layout_f
120
- Slide 8: Action Plan | ppt_build_layout_e
121
- Slide 9: Recommendations | ppt_build_layout_a
122
- Slide 10: Closing | ppt_build_closing_slide
123
- Extension: +ppt_build_layout_b, +ppt_build_layout_d, +ppt_build_layout_c
124
-
125
- TEMPLATE C — TRAINING/EDUCATION (교육/연수/세미나/강의):
126
- Base: 10 slides (expandable to 13)
127
- Slide 1: Title | ppt_build_title_slide
128
- Slide 2: Learning Objectives | ppt_build_layout_a
129
- Slide 3: Core Concepts | ppt_build_layout_b
130
- Slide 4: Key Data | ppt_build_layout_d
131
- Slide 5: Process/Steps | ppt_build_layout_e
132
- Slide 6: Details | ppt_build_layout_f
133
- Slide 7: Case Study | ppt_build_layout_b
134
- Slide 8: Summary | ppt_build_layout_a
135
- Slide 9: Key Takeaway | ppt_build_layout_c
136
- Slide 10: Closing | ppt_build_closing_slide
137
- Extension: +ppt_build_layout_d, +ppt_build_layout_b, +ppt_build_layout_f
138
-
139
- TEMPLATE D — PRODUCT LAUNCH (제품/서비스/출시/소개):
140
- Base: 11 slides (expandable to 14)
141
- Slide 1: Title | ppt_build_title_slide
142
- Slide 2: Market Need | ppt_build_layout_a
143
- Slide 3: Product Overview | ppt_build_layout_b
144
- Slide 4: Key Feature | ppt_build_layout_c
145
- Slide 5: Features Table | ppt_build_layout_f
146
- Slide 6: Performance Metrics | ppt_build_layout_d
147
- Slide 7: Use Cases | ppt_build_layout_b
148
- Slide 8: Pricing | ppt_build_layout_f
149
- Slide 9: Launch Timeline | ppt_build_layout_e
150
- Slide 10: Call to Action | ppt_build_layout_a
151
- Slide 11: Closing | ppt_build_closing_slide
152
- Extension: +ppt_build_layout_d, +ppt_build_layout_b, +ppt_build_layout_c
153
-
154
- TEMPLATE E — GENERAL (기타/발표/프레젠테이션):
155
- Base: 10 slides (expandable to 13)
156
- Slide 1: Title | ppt_build_title_slide
157
- Slide 2: Overview | ppt_build_layout_a
158
- Slide 3: Key Points | ppt_build_layout_b
159
- Slide 4: Data Highlights | ppt_build_layout_d
160
- Slide 5: Detail Table | ppt_build_layout_f
161
- Slide 6: Spotlight | ppt_build_layout_c
162
- Slide 7: Comparison | ppt_build_layout_b
163
- Slide 8: Process | ppt_build_layout_e
164
- Slide 9: Summary | ppt_build_layout_a
165
- Slide 10: Closing | ppt_build_closing_slide
166
- Extension: +ppt_build_layout_d, +ppt_build_layout_b, +ppt_build_layout_f
195
+ Given the user's instruction and CREATIVE GUIDANCE, create the execution plan.
167
196
 
168
- ═══ HARD RULES ═══
169
- ⚠ Layout A (ppt_build_layout_a): MAXIMUM 3 slides per presentation. No exceptions.
170
- ⚠ Layout B (ppt_build_layout_b): MAXIMUM 4 slides per presentation. No exceptions.
171
- ⚠ Must use AT LEAST 5 different layout types (from A,B,C,D,E,F).
172
- ⚠ Extension slides MUST use the specified layout types, NOT Layout A.
173
- ⚠ NEVER assign Layout A to: Team, Product, Competition, Contact, Financial slides.
174
- → Team → Layout B (left: CEO+CTO, right: CMO+others)
175
- → Product → Layout F (table) or Layout B (features vs benefits)
176
- → Competition → Layout B (competitors vs our advantage)
177
- → Investment → Layout C (big number: funding amount). MUST be C, not D.
178
- → Financial → Layout D (3 metrics: revenue, margin, ROI)
179
-
180
- ═══ STEP 2: FILL IN CONTENT ═══
181
- Use the CREATIVE GUIDANCE to fill each slide with topic-appropriate titles and content summaries.
182
- Map user's requested sections to the template slots. If user asks for more sections than template provides, use extension slots.
183
-
184
- ═══ OUTPUT FORMAT ═══
197
+ LANGUAGE RULE: ALL slide titles and content MUST be in the SAME language as the user's instruction.
185
198
 
199
+ OUTPUT FORMAT:
186
200
  MODE: CREATE
187
- TEMPLATE: [A/B/C/D/E]
188
-
189
201
  DESIGN DECISIONS:
190
- - COLOR_SCHEME: [MUST be one of: MODERN_TECH, WARM_EXECUTIVE, CLEAN_MINIMAL, CORPORATE, NATURE_FRESH, BOLD_MODERN]
202
+ - COLOR_SCHEME: [MODERN_TECH, WARM_EXECUTIVE, CLEAN_MINIMAL, CORPORATE, NATURE_FRESH, BOLD_MODERN]
191
203
  - DESIGN_STYLE: [sidebar / top_band / clean]
192
- - FONTS: [preset name]
193
- - TONE: [formal/casual/inspiring/academic/corporate]
194
-
195
204
  TOTAL_SLIDES: [number]
196
-
197
205
  SLIDE_PLAN:
198
- - Slide 1: [Title in user lang] | Tool: ppt_build_title_slide | Subtitle: [text] | Date: [text]
199
- - Slide 2: [Title in user lang] | Tool: [EXACT tool name from template] | Content: [summary]
200
- ...
201
- - Slide N: [감사합니다/Thank You] | Tool: ppt_build_closing_slide
202
-
203
- LAYOUT COUNT CHECK: A=[n] B=[n] C=[n] D=[n] E=[n] F=[n] (A must be ≤3, B must be ≤4, total types ≥5)
204
-
205
- CONTENT DENSITY PER LAYOUT:
206
- • Layout A: 3-4 bullet sections (■), each with 2 sub-details (–), max 500 chars
207
- • Layout B: 3-4 items per column, max 400 chars per side
208
- • Layout C: 1 number (max 8 chars) + label + 3-4 sentence description (200+ chars, FILL the space)
209
- • Layout D: 3 numbers (max 6 chars each) + labels + descriptions + insight
210
- • Layout E: 3 step labels (max 8 Korean chars) + descriptions + insight
211
- • Layout F: headers + 5-7 data rows, every cell filled, max 50 chars/cell`;
212
- export const PPT_CREATE_ENHANCEMENT_PROMPT = `You are a creative presentation consultant. Generate RICH, SPECIFIC content and design decisions.
213
-
214
- ⚠ LANGUAGE: Your ENTIRE output MUST be in the SAME language as the user's instruction.
215
- Korean input → Korean output. English slogans for Korean input = FAILURE.
216
-
217
- ANALYZE the instruction and provide:
218
-
219
- 1. DOCUMENT_TYPE: What kind of presentation? (pitch deck, report, training, product launch, general)
220
- 2. AUDIENCE: Who will see this?
221
- 3. TOTAL_SLIDES: Follow the template for this type (pitch=12-15, report=10-13, training=10-13, product=11-14, general=10-13)
222
-
223
- 4. DESIGN_SPECIFICATION:
224
- - DESIGN_STYLE: Choose one: "sidebar", "top_band", or "clean"
225
- - COLOR_SCHEME: Choose ONE preset name:
226
- MODERN_TECH, WARM_EXECUTIVE, CLEAN_MINIMAL, CORPORATE, NATURE_FRESH, BOLD_MODERN
227
- Match to topic: Startup→MODERN_TECH, Marketing→WARM_EXECUTIVE, Academic→CLEAN_MINIMAL, Finance→CORPORATE, Health→NATURE_FRESH, Creative→BOLD_MODERN
228
- - FONTS: Same as color scheme name
229
- - TONE: formal/casual/inspiring/academic/corporate
230
-
231
- 5. SLIDE_CONTENT: For EACH content section, provide:
232
- - TITLE: Clear title in user's language
233
- - CONTENT_TEXT: The ACTUAL text to use:
234
- * Layout A: 3-4 bullet sections, EACH with 2 sub-details (MANDATORY ■ and – markers):
235
- "■ Main point title\\n – Detail with specific number or fact\\n – Another concrete detail\\n■ Second point\\n – Sub-detail with data\\n – Another sub-detail"
236
- WRONG: "■ Point – detail" (dash on same line is NOT a sub-detail)
237
- CORRECT: "■ Point\\n – detail" (dash on NEW line IS a sub-detail)
238
- * Layout B: Left column header + 3-4 items, Right column header + 3-4 items
239
- * Layout C: The exact number, label, and 3-4 sentence detailed explanation (MUST be substantive — 200+ chars)
240
- * Layout D: 3 exact numbers with labels and descriptions
241
- * Layout E: 3 step names (max 8 chars each) and descriptions
242
- * Layout F: Exact table headers and 5-6 rows of realistic data
243
-
244
- 6. COLOR_MOOD: Visual feel description
245
-
246
- CONTENT RULES:
247
- - Every bullet = FULL SENTENCE with specific data
248
- - Tables must have REALISTIC data in EVERY cell
249
- - DATA CONSISTENCY: Same data on multiple slides must match
250
- - NEVER write generic single-line phrases — write detailed content
251
- - Layout A MUST have sub-details under each ■ block
252
-
253
- Output: structured text, max 800 words. No preamble.`;
254
- export const PPT_STRUCTURED_PLANNING_PROMPT = `You are a presentation structure planner. Output ONLY valid JSON — no markdown, no explanation, no code fences.
255
-
256
- Given the user's instruction and CREATIVE GUIDANCE, produce a JSON object with this exact structure:
257
-
258
- {
259
- "design": {
260
- "color_scheme": "MODERN_TECH",
261
- "design_style": "sidebar"
262
- },
263
- "slides": [
264
- { "tool": "ppt_build_title_slide", "title": "...", "direction": "...", "params": { "subtitle": "...", "date_text": "..." } },
265
- { "tool": "ppt_build_layout_X", "title": "...", "direction": "..." },
266
- { "tool": "ppt_build_closing_slide", "title": "감사합니다", "params": { "text": "감사합니다" } }
267
- ]
268
- }
269
-
270
- ═══ FIELD DEFINITIONS ═══
271
- • design.color_scheme: One of MODERN_TECH, WARM_EXECUTIVE, CLEAN_MINIMAL, CORPORATE, NATURE_FRESH, BOLD_MODERN
272
- Match to topic: Startup→MODERN_TECH, Marketing→WARM_EXECUTIVE, Academic→CLEAN_MINIMAL, Finance→CORPORATE, Health→NATURE_FRESH, Creative→BOLD_MODERN
273
- • design.design_style: One of "sidebar", "top_band", "clean"
274
- • slides[].tool: Exact tool name — ppt_build_title_slide, ppt_build_layout_a, ppt_build_layout_b, ppt_build_layout_c, ppt_build_layout_d, ppt_build_layout_e, ppt_build_layout_f, ppt_build_closing_slide
275
- • slides[].title: Slide title in user's language (max 60 chars)
276
- • slides[].direction: Content direction for the execution LLM — what specific content to generate for this slide (2-4 sentences). Include concrete data, numbers, names to use.
277
- • slides[].params: (title_slide and closing_slide ONLY) Pre-filled params that don't need LLM generation
278
-
279
- ═══ TEMPLATES ═══
280
-
281
- TEMPLATE A — PITCH DECK (startup/investment/pitch/사업계획서/피치덱): 12 slides
282
- 1: ppt_build_title_slide | 2: ppt_build_layout_a (Problem) | 3: ppt_build_layout_b (Solution)
283
- 4: ppt_build_layout_d (Market) | 5: ppt_build_layout_f (Product) | 6: ppt_build_layout_d (Business Model)
284
- 7: ppt_build_layout_b (Competition) | 8: ppt_build_layout_d (KPIs) | 9: ppt_build_layout_b (Team)
285
- 10: ppt_build_layout_e (Roadmap) | 11: ppt_build_layout_c (Investment) | 12: ppt_build_closing_slide
286
-
287
- TEMPLATE B — BUSINESS REPORT (보고서/분석/현황/실적): 10 slides
288
- 1: ppt_build_title_slide | 2: ppt_build_layout_a (Summary) | 3: ppt_build_layout_d (Metrics)
289
- 4: ppt_build_layout_f (Analysis) | 5: ppt_build_layout_b (Comparison) | 6: ppt_build_layout_c (Spotlight)
290
- 7: ppt_build_layout_f (Breakdown) | 8: ppt_build_layout_e (Action Plan) | 9: ppt_build_layout_a (Recommendations)
291
- 10: ppt_build_closing_slide
292
-
293
- TEMPLATE C — TRAINING/EDUCATION (교육/연수/세미나/강의): 10 slides
294
- 1: ppt_build_title_slide | 2: ppt_build_layout_a (Objectives) | 3: ppt_build_layout_b (Concepts)
295
- 4: ppt_build_layout_d (Data) | 5: ppt_build_layout_e (Process) | 6: ppt_build_layout_f (Details)
296
- 7: ppt_build_layout_b (Case Study) | 8: ppt_build_layout_a (Summary) | 9: ppt_build_layout_c (Takeaway)
297
- 10: ppt_build_closing_slide
298
-
299
- TEMPLATE D — PRODUCT LAUNCH (제품/서비스/출시/소개): 11 slides
300
- 1: ppt_build_title_slide | 2: ppt_build_layout_a (Need) | 3: ppt_build_layout_b (Overview)
301
- 4: ppt_build_layout_c (Key Feature) | 5: ppt_build_layout_f (Features) | 6: ppt_build_layout_d (Metrics)
302
- 7: ppt_build_layout_b (Use Cases) | 8: ppt_build_layout_f (Pricing) | 9: ppt_build_layout_e (Timeline)
303
- 10: ppt_build_layout_a (CTA) | 11: ppt_build_closing_slide
304
-
305
- TEMPLATE E — GENERAL (기타/발표/프레젠테이션): 10 slides
306
- 1: ppt_build_title_slide | 2: ppt_build_layout_a (Overview) | 3: ppt_build_layout_b (Points)
307
- 4: ppt_build_layout_d (Data) | 5: ppt_build_layout_f (Detail) | 6: ppt_build_layout_c (Spotlight)
308
- 7: ppt_build_layout_b (Comparison) | 8: ppt_build_layout_e (Process) | 9: ppt_build_layout_a (Summary)
309
- 10: ppt_build_closing_slide
310
-
311
- ═══ HARD RULES ═══
312
- ⚠ Layout A (ppt_build_layout_a): MAXIMUM 3 slides. No exceptions.
313
- ⚠ Layout B (ppt_build_layout_b): MAXIMUM 4 slides. No exceptions.
314
- ⚠ Must use AT LEAST 5 different layout types (from A,B,C,D,E,F).
315
- ⚠ First slide MUST be ppt_build_title_slide
316
- ⚠ Last slide MUST be ppt_build_closing_slide
317
- ⚠ Team → Layout B | Product → Layout F or B | Competition → Layout B | Investment → Layout C | Financial → Layout D
318
- ⚠ ALL titles and directions MUST be in the SAME language as the user's instruction
319
- ⚠ direction field: include SPECIFIC data, names, numbers to use — not generic descriptions
320
-
321
- Output ONLY the JSON object. No preamble, no markdown fences, no explanation.`;
322
- const LAYOUT_RULES = {
323
- ppt_build_layout_a: `You MUST call ppt_build_layout_a with these parameters:
324
- - title: Slide title (max 60 chars)
325
- - body: Bullet text using ■ and – markers. MUST have 3-4 ■ blocks, each with 2 sub-details on NEW lines.
326
- CORRECT: "■ Main Point\\n – Sub-detail one\\n – Sub-detail two\\n■ Second Point\\n – Detail..."
327
- WRONG: "■ Point – detail" (dash on same line)
328
- Max 500 chars total. Keep it concise.`,
329
- ppt_build_layout_b: `You MUST call ppt_build_layout_b with these parameters:
330
- - title: Slide title (max 60 chars)
331
- - left_header: Left column header (max 30 chars)
332
- - right_header: Right column header (max 30 chars)
333
- - left_body: Left column content, 3-4 items with details (max 400 chars)
334
- - right_body: Right column content, 3-4 items with details (max 400 chars)`,
335
- ppt_build_layout_c: `You MUST call ppt_build_layout_c with these parameters:
336
- - title: Slide title (max 60 chars)
337
- - number: The big number to display (max 8 chars, e.g., "₩50억", "95.7%")
338
- - label: Label below the number (max 40 chars)
339
- - description: Detailed explanation, 3-4 complete sentences (200-400 chars). MUST be substantive — FILL the space.`,
340
- ppt_build_layout_d: `You MUST call ppt_build_layout_d with these parameters:
341
- - title: Slide title (max 60 chars)
342
- - metrics: Array of exactly 3 objects, each with:
343
- - number: Short numeric value (max 6 chars, units go in label)
344
- - label: Metric label (max 20 chars)
345
- - description: 2-3 sentence explanation
346
- - insight_text: Summary insight paragraph (max 250 chars)`,
347
- ppt_build_layout_e: `You MUST call ppt_build_layout_e with these parameters:
348
- - title: Slide title (max 60 chars)
349
- - steps: Array of exactly 3 objects, each with:
350
- - label: Step name (max 8 Korean chars or 12 English chars)
351
- - description: Step description (1-3 sentences, max 150 chars)
352
- - insight_text: Summary insight (max 200 chars)`,
353
- ppt_build_layout_f: `You MUST call ppt_build_layout_f with these parameters:
354
- - title: Slide title (max 60 chars)
355
- - table_data: 2D array where row 0 = headers, rows 1-6 = data. Example: [["Name","Score"],["Alice","95"]]
356
- 5-7 data rows, every cell filled with realistic data (max 50 chars per cell). NO empty cells.`,
357
- };
206
+ - Slide 1: [Title] | Tool: ppt_build_title_slide | Subtitle: [text]
207
+ - Slide N: [Title] | Tool: [tool name] | Content: [summary]`;
358
208
  export function buildSlideSystemPrompt(toolName, title, direction, guidance, language) {
359
- const layoutRule = LAYOUT_RULES[toolName];
360
- if (!layoutRule)
209
+ if (!toolName.startsWith('ppt_build_layout_'))
361
210
  return '';
362
211
  const langRule = language === 'ko'
363
- ? 'ALL text MUST be in Korean. 모든 제목, 본문, 테이블 헤더, 차트 라벨을 한국어로 작성하세요.'
212
+ ? 'ALL text MUST be in Korean.'
364
213
  : 'ALL text MUST be in English.';
365
214
  return `You are building slide "${title}" for a PowerPoint presentation.
366
215
  You have exactly ONE tool available. Call it with the correct parameters.
367
216
 
368
- ═══ YOUR TASK ═══
369
- ${layoutRule}
370
-
371
217
  ═══ CONTENT DIRECTION ═══
372
218
  ${direction}
373
219
 
@@ -377,8 +223,7 @@ ${guidance}
377
223
  ═══ RULES ═══
378
224
  • ${langRule}
379
225
  • Generate REAL, specific, professional content with concrete data
380
- • NEVER use placeholder text like "[내용]", "XXX", "lorem ipsum"
381
- • NEVER use HTML tags — use \\n for line breaks
226
+ • NEVER use placeholder text
382
227
  • Call the tool EXACTLY ONCE with all required parameters`;
383
228
  }
384
229
  //# sourceMappingURL=powerpoint-create-prompts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"powerpoint-create-prompts.js","sourceRoot":"","sources":["../../../src/agents/office/powerpoint-create-prompts.ts"],"names":[],"mappings":"AAUA,MAAM,CAAC,MAAM,wBAAwB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8FA+EsD,CAAC;AAE/F,MAAM,CAAC,MAAM,0BAA0B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0EAkIgC,CAAC;AAE3E,MAAM,CAAC,MAAM,6BAA6B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qDAyCQ,CAAC;AAUtD,MAAM,CAAC,MAAM,8BAA8B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8EAmEgC,CAAC;AAK/E,MAAM,YAAY,GAA2B;IAC3C,kBAAkB,EAAE;;;;;wCAKkB;IAEtC,kBAAkB,EAAE;;;;;2EAKqD;IAEzE,kBAAkB,EAAE;;;;mHAI6F;IAEjH,kBAAkB,EAAE;;;;;;0DAMoC;IAExD,kBAAkB,EAAE;;;;;gDAK0B;IAE9C,kBAAkB,EAAE;;;gGAG0E;CAC/F,CAAC;AAMF,MAAM,UAAU,sBAAsB,CACpC,QAAgB,EAChB,KAAa,EACb,SAAiB,EACjB,QAAgB,EAChB,QAAqB;IAErB,MAAM,UAAU,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC1C,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,CAAC;IAE3B,MAAM,QAAQ,GAAG,QAAQ,KAAK,IAAI;QAChC,CAAC,CAAC,mEAAmE;QACrE,CAAC,CAAC,8BAA8B,CAAC;IAEnC,OAAO,2BAA2B,KAAK;;;;EAIvC,UAAU;;;EAGV,SAAS;;;EAGT,QAAQ;;;IAGN,QAAQ;;;;0DAI8C,CAAC;AAC3D,CAAC"}
1
+ {"version":3,"file":"powerpoint-create-prompts.js","sourceRoot":"","sources":["../../../src/agents/office/powerpoint-create-prompts.ts"],"names":[],"mappings":"AAcA,MAAM,CAAC,MAAM,6BAA6B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;0CA4BH,CAAC;AAM3C,MAAM,CAAC,MAAM,8BAA8B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8EAyEgC,CAAC;AAuB/E,MAAM,UAAU,oBAAoB,CAClC,UAAkB,EAClB,gBAAwB,EACxB,MAAoB,EACpB,UAAkB,EAClB,WAAmB,EACnB,QAAqB;IAErB,MAAM,QAAQ,GAAG,QAAQ,KAAK,IAAI;QAChC,CAAC,CAAC,gEAAgE;QAClE,CAAC,CAAC,sCAAsC,CAAC;IAE3C,OAAO;;;;UAIC,UAAU;QACZ,UAAU,GAAG,CAAC,OAAO,WAAW;;;EAGtC,gBAAgB;;;WAGP,MAAM,CAAC,aAAa;UACrB,MAAM,CAAC,YAAY;cACf,MAAM,CAAC,gBAAgB;QAC7B,MAAM,CAAC,UAAU;gBACT,MAAM,CAAC,YAAY;gBACnB,MAAM,CAAC,YAAY;cACrB,MAAM,CAAC,UAAU;aAClB,MAAM,CAAC,SAAS;QACrB,MAAM,CAAC,IAAI;SACV,MAAM,CAAC,YAAY;;;;;;yBAMH,MAAM,CAAC,UAAU,OAAO,MAAM,CAAC,SAAS;;;;;;;;;;;;;;;;;;;IAmB7D,QAAQ;;;;;;;2BAOe,UAAU,GAAG,CAAC;;wFAE+C,CAAC;AACzF,CAAC;AAMD,MAAM,CAAC,MAAM,wBAAwB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wEA6BgC,CAAC;AAEzE,MAAM,CAAC,MAAM,0BAA0B,GAAG;;;;;;;;;;;;;4DAakB,CAAC;AAG7D,MAAM,UAAU,sBAAsB,CACpC,QAAgB,EAChB,KAAa,EACb,SAAiB,EACjB,QAAgB,EAChB,QAAqB;IAErB,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,mBAAmB,CAAC;QAAE,OAAO,EAAE,CAAC;IAEzD,MAAM,QAAQ,GAAG,QAAQ,KAAK,IAAI;QAChC,CAAC,CAAC,6BAA6B;QAC/B,CAAC,CAAC,8BAA8B,CAAC;IAEnC,OAAO,2BAA2B,KAAK;;;;EAIvC,SAAS;;;EAGT,QAAQ;;;IAGN,QAAQ;;;0DAG8C,CAAC;AAC3D,CAAC"}
@@ -7,7 +7,7 @@ export declare const PROJECTS_DIR: string;
7
7
  export declare const CREDENTIALS_FILE_PATH: string;
8
8
  export declare const APP_NAME = "hanseol-dev";
9
9
  export declare const SERVICE_ID = "hanseol";
10
- export declare const APP_VERSION = "5.0.2-dev.52";
10
+ export declare const APP_VERSION = "5.0.2-dev.54";
11
11
  export declare const DASHBOARD_URL = "https://52.78.246.50.nip.io";
12
12
  export declare const ONCE_URL = "https://52.78.246.50.nip.io:5090";
13
13
  export declare const FREE_URL = "https://52.78.246.50.nip.io:6090";
package/dist/constants.js CHANGED
@@ -9,7 +9,7 @@ export const PROJECTS_DIR = path.join(LOCAL_HOME_DIR, 'projects');
9
9
  export const CREDENTIALS_FILE_PATH = path.join(LOCAL_HOME_DIR, 'credentials.json');
10
10
  export const APP_NAME = 'hanseol-dev';
11
11
  export const SERVICE_ID = 'hanseol';
12
- export const APP_VERSION = '5.0.2-dev.52';
12
+ export const APP_VERSION = '5.0.2-dev.54';
13
13
  export const DASHBOARD_URL = 'https://52.78.246.50.nip.io';
14
14
  export const ONCE_URL = 'https://52.78.246.50.nip.io:5090';
15
15
  export const FREE_URL = 'https://52.78.246.50.nip.io:6090';
@@ -159,6 +159,7 @@ export declare class PowerPointClient extends OfficeClientBase {
159
159
  start?: number;
160
160
  end?: number;
161
161
  }, insertPosition?: number): Promise<OfficeResponse>;
162
+ renderHtmlToImage(htmlWindowsPath: string, imageWindowsPath: string): Promise<OfficeResponse>;
162
163
  }
163
164
  export declare const powerpointClient: PowerPointClient;
164
165
  export type { OfficeResponse, ScreenshotResponse };
@@ -1 +1 @@
1
- {"version":3,"file":"powerpoint-client.d.ts","sourceRoot":"","sources":["../../../src/tools/office/powerpoint-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"powerpoint-client.d.ts","sourceRoot":"","sources":["../../../src/tools/office/powerpoint-client.ts"],"names":[],"mappings":"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"}