hanseol-dev 5.0.2-dev.41 → 5.0.2-dev.43

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.
@@ -27,7 +27,7 @@ export function createPowerPointCreateRequestTool() {
27
27
  planningMaxTokens: 2000,
28
28
  enhancementPrompt: PPT_CREATE_ENHANCEMENT_PROMPT,
29
29
  enhancementMaxTokens: 800,
30
- minToolCallsBeforeComplete: 10,
30
+ minToolCallsBeforeComplete: 14,
31
31
  });
32
32
  return agent.run(args['instruction']);
33
33
  },
@@ -1,4 +1,4 @@
1
- export declare const PPT_CREATE_SYSTEM_PROMPT = "You are an elite PowerPoint presentation creator.\nYou build NEW presentations using high-level layout builder tools.\nEach tool call creates ONE complete, professionally-designed slide.\n\n\u2550\u2550\u2550 AVAILABLE TOOLS \u2550\u2550\u2550\nLifecycle: powerpoint_create, powerpoint_save\nSlides: 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\nChart: powerpoint_add_chart (use sparingly \u2014 prefer Layout D or F for data)\nComplete: complete (call AFTER saving)\n\n\u2550\u2550\u2550 WORKFLOW \u2550\u2550\u2550\n1. powerpoint_create \u2014 launch PowerPoint\n2. ppt_build_title_slide \u2014 title + subtitle + date\n3. ppt_build_layout_[a-f] \u2014 content slides (one tool call per slide)\n4. ppt_build_closing_slide \u2014 always the LAST slide\n5. powerpoint_save \u2014 save file\n6. complete \u2014 report summary\n\n\u2550\u2550\u2550 DESIGN CONSISTENCY \u2550\u2550\u2550\nPass the SAME color_scheme (or colors) and design_style to EVERY builder tool call.\nThese are specified in the CREATIVE GUIDANCE section \u2014 use them exactly.\nIf no guidance is provided, use color_scheme=\"MODERN_TECH\" and design_style=\"sidebar\".\n\n\u2550\u2550\u2550 LAYOUT TYPES \u2550\u2550\u2550\n\u2022 Layout A (ppt_build_layout_a): Bullet points with \u25A0 and \u2013 markers. For strategies, overviews, analysis.\n\u2022 Layout B (ppt_build_layout_b): Two-column comparison. For before/after, pros/cons, team bios.\n\u2022 Layout C (ppt_build_layout_c): Big number spotlight. For ONE key metric.\n\u2022 Layout D (ppt_build_layout_d): Three metrics dashboard. For KPIs, statistics.\n\u2022 Layout E (ppt_build_layout_e): Process/timeline with 3 circles. For roadmap, phases.\n\u2022 Layout F (ppt_build_layout_f): Table with styled headers. For data, comparisons, specifications.\n\n\u2550\u2550\u2550 LAYOUT DIVERSITY RULES \u2550\u2550\u2550\n\u2022 Layout A: MAX 3 slides\n\u2022 Layout B: MAX 3 slides\n\u2022 Use AT LEAST 4 different layout types across your presentation\n\u2022 Adjacent slides MUST differ in layout type\n\u2022 MANDATORY minimum: 1\u00D7B, 1\u00D7D or C, 1\u00D7E, 1\u00D7F\n\n\u2550\u2550\u2550 CONTENT QUALITY \u2550\u2550\u2550\n\u2022 ALL text MUST be in the same language as the user's instruction\n\u2022 Korean input \u2192 Korean titles, bullets, table headers, everything\n\u2022 NEVER use placeholder text like \"[\uB0B4\uC6A9]\", \"XXX\", \"lorem ipsum\"\n\u2022 Generate REAL, specific, professional content with concrete data\n\u2022 Every bullet needs explanation, not just keywords\n\u2022 Table cells must have realistic data \u2014 NO empty cells\n\u2022 Layout D numbers: MAX 6 characters (e.g., \"$35.7B\", \"96.8%\"). Units go in label, not number.\n\u2022 Layout E labels: MAX 8 Korean characters. Descriptions: 1-3 sentences.\n\u2022 Layout A body: MAX 4 \u25A0 blocks with 2-3 \u2013 sub-details each\n\n\u2550\u2550\u2550 TEXT OVERFLOW PREVENTION \u2550\u2550\u2550\nThe builder tools automatically truncate text, but you should still keep content concise:\n\u2022 Title: max 60 chars\n\u2022 Layout A body: max 600 chars total\n\u2022 Layout B columns: max 400 chars each\n\u2022 Layout D numbers: max 8 chars, labels: max 20 chars\n\u2022 Layout F cells: max 50 chars each\n\u2022 Concise content that fits > detailed content that gets cut off\n\n\u2550\u2550\u2550 SLIDE COUNT \u2550\u2550\u2550\n\u2022 Quick briefing: 6-8 slides (title + 4-6 content + closing)\n\u2022 Standard: 9-12 slides (title + 7-10 content + closing)\n\u2022 Pitch deck: exactly 12 slides (title + 10 content + closing)\n\u2022 HARD CAP: 15 slides maximum\n\n\u2550\u2550\u2550 COMPLETION CHECKLIST \u2550\u2550\u2550\nBefore calling \"complete\", verify:\n1. Title slide exists (first)\n2. Closing slide exists (last)\n3. ALL slides have body content\n4. powerpoint_save was called\n5. At least 4 different layout types used\n6. Content is in the user's language\n\n\u2550\u2550\u2550 RULES \u2550\u2550\u2550\n1. Use layout=7 (blank) for all slides \u2014 builders handle this automatically\n2. Build each slide COMPLETELY with one tool call before moving to the next\n3. NEVER go back to modify a previous slide\n4. Content slides use WHITE background \u2014 builders handle this automatically\n5. NEVER use HTML tags in text \u2014 use \\n for line breaks\n6. The LAST tool before \"complete\" MUST be powerpoint_save\n7. If save fails with path error, try \"C:\\\\temp\\\\presentation.pptx\"\n8. Follow the EXECUTION PLAN exactly \u2014 build the layout it specifies for each slide";
2
- export declare const PPT_CREATE_PLANNING_PROMPT = "You are a world-class presentation planner.\nGiven the user's instruction, design the presentation structure and content.\n\n\u26A0\u26A0\u26A0 LANGUAGE RULE: ALL slide titles and content MUST be in the SAME language as the user's instruction. \u26A0\u26A0\u26A0\nKorean input \u2192 Korean titles: \"\uBB38\uC81C \uC778\uC2DD\", \"\uC194\uB8E8\uC158 \uC18C\uAC1C\"\nEnglish input \u2192 English titles: \"Problem\", \"Solution\"\nOnly FORMAT labels (MODE, DESIGN DECISIONS, Layout:) stay in English.\n\nBUILDER TOOLS AVAILABLE (each creates 1 complete slide):\n\u2022 ppt_build_title_slide: Title + subtitle + date\n\u2022 ppt_build_layout_a: Bullet points (max 4 \u25A0 items with sub-details)\n\u2022 ppt_build_layout_b: Two-column comparison\n\u2022 ppt_build_layout_c: Big number spotlight\n\u2022 ppt_build_layout_d: Three metrics with insight\n\u2022 ppt_build_layout_e: 3-step process/timeline\n\u2022 ppt_build_layout_f: Styled table (2D data array)\n\u2022 ppt_build_closing_slide: Thank you slide\n\nITERATION BUDGET: ~30 tool calls. Each builder = 1 call. Budget: title(1) + 10 content(10) + closing(1) + save(1) + complete(1) = 14 calls. Plenty of room.\n\nOUTPUT FORMAT (strict \u2014 no extra commentary):\n\nMODE: CREATE\n\nDESIGN DECISIONS:\n- COLOR_SCHEME: [MODERN_TECH / WARM_EXECUTIVE / CLEAN_MINIMAL / CORPORATE / NATURE_FRESH / BOLD_MODERN] or custom {primary:#hex, accent:#hex, light:#hex, highlight:#hex, sidebar:#hex}\n- DESIGN_STYLE: [sidebar / top_band / clean]\n- FONTS: [preset name or custom {title:\"FontName\", body:\"FontName\"}]\n- TONE: [formal/casual/playful/academic/corporate/inspiring]\n\nTOTAL_SLIDES: [10-12]\n\nLAYOUT_COUNT: A\u22643, B\u22643, D\u22651, E\u22651, F\u22651 (verify before writing SLIDE_PLAN)\n\nSLIDE_PLAN:\n- Slide 1: [Title] | Tool: ppt_build_title_slide | Subtitle: [text] | Date: [text]\n- Slide 2: [Title] | Tool: ppt_build_layout_a | Content: [4 bullet summaries]\n- Slide 3: [Title] | Tool: ppt_build_layout_b | Left: [summary] | Right: [summary]\n- Slide 4: [Title] | Tool: ppt_build_layout_d | Metric1: [num+label] | Metric2: [num+label] | Metric3: [num+label]\n- Slide 5: [Title] | Tool: ppt_build_layout_f | Table: [rows\u00D7cols, headers]\n...\n- Slide N: [\uAC10\uC0AC\uD569\uB2C8\uB2E4/Thank You] | Tool: ppt_build_closing_slide\n\nCONTENT DENSITY PER LAYOUT:\n\u2022 Layout A: 4 bullet sections (\u25A0), 2-3 sub-details (\u2013) each, max 600 chars\n\u2022 Layout B: 3-4 items per column, max 400 chars per side\n\u2022 Layout C: 1 number (max 8 chars) + label + 2-3 sentence description\n\u2022 Layout D: 3 numbers (max 6 chars each) + labels + descriptions + insight\n\u2022 Layout E: 3 step labels (max 8 Korean chars) + descriptions + insight\n\u2022 Layout F: headers + 5-7 data rows, every cell filled, max 50 chars/cell\n\nPITCH DECK TEMPLATE (MANDATORY for startup/investment/pitch):\n Slide 1: Title | ppt_build_title_slide\n Slide 2: Problem | ppt_build_layout_a\n Slide 3: Solution | ppt_build_layout_b\n Slide 4: Market | ppt_build_layout_d\n Slide 5: Product | ppt_build_layout_f\n Slide 6: Business Model | ppt_build_layout_b\n Slide 7: Competition | ppt_build_layout_f\n Slide 8: Traction | ppt_build_layout_d\n Slide 9: Team | ppt_build_layout_b\n Slide 10: Roadmap | ppt_build_layout_e\n Slide 11: Investment | ppt_build_layout_a\n Slide 12: Closing | ppt_build_closing_slide\n \u26A0 ALL 10 topics are MANDATORY. Do NOT replace or add extras.\n\nVERIFICATION (check before outputting):\n1. Last slide = CLOSING? \u2713\n2. Layout A count \u2264 3? \u2713\n3. Layout B count \u2264 3? \u2713\n4. D \u2265 1, E \u2265 1, F \u2265 1? \u2713\n5. No adjacent same layouts? \u2713\n6. Total 10-12 slides? \u2713\n7. All titles in user's language? \u2713";
3
- export declare const PPT_CREATE_ENHANCEMENT_PROMPT = "You are a creative presentation consultant. Generate RICH, SPECIFIC content and design decisions.\n\n\u26A0 LANGUAGE: Your ENTIRE output MUST be in the SAME language as the user's instruction.\nKorean input \u2192 Korean output. English slogans for Korean input = FAILURE.\n\nANALYZE the instruction and provide:\n\n1. DOCUMENT_TYPE: What kind of presentation? (pitch deck, report, training, etc.)\n2. AUDIENCE: Who will see this?\n3. TOTAL_SLIDES: 12 for pitch decks (1 title + 10 content + 1 closing), 10 for standard.\n\n4. DESIGN_SPECIFICATION:\n - DESIGN_STYLE: Choose the best visual frame for this topic:\n * \"sidebar\" \u2014 left accent bar, professional/corporate feel\n * \"top_band\" \u2014 top color band, modern/tech feel\n * \"clean\" \u2014 minimal, no bars, academic/elegant feel\n - COLOR_SCHEME: Choose from presets OR specify custom colors:\n Presets: MODERN_TECH, WARM_EXECUTIVE, CLEAN_MINIMAL, CORPORATE, NATURE_FRESH, BOLD_MODERN\n Custom: {primary:\"#hex\", accent:\"#hex\", light:\"#hex\", highlight:\"#hex\", sidebar:\"#hex\"}\n - FONTS: Choose from presets OR specify custom:\n Presets match color scheme names. Custom: {title:\"FontName\", body:\"FontName\"}\n Match the design to the topic mood:\n * Startup/tech \u2192 MODERN_TECH + sidebar or top_band\n * Marketing/creative \u2192 WARM_EXECUTIVE or BOLD_MODERN + any style\n * Academic/research \u2192 CLEAN_MINIMAL + clean\n * Corporate/finance \u2192 CORPORATE + sidebar\n * Health/environment \u2192 NATURE_FRESH + sidebar or clean\n\n5. SLIDE_CONTENT: For EACH content section, provide:\n - TITLE: Clear title in user's language\n - LAYOUT_SUGGESTION: Best layout (A/B/C/D/E/F)\n - CONTENT_TEXT: The ACTUAL text to use:\n * Layout A: 4 bullet sections with sub-details (full sentences, specific data)\n * Layout B: Left column header + 4 items, Right column header + 4 items\n * Layout C: The exact number, label, and explanation\n * Layout D: 3 exact numbers with labels and descriptions\n * Layout E: 3 step names (max 8 chars) and descriptions\n * Layout F: Exact table headers and 5-6 rows of data\n\n6. COLOR_MOOD: Visual feel description (e.g., \"Dark tech with teal accents\")\n\nCONTENT RULES:\n- Every bullet = FULL SENTENCE with specific data\n- Tables must have REALISTIC data in EVERY cell\n- DATA CONSISTENCY: Same data appearing on multiple slides must match\n- NEVER write generic phrases \u2014 write ACTUAL content\n- MAX 3 Layout A suggestions. Use B/D/E/F for the rest.\n\nOutput: structured text, max 800 words. No preamble.";
1
+ export declare const PPT_CREATE_SYSTEM_PROMPT = "You are an elite PowerPoint presentation creator.\nYou build NEW presentations using high-level layout builder tools.\nEach tool call creates ONE complete, professionally-designed slide.\n\n\u2550\u2550\u2550 AVAILABLE TOOLS \u2550\u2550\u2550\nLifecycle: powerpoint_create, powerpoint_save\nSlides: 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\nChart: powerpoint_add_chart (use sparingly \u2014 prefer Layout D or F for data)\nComplete: complete (call AFTER saving)\n\n\u2550\u2550\u2550 WORKFLOW \u2550\u2550\u2550\n1. powerpoint_create \u2014 launch PowerPoint\n2. ppt_build_title_slide \u2014 first slide\n3. ppt_build_layout_[a-f] \u2014 content slides (one tool call per slide)\n4. ppt_build_closing_slide \u2014 MUST be the absolute LAST slide before save\n5. powerpoint_save \u2014 save file\n6. complete \u2014 report summary\n\n\u2550\u2550\u2550 DESIGN CONSISTENCY \u2550\u2550\u2550\nPass the SAME color_scheme (or colors) and design_style to EVERY builder tool call.\nThese are specified in the CREATIVE GUIDANCE section \u2014 use them exactly.\nIf no guidance is provided, use color_scheme=\"MODERN_TECH\" and design_style=\"sidebar\".\n\n\u2550\u2550\u2550 LAYOUT TYPES \u2550\u2550\u2550\n\u2022 Layout A (ppt_build_layout_a): Bullet points with \u25A0 and \u2013 markers. For strategies, overviews, analysis.\n\u2022 Layout B (ppt_build_layout_b): Two-column comparison. For before/after, pros/cons, comparisons.\n\u2022 Layout C (ppt_build_layout_c): Big number spotlight. For ONE key metric or achievement.\n\u2022 Layout D (ppt_build_layout_d): Three metrics dashboard. For KPIs, statistics, market data.\n\u2022 Layout E (ppt_build_layout_e): Process/timeline with 3 circles. For roadmap, phases, workflows.\n\u2022 Layout F (ppt_build_layout_f): Table with styled headers. For data, comparisons, specifications.\n\n\u2550\u2550\u2550 SAFETY RULES \u2550\u2550\u2550\n\u2022 ppt_build_closing_slide: ONLY for the absolute LAST slide. It creates a dark-background farewell page. NEVER use it for content sections.\n\u2022 No two adjacent slides may use the same layout type\n\u2022 Use at least 3 different layout types across content slides\n\n\u2550\u2550\u2550 CONTENT QUALITY \u2550\u2550\u2550\n\u2022 ALL text MUST be in the same language as the user's instruction\n\u2022 Korean input \u2192 Korean titles, bullets, table headers, everything\n\u2022 NEVER use placeholder text like \"[\uB0B4\uC6A9]\", \"XXX\", \"lorem ipsum\"\n\u2022 Generate REAL, specific, professional content with concrete data\n\u2022 Every bullet needs explanation, not just keywords\n\u2022 Table cells must have realistic data \u2014 NO empty cells\n\u2022 Layout D numbers: MAX 6 characters (e.g., \"$35.7B\", \"96.8%\"). Units go in label, not number.\n\u2022 Layout E labels: MAX 8 Korean characters. Descriptions: 1-3 sentences.\n\u2022 Layout A body: MAX 4 \u25A0 blocks with 2-3 \u2013 sub-details each\n\n\u2550\u2550\u2550 TEXT OVERFLOW PREVENTION \u2550\u2550\u2550\nThe builder tools automatically truncate text, but you should still keep content concise:\n\u2022 Title: max 60 chars\n\u2022 Layout A body: max 600 chars total\n\u2022 Layout B columns: max 400 chars each\n\u2022 Layout D numbers: max 8 chars, labels: max 20 chars\n\u2022 Layout F cells: max 50 chars each\n\u2022 Closing subtitle: max 150 chars (can include multi-line contact info with \\n)\n\n\u2550\u2550\u2550 SLIDE COUNT \u2550\u2550\u2550\n\u2022 HARD CAP: 15 slides maximum\n\u2022 Follow the EXECUTION PLAN's slide count exactly\n\n\u2550\u2550\u2550 RULES \u2550\u2550\u2550\n1. Use layout=7 (blank) for all slides \u2014 builders handle this automatically\n2. Build each slide COMPLETELY with one tool call before moving to the next\n3. NEVER go back to modify a previous slide\n4. Content slides use WHITE background \u2014 builders handle this automatically\n5. NEVER use HTML tags in text \u2014 use \\n for line breaks\n6. The LAST tool before \"complete\" MUST be powerpoint_save\n7. If save fails with path error, try \"C:\\\\temp\\\\presentation.pptx\"\n8. Follow the EXECUTION PLAN exactly \u2014 build the layout and content it specifies for each slide\n9. ppt_build_closing_slide is ONLY for farewell/thank-you. For content like \"Investment Summary\" or \"Key Takeaways\", use Layout A or B instead.";
2
+ export declare const PPT_CREATE_PLANNING_PROMPT = "You are a presentation execution planner.\nYour job: convert the CREATIVE GUIDANCE into an exact execution plan for the builder agent.\n\n\u26A0\u26A0\u26A0 LANGUAGE RULE: ALL slide titles and content MUST be in the SAME language as the user's instruction. \u26A0\u26A0\u26A0\nKorean input \u2192 Korean titles: \"\uBB38\uC81C \uC778\uC2DD\", \"\uC194\uB8E8\uC158 \uC18C\uAC1C\"\nEnglish input \u2192 English titles: \"Problem\", \"Solution\"\nOnly FORMAT labels (MODE, DESIGN DECISIONS, Layout:) stay in English.\n\nBUILDER TOOLS AVAILABLE (each creates 1 complete slide):\n\u2022 ppt_build_title_slide: Title + subtitle + date\n\u2022 ppt_build_layout_a: Bullet points (max 4 \u25A0 items with sub-details)\n\u2022 ppt_build_layout_b: Two-column comparison\n\u2022 ppt_build_layout_c: Big number spotlight\n\u2022 ppt_build_layout_d: Three metrics with insight\n\u2022 ppt_build_layout_e: 3-step process/timeline\n\u2022 ppt_build_layout_f: Styled table (2D data array)\n\u2022 ppt_build_closing_slide: Farewell/thank-you slide (ONLY as the absolute last slide)\n\nITERATION BUDGET: ~30 tool calls. Each builder = 1 call. Plenty of room.\n\nThe CREATIVE GUIDANCE already specifies:\n- Design decisions (colors, style, fonts)\n- Slide-by-slide plan with layout types and content\n\nYour job is to FORMAT it into an executable plan.\n\nOUTPUT FORMAT (strict \u2014 no extra commentary):\n\nMODE: CREATE\n\nDESIGN DECISIONS:\n- COLOR_SCHEME: [from CREATIVE GUIDANCE]\n- DESIGN_STYLE: [from CREATIVE GUIDANCE]\n- FONTS: [from CREATIVE GUIDANCE]\n- TONE: [from CREATIVE GUIDANCE]\n\nTOTAL_SLIDES: [from CREATIVE GUIDANCE]\n\nSLIDE_PLAN:\n- Slide 1: [Title] | Tool: ppt_build_title_slide | Subtitle: [text] | Date: [text]\n- Slide 2: [Title] | Tool: [layout tool from guidance] | Content: [summary]\n- Slide 3: [Title] | Tool: [layout tool from guidance] | Content: [summary]\n...\n- Slide N: [\uAC10\uC0AC\uD569\uB2C8\uB2E4/Thank You] | Tool: ppt_build_closing_slide\n\nCONTENT DENSITY PER LAYOUT:\n\u2022 Layout A: 4 bullet sections (\u25A0), 2-3 sub-details (\u2013) each, max 600 chars\n\u2022 Layout B: 3-4 items per column, max 400 chars per side\n\u2022 Layout C: 1 number (max 8 chars) + label + 2-3 sentence description\n\u2022 Layout D: 3 numbers (max 6 chars each) + labels + descriptions + insight\n\u2022 Layout E: 3 step labels (max 8 Korean chars) + descriptions + insight\n\u2022 Layout F: headers + 5-7 data rows, every cell filled, max 50 chars/cell\n\nVERIFICATION (check before outputting):\n1. Last slide = CLOSING (ppt_build_closing_slide)? \u2713\n2. No adjacent slides use the same layout? \u2713\n3. At least 3 different layout types used? \u2713\n4. All titles in user's language? \u2713\n5. ppt_build_closing_slide used ONLY ONCE as last slide? \u2713";
3
+ export declare const PPT_CREATE_ENHANCEMENT_PROMPT = "You are a creative presentation architect. You make ALL design and structural decisions.\n\n\u26A0 LANGUAGE: Your ENTIRE output MUST be in the SAME language as the user's instruction.\nKorean input \u2192 Korean output. English slogans for Korean input = FAILURE.\n\nYou decide EVERYTHING:\n- Visual design (colors, style, fonts)\n- Number of slides\n- Which layout type for EACH slide\n- Content for each slide\n\nANALYZE the instruction and provide:\n\n1. DOCUMENT_TYPE: What kind of presentation?\n2. AUDIENCE: Who will see this?\n\n3. DESIGN_SPECIFICATION:\n - DESIGN_STYLE: Choose the best visual frame:\n * \"sidebar\" \u2014 left accent bar, professional/corporate feel\n * \"top_band\" \u2014 top color band, modern/tech feel\n * \"clean\" \u2014 minimal, no bars, academic/elegant feel\n - COLOR_SCHEME: Preset or custom:\n Presets: MODERN_TECH, WARM_EXECUTIVE, CLEAN_MINIMAL, CORPORATE, NATURE_FRESH, BOLD_MODERN\n Custom: {primary:\"#hex\", accent:\"#hex\", light:\"#hex\", highlight:\"#hex\", sidebar:\"#hex\"}\n - FONTS: Preset or custom:\n Presets match color scheme names. Custom: {title:\"FontName\", body:\"FontName\"}\n - TONE: formal/casual/playful/academic/corporate/inspiring\n\n4. SLIDE_PLAN: Design the COMPLETE slide sequence.\n For EACH slide, specify the tool and provide FULL content.\n\n Available layout tools:\n \u2022 ppt_build_title_slide \u2014 title + subtitle + date\n \u2022 ppt_build_layout_a \u2014 bullet points (\u25A0 main items, \u2013 sub-details). Best for: strategies, overviews, lists\n \u2022 ppt_build_layout_b \u2014 two-column split. Best for: comparisons, before/after, dual perspectives\n \u2022 ppt_build_layout_c \u2014 single big number. Best for: ONE key metric or achievement\n \u2022 ppt_build_layout_d \u2014 three metrics dashboard. Best for: KPIs, market size, financial highlights\n \u2022 ppt_build_layout_e \u2014 3-step process/timeline. Best for: roadmaps, phases, implementation steps\n \u2022 ppt_build_layout_f \u2014 styled table. Best for: data, specs, feature comparisons\n \u2022 ppt_build_closing_slide \u2014 farewell/thank-you (ONLY as the absolute last slide)\n\n SLIDE_PLAN FORMAT:\n - Slide 1 | ppt_build_title_slide | Title: [text] | Subtitle: [text] | Date: [text]\n - Slide 2 | ppt_build_layout_X | Title: [text] | Content: [FULL content for this layout]\n ...\n - Slide N | ppt_build_closing_slide | Text: [farewell text] | Subtitle: [contact info]\n\n LAYOUT SELECTION GUIDELINES (not strict rules):\n \u2022 Choose layouts that best fit each section's content\n \u2022 Avoid using the same layout for adjacent slides\n \u2022 Use at least 3 different layout types for visual variety\n \u2022 Layout A is versatile but don't overuse it (max 3-4 times)\n \u2022 ppt_build_closing_slide is ONLY for the final farewell \u2014 NOT for content like \"investment summary\" or \"key takeaways\"\n\n5. TOTAL_SLIDES: Your chosen slide count (typically 8-14)\n\nCONTENT RULES:\n- Every bullet = FULL SENTENCE with specific data\n- Tables must have REALISTIC data in EVERY cell\n- DATA CONSISTENCY: Same data on multiple slides must match\n- NEVER write generic phrases \u2014 write ACTUAL content\n- Layout D numbers: max 6 chars each, units in label\n- Layout E step labels: max 8 Korean chars\n- Closing subtitle: can be multi-line with \\n (contact info, email, phone)\n\nOutput: structured text, max 1000 words. No preamble.";
4
4
  //# sourceMappingURL=powerpoint-create-prompts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"powerpoint-create-prompts.d.ts","sourceRoot":"","sources":["../../../src/agents/office/powerpoint-create-prompts.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,wBAAwB,oiJAiF+C,CAAC;AAErF,eAAO,MAAM,0BAA0B,+qHAyEH,CAAC;AAErC,eAAO,MAAM,6BAA6B,0jFAgDW,CAAC"}
