Skill v1.0.2
currentAutomated scan100/10014 files
version: "1.0.2" name: file-generator description: Generate downloadable files from provided content, including basic exports, SVG files, styled DOCX documents, HTML-rendered PDFs, and static editable PPTX decks. when_to_use: Use this skill when the user asks to create, export, save, download, or produce a file such as TXT, Markdown, HTML, JSON, CSV, SVG, DOCX, XLSX, PDF, or PPTX. provider_type: builtin provider_id: file_generator runtime_type: tool tools:
- generate_file
- generate_docx
- generate_pdf
- generate_pptx
supported_callers:
- aichat
- agent
- workflow
max_calls_per_turn: 5 timeout_seconds: 60 tool_governance: generate_file: tool_id: file.generate skill_id: file-generator domain: files effect: create asset_type: file risk_level: medium requires_asset_resolution: false reversible: true bulk_sensitive: false external_side_effect: false permission_scopes:
- file:create
default_approval_policy: never_ask allowed_permission_tiers:
- basic
- advanced
- full
audit_required: true idempotency_required: false generate_docx: tool_id: file.generate_docx skill_id: file-generator domain: files effect: create asset_type: file risk_level: medium requires_asset_resolution: false reversible: true bulk_sensitive: false external_side_effect: false permission_scopes:
- file:create
default_approval_policy: never_ask allowed_permission_tiers:
- basic
- advanced
- full
audit_required: true idempotency_required: false generate_pdf: tool_id: file.generate_pdf skill_id: file-generator domain: files effect: create asset_type: file risk_level: medium requires_asset_resolution: false reversible: true bulk_sensitive: false external_side_effect: false permission_scopes:
- file:create
default_approval_policy: never_ask allowed_permission_tiers:
- basic
- advanced
- full
audit_required: true idempotency_required: false generate_pptx: tool_id: file.generate_pptx skill_id: file-generator domain: files effect: create asset_type: file risk_level: medium requires_asset_resolution: false reversible: true bulk_sensitive: false external_side_effect: false permission_scopes:
- file:create
default_approval_policy: never_ask allowed_permission_tiers:
- basic
- advanced
- full
audit_required: true idempotency_required: false display: icon: file-plus-2 category: document_processing scenarios:
- document_handling
- office_collaboration
- content_creation
label: en_US: File Generator zh_Hans: 文件生成器 description: en_US: Designed for delivering results as downloadable files; turns prepared content into TXT, Markdown, HTML, JSON, CSV, SVG, DOCX, XLSX, PDF, or PPTX documents. zh_Hans: 适用于将结果作为文件交付,可把已准备好的内容生成 TXT、Markdown、HTML、JSON、CSV、SVG、DOCX、XLSX、PDF 或 PPTX 文件。 when_to_use: en_US: Use when the answer should be delivered as a generated file. zh_Hans: 当回答需要以生成文件交付时启用。 tags: en_US:
- File
- Export
zh_Hans:
- 文件
- 导出
File Generator Skill
Use this skill when the user wants an answer delivered as a downloadable file artifact. This skill creates new workflow files; it does not edit an existing uploaded file.
Workflow
- Decide the target file format from the user's request.
- If the user did not specify a format, choose the most appropriate supported format:
- Use
mdfor reports, notes, plans, structured prose, and documentation drafts. - Use
docxonly when the user explicitly asks for Word, DOCX, an editable Word document, or Word-specific rich formatting. - Use
xlsxwhen the user explicitly asks for Excel or a spreadsheet workbook. Provide valid CSV content. - Use
pdfwhen the user explicitly asks for PDF or a simple read-only distribution file. - Use
pptxwhen the user explicitly asks for PowerPoint, slides, a deck, or an editable presentation. - Use
txtfor plain text without formatting. - Use
htmlfor runnable HTML pages or previewable web documents. - Use
svgwhen the user explicitly asks for an SVG/vector image file. - Use
jsonfor machine-readable structured data. - Use
csvfor table-like data.
- For PDF, DOCX, PPTX, XLSX, and SVG, read the selected format reference before calling a tool. For MD, TXT, JSON, CSV, and HTML, the tool schema and this core skill are sufficient unless advanced format details are needed.
- Use
generate_filefor simple exports. - Use
generate_docxwhen a Word document needs headings, fonts, font sizes, alignment, spacing, page margins, page breaks, colored/bold/underlined text, or simple tables. - Use
generate_pdfwhen a PDF needs richer layout, print CSS, tables, colors, page margins, page breaks, or business-report formatting. - Use
generate_pptxwhen the user needs an editable static PowerPoint deck. - For PPTX, plan the slide layout before writing JSON. Use non-overlapping boxes for titles, text, and tables. Split dense content into more slides instead of shrinking text or stacking elements.
- For PPTX with Chinese or other dense text, treat "more text" as more slides, not denser text boxes. Keep body paragraphs short; use bullets, columns, or additional slides before exceeding the readable capacity of a box.
- Before calling
generate_pptx, self-check that each slide's readable content fits within the slide bounds, does not overlap, uses explicitx,y,w, andhwhen the layout matters, and avoids long unbroken lines. - Always create a temporary downloadable artifact. This skill does not write generated output into File Management.
- If the user explicitly asks to save, create, upload, add, or import the generated result into File Management or the current Files page, first generate the artifact here, then use
file-manager/save_file_to_managementwith the returnedtool_file_id/file_idand destination filename. - For file-first requests, put the complete body directly in the generation tool call. Do not first emit the same complete body through
submit_intermediate_answer. Only show the complete body in chat as well when the user explicitly asks to see both the chat text and the file. - In the final answer, briefly mention the generated filename and format.
- Do not invent, rewrite, shorten, or manually format download links. The system UI displays generated file download controls from structured artifact events.
- A generic request for a "file" or "document" does not imply Word. When the content is structured prose and no format is specified, use
generate_filewithmd; usetxtonly when formatting is unnecessary. - If a generation call fails schema validation, correct the selected tool's arguments and retry it at most once. Do not switch to another format-specific tool merely to bypass a missing required argument.
References
Read exactly one reference after choosing a complex target format. References for MD, TXT, JSON, CSV, and HTML are optional and should be read only when the request needs format-specific details:
| Requested format | Read reference | |
|---|---|---|
txt, text | format-txt.md | |
md, markdown | format-md.md | |
html, htm | format-html.md | |
json | format-json.md | |
csv | format-csv.md | |
svg | format-svg.md | |
simple docx, word | format-docx.md | |
styled docx, word | format-docx-rich.md | |
xlsx, excel | format-xlsx.md | |
simple pdf | format-pdf.md | |
HTML-rendered pdf | format-pdf-html.md | |
pptx, powerpoint, presentation, slides | format-pptx.md |
Constraints
- The skill creates new files only. It does not edit existing uploaded files or preserve an existing template.
- Do not call
generate_docx,generate_pdf,generate_pptx, or complexgenerate_fileformats (XLSX or SVG) until the selected format reference has been read. MD, TXT, JSON, CSV, and HTML generation may proceed directly from the core skill and tool schema. generate_fileaccepts only its documented simple parameters. Do not invent format-specific parameters such assheets,styles,pages,columns,headers, ormetadata. XLSX output applies the default table styling documented informat-xlsx.md; the caller cannot customize those styles throughgenerate_file.generate_docxaccepts a JSON string document specification. Do not pass raw Markdown or HTML asdocument.- Do not call
generate_docxunless the user explicitly requested Word/DOCX, an editable Word document, or Word-specific rich formatting. A generic request to "write this as a file/document" should usegenerate_filewithmd(ortxtfor plain text). generate_pdfaccepts self-contained HTML and optional inline CSS. Do not pass JSON document specs.generate_pptxaccepts a JSON string presentation specification. Do not pass HTML or Markdown aspresentation.- PPTX readable content should not use negative coordinates. Negative
xoryis only appropriate for decorative shapes that intentionally bleed off an edge. - Generated file content must fit within the backend file size limit.
- Do not include filesystem paths in filenames.
- Do not claim a file was generated unless the tool call succeeded.
- Treat the generated tool result as authoritative. A generated file is successful only when the result includes a file identity such as
file_idortool_file_id, plus a filename/format or an equivalent artifact record. - If the generation tool fails or returns no artifact identity, do not say the file was generated. Explain the actual failure or missing confirmation.
- Retry at most once with corrected content or arguments when the tool error is recoverable. Do not repeat the same generation call with identical arguments after a failure.
- If the user asks for advanced document features that the selected reference says are unsupported, generate the closest supported file only when that still satisfies the request.
Tool Usage
generate_file accepts:
content: text content to write into the file.format:txt,md,html,json,csv,svg,docx,xlsx, orpdf.filename: optional display filename. The extension is added automatically.title: optional title used by generated HTML, XLSX, and PDF files. For XLSX, this becomes a merged title row above the table.lifecycle: optional temporary artifact lifecycle,persistentortemporary. Defaults totemporary.
generate_docx accepts:
document: JSON string describing the styled DOCX document.filename: optional display filename. The.docxextension is added automatically.title: optional title hint. Visible content must be indocument.blocks.lifecycle: optional temporary artifact lifecycle,persistentortemporary. Defaults totemporary.
generate_pdf accepts:
html: self-contained HTML body or full HTML document.css: optional inline CSS appended to the document.filename: optional display filename. The.pdfextension is added automatically.title: optional title used when wrapping an HTML fragment. Visible content must be inhtml.lifecycle: optional temporary artifact lifecycle,persistentortemporary. Defaults totemporary.
generate_pptx accepts:
presentation: JSON string describing the editable static PPTX deck.filename: optional display filename. The.pptxextension is added automatically.title: optional title hint. Visible content must be inpresentation.slides.lifecycle: optional temporary artifact lifecycle,persistentortemporary. Defaults totemporary.