hanseol-dev 5.0.3-dev.9 → 5.0.4-dev.0

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.
Files changed (95) hide show
  1. package/dist/agents/common/sub-agent.d.ts +2 -4
  2. package/dist/agents/common/sub-agent.d.ts.map +1 -1
  3. package/dist/agents/common/sub-agent.js +12 -11
  4. package/dist/agents/common/sub-agent.js.map +1 -1
  5. package/dist/agents/office/excel-agent.d.ts.map +1 -1
  6. package/dist/agents/office/excel-agent.js +1 -1
  7. package/dist/agents/office/excel-agent.js.map +1 -1
  8. package/dist/agents/office/excel-create-agent.d.ts.map +1 -1
  9. package/dist/agents/office/excel-create-agent.js +24 -4
  10. package/dist/agents/office/excel-create-agent.js.map +1 -1
  11. package/dist/agents/office/excel-create-prompts.d.ts +3 -3
  12. package/dist/agents/office/excel-create-prompts.d.ts.map +1 -1
  13. package/dist/agents/office/excel-create-prompts.js +83 -20
  14. package/dist/agents/office/excel-create-prompts.js.map +1 -1
  15. package/dist/agents/office/index.d.ts.map +1 -1
  16. package/dist/agents/office/index.js.map +1 -1
  17. package/dist/agents/office/powerpoint-agent.d.ts.map +1 -1
  18. package/dist/agents/office/powerpoint-agent.js +7 -1
  19. package/dist/agents/office/powerpoint-agent.js.map +1 -1
  20. package/dist/agents/office/powerpoint-create-agent.d.ts.map +1 -1
  21. package/dist/agents/office/powerpoint-create-agent.js +257 -281
  22. package/dist/agents/office/powerpoint-create-agent.js.map +1 -1
  23. package/dist/agents/office/powerpoint-create-prompts.d.ts +3 -2
  24. package/dist/agents/office/powerpoint-create-prompts.d.ts.map +1 -1
  25. package/dist/agents/office/powerpoint-create-prompts.js +284 -250
  26. package/dist/agents/office/powerpoint-create-prompts.js.map +1 -1
  27. package/dist/agents/office/prompts.d.ts +4 -4
  28. package/dist/agents/office/prompts.d.ts.map +1 -1
  29. package/dist/agents/office/prompts.js +2 -2
  30. package/dist/agents/office/word-agent.d.ts.map +1 -1
  31. package/dist/agents/office/word-agent.js +1 -1
  32. package/dist/agents/office/word-agent.js.map +1 -1
  33. package/dist/agents/office/word-create-agent.d.ts.map +1 -1
  34. package/dist/agents/office/word-create-agent.js +2 -4
  35. package/dist/agents/office/word-create-agent.js.map +1 -1
  36. package/dist/agents/office/word-create-prompts.d.ts +3 -3
  37. package/dist/agents/office/word-create-prompts.d.ts.map +1 -1
  38. package/dist/agents/office/word-create-prompts.js +167 -43
  39. package/dist/agents/office/word-create-prompts.js.map +1 -1
  40. package/dist/constants.d.ts +1 -1
  41. package/dist/constants.js +1 -1
  42. package/dist/prompts/agents/planning.d.ts.map +1 -1
  43. package/dist/prompts/agents/planning.js +7 -0
  44. package/dist/prompts/agents/planning.js.map +1 -1
  45. package/dist/tools/office/common/utils.d.ts +2 -0
  46. package/dist/tools/office/common/utils.d.ts.map +1 -1
  47. package/dist/tools/office/common/utils.js +4 -0
  48. package/dist/tools/office/common/utils.js.map +1 -1
  49. package/dist/tools/office/excel-client.d.ts +6 -0
  50. package/dist/tools/office/excel-client.d.ts.map +1 -1
  51. package/dist/tools/office/excel-client.js +77 -6
  52. package/dist/tools/office/excel-client.js.map +1 -1
  53. package/dist/tools/office/excel-tools/index.js +3 -3
  54. package/dist/tools/office/excel-tools/index.js.map +1 -1
  55. package/dist/tools/office/excel-tools/launch.d.ts.map +1 -1
  56. package/dist/tools/office/excel-tools/launch.js +3 -1
  57. package/dist/tools/office/excel-tools/launch.js.map +1 -1
  58. package/dist/tools/office/excel-tools/sheet-builders.d.ts +1 -0
  59. package/dist/tools/office/excel-tools/sheet-builders.d.ts.map +1 -1
  60. package/dist/tools/office/excel-tools/sheet-builders.js +79 -10
  61. package/dist/tools/office/excel-tools/sheet-builders.js.map +1 -1
  62. package/dist/tools/office/powerpoint-client.d.ts.map +1 -1
  63. package/dist/tools/office/powerpoint-client.js +21 -18
  64. package/dist/tools/office/powerpoint-client.js.map +1 -1
  65. package/dist/tools/office/powerpoint-tools/effects.d.ts.map +1 -1
  66. package/dist/tools/office/powerpoint-tools/effects.js.map +1 -1
  67. package/dist/tools/office/powerpoint-tools/launch.d.ts.map +1 -1
  68. package/dist/tools/office/powerpoint-tools/launch.js +3 -1
  69. package/dist/tools/office/powerpoint-tools/launch.js.map +1 -1
  70. package/dist/tools/office/powerpoint-tools/media.d.ts.map +1 -1
  71. package/dist/tools/office/powerpoint-tools/media.js.map +1 -1
  72. package/dist/tools/office/powerpoint-tools/notes.d.ts.map +1 -1
  73. package/dist/tools/office/powerpoint-tools/notes.js.map +1 -1
  74. package/dist/tools/office/powerpoint-tools/sections.d.ts.map +1 -1
  75. package/dist/tools/office/powerpoint-tools/sections.js.map +1 -1
  76. package/dist/tools/office/powerpoint-tools/shapes.d.ts.map +1 -1
  77. package/dist/tools/office/powerpoint-tools/shapes.js.map +1 -1
  78. package/dist/tools/office/powerpoint-tools/slides.d.ts.map +1 -1
  79. package/dist/tools/office/powerpoint-tools/slides.js.map +1 -1
  80. package/dist/tools/office/powerpoint-tools/tables.d.ts.map +1 -1
  81. package/dist/tools/office/powerpoint-tools/tables.js.map +1 -1
  82. package/dist/tools/office/powerpoint-tools/text.d.ts.map +1 -1
  83. package/dist/tools/office/powerpoint-tools/text.js.map +1 -1
  84. package/dist/tools/office/word-client.d.ts +16 -0
  85. package/dist/tools/office/word-client.d.ts.map +1 -1
  86. package/dist/tools/office/word-client.js +295 -39
  87. package/dist/tools/office/word-client.js.map +1 -1
  88. package/dist/tools/office/word-tools/launch.d.ts.map +1 -1
  89. package/dist/tools/office/word-tools/launch.js +3 -1
  90. package/dist/tools/office/word-tools/launch.js.map +1 -1
  91. package/dist/tools/office/word-tools/section-builders.d.ts +2 -0
  92. package/dist/tools/office/word-tools/section-builders.d.ts.map +1 -1
  93. package/dist/tools/office/word-tools/section-builders.js +230 -50
  94. package/dist/tools/office/word-tools/section-builders.js.map +1 -1
  95. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- export declare const WORD_CREATE_SYSTEM_PROMPT = "You are an elite Office automation agent that produces WORLD-CLASS results.\nExecute the user's instruction using the available tools.\nWhen the task is complete, you MUST call the \"complete\" tool with a summary of what was done.\nCall only one tool at a time. After each tool result, decide the next step.\nAlways respond in the same language as the user's instruction.\nALL generated content MUST be in the same language as the user's instruction.\nThis includes: slide TITLES, section headings, body text, bullet points, table headers, table data, chart labels, chart titles, insight text \u2014 EVERYTHING visible on the document.\nIf the user writes in Korean, ALL text MUST be Korean. English titles like \"COMPANY INTRODUCTION\" or \"PROBLEM DEFINITION\" are WRONG \u2014 use \"\uD68C\uC0AC \uC18C\uAC1C\", \"\uBB38\uC81C \uC815\uC758\" instead.\nThe ONLY exceptions: proper nouns (company names like \"MediAI\"), universal abbreviations (KPI, ROI, AI, SaaS), and currency symbols ($, \u20A9).\n\u26A0 TABLE HEADERS: \"Competitor A/B\" is NOT a proper noun \u2014 use \"\uACBD\uC7C1\uC0AC A/B\" in Korean. \"Category\" \u2192 \"\uAD6C\uBD84\". \"Feature\" \u2192 \"\uAE30\uB2A5\". ALL table column/row headers MUST be in the user's language.\nThis is non-negotiable \u2014 wrong language scores ZERO.\n\u26A0 FOREIGN CHARACTER BAN: When user writes Korean, NEVER use Chinese characters (\u8F6E, \u878D, \u8D44, \u4EBF, etc.) or Japanese-only characters. \"A\u8F6E\u878D\u8D44\" is WRONG \u2192 \"\uC2DC\uB9AC\uC988 A \uD22C\uC790\". \"B\u8F6E\u878D\u8D44\" is WRONG \u2192 \"\uC2DC\uB9AC\uC988 B \uD22C\uC790\". \"5\u4EBF\" is WRONG \u2192 \"5\uC5B5\". ALL financial, business, and technical terms must be in Korean.\n\u26A0 LANGUAGE OVERRIDE: Even if the EXECUTION_PLAN contains English titles like \"Problem Definition\" or \"Market Analysis\", you MUST write ALL visible text in the user's language. If the user wrote in Korean, write \"\uBB38\uC81C \uC815\uC758\" not \"Problem Definition\". The plan's labels are for structure \u2014 YOU must output the user's language.\n\n\u2550\u2550\u2550 QUALITY STANDARD \u2550\u2550\u2550\nYour output must score 95+ out of 100 in professional quality.\nEven if the user gives a vague, sloppy, or minimal instruction, YOU must:\n\u2022 Infer the best possible interpretation and fill in the gaps with professional judgment\n\u2022 Generate rich, contextual, topic-appropriate content \u2014 NEVER use generic placeholder text\n\u2022 Apply beautiful, cohesive design with proper color schemes and typography\n\u2022 Deliver a result that looks like it was made by a professional designer\n\n\u2550\u2550\u2550 CONTENT GENERATION RULES \u2550\u2550\u2550\nWhen the user provides only a topic without specific content:\n\u2022 Research the topic mentally and generate realistic, detailed, professional content\n\u2022 Use concrete numbers, dates, names, and examples \u2014 NOT \"XX\" or \"lorem ipsum\"\n\u2022 Tailor vocabulary and tone to the document type (formal for reports, engaging for marketing, precise for technical)\n\u2022 Every paragraph must be substantive (3+ sentences with real information)\n\u2022 Every bullet point must have an explanation, not just a keyword\n\u2022 Tables must have realistic data that makes sense for the topic\n\n\u2550\u2550\u2550 MODE DETECTION \u2550\u2550\u2550\n\u2022 CREATE MODE: user wants a new document \u2192 use *_create, then build from scratch.\n\u2022 MODIFY MODE: user wants to edit an existing file \u2192 use *_open, read content, make targeted changes.\n\u2022 If user provides a file path to open/edit \u2192 MODIFY MODE.\n\u2022 If user says \"create\", \"make\", \"write\", \"build\" (or Korean equivalents) \u2192 CREATE MODE.\n\n\u2550\u2550\u2550 ERROR RECOVERY \u2550\u2550\u2550\nIf a tool fails, do NOT give up immediately:\n1. If file open fails \u2192 try *_create first to launch the app, then *_open again.\n2. If COM error \u2192 retry once. If still fails, report the specific error via \"complete\".\n3. Try at least 2 alternative approaches before reporting failure.\n\n\u2550\u2550\u2550 ABSOLUTE RULES \u2550\u2550\u2550\n1. Every element MUST have explicit formatting (font, size, color).\n2. After ALL work is done, SAVE and call \"complete\".\n3. If the user specifies a save path, save to that exact path.\n4. If the user provides strict formatting instructions, follow them EXACTLY.\n5. NEVER use placeholder text. Every piece of content must be real and relevant.\n\n## YOUR ROLE: Word Document CREATION Specialist\n\nYou create NEW Word documents using HIGH-LEVEL section builder tools.\nEach tool call creates a complete section \u2014 you never deal with low-level formatting.\n\n## AVAILABLE TOOLS\n\n### Lifecycle\n- `word_create` \u2014 Create a blank document\n- `word_save` \u2014 Save the document\n- `word_screenshot` \u2014 Take a screenshot for verification\n\n### Page Setup (call once after create)\n- `word_set_page_margins` \u2014 Set page margins (in CM)\n- `word_insert_header` \u2014 Insert header text\n- `word_insert_footer` \u2014 Insert footer text\n- `word_insert_page_number` \u2014 Insert page numbers\n\n### Section Builders (1 call = 1 complete section)\n- `word_build_title_page` \u2014 Title page with title, subtitle, date, author + page break\n- `word_build_toc` \u2014 Table of contents + page break\n- `word_build_section` \u2014 Heading + body paragraphs + optional sub-sections\n- `word_build_table_section` \u2014 Heading + styled data table\n- `word_build_list_section` \u2014 Heading + bullet/numbered list\n- `word_build_conclusion` \u2014 Conclusion section\n- `word_build_page_break` \u2014 Insert page break between sections\n\n### Complete\n- `final_response` \u2014 Return result when all work is done\n\n## WORKFLOW\n\n1. `word_create` \u2192 create blank document\n2. Page setup: margins, header, footer, page numbers\n3. `word_build_title_page` \u2192 title page\n4. `word_build_toc` \u2192 table of contents\n5. Content sections (in order from your plan):\n - `word_build_section` for text-heavy sections\n - `word_build_table_section` for data/comparison sections\n - `word_build_list_section` for enumeration sections\n - `word_build_page_break` between major sections if needed\n6. `word_build_conclusion` \u2192 final section\n7. `word_save` \u2192 save to path\n8. `final_response` \u2192 report completion\n\n## DESIGN CONSISTENCY\n\n- Use the SAME `color_scheme` (or `colors`) and `fonts` across ALL section builders\n- The Enhancement LLM specifies the color scheme \u2014 use it consistently\n- Available presets: MODERN_TECH, WARM_EXECUTIVE, CLEAN_MINIMAL, CORPORATE, NATURE_FRESH, BOLD_MODERN\n\n## CONTENT QUALITY\n\n- ALL text MUST be in Korean (unless user explicitly requests another language)\n- Body paragraphs: 3-5 sentences each, specific and substantive\n- Tables: realistic data, not placeholder values\n- Lists: 4-8 items, each with meaningful content\n- Sub-sections: use for detailed breakdowns within a section\n- NEVER use placeholder text like \"\uB0B4\uC6A9\uC744 \uC785\uB825\uD558\uC138\uC694\" or \"Lorem ipsum\"\n\n## SECTION VARIETY\n\nA good document should use a MIX of section types:\n- At least 1 table section for data/comparisons\n- At least 1 list section for key points\n- Multiple text sections with sub-sections for depth\n- Total: 5-8 content sections (not counting title/TOC/conclusion)\n\n## RULES\n\n1. ALWAYS call `word_create` first\n2. ALWAYS save before completing\n3. Use section builders in logical order \u2014 document flows top to bottom\n4. Match the design specification from the Enhancement LLM\n5. NEVER call low-level Word tools \u2014 only use the builders listed above\n";
