@fectivnfy112358/minimax-code-web 0.1.0-preview.0 → 0.1.0-preview.3
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.
- package/bin/mcode-webui.mjs +6 -2
- package/package.json +1 -1
- package/server/assets/agents/_default/prompt-base-all.md +121 -0
- package/server/assets/agents/_default/prompt-base-all.md.hbs +255 -0
- package/server/assets/agents/_default/prompt-base-windows.md +6 -0
- package/server/assets/agents/_default/prompt-base-windows.md.hbs +6 -0
- package/server/assets/agents/_default/prompt-base-worker.md +12 -0
- package/server/assets/agents/_default/prompt-base-worker.md.hbs +27 -0
- package/server/assets/agents/_default/prompt-session-branch.md +3 -0
- package/server/assets/agents/_default/prompt-session-branch.md.hbs +30 -0
- package/server/assets/agents/_default/prompt-session-root.md +4 -0
- package/server/assets/agents/_default/prompt-session-root.md.hbs +32 -0
- package/server/assets/agents/_migration/README.md +20 -0
- package/server/assets/agents/_migration/coder/PERSONA-zh.md +10 -0
- package/server/assets/agents/_migration/coder/PERSONA.md +11 -0
- package/server/assets/agents/_migration/coder/system-prompt.md.hbs +42 -0
- package/server/assets/agents/_migration/general/PERSONA-zh.md +11 -0
- package/server/assets/agents/_migration/general/PERSONA.md +11 -0
- package/server/assets/agents/_migration/general/system-prompt.md.hbs +49 -0
- package/server/assets/agents/_v2/AGENT_CONTEXT.md.hbs +222 -0
- package/server/assets/agents/_v2/coding/SYSTEM.md.hbs +161 -0
- package/server/assets/agents/_v2/explore.md.hbs +38 -0
- package/server/assets/agents/_v2/tui/SYSTEM.md.hbs +147 -0
- package/server/assets/agents/_v2/verifier.md.hbs +32 -0
- package/server/assets/agents/_v2/work/SYSTEM.md.hbs +173 -0
- package/server/assets/agents/_v2/worker.md.hbs +27 -0
- package/server/assets/agents/builtin-agents.json +1 -0
- package/server/assets/agents/desktop-task/archive-title/system-en.md +1 -0
- package/server/assets/agents/desktop-task/archive-title/system-zh.md +1 -0
- package/server/assets/agents/desktop-task/checkpoint/system.md +15 -0
- package/server/assets/agents/desktop-task/output-revision/system.md +1 -0
- package/server/assets/agents/desktop-task/retry/continuation.md +4 -0
- package/server/assets/agents/desktop-task/session-title/system.md +41 -0
- package/server/assets/agents/explore/PERSONA-zh.md +8 -0
- package/server/assets/agents/explore/PERSONA.md +8 -0
- package/server/assets/agents/explore/agent.md +14 -0
- package/server/assets/agents/explore/system-prompt.md.hbs +35 -0
- package/server/assets/agents/greeting-zh.md +61 -0
- package/server/assets/agents/greeting.md +61 -0
- package/server/assets/agents/managed-prompts.json +54 -0
- package/server/assets/agents/mavis/PERSONA-zh.md +7 -0
- package/server/assets/agents/mavis/PERSONA.md +7 -0
- package/server/assets/agents/mavis/features/cron.md.hbs +23 -0
- package/server/assets/agents/mavis/features/delegation.md.hbs +56 -0
- package/server/assets/agents/mavis/features/memory.md.hbs +61 -0
- package/server/assets/agents/mavis/features/recoverable-deletion.md.hbs +10 -0
- package/server/assets/agents/mavis/features/task-management.md.hbs +11 -0
- package/server/assets/agents/mavis/features/web-search.md.hbs +11 -0
- package/server/assets/agents/mavis/modes/coding/online/PERSONA-zh.md.hbs +20 -0
- package/server/assets/agents/mavis/modes/coding/online/PERSONA.md.hbs +20 -0
- package/server/assets/agents/mavis/modes/coding/online/SYSTEM.md.hbs +159 -0
- package/server/assets/agents/mavis/modes/work/online/PERSONA-zh.md.hbs +20 -0
- package/server/assets/agents/mavis/modes/work/online/PERSONA.md.hbs +20 -0
- package/server/assets/agents/mavis/modes/work/online/SYSTEM.md.hbs +161 -0
- package/server/assets/agents/mavis/prompt-session-root.md +4 -0
- package/server/assets/agents/mavis/prompt-session-root.md.hbs +4 -0
- package/server/assets/agents/mavis/skills/control-in-app-browser/SKILL.md +491 -0
- package/server/assets/agents/mavis/skills/minimax-code-product/SKILL.md +114 -0
- package/server/assets/agents/mavis/skills/minimax-code-product/references/account-models.md +32 -0
- package/server/assets/agents/mavis/skills/minimax-code-product/references/agents.md +25 -0
- package/server/assets/agents/mavis/skills/minimax-code-product/references/extensions.md +33 -0
- package/server/assets/agents/mavis/skills/minimax-code-product/references/workflows.md +30 -0
- package/server/assets/agents/mavis/system-prompt.md.hbs +97 -0
- package/server/assets/agents/prompt-exemptions.json +38 -0
- package/server/assets/agents/verifier/PERSONA-zh.md +8 -0
- package/server/assets/agents/verifier/PERSONA.md +8 -0
- package/server/assets/agents/verifier/agent.md +17 -0
- package/server/assets/agents/verifier/system-prompt.md.hbs +28 -0
- package/server/assets/agents/worker/PERSONA-zh.md +8 -0
- package/server/assets/agents/worker/PERSONA.md +8 -0
- package/server/assets/agents/worker/agent.md +18 -0
- package/server/assets/agents/worker/system-prompt.md.hbs +22 -0
- package/server/assets/agents/workflow/code-review/review-candidates.md +120 -0
- package/server/assets/agents/workflow/code-review/reviewer-system.md +75 -0
- package/server/assets/agents/workflow/goal/budget-limit.md +16 -0
- package/server/assets/agents/workflow/goal/continuation.md +62 -0
- package/server/assets/agents/workflow/goal/objective-updated.md +16 -0
- package/server/assets/agents/workflow/goal/recovery-terminal-audit.md +12 -0
- package/server/assets/agents/workflow/goal/recovery.md +11 -0
- package/server/assets/agents/workflow/goal/terminal-audit.md +9 -0
- package/server/assets/agents/workflow/plan-mode/agent-entry.md +72 -0
- package/server/assets/agents/workflow/prompt-hook/system.md +0 -0
- package/server/assets/models-dev-catalog.json.gz +0 -0
- package/server/assets/prompts/code-review/review-candidates.md +120 -0
- package/server/assets/prompts/code-review/reviewer-system.md +75 -0
- package/server/assets/skills/code-review/SKILL.md +51 -0
- package/server/assets/skills/cu-desktop/SKILL.md +257 -0
- package/server/assets/skills/deep-research/SKILL.md +219 -0
- package/server/assets/skills/deep-research/scripts/render_plan.py +33 -0
- package/server/assets/skills/deep-research/steps/1_background.md +65 -0
- package/server/assets/skills/deep-research/steps/2_judgment.md +66 -0
- package/server/assets/skills/deep-research/steps/3_analysis.md +114 -0
- package/server/assets/skills/deep-research/steps/4_research.md +161 -0
- package/server/assets/skills/deep-research/steps/5_writing.md +358 -0
- package/server/assets/skills/deploy-website/SKILL.md +55 -0
- package/server/assets/skills/docx/LICENSE +21 -0
- package/server/assets/skills/docx/SKILL.md +261 -0
- package/server/assets/skills/docx/assets/styles/academic_styles.xml +250 -0
- package/server/assets/skills/docx/assets/styles/corporate_styles.xml +284 -0
- package/server/assets/skills/docx/assets/styles/default_styles.xml +449 -0
- package/server/assets/skills/docx/assets/xsd/aesthetic-rules.xsd +470 -0
- package/server/assets/skills/docx/assets/xsd/business-rules.xsd +130 -0
- package/server/assets/skills/docx/assets/xsd/common-types.xsd +159 -0
- package/server/assets/skills/docx/assets/xsd/wml-subset.xsd +589 -0
- package/server/assets/skills/docx/docs/acceptance-checklists/create.md +7 -0
- package/server/assets/skills/docx/docs/acceptance-checklists/edit.md +6 -0
- package/server/assets/skills/docx/docs/acceptance-checklists/layout-repair.md +7 -0
- package/server/assets/skills/docx/docs/acceptance-checklists/template.md +6 -0
- package/server/assets/skills/docx/docs/acceptance.md +139 -0
- package/server/assets/skills/docx/docs/anti-patterns.md +14 -0
- package/server/assets/skills/docx/docs/backends.md +116 -0
- package/server/assets/skills/docx/docs/evidence.md +73 -0
- package/server/assets/skills/docx/docs/failure-taxonomy.md +71 -0
- package/server/assets/skills/docx/docs/index.md +50 -0
- package/server/assets/skills/docx/docs/rendered-delivery.md +125 -0
- package/server/assets/skills/docx/docs/router.md +122 -0
- package/server/assets/skills/docx/docs/tables-and-numbering.md +27 -0
- package/server/assets/skills/docx/docs/task-apply-template.md +141 -0
- package/server/assets/skills/docx/docs/task-compare-two-docx.md +48 -0
- package/server/assets/skills/docx/docs/task-create.md +124 -0
- package/server/assets/skills/docx/docs/task-edit-fill.md +69 -0
- package/server/assets/skills/docx/docs/task-read-content.md +148 -0
- package/server/assets/skills/docx/docs/task-read-rendered.md +78 -0
- package/server/assets/skills/docx/docs/task-read-structure.md +93 -0
- package/server/assets/skills/docx/docs/task-repair-layout.md +70 -0
- package/server/assets/skills/docx/docs/template-dsl.md +32 -0
- package/server/assets/skills/docx/docs/track-changes.md +15 -0
- package/server/assets/skills/docx/docs/xml-patch-dsl.md +33 -0
- package/server/assets/skills/docx/references/cjk_typography.md +357 -0
- package/server/assets/skills/docx/references/cjk_university_template_guide.md +184 -0
- package/server/assets/skills/docx/references/comments_guide.md +191 -0
- package/server/assets/skills/docx/references/design_good_bad_examples.md +829 -0
- package/server/assets/skills/docx/references/design_principles.md +819 -0
- package/server/assets/skills/docx/references/openxml_element_order.md +308 -0
- package/server/assets/skills/docx/references/openxml_encyclopedia_part1.md +4061 -0
- package/server/assets/skills/docx/references/openxml_encyclopedia_part2.md +2820 -0
- package/server/assets/skills/docx/references/openxml_encyclopedia_part3.md +3381 -0
- package/server/assets/skills/docx/references/openxml_namespaces.md +82 -0
- package/server/assets/skills/docx/references/openxml_units.md +72 -0
- package/server/assets/skills/docx/references/sample-patch-plans.json +22 -0
- package/server/assets/skills/docx/references/sample-task-intents.json +5 -0
- package/server/assets/skills/docx/references/sample-template-manifests.json +21 -0
- package/server/assets/skills/docx/references/scenario_a_create.md +284 -0
- package/server/assets/skills/docx/references/scenario_b_edit_content.md +295 -0
- package/server/assets/skills/docx/references/scenario_c_apply_template.md +456 -0
- package/server/assets/skills/docx/references/track_changes_guide.md +200 -0
- package/server/assets/skills/docx/references/troubleshooting.md +506 -0
- package/server/assets/skills/docx/references/typography_guide.md +294 -0
- package/server/assets/skills/docx/references/xsd_validation_guide.md +158 -0
- package/server/assets/skills/docx/scripts/build_patch_plan.py +29 -0
- package/server/assets/skills/docx/scripts/diff_docx_structure.py +61 -0
- package/server/assets/skills/docx/scripts/doc_to_docx.ps1 +85 -0
- package/server/assets/skills/docx/scripts/doc_to_docx.sh +40 -0
- package/server/assets/skills/docx/scripts/docx_preview.ps1 +76 -0
- package/server/assets/skills/docx/scripts/docx_preview.sh +37 -0
- package/server/assets/skills/docx/scripts/docx_to_pdf.py +87 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Cli/MiniMaxAIDocx.Cli.csproj +19 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Cli/Program.cs +18 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/AnalyzeCommand.cs +147 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/ApplyTemplateCommand.cs +322 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/CreateCommand.cs +324 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/DiffCommand.cs +155 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/EditContentCommand.cs +487 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/FixOrderCommand.cs +108 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/MergeRunsCommand.cs +122 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/ValidateCommand.cs +107 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/MiniMaxAIDocx.Core.csproj +15 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/CommentSynchronizer.cs +169 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/ElementOrder.cs +80 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/NamespaceConstants.cs +42 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/RunMerger.cs +81 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/StyleAnalyzer.cs +81 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/TrackChangesHelper.cs +99 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/UnitConverter.cs +23 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/AestheticRecipeSamples.cs +1832 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/AestheticRecipeSamples_Batch1.cs +910 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/AestheticRecipeSamples_Batch2.cs +999 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/AestheticRecipeSamples_Batch3.cs +1048 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/AestheticRecipeSamples_Batch4.cs +1038 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/CharacterFormattingSamples.cs +1020 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/DocumentCreationSamples.cs +1121 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/FieldAndTocSamples.cs +624 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/FootnoteAndCommentSamples.cs +675 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/HeaderFooterSamples.cs +838 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/ImageSamples.cs +917 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/ListAndNumberingSamples.cs +826 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/ParagraphFormattingSamples.cs +1199 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/StyleSystemSamples.cs +1487 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/TableSamples.cs +1163 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/TrackChangesSamples.cs +595 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Typography/CjkHelper.cs +39 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Typography/FontDefaults.cs +24 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Typography/PageSizes.cs +20 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Validation/BusinessRuleValidator.cs +224 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Validation/GateCheckValidator.cs +148 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Validation/ValidationResult.cs +23 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.Core/Validation/XsdValidator.cs +69 -0
- package/server/assets/skills/docx/scripts/dotnet/MiniMaxAIDocx.slnx +4 -0
- package/server/assets/skills/docx/scripts/env_check.ps1 +327 -0
- package/server/assets/skills/docx/scripts/env_check.sh +340 -0
- package/server/assets/skills/docx/scripts/extract_docx_text.py +1075 -0
- package/server/assets/skills/docx/scripts/pack_docx.py +31 -0
- package/server/assets/skills/docx/scripts/read_docx_structure.py +1032 -0
- package/server/assets/skills/docx/scripts/render_docx_pages.py +147 -0
- package/server/assets/skills/docx/scripts/rendered_report.py +609 -0
- package/server/assets/skills/docx/scripts/setup.ps1 +542 -0
- package/server/assets/skills/docx/scripts/setup.sh +537 -0
- package/server/assets/skills/docx/scripts/unpack_docx.py +29 -0
- package/server/assets/skills/docx/scripts/validate_template_manifest.py +60 -0
- package/server/assets/skills/docx/scripts/verify_anchor_atomicity.py +87 -0
- package/server/assets/skills/edit-deployed-website/SKILL.md +27 -0
- package/server/assets/skills/init/SKILL.md +137 -0
- package/server/assets/skills/lark-tools/SKILL.md +321 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-approval/SKILL.md +48 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-attendance/SKILL.md +57 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/SKILL.md +372 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/dashboard-block-data-config.md +350 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/examples.md +130 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/formula-field-guide.md +735 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-advperm-disable.md +83 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-advperm-enable.md +80 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-base-copy.md +74 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-base-create.md +68 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-base-get.md +39 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-dashboard-arrange.md +83 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-dashboard-block-create.md +108 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-dashboard-block-delete.md +46 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-dashboard-block-get.md +57 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-dashboard-block-list.md +53 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-dashboard-block-update.md +84 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-dashboard-create.md +73 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-dashboard-delete.md +44 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-dashboard-get.md +59 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-dashboard-list.md +52 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-dashboard-update.md +69 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-dashboard.md +240 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-data-query.md +375 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-field-create.md +104 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-field-delete.md +51 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-field-get.md +42 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-field-list.md +44 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-field-search-options.md +48 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-field-update.md +97 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-field.md +22 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-form-create.md +87 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-form-delete.md +64 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-form-get.md +68 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-form-list.md +73 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-form-questions-create.md +118 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-form-questions-delete.md +68 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-form-questions-list.md +84 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-form-questions-update.md +92 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-form-questions.md +23 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-form-update.md +82 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-form.md +24 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-history.md +16 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-record-batch-create.md +76 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-record-batch-update.md +71 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-record-delete.md +51 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-record-get.md +38 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-record-history-list.md +86 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-record-list.md +83 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-record-search.md +72 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-record-upload-attachment.md +51 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-record-upsert.md +89 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-record.md +28 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-role-create.md +89 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-role-delete.md +83 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-role-get.md +87 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-role-list.md +81 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-role-update.md +94 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-shortcut-field-properties.md +679 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-shortcut-record-value.md +200 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-table-create.md +62 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-table-delete.md +51 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-table-get.md +46 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-table-list.md +43 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-table-update.md +49 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-table.md +20 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-view-create.md +83 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-view-delete.md +48 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-view-get-card.md +38 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-view-get-filter.md +38 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-view-get-group.md +38 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-view-get-sort.md +38 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-view-get-timebar.md +38 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-view-get-visible-fields.md +38 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-view-get.md +38 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-view-list.md +44 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-view-rename.md +44 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-view-set-card.md +81 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-view-set-filter.md +92 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-view-set-group.md +77 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-view-set-sort.md +77 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-view-set-timebar.md +79 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-view-set-visible-fields.md +73 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-view.md +44 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-workflow-create.md +180 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-workflow-disable.md +94 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-workflow-enable.md +94 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-workflow-get.md +147 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-workflow-guide.md +718 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-workflow-list.md +123 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-workflow-schema.md +935 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-workflow-update.md +167 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-workflow.md +23 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lark-base-workspace.md +18 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/lookup-field-guide.md +508 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-base/references/role-config.md +532 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-calendar/SKILL.md +143 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-calendar/references/lark-calendar-agenda.md +78 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-calendar/references/lark-calendar-create.md +109 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-calendar/references/lark-calendar-freebusy.md +124 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-calendar/references/lark-calendar-room-find.md +89 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-calendar/references/lark-calendar-rsvp.md +42 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-calendar/references/lark-calendar-schedule-meeting.md +194 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-calendar/references/lark-calendar-suggestion.md +125 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-contact/SKILL.md +23 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-contact/references/lark-contact-get-user.md +47 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-contact/references/lark-contact-search-user.md +39 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-doc/SKILL.md +189 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-doc/references/lark-doc-create.md +673 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-doc/references/lark-doc-fetch.md +120 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-doc/references/lark-doc-media-download.md +50 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-doc/references/lark-doc-media-insert.md +51 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-doc/references/lark-doc-media-preview.md +41 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-doc/references/lark-doc-search.md +213 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-doc/references/lark-doc-update.md +264 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-doc/references/lark-doc-whiteboard-update.md +6 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-drive/SKILL.md +294 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-drive/references/lark-drive-add-comment.md +99 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-drive/references/lark-drive-create-folder.md +73 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-drive/references/lark-drive-create-shortcut.md +103 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-drive/references/lark-drive-delete.md +79 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-drive/references/lark-drive-download.md +31 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-drive/references/lark-drive-export-download.md +50 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-drive/references/lark-drive-export.md +100 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-drive/references/lark-drive-import.md +132 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-drive/references/lark-drive-move.md +120 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-drive/references/lark-drive-reactions.md +113 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-drive/references/lark-drive-task-result.md +264 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-drive/references/lark-drive-upload.md +67 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-event/SKILL.md +21 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-event/references/lark-event-subscribe.md +217 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-im/SKILL.md +140 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-im/references/lark-im-chat-create.md +156 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-im/references/lark-im-chat-identity.md +55 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-im/references/lark-im-chat-messages-list.md +142 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-im/references/lark-im-chat-search.md +114 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-im/references/lark-im-chat-update.md +84 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-im/references/lark-im-messages-mget.md +95 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-im/references/lark-im-messages-reply.md +222 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-im/references/lark-im-messages-resources-download.md +94 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-im/references/lark-im-messages-search.md +213 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-im/references/lark-im-messages-send.md +223 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-im/references/lark-im-reactions.md +297 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-im/references/lark-im-threads-messages-list.md +111 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-mail/SKILL.md +550 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-mail/references/lark-mail-draft-create.md +110 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-mail/references/lark-mail-draft-edit.md +376 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-mail/references/lark-mail-forward.md +208 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-mail/references/lark-mail-message.md +201 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-mail/references/lark-mail-messages.md +108 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-mail/references/lark-mail-reply-all.md +184 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-mail/references/lark-mail-reply.md +220 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-mail/references/lark-mail-send.md +178 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-mail/references/lark-mail-signature.md +98 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-mail/references/lark-mail-thread.md +111 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-mail/references/lark-mail-triage.md +122 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-mail/references/lark-mail-watch.md +94 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-minutes/SKILL.md +116 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-minutes/references/lark-minutes-download.md +119 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-minutes/references/lark-minutes-search.md +180 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-openapi-explorer/SKILL.md +153 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-shared/SKILL.md +141 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/SKILL.md +262 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-add-dimension.md +51 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-append.md +56 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-batch-set-style.md +53 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-create-filter-view-condition.md +42 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-create-filter-view.md +42 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-create.md +69 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-delete-dimension.md +53 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-delete-dropdown.md +46 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-delete-filter-view-condition.md +26 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-delete-filter-view.md +25 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-export.md +51 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-find.md +62 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-formula.md +89 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-get-dropdown.md +43 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-get-filter-view-condition.md +27 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-get-filter-view.md +26 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-info.md +43 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-insert-dimension.md +51 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-list-filter-view-conditions.md +28 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-list-filter-views.md +26 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-merge-cells.md +47 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-move-dimension.md +52 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-read.md +61 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-replace.md +62 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-set-dropdown.md +62 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-set-style.md +71 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-unmerge-cells.md +46 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-update-dimension.md +60 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-update-dropdown.md +51 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-update-filter-view-condition.md +27 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-update-filter-view.md +24 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-write-image.md +65 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-sheets/references/lark-sheets-write.md +60 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-skill-maker/SKILL.md +85 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-slides/SKILL.md +368 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-slides/references/examples.md +179 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-slides/references/lark-slides-create.md +137 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-slides/references/lark-slides-media-upload.md +143 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-slides/references/lark-slides-xml-presentation-slide-create.md +215 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-slides/references/lark-slides-xml-presentation-slide-delete.md +119 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-slides/references/lark-slides-xml-presentations-get.md +94 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-slides/references/slide-templates.md +199 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-slides/references/slides_demo.xml +226 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-slides/references/slides_xml_schema_definition.xml +3004 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-slides/references/xml-format-guide.md +369 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-slides/references/xml-schema-quick-ref.md +215 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-task/SKILL.md +151 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-task/references/lark-task-assign.md +35 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-task/references/lark-task-comment.md +28 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-task/references/lark-task-complete.md +27 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-task/references/lark-task-create.md +51 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-task/references/lark-task-followers.md +32 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-task/references/lark-task-get-my-tasks.md +55 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-task/references/lark-task-get-related-tasks.md +53 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-task/references/lark-task-reminder.md +36 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-task/references/lark-task-reopen.md +27 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-task/references/lark-task-search.md +41 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-task/references/lark-task-set-ancestor.md +32 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-task/references/lark-task-subscribe-event.md +86 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-task/references/lark-task-tasklist-create.md +35 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-task/references/lark-task-tasklist-members.md +36 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-task/references/lark-task-tasklist-search.md +38 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-task/references/lark-task-tasklist-task-add.md +38 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-task/references/lark-task-update.md +37 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-vc/SKILL.md +143 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-vc/references/lark-vc-notes.md +126 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-vc/references/lark-vc-recording.md +141 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-vc/references/lark-vc-search.md +159 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard/SKILL.md +118 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard/references/lark-whiteboard-query.md +49 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard/references/lark-whiteboard-update.md +97 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/SKILL.md +236 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/references/connectors.md +102 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/references/content.md +40 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/references/layout.md +374 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/references/schema.md +333 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/references/style.md +318 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/references/typography.md +73 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/scenes/architecture.md +433 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/scenes/bar-chart.md +181 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/scenes/comparison.md +135 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/scenes/fishbone.md +238 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/scenes/flowchart.md +185 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/scenes/flywheel.md +195 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/scenes/funnel.md +101 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/scenes/line-chart.md +208 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/scenes/mermaid.md +136 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/scenes/milestone.md +139 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/scenes/organization.md +175 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/scenes/pyramid.md +99 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/scenes/swimlane.md +370 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-whiteboard-cli/scenes/treemap.md +210 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-wiki/SKILL.md +93 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-wiki/references/lark-wiki-move.md +183 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-wiki/references/lark-wiki-node-create.md +127 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-workflow-meeting-summary/SKILL.md +99 -0
- package/server/assets/skills/lark-tools/cli-skills/lark-workflow-standup-report/SKILL.md +120 -0
- package/server/assets/skills/lark-tools/references/commands-macos-linux.md +42 -0
- package/server/assets/skills/lark-tools/references/commands-windows-powershell.md +54 -0
- package/server/assets/skills/lark-tools/references/storage-paths.md +21 -0
- package/server/assets/skills/llm-call/SKILL.md +50 -0
- package/server/assets/skills/llm-call/scripts/llm_call.py +458 -0
- package/server/assets/skills/mcode-tools-master/SKILL.md +133 -0
- package/server/assets/skills/pdf/SKILL.md +287 -0
- package/server/assets/skills/pdf/docs/advanced-reference.md +711 -0
- package/server/assets/skills/pdf/docs/ai-voice-cloning-regulatory-report-case.md +303 -0
- package/server/assets/skills/pdf/docs/annual-report-financial-digest-latex-case.md +233 -0
- package/server/assets/skills/pdf/docs/create-guide.md +438 -0
- package/server/assets/skills/pdf/docs/design-guide.md +204 -0
- package/server/assets/skills/pdf/docs/docx-contract-roundtrip-professional-case.md +328 -0
- package/server/assets/skills/pdf/docs/email-translation-goldman-two-sessions-case.md +346 -0
- package/server/assets/skills/pdf/docs/forms-guide.md +462 -0
- package/server/assets/skills/pdf/docs/html-pdf-spec.md +500 -0
- package/server/assets/skills/pdf/docs/italy-schengen-visa-acroform-case.md +22 -0
- package/server/assets/skills/pdf/docs/latex-academic-thesis-guide.md +234 -0
- package/server/assets/skills/pdf/docs/latex-technical-book-guide.md +112 -0
- package/server/assets/skills/pdf/docs/markdown-static-academic-data-viz-case.md +280 -0
- package/server/assets/skills/pdf/docs/pitfalls-index.md +798 -0
- package/server/assets/skills/pdf/docs/read-guide.md +358 -0
- package/server/assets/skills/pdf/docs/reformat-guide.md +238 -0
- package/server/assets/skills/pdf/docs/skill-readme-archive.md +152 -0
- package/server/assets/skills/pdf/docs/troubleshooting.md +86 -0
- package/server/assets/skills/pdf/docs/vision-guide.md +188 -0
- package/server/assets/skills/pdf/scripts/__init__.py +0 -0
- package/server/assets/skills/pdf/scripts/_pdf_read_lib.py +284 -0
- package/server/assets/skills/pdf/scripts/fill/__init__.py +0 -0
- package/server/assets/skills/pdf/scripts/fill/acroform_apply.py +153 -0
- package/server/assets/skills/pdf/scripts/fill/overlay_apply.py +109 -0
- package/server/assets/skills/pdf/scripts/lib/__init__.py +0 -0
- package/server/assets/skills/pdf/scripts/lib/acroform_io.py +170 -0
- package/server/assets/skills/pdf/scripts/lib/cli_utils.py +41 -0
- package/server/assets/skills/pdf/scripts/lib/geometry.py +79 -0
- package/server/assets/skills/pdf/scripts/make.sh +388 -0
- package/server/assets/skills/pdf/scripts/merge.py +112 -0
- package/server/assets/skills/pdf/scripts/pdf_inspect/__init__.py +0 -0
- package/server/assets/skills/pdf/scripts/pdf_inspect/acroform_inspect.py +52 -0
- package/server/assets/skills/pdf/scripts/pdf_inspect/acroform_probe.py +57 -0
- package/server/assets/skills/pdf/scripts/pdf_inspect/layout_scan.py +164 -0
- package/server/assets/skills/pdf/scripts/read_pdf_vision.py +473 -0
- package/server/assets/skills/pdf/scripts/reformat_parse.py +181 -0
- package/server/assets/skills/pdf/scripts/render/__init__.py +0 -0
- package/server/assets/skills/pdf/scripts/render/overlay_preview.py +86 -0
- package/server/assets/skills/pdf/scripts/render/page_rasterize.py +85 -0
- package/server/assets/skills/pdf/scripts/render_html.cjs +205 -0
- package/server/assets/skills/pdf/scripts/validate/__init__.py +0 -0
- package/server/assets/skills/pdf/scripts/validate/geometry_lint.py +124 -0
- package/server/assets/skills/pdf/templates/INDEX.md +97 -0
- package/server/assets/skills/pdf/templates/bilingual-menu-premium/README.md +175 -0
- package/server/assets/skills/pdf/templates/bilingual-menu-premium/skeleton.html +343 -0
- package/server/assets/skills/pdf/templates/brand-guide-2page/README.md +140 -0
- package/server/assets/skills/pdf/templates/brand-guide-2page/cases/minimax-web-brand-guide/README.md +155 -0
- package/server/assets/skills/pdf/templates/brand-guide-2page/cases/minimax-web-brand-guide/source.html +188 -0
- package/server/assets/skills/pdf/templates/brand-guide-2page/skeleton.html +264 -0
- package/server/assets/skills/pdf/templates/data-viz-report/README.md +234 -0
- package/server/assets/skills/pdf/templates/data-viz-report/cases/annual-report-financial-digest-latex/README.md +12 -0
- package/server/assets/skills/pdf/templates/data-viz-report/cases/annual-report-financial-digest-latex/build_charts.py +341 -0
- package/server/assets/skills/pdf/templates/data-viz-report/cases/annual-report-financial-digest-latex/source.tex +161 -0
- package/server/assets/skills/pdf/templates/data-viz-report/cases/apple-m-ai-static-academic/assets/fig_1_1_table_1_1_specs.png +0 -0
- package/server/assets/skills/pdf/templates/data-viz-report/cases/apple-m-ai-static-academic/assets/fig_1_2_table_1_2_geekbench.png +0 -0
- package/server/assets/skills/pdf/templates/data-viz-report/cases/apple-m-ai-static-academic/assets/fig_1_3_mmax_generation.png +0 -0
- package/server/assets/skills/pdf/templates/data-viz-report/cases/apple-m-ai-static-academic/source.html +656 -0
- package/server/assets/skills/pdf/templates/data-viz-report/skeleton.html +835 -0
- package/server/assets/skills/pdf/templates/form-fill-acroform/README.md +198 -0
- package/server/assets/skills/pdf/templates/form-fill-acroform/cases/italy-schengen-visa-example/USER-FINAL-SUMMARY.template.md +42 -0
- package/server/assets/skills/pdf/templates/form-fill-acroform/cases/italy-schengen-visa-example/extract_pdfs_key_info.py +80 -0
- package/server/assets/skills/pdf/templates/form-fill-acroform/cases/italy-schengen-visa-example/field_values.case.json +233 -0
- package/server/assets/skills/pdf/templates/form-fill-acroform/field_values.template.json +118 -0
- package/server/assets/skills/pdf/templates/latex-academic-thesis/README.md +146 -0
- package/server/assets/skills/pdf/templates/latex-academic-thesis/source.tex +334 -0
- package/server/assets/skills/pdf/templates/latex-technical-book/README.md +130 -0
- package/server/assets/skills/pdf/templates/latex-technical-book/README.template-source.md +62 -0
- package/server/assets/skills/pdf/templates/latex-technical-book/source.tex +439 -0
- package/server/assets/skills/pdf/templates/multi-article-aggregator/README.md +148 -0
- package/server/assets/skills/pdf/templates/multi-article-aggregator/pipeline.md +223 -0
- package/server/assets/skills/pdf/templates/multilang-research-report/README.md +146 -0
- package/server/assets/skills/pdf/templates/multilang-research-report/cases/ai-voice-cloning-regulatory/source.html +244 -0
- package/server/assets/skills/pdf/templates/multilang-research-report/skeleton.html +242 -0
- package/server/assets/skills/pdf/templates/reformat-default/README.md +137 -0
- package/server/assets/skills/pdf/templates/reformat-default/cases/pku-contract-roundtrip/docx_engine.py +68 -0
- package/server/assets/skills/pdf/templates/reformat-default/cases/pku-contract-roundtrip/source.html +231 -0
- package/server/assets/skills/pdf/templates/reformat-default/cases/pku-contract-roundtrip/source.md +196 -0
- package/server/assets/skills/pdf/templates/reformat-default/skeleton.html +204 -0
- package/server/assets/skills/pdf/templates/translate-preserve-layout/README.md +147 -0
- package/server/assets/skills/pdf/templates/translate-preserve-layout/cases/goldman-china-two-sessions-cn.html +1660 -0
- package/server/assets/skills/pdf/templates/translate-preserve-layout/skeleton.html +96 -0
- package/server/assets/skills/pdf/templates/translate-preserve-layout/terminology.template.json +66 -0
- package/server/assets/skills/pptx/SKILL.md +285 -0
- package/server/assets/skills/pptx/references/design-system.md +424 -0
- package/server/assets/skills/pptx/references/editing.md +162 -0
- package/server/assets/skills/pptx/references/element-map.md +229 -0
- package/server/assets/skills/pptx/references/pitfalls.md +205 -0
- package/server/assets/skills/pptx/references/pptxgenjs.md +420 -0
- package/server/assets/skills/pptx/references/preview-selection-writeback.md +65 -0
- package/server/assets/skills/pptx/references/python-pptx-recipes.md +63 -0
- package/server/assets/skills/pptx/references/slide-types.md +413 -0
- package/server/assets/skills/pptx/scripts/audit_pptx.py +708 -0
- package/server/assets/skills/pptx/scripts/extract_comments.py +468 -0
- package/server/assets/skills/pptx/scripts/extract_images.py +226 -0
- package/server/assets/skills/pptx/scripts/extract_pptx.py +285 -0
- package/server/assets/skills/pptx/scripts/mavis-ppt-map.cjs +280 -0
- package/server/assets/skills/pptx/scripts/pdf2png.swift +203 -0
- package/server/assets/skills/pptx/scripts/pptx-screenshot.sh +105 -0
- package/server/assets/skills/resume-codex/SKILL.md +55 -0
- package/server/assets/skills/resume-codex/scripts/session-reader.mjs +445 -0
- package/server/assets/skills/skill-creator/SKILL.md +190 -0
- package/server/assets/skills/skill-creator/references/anti-patterns.md +149 -0
- package/server/assets/skills/skill-creator/references/commands-macos-linux.md +38 -0
- package/server/assets/skills/skill-creator/references/commands-windows-powershell.md +48 -0
- package/server/assets/skills/skill-creator/references/description-rubric.md +83 -0
- package/server/assets/skills/skill-creator/references/skill-template.md +101 -0
- package/server/assets/skills/skill-creator/references/when-to-bundle-scripts.md +139 -0
- package/server/assets/skills/skill-creator/scripts/lint-skill.js +226 -0
- package/server/assets/skills/skill-refiner/SKILL.md +139 -0
- package/server/assets/skills/visual-page/SKILL.md +196 -0
- package/server/assets/skills/x-link-reader/SKILL.md +110 -0
- package/server/assets/skills/xlsx/SKILL.md +501 -0
- package/server/assets/skills/xlsx/docs/advanced-reference.md +410 -0
- package/server/assets/skills/xlsx/docs/cases/superstore-multiformat/conversion_manifest.example.json +49 -0
- package/server/assets/skills/xlsx/docs/cases/superstore-multiformat/superstore_orders_print.html +17 -0
- package/server/assets/skills/xlsx/docs/conventions-guide.md +217 -0
- package/server/assets/skills/xlsx/docs/create-edit-guide.md +410 -0
- package/server/assets/skills/xlsx/docs/pitfalls-index.md +760 -0
- package/server/assets/skills/xlsx/docs/raw-xml-escape-hatch.md +201 -0
- package/server/assets/skills/xlsx/docs/recalc-guide.md +295 -0
- package/server/assets/skills/xlsx/docs/superstore-multiformat-conversion-case.md +413 -0
- package/server/assets/skills/xlsx/scripts/office/helpers/__init__.py +0 -0
- package/server/assets/skills/xlsx/scripts/office/helpers/merge_runs.py +199 -0
- package/server/assets/skills/xlsx/scripts/office/helpers/simplify_redlines.py +197 -0
- package/server/assets/skills/xlsx/scripts/office/pack.py +159 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/mce/mc.xsd +75 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/server/assets/skills/xlsx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/server/assets/skills/xlsx/scripts/office/soffice.py +191 -0
- package/server/assets/skills/xlsx/scripts/office/unpack.py +132 -0
- package/server/assets/skills/xlsx/scripts/office/validate.py +117 -0
- package/server/assets/skills/xlsx/scripts/office/validators/__init__.py +15 -0
- package/server/assets/skills/xlsx/scripts/office/validators/base.py +851 -0
- package/server/assets/skills/xlsx/scripts/office/validators/docx.py +446 -0
- package/server/assets/skills/xlsx/scripts/office/validators/pptx.py +275 -0
- package/server/assets/skills/xlsx/scripts/office/validators/redlining.py +247 -0
- package/server/assets/skills/xlsx/scripts/recalc.py +450 -0
- package/server/mcode-tools.js +2 -0
- package/server/package-info.json +1 -1
- package/server/server.js +2 -0
|
@@ -0,0 +1,438 @@
|
|
|
1
|
+
# CREATE — Generate a New PDF
|
|
2
|
+
|
|
3
|
+
> **Prerequisites.** Read [`html-pdf-spec.md`](html-pdf-spec.md) for the
|
|
4
|
+
> mechanical contract (page geometry, page-break rules, Chart.js settle, CJK
|
|
5
|
+
> cascade). Read [`design-guide.md`](design-guide.md) for the aesthetic
|
|
6
|
+
> contract (palette mood, typography, anti-patterns). This file is the
|
|
7
|
+
> end-to-end recipe that ties them together.
|
|
8
|
+
|
|
9
|
+
The CREATE pipeline has one shape:
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
HTML file (templates/<slug>/skeleton.html or hand-written)
|
|
13
|
+
└─► render_html.cjs (Playwright Chromium)
|
|
14
|
+
└─► report.pdf
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
There is no token system, no ReportLab, no LaTeX. If a primitive cannot be
|
|
18
|
+
expressed in HTML+CSS+JS, it does not belong in CREATE.
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## 1. The 4 steps
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
# Step 1 — verify deps once per machine
|
|
26
|
+
bash scripts/make.sh check
|
|
27
|
+
|
|
28
|
+
# Step 2 — pick a starting point (DO NOT skip this scan)
|
|
29
|
+
cat templates/INDEX.md
|
|
30
|
+
cat templates/<chosen-slug>/README.md # 7-section recipe
|
|
31
|
+
|
|
32
|
+
# Step 3 — copy the skeleton, fill the placeholders, re-skin to your topic
|
|
33
|
+
cp templates/<chosen-slug>/skeleton.html /tmp/work/page.html
|
|
34
|
+
$EDITOR /tmp/work/page.html
|
|
35
|
+
|
|
36
|
+
# Step 4 — render & verify
|
|
37
|
+
bash scripts/make.sh render --in /tmp/work/page.html --out /tmp/work/out.pdf --wait 15000
|
|
38
|
+
pdfinfo /tmp/work/out.pdf | grep Pages
|
|
39
|
+
pdftotext -layout /tmp/work/out.pdf - | head -40
|
|
40
|
+
open /tmp/work/out.pdf # eyeball it
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
The `--wait 15000` flag is critical when the page contains Chart.js or any
|
|
44
|
+
late-loading JS. Static prose can use the default `--wait 800`. See
|
|
45
|
+
[html-pdf-spec.md §6](html-pdf-spec.md#6-charts-chartjs).
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## 2. Picking a template
|
|
50
|
+
|
|
51
|
+
[`templates/INDEX.md`](../templates/INDEX.md) lists every skeleton with intent
|
|
52
|
+
keywords. Match by user intent first, then by document shape:
|
|
53
|
+
|
|
54
|
+
| Intent | Template |
|
|
55
|
+
|---|---|
|
|
56
|
+
| Restaurant menu, bilingual omakase | `bilingual-menu-premium` |
|
|
57
|
+
| Brand guide / style guide / 2-page identity | `brand-guide-2page` |
|
|
58
|
+
| Data report / benchmark / 数据可视化 / 评测 | `data-viz-report` |
|
|
59
|
+
| Article digest / blog anthology / newsletter | `multi-article-aggregator` |
|
|
60
|
+
| Multi-country research / regulatory survey | `multilang-research-report` (for AI voice cloning / legal-regulatory surveys, read `docs/ai-voice-cloning-regulatory-report-case.md`) |
|
|
61
|
+
| Plain markdown report (REFORMAT path) | `reformat-default` |
|
|
62
|
+
|
|
63
|
+
If nothing fits, **adapt the closest** rather than starting from scratch — the
|
|
64
|
+
skeletons encode page-break math and CJK cascades that take real time to get
|
|
65
|
+
right.
|
|
66
|
+
|
|
67
|
+
If the user's content is genuinely unique (not just "reskin needed"),
|
|
68
|
+
hand-author the HTML following [`html-pdf-spec.md`](html-pdf-spec.md) and
|
|
69
|
+
copy individual primitives (KPI cards, chart cards, pill table) from
|
|
70
|
+
`templates/data-viz-report/skeleton.html`.
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## 2. JSON-driven CREATE workflow (data reports)
|
|
75
|
+
|
|
76
|
+
Use this when the PDF is a data/report deliverable and the content should be
|
|
77
|
+
separated from layout. The contract is still **HTML → Playwright → PDF**;
|
|
78
|
+
JSON is only an intermediate content manifest consumed by your build script.
|
|
79
|
+
|
|
80
|
+
### 2.1 Minimal `content.json` shape
|
|
81
|
+
|
|
82
|
+
Always write JSON with `json.dumps(..., ensure_ascii=False, indent=2)` — never
|
|
83
|
+
hand-concatenate strings.
|
|
84
|
+
|
|
85
|
+
```json
|
|
86
|
+
{
|
|
87
|
+
"meta": {
|
|
88
|
+
"title": "2024 Annual Report Digest",
|
|
89
|
+
"subtitle": "Financial highlights and segment revenue",
|
|
90
|
+
"author": "Mavis",
|
|
91
|
+
"date": "2026-04-26",
|
|
92
|
+
"locale": "zh-CN",
|
|
93
|
+
"page_format": "A4",
|
|
94
|
+
"style": "print-academic"
|
|
95
|
+
},
|
|
96
|
+
"theme": {
|
|
97
|
+
"accent": "#8A1E1E",
|
|
98
|
+
"ink": "#1F2A25",
|
|
99
|
+
"muted": "#66706A",
|
|
100
|
+
"paper": "#FBFAF7"
|
|
101
|
+
},
|
|
102
|
+
"kpis": [
|
|
103
|
+
{"label": "营业收入", "value": "2.94万亿", "delta": "同比 -2.5%", "tone": "neutral"},
|
|
104
|
+
{"label": "归母净利润", "value": "1,646.84亿", "delta": "同比 +2.0%", "tone": "good"}
|
|
105
|
+
],
|
|
106
|
+
"sections": [
|
|
107
|
+
{
|
|
108
|
+
"id": "financials",
|
|
109
|
+
"title": "主要财务指标",
|
|
110
|
+
"lead": "单位除特别注明外为人民币百万元。",
|
|
111
|
+
"tables": [
|
|
112
|
+
{
|
|
113
|
+
"caption": "近五年主要财务指标",
|
|
114
|
+
"columns": ["项目", "2024", "2023", "2022"],
|
|
115
|
+
"rows": [
|
|
116
|
+
["营业收入", "2,937,981", "3,012,812", "3,240,951"],
|
|
117
|
+
["净利润", "183,755", "180,563", "163,493"]
|
|
118
|
+
],
|
|
119
|
+
"source": "年报第5页"
|
|
120
|
+
}
|
|
121
|
+
],
|
|
122
|
+
"charts": [
|
|
123
|
+
{"id": "trend", "title": "财务趋势", "image": "trend.png", "alt": "五年收入与利润趋势"}
|
|
124
|
+
],
|
|
125
|
+
"takeaways": ["收入同比回落,但利润端保持韧性。"]
|
|
126
|
+
}
|
|
127
|
+
],
|
|
128
|
+
"footnotes": [
|
|
129
|
+
"本摘要不替代经审计年度报告全文。"
|
|
130
|
+
]
|
|
131
|
+
}
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
Recommended fields:
|
|
135
|
+
|
|
136
|
+
| Field | Required | Meaning |
|
|
137
|
+
|---|---:|---|
|
|
138
|
+
| `meta.title` | yes | Cover/title-bar title; must match user language. |
|
|
139
|
+
| `meta.page_format` | yes | Usually `A4`; renderer must also pass `--format A4`. |
|
|
140
|
+
| `theme.*` | no | Palette tokens copied into CSS variables. |
|
|
141
|
+
| `kpis[]` | no | Small KPI cards; values are strings so units are explicit. |
|
|
142
|
+
| `sections[].tables[]` | no | Dense source tables; keep `source` for auditability. |
|
|
143
|
+
| `sections[].charts[]` | no | Static image paths or data-URI strings; runtime chart libraries are optional but static PNGs are preferred for strict deliverables. |
|
|
144
|
+
| `sections[].takeaways[]` | no | Short bullets; do not let prose crowd out tables. |
|
|
145
|
+
| `footnotes[]` | no | Method, caveats, and source notes. |
|
|
146
|
+
|
|
147
|
+
### 2.2 Build script skeleton
|
|
148
|
+
|
|
149
|
+
This script turns `content.json` into `page.html`. Keep HTML escaping explicit;
|
|
150
|
+
never paste JSON directly into JavaScript unless you serialized it yourself.
|
|
151
|
+
|
|
152
|
+
```python
|
|
153
|
+
import html, json
|
|
154
|
+
from pathlib import Path
|
|
155
|
+
|
|
156
|
+
work = Path("/tmp/pdf-create")
|
|
157
|
+
payload = json.loads((work / "content.json").read_text(encoding="utf-8"))
|
|
158
|
+
|
|
159
|
+
def esc(x):
|
|
160
|
+
return html.escape(str(x), quote=True)
|
|
161
|
+
|
|
162
|
+
def render_table(table):
|
|
163
|
+
head = "".join(f"<th>{esc(c)}</th>" for c in table["columns"])
|
|
164
|
+
rows = []
|
|
165
|
+
for row in table["rows"]:
|
|
166
|
+
rows.append("<tr>" + "".join(f"<td>{esc(c)}</td>" for c in row) + "</tr>")
|
|
167
|
+
source = f"<div class='source'>{esc(table.get('source',''))}</div>" if table.get("source") else ""
|
|
168
|
+
return f"<figure class='table-card'><figcaption>{esc(table['caption'])}</figcaption><table><thead><tr>{head}</tr></thead><tbody>{''.join(rows)}</tbody></table>{source}</figure>"
|
|
169
|
+
|
|
170
|
+
sections = []
|
|
171
|
+
for sec in payload["sections"]:
|
|
172
|
+
body = [f"<section class='page' id='{esc(sec['id'])}'>", f"<h2>{esc(sec['title'])}</h2>"]
|
|
173
|
+
if sec.get("lead"):
|
|
174
|
+
body.append(f"<p class='lead'>{esc(sec['lead'])}</p>")
|
|
175
|
+
for table in sec.get("tables", []):
|
|
176
|
+
body.append(render_table(table))
|
|
177
|
+
for chart in sec.get("charts", []):
|
|
178
|
+
body.append(f"<figure class='chart'><img src='{esc(chart['image'])}' alt='{esc(chart.get('alt',''))}'><figcaption>{esc(chart['title'])}</figcaption></figure>")
|
|
179
|
+
for item in sec.get("takeaways", []):
|
|
180
|
+
body.append(f"<p class='takeaway'>{esc(item)}</p>")
|
|
181
|
+
body.append("</section>")
|
|
182
|
+
sections.append("\n".join(body))
|
|
183
|
+
|
|
184
|
+
html_doc = f"""<!doctype html>
|
|
185
|
+
<meta charset="utf-8">
|
|
186
|
+
<title>{esc(payload['meta']['title'])}</title>
|
|
187
|
+
<style>
|
|
188
|
+
@page {{ size: A4 portrait; margin: 14mm 12mm; }}
|
|
189
|
+
* {{ box-sizing: border-box; -webkit-print-color-adjust: exact; print-color-adjust: exact; }}
|
|
190
|
+
body {{ font-family: -apple-system, 'PingFang SC', sans-serif; color: {payload.get('theme',{}).get('ink','#1F2A25')}; }}
|
|
191
|
+
.page {{ page-break-after: always; }}
|
|
192
|
+
.page:last-child {{ page-break-after: auto; }}
|
|
193
|
+
table {{ width: 100%; border-collapse: collapse; font-size: 8.8pt; }}
|
|
194
|
+
th, td {{ border: .5pt solid #d8d0c4; padding: 5px 7px; }}
|
|
195
|
+
th {{ background: #efe7da; }}
|
|
196
|
+
.chart img {{ max-width: 100%; height: auto; }}
|
|
197
|
+
</style>
|
|
198
|
+
<body>
|
|
199
|
+
{''.join(sections)}
|
|
200
|
+
</body>"""
|
|
201
|
+
(work / "page.html").write_text(html_doc, encoding="utf-8")
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
### 2.3 End-to-end commands
|
|
205
|
+
|
|
206
|
+
```bash
|
|
207
|
+
SKILL=/path/to/pdf
|
|
208
|
+
WORK=/tmp/pdf-create
|
|
209
|
+
mkdir -p "$WORK"
|
|
210
|
+
|
|
211
|
+
bash "$SKILL/scripts/make.sh" check
|
|
212
|
+
python3 "$WORK/build_content.py" # writes content.json and any chart PNGs
|
|
213
|
+
python3 "$WORK/build_html.py" # content.json -> page.html
|
|
214
|
+
bash "$SKILL/scripts/make.sh" render \
|
|
215
|
+
--in "$WORK/page.html" \
|
|
216
|
+
--out "$WORK/report.pdf" \
|
|
217
|
+
--format A4 \
|
|
218
|
+
--wait 15000
|
|
219
|
+
|
|
220
|
+
pdfinfo "$WORK/report.pdf" | grep -E "Pages|Page size"
|
|
221
|
+
pdfimages -list "$WORK/report.pdf" | tail -n +3 | wc -l
|
|
222
|
+
pdftotext -layout "$WORK/report.pdf" - | head -40
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
Expected evidence:
|
|
226
|
+
|
|
227
|
+
- `Page size` is A4.
|
|
228
|
+
- `Pages` matches the requested cap.
|
|
229
|
+
- image count is at least the number of embedded chart PNGs/logos.
|
|
230
|
+
- `pdftotext` shows readable body text and key figures.
|
|
231
|
+
- Source HTML and `content.json` have no placeholder tokens.
|
|
232
|
+
|
|
233
|
+
---
|
|
234
|
+
|
|
235
|
+
## 3. The component primitive cookbook
|
|
236
|
+
|
|
237
|
+
Every primitive below ships in `templates/data-viz-report/skeleton.html`
|
|
238
|
+
(self-contained). Copy the markup + CSS for the ones you need.
|
|
239
|
+
|
|
240
|
+
### Cover (full-bleed gradient)
|
|
241
|
+
|
|
242
|
+
```html
|
|
243
|
+
<section class="cover">
|
|
244
|
+
<span class="cover-tag">DEEP RESEARCH · 2026</span>
|
|
245
|
+
<h1>Report title</h1>
|
|
246
|
+
<p class="subtitle">One-sentence positioning, ≤ 3 lines.</p>
|
|
247
|
+
|
|
248
|
+
<div class="cover-meta">
|
|
249
|
+
<div class="meta-stats">
|
|
250
|
+
<div class="meta-stat"><div class="num">14</div><div class="lbl">CHIPS</div></div>
|
|
251
|
+
...
|
|
252
|
+
</div>
|
|
253
|
+
<div class="cover-info">RESEARCH REPORT<br/>v1.0 · 2026/04</div>
|
|
254
|
+
</div>
|
|
255
|
+
</section>
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
### Section header (eyebrow + H2 + accent rule)
|
|
259
|
+
|
|
260
|
+
```html
|
|
261
|
+
<span class="section-num">PART 01 · 硬件分析</span>
|
|
262
|
+
<h2 class="section">Apple M-series Hardware Analysis</h2>
|
|
263
|
+
<div class="section-line"></div>
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
### KPI 4-grid (4 color variants)
|
|
267
|
+
|
|
268
|
+
```html
|
|
269
|
+
<div class="kpis">
|
|
270
|
+
<div class="kpi blue"><div class="label">Q3</div><div class="value">$4.2M</div><div class="desc">vs $3.1M Q2</div></div>
|
|
271
|
+
<div class="kpi green">…</div>
|
|
272
|
+
<div class="kpi orange">…</div>
|
|
273
|
+
<div class="kpi purple">…</div>
|
|
274
|
+
</div>
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
### Chart card (always wrap with `.avoid-break`)
|
|
278
|
+
|
|
279
|
+
```html
|
|
280
|
+
<div class="chart-card avoid-break">
|
|
281
|
+
<div class="chart-title">Figure 1.1 · Memory bandwidth & TOPS evolution</div>
|
|
282
|
+
<div class="chart-sub">Max series M1 → M4 representative comparison</div>
|
|
283
|
+
<div class="chart-wrap"><canvas id="evolution"></canvas></div>
|
|
284
|
+
</div>
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
### Reference table with status pills
|
|
288
|
+
|
|
289
|
+
```html
|
|
290
|
+
<table class="data">
|
|
291
|
+
<thead><tr><th>Chip</th><th>Memory</th><th>Verdict</th></tr></thead>
|
|
292
|
+
<tbody>
|
|
293
|
+
<tr><td class="bold">M3 Pro</td><td>36 GB</td><td><span class="pill pill-ok">✓ Feasible</span></td></tr>
|
|
294
|
+
<tr><td class="bold">M4 Max</td><td>128 GB</td><td><span class="pill pill-best">★★ Excellent</span></td></tr>
|
|
295
|
+
</tbody>
|
|
296
|
+
</table>
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
5 pill semantics are fixed: `bad / warn / ok / good / best`. Do not invent
|
|
300
|
+
new colors.
|
|
301
|
+
|
|
302
|
+
### Versus comparison
|
|
303
|
+
|
|
304
|
+
```html
|
|
305
|
+
<div class="versus">
|
|
306
|
+
<div class="vs-card apple">
|
|
307
|
+
<span class="tag">APPLE M4 MAX</span>
|
|
308
|
+
<h4>Unified memory · End-of-line</h4>
|
|
309
|
+
<ul><li>...</li></ul>
|
|
310
|
+
</div>
|
|
311
|
+
<div class="vs-divider">VS</div>
|
|
312
|
+
<div class="vs-card nvidia">
|
|
313
|
+
<span class="tag">NVIDIA RTX 5090</span>
|
|
314
|
+
<h4>CUDA empire · Compute beast</h4>
|
|
315
|
+
<ul><li>...</li></ul>
|
|
316
|
+
</div>
|
|
317
|
+
</div>
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
### Recommend triple (entry / recommended / premium)
|
|
321
|
+
|
|
322
|
+
```html
|
|
323
|
+
<div class="recommend-grid">
|
|
324
|
+
<div class="rec-card entry"><span class="level">Entry</span>...</div>
|
|
325
|
+
<div class="rec-card recommend"><span class="level">★ Recommended</span>...</div>
|
|
326
|
+
<div class="rec-card premium"><span class="level">Premium</span>...</div>
|
|
327
|
+
</div>
|
|
328
|
+
```
|
|
329
|
+
|
|
330
|
+
### Insight callout (yellow, one paragraph)
|
|
331
|
+
|
|
332
|
+
```html
|
|
333
|
+
<div class="insight">
|
|
334
|
+
<span class="label">⚡ Key insight</span>
|
|
335
|
+
Body text — one paragraph, ideally a single takeaway. Don't stack 3 of these on a page.
|
|
336
|
+
</div>
|
|
337
|
+
```
|
|
338
|
+
|
|
339
|
+
### Dark conclusion block
|
|
340
|
+
|
|
341
|
+
```html
|
|
342
|
+
<div class="conclusion">
|
|
343
|
+
<h3><span class="num">01.</span>Title of the conclusion</h3>
|
|
344
|
+
<p style="opacity: 0.92;">Body text on dark background. Keep it short.</p>
|
|
345
|
+
</div>
|
|
346
|
+
```
|
|
347
|
+
|
|
348
|
+
### Chart.js initialization (8 baseline types)
|
|
349
|
+
|
|
350
|
+
See `templates/data-viz-report/skeleton.html` `<script>` at the bottom of the
|
|
351
|
+
file. Copy the chart you need (dual-axis, horizontal bar, grouped bar,
|
|
352
|
+
scatter, stacked, log-axis, radar, dual-axis 2-bar) and edit the `labels` /
|
|
353
|
+
`data` arrays — keep the `options` block intact.
|
|
354
|
+
|
|
355
|
+
**Always** set `Chart.defaults.animation = false` once at the top.
|
|
356
|
+
|
|
357
|
+
---
|
|
358
|
+
|
|
359
|
+
## 4. Cover archetype palette
|
|
360
|
+
|
|
361
|
+
If your topic doesn't fit the navy + Apple-blue feel of `data-viz-report`,
|
|
362
|
+
re-skin the cover gradient + accent. Examples (also in
|
|
363
|
+
[design-guide.md](design-guide.md)):
|
|
364
|
+
|
|
365
|
+
| Subject | Cover gradient | Accent |
|
|
366
|
+
|---|---|---|
|
|
367
|
+
| Healthcare / pharma | teal → ivory | `#0a7488` |
|
|
368
|
+
| Finance / market data | charcoal → emerald | `#0c8a5d` |
|
|
369
|
+
| Energy / industrial | graphite → ember | `#d4621a` |
|
|
370
|
+
| AI research lab | violet → midnight | `#7c3aed` |
|
|
371
|
+
| Sustainability / ESG | forest → khaki | `#3f7d3f` |
|
|
372
|
+
|
|
373
|
+
Two reports on different subjects must read as two different publications.
|
|
374
|
+
Reusing the same blue defeats the whole point of using HTML.
|
|
375
|
+
|
|
376
|
+
---
|
|
377
|
+
|
|
378
|
+
## 5. Hand-authoring an HTML from zero
|
|
379
|
+
|
|
380
|
+
When no template fits, follow this order:
|
|
381
|
+
|
|
382
|
+
1. Start from a minimal `@page` + `*` reset:
|
|
383
|
+
```css
|
|
384
|
+
@page { size: A4 portrait; margin: 14mm 12mm; }
|
|
385
|
+
* { box-sizing: border-box;
|
|
386
|
+
-webkit-print-color-adjust: exact; print-color-adjust: exact; }
|
|
387
|
+
```
|
|
388
|
+
2. Define `:root` CSS variables for palette (`--accent`, `--ink`, `--mute`,
|
|
389
|
+
`--rule`, `--hairline`).
|
|
390
|
+
3. Build the cover, then the visible clickable TOC/index. Use real internal
|
|
391
|
+
anchors (`<a href="#section-id">`) and give every target section a stable,
|
|
392
|
+
unique `id`; see [html-pdf-spec.md §3.4](html-pdf-spec.md#34-clickable-toc--index-links).
|
|
393
|
+
4. Build one body section, render, eyeball, iterate.
|
|
394
|
+
5. Add primitives (KPI cards, chart card, pill table) by copying from
|
|
395
|
+
`data-viz-report/skeleton.html`.
|
|
396
|
+
6. Run the **quality gate** in
|
|
397
|
+
[html-pdf-spec.md §11](html-pdf-spec.md#11-quality-gate-agent-self-check-before-declaring-done)
|
|
398
|
+
before declaring "done".
|
|
399
|
+
|
|
400
|
+
---
|
|
401
|
+
|
|
402
|
+
## 6. Verification checklist
|
|
403
|
+
|
|
404
|
+
Run before committing the source HTML or reporting "PDF ready":
|
|
405
|
+
|
|
406
|
+
- [ ] `bash scripts/make.sh render --in page.html --out out.pdf --wait 15000` exits 0
|
|
407
|
+
- [ ] `pdfinfo out.pdf | grep Pages` matches expected page count (within ±1)
|
|
408
|
+
- [ ] `pdftotext -layout out.pdf - | head -40` shows readable body text
|
|
409
|
+
- [ ] PDF has a visible TOC/index for every multi-page output; TOC rows are
|
|
410
|
+
clickable internal links or the PDF has equivalent outline/bookmark
|
|
411
|
+
navigation for the same section targets
|
|
412
|
+
- [ ] Spot-click at least 3 TOC/index entries (or all entries when fewer than 3)
|
|
413
|
+
and confirm they jump to the intended pages; for assembled PDFs, also
|
|
414
|
+
inspect link annotations/outlines with `pdfinfo` or `pypdf`
|
|
415
|
+
- [ ] `open out.pdf` — eyeball: charts drew, no blank canvases, fonts correct,
|
|
416
|
+
no `⊃2;` artifacts
|
|
417
|
+
- [ ] Last page is ≥ 1/3 full (not an orphan)
|
|
418
|
+
- [ ] Source HTML has no remaining `<!-- PLACEHOLDER -->` tokens
|
|
419
|
+
- [ ] Accent re-skinned away from default blue (unless subject is consumer
|
|
420
|
+
hardware)
|
|
421
|
+
- [ ] At most 3 data colors + 1 accent in any single page
|
|
422
|
+
|
|
423
|
+
---
|
|
424
|
+
|
|
425
|
+
## 7. Common failure modes
|
|
426
|
+
|
|
427
|
+
| Symptom | Cause | Fix |
|
|
428
|
+
|---|---|---|
|
|
429
|
+
| Blank chart canvases | Chromium snapshotted before Chart.js painted | Add `--wait 15000`; set `Chart.defaults.animation = false` |
|
|
430
|
+
| Body text in default sans | Webfont didn't load before snapshot | Use system stack from spec §4, or `@font-face` from local file |
|
|
431
|
+
| Color desaturated in print | Missing `print-color-adjust: exact` | Apply to universal selector `*`, not `body` |
|
|
432
|
+
| Charts split across pages | Missing `.avoid-break` wrapper | Wrap each `.chart-card` |
|
|
433
|
+
| Tables eat too much space | Full-width CJK punctuation | Use half-width `()`、`:`、`/` inside cells |
|
|
434
|
+
| `3nm⊃2;` artifacts | HTML entity typo for `²` | Paste real unicode `²` `⁺` `™` etc |
|
|
435
|
+
| Output PDF is 1 KB | Source HTML had a JS error (404 on Chart.js, etc) | Open the source in a browser, check Console |
|
|
436
|
+
| Cover takes 2 pages | Cover height > 268 mm | Reduce padding or content; do not change `@page` margin |
|
|
437
|
+
|
|
438
|
+
For deeper debugging see [`troubleshooting.md`](troubleshooting.md).
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
# Design System
|
|
2
|
+
|
|
3
|
+
The aesthetic layer. Read this before authoring any HTML report.
|
|
4
|
+
This file answers "what should it look like and why." For *how* to wire the
|
|
5
|
+
HTML so it survives Chromium's print snapshot, see
|
|
6
|
+
[`html-pdf-spec.md`](html-pdf-spec.md).
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## The one rule
|
|
11
|
+
|
|
12
|
+
Every design decision must be **rooted in the document's content and purpose**.
|
|
13
|
+
Dark teal + cream is not "professional". Serif + beige is not "elegant".
|
|
14
|
+
A color chosen because it fits the content will always outperform a color chosen
|
|
15
|
+
because it seems safe.
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Palette logic
|
|
20
|
+
|
|
21
|
+
Pick a base palette by reading the content's mood, then declare the resulting
|
|
22
|
+
hex values as CSS variables on `:root`. **Don't** keep a default blue because
|
|
23
|
+
"blue is safe" — every report should look distinct from the last.
|
|
24
|
+
|
|
25
|
+
### Mood → base palette
|
|
26
|
+
|
|
27
|
+
| Content signal | Mood | Background | Accent | Text |
|
|
28
|
+
|---|---|---|---|---|
|
|
29
|
+
| Research, science, analysis | Authoritative | `#0F1F2E` deep ink | `#00B4A6` teal | `#F0EDE6` warm white |
|
|
30
|
+
| Business, strategy, finance | Confident | `#1C1C2B` near-black | `#E8A020` amber | `#F5F2EC` cream |
|
|
31
|
+
| Creative, portfolio, design | Expressive | `#1A0A2E` deep violet | `#FF6B6B` coral | `#FAF5FF` lavender white |
|
|
32
|
+
| Education, academic paper | Scholarly | `#FAFAF7` warm white | `#2C4A7C` navy | `#1A1A2E` dark |
|
|
33
|
+
| Healthcare, wellness | Calm | `#F5F9F8` pale mint | `#2D8B72` forest | `#1E3830` deep green |
|
|
34
|
+
| Resume / personal | Clean | `#FFFFFF` white | pick from content | `#111111` near-black |
|
|
35
|
+
| Formal publications, annual reports | Magazine | `#F2F0EC` warm linen | `#1C3557` deep navy | `#0D1A2B` near-black |
|
|
36
|
+
| Premium / dark reports, tech reviews | Darkroom | `#151C27` deep navy | `#4A6FA5` steel blue | `#F0EDE6` warm white |
|
|
37
|
+
| Technical docs, developer reports | Terminal | `#0D1117` near-black | `#39D353` neon green | `#E6EDF3` cool white |
|
|
38
|
+
| Portfolios, creative, photography | Poster | `#FFFFFF` white | `#0A0A0A` near-black | `#0A0A0A` near-black |
|
|
39
|
+
| General / unknown | Neutral | `#F8F6F1` warm off-white | `#3D3D3D` dark gray | `#1A1A1A` black |
|
|
40
|
+
|
|
41
|
+
### Accent selection rules
|
|
42
|
+
|
|
43
|
+
- **One accent color only.** Two accents split visual energy.
|
|
44
|
+
- Accent appears on: cover geometric elements, section rules, callout left
|
|
45
|
+
borders, table header background, page header rule, chart primary series.
|
|
46
|
+
Nowhere else.
|
|
47
|
+
- Accent must contrast with the cover background by at least **4.5:1** (WCAG
|
|
48
|
+
AA). Verify with any contrast checker before shipping.
|
|
49
|
+
- **Do not default to blue.** Blue is the most overused accent in
|
|
50
|
+
AI-generated documents.
|
|
51
|
+
|
|
52
|
+
### Color pairing anti-patterns
|
|
53
|
+
|
|
54
|
+
| Avoid | Why |
|
|
55
|
+
|---|---|
|
|
56
|
+
| Purple gradient on white | The default AI aesthetic — immediately signals "generated" |
|
|
57
|
+
| Navy + gold | Overused corporate cliche |
|
|
58
|
+
| All-black background | Prints aggressive, ink-heavy |
|
|
59
|
+
| More than 3 data colors + 1 accent | Visual noise |
|
|
60
|
+
| Accent on body text | Destroys readability |
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## Typography
|
|
65
|
+
|
|
66
|
+
Two typefaces maximum. Always.
|
|
67
|
+
|
|
68
|
+
| Role | Criteria | System-safe choices |
|
|
69
|
+
|---|---|---|
|
|
70
|
+
| Display (cover title, H1) | Distinctive, strong contrast, high weight | Times New Roman, Georgia, Cambria (serif) · SF Pro Display, Helvetica Neue (sans) |
|
|
71
|
+
| Text (body, captions, UI) | Highly readable at 10–11 pt | Helvetica, Arial, SF Pro Text · Georgia, Cambria for serif body |
|
|
72
|
+
|
|
73
|
+
Cover hero pairings by mood (load CDN webfonts via `@font-face` + a local
|
|
74
|
+
fallback file under `assets/fonts/` — do not rely on a live CDN at render
|
|
75
|
+
time):
|
|
76
|
+
|
|
77
|
+
- Authoritative: Playfair Display / IBM Plex Sans
|
|
78
|
+
- Confident: Syne / Nunito Sans
|
|
79
|
+
- Expressive: Fraunces / Inter
|
|
80
|
+
- Scholarly: EB Garamond / Source Sans 3
|
|
81
|
+
- Clean: DM Serif Display / DM Sans
|
|
82
|
+
- Restrained: Cormorant Garamond / Jost
|
|
83
|
+
- Bold: Barlow Condensed / Barlow
|
|
84
|
+
- Editorial: Bebas Neue / Libre Franklin
|
|
85
|
+
- Classical: Cormorant / Crimson Pro
|
|
86
|
+
- System fallback (always include last): `-apple-system, "PingFang SC",
|
|
87
|
+
"Helvetica Neue", Arial, sans-serif`
|
|
88
|
+
|
|
89
|
+
### Type scale (suggested baseline)
|
|
90
|
+
|
|
91
|
+
All sizes in `pt` (Chromium converts; never use `px` for body text in print).
|
|
92
|
+
|
|
93
|
+
| Token | Size | Leading | Usage |
|
|
94
|
+
|---|---|---|---|
|
|
95
|
+
| display | 38–54 pt | 1.10–1.20 | Cover title |
|
|
96
|
+
| h1 | 20–22 pt | 1.30 | Section headings |
|
|
97
|
+
| h2 | 13–15 pt | 1.40 | Subsection headings |
|
|
98
|
+
| h3 | 11.5–12 pt | 1.50 | Sub-subsection |
|
|
99
|
+
| body | 10–11 pt | 1.55–1.65 | Main prose |
|
|
100
|
+
| caption | 8.5–9 pt | 1.40 | Figure / table captions |
|
|
101
|
+
| meta | 8 pt | 1.30 | Header / footer text |
|
|
102
|
+
|
|
103
|
+
CJK font cascade rule: order is **SC → JP → KR → Latin → generic**. Putting
|
|
104
|
+
JP before SC renders simplified-Chinese characters in JP forms. Apple SD
|
|
105
|
+
Gothic Neo (or Noto Sans CJK KR) is required for Korean — Hiragino does not
|
|
106
|
+
cover hangul.
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
## Cover design
|
|
111
|
+
|
|
112
|
+
The cover is the most important page. It determines whether a reader trusts the
|
|
113
|
+
document. The cover should occupy exactly one A4 page (~268 mm content height
|
|
114
|
+
at 14 mm margin), end with `page-break-after: always`, and use full-bleed
|
|
115
|
+
`-webkit-print-color-adjust: exact`.
|
|
116
|
+
|
|
117
|
+
Pick a cover archetype that fits the mood. None of these are "the right one";
|
|
118
|
+
pick the one that matches the content energy.
|
|
119
|
+
|
|
120
|
+
| Archetype | Best for | Visual signature |
|
|
121
|
+
|---|---|---|
|
|
122
|
+
| **Full-bleed gradient hero** | Tech / data reports | Deep gradient + radial halo blobs + hero title + bottom meta strip |
|
|
123
|
+
| **Split panel** | Proposals | Colored left 42% panel + right white panel + accent vertical rule |
|
|
124
|
+
| **Typographic** | Resumes, academic papers | Off-white bg + oversized type + first word in accent + thin rule |
|
|
125
|
+
| **Atmospheric** | Portfolios | Near-black bg + soft accent radial + low-opacity dot grid |
|
|
126
|
+
| **Minimal bar** | Editorial summaries | White bg + 8 px accent left bar + huge light-weight title |
|
|
127
|
+
| **Stripe** | Newspaper / brand poster | Three horizontal bands (accent / dark / light), hard edges |
|
|
128
|
+
| **Diagonal** | Bold reports | SVG polygon diagonal cut, accent edge line traces it |
|
|
129
|
+
| **Frame** | Annual reports, legal | Inset rectangular border + accent corner squares |
|
|
130
|
+
| **Editorial** | Magazines | Ghost first-letter at low opacity + accent top bar + uppercase title |
|
|
131
|
+
| **Magazine** | Centered formal | Cream/linen bg, vertical stack, optional hero image |
|
|
132
|
+
| **Darkroom** | Premium tech reviews | Same as magazine but deep navy + grayscale hero filter |
|
|
133
|
+
| **Terminal** | Developer / system reports | Near-black + neon green + monospace + grid overlay + bracket frame |
|
|
134
|
+
| **Poster** | Creative, photography | White bg + thick accent left sidebar + 96 px condensed all-caps title |
|
|
135
|
+
|
|
136
|
+
### What always kills a cover
|
|
137
|
+
|
|
138
|
+
- Centered title on white background with a thin horizontal line beneath
|
|
139
|
+
- Gradient from one color to another that reads as PowerPoint, not print
|
|
140
|
+
- Drop shadows on text
|
|
141
|
+
- More than one accent color
|
|
142
|
+
- Emoji or icon fonts (fail silently in headless Chromium)
|
|
143
|
+
|
|
144
|
+
---
|
|
145
|
+
|
|
146
|
+
## Inner page restraint
|
|
147
|
+
|
|
148
|
+
Every design decision should remove something, not add something. The page is
|
|
149
|
+
done when there is nothing left to remove.
|
|
150
|
+
|
|
151
|
+
- Accent appears on section rules / chart bars / pill backgrounds — **not**
|
|
152
|
+
on body headings, **not** on bullet markers.
|
|
153
|
+
- No bordered card components inside body prose. Cards are reserved for
|
|
154
|
+
call-out roles: KPI grids, recommend cards, versus comparisons,
|
|
155
|
+
conclusion blocks, insight callouts.
|
|
156
|
+
- No rounded corners on anything except callout boxes / KPI cards (≤ 12 px).
|
|
157
|
+
- No shadows beyond `0 1px 3px rgba(0,0,0,0.04)` on chart cards (very subtle).
|
|
158
|
+
- Tables: header row in accent (or dark gradient), zebra rows, no internal
|
|
159
|
+
grid lines except the outer box and a hairline between rows.
|
|
160
|
+
- Callout boxes: left border in accent (3–4 px), very light tint background,
|
|
161
|
+
no icon decoration unless it's a single semantic emoji (⚡ insight, 🛠
|
|
162
|
+
pitfall).
|
|
163
|
+
|
|
164
|
+
### Page header / footer
|
|
165
|
+
|
|
166
|
+
Header (when used): document title left-aligned 7.5 pt muted + accent rule
|
|
167
|
+
1.5 pt full width below. Footer: author left, page number right, light rule
|
|
168
|
+
above. Both at 7.5 pt, color = `#86868b` or similar muted.
|
|
169
|
+
|
|
170
|
+
---
|
|
171
|
+
|
|
172
|
+
## Quality bar
|
|
173
|
+
|
|
174
|
+
A PDF passes if a designer would not be embarrassed to hand it to a client.
|
|
175
|
+
Concretely:
|
|
176
|
+
|
|
177
|
+
- Cover has a clear visual identity that is not "generic AI output".
|
|
178
|
+
- Body text is readable at arm's length without squinting.
|
|
179
|
+
- Every page looks like it belongs to the same document.
|
|
180
|
+
- No element bleeds off the edge or overlaps another.
|
|
181
|
+
- Page numbers are present (when ≥ 5 pages) and correct.
|
|
182
|
+
- The accent color appears fewer than 8 times per page on average.
|
|
183
|
+
- Last page is ≥ 1/3 full — if not, expand content, do **not** shrink margins.
|
|
184
|
+
- Two reports on different subjects don't look like reskins of each other —
|
|
185
|
+
the palette, typography, and cover archetype have all been adapted.
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
## Anti-patterns specific to AI-generated documents
|
|
190
|
+
|
|
191
|
+
These are the tells that a reader spots in 2 seconds:
|
|
192
|
+
|
|
193
|
+
| Tell | Fix |
|
|
194
|
+
|---|---|
|
|
195
|
+
| Apple-blue (`#007AFF`) on every report | Re-skin per subject (see palette table) |
|
|
196
|
+
| Identical KPI 4-grid on every cover | Mix layouts: timeline, hero stat, single big number |
|
|
197
|
+
| Stock emoji icons everywhere | One semantic emoji per callout, max 3 per page |
|
|
198
|
+
| Tables with the default Chrome look (gray rows, blue header) | Use the accent header + zebra body + outer-box-only style |
|
|
199
|
+
| Generic "Q3 2024 Strategy Review" cover with stock subtitle | Pull a real signal from the content for the subtitle |
|
|
200
|
+
| All charts in the same orientation | Mix horizontal / vertical / radar / scatter to match data shape |
|
|
201
|
+
|
|
202
|
+
When in doubt, look at the [`templates/`](../templates/) catalogue — every
|
|
203
|
+
skeleton there has been tuned for a real bench-trace; copy the closest one
|
|
204
|
+
and re-skin rather than starting from the generic blueprint.
|