1
+ {"version":3,"file":"powerpoint-create-prompts.d.ts","sourceRoot":"","sources":["../../../src/agents/office/powerpoint-create-prompts.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,wBAAwB,80IAqE2G,CAAC;AAEjJ,eAAO,MAAM,0BAA0B,2tFA0DoB,CAAC;AAE5D,eAAO,MAAM,6BAA6B,y5GAiEY,CAAC"}
@@ -10,9 +10,9 @@ Complete: complete (call AFTER saving)
10
10
 
11
11
  ═══ WORKFLOW ═══
12
12
  1. powerpoint_create — launch PowerPoint
13
- 2. ppt_build_title_slide — title + subtitle + date
13
+ 2. ppt_build_title_slide — first slide
14
14
  3. ppt_build_layout_[a-f] — content slides (one tool call per slide)
15
- 4. ppt_build_closing_slide — always the LAST slide
15
+ 4. ppt_build_closing_slide — MUST be the absolute LAST slide before save
16
16
  5. powerpoint_save — save file
17
17
  6. complete — report summary
18
18
 
@@ -23,18 +23,16 @@ If no guidance is provided, use color_scheme="MODERN_TECH" and design_style="sid
23
23
 
24
24
  ═══ LAYOUT TYPES ═══
25
25
  • Layout A (ppt_build_layout_a): Bullet points with ■ and – markers. For strategies, overviews, analysis.
26
- • Layout B (ppt_build_layout_b): Two-column comparison. For before/after, pros/cons, team bios.
27
- • Layout C (ppt_build_layout_c): Big number spotlight. For ONE key metric.
28
- • Layout D (ppt_build_layout_d): Three metrics dashboard. For KPIs, statistics.
29
- • Layout E (ppt_build_layout_e): Process/timeline with 3 circles. For roadmap, phases.
26
+ • Layout B (ppt_build_layout_b): Two-column comparison. For before/after, pros/cons, comparisons.
27
+ • Layout C (ppt_build_layout_c): Big number spotlight. For ONE key metric or achievement.
28
+ • Layout D (ppt_build_layout_d): Three metrics dashboard. For KPIs, statistics, market data.
29
+ • Layout E (ppt_build_layout_e): Process/timeline with 3 circles. For roadmap, phases, workflows.
30
30
  • Layout F (ppt_build_layout_f): Table with styled headers. For data, comparisons, specifications.
31
31
 
32
- ═══ LAYOUT DIVERSITY RULES ═══
33
- Layout A: MAX 3 slides
34
- Layout B: MAX 3 slides
35
- • Use AT LEAST 4 different layout types across your presentation
36
- • Adjacent slides MUST differ in layout type
37
- • MANDATORY minimum: 1×B, 1×D or C, 1×E, 1×F
32
+ ═══ SAFETY RULES ═══
33
+ ppt_build_closing_slide: ONLY for the absolute LAST slide. It creates a dark-background farewell page. NEVER use it for content sections.
34
+ No two adjacent slides may use the same layout type
35
+ • Use at least 3 different layout types across content slides
38
36
 
39
37
  ═══ CONTENT QUALITY ═══
40
38
  • ALL text MUST be in the same language as the user's instruction
@@ -54,22 +52,11 @@ The builder tools automatically truncate text, but you should still keep content
54
52
  • Layout B columns: max 400 chars each
55
53
  • Layout D numbers: max 8 chars, labels: max 20 chars
56
54
  • Layout F cells: max 50 chars each
57
- Concise content that fits > detailed content that gets cut off
55
+ Closing subtitle: max 150 chars (can include multi-line contact info with \\n)
58
56
 
59
57
  ═══ SLIDE COUNT ═══
60
- • Quick briefing: 6-8 slides (title + 4-6 content + closing)
61
- • Standard: 9-12 slides (title + 7-10 content + closing)
62
- • Pitch deck: exactly 12 slides (title + 10 content + closing)
63
58
  • HARD CAP: 15 slides maximum
64
-
65
- ═══ COMPLETION CHECKLIST ═══
66
- Before calling "complete", verify:
67
- 1. Title slide exists (first)
68
- 2. Closing slide exists (last)
69
- 3. ALL slides have body content
70
- 4. powerpoint_save was called
71
- 5. At least 4 different layout types used
72
- 6. Content is in the user's language
59
+ • Follow the EXECUTION PLAN's slide count exactly
73
60
 
74
61
  ═══ RULES ═══
75
62
  1. Use layout=7 (blank) for all slides — builders handle this automatically
@@ -79,9 +66,10 @@ Before calling "complete", verify:
79
66
  5. NEVER use HTML tags in text — use \\n for line breaks
80
67
  6. The LAST tool before "complete" MUST be powerpoint_save
81
68
  7. If save fails with path error, try "C:\\\\temp\\\\presentation.pptx"
82
- 8. Follow the EXECUTION PLAN exactly — build the layout it specifies for each slide`;
83
- export const PPT_CREATE_PLANNING_PROMPT = `You are a world-class presentation planner.
84
- Given the user's instruction, design the presentation structure and content.
69
+ 8. Follow the EXECUTION PLAN exactly — build the layout and content it specifies for each slide
70
+ 9. ppt_build_closing_slide is ONLY for farewell/thank-you. For content like "Investment Summary" or "Key Takeaways", use Layout A or B instead.`;
71
+ export const PPT_CREATE_PLANNING_PROMPT = `You are a presentation execution planner.
72
+ Your job: convert the CREATIVE GUIDANCE into an exact execution plan for the builder agent.
85
73
 
86
74
  ⚠⚠⚠ LANGUAGE RULE: ALL slide titles and content MUST be in the SAME language as the user's instruction. ⚠⚠⚠
87
75
  Korean input → Korean titles: "문제 인식", "솔루션 소개"
@@ -96,30 +84,32 @@ BUILDER TOOLS AVAILABLE (each creates 1 complete slide):
96
84
  • ppt_build_layout_d: Three metrics with insight
97
85
  • ppt_build_layout_e: 3-step process/timeline
98
86
  • ppt_build_layout_f: Styled table (2D data array)
99
- • ppt_build_closing_slide: Thank you slide
87
+ • ppt_build_closing_slide: Farewell/thank-you slide (ONLY as the absolute last slide)
88
+
89
+ ITERATION BUDGET: ~30 tool calls. Each builder = 1 call. Plenty of room.
90
+
91
+ The CREATIVE GUIDANCE already specifies:
92
+ - Design decisions (colors, style, fonts)
93
+ - Slide-by-slide plan with layout types and content
100
94
 
101
- ITERATION BUDGET: ~30 tool calls. Each builder = 1 call. Budget: title(1) + 10 content(10) + closing(1) + save(1) + complete(1) = 14 calls. Plenty of room.
95
+ Your job is to FORMAT it into an executable plan.
102
96
 
103
97
  OUTPUT FORMAT (strict — no extra commentary):
104
98
 
105
99
  MODE: CREATE
106
100
 
107
101
  DESIGN DECISIONS:
108
- - COLOR_SCHEME: [MODERN_TECH / WARM_EXECUTIVE / CLEAN_MINIMAL / CORPORATE / NATURE_FRESH / BOLD_MODERN] or custom {primary:#hex, accent:#hex, light:#hex, highlight:#hex, sidebar:#hex}
109
- - DESIGN_STYLE: [sidebar / top_band / clean]
110
- - FONTS: [preset name or custom {title:"FontName", body:"FontName"}]
111
- - TONE: [formal/casual/playful/academic/corporate/inspiring]
102
+ - COLOR_SCHEME: [from CREATIVE GUIDANCE]
103
+ - DESIGN_STYLE: [from CREATIVE GUIDANCE]
104
+ - FONTS: [from CREATIVE GUIDANCE]
105
+ - TONE: [from CREATIVE GUIDANCE]
112
106
 
113
- TOTAL_SLIDES: [10-12]
114
-
115
- LAYOUT_COUNT: A≤3, B≤3, D≥1, E≥1, F≥1 (verify before writing SLIDE_PLAN)
107
+ TOTAL_SLIDES: [from CREATIVE GUIDANCE]
116
108
 
117
109
  SLIDE_PLAN:
118
110
  - Slide 1: [Title] | Tool: ppt_build_title_slide | Subtitle: [text] | Date: [text]
119
- - Slide 2: [Title] | Tool: ppt_build_layout_a | Content: [4 bullet summaries]
120
- - Slide 3: [Title] | Tool: ppt_build_layout_b | Left: [summary] | Right: [summary]
121
- - Slide 4: [Title] | Tool: ppt_build_layout_d | Metric1: [num+label] | Metric2: [num+label] | Metric3: [num+label]
122
- - Slide 5: [Title] | Tool: ppt_build_layout_f | Table: [rows×cols, headers]
111
+ - Slide 2: [Title] | Tool: [layout tool from guidance] | Content: [summary]
112
+ - Slide 3: [Title] | Tool: [layout tool from guidance] | Content: [summary]
123
113
  ...
124
114
  - Slide N: [감사합니다/Thank You] | Tool: ppt_build_closing_slide
125
115
 
@@ -131,76 +121,76 @@ CONTENT DENSITY PER LAYOUT:
131
121
  • Layout E: 3 step labels (max 8 Korean chars) + descriptions + insight
132
122
  • Layout F: headers + 5-7 data rows, every cell filled, max 50 chars/cell
133
123
 
134
- PITCH DECK TEMPLATE (MANDATORY for startup/investment/pitch):
135
- Slide 1: Title | ppt_build_title_slide
136
- Slide 2: Problem | ppt_build_layout_a
137
- Slide 3: Solution | ppt_build_layout_b
138
- Slide 4: Market | ppt_build_layout_d
139
- Slide 5: Product | ppt_build_layout_f
140
- Slide 6: Business Model | ppt_build_layout_b
141
- Slide 7: Competition | ppt_build_layout_f
142
- Slide 8: Traction | ppt_build_layout_d
143
- Slide 9: Team | ppt_build_layout_b
144
- Slide 10: Roadmap | ppt_build_layout_e
145
- Slide 11: Investment | ppt_build_layout_a
146
- Slide 12: Closing | ppt_build_closing_slide
147
- ⚠ ALL 10 topics are MANDATORY. Do NOT replace or add extras.
148
-
149
124
  VERIFICATION (check before outputting):
150
- 1. Last slide = CLOSING? ✓
151
- 2. Layout A count 3? ✓
152
- 3. Layout B count 3? ✓
153
- 4. D 1, E ≥ 1, F ≥ 1? ✓
154
- 5. No adjacent same layouts?
155
- 6. Total 10-12 slides?
156
- 7. All titles in user's language? ✓`;
157
- export const PPT_CREATE_ENHANCEMENT_PROMPT = `You are a creative presentation consultant. Generate RICH, SPECIFIC content and design decisions.
125
+ 1. Last slide = CLOSING (ppt_build_closing_slide)? ✓
126
+ 2. No adjacent slides use the same layout? ✓
127
+ 3. At least 3 different layout types used? ✓
128
+ 4. All titles in user's language? ✓
129
+ 5. ppt_build_closing_slide used ONLY ONCE as last slide? ✓`;
130
+ export const PPT_CREATE_ENHANCEMENT_PROMPT = `You are a creative presentation architect. You make ALL design and structural decisions.
158
131
 
159
132
  ⚠ LANGUAGE: Your ENTIRE output MUST be in the SAME language as the user's instruction.
160
133
  Korean input → Korean output. English slogans for Korean input = FAILURE.
161
134
 
135
+ You decide EVERYTHING:
136
+ - Visual design (colors, style, fonts)
137
+ - Number of slides
138
+ - Which layout type for EACH slide
139
+ - Content for each slide
140
+
162
141
  ANALYZE the instruction and provide:
163
142
 
164
- 1. DOCUMENT_TYPE: What kind of presentation? (pitch deck, report, training, etc.)
143
+ 1. DOCUMENT_TYPE: What kind of presentation?
165
144
  2. AUDIENCE: Who will see this?
166
- 3. TOTAL_SLIDES: 12 for pitch decks (1 title + 10 content + 1 closing), 10 for standard.
167
145
 
168
- 4. DESIGN_SPECIFICATION:
169
- - DESIGN_STYLE: Choose the best visual frame for this topic:
146
+ 3. DESIGN_SPECIFICATION:
147
+ - DESIGN_STYLE: Choose the best visual frame:
170
148
  * "sidebar" — left accent bar, professional/corporate feel
171
149
  * "top_band" — top color band, modern/tech feel
172
150
  * "clean" — minimal, no bars, academic/elegant feel
173
- - COLOR_SCHEME: Choose from presets OR specify custom colors:
151
+ - COLOR_SCHEME: Preset or custom:
174
152
  Presets: MODERN_TECH, WARM_EXECUTIVE, CLEAN_MINIMAL, CORPORATE, NATURE_FRESH, BOLD_MODERN
175
153
  Custom: {primary:"#hex", accent:"#hex", light:"#hex", highlight:"#hex", sidebar:"#hex"}
176
- - FONTS: Choose from presets OR specify custom:
154
+ - FONTS: Preset or custom:
177
155
  Presets match color scheme names. Custom: {title:"FontName", body:"FontName"}
178
- Match the design to the topic mood:
179
- * Startup/tech → MODERN_TECH + sidebar or top_band
180
- * Marketing/creative WARM_EXECUTIVE or BOLD_MODERN + any style
181
- * Academic/research CLEAN_MINIMAL + clean
182
- * Corporate/finance → CORPORATE + sidebar
183
- * Health/environment → NATURE_FRESH + sidebar or clean
184
-
185
- 5. SLIDE_CONTENT: For EACH content section, provide:
186
- - TITLE: Clear title in user's language
187
- - LAYOUT_SUGGESTION: Best layout (A/B/C/D/E/F)
188
- - CONTENT_TEXT: The ACTUAL text to use:
189
- * Layout A: 4 bullet sections with sub-details (full sentences, specific data)
190
- * Layout B: Left column header + 4 items, Right column header + 4 items
191
- * Layout C: The exact number, label, and explanation
192
- * Layout D: 3 exact numbers with labels and descriptions
193
- * Layout E: 3 step names (max 8 chars) and descriptions
194
- * Layout F: Exact table headers and 5-6 rows of data
195
-
196
- 6. COLOR_MOOD: Visual feel description (e.g., "Dark tech with teal accents")
156
+ - TONE: formal/casual/playful/academic/corporate/inspiring
157
+
158
+ 4. SLIDE_PLAN: Design the COMPLETE slide sequence.
159
+ For EACH slide, specify the tool and provide FULL content.
160
+
161
+ Available layout tools:
162
+ • ppt_build_title_slide — title + subtitle + date
163
+ ppt_build_layout_a bullet points (■ main items, – sub-details). Best for: strategies, overviews, lists
164
+ • ppt_build_layout_b — two-column split. Best for: comparisons, before/after, dual perspectives
165
+ ppt_build_layout_c — single big number. Best for: ONE key metric or achievement
166
+ ppt_build_layout_d — three metrics dashboard. Best for: KPIs, market size, financial highlights
167
+ ppt_build_layout_e 3-step process/timeline. Best for: roadmaps, phases, implementation steps
168
+ ppt_build_layout_f styled table. Best for: data, specs, feature comparisons
169
+ ppt_build_closing_slide farewell/thank-you (ONLY as the absolute last slide)
170
+
171
+ SLIDE_PLAN FORMAT:
172
+ - Slide 1 | ppt_build_title_slide | Title: [text] | Subtitle: [text] | Date: [text]
173
+ - Slide 2 | ppt_build_layout_X | Title: [text] | Content: [FULL content for this layout]
174
+ ...
175
+ - Slide N | ppt_build_closing_slide | Text: [farewell text] | Subtitle: [contact info]
176
+
177
+ LAYOUT SELECTION GUIDELINES (not strict rules):
178
+ • Choose layouts that best fit each section's content
179
+ • Avoid using the same layout for adjacent slides
180
+ • Use at least 3 different layout types for visual variety
181
+ • Layout A is versatile but don't overuse it (max 3-4 times)
182
+ • ppt_build_closing_slide is ONLY for the final farewell — NOT for content like "investment summary" or "key takeaways"
183
+
184
+ 5. TOTAL_SLIDES: Your chosen slide count (typically 8-14)
197
185
 
198
186
  CONTENT RULES:
199
187
  - Every bullet = FULL SENTENCE with specific data
200
188
  - Tables must have REALISTIC data in EVERY cell
201
- - DATA CONSISTENCY: Same data appearing on multiple slides must match
189
+ - DATA CONSISTENCY: Same data on multiple slides must match
202
190
  - NEVER write generic phrases — write ACTUAL content
203
- - MAX 3 Layout A suggestions. Use B/D/E/F for the rest.
191
+ - Layout D numbers: max 6 chars each, units in label
192
+ - Layout E step labels: max 8 Korean chars
193
+ - Closing subtitle: can be multi-line with \\n (contact info, email, phone)
204
194
 
205
- Output: structured text, max 800 words. No preamble.`;
195
+ Output: structured text, max 1000 words. No preamble.`;
206
196
  //# 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":"AASA,MAAM,CAAC,MAAM,wBAAwB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oFAiF4C,CAAC;AAErF,MAAM,CAAC,MAAM,0BAA0B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAyEN,CAAC;AAErC,MAAM,CAAC,MAAM,6BAA6B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qDAgDQ,CAAC"}
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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gJAqEwG,CAAC;AAEjJ,MAAM,CAAC,MAAM,0BAA0B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2DA0DiB,CAAC;AAE5D,MAAM,CAAC,MAAM,6BAA6B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sDAiES,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.41";
10
+ export declare const APP_VERSION = "5.0.2-dev.43";
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.41';
12
+ export const APP_VERSION = '5.0.2-dev.43';
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';
@@ -1 +1 @@
1
- {"version":3,"file":"layout-builders.d.ts","sourceRoot":"","sources":["../../../../src/tools/office/powerpoint-tools/layout-builders.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,aAAa,EAAc,MAAM,gBAAgB,CAAC;AA21B3D,eAAO,MAAM,sBAAsB,EAAE,aAKpC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAKjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAKjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAKjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAKjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAKjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAKjC,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,aAKtC,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,aAAa,EAS7C,CAAC"}
1
+ {"version":3,"file":"layout-builders.d.ts","sourceRoot":"","sources":["../../../../src/tools/office/powerpoint-tools/layout-builders.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,aAAa,EAAc,MAAM,gBAAgB,CAAC;AAk3B3D,eAAO,MAAM,sBAAsB,EAAE,aAKpC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAKjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAKjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAKjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAKjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAKjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAKjC,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,aAKtC,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,aAAa,EAS7C,CAAC"}
@@ -58,6 +58,13 @@ async function addSlideAndGetNumber() {
58
58
  const resp = await powerpointClient.powerpointGetSlideCount();
59
59
  return Number(resp['slide_count'] || 1);
60
60
  }
61
+ async function cleanupFailedSlide(slideNum) {
62
+ try {
63
+ await powerpointClient.powerpointDeleteSlide(slideNum);
64
+ }
65
+ catch {
66
+ }
67
+ }
61
68
  async function addStyleFrame(slideNum, style, colors, fonts, title, slideNumberText, isTitleOrClosing) {
62
69
  if (isTitleOrClosing)
63
70
  return;
@@ -220,6 +227,7 @@ const PPT_BUILD_LAYOUT_A_DEF = {
220
227
  },
221
228
  };
222
229
  async function executeBuildLayoutA(args) {
230
+ let slideNum = 0;
223
231
  try {
224
232
  const colors = resolveColors(args);
225
233
  const fonts = resolveFonts(args);
@@ -229,17 +237,20 @@ async function executeBuildLayoutA(args) {
229
237
  if (!body.trim()) {
230
238
  return { success: false, error: 'Layout A requires non-empty body text. Provide bullet content using ■ and – markers.' };
231
239
  }
232
- const slideNum = await addSlideAndGetNumber();
240
+ slideNum = await addSlideAndGetNumber();
233
241
  await addStyleFrame(slideNum, style, colors, fonts, title, args['slide_number_text']);
234
242
  const top = contentTop(style);
235
243
  const left = contentLeft(style);
236
244
  const width = contentWidth(style);
237
- await powerpointClient.powerpointAddTextbox(slideNum, body, left, top, width, 430, {
238
- fontName: fonts.body, fontSize: 13, fontColor: '#333333', alignment: 'left',
245
+ await powerpointClient.powerpointAddShape(slideNum, 'rectangle', left, top, width, 420, colors.light);
246
+ await powerpointClient.powerpointAddTextbox(slideNum, body, left + 15, top + 10, width - 30, 400, {
247
+ fontName: fonts.body, fontSize: 14, fontColor: '#333333', alignment: 'left',
239
248
  });
240
249
  return { success: true, result: `Slide ${slideNum} built: Layout A (${style} style)` };
241
250
  }
242
251
  catch (error) {
252
+ if (slideNum > 0)
253
+ await cleanupFailedSlide(slideNum);
243
254
  return { success: false, error: `Failed to build Layout A: ${error instanceof Error ? error.message : String(error)}` };
244
255
  }
245
256
  }
@@ -267,6 +278,7 @@ const PPT_BUILD_LAYOUT_B_DEF = {
267
278
  },
268
279
  };
269
280
  async function executeBuildLayoutB(args) {
281
+ let slideNum = 0;
270
282
  try {
271
283
  const colors = resolveColors(args);
272
284
  const fonts = resolveFonts(args);
@@ -277,7 +289,7 @@ async function executeBuildLayoutB(args) {
277
289
  if (!leftBody.trim() && !rightBody.trim()) {
278
290
  return { success: false, error: 'Layout B requires non-empty body text in at least one column.' };
279
291
  }
280
- const slideNum = await addSlideAndGetNumber();
292
+ slideNum = await addSlideAndGetNumber();
281
293
  await addStyleFrame(slideNum, style, colors, fonts, title, args['slide_number_text']);
282
294
  const top = contentTop(style);
283
295
  const left = contentLeft(style);
@@ -300,6 +312,8 @@ async function executeBuildLayoutB(args) {
300
312
  return { success: true, result: `Slide ${slideNum} built: Layout B (${style} style)` };
301
313
  }
302
314
  catch (error) {
315
+ if (slideNum > 0)
316
+ await cleanupFailedSlide(slideNum);
303
317
  return { success: false, error: `Failed to build Layout B: ${error instanceof Error ? error.message : String(error)}` };
304
318
  }
305
319
  }
@@ -326,6 +340,7 @@ const PPT_BUILD_LAYOUT_C_DEF = {
326
340
  },
327
341
  };
328
342
  async function executeBuildLayoutC(args) {
343
+ let slideNum = 0;
329
344
  try {
330
345
  const colors = resolveColors(args);
331
346
  const fonts = resolveFonts(args);
@@ -335,7 +350,7 @@ async function executeBuildLayoutC(args) {
335
350
  if (!number.trim()) {
336
351
  return { success: false, error: 'Layout C requires a non-empty number value.' };
337
352
  }
338
- const slideNum = await addSlideAndGetNumber();
353
+ slideNum = await addSlideAndGetNumber();
339
354
  await addStyleFrame(slideNum, style, colors, fonts, title, args['slide_number_text']);
340
355
  const left = contentLeft(style);
341
356
  const width = contentWidth(style);
@@ -354,6 +369,8 @@ async function executeBuildLayoutC(args) {
354
369
  return { success: true, result: `Slide ${slideNum} built: Layout C (${style} style)` };
355
370
  }
356
371
  catch (error) {
372
+ if (slideNum > 0)
373
+ await cleanupFailedSlide(slideNum);
357
374
  return { success: false, error: `Failed to build Layout C: ${error instanceof Error ? error.message : String(error)}` };
358
375
  }
359
376
  }
@@ -391,6 +408,7 @@ const PPT_BUILD_LAYOUT_D_DEF = {
391
408
  },
392
409
  };
393
410
  async function executeBuildLayoutD(args) {
411
+ let slideNum = 0;
394
412
  try {
395
413
  const colors = resolveColors(args);
396
414
  const fonts = resolveFonts(args);
@@ -400,7 +418,7 @@ async function executeBuildLayoutD(args) {
400
418
  if (metrics.length < 3) {
401
419
  return { success: false, error: 'Layout D requires exactly 3 metrics' };
402
420
  }
403
- const slideNum = await addSlideAndGetNumber();
421
+ slideNum = await addSlideAndGetNumber();
404
422
  await addStyleFrame(slideNum, style, colors, fonts, title, args['slide_number_text']);
405
423
  const baseLeft = contentLeft(style);
406
424
  const totalWidth = contentWidth(style);
@@ -437,6 +455,8 @@ async function executeBuildLayoutD(args) {
437
455
  return { success: true, result: `Slide ${slideNum} built: Layout D (${style} style)` };
438
456
  }
439
457
  catch (error) {
458
+ if (slideNum > 0)
459
+ await cleanupFailedSlide(slideNum);
440
460
  return { success: false, error: `Failed to build Layout D: ${error instanceof Error ? error.message : String(error)}` };
441
461
  }
442
462
  }
@@ -473,6 +493,7 @@ const PPT_BUILD_LAYOUT_E_DEF = {
473
493
  },
474
494
  };
475
495
  async function executeBuildLayoutE(args) {
496
+ let slideNum = 0;
476
497
  try {
477
498
  const colors = resolveColors(args);
478
499
  const fonts = resolveFonts(args);
@@ -482,7 +503,7 @@ async function executeBuildLayoutE(args) {
482
503
  if (steps.length < 3) {
483
504
  return { success: false, error: 'Layout E requires exactly 3 steps' };
484
505
  }
485
- const slideNum = await addSlideAndGetNumber();
506
+ slideNum = await addSlideAndGetNumber();
486
507
  await addStyleFrame(slideNum, style, colors, fonts, title, args['slide_number_text']);
487
508
  const baseLeft = contentLeft(style);
488
509
  const totalWidth = contentWidth(style);
@@ -527,6 +548,8 @@ async function executeBuildLayoutE(args) {
527
548
  return { success: true, result: `Slide ${slideNum} built: Layout E (${style} style)` };
528
549
  }
529
550
  catch (error) {
551
+ if (slideNum > 0)
552
+ await cleanupFailedSlide(slideNum);
530
553
  return { success: false, error: `Failed to build Layout E: ${error instanceof Error ? error.message : String(error)}` };
531
554
  }
532
555
  }
@@ -555,6 +578,7 @@ const PPT_BUILD_LAYOUT_F_DEF = {
555
578
  },
556
579
  };
557
580
  async function executeBuildLayoutF(args) {
581
+ let slideNum = 0;
558
582
  try {
559
583
  const colors = resolveColors(args);
560
584
  const style = resolveStyle(args);
@@ -564,7 +588,7 @@ async function executeBuildLayoutF(args) {
564
588
  if (tableData.length < 2) {
565
589
  return { success: false, error: 'Layout F requires at least 2 rows (1 header + 1 data)' };
566
590
  }
567
- const slideNum = await addSlideAndGetNumber();
591
+ slideNum = await addSlideAndGetNumber();
568
592
  await addStyleFrame(slideNum, style, colors, fonts, title, args['slide_number_text']);
569
593
  const left = contentLeft(style);
570
594
  const width = contentWidth(style);
@@ -584,6 +608,8 @@ async function executeBuildLayoutF(args) {
584
608
  return { success: true, result: `Slide ${slideNum} built: Layout F table ${rows}×${cols} (${style} style)` };
585
609
  }
586
610
  catch (error) {
611
+ if (slideNum > 0)
612
+ await cleanupFailedSlide(slideNum);
587
613
  return { success: false, error: `Failed to build Layout F: ${error instanceof Error ? error.message : String(error)}` };
588
614
  }
589
615
  }
@@ -591,7 +617,7 @@ const PPT_BUILD_CLOSING_SLIDE_DEF = {
591
617
  type: 'function',
592
618
  function: {
593
619
  name: 'ppt_build_closing_slide',
594
- description: 'Build a closing slide with "감사합니다" / "Thank You" text and styled background. Must be the last slide.',
620
+ description: 'Build a farewell/thank-you closing slide with dark background. ONLY use as the absolute LAST slide. Do NOT use for content sections like "Investment Summary" or "Key Takeaways" use Layout A or B for those.',
595
621
  parameters: {
596
622
  type: 'object',
597
623
  properties: {
@@ -611,8 +637,8 @@ async function executeBuildClosingSlide(args) {
611
637
  const colors = resolveColors(args);
612
638
  const fonts = resolveFonts(args);
613
639
  const style = resolveStyle(args);
614
- const text = truncate(args['text'] || '감사합니다', 20);
615
- const subtitle = truncate(args['subtitle'] || '', 60);
640
+ const text = truncate(args['text'] || '감사합니다', 30);
641
+ const subtitle = truncate(args['subtitle'] || '', 150);
616
642
  const slideNum = await addSlideAndGetNumber();
617
643
  await powerpointClient.powerpointSetBackground(slideNum, { color: colors.primary });
618
644
  if (style === 'sidebar') {
@@ -622,11 +648,11 @@ async function executeBuildClosingSlide(args) {
622
648
  fontName: fonts.title, fontSize: 42, bold: true, fontColor: '#FFFFFF', alignment: 'center',
623
649
  });
624
650
  if (subtitle) {
625
- await powerpointClient.powerpointAddTextbox(slideNum, subtitle, 50, 290, 860, 40, {
626
- fontName: fonts.body, fontSize: 16, fontColor: colors.highlight, alignment: 'center',
651
+ await powerpointClient.powerpointAddTextbox(slideNum, subtitle, 50, 290, 860, 80, {
652
+ fontName: fonts.body, fontSize: 14, fontColor: colors.highlight, alignment: 'center',
627
653
  });
628
654
  }
629
- await powerpointClient.powerpointAddShape(slideNum, 'rectangle', 250, 340, 460, 3, colors.highlight);
655
+ await powerpointClient.powerpointAddShape(slideNum, 'rectangle', 250, 380, 460, 3, colors.highlight);
630
656
  await powerpointClient.powerpointAddShape(slideNum, 'rectangle', 0, 520, 960, 20, colors.accent);
631
657
  }
632
658
  else if (style === 'top_band') {
@@ -635,8 +661,8 @@ async function executeBuildClosingSlide(args) {
635
661
  fontName: fonts.title, fontSize: 42, bold: true, fontColor: '#FFFFFF', alignment: 'center',
636
662
  });
637
663
  if (subtitle) {
638
- await powerpointClient.powerpointAddTextbox(slideNum, subtitle, 50, 290, 860, 40, {
639
- fontName: fonts.body, fontSize: 16, fontColor: colors.highlight, alignment: 'center',
664
+ await powerpointClient.powerpointAddTextbox(slideNum, subtitle, 50, 290, 860, 80, {
665
+ fontName: fonts.body, fontSize: 14, fontColor: colors.highlight, alignment: 'center',
640
666
  });
641
667
  }
642
668
  await powerpointClient.powerpointAddShape(slideNum, 'rectangle', 0, 530, 960, 10, colors.accent);
@@ -647,11 +673,11 @@ async function executeBuildClosingSlide(args) {
647
673
  fontName: fonts.title, fontSize: 42, bold: true, fontColor: '#FFFFFF', alignment: 'center',
648
674
  });
649
675
  if (subtitle) {
650
- await powerpointClient.powerpointAddTextbox(slideNum, subtitle, 50, 290, 860, 40, {
651
- fontName: fonts.body, fontSize: 16, fontColor: colors.highlight, alignment: 'center',
676
+ await powerpointClient.powerpointAddTextbox(slideNum, subtitle, 50, 290, 860, 80, {
677
+ fontName: fonts.body, fontSize: 14, fontColor: colors.highlight, alignment: 'center',
652
678
  });
653
679
  }
654
- await powerpointClient.powerpointAddShape(slideNum, 'rectangle', 380, 340, 200, 2, colors.accent);
680
+ await powerpointClient.powerpointAddShape(slideNum, 'rectangle', 380, 380, 200, 2, colors.accent);
655
681
  }
656
682
  return { success: true, result: `Slide ${slideNum} built: CLOSING (${style} style)` };
657
683
  }
@@ -1 +1 @@
1
- {"version":3,"file":"layout-builders.js","sourceRoot":"","sources":["../../../../src/tools/office/powerpoint-tools/layout-builders.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"layout-builders.js","sourceRoot":"","sources":["../../../../src/tools/office/powerpoint-tools/layout-builders.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hanseol-dev",
3
- "version": "5.0.2-dev.41",
3
+ "version": "5.0.2-dev.43",
4
4
  "description": "Hanseol - OpenAI-Compatible Coding Agent",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",