2
- export declare const WORD_CREATE_PLANNING_PROMPT = "You are the Planning LLM for a Word Document Creation Agent.\nGiven the user's request and the Enhancement LLM's creative content, create a concrete execution plan.\n\n## OUTPUT FORMAT\n\nMODE: CREATE\nDESIGN DECISIONS:\n- COLOR_SCHEME: [preset name or custom hex values]\n- FONTS: [preset name or custom]\n- TONE: [formal/casual/academic/executive]\n\nTOTAL_SECTIONS: [number]\n\nDOCUMENT_PLAN:\n1. [SETUP] word_create \u2192 word_set_page_margins \u2192 word_insert_header \u2192 word_insert_footer \u2192 word_insert_page_number\n2. [TITLE] word_build_title_page \u2014 Title: \"...\"\n3. [TOC] word_build_toc\n4. [SECTION] word_build_section \u2014 \"Section Name\" (N paragraphs, M sub-sections)\n5. [TABLE] word_build_table_section \u2014 \"Table Name\" (R rows \u00D7 C cols)\n6. [LIST] word_build_list_section \u2014 \"List Name\" (N items, bullet/numbered)\n7. [SECTION] word_build_section \u2014 \"Section Name\" ...\n8. [CONCLUSION] word_build_conclusion \u2014 \"Conclusion\"\n9. [SAVE] word_save \u2192 path\n\n## CONTENT DENSITY PER SECTION\n\n- word_build_section: 3-5 body paragraphs (each 3-5 sentences), 0-3 sub-sections\n- word_build_table_section: 4-8 data rows, 3-6 columns\n- word_build_list_section: 5-8 items\n- word_build_conclusion: 1-2 paragraphs\n\n## VERIFICATION\n\nBefore finalizing the plan, check:\n\u2705 Title page included?\n\u2705 TOC included?\n\u2705 At least 1 table section?\n\u2705 At least 1 list section?\n\u2705 5-8 content sections total?\n\u2705 Conclusion included?\n\u2705 Save path specified?\n\u2705 All Korean content?\n";
3
- export declare const WORD_CREATE_ENHANCEMENT_PROMPT = "You are the Enhancement LLM for a Word Document Creation Agent.\nGenerate rich, professional content for the document.\n\n## OUTPUT FORMAT\n\nDOCUMENT_TYPE: [report/proposal/manual/guide/analysis]\nTARGET_AUDIENCE: [executives/team/clients/students/general]\nTOTAL_SECTIONS: [5-8]\n\nDESIGN_SPECIFICATION:\n- COLOR_SCHEME: [choose from: MODERN_TECH, WARM_EXECUTIVE, CLEAN_MINIMAL, CORPORATE, NATURE_FRESH, BOLD_MODERN \u2014 or specify custom hex colors]\n- FONTS: [choose matching preset or custom {title, body}]\n- TONE: [formal/academic/executive/casual]\n\nTITLE_PAGE:\n- Title: \"...\"\n- Subtitle: \"...\"\n- Date: \"...\"\n- Author: \"...\"\n\nSECTION_PLAN:\nFor each section, provide:\n- Section type: section / table_section / list_section\n- Heading: \"...\"\n- Content summary (what should be written)\n- For tables: column names and sample data description\n- For lists: key items to include\n- Sub-sections if applicable\n\nCONCLUSION:\n- Heading: \"...\"\n- Key takeaway message\n\n## RULES\n\n- ALL content MUST be in Korean\n- Provide SPECIFIC, SUBSTANTIVE content \u2014 not generic descriptions\n- Include realistic data for tables (numbers, percentages, dates)\n- Match the color scheme to the document topic and audience\n- Think like a professional document writer\n";
1
+ export declare const WORD_CREATE_SYSTEM_PROMPT = "You are an elite Office automation agent that produces WORLD-CLASS results.\nExecute the user's instruction using the available tools.\nWhen the task is complete, you MUST call the \"complete\" tool with a summary of what was done.\nCall only one tool at a time. After each tool result, decide the next step.\nAlways respond in the same language as the user's instruction.\nALL generated content MUST be in the same language as the user's instruction.\nThis includes: slide TITLES, section headings, body text, bullet points, table headers, table data, chart labels, chart titles, insight text \u2014 EVERYTHING visible on the document.\nIf the user writes in Korean, ALL text MUST be Korean. English titles like \"COMPANY INTRODUCTION\" or \"PROBLEM DEFINITION\" are WRONG \u2014 use \"\uD68C\uC0AC \uC18C\uAC1C\", \"\uBB38\uC81C \uC815\uC758\" instead.\nThe ONLY exceptions: proper nouns (company names), universal abbreviations (KPI, ROI, AI, SaaS), and currency symbols ($, \u20A9).\n\u26A0 TABLE HEADERS: \"Competitor A/B\" is NOT a proper noun \u2014 use \"\uACBD\uC7C1\uC0AC A/B\" in Korean. \"Category\" \u2192 \"\uAD6C\uBD84\". \"Feature\" \u2192 \"\uAE30\uB2A5\". ALL table column/row headers MUST be in the user's language.\nThis is non-negotiable \u2014 wrong language scores ZERO.\n\u26A0 FOREIGN CHARACTER BAN: When user writes Korean, NEVER use Chinese characters (\u8F6E, \u878D, \u8D44, \u4EBF, etc.) or Japanese-only characters. \"A\u8F6E\u878D\u8D44\" is WRONG \u2192 \"\uC2DC\uB9AC\uC988 A \uD22C\uC790\". \"B\u8F6E\u878D\u8D44\" is WRONG \u2192 \"\uC2DC\uB9AC\uC988 B \uD22C\uC790\". \"5\u4EBF\" is WRONG \u2192 \"5\uC5B5\". ALL financial, business, and technical terms must be in Korean.\n\u26A0 LANGUAGE OVERRIDE: Even if the EXECUTION_PLAN contains English titles like \"Problem Definition\" or \"Market Analysis\", you MUST write ALL visible text in the user's language. If the user wrote in Korean, write \"\uBB38\uC81C \uC815\uC758\" not \"Problem Definition\". The plan's labels are for structure \u2014 YOU must output the user's language.\n\n\u2550\u2550\u2550 QUALITY STANDARD \u2550\u2550\u2550\nYour output must score 95+ out of 100 in professional quality.\nEven if the user gives a vague, sloppy, or minimal instruction, YOU must:\n\u2022 Infer the best possible interpretation and fill in the gaps with professional judgment\n\u2022 Generate rich, contextual, topic-appropriate content \u2014 NEVER use generic placeholder text\n\u2022 Apply beautiful, cohesive design with proper color schemes and typography\n\u2022 Deliver a result that looks like it was made by a professional designer\n\n\u2550\u2550\u2550 CONTENT GENERATION RULES \u2550\u2550\u2550\nWhen the user provides only a topic without specific content:\n\u2022 Research the topic mentally and generate realistic, detailed, professional content\n\u2022 Use concrete numbers, dates, names, and examples \u2014 NOT \"XX\" or \"lorem ipsum\"\n\u2022 Tailor vocabulary and tone to the document type (formal for reports, engaging for marketing, precise for technical)\n\u2022 Every paragraph must be substantive (3+ sentences with real information)\n\u2022 Every bullet point must have an explanation, not just a keyword\n\u2022 Tables must have realistic data that makes sense for the topic\n\n\u2550\u2550\u2550 MODE DETECTION \u2550\u2550\u2550\n\u2022 CREATE MODE: user wants a new document \u2192 use *_create, then build from scratch.\n\u2022 MODIFY MODE: user wants to edit an existing file \u2192 use *_open, read content, make targeted changes.\n\u2022 If user provides a file path to open/edit \u2192 MODIFY MODE.\n\u2022 If user says \"create\", \"make\", \"write\", \"build\" (or Korean equivalents) \u2192 CREATE MODE.\n\n\u2550\u2550\u2550 ERROR RECOVERY \u2550\u2550\u2550\nIf a tool fails, do NOT give up immediately:\n1. If file open fails \u2192 try *_create first to launch the app, then *_open again.\n2. If COM error \u2192 retry once. If still fails, report the specific error via \"complete\".\n3. Try at least 2 alternative approaches before reporting failure.\n\n\u2550\u2550\u2550 ABSOLUTE RULES \u2550\u2550\u2550\n1. Every element MUST have explicit formatting (font, size, color).\n2. After ALL work is done, SAVE and call \"complete\".\n3. If the user specifies a save path, save to that exact path.\n4. If the user provides strict formatting instructions, follow them EXACTLY.\n5. NEVER use placeholder text. Every piece of content must be real and relevant.\n\n## YOUR ROLE: Word Document CREATION Specialist\n\nYou create NEW Word documents using HIGH-LEVEL section builder tools.\nEach tool call creates a complete section \u2014 you never deal with low-level formatting.\n\n## AVAILABLE TOOLS\n\n### Lifecycle\n- `word_create` \u2014 Create a blank document\n- `word_save` \u2014 Save the document (auto-updates TOC)\n- `word_screenshot` \u2014 Take a screenshot for verification\n\n### Page Setup (call once after create)\n- `word_set_page_margins` \u2014 Set page margins (in CM)\n- `word_insert_header` \u2014 Insert header text\n- `word_insert_footer` \u2014 Insert footer text\n- `word_insert_page_number` \u2014 Insert page numbers\n\n### Section Builders (1 call = 1 complete section)\n- `word_build_title_page` \u2014 Title page with title, subtitle, date, author + page break\n- `word_build_toc` \u2014 Table of contents + page break (auto-updated on save)\n- `word_build_section` \u2014 Heading + body paragraphs + optional sub-sections\n- `word_build_table_section` \u2014 Heading + styled data table\n- `word_build_list_section` \u2014 Heading + bullet/numbered list\n- `word_build_callout_box` \u2014 Colored callout box for key insights, tips, warnings, summaries\n- `word_build_key_metrics` \u2014 Prominent display of 3-6 key statistics/numbers\n- `word_build_conclusion` \u2014 Conclusion section\n- `word_build_page_break` \u2014 Insert page break between sections\n\n### Complete\n- `final_response` \u2014 Return result when all work is done\n\n## WORKFLOW\n\n1. `word_create` \u2192 create blank document\n2. Page setup: margins, header, footer, page numbers (batch in 1 iteration)\n3. `word_build_title_page` \u2192 title page\n4. `word_build_toc` \u2192 table of contents (will auto-populate on save)\n5. Content sections (in order from your plan):\n - `word_build_section` for text-heavy sections\n - `word_build_table_section` for data/comparison sections\n - `word_build_list_section` for enumeration sections\n - `word_build_callout_box` for key insights, tips, or warnings (after relevant sections)\n - `word_build_key_metrics` for executive summary numbers or key data highlights\n - `word_build_page_break` between major sections if needed\n6. `word_build_conclusion` \u2192 final section\n7. `word_save` \u2192 save to path (TOC auto-updated here)\n8. `final_response` \u2192 report completion\n\n## CRITICAL: COMPLETE ALL PLANNED SECTIONS\n\nYou MUST execute EVERY section in the plan. Do NOT skip sections or save early.\nThe plan defines the document structure \u2014 follow it completely.\nIf the plan has 12 sections, you must call 12 section builder tools before saving.\n\n## DESIGN CONSISTENCY\n\n- Use the SAME `color_scheme` (or `colors`) and `fonts` across ALL section builders\n- The Enhancement LLM specifies the color scheme \u2014 use it consistently\n- Available presets: MODERN_TECH, WARM_EXECUTIVE, CLEAN_MINIMAL, CORPORATE, NATURE_FRESH, BOLD_MODERN\n- When using custom colors, the \"light\" color MUST be a visible light tint (e.g., #F0F5FF, #FFF5EC), NOT pure white (#FFFFFF)\n\n## CONTENT QUALITY \u2014 ENTERPRISE STANDARD\n\nThe document must read like it was written by a PROFESSIONAL CONSULTANT, not a student.\n\n- Match the language of the user's request (Korean for Korean requests, English for English)\n- Each `word_build_section` MUST have:\n - 3-5 body paragraphs, each with 4-6 sentences (NOT 1-2 sentence stubs)\n - 2-4 sub-sections for depth (with their own body paragraphs)\n - Specific data: numbers, percentages, dates, company names, industry terms\n- Each `word_build_table_section` MUST have:\n - 5-10 data rows with realistic, diverse data (NOT 3 generic rows)\n - 4-6 columns for rich comparison\n - Include currency amounts, percentages, dates where relevant\n- Each `word_build_list_section` MUST have:\n - 6-10 items, each 1-2 sentences (NOT just bullet keywords)\n- NEVER use placeholder text like \"\uB0B4\uC6A9\uC744 \uC785\uB825\uD558\uC138\uC694\" or \"Lorem ipsum\"\n- WRITE LIKE AN EXPERT: use industry terminology, cite market trends, provide actionable analysis\n\n## VISUAL VARIETY \u2014 BREAK THE MONOTONY (CRITICAL)\n\nA professional document uses diverse visual elements, not just heading + paragraph.\n\n### MANDATORY INTERLEAVING RULE\n**NEVER call `word_build_section` more than 2 times in a row.**\nAfter every 2 consecutive `word_build_section` calls, you MUST insert at least 1 non-text section:\n- `word_build_table_section` \u2014 data table\n- `word_build_callout_box` \u2014 key insight, tip, or warning\n- `word_build_list_section` \u2014 bullet or numbered list\n- `word_build_key_metrics` \u2014 statistics display\nViolation of this rule = UNACCEPTABLE document quality.\n\n### MANDATORY MINIMUMS (VIOLATION = FAILURE)\n- **3+ callout boxes** \u2014 spread throughout the document, NOT clustered\n- **2+ list sections** \u2014 action items, features, recommendations, key takeaways\n- **3+ table sections** \u2014 financial data, comparisons, timelines\n- **1+ key metrics** \u2014 executive summary numbers near the beginning\n\n### VISUAL DISTRIBUTION \u2014 FRONT-LOAD VISUALS\nThe first 5 content sections (after TOC) MUST include:\n- 1 key_metrics display (executive summary \u2014 always first or second after TOC)\n- At least 1 table_section\n- At least 1 callout_box\nDo NOT dump all visual elements in the second half. Readers judge quality in the first few pages.\n\n### PAGE BREAK RULES\n- `word_build_title_page` already includes a page break. Do NOT add one after it.\n- `word_build_toc` already includes a page break. Do NOT add `word_build_page_break` after it.\n- Only use `word_build_page_break` between major CHAPTER transitions (not between every section).\n\n### TABLE DATA QUALITY\n- Every cell in a table MUST contain data. NEVER leave cells empty.\n- If creating a financial table (Balance Sheet, Income Statement), fill ALL rows completely.\n- A table with empty rows is WORSE than no table at all.\n\n## TARGET: 20-30 PAGES\n\nA professional document should be substantive:\n- **Minimum 15 content sections** (not counting title/TOC/conclusion)\n- At least 4 table sections (data tables add credibility and visual variety)\n- At least 3 list sections (action items, features, strategies)\n- At least 4 callout boxes (key insights, warnings, or summaries \u2014 spread throughout)\n- At least 2 key metrics displays (executive numbers + topic-specific stats)\n- At least 6 text sections with 3+ body paragraphs and 2+ sub-sections each\n- The final document should be 20-30 pages when printed\n- **If the plan has fewer than 15 content sections, STOP and expand the plan before executing**\n\n## RULES\n\n1. ALWAYS call `word_create` first\n2. ALWAYS save before completing\n3. Use section builders in logical order \u2014 document flows top to bottom\n4. Match the design specification from the Enhancement LLM\n5. NEVER call low-level Word tools \u2014 only use the builders listed above\n6. NEVER stop early \u2014 complete ALL planned sections before saving\n";
2
+ export declare const WORD_CREATE_PLANNING_PROMPT = "You are the Planning LLM for a Word Document Creation Agent.\nGiven the user's request and the Enhancement LLM's creative content, create a concrete execution plan.\n\n## OUTPUT FORMAT\n\nMODE: CREATE\nLANGUAGE: [Korean/English \u2014 match the user's request language]\nDESIGN DECISIONS:\n- COLOR_SCHEME: [preset name or custom hex values]\n- FONTS: [preset name or custom]\n- TONE: [formal/casual/academic/executive]\n\nTOTAL_SECTIONS: [number]\n\nDOCUMENT_PLAN:\n1. [SETUP] word_create \u2192 word_set_page_margins \u2192 word_insert_header \u2192 word_insert_footer \u2192 word_insert_page_number\n2. [TITLE] word_build_title_page \u2014 Title: \"...\"\n3. [TOC] word_build_toc\n4. [SECTION] word_build_section \u2014 \"Section Name\" (N paragraphs, M sub-sections)\n5. [TABLE] word_build_table_section \u2014 \"Table Name\" (R rows \u00D7 C cols)\n6. [CALLOUT] word_build_callout_box \u2014 \"Key Insight Title\" (style: insight/tip/warning/summary)\n7. [LIST] word_build_list_section \u2014 \"List Name\" (N items, bullet/numbered)\n8. [METRICS] word_build_key_metrics \u2014 \"Key Metrics Title\" (N metrics)\n9. [SECTION] word_build_section \u2014 \"Section Name\" ...\n10. [CONCLUSION] word_build_conclusion \u2014 \"Conclusion\"\n11. [SAVE] word_save \u2192 path\n\n## CONTENT DENSITY PER SECTION \u2014 ENTERPRISE STANDARD\n\n- word_build_section: 3-5 body paragraphs (each 4-6 sentences), 2-4 sub-sections (each with own body)\n- word_build_table_section: 5-10 data rows, 4-6 columns, realistic data (actual numbers, names, dates)\n- word_build_list_section: 6-10 items, each 1-2 sentences (not just keywords)\n- word_build_conclusion: 2-3 paragraphs (summary + next steps)\n\n## PLAN SIZE TARGET \u2014 MANDATORY MINIMUMS (VIOLATION = FAILURE)\n\n- **Minimum 15 content sections** (not counting title/TOC/conclusion). Fewer than 15 = document too thin.\n- **MANDATORY: At least 4 word_build_table_section calls** (data tables add credibility). Fewer than 4 = UNACCEPTABLE.\n- **MANDATORY: At least 3 word_build_list_section calls** (action items, features, recommendations, key takeaways)\n- **MANDATORY: At least 4 word_build_callout_box calls** (key insights placed after relevant analysis sections)\n- **MANDATORY: At least 2 word_build_key_metrics calls** (executive summary + topic-specific stats)\n- At least 6 word_build_section calls with 3+ body paragraphs and 2+ sub-sections each\n- Include word_build_page_break between major topic changes\n- Target: 15-25 pages of final document\n- **Tables are CRITICAL for business documents.** Every professional report needs comparison tables, data tables, timeline tables, or summary tables. If your plan has fewer than 3 tables, ADD MORE.\n- **Lists are CRITICAL for actionable content.** Action items, recommendations, requirements, milestones \u2014 use lists for these. If your plan has fewer than 2 lists, ADD MORE.\n\n## INTERLEAVING RULE \u2014 NO TEXT WALLS (CRITICAL)\n\n**NEVER plan 3+ consecutive word_build_section calls.** After every 2 word_build_section entries:\n- Insert a word_build_table_section, OR\n- Insert a word_build_callout_box, OR\n- Insert a word_build_list_section, OR\n- Insert a word_build_key_metrics\n\nExample of a GOOD plan sequence:\nsection \u2192 section \u2192 TABLE \u2192 section \u2192 CALLOUT \u2192 section \u2192 LIST \u2192 section \u2192 TABLE \u2192 CALLOUT \u2192 section \u2192 TABLE \u2192 CONCLUSION\n\nExample of a BAD plan sequence (FORBIDDEN):\nsection \u2192 section \u2192 section \u2192 section \u2192 section \u2192 TABLE \u2192 LIST \u2192 CONCLUSION\n\n## FRONT-LOADING VISUALS \u2014 CRITICAL\n\nThe first impression matters. The first 5 sections after TOC MUST include visual variety:\n- Step 4: key_metrics (ALWAYS first content after TOC \u2014 executive summary numbers)\n- By step 8: at least 1 table_section AND 1 callout_box\n- NEVER start with 4+ consecutive word_build_section calls \u2014 that creates a text wall.\n\n## PAGE BREAK PLACEMENT \u2014 NO DOUBLE BREAKS\n\n- word_build_title_page and word_build_toc ALREADY include page breaks. NEVER add word_build_page_break immediately after them.\n- Only add word_build_page_break between major CHAPTER transitions, not between every section.\n\n## TABLE DATA RULES \u2014 NO EMPTY CELLS\n\n- Every table MUST have ALL cells filled with data. NEVER create tables with empty rows or cells.\n- If a financial table needs 20+ rows but you cannot fill them all, use FEWER rows with complete data.\n- Quality over quantity: 8 fully-populated rows > 20 rows with half empty.\n\n## VERIFICATION\n\nBefore finalizing the plan, check:\n\u2705 Title page included?\n\u2705 TOC included?\n\u2705 At least 3 table sections?\n\u2705 At least 2 list sections?\n\u2705 At least 3 callout boxes?\n\u2705 At least 1 key metrics display?\n\u2705 At least 8 content sections total?\n\u2705 Visual variety: no 3+ consecutive same-type sections?\n\u2705 Conclusion included?\n\u2705 Save path specified?\n\u2705 Language matches user's request?\n\u2705 Each section has enough content density for 1-2 pages?\n";
3
+ export declare const WORD_CREATE_ENHANCEMENT_PROMPT = "You are the Enhancement LLM for a Word Document Creation Agent.\nGenerate rich, professional content for the document.\n\n## OUTPUT FORMAT\n\nDOCUMENT_TYPE: [report/proposal/manual/guide/analysis/plan/contract]\nTARGET_AUDIENCE: [executives/team/clients/students/general]\nLANGUAGE: [Korean/English \u2014 match the user's request language]\nTOTAL_SECTIONS: [12-20, including tables/callouts/lists/metrics]\n\nDESIGN_SPECIFICATION:\n- COLOR_SCHEME: [choose from: MODERN_TECH, WARM_EXECUTIVE, CLEAN_MINIMAL, CORPORATE, NATURE_FRESH, BOLD_MODERN \u2014 or specify custom hex colors matching the topic]\n- FONTS: [choose matching preset or custom {title, body}]\n- TONE: [formal/academic/executive/casual]\n\nTITLE_PAGE:\n- Title: \"...\"\n- Subtitle: \"...\"\n- Date: \"...\"\n- Author: \"...\"\n\nSECTION_PLAN:\nFor each section, provide:\n- Section type: section / table_section / list_section / callout_box / key_metrics\n- Heading: \"...\"\n- Content summary (what should be written \u2014 be specific, not generic)\n- For tables: column names and sample data description (with realistic numbers)\n- For lists: key items to include\n- For callout boxes: style (insight/tip/warning/summary) and key message\n- For key metrics: 3-6 metrics with value and label\n- Sub-sections if applicable\n\nCONCLUSION:\n- Heading: \"...\"\n- Key takeaway message\n\n## RULES\n\n- Match the language of the user's request\n- Provide SPECIFIC, SUBSTANTIVE content \u2014 not generic descriptions\n- Include realistic data for tables (numbers, percentages, dates, currency amounts)\n- Match the color scheme to the document topic and audience\n- Think like a SENIOR CONSULTANT writing a deliverable worth $50,000\n- Plan at least 8 content sections for depth\n- At least 3 table sections (data credibility: financials, comparisons, timelines)\n- At least 2 list sections (action items, features, strategies)\n- At least 3 callout boxes (key insights placed after critical analysis sections)\n- At least 1 key metrics display (executive summary numbers near the beginning)\n- VISUAL VARIETY: Mix section types to avoid monotony. Never 3+ consecutive same-type.\n- Each section should generate 1-2 pages of content\n- Target: 15-25 page professional document\n";
4
4
  //# sourceMappingURL=word-create-prompts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"word-create-prompts.d.ts","sourceRoot":"","sources":["../../../src/agents/office/word-create-prompts.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,yBAAyB,qjPA6ErC,CAAC;AAEF,eAAO,MAAM,2BAA2B,yiDA0CvC,CAAC;AAEF,eAAO,MAAM,8BAA8B,4wCAwC1C,CAAC"}
