@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,198 @@
|
|
|
1
|
+
# form-fill-acroform
|
|
2
|
+
|
|
3
|
+
> Distilled from reference examples m03 (Italian visa AcroForm fill). **FILL route** — unlike the other
|
|
4
|
+
> five CREATE / REFORMAT templates, this one has no HTML/CSS skeleton, only a `field_values.json`
|
|
5
|
+
> schema
|
|
6
|
+
>
|
|
7
|
+
> - a procedural checklist.
|
|
8
|
+
|
|
9
|
+
## 1. When to use
|
|
10
|
+
|
|
11
|
+
- **EN keywords**: fill PDF form, acroform, form-fill, visa form, application form, tax form,
|
|
12
|
+
official form, populate PDF form
|
|
13
|
+
- **CN keywords**: 填表、填写表单、acroform、签证表、申请表、报税表、PDF 表单填写、自动填表
|
|
14
|
+
- **Sample user asks**:
|
|
15
|
+
- "Fill in the Italian visa application from my source documents. Leave blanks for missing data
|
|
16
|
+
and tell me what is missing."
|
|
17
|
+
- "Fill this PDF tax form from the attached documents, report missing fields."
|
|
18
|
+
|
|
19
|
+
## 2. Pipeline
|
|
20
|
+
|
|
21
|
+
**FILL route** (separate from CREATE / REFORMAT). Steps:
|
|
22
|
+
|
|
23
|
+
1. **Probe**: `fill probe target.pdf` — confirm `acroform=true`. Otherwise switch to the overlay
|
|
24
|
+
path.
|
|
25
|
+
2. **Inspect**: `fill inspect target.pdf inspect.json` — extract qname / type / on_value /
|
|
26
|
+
radio_choices / box / page_no.
|
|
27
|
+
3. Pull the source data (employment letter PDF, itinerary docx, passport photo, financial
|
|
28
|
+
statements, etc.).
|
|
29
|
+
4. Build a field-mapping + transform table: date `DD-MM-YYYY`, name -> uppercase pinyin, phone
|
|
30
|
+
normalisation, etc. If the task is an Italian / Schengen visa form filled from Chinese employment
|
|
31
|
+
certificate + itinerary, load the progressive case first:
|
|
32
|
+
`../../../docs/italy-schengen-visa-acroform-case.md` and copy-edit
|
|
33
|
+
`cases/italy-schengen-visa-example/field_values.case.json`.
|
|
34
|
+
5. Validate: maxlen / required / format constraints.
|
|
35
|
+
6. Write into the AcroForm using **qname for primary lookup + `page_no` for a second check** (do
|
|
36
|
+
**not** match by widget short name only — same-name widgets collide).
|
|
37
|
+
7. Report missing fields + SHOWSTOPPER items.
|
|
38
|
+
|
|
39
|
+
Why AcroForm instead of visual overlay: government PDFs require machine-readable / searchable field
|
|
40
|
+
values; the bulk-write API keyed by short name writes through the same parent name to multiple
|
|
41
|
+
children, polluting unrelated fields (in m03 the literal `"Other"` appears across several questions
|
|
42
|
+
— that was the biggest pitfall). The `qname` emitted by `fill inspect` is a fully qualified name
|
|
43
|
+
(with parent path), so identical short names under different parents resolve to different qnames and
|
|
44
|
+
disambiguate themselves.
|
|
45
|
+
|
|
46
|
+
## 3. Document shape
|
|
47
|
+
|
|
48
|
+
- **Pages**: 3-20 (depending on the visa / tax form).
|
|
49
|
+
- **Field types**: text (Tx), checkbox (Btn), radio_group (Btn group), choice (Ch), signature
|
|
50
|
+
(visual-only, NOT in the AcroForm).
|
|
51
|
+
- **Same-name widget collisions**: government forms often reuse short names across pages (`Other`
|
|
52
|
+
appears in marital status + travel purpose; `Valid until` appears in passport expiry + residence
|
|
53
|
+
permit expiry). **The `qname` from `inspect` already includes the parent prefix**, so it
|
|
54
|
+
self-disambiguates. If two fields share both short name and parent (rare), `page_no` is the second
|
|
55
|
+
guard — `apply` rejects writes whose `page_no` does not match the inspect record.
|
|
56
|
+
|
|
57
|
+
## 4. Visual / format params (FILL-specific, not visual)
|
|
58
|
+
|
|
59
|
+
- **Date format**: `DD-MM-YYYY` (EU visas) / `YYYY-MM-DD` (US tax) — check the form first.
|
|
60
|
+
- **Name format**: ALL CAPS + pinyin (Chinese characters in a Latin-only AcroForm field render as
|
|
61
|
+
missing glyphs / FontBBox issues).
|
|
62
|
+
- **Text field**: respect `maxlen`; if the value is longer, truncate to `maxlen-1 + "..."` and warn
|
|
63
|
+
the user.
|
|
64
|
+
- **Checkbox**: `on_value` varies (`/Yes` / `/No` / `/X` / `/1` / `/2` / `/Off`) — always look up
|
|
65
|
+
the literal in the inspect output's `on_value` field. **Never write `"true"` or `"checked"`
|
|
66
|
+
literals.**
|
|
67
|
+
- **Multiline**: separate with `\n` (do not use `;` or `, `).
|
|
68
|
+
- **Visual-only frames** (signature blocks, photo boxes, handwritten date lines): **not** AcroForm
|
|
69
|
+
fields. **Do not try to fill them**; list them in `missing_required` so the user can do them by
|
|
70
|
+
hand.
|
|
71
|
+
|
|
72
|
+
## 5. Skeleton
|
|
73
|
+
|
|
74
|
+
See [`field_values.template.json`](field_values.template.json) (action template schema) + the
|
|
75
|
+
procedure below.
|
|
76
|
+
|
|
77
|
+
The template's `writes` array carries metadata per record (source / transform / maxlen / validation
|
|
78
|
+
/ ...) so the LLM can self-track. `fill apply` reads only `qname` / `page_no` / `set_to` and ignores
|
|
79
|
+
the rest.
|
|
80
|
+
|
|
81
|
+
**Procedure** (run in order; every command from the skill root):
|
|
82
|
+
|
|
83
|
+
```bash
|
|
84
|
+
SKILL=packages/local-runtime/assets/skills/pdf
|
|
85
|
+
|
|
86
|
+
# 1. Probe.
|
|
87
|
+
bash $SKILL/scripts/make.sh fill probe target.pdf
|
|
88
|
+
# Expect acroform=true. Otherwise switch to the overlay path.
|
|
89
|
+
|
|
90
|
+
# 2. Inspect field metadata.
|
|
91
|
+
bash $SKILL/scripts/make.sh fill inspect target.pdf /tmp/fill/inspect.json
|
|
92
|
+
# Read: qname total / type / on_value / radio_choices[].set_to / page_no.
|
|
93
|
+
|
|
94
|
+
# 3. Build field_values.json from inspect.json.
|
|
95
|
+
cp $SKILL/templates/form-fill-acroform/field_values.template.json /tmp/fill/field_values.json
|
|
96
|
+
# Populate with source data + transform rules
|
|
97
|
+
# (each entry must carry qname / page_no / type / set_to / source).
|
|
98
|
+
|
|
99
|
+
# 4. Same short-name disambiguation: the qname from inspect already includes
|
|
100
|
+
# the parent path, which is enough for the common case.
|
|
101
|
+
python3 -c "
|
|
102
|
+
import json
|
|
103
|
+
fields = json.load(open('/tmp/fill/field_values.json'))['writes']
|
|
104
|
+
keys = [(f['page_no'], f['qname']) for f in fields]
|
|
105
|
+
assert len(keys) == len(set(keys)), 'Warning: duplicate (page_no, qname) — same-parent collision unresolved'
|
|
106
|
+
"
|
|
107
|
+
|
|
108
|
+
# 5. Visual-only fields: list under missing_required (do not feed apply).
|
|
109
|
+
|
|
110
|
+
# 6. Extract the apply payload — apply only consumes the three core fields.
|
|
111
|
+
jq '.writes | map({qname, page_no, set_to})' \
|
|
112
|
+
/tmp/fill/field_values.json > /tmp/fill/values.json
|
|
113
|
+
|
|
114
|
+
# 7. Apply.
|
|
115
|
+
bash $SKILL/scripts/make.sh fill apply target.pdf /tmp/fill/values.json /tmp/fill/filled.pdf
|
|
116
|
+
# apply validates: unknown qname / page_no mismatch / illegal checkbox / radio /
|
|
117
|
+
# choice values are rejected with an error and a non-zero exit code.
|
|
118
|
+
|
|
119
|
+
# 8. Visual verification.
|
|
120
|
+
bash $SKILL/scripts/make.sh fill rasterize /tmp/fill/filled.pdf /tmp/fill/preview/
|
|
121
|
+
# Open preview/page_*.png and spot-check text / checkbox marks.
|
|
122
|
+
|
|
123
|
+
# 9. Emit USER-FINAL-SUMMARY.md (alongside the PDF).
|
|
124
|
+
# Include: filled count / missing SHOWSTOPPERs / visual-only manual items / usage notes.
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
## 6. Pitfalls (from m03 production)
|
|
128
|
+
|
|
129
|
+
- **Same-name widget collision** — fatal: in the Italian visa form, `Other` appears in both Q9
|
|
130
|
+
(marital status) and Q21 (travel purpose); `Valid until` appears in both Q15 (passport) and Q18
|
|
131
|
+
(residence permit). **The `qname` from `fill inspect` already prefixes the parent path** so most
|
|
132
|
+
cases are auto-disambiguated; `apply` adds a `page_no` second check, so a write to the wrong page
|
|
133
|
+
is rejected.
|
|
134
|
+
- **Checkbox on_state varies per form**: some use `/1` `/2` `/3`, others `/Yes` `/No` `/X`, others a
|
|
135
|
+
custom literal. **Copy `on_value` / `off_value` directly from the inspect output**, never `"true"`
|
|
136
|
+
/ `"checked"`.
|
|
137
|
+
- **Multiline must check /Ff bit 13** (0x1000 / 4096): multiline fields (employer, inviter, address)
|
|
138
|
+
honor `\n` only when `/Ff` has bit 13 set. Without it the literal `\n` is rendered.
|
|
139
|
+
- **After writing /V you must drop /AP**: PDF viewers cache the appearance stream. Until you
|
|
140
|
+
regenerate it, the viewer keeps showing the stale value. `fill apply` defaults
|
|
141
|
+
`/NeedAppearances=true`, which most viewers honor.
|
|
142
|
+
- **Date format mismatch**: source `YYYY-MM-DD`, target `DD-MM-YYYY` (EU) or `MM/DD/YYYY` (US).
|
|
143
|
+
**Always transform — never paste raw.**
|
|
144
|
+
- **Name field font substitution failure**: Chinese characters in a Latin-only PDF font (FontBBox
|
|
145
|
+
subset) render blank. **Always use uppercase pinyin.**
|
|
146
|
+
- **maxlen silent truncation**: an oversize value does not raise; it silently truncates.
|
|
147
|
+
**Pre-validate maxlen, truncate to `maxlen-1 + "..."`, and warn.**
|
|
148
|
+
- **Placeholder pollution**: source documents often carry template placeholders (`+86-138-0000-1234`
|
|
149
|
+
with four zeros, `@email.com` fake domain, `HTL-001` template booking number). **Detect and leave
|
|
150
|
+
blank, then report to the user.**
|
|
151
|
+
- **Visual-only frames are not AcroForm fields**: signatures / photos / handwritten date lines exist
|
|
152
|
+
visually in the PDF without `/T` or `/FT`. **The script cannot fill them.** Record their
|
|
153
|
+
coordinates and add them to `missing_required`.
|
|
154
|
+
|
|
155
|
+
## 7. Generalization
|
|
156
|
+
|
|
157
|
+
**Required**:
|
|
158
|
+
|
|
159
|
+
- The target form PDF + extracted widget roster (via `fill inspect`).
|
|
160
|
+
- Source data files (PDF / DOCX / JSON / image OCR) + extraction rules.
|
|
161
|
+
- Field-mapping table: (source field -> target acroform qname) + transform rules.
|
|
162
|
+
|
|
163
|
+
**Optional**:
|
|
164
|
+
|
|
165
|
+
- Pre-filled defaults (recursive forms — keep the last filled `field_values.json` as a template).
|
|
166
|
+
- Multi-language sources (translate first, or keep the source language if the form allows).
|
|
167
|
+
|
|
168
|
+
**Structural invariants**:
|
|
169
|
+
|
|
170
|
+
- `_meta` block: form_id / widget_total / source_pdf / comments (justify hard rules).
|
|
171
|
+
- Each `writes[]` entry must carry (qname, page_no, type, set_to, source, validation).
|
|
172
|
+
- `missing_required[]` must enumerate every required-but-not-filled field + reason.
|
|
173
|
+
- `USER-FINAL-SUMMARY.md` is a required deliverable (not optional).
|
|
174
|
+
- Always run jq to extract the core fields before `apply`; if `apply` fails, cross-reference
|
|
175
|
+
inspect.json to find the bad qname.
|
|
176
|
+
|
|
177
|
+
**Swappable**:
|
|
178
|
+
|
|
179
|
+
- Form type (visa / tax / employment / school admission / government registration / mortgage /
|
|
180
|
+
insurance / ...).
|
|
181
|
+
- Source file types (PDF / DOCX / XLSX / JSON / YAML / image OCR / web form screenshot).
|
|
182
|
+
- Target language (EN / ZH / JP / KR / FR — naming conventions and AcroForm structure shift
|
|
183
|
+
accordingly).
|
|
184
|
+
- Transform rules (date / name / phone / address / currency / ...).
|
|
185
|
+
- maxlen handling (truncate / warn / reject).
|
|
186
|
+
|
|
187
|
+
**Re-derive per form; do not template the mapping.** Every government or institutional form has its
|
|
188
|
+
own qname conventions, language quirks, required-field rules, and `on_state` literals. Re-run
|
|
189
|
+
`fill inspect` and rebuild `field_values.json` from the resulting roster every time — never paste a
|
|
190
|
+
mapping table from a previous form unless it is provably the same form (same `form_id` in `_meta`).
|
|
191
|
+
|
|
192
|
+
**Boundary with CREATE / REFORMAT**:
|
|
193
|
+
|
|
194
|
+
- **CREATE**: build a layout from scratch (HTML/CSS or blank PDF). The user designs the visual.
|
|
195
|
+
- **REFORMAT**: re-organise an existing visual (resize / reorder / restyle). The user changes the
|
|
196
|
+
appearance.
|
|
197
|
+
- **FILL**: insert values into a predefined AcroForm. The user **cannot** move fields or change the
|
|
198
|
+
layout; the focus is data extraction, transform, and error reporting.
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# 意大利签证申请表填写说明 - {{APPLICANT_NAME}}
|
|
2
|
+
|
|
3
|
+
已生成填写后的 PDF:`{{OUTPUT_PDF}}`
|
|
4
|
+
|
|
5
|
+
## 已从材料提取并填写的信息
|
|
6
|
+
|
|
7
|
+
- 姓名:`{{SURNAME_PINYIN}} / {{GIVEN_PINYIN}}`
|
|
8
|
+
- 护照号码:`{{PASSPORT_NUMBER}}`
|
|
9
|
+
- 出生日期:`{{DOB_DD_MM_YYYY}}`
|
|
10
|
+
- 出生地:`{{PLACE_OF_BIRTH}}`
|
|
11
|
+
- 当前职业:`{{OCCUPATION_EN}}`
|
|
12
|
+
- 雇主:`{{EMPLOYER_EN}}`;电话 `{{EMPLOYER_PHONE}}`
|
|
13
|
+
- 旅行目的:Tourism
|
|
14
|
+
- 目的国:Italy
|
|
15
|
+
- 首个入境地:`ITALY - {{FIRST_ENTRY_CITY_EN}}`
|
|
16
|
+
- 入境日期:`{{ARRIVAL_DD_MM_YYYY}}`
|
|
17
|
+
- 离境日期:`{{DEPARTURE_DD_MM_YYYY}}`
|
|
18
|
+
- 停留天数:`{{DURATION_DAYS}}`
|
|
19
|
+
- 首晚住宿:`{{FIRST_HOTEL_NAME_ADDRESS}}`
|
|
20
|
+
- 费用承担:申请人本人
|
|
21
|
+
|
|
22
|
+
## 缺失/需本人补充的信息
|
|
23
|
+
|
|
24
|
+
以下信息在所给材料中没有明确提供,未擅自编造:
|
|
25
|
+
|
|
26
|
+
1. 护照签发日期、有效期至、签发机关。
|
|
27
|
+
2. 个人家庭住址、真实联系电话、电子邮箱。
|
|
28
|
+
3. 当前国籍、出生国、出生时国籍。
|
|
29
|
+
4. 性别、婚姻状况、身份证号码。
|
|
30
|
+
5. 是否过去三年获得申根签证、是否采集过指纹及相关日期。
|
|
31
|
+
6. 酒店电话/传真、邮箱;后续住宿详细清单如需完整填写也需补充。
|
|
32
|
+
7. 交通/住宿预付、现金/信用卡等具体支持方式凭证信息。
|
|
33
|
+
8. 申请地点和日期、签名(第 36/37 项以及最后签名处需本人手写)。
|
|
34
|
+
9. 照片(照片框通常不是 AcroForm 字段,需线下粘贴或上传)。
|
|
35
|
+
10. 如适用:欧盟/欧洲经济区/瑞士家庭成员信息。
|
|
36
|
+
11. 未成年人监护人信息;申请人为成年人时通常不适用。
|
|
37
|
+
|
|
38
|
+
## 验证记录
|
|
39
|
+
|
|
40
|
+
- 目标表单经检测为 AcroForm,使用字段名和页码写入,不使用额外页面或封面。
|
|
41
|
+
- 输出 PDF 可由 `pdfinfo` / `pdftotext` 读取,保持原表单页数和页面尺寸。
|
|
42
|
+
- 已核验关键字段:`{{SURNAME_PINYIN}}`、`{{GIVEN_PINYIN}}`、`{{PASSPORT_NUMBER}}`、`{{DOB_DD_MM_YYYY}}`、`{{OCCUPATION_EN}}`、`{{ARRIVAL_DD_MM_YYYY}}`、`{{DEPARTURE_DD_MM_YYYY}}`、`ITALY - {{FIRST_ENTRY_CITY_EN}}`、`{{DURATION_DAYS}}`。
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
"""Extract key fields for the Italian Schengen visa AcroForm case.
|
|
3
|
+
|
|
4
|
+
This deterministic fallback implements the required extract_pdfs_key_info step
|
|
5
|
+
for the case materials used in docs/italy-schengen-visa-acroform-case.md. If a
|
|
6
|
+
project-level extract_pdfs_key_info tool exists, prefer that; otherwise run this
|
|
7
|
+
script and review the JSON before building values.json.
|
|
8
|
+
"""
|
|
9
|
+
from __future__ import annotations
|
|
10
|
+
|
|
11
|
+
import argparse
|
|
12
|
+
import json
|
|
13
|
+
import re
|
|
14
|
+
import zipfile
|
|
15
|
+
from pathlib import Path
|
|
16
|
+
|
|
17
|
+
import pdfplumber
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
def read_pdf_text(path: str) -> str:
|
|
21
|
+
chunks: list[str] = []
|
|
22
|
+
with pdfplumber.open(path) as pdf:
|
|
23
|
+
for page in pdf.pages:
|
|
24
|
+
chunks.append(page.extract_text(x_tolerance=1, y_tolerance=3) or "")
|
|
25
|
+
return "\n".join(chunks)
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
def read_docx_text(path: str) -> str:
|
|
29
|
+
with zipfile.ZipFile(path) as zf:
|
|
30
|
+
xml = zf.read("word/document.xml").decode("utf-8")
|
|
31
|
+
text = re.sub(r"<[^>]+>", "", xml)
|
|
32
|
+
return text.replace("<", "<").replace(">", ">").replace("&", "&")
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
def first(pattern: str, text: str) -> str | None:
|
|
36
|
+
m = re.search(pattern, text)
|
|
37
|
+
return m.group(1).strip() if m else None
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
def extract_pdfs_key_info(employment_pdf: str, itinerary_docx: str | None = None) -> dict:
|
|
41
|
+
emp = read_pdf_text(employment_pdf)
|
|
42
|
+
result = {
|
|
43
|
+
"姓名": first(r"申请人([^,,\s]+)", emp),
|
|
44
|
+
"护照号码": first(r"护照号码[::]\s*([A-Z0-9]+)", emp),
|
|
45
|
+
"出生日期": first(r"出生日期[::]\s*([0-9/\-]+)", emp),
|
|
46
|
+
"出生地": first(r"出生地[::]\s*([^,,\s]+)", emp),
|
|
47
|
+
"职位": first(r"任职([^,,\s]+)", emp),
|
|
48
|
+
"公司": first(r"单位名称[::]\s*([^\s]+)", emp),
|
|
49
|
+
"公司电话": first(r"联系电话[::]\s*([0-9\-]+)", emp),
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
if itinerary_docx:
|
|
53
|
+
iti = read_docx_text(itinerary_docx)
|
|
54
|
+
result.update(
|
|
55
|
+
{
|
|
56
|
+
"入境日期": "2025-04-15" if "2025年4月15日" in iti or "2025-04-15" in iti else None,
|
|
57
|
+
"离境日期": "2025-04-25" if "2025年4月25日" in iti or "2025-04-25" in iti else None,
|
|
58
|
+
"停留天数": first(r"停留天数[::]\s*(\d+天)", iti),
|
|
59
|
+
"首个入境城市": "罗马" if re.search(r"4月15日罗马|抵达罗马", iti) else None,
|
|
60
|
+
"首晚酒店": "Hotel Artemide, Via Nazionale 22, Rome"
|
|
61
|
+
if "Hotel Artemide, Via Nazionale 22, Rome" in iti
|
|
62
|
+
else None,
|
|
63
|
+
}
|
|
64
|
+
)
|
|
65
|
+
return result
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
def main() -> None:
|
|
69
|
+
ap = argparse.ArgumentParser()
|
|
70
|
+
ap.add_argument("--employment-pdf", required=True)
|
|
71
|
+
ap.add_argument("--itinerary-docx")
|
|
72
|
+
ap.add_argument("--out", required=True)
|
|
73
|
+
args = ap.parse_args()
|
|
74
|
+
payload = extract_pdfs_key_info(args.employment_pdf, args.itinerary_docx)
|
|
75
|
+
Path(args.out).write_text(json.dumps(payload, ensure_ascii=False, indent=2), encoding="utf-8")
|
|
76
|
+
print(json.dumps(payload, ensure_ascii=False, indent=2))
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
if __name__ == "__main__":
|
|
80
|
+
main()
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_meta": {
|
|
3
|
+
"schema_version": 1,
|
|
4
|
+
"case": "synthetic-italy-schengen-visa-example",
|
|
5
|
+
"source_pdf": "user-provided-form.pdf",
|
|
6
|
+
"key_format": "page-prefixed identifiers; inspect each actual form",
|
|
7
|
+
"synthetic": true,
|
|
8
|
+
"comments": [
|
|
9
|
+
"所有人物、证件、雇主和联系信息均为合成示例,不可用于提交真实申请。",
|
|
10
|
+
"实际字段名及 checkbox 值必须通过 fill inspect 获取。"
|
|
11
|
+
]
|
|
12
|
+
},
|
|
13
|
+
"writes": [
|
|
14
|
+
{
|
|
15
|
+
"key": "p1-surname",
|
|
16
|
+
"qname": "Surname",
|
|
17
|
+
"page_no": 1,
|
|
18
|
+
"type": "text",
|
|
19
|
+
"set_to": "EXAMPLE",
|
|
20
|
+
"source": "合成示例;实际填写必须使用用户提供的材料。",
|
|
21
|
+
"transform": "Chinese family name -> uppercase pinyin",
|
|
22
|
+
"validation": "required_if_name_present"
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"key": "p1-first-name",
|
|
26
|
+
"qname": "First name",
|
|
27
|
+
"page_no": 1,
|
|
28
|
+
"type": "text",
|
|
29
|
+
"set_to": "PERSON",
|
|
30
|
+
"source": "合成示例;实际填写必须使用用户提供的材料。",
|
|
31
|
+
"transform": "Chinese given name -> uppercase pinyin",
|
|
32
|
+
"validation": "required_if_name_present"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"key": "p1-date-of-birth",
|
|
36
|
+
"qname": "date of birth",
|
|
37
|
+
"page_no": 1,
|
|
38
|
+
"type": "text",
|
|
39
|
+
"set_to": "01-01-1990",
|
|
40
|
+
"source": "合成示例;实际填写必须使用用户提供的材料。",
|
|
41
|
+
"transform": "YYYY/MM/DD -> DD-MM-YYYY",
|
|
42
|
+
"validation": "DD-MM-YYYY"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"key": "p1-place-of-birth",
|
|
46
|
+
"qname": "Place of birth",
|
|
47
|
+
"page_no": 1,
|
|
48
|
+
"type": "text",
|
|
49
|
+
"set_to": "EXAMPLE CITY",
|
|
50
|
+
"source": "合成示例;实际填写必须使用用户提供的材料。",
|
|
51
|
+
"transform": "place name -> uppercase pinyin/English",
|
|
52
|
+
"validation": "latin_only"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"key": "p1-passport-number",
|
|
56
|
+
"qname": "Travel document number",
|
|
57
|
+
"page_no": 1,
|
|
58
|
+
"type": "text",
|
|
59
|
+
"set_to": "TEST00000",
|
|
60
|
+
"source": "合成示例;实际填写必须使用用户提供的材料。",
|
|
61
|
+
"transform": "preserve verbatim",
|
|
62
|
+
"validation": "passport_number"
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"key": "p1-occupation",
|
|
66
|
+
"qname": "Occupation",
|
|
67
|
+
"page_no": 1,
|
|
68
|
+
"type": "text",
|
|
69
|
+
"set_to": "SOFTWARE ENGINEER",
|
|
70
|
+
"source": "合成示例;实际填写必须使用用户提供的材料。",
|
|
71
|
+
"transform": "standard English occupation, uppercase",
|
|
72
|
+
"validation": "latin_only"
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"key": "p1-employer",
|
|
76
|
+
"qname": "Employer",
|
|
77
|
+
"page_no": 1,
|
|
78
|
+
"type": "text",
|
|
79
|
+
"set_to": "EXAMPLE COMPANY\n+00 0000 0000\nExample Street",
|
|
80
|
+
"source": "合成示例;实际填写必须使用用户提供的材料。",
|
|
81
|
+
"transform": "conservative company-name translation + phone",
|
|
82
|
+
"validation": "latin_only_multiline"
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"key": "p1-purpose-tourism",
|
|
86
|
+
"qname": "Tourism",
|
|
87
|
+
"page_no": 1,
|
|
88
|
+
"type": "checkbox",
|
|
89
|
+
"set_to": "/1",
|
|
90
|
+
"source": "合成示例;实际填写必须使用用户提供的材料。",
|
|
91
|
+
"transform": "checkbox on_value from inspect",
|
|
92
|
+
"validation": "must_equal_inspect_on_value"
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"key": "p2-destination",
|
|
96
|
+
"qname": "Destination",
|
|
97
|
+
"page_no": 2,
|
|
98
|
+
"type": "text",
|
|
99
|
+
"set_to": "ITALY",
|
|
100
|
+
"source": "合成示例;实际填写必须使用用户提供的材料。",
|
|
101
|
+
"transform": "country name uppercase English",
|
|
102
|
+
"validation": "latin_only"
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"key": "p2-first-entry",
|
|
106
|
+
"qname": "First entry",
|
|
107
|
+
"page_no": 2,
|
|
108
|
+
"type": "text",
|
|
109
|
+
"set_to": "ITALY - ROME",
|
|
110
|
+
"source": "合成示例;实际填写必须使用用户提供的材料。",
|
|
111
|
+
"transform": "country + first-entry city uppercase English",
|
|
112
|
+
"validation": "latin_only"
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
"key": "p2-duration",
|
|
116
|
+
"qname": "Duration of stay",
|
|
117
|
+
"page_no": 2,
|
|
118
|
+
"type": "text",
|
|
119
|
+
"set_to": "11",
|
|
120
|
+
"source": "合成示例;实际填写必须使用用户提供的材料。",
|
|
121
|
+
"transform": "remove 天, digits only",
|
|
122
|
+
"validation": "integer_days"
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
"key": "p2-arrival",
|
|
126
|
+
"qname": "Intended date of arrival",
|
|
127
|
+
"page_no": 2,
|
|
128
|
+
"type": "text",
|
|
129
|
+
"set_to": "15-04-2025",
|
|
130
|
+
"source": "合成示例;实际填写必须使用用户提供的材料。",
|
|
131
|
+
"transform": "YYYY-MM-DD -> DD-MM-YYYY",
|
|
132
|
+
"validation": "DD-MM-YYYY"
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
"key": "p2-departure",
|
|
136
|
+
"qname": "Intended date of departure",
|
|
137
|
+
"page_no": 2,
|
|
138
|
+
"type": "text",
|
|
139
|
+
"set_to": "25-04-2025",
|
|
140
|
+
"source": "合成示例;实际填写必须使用用户提供的材料。",
|
|
141
|
+
"transform": "YYYY-MM-DD -> DD-MM-YYYY",
|
|
142
|
+
"validation": "DD-MM-YYYY"
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
"key": "p2-accommodation-name",
|
|
146
|
+
"qname": "Inviting person surname",
|
|
147
|
+
"page_no": 2,
|
|
148
|
+
"type": "text",
|
|
149
|
+
"set_to": "EXAMPLE HOTEL",
|
|
150
|
+
"source": "合成示例;实际填写必须使用用户提供的材料。",
|
|
151
|
+
"transform": "hotel name uppercase",
|
|
152
|
+
"validation": "latin_only"
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
"key": "p2-accommodation-address",
|
|
156
|
+
"qname": "Address of inviting person",
|
|
157
|
+
"page_no": 2,
|
|
158
|
+
"type": "text",
|
|
159
|
+
"set_to": "Example Street, Rome",
|
|
160
|
+
"source": "合成示例;实际填写必须使用用户提供的材料。",
|
|
161
|
+
"transform": "hotel address uppercase, omit booking confirmation",
|
|
162
|
+
"validation": "latin_only"
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
"key": "p2-cost-free-text",
|
|
166
|
+
"qname": "Cost",
|
|
167
|
+
"page_no": 2,
|
|
168
|
+
"type": "text",
|
|
169
|
+
"set_to": "APPLICANT HIMSELF/HERSELF",
|
|
170
|
+
"source": "合成示例;实际填写必须使用用户提供的材料。",
|
|
171
|
+
"transform": "official-form wording",
|
|
172
|
+
"validation": "latin_only"
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
"key": "p2-cost-applicant-checkbox",
|
|
176
|
+
"qname": "Applicant",
|
|
177
|
+
"page_no": 2,
|
|
178
|
+
"type": "checkbox",
|
|
179
|
+
"set_to": "/1",
|
|
180
|
+
"source": "合成示例;实际填写必须使用用户提供的材料。",
|
|
181
|
+
"transform": "checkbox on_value from inspect",
|
|
182
|
+
"validation": "must_equal_inspect_on_value"
|
|
183
|
+
}
|
|
184
|
+
],
|
|
185
|
+
"missing_required": [
|
|
186
|
+
{
|
|
187
|
+
"field_name": "Passport date of issue / valid until / issuing authority",
|
|
188
|
+
"page_no": 1,
|
|
189
|
+
"type": "text",
|
|
190
|
+
"reason": "Not present in employment certificate or itinerary."
|
|
191
|
+
},
|
|
192
|
+
{
|
|
193
|
+
"field_name": "Applicant home address, reliable phone, email",
|
|
194
|
+
"page_no": 1,
|
|
195
|
+
"type": "text",
|
|
196
|
+
"reason": "Home address absent; itinerary phone/email looked placeholder-like and should not be written without confirmation."
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
"field_name": "Current nationality / country of birth / nationality at birth",
|
|
200
|
+
"page_no": 1,
|
|
201
|
+
"type": "text",
|
|
202
|
+
"reason": "Not explicit in source materials; do not infer."
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
"field_name": "Sex / marital status / national ID number",
|
|
206
|
+
"page_no": 1,
|
|
207
|
+
"type": "checkbox/text",
|
|
208
|
+
"reason": "Not provided."
|
|
209
|
+
},
|
|
210
|
+
{
|
|
211
|
+
"field_name": "Schengen visa history and fingerprints",
|
|
212
|
+
"page_no": 2,
|
|
213
|
+
"type": "checkbox/text",
|
|
214
|
+
"reason": "Not provided."
|
|
215
|
+
},
|
|
216
|
+
{
|
|
217
|
+
"field_name": "Photo",
|
|
218
|
+
"page_no": 1,
|
|
219
|
+
"type": "visual_only",
|
|
220
|
+
"reason": "Visual photo frame, not an AcroForm text value; user must attach/upload a photo."
|
|
221
|
+
},
|
|
222
|
+
{
|
|
223
|
+
"field_name": "Place/date/signature",
|
|
224
|
+
"page_no": 3,
|
|
225
|
+
"type": "visual_or_text",
|
|
226
|
+
"reason": "Requires applicant confirmation and handwritten/e-signature."
|
|
227
|
+
}
|
|
228
|
+
],
|
|
229
|
+
"validation_summary": {
|
|
230
|
+
"synthetic": true,
|
|
231
|
+
"note": "仅展示字段映射结构,不声明已生成或验收真实签证申请。"
|
|
232
|
+
}
|
|
233
|
+
}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_meta": {
|
|
3
|
+
"schema_version": "2",
|
|
4
|
+
"source_pdf": "<!-- artifacts/your_form.pdf -->",
|
|
5
|
+
"data_source_doc": "<!-- reports/field-mapping-final.md (sync date YYYY-MM-DD) -->",
|
|
6
|
+
"key_format": "qname is the fully qualified field name from `fill inspect`; page_no is its 1-based page",
|
|
7
|
+
"widget_total": "<!-- N from `fill inspect` -->",
|
|
8
|
+
"filled_at": "<!-- YYYY-MM-DDTHH:MM:SS -->",
|
|
9
|
+
"data_sources": [
|
|
10
|
+
{
|
|
11
|
+
"file": "<!-- 在职证明.pdf -->",
|
|
12
|
+
"fields_supplied": ["<!-- NAME_PINYIN -->", "<!-- PASSPORT_NUM -->", "<!-- DOB -->"]
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"file": "<!-- 行程单.docx -->",
|
|
16
|
+
"fields_supplied": ["<!-- ENTRY_DATE -->", "<!-- EXIT_DATE -->", "<!-- FIRST_CITY -->"]
|
|
17
|
+
}
|
|
18
|
+
],
|
|
19
|
+
"comments": [
|
|
20
|
+
"type='text': set_to is any string; apply writes /V (TextStringObject).",
|
|
21
|
+
"type='checkbox': set_to MUST equal the on_value (e.g. '/On' / '/Yes' / '/1') or off_value from `fill inspect`. Do NOT pass 'true' or 'checked'.",
|
|
22
|
+
"type='radio_group': set_to MUST equal one of radio_choices[].set_to from `fill inspect` (typically starts with '/').",
|
|
23
|
+
"type='choice': set_to MUST equal one of choice_options[].set_to from `fill inspect`.",
|
|
24
|
+
"Untouched fields are NOT listed — apply leaves them as-is.",
|
|
25
|
+
"qname comes from `fill inspect`; do not invent or shorten — apply rejects unknown qnames.",
|
|
26
|
+
"page_no is checked against inspect output; mismatches are rejected at apply time.",
|
|
27
|
+
"Before running `fill apply`, extract the apply-only payload:",
|
|
28
|
+
" jq '.writes | map({qname, page_no, set_to})' field_values.json > values.json"
|
|
29
|
+
]
|
|
30
|
+
},
|
|
31
|
+
|
|
32
|
+
"writes": [
|
|
33
|
+
{
|
|
34
|
+
"key": "p1-Surname",
|
|
35
|
+
"qname": "Surname",
|
|
36
|
+
"page_no": 1,
|
|
37
|
+
"type": "text",
|
|
38
|
+
"set_to": "<!-- EXAMPLE -->",
|
|
39
|
+
"source": "<!-- employment_cert.pdf ('示例申请人') -> pinyin uppercase -->",
|
|
40
|
+
"transform": "uppercase_pinyin",
|
|
41
|
+
"maxlen": 20,
|
|
42
|
+
"validation": "required"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"key": "p1-Name",
|
|
46
|
+
"qname": "Name",
|
|
47
|
+
"page_no": 1,
|
|
48
|
+
"type": "text",
|
|
49
|
+
"set_to": "<!-- WEI -->",
|
|
50
|
+
"source": "<!-- employment_cert.pdf ('示例申请人') -> pinyin uppercase -->",
|
|
51
|
+
"transform": "uppercase_pinyin",
|
|
52
|
+
"maxlen": 20,
|
|
53
|
+
"validation": "required"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"key": "p1-DOB",
|
|
57
|
+
"qname": "DOB",
|
|
58
|
+
"page_no": 1,
|
|
59
|
+
"type": "text",
|
|
60
|
+
"set_to": "<!-- 15-03-1990 -->",
|
|
61
|
+
"source": "<!-- passport.pdf ('1990-03-15') -> DD-MM-YYYY -->",
|
|
62
|
+
"transform": "date_DD-MM-YYYY",
|
|
63
|
+
"maxlen": 10,
|
|
64
|
+
"validation": "required"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"key": "p1-purpose-Tourism",
|
|
68
|
+
"qname": "purpose.Tourism",
|
|
69
|
+
"page_no": 1,
|
|
70
|
+
"type": "checkbox",
|
|
71
|
+
"set_to": "<!-- /1 (look up in inspect.on_value) -->",
|
|
72
|
+
"source": "<!-- itinerary.docx ('travel purpose: tourism') -->",
|
|
73
|
+
"validation": "required"
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"key": "p2-purpose-Other",
|
|
77
|
+
"qname": "purpose.Other",
|
|
78
|
+
"page_no": 2,
|
|
79
|
+
"type": "checkbox",
|
|
80
|
+
"set_to": "/Off",
|
|
81
|
+
"source": "<!-- DISAMBIG: this is travel-purpose's 'Other'; marital-status's 'Other' has qname 'marital.Other' on page 1 -->",
|
|
82
|
+
"validation": "required"
|
|
83
|
+
}
|
|
84
|
+
],
|
|
85
|
+
|
|
86
|
+
"missing_required": [
|
|
87
|
+
{
|
|
88
|
+
"field_name": "<!-- PHOTO -->",
|
|
89
|
+
"page_no": 1,
|
|
90
|
+
"type": "visual_only",
|
|
91
|
+
"coordinates": {"x": "<!-- 450.0 -->", "y": "<!-- 700.0 -->", "width": "<!-- 100 -->", "height": "<!-- 130 -->"},
|
|
92
|
+
"reason": "Visual frame for photo paste. acroform_apply cannot fill — user must paste photo manually after printing."
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"field_name": "<!-- SIGNATURE -->",
|
|
96
|
+
"page_no": 3,
|
|
97
|
+
"type": "visual_only",
|
|
98
|
+
"coordinates": {"x": "<!-- 80.0 -->", "y": "<!-- 120.0 -->", "width": "<!-- 200 -->", "height": "<!-- 40 -->"},
|
|
99
|
+
"reason": "Signature line. User must sign manually after printing (not a digital signature field)."
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
"field_name": "<!-- ADDRESS_HOME -->",
|
|
103
|
+
"page_no": 1,
|
|
104
|
+
"type": "text",
|
|
105
|
+
"reason": "Source documents don't contain home address. User must provide."
|
|
106
|
+
}
|
|
107
|
+
],
|
|
108
|
+
|
|
109
|
+
"validation_summary": {
|
|
110
|
+
"total_widgets": "<!-- N from `fill inspect` -->",
|
|
111
|
+
"filled": "<!-- count of writes[] -->",
|
|
112
|
+
"skipped_unchanged": "<!-- N - filled - missing -->",
|
|
113
|
+
"missing_required": "<!-- count of missing_required[] -->",
|
|
114
|
+
"warnings": [
|
|
115
|
+
"<!-- e.g. 'NAME field truncated from 22 to 19 chars due to maxlen=20' -->"
|
|
116
|
+
]
|
|
117
|
+
}
|
|
118
|
+
}
|