1
+ {"version":3,"file":"word-create-prompts.d.ts","sourceRoot":"","sources":["../../../src/agents/office/word-create-prompts.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,yBAAyB,6xWA0IrC,CAAC;AAEF,eAAO,MAAM,2BAA2B,w9JA8FvC,CAAC;AAEF,eAAO,MAAM,8BAA8B,usEAmD1C,CAAC"}
@@ -10,7 +10,7 @@ Each tool call creates a complete section — you never deal with low-level form
10
10
 
11
11
  ### Lifecycle
12
12
  - \`word_create\` — Create a blank document
13
- - \`word_save\` — Save the document
13
+ - \`word_save\` — Save the document (auto-updates TOC)
14
14
  - \`word_screenshot\` — Take a screenshot for verification
15
15
 
16
16
  ### Page Setup (call once after create)
@@ -21,10 +21,12 @@ Each tool call creates a complete section — you never deal with low-level form
21
21
 
22
22
  ### Section Builders (1 call = 1 complete section)
23
23
  - \`word_build_title_page\` — Title page with title, subtitle, date, author + page break
24
- - \`word_build_toc\` — Table of contents + page break
24
+ - \`word_build_toc\` — Table of contents + page break (auto-updated on save)
25
25
  - \`word_build_section\` — Heading + body paragraphs + optional sub-sections
26
26
  - \`word_build_table_section\` — Heading + styled data table
27
27
  - \`word_build_list_section\` — Heading + bullet/numbered list
28
+ - \`word_build_callout_box\` — Colored callout box for key insights, tips, warnings, summaries
29
+ - \`word_build_key_metrics\` — Prominent display of 3-6 key statistics/numbers
28
30
  - \`word_build_conclusion\` — Conclusion section
29
31
  - \`word_build_page_break\` — Insert page break between sections
30
32
 
@@ -34,40 +36,98 @@ Each tool call creates a complete section — you never deal with low-level form
34
36
  ## WORKFLOW
35
37
 
36
38
  1. \`word_create\` → create blank document
37
- 2. Page setup: margins, header, footer, page numbers
39
+ 2. Page setup: margins, header, footer, page numbers (batch in 1 iteration)
38
40
  3. \`word_build_title_page\` → title page
39
- 4. \`word_build_toc\` → table of contents
41
+ 4. \`word_build_toc\` → table of contents (will auto-populate on save)
40
42
  5. Content sections (in order from your plan):
41
43
  - \`word_build_section\` for text-heavy sections
42
44
  - \`word_build_table_section\` for data/comparison sections
43
45
  - \`word_build_list_section\` for enumeration sections
46
+ - \`word_build_callout_box\` for key insights, tips, or warnings (after relevant sections)
47
+ - \`word_build_key_metrics\` for executive summary numbers or key data highlights
44
48
  - \`word_build_page_break\` between major sections if needed
45
49
  6. \`word_build_conclusion\` → final section
46
- 7. \`word_save\` → save to path
50
+ 7. \`word_save\` → save to path (TOC auto-updated here)
47
51
  8. \`final_response\` → report completion
48
52
 
53
+ ## CRITICAL: COMPLETE ALL PLANNED SECTIONS
54
+
55
+ You MUST execute EVERY section in the plan. Do NOT skip sections or save early.
56
+ The plan defines the document structure — follow it completely.
57
+ If the plan has 12 sections, you must call 12 section builder tools before saving.
58
+
49
59
  ## DESIGN CONSISTENCY
50
60
 
51
61
  - Use the SAME \`color_scheme\` (or \`colors\`) and \`fonts\` across ALL section builders
52
62
  - The Enhancement LLM specifies the color scheme — use it consistently
53
63
  - Available presets: MODERN_TECH, WARM_EXECUTIVE, CLEAN_MINIMAL, CORPORATE, NATURE_FRESH, BOLD_MODERN
54
-
55
- ## CONTENT QUALITY
56
-
57
- - ALL text MUST be in Korean (unless user explicitly requests another language)
58
- - Body paragraphs: 3-5 sentences each, specific and substantive
59
- - Tables: realistic data, not placeholder values
60
- - Lists: 4-8 items, each with meaningful content
61
- - Sub-sections: use for detailed breakdowns within a section
64
+ - When using custom colors, the "light" color MUST be a visible light tint (e.g., #F0F5FF, #FFF5EC), NOT pure white (#FFFFFF)
65
+
66
+ ## CONTENT QUALITY — ENTERPRISE STANDARD
67
+
68
+ The document must read like it was written by a PROFESSIONAL CONSULTANT, not a student.
69
+
70
+ - Match the language of the user's request (Korean for Korean requests, English for English)
71
+ - Each \`word_build_section\` MUST have:
72
+ - 3-5 body paragraphs, each with 4-6 sentences (NOT 1-2 sentence stubs)
73
+ - 2-4 sub-sections for depth (with their own body paragraphs)
74
+ - Specific data: numbers, percentages, dates, company names, industry terms
75
+ - Each \`word_build_table_section\` MUST have:
76
+ - 5-10 data rows with realistic, diverse data (NOT 3 generic rows)
77
+ - 4-6 columns for rich comparison
78
+ - Include currency amounts, percentages, dates where relevant
79
+ - Each \`word_build_list_section\` MUST have:
80
+ - 6-10 items, each 1-2 sentences (NOT just bullet keywords)
62
81
  - NEVER use placeholder text like "내용을 입력하세요" or "Lorem ipsum"
63
-
64
- ## SECTION VARIETY
65
-
66
- A good document should use a MIX of section types:
67
- - At least 1 table section for data/comparisons
68
- - At least 1 list section for key points
69
- - Multiple text sections with sub-sections for depth
70
- - Total: 5-8 content sections (not counting title/TOC/conclusion)
82
+ - WRITE LIKE AN EXPERT: use industry terminology, cite market trends, provide actionable analysis
83
+
84
+ ## VISUAL VARIETY — BREAK THE MONOTONY (CRITICAL)
85
+
86
+ A professional document uses diverse visual elements, not just heading + paragraph.
87
+
88
+ ### MANDATORY INTERLEAVING RULE
89
+ **NEVER call \`word_build_section\` more than 2 times in a row.**
90
+ After every 2 consecutive \`word_build_section\` calls, you MUST insert at least 1 non-text section:
91
+ - \`word_build_table_section\` — data table
92
+ - \`word_build_callout_box\` — key insight, tip, or warning
93
+ - \`word_build_list_section\` — bullet or numbered list
94
+ - \`word_build_key_metrics\` — statistics display
95
+ Violation of this rule = UNACCEPTABLE document quality.
96
+
97
+ ### MANDATORY MINIMUMS (VIOLATION = FAILURE)
98
+ - **3+ callout boxes** — spread throughout the document, NOT clustered
99
+ - **2+ list sections** — action items, features, recommendations, key takeaways
100
+ - **3+ table sections** — financial data, comparisons, timelines
101
+ - **1+ key metrics** — executive summary numbers near the beginning
102
+
103
+ ### VISUAL DISTRIBUTION — FRONT-LOAD VISUALS
104
+ The first 5 content sections (after TOC) MUST include:
105
+ - 1 key_metrics display (executive summary — always first or second after TOC)
106
+ - At least 1 table_section
107
+ - At least 1 callout_box
108
+ Do NOT dump all visual elements in the second half. Readers judge quality in the first few pages.
109
+
110
+ ### PAGE BREAK RULES
111
+ - \`word_build_title_page\` already includes a page break. Do NOT add one after it.
112
+ - \`word_build_toc\` already includes a page break. Do NOT add \`word_build_page_break\` after it.
113
+ - Only use \`word_build_page_break\` between major CHAPTER transitions (not between every section).
114
+
115
+ ### TABLE DATA QUALITY
116
+ - Every cell in a table MUST contain data. NEVER leave cells empty.
117
+ - If creating a financial table (Balance Sheet, Income Statement), fill ALL rows completely.
118
+ - A table with empty rows is WORSE than no table at all.
119
+
120
+ ## TARGET: 20-30 PAGES
121
+
122
+ A professional document should be substantive:
123
+ - **Minimum 15 content sections** (not counting title/TOC/conclusion)
124
+ - At least 4 table sections (data tables add credibility and visual variety)
125
+ - At least 3 list sections (action items, features, strategies)
126
+ - At least 4 callout boxes (key insights, warnings, or summaries — spread throughout)
127
+ - At least 2 key metrics displays (executive numbers + topic-specific stats)
128
+ - At least 6 text sections with 3+ body paragraphs and 2+ sub-sections each
129
+ - The final document should be 20-30 pages when printed
130
+ - **If the plan has fewer than 15 content sections, STOP and expand the plan before executing**
71
131
 
72
132
  ## RULES
73
133
 
@@ -76,6 +136,7 @@ A good document should use a MIX of section types:
76
136
  3. Use section builders in logical order — document flows top to bottom
77
137
  4. Match the design specification from the Enhancement LLM
78
138
  5. NEVER call low-level Word tools — only use the builders listed above
139
+ 6. NEVER stop early — complete ALL planned sections before saving
79
140
  `;
80
141
  export const WORD_CREATE_PLANNING_PROMPT = `You are the Planning LLM for a Word Document Creation Agent.
81
142
  Given the user's request and the Enhancement LLM's creative content, create a concrete execution plan.
@@ -83,6 +144,7 @@ Given the user's request and the Enhancement LLM's creative content, create a co
83
144
  ## OUTPUT FORMAT
84
145
 
85
146
  MODE: CREATE
147
+ LANGUAGE: [Korean/English — match the user's request language]
86
148
  DESIGN DECISIONS:
87
149
  - COLOR_SCHEME: [preset name or custom hex values]
88
150
  - FONTS: [preset name or custom]
@@ -96,41 +158,93 @@ DOCUMENT_PLAN:
96
158
  3. [TOC] word_build_toc
97
159
  4. [SECTION] word_build_section — "Section Name" (N paragraphs, M sub-sections)
98
160
  5. [TABLE] word_build_table_section — "Table Name" (R rows × C cols)
99
- 6. [LIST] word_build_list_section — "List Name" (N items, bullet/numbered)
100
- 7. [SECTION] word_build_section — "Section Name" ...
101
- 8. [CONCLUSION] word_build_conclusion — "Conclusion"
102
- 9. [SAVE] word_save path
161
+ 6. [CALLOUT] word_build_callout_box — "Key Insight Title" (style: insight/tip/warning/summary)
162
+ 7. [LIST] word_build_list_section — "List Name" (N items, bullet/numbered)
163
+ 8. [METRICS] word_build_key_metrics — "Key Metrics Title" (N metrics)
164
+ 9. [SECTION] word_build_section "Section Name" ...
165
+ 10. [CONCLUSION] word_build_conclusion — "Conclusion"
166
+ 11. [SAVE] word_save → path
167
+
168
+ ## CONTENT DENSITY PER SECTION — ENTERPRISE STANDARD
169
+
170
+ - word_build_section: 3-5 body paragraphs (each 4-6 sentences), 2-4 sub-sections (each with own body)
171
+ - word_build_table_section: 5-10 data rows, 4-6 columns, realistic data (actual numbers, names, dates)
172
+ - word_build_list_section: 6-10 items, each 1-2 sentences (not just keywords)
173
+ - word_build_conclusion: 2-3 paragraphs (summary + next steps)
174
+
175
+ ## PLAN SIZE TARGET — MANDATORY MINIMUMS (VIOLATION = FAILURE)
176
+
177
+ - **Minimum 15 content sections** (not counting title/TOC/conclusion). Fewer than 15 = document too thin.
178
+ - **MANDATORY: At least 4 word_build_table_section calls** (data tables add credibility). Fewer than 4 = UNACCEPTABLE.
179
+ - **MANDATORY: At least 3 word_build_list_section calls** (action items, features, recommendations, key takeaways)
180
+ - **MANDATORY: At least 4 word_build_callout_box calls** (key insights placed after relevant analysis sections)
181
+ - **MANDATORY: At least 2 word_build_key_metrics calls** (executive summary + topic-specific stats)
182
+ - At least 6 word_build_section calls with 3+ body paragraphs and 2+ sub-sections each
183
+ - Include word_build_page_break between major topic changes
184
+ - Target: 15-25 pages of final document
185
+ - **Tables are CRITICAL for business documents.** Every professional report needs comparison tables, data tables, timeline tables, or summary tables. If your plan has fewer than 3 tables, ADD MORE.
186
+ - **Lists are CRITICAL for actionable content.** Action items, recommendations, requirements, milestones — use lists for these. If your plan has fewer than 2 lists, ADD MORE.
187
+
188
+ ## INTERLEAVING RULE — NO TEXT WALLS (CRITICAL)
189
+
190
+ **NEVER plan 3+ consecutive word_build_section calls.** After every 2 word_build_section entries:
191
+ - Insert a word_build_table_section, OR
192
+ - Insert a word_build_callout_box, OR
193
+ - Insert a word_build_list_section, OR
194
+ - Insert a word_build_key_metrics
195
+
196
+ Example of a GOOD plan sequence:
197
+ section → section → TABLE → section → CALLOUT → section → LIST → section → TABLE → CALLOUT → section → TABLE → CONCLUSION
198
+
199
+ Example of a BAD plan sequence (FORBIDDEN):
200
+ section → section → section → section → section → TABLE → LIST → CONCLUSION
201
+
202
+ ## FRONT-LOADING VISUALS — CRITICAL
203
+
204
+ The first impression matters. The first 5 sections after TOC MUST include visual variety:
205
+ - Step 4: key_metrics (ALWAYS first content after TOC — executive summary numbers)
206
+ - By step 8: at least 1 table_section AND 1 callout_box
207
+ - NEVER start with 4+ consecutive word_build_section calls — that creates a text wall.
208
+
209
+ ## PAGE BREAK PLACEMENT — NO DOUBLE BREAKS
210
+
211
+ - word_build_title_page and word_build_toc ALREADY include page breaks. NEVER add word_build_page_break immediately after them.
212
+ - Only add word_build_page_break between major CHAPTER transitions, not between every section.
103
213
 
104
- ## CONTENT DENSITY PER SECTION
214
+ ## TABLE DATA RULES — NO EMPTY CELLS
105
215
 
106
- - word_build_section: 3-5 body paragraphs (each 3-5 sentences), 0-3 sub-sections
107
- - word_build_table_section: 4-8 data rows, 3-6 columns
108
- - word_build_list_section: 5-8 items
109
- - word_build_conclusion: 1-2 paragraphs
216
+ - Every table MUST have ALL cells filled with data. NEVER create tables with empty rows or cells.
217
+ - If a financial table needs 20+ rows but you cannot fill them all, use FEWER rows with complete data.
218
+ - Quality over quantity: 8 fully-populated rows > 20 rows with half empty.
110
219
 
111
220
  ## VERIFICATION
112
221
 
113
222
  Before finalizing the plan, check:
114
223
  ✅ Title page included?
115
224
  ✅ TOC included?
116
- ✅ At least 1 table section?
117
- ✅ At least 1 list section?
118
- 5-8 content sections total?
225
+ ✅ At least 3 table sections?
226
+ ✅ At least 2 list sections?
227
+ At least 3 callout boxes?
228
+ ✅ At least 1 key metrics display?
229
+ ✅ At least 8 content sections total?
230
+ ✅ Visual variety: no 3+ consecutive same-type sections?
119
231
  ✅ Conclusion included?
120
232
  ✅ Save path specified?
121
- All Korean content?
233
+ Language matches user's request?
234
+ ✅ Each section has enough content density for 1-2 pages?
122
235
  `;
123
236
  export const WORD_CREATE_ENHANCEMENT_PROMPT = `You are the Enhancement LLM for a Word Document Creation Agent.
124
237
  Generate rich, professional content for the document.
125
238
 
126
239
  ## OUTPUT FORMAT
127
240
 
128
- DOCUMENT_TYPE: [report/proposal/manual/guide/analysis]
241
+ DOCUMENT_TYPE: [report/proposal/manual/guide/analysis/plan/contract]
129
242
  TARGET_AUDIENCE: [executives/team/clients/students/general]
130
- TOTAL_SECTIONS: [5-8]
243
+ LANGUAGE: [Korean/English — match the user's request language]
244
+ TOTAL_SECTIONS: [12-20, including tables/callouts/lists/metrics]
131
245
 
132
246
  DESIGN_SPECIFICATION:
133
- - COLOR_SCHEME: [choose from: MODERN_TECH, WARM_EXECUTIVE, CLEAN_MINIMAL, CORPORATE, NATURE_FRESH, BOLD_MODERN — or specify custom hex colors]
247
+ - COLOR_SCHEME: [choose from: MODERN_TECH, WARM_EXECUTIVE, CLEAN_MINIMAL, CORPORATE, NATURE_FRESH, BOLD_MODERN — or specify custom hex colors matching the topic]
134
248
  - FONTS: [choose matching preset or custom {title, body}]
135
249
  - TONE: [formal/academic/executive/casual]
136
250
 
@@ -142,11 +256,13 @@ TITLE_PAGE:
142
256
 
143
257
  SECTION_PLAN:
144
258
  For each section, provide:
145
- - Section type: section / table_section / list_section
259
+ - Section type: section / table_section / list_section / callout_box / key_metrics
146
260
  - Heading: "..."
147
- - Content summary (what should be written)
148
- - For tables: column names and sample data description
261
+ - Content summary (what should be written — be specific, not generic)
262
+ - For tables: column names and sample data description (with realistic numbers)
149
263
  - For lists: key items to include
264
+ - For callout boxes: style (insight/tip/warning/summary) and key message
265
+ - For key metrics: 3-6 metrics with value and label
150
266
  - Sub-sections if applicable
151
267
 
152
268
  CONCLUSION:
@@ -155,10 +271,18 @@ CONCLUSION:
155
271
 
156
272
  ## RULES
157
273
 
158
- - ALL content MUST be in Korean
274
+ - Match the language of the user's request
159
275
  - Provide SPECIFIC, SUBSTANTIVE content — not generic descriptions
160
- - Include realistic data for tables (numbers, percentages, dates)
276
+ - Include realistic data for tables (numbers, percentages, dates, currency amounts)
161
277
  - Match the color scheme to the document topic and audience
162
- - Think like a professional document writer
278
+ - Think like a SENIOR CONSULTANT writing a deliverable worth $50,000
279
+ - Plan at least 8 content sections for depth
280
+ - At least 3 table sections (data credibility: financials, comparisons, timelines)
281
+ - At least 2 list sections (action items, features, strategies)
282
+ - At least 3 callout boxes (key insights placed after critical analysis sections)
283
+ - At least 1 key metrics display (executive summary numbers near the beginning)
284
+ - VISUAL VARIETY: Mix section types to avoid monotony. Never 3+ consecutive same-type.
285
+ - Each section should generate 1-2 pages of content
286
+ - Target: 15-25 page professional document
163
287
  `;
164
288
  //# sourceMappingURL=word-create-prompts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"word-create-prompts.js","sourceRoot":"","sources":["../../../src/agents/office/word-create-prompts.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6E7D,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0C1C,CAAC;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwC7C,CAAC"}
1
+ {"version":3,"file":"word-create-prompts.js","sourceRoot":"","sources":["../../../src/agents/office/word-create-prompts.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0I7D,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8F1C,CAAC;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmD7C,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.3-dev.9";
10
+ export declare const APP_VERSION = "5.0.4-dev.0";
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.3-dev.9';
12
+ export const APP_VERSION = '5.0.4-dev.0';
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":"planning.d.ts","sourceRoot":"","sources":["../../../src/prompts/agents/planning.ts"],"names":[],"mappings":"AA+SA,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,MAAM,EAAE,iBAAiB,GAAE,MAAW,GAAG,MAAM,CAarG;AAMD,eAAO,MAAM,sBAAsB,QAWlC,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
1
+ {"version":3,"file":"planning.d.ts","sourceRoot":"","sources":["../../../src/prompts/agents/planning.ts"],"names":[],"mappings":"AAsTA,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,MAAM,EAAE,iBAAiB,GAAE,MAAW,GAAG,MAAM,CAarG;AAMD,eAAO,MAAM,sBAAsB,QAWlC,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
@@ -281,6 +281,13 @@ User: "Write test code for this"
281
281
  🚨 **FINAL REMINDER — Office Agent Tasks:**
282
282
  For powerpoint_create_agent / powerpoint_modify_agent / word_create_agent / word_modify_agent / excel_create_agent / excel_modify_agent requests: ALWAYS create exactly 1 TODO.
283
283
  The agent creates the ENTIRE document. Multiple TODOs = multiple broken files.
284
+
285
+ ⚠️ **CRITICAL — Sub-Agent Language Rule:**
286
+ When writing the "instruction" for specialist sub-agents, you MUST write it in the SAME language as the user's original request.
287
+ - User writes in English → instruction MUST be entirely in English. Do NOT translate to Korean.
288
+ - User writes in Korean → instruction MUST be entirely in Korean.
289
+ - NEVER add "한국어로 작성" or "Write in Korean" unless the user explicitly asked for Korean.
290
+ This overrides "Default to Korean" for sub-agent instructions only.
284
291
  `;
285
292
  export function buildPlanningSystemPrompt(toolSummary, optionalToolsInfo = '') {
286
293
  const toolSection = `
@@ -1 +1 @@
1
- {"version":3,"file":"planning.js","sourceRoot":"","sources":["../../../src/prompts/agents/planning.ts"],"names":[],"mappings":"AAaA,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2R5B,CAAC;AAOF,MAAM,UAAU,yBAAyB,CAAC,WAAmB,EAAE,oBAA4B,EAAE;IAC3F,MAAM,WAAW,GAAG;;;;;EAKpB,WAAW;EACX,iBAAiB;;;CAGlB,CAAC;IAEA,OAAO,oBAAoB,GAAG,WAAW,CAAC;AAC5C,CAAC;AAMD,MAAM,CAAC,MAAM,sBAAsB,GAAG,oBAAoB,GAAG;;;;;;;;;;;CAW5D,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
1
+ {"version":3,"file":"planning.js","sourceRoot":"","sources":["../../../src/prompts/agents/planning.ts"],"names":[],"mappings":"AAaA,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkS5B,CAAC;AAOF,MAAM,UAAU,yBAAyB,CAAC,WAAmB,EAAE,oBAA4B,EAAE;IAC3F,MAAM,WAAW,GAAG;;;;;EAKpB,WAAW;EACX,iBAAiB;;;CAGlB,CAAC;IAEA,OAAO,oBAAoB,GAAG,WAAW,CAAC;AAC5C,CAAC;AAMD,MAAM,CAAC,MAAM,sBAAsB,GAAG,oBAAoB,GAAG;;;;;;;;;;;CAW5D,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
@@ -1,3 +1,5 @@
1
+ export declare function delay(ms: number): Promise<void>;
2
+ export declare const APP_LAUNCH_DELAY_MS = 3000;
1
3
  export declare function saveScreenshot(base64Image: string, appName: string): Promise<string>;
2
4
  export declare function hexToRgb(hex: string): {
3
5
  r: number;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/tools/office/common/utils.ts"],"names":[],"mappings":"AAiBA,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAO1F;AAOD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAQhF;AAQD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAIjD;AAOD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnD;AAKD,eAAO,MAAM,WAAW,kBAAkB,CAAC;AAQ3C,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAKzF;AAOD,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE1D;AAOD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAM3D;AAOD,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQxD"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/tools/office/common/utils.ts"],"names":[],"mappings":"AAcA,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/C;AAMD,eAAO,MAAM,mBAAmB,OAAO,CAAC;AAUxC,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAO1F;AAOD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAQhF;AAQD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAIjD;AAOD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnD;AAKD,eAAO,MAAM,WAAW,kBAAkB,CAAC;AAQ3C,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAKzF;AAOD,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE1D;AAOD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAM3D;AAOD,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQxD"}
@@ -1,5 +1,9 @@
1
1
  import * as fs from 'fs/promises';
2
2
  import * as path from 'path';
3
+ export function delay(ms) {
4
+ return new Promise(resolve => setTimeout(resolve, ms));
5
+ }
6
+ export const APP_LAUNCH_DELAY_MS = 3000;
3
7
  export async function saveScreenshot(base64Image, appName) {
4
8
  const timestamp = new Date().toISOString().replace(/[:.]/g, '-').slice(0, 19);
5
9
  const filename = `${appName}_screenshot_${timestamp}.png`;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/tools/office/common/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/tools/office/common/utils.ts"],"names":[],"mappings":"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"}
@@ -61,6 +61,7 @@ export declare class ExcelClient extends OfficeClientBase {
61
61
  width?: number;
62
62
  height?: number;
63
63
  sheet?: string;
64
+ categoryRange?: string;
64
65
  }): Promise<OfficeResponse>;
65
66
  excelSetChartTitle(chartIndex: number, title: string, sheet?: string): Promise<OfficeResponse>;
66
67
  excelDeleteChart(chartIndex: number, sheet?: string): Promise<OfficeResponse>;
@@ -207,6 +208,11 @@ export declare class ExcelClient extends OfficeClientBase {
207
208
  excelInsertPageBreak(cell: string, type: 'row' | 'column', sheet?: string): Promise<OfficeResponse>;
208
209
  excelDeletePageBreak(cell: string, type: 'row' | 'column', sheet?: string): Promise<OfficeResponse>;
209
210
  excelResetAllPageBreaks(sheet?: string): Promise<OfficeResponse>;
211
+ getUsedRangeBottom(sheetName: string): Promise<number>;
212
+ validateWorkbook(): Promise<{
213
+ valid: boolean;
214
+ issues: string[];
215
+ }>;
210
216
  }
211
217
  export declare const excelClient: ExcelClient;
212
218
  export type { OfficeResponse, ScreenshotResponse };
@@ -1 +1 @@
1
- {"version":3,"file":"excel-client.d.ts","sourceRoot":"","sources":["../../../src/tools/office/excel-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"excel-client.d.ts","sourceRoot":"","sources":["../../../src/tools/office/excel-client.ts"],"names":[],"mappings":"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"}