@wagemule/daemon 0.1.2 → 0.1.4
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/README.md +9 -1
- package/dist/main.cjs +246 -42
- package/dist/main.cjs.map +3 -3
- package/dist/skills/larksuite/lark-approval/SKILL.md +56 -0
- package/dist/skills/larksuite/lark-attendance/SKILL.md +57 -0
- package/dist/skills/larksuite/lark-base/SKILL.md +349 -0
- package/dist/skills/larksuite/lark-base/references/dashboard-block-data-config.md +350 -0
- package/dist/skills/larksuite/lark-base/references/examples.md +140 -0
- package/dist/skills/larksuite/lark-base/references/formula-field-guide.md +735 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-advperm-disable.md +83 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-advperm-enable.md +80 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-base-copy.md +74 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-base-create.md +68 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-base-get.md +39 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-cell-value.md +151 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-arrange.md +83 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-block-create.md +108 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-block-delete.md +46 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-block-get.md +57 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-block-list.md +53 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-block-update.md +84 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-create.md +73 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-delete.md +44 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-get.md +59 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-list.md +52 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-dashboard-update.md +69 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-dashboard.md +240 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-data-analysis-sop.md +88 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-data-query.md +451 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-field-create.md +104 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-field-delete.md +51 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-field-get.md +42 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-field-list.md +44 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-field-search-options.md +48 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-field-update.md +166 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-field.md +23 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-form-create.md +87 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-form-delete.md +64 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-form-get.md +68 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-form-list.md +73 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-form-questions-create.md +118 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-form-questions-delete.md +68 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-form-questions-list.md +84 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-form-questions-update.md +92 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-form-questions.md +23 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-form-update.md +82 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-form.md +24 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-history.md +16 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-record-batch-create.md +58 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-record-batch-update.md +53 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-record-delete.md +62 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-record-history-list.md +86 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-record-share-link-create.md +72 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-record-upload-attachment.md +50 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-record-upsert.md +64 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-record.md +29 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-role-create.md +89 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-role-delete.md +83 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-role-get.md +87 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-role-list.md +81 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-role-update.md +94 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-shortcut-field-properties.md +481 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-table-create.md +62 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-table-delete.md +51 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-table-get.md +46 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-table-list.md +43 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-table-update.md +49 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-table.md +20 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-view-create.md +50 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-view-delete.md +48 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-view-get-card.md +38 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-view-get-filter.md +38 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-view-get-group.md +38 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-view-get-sort.md +38 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-view-get-timebar.md +38 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-view-get-visible-fields.md +28 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-view-get.md +38 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-view-list.md +44 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-view-rename.md +44 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-view-set-card.md +55 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-view-set-filter.md +181 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-view-set-group.md +65 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-view-set-sort.md +63 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-view-set-timebar.md +51 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-view-set-visible-fields.md +46 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-view.md +44 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-workflow-create.md +180 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-workflow-disable.md +94 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-workflow-enable.md +94 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-workflow-get.md +147 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-workflow-guide.md +718 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-workflow-list.md +124 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-workflow-schema.md +935 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-workflow-update.md +167 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-workflow.md +23 -0
- package/dist/skills/larksuite/lark-base/references/lark-base-workspace.md +18 -0
- package/dist/skills/larksuite/lark-base/references/lookup-field-guide.md +510 -0
- package/dist/skills/larksuite/lark-base/references/role-config.md +539 -0
- package/dist/skills/larksuite/lark-calendar/SKILL.md +154 -0
- package/dist/skills/larksuite/lark-calendar/references/lark-calendar-agenda.md +78 -0
- package/dist/skills/larksuite/lark-calendar/references/lark-calendar-create.md +109 -0
- package/dist/skills/larksuite/lark-calendar/references/lark-calendar-freebusy.md +124 -0
- package/dist/skills/larksuite/lark-calendar/references/lark-calendar-room-find.md +113 -0
- package/dist/skills/larksuite/lark-calendar/references/lark-calendar-rsvp.md +42 -0
- package/dist/skills/larksuite/lark-calendar/references/lark-calendar-schedule-meeting.md +265 -0
- package/dist/skills/larksuite/lark-calendar/references/lark-calendar-suggestion.md +125 -0
- package/dist/skills/larksuite/lark-calendar/references/lark-calendar-update.md +105 -0
- package/dist/skills/larksuite/lark-contact/SKILL.md +45 -0
- package/dist/skills/larksuite/lark-contact/references/lark-contact-get-user.md +19 -0
- package/dist/skills/larksuite/lark-contact/references/lark-contact-search-user.md +124 -0
- package/dist/skills/larksuite/lark-doc/SKILL.md +69 -0
- package/dist/skills/larksuite/lark-doc/references/lark-doc-create.md +89 -0
- package/dist/skills/larksuite/lark-doc/references/lark-doc-fetch.md +141 -0
- package/dist/skills/larksuite/lark-doc/references/lark-doc-md.md +71 -0
- package/dist/skills/larksuite/lark-doc/references/lark-doc-media-download.md +50 -0
- package/dist/skills/larksuite/lark-doc/references/lark-doc-media-insert.md +114 -0
- package/dist/skills/larksuite/lark-doc/references/lark-doc-media-preview.md +41 -0
- package/dist/skills/larksuite/lark-doc/references/lark-doc-search.md +217 -0
- package/dist/skills/larksuite/lark-doc/references/lark-doc-update.md +252 -0
- package/dist/skills/larksuite/lark-doc/references/lark-doc-whiteboard.md +100 -0
- package/dist/skills/larksuite/lark-doc/references/lark-doc-xml.md +169 -0
- package/dist/skills/larksuite/lark-doc/references/style/lark-doc-create-workflow.md +56 -0
- package/dist/skills/larksuite/lark-doc/references/style/lark-doc-style.md +106 -0
- package/dist/skills/larksuite/lark-doc/references/style/lark-doc-update-workflow.md +54 -0
- package/dist/skills/larksuite/lark-drive/SKILL.md +343 -0
- package/dist/skills/larksuite/lark-drive/references/lark-drive-add-comment.md +169 -0
- package/dist/skills/larksuite/lark-drive/references/lark-drive-apply-permission.md +77 -0
- package/dist/skills/larksuite/lark-drive/references/lark-drive-create-folder.md +73 -0
- package/dist/skills/larksuite/lark-drive/references/lark-drive-create-shortcut.md +103 -0
- package/dist/skills/larksuite/lark-drive/references/lark-drive-delete.md +79 -0
- package/dist/skills/larksuite/lark-drive/references/lark-drive-download.md +31 -0
- package/dist/skills/larksuite/lark-drive/references/lark-drive-export-download.md +50 -0
- package/dist/skills/larksuite/lark-drive/references/lark-drive-export.md +119 -0
- package/dist/skills/larksuite/lark-drive/references/lark-drive-import.md +154 -0
- package/dist/skills/larksuite/lark-drive/references/lark-drive-move.md +120 -0
- package/dist/skills/larksuite/lark-drive/references/lark-drive-pull.md +137 -0
- package/dist/skills/larksuite/lark-drive/references/lark-drive-push.md +162 -0
- package/dist/skills/larksuite/lark-drive/references/lark-drive-reactions.md +113 -0
- package/dist/skills/larksuite/lark-drive/references/lark-drive-search.md +239 -0
- package/dist/skills/larksuite/lark-drive/references/lark-drive-status.md +137 -0
- package/dist/skills/larksuite/lark-drive/references/lark-drive-task-result.md +302 -0
- package/dist/skills/larksuite/lark-drive/references/lark-drive-upload.md +101 -0
- package/dist/skills/larksuite/lark-event/SKILL.md +145 -0
- package/dist/skills/larksuite/lark-event/references/lark-event-im.md +86 -0
- package/dist/skills/larksuite/lark-im/SKILL.md +162 -0
- package/dist/skills/larksuite/lark-im/references/lark-im-chat-create.md +162 -0
- package/dist/skills/larksuite/lark-im/references/lark-im-chat-identity.md +55 -0
- package/dist/skills/larksuite/lark-im/references/lark-im-chat-list.md +113 -0
- package/dist/skills/larksuite/lark-im/references/lark-im-chat-messages-list.md +142 -0
- package/dist/skills/larksuite/lark-im/references/lark-im-chat-search.md +136 -0
- package/dist/skills/larksuite/lark-im/references/lark-im-chat-update.md +84 -0
- package/dist/skills/larksuite/lark-im/references/lark-im-flag-cancel.md +67 -0
- package/dist/skills/larksuite/lark-im/references/lark-im-flag-create.md +67 -0
- package/dist/skills/larksuite/lark-im/references/lark-im-flag-list.md +100 -0
- package/dist/skills/larksuite/lark-im/references/lark-im-messages-mget.md +95 -0
- package/dist/skills/larksuite/lark-im/references/lark-im-messages-reply.md +222 -0
- package/dist/skills/larksuite/lark-im/references/lark-im-messages-resources-download.md +94 -0
- package/dist/skills/larksuite/lark-im/references/lark-im-messages-search.md +217 -0
- package/dist/skills/larksuite/lark-im/references/lark-im-messages-send.md +223 -0
- package/dist/skills/larksuite/lark-im/references/lark-im-reactions.md +297 -0
- package/dist/skills/larksuite/lark-im/references/lark-im-threads-messages-list.md +111 -0
- package/dist/skills/larksuite/lark-mail/SKILL.md +648 -0
- package/dist/skills/larksuite/lark-mail/references/lark-mail-decline-receipt.md +115 -0
- package/dist/skills/larksuite/lark-mail/references/lark-mail-draft-create.md +123 -0
- package/dist/skills/larksuite/lark-mail/references/lark-mail-draft-edit.md +400 -0
- package/dist/skills/larksuite/lark-mail/references/lark-mail-forward.md +232 -0
- package/dist/skills/larksuite/lark-mail/references/lark-mail-message.md +230 -0
- package/dist/skills/larksuite/lark-mail/references/lark-mail-messages.md +108 -0
- package/dist/skills/larksuite/lark-mail/references/lark-mail-reply-all.md +206 -0
- package/dist/skills/larksuite/lark-mail/references/lark-mail-reply.md +242 -0
- package/dist/skills/larksuite/lark-mail/references/lark-mail-send-receipt.md +120 -0
- package/dist/skills/larksuite/lark-mail/references/lark-mail-send.md +216 -0
- package/dist/skills/larksuite/lark-mail/references/lark-mail-share-to-chat.md +87 -0
- package/dist/skills/larksuite/lark-mail/references/lark-mail-signature.md +98 -0
- package/dist/skills/larksuite/lark-mail/references/lark-mail-template-create.md +129 -0
- package/dist/skills/larksuite/lark-mail/references/lark-mail-template-update.md +150 -0
- package/dist/skills/larksuite/lark-mail/references/lark-mail-thread.md +111 -0
- package/dist/skills/larksuite/lark-mail/references/lark-mail-triage.md +122 -0
- package/dist/skills/larksuite/lark-mail/references/lark-mail-watch.md +94 -0
- package/dist/skills/larksuite/lark-markdown/SKILL.md +46 -0
- package/dist/skills/larksuite/lark-markdown/references/lark-markdown-create.md +86 -0
- package/dist/skills/larksuite/lark-markdown/references/lark-markdown-fetch.md +79 -0
- package/dist/skills/larksuite/lark-markdown/references/lark-markdown-overwrite.md +85 -0
- package/dist/skills/larksuite/lark-minutes/SKILL.md +139 -0
- package/dist/skills/larksuite/lark-minutes/references/lark-minutes-download.md +137 -0
- package/dist/skills/larksuite/lark-minutes/references/lark-minutes-search.md +206 -0
- package/dist/skills/larksuite/lark-minutes/references/lark-minutes-upload.md +104 -0
- package/dist/skills/larksuite/lark-okr/SKILL.md +133 -0
- package/dist/skills/larksuite/lark-okr/references/lark-okr-contentblock.md +359 -0
- package/dist/skills/larksuite/lark-okr/references/lark-okr-cycle-detail.md +84 -0
- package/dist/skills/larksuite/lark-okr/references/lark-okr-cycle-list.md +90 -0
- package/dist/skills/larksuite/lark-okr/references/lark-okr-entities.md +329 -0
- package/dist/skills/larksuite/lark-okr/references/lark-okr-image-upload.md +116 -0
- package/dist/skills/larksuite/lark-okr/references/lark-okr-progress-create.md +81 -0
- package/dist/skills/larksuite/lark-okr/references/lark-okr-progress-delete.md +47 -0
- package/dist/skills/larksuite/lark-okr/references/lark-okr-progress-get.md +62 -0
- package/dist/skills/larksuite/lark-okr/references/lark-okr-progress-list.md +80 -0
- package/dist/skills/larksuite/lark-okr/references/lark-okr-progress-update.md +81 -0
- package/dist/skills/larksuite/lark-openapi-explorer/SKILL.md +153 -0
- package/dist/skills/larksuite/lark-shared/SKILL.md +138 -0
- package/dist/skills/larksuite/lark-sheets/SKILL.md +345 -0
- package/dist/skills/larksuite/lark-sheets/references/lark-sheets-cell-data.md +197 -0
- package/dist/skills/larksuite/lark-sheets/references/lark-sheets-cell-images.md +59 -0
- package/dist/skills/larksuite/lark-sheets/references/lark-sheets-cell-style-and-merge.md +141 -0
- package/dist/skills/larksuite/lark-sheets/references/lark-sheets-dropdown.md +133 -0
- package/dist/skills/larksuite/lark-sheets/references/lark-sheets-filter-views.md +193 -0
- package/dist/skills/larksuite/lark-sheets/references/lark-sheets-float-images.md +125 -0
- package/dist/skills/larksuite/lark-sheets/references/lark-sheets-formula.md +88 -0
- package/dist/skills/larksuite/lark-sheets/references/lark-sheets-row-column-management.md +151 -0
- package/dist/skills/larksuite/lark-sheets/references/lark-sheets-sheet-management.md +164 -0
- package/dist/skills/larksuite/lark-sheets/references/lark-sheets-spreadsheet-management.md +134 -0
- package/dist/skills/larksuite/lark-skill-maker/SKILL.md +85 -0
- package/dist/skills/larksuite/lark-slides/SKILL.md +525 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/administration--all_hands_meeting.xml +1999 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/administration--annual_gala.xml +1160 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/administration--company_intro.xml +1376 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/administration--corporate_culture.xml +1765 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/hr--employee_training.xml +912 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/hr--employee_training_workshop.xml +1504 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/hr--onboarding.xml +933 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/marketing--brand_communication.xml +1367 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/marketing--brand_logo_design.xml +1347 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/marketing--brand_operations_plan.xml +1309 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/marketing--business_plan.xml +1646 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/marketing--marketing_plan.xml +1469 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/marketing--marketing_strategy.xml +1484 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/marketing--product_whitepaper.xml +1455 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/marketing--roadshow_business_plan.xml +1506 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/misc--book_sharing.xml +1338 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/misc--club_event_plan.xml +4885 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/misc--student_career_plan.xml +1854 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/office--dark_general.xml +3763 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/office--dept_annual_report.xml +1192 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/office--light_general.xml +3378 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/office--project_kickoff.xml +3152 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/office--quarterly_review.xml +1253 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/office--work_report.xml +1099 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/office--work_summary.xml +4420 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/office--work_summary_report.xml +1523 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/operations--brand_logo_design.xml +1347 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/operations--brand_operations_plan.xml +1309 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/operations--marketing_plan.xml +1469 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/operations--product_promotion.xml +687 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/personal--experience_sharing.xml +2242 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/personal--personal_resume.xml +2047 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/personal--promotion_defense.xml +1099 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/personal--promotion_report.xml +1039 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/personal--self_intro.xml +696 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/personal--teaching_sharing.xml +3013 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/product--business_case_analysis.xml +1341 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/product--market_analysis.xml +898 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/product--product_analysis.xml +1537 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/product--product_intro.xml +2838 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/product--product_promotion.xml +687 -0
- package/dist/skills/larksuite/lark-slides/assets/templates/product--product_promotion_2.xml +687 -0
- package/dist/skills/larksuite/lark-slides/references/examples.md +261 -0
- package/dist/skills/larksuite/lark-slides/references/lark-slides-create.md +137 -0
- package/dist/skills/larksuite/lark-slides/references/lark-slides-edit-workflows.md +142 -0
- package/dist/skills/larksuite/lark-slides/references/lark-slides-media-upload.md +128 -0
- package/dist/skills/larksuite/lark-slides/references/lark-slides-replace-slide.md +239 -0
- package/dist/skills/larksuite/lark-slides/references/lark-slides-xml-presentation-slide-create.md +221 -0
- package/dist/skills/larksuite/lark-slides/references/lark-slides-xml-presentation-slide-delete.md +123 -0
- package/dist/skills/larksuite/lark-slides/references/lark-slides-xml-presentation-slide-get.md +110 -0
- package/dist/skills/larksuite/lark-slides/references/lark-slides-xml-presentation-slide-replace.md +186 -0
- package/dist/skills/larksuite/lark-slides/references/lark-slides-xml-presentations-get.md +98 -0
- package/dist/skills/larksuite/lark-slides/references/slide-templates.md +201 -0
- package/dist/skills/larksuite/lark-slides/references/slides_demo.xml +226 -0
- package/dist/skills/larksuite/lark-slides/references/slides_xml_schema_definition.xml +3004 -0
- package/dist/skills/larksuite/lark-slides/references/template-catalog.md +464 -0
- package/dist/skills/larksuite/lark-slides/references/template-index.json +1853 -0
- package/dist/skills/larksuite/lark-slides/references/xml-format-guide.md +369 -0
- package/dist/skills/larksuite/lark-slides/references/xml-schema-quick-ref.md +215 -0
- package/dist/skills/larksuite/lark-slides/scripts/layout_lint.py +349 -0
- package/dist/skills/larksuite/lark-slides/scripts/layout_lint_test.py +159 -0
- package/dist/skills/larksuite/lark-slides/scripts/template_tool.py +970 -0
- package/dist/skills/larksuite/lark-slides/scripts/template_tool_test.py +177 -0
- package/dist/skills/larksuite/lark-task/SKILL.md +165 -0
- package/dist/skills/larksuite/lark-task/references/lark-task-assign.md +38 -0
- package/dist/skills/larksuite/lark-task/references/lark-task-comment.md +28 -0
- package/dist/skills/larksuite/lark-task/references/lark-task-complete.md +27 -0
- package/dist/skills/larksuite/lark-task/references/lark-task-create.md +57 -0
- package/dist/skills/larksuite/lark-task/references/lark-task-followers.md +35 -0
- package/dist/skills/larksuite/lark-task/references/lark-task-get-my-tasks.md +55 -0
- package/dist/skills/larksuite/lark-task/references/lark-task-get-related-tasks.md +53 -0
- package/dist/skills/larksuite/lark-task/references/lark-task-reminder.md +36 -0
- package/dist/skills/larksuite/lark-task/references/lark-task-reopen.md +27 -0
- package/dist/skills/larksuite/lark-task/references/lark-task-search.md +41 -0
- package/dist/skills/larksuite/lark-task/references/lark-task-set-ancestor.md +32 -0
- package/dist/skills/larksuite/lark-task/references/lark-task-subscribe-event.md +86 -0
- package/dist/skills/larksuite/lark-task/references/lark-task-tasklist-create.md +35 -0
- package/dist/skills/larksuite/lark-task/references/lark-task-tasklist-members.md +36 -0
- package/dist/skills/larksuite/lark-task/references/lark-task-tasklist-search.md +38 -0
- package/dist/skills/larksuite/lark-task/references/lark-task-tasklist-task-add.md +38 -0
- package/dist/skills/larksuite/lark-task/references/lark-task-update.md +37 -0
- package/dist/skills/larksuite/lark-task/references/lark-task-upload-attachment.md +59 -0
- package/dist/skills/larksuite/lark-vc/SKILL.md +168 -0
- package/dist/skills/larksuite/lark-vc/references/lark-vc-notes.md +126 -0
- package/dist/skills/larksuite/lark-vc/references/lark-vc-recording.md +153 -0
- package/dist/skills/larksuite/lark-vc/references/lark-vc-search.md +176 -0
- package/dist/skills/larksuite/lark-vc-agent/SKILL.md +121 -0
- package/dist/skills/larksuite/lark-vc-agent/references/lark-vc-agent-meeting-events.md +247 -0
- package/dist/skills/larksuite/lark-vc-agent/references/lark-vc-agent-meeting-join.md +133 -0
- package/dist/skills/larksuite/lark-vc-agent/references/lark-vc-agent-meeting-leave.md +111 -0
- package/dist/skills/larksuite/lark-whiteboard/SKILL.md +144 -0
- package/dist/skills/larksuite/lark-whiteboard/references/connectors.md +102 -0
- package/dist/skills/larksuite/lark-whiteboard/references/content.md +40 -0
- package/dist/skills/larksuite/lark-whiteboard/references/image.md +80 -0
- package/dist/skills/larksuite/lark-whiteboard/references/lark-whiteboard-query.md +49 -0
- package/dist/skills/larksuite/lark-whiteboard/references/lark-whiteboard-update.md +100 -0
- package/dist/skills/larksuite/lark-whiteboard/references/layout.md +374 -0
- package/dist/skills/larksuite/lark-whiteboard/references/schema.md +357 -0
- package/dist/skills/larksuite/lark-whiteboard/references/style.md +318 -0
- package/dist/skills/larksuite/lark-whiteboard/references/typography.md +73 -0
- package/dist/skills/larksuite/lark-whiteboard/routes/dsl.md +107 -0
- package/dist/skills/larksuite/lark-whiteboard/routes/mermaid.md +27 -0
- package/dist/skills/larksuite/lark-whiteboard/routes/svg.md +54 -0
- package/dist/skills/larksuite/lark-whiteboard/scenes/architecture.md +433 -0
- package/dist/skills/larksuite/lark-whiteboard/scenes/bar-chart.md +187 -0
- package/dist/skills/larksuite/lark-whiteboard/scenes/comparison.md +135 -0
- package/dist/skills/larksuite/lark-whiteboard/scenes/fishbone.md +238 -0
- package/dist/skills/larksuite/lark-whiteboard/scenes/flowchart.md +185 -0
- package/dist/skills/larksuite/lark-whiteboard/scenes/flywheel.md +195 -0
- package/dist/skills/larksuite/lark-whiteboard/scenes/funnel.md +101 -0
- package/dist/skills/larksuite/lark-whiteboard/scenes/line-chart.md +214 -0
- package/dist/skills/larksuite/lark-whiteboard/scenes/mermaid.md +130 -0
- package/dist/skills/larksuite/lark-whiteboard/scenes/milestone.md +139 -0
- package/dist/skills/larksuite/lark-whiteboard/scenes/organization.md +173 -0
- package/dist/skills/larksuite/lark-whiteboard/scenes/photo-showcase.md +126 -0
- package/dist/skills/larksuite/lark-whiteboard/scenes/pyramid.md +99 -0
- package/dist/skills/larksuite/lark-whiteboard/scenes/swimlane.md +371 -0
- package/dist/skills/larksuite/lark-whiteboard/scenes/treemap.md +216 -0
- package/dist/skills/larksuite/lark-wiki/SKILL.md +111 -0
- package/dist/skills/larksuite/lark-wiki/references/lark-wiki-delete-space.md +205 -0
- package/dist/skills/larksuite/lark-wiki/references/lark-wiki-move.md +183 -0
- package/dist/skills/larksuite/lark-wiki/references/lark-wiki-node-copy.md +72 -0
- package/dist/skills/larksuite/lark-wiki/references/lark-wiki-node-create.md +127 -0
- package/dist/skills/larksuite/lark-wiki/references/lark-wiki-node-list.md +88 -0
- package/dist/skills/larksuite/lark-wiki/references/lark-wiki-space-list.md +68 -0
- package/dist/skills/larksuite/lark-workflow-meeting-summary/SKILL.md +104 -0
- package/dist/skills/larksuite/lark-workflow-standup-report/SKILL.md +120 -0
- package/package.json +2 -1
|
@@ -0,0 +1,371 @@
|
|
|
1
|
+
# 泳道图(Swimlane)
|
|
2
|
+
|
|
3
|
+
适用于:跨角色/跨系统的端到端流程(用户/网关/服务/存储/回调)、多泳道协作流程、系统交互链路图。
|
|
4
|
+
|
|
5
|
+
支持两种方向:
|
|
6
|
+
- **水平泳道**:泳道为横向条带(自上而下排列),流程从左到右推进
|
|
7
|
+
- **垂直泳道**:泳道为纵向列(自左向右排列),流程从上到下推进
|
|
8
|
+
|
|
9
|
+
## Content 约束
|
|
10
|
+
|
|
11
|
+
- 泳道数(lanes)建议 3-7,超过 7 会显著降低可读性;如必须更多泳道,优先合并同类或拆成两张图
|
|
12
|
+
- 阶段数(stages)建议 4-8;超过 8 优先合并相邻阶段或改成“代表性阶段”
|
|
13
|
+
- 每个阶段在每条泳道中最多放 1 个“主步骤卡片”;如同一阶段需要多个步骤,放在同一格内做纵向堆叠(2-3 个为上限)
|
|
14
|
+
- 节点文本 1-2 行为主;长文本用 `\n` 手动换行,避免单行超长导致卡片过宽
|
|
15
|
+
- 仅画必要连线:泳道图的结构已经表达了“属于哪个角色/系统 + 发生顺序”,连线只用于表达跨泳道交互、关键因果关系或异步事件流
|
|
16
|
+
|
|
17
|
+
## Layout 选型
|
|
18
|
+
|
|
19
|
+
| 模式 | 适用条件 | 特征 |
|
|
20
|
+
|------|---------|------|
|
|
21
|
+
| **水平泳道** | 默认推荐;流程天然左→右推进 | lanes=行,stages=列;跨泳道同一阶段严格 x 对齐 |
|
|
22
|
+
| **垂直泳道** | 用户明确要求竖版、或画布更适合纵向滚动阅读 | lanes=列,stages=行;跨泳道同一阶段严格 y 对齐 |
|
|
23
|
+
|
|
24
|
+
## Layout 规则
|
|
25
|
+
|
|
26
|
+
### 通用规则(两种方向都适用)
|
|
27
|
+
|
|
28
|
+
1. **网格对齐是第一优先级**:跨泳道同一阶段必须严格对齐(水平对齐 x;垂直对齐 y)。对齐通过“共享阶段标尺(stage ruler / stage slots)”实现,不靠肉眼估算,也不靠逐节点随意手写坐标
|
|
29
|
+
2. **只生成真实节点**:为保证跨泳道阶段严格对齐,所有阶段统一保留透明的 **stage cell**;仅在真实阶段的 cell 内生成卡片节点,并按阶段索引映射到对应槽位
|
|
30
|
+
3. **泳道底色**:为了增强层级感同时保持界面整洁,**强烈建议所有泳道容器统一使用极浅灰色背景**(如 `fillColor: "#F8F9FA"` 或 `"#FCFCFC"`)。边框使用浅灰色细虚线(`borderDash: "dashed"`, `borderWidth: 1`, `borderColor: "#DEE0E3"`)以明确边界。
|
|
31
|
+
4. **步骤卡片**:使用 `rect`。为建立清晰的视觉层级,卡片**必须填充浅色背景**(参考 `references/style.md` 中的浅色板,如极浅的主题色),边框使用对应的主题主色(`borderWidth: 1-2`),文字使用深色(如 `#1F2329`)以确保可读性。统一圆角;宽高以可读为先,避免过窄导致换行过多
|
|
32
|
+
5. **间距**:只要存在 connector 连线,卡片之间的主轴间距必须满足 `gap >= 40`
|
|
33
|
+
|
|
34
|
+
### 子节点对齐
|
|
35
|
+
|
|
36
|
+
- **同一阶段必须严格对齐**:所有泳道复用同一套 stage slots;不允许靠卡片自身宽度或肉眼估算来对齐
|
|
37
|
+
- **卡片宽度一致**:同一泳道中的步骤卡片应保持统一宽度;推荐使用统一固定宽度,或严格复用同一槽位宽度
|
|
38
|
+
- **统一使用 stack 容器**:有内容的阶段统一使用 `layout: "vertical"` 的 stack frame(纵向堆叠 1-3 张卡片);空阶段不生成 stack/卡片,但保留透明 cell 保证对齐
|
|
39
|
+
- **垂直居中但不影响对齐**:stage cell 默认 `alignItems: "stretch"`,可用 `justifyContent: "center"` 让卡片在 cell 内居中,以确保左右边界严格对齐
|
|
40
|
+
- **不靠底色区分行/列**:阶段网格默认不需要背景色;如需“轻微”的行/列边界提示,优先给 stage cell 加 1px 细边框(`fillColor: "transparent"` 仍保持视觉透明)
|
|
41
|
+
|
|
42
|
+
### Flex 栅格模式(默认)
|
|
43
|
+
|
|
44
|
+
- lane body 使用 Flex 布局:水平泳道用 `layout: "horizontal"`,垂直泳道用 `layout: "vertical"`
|
|
45
|
+
- 为每个阶段生成一个 **stage cell**(占位单元格);空阶段的 cell 透明但保留;cell 内用 `layout: "vertical"` 的 stack 承载 1-3 张卡片
|
|
46
|
+
- 统一参数:`slotWidth: 180-220`(水平泳道 cell 宽度)、`slotHeight: 64-104`(垂直泳道 cell 高度建议档)、`gap: 40-56`(有连线时必须 ≥40)、`stackGap: 8`、`lanePadding: 16`
|
|
47
|
+
- 对齐规则:所有泳道复用同一组 `slotWidth/slotHeight/gap`;同一阶段在各泳道上使用相同的 cell 索引保证严格对齐
|
|
48
|
+
- 尺寸语义:lane body `width/height` 用 `"fit-content"`(Yoga 自适应);卡片 `height: "fit-content"`;Flex 容器内不写子节点 `x/y`
|
|
49
|
+
- 内容密度:卡片文字 1-2 行;同阶段堆叠上限 2-3;超过上限优先拆分到相邻阶段或缩短文本
|
|
50
|
+
|
|
51
|
+
### 跨泳道间距(lanesGap)
|
|
52
|
+
|
|
53
|
+
- 根容器承载所有泳道:水平泳道用 `layout: "vertical"`,垂直泳道用 `layout: "horizontal"`
|
|
54
|
+
- 缩减跨泳道主轴间距 `lanesGap`(建议 `16-24`),以保持整体图表的紧凑性。避免 `lanesGap` 设置为 `0` 导致边框重叠变粗,也避免间距过大导致视觉涣散。
|
|
55
|
+
- 每条泳道作为根容器的子 frame,内部再使用上述 Flex 栅格的 stage cell 布局
|
|
56
|
+
- `lanesGap` 与 `lanePadding/stackGap` 独立;lane 内容增减不应影响跨泳道间距
|
|
57
|
+
- 4px 基线对齐:`lanesGap`、`lanePadding`、cell 尺寸建议按 4 的倍数对齐
|
|
58
|
+
|
|
59
|
+
### 水平泳道(lanes=行,stages=列)
|
|
60
|
+
|
|
61
|
+
- 根容器:`layout: "vertical"`,`gap: lanesGap` 固定;`alignItems: "stretch"`,标题在最上方
|
|
62
|
+
- 每条泳道:一个可见 frame(分组容器),内部用 `layout: "horizontal"` 分成两块:
|
|
63
|
+
- 左侧 lane label:固定宽度 text(如 100-140),垂直居中;左对齐(`textAlign: "left"`);title 需要比步骤卡片更醒目,优先通过 `fontSize: 18-20` + `fontWeight: "bold"` + 与泳道边框一致的 `textColor` 实现
|
|
64
|
+
- 右侧 lane body:`layout: "horizontal"`,包含完整的阶段 **stage cell** 数组;cell 宽度固定为 `slotWidth`,相邻 cell 间 `gap` 统一;空阶段 cell 透明但保留
|
|
65
|
+
- 步骤卡片:推荐统一卡片宽度(如 160-220),并在所有泳道复用同一组 `slotWidth / gap`,保证跨泳道阶段严格 x 对齐
|
|
66
|
+
|
|
67
|
+
### 垂直泳道(lanes=列,stages=行)
|
|
68
|
+
|
|
69
|
+
- 根容器:`layout: "horizontal"`,`gap: lanesGap` 固定;`alignItems: "stretch"`,标题在最上方
|
|
70
|
+
- 每条泳道:一个可见 frame(分组容器),内部 `layout: "vertical"`:
|
|
71
|
+
- 顶部 lane label:必须放在单独的 `lane label frame` 中,label frame 使用 `width: "fill-container"`、`alignItems: "center"`、`justifyContent: "center"`,并通过 `paddingTop` 留出与泳道上边的 gap(推荐 `12-16`,按 4px 基线取值,如 `padding: [12, 8, 8, 8]`);内部 text 使用 `width: "fill-container"` + `textAlign: "center"`,确保 title 在整条泳道顶部**水平居中**
|
|
72
|
+
- lane body:`layout: "vertical"`,包含完整的阶段 **stage cell** 数组;cell 高度固定为 `slotHeight`,相邻 cell 间 `gap` 统一;空阶段 cell 透明但保留
|
|
73
|
+
- 内容居中对齐:stage cell 建议 `alignItems: "center"` + `justifyContent: "center"`,让卡片在每个 cell 内水平/垂直居中;卡片宽度不超过 `slotWidth`(或固定宽度),避免被 `"fill-container"` 拉伸导致“看起来不居中”
|
|
74
|
+
- 步骤卡片:推荐统一卡片高度或统一 `slotHeight / gap`,保证跨泳道阶段严格 y 对齐
|
|
75
|
+
- 泳道外层容器必须显式写 `fillColor: "#F8F9FA"`(极浅灰)、`borderDash: "dashed"`、`borderWidth: 1`、`borderColor: "#DEE0E3"`(统一浅灰色),否则会被编译为虚拟 frame 导致不渲染
|
|
76
|
+
- 统一高度(Flex 自适应,可选):根容器使用 `alignItems: "stretch"`,每个泳道外层 frame 使用 `height: "fill-container"`;泳道内部仍保持 lane label + lane body 的结构
|
|
77
|
+
|
|
78
|
+
示例:
|
|
79
|
+
|
|
80
|
+
```json
|
|
81
|
+
{
|
|
82
|
+
"version": 2,
|
|
83
|
+
"nodes": [
|
|
84
|
+
{
|
|
85
|
+
"type": "frame",
|
|
86
|
+
"id": "lanes-root",
|
|
87
|
+
"x": 40, "y": 40,
|
|
88
|
+
"layout": "horizontal",
|
|
89
|
+
"gap": 16,
|
|
90
|
+
"alignItems": "stretch",
|
|
91
|
+
"children": [
|
|
92
|
+
{
|
|
93
|
+
"type": "frame",
|
|
94
|
+
"id": "lane-left",
|
|
95
|
+
"layout": "vertical",
|
|
96
|
+
"width": "fit-content",
|
|
97
|
+
"height": "fill-container",
|
|
98
|
+
"fillColor": "#F8F9FA",
|
|
99
|
+
"borderDash": "dashed",
|
|
100
|
+
"borderWidth": 1,
|
|
101
|
+
"borderColor": "#DEE0E3",
|
|
102
|
+
"children": [
|
|
103
|
+
{ "type": "frame", "id": "lane-left-label-wrap", "layout": "vertical", "width": "fill-container", "height": "fit-content",
|
|
104
|
+
"alignItems": "center", "justifyContent": "center", "padding": [12, 8, 8, 8], "children": [
|
|
105
|
+
{ "type": "text", "id": "lane-left-label", "text": "Lane Left", "width": "fill-container", "height": "fit-content",
|
|
106
|
+
"textAlign": "center", "verticalAlign": "middle", "fontSize": 18, "fontWeight": "bold", "textColor": "#5178C6" }
|
|
107
|
+
] },
|
|
108
|
+
{ "type": "frame", "id": "lane-left-body", "layout": "vertical",
|
|
109
|
+
"gap": 40, "padding": 16,
|
|
110
|
+
"children": [
|
|
111
|
+
{ "type": "frame", "id": "stage-1-cell-left", "layout": "vertical", "width": 220, "height": 80, "alignItems": "center", "justifyContent": "center",
|
|
112
|
+
"children": [{ "type": "rect", "id": "c-s1", "width": 200, "height": "fit-content", "fillColor": "#E1EAFA", "borderColor": "#5178C6", "borderWidth": 2, "borderRadius": 8 }] },
|
|
113
|
+
{ "type": "frame", "id": "stage-2-cell-left", "layout": "vertical", "width": 220, "height": 80, "alignItems": "center", "justifyContent": "center", "children": [] }
|
|
114
|
+
] }
|
|
115
|
+
]
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
"type": "frame",
|
|
119
|
+
"id": "lane-right",
|
|
120
|
+
"layout": "vertical",
|
|
121
|
+
"width": "fit-content",
|
|
122
|
+
"height": "fill-container",
|
|
123
|
+
"fillColor": "#F8F9FA",
|
|
124
|
+
"borderDash": "dashed",
|
|
125
|
+
"borderWidth": 1,
|
|
126
|
+
"borderColor": "#DEE0E3",
|
|
127
|
+
"children": [
|
|
128
|
+
{ "type": "frame", "id": "lane-right-label-wrap", "layout": "vertical", "width": "fill-container", "height": "fit-content",
|
|
129
|
+
"alignItems": "center", "justifyContent": "center", "padding": [12, 8, 8, 8], "children": [
|
|
130
|
+
{ "type": "text", "id": "lane-right-label", "text": "Lane Right", "width": "fill-container", "height": "fit-content",
|
|
131
|
+
"textAlign": "center", "verticalAlign": "middle", "fontSize": 18, "fontWeight": "bold", "textColor": "#8569CB" }
|
|
132
|
+
] },
|
|
133
|
+
{ "type": "frame", "id": "lane-right-body", "layout": "vertical",
|
|
134
|
+
"gap": 40, "padding": 16,
|
|
135
|
+
"children": [
|
|
136
|
+
{ "type": "frame", "id": "stage-1-cell-right", "layout": "vertical", "width": 220, "height": 80, "alignItems": "center", "justifyContent": "center", "children": [] },
|
|
137
|
+
{ "type": "frame", "id": "stage-2-cell-right", "layout": "vertical", "width": 220, "height": 80, "alignItems": "center", "justifyContent": "center",
|
|
138
|
+
"children": [{ "type": "rect", "id": "d-s2", "width": 200, "height": "fit-content", "fillColor": "#EAE6F3", "borderColor": "#8569CB", "borderWidth": 2, "borderRadius": 8 }] }
|
|
139
|
+
] }
|
|
140
|
+
]
|
|
141
|
+
}
|
|
142
|
+
]
|
|
143
|
+
},
|
|
144
|
+
{ "type": "connector", "connector": { "from": "c-s1", "to": "d-s2",
|
|
145
|
+
"lineShape": "polyline", "lineColor": "#BBBFC4", "lineWidth": 2, "endArrow": "arrow" } }
|
|
146
|
+
]
|
|
147
|
+
}
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
### 泳道配色(默认色板)
|
|
151
|
+
|
|
152
|
+
- **泳道背景**:所有泳道容器统一使用极浅灰色(如 `fillColor: "#F8F9FA"` 或 `"#FCFCFC"`),以增强物理容器的层级感,并突出内部的彩色卡片。
|
|
153
|
+
- **泳道边框**:所有泳道外层容器统一使用浅灰色细虚线(`borderColor: "#DEE0E3"`, `borderWidth: 1`, `borderDash: "dashed"`)。
|
|
154
|
+
- **泳道标题**:按 `references/style.md` 经典色板为每条泳道分配不同的主题色,泳道 title 的 `textColor` 使用该主题色。
|
|
155
|
+
- **内容节点(rect)**:采用“浅色底 + 主题色边框”策略。`fillColor` 使用与该泳道主题色对应的极浅色(如浅蓝、浅紫等),`borderColor` 使用对应的主题色,文字 `textColor` 统一使用深色 `#1F2329`。
|
|
156
|
+
- **连线(connector)**:连线颜色固定为灰色 `#BBBFC4`,不随泳道颜色变化。当连线带有文字(`label`)时,为防止文字压在边框上难以阅读,必须为连线文字设置纯白背景(`labelFillColor: "#FFFFFF"`)遮挡底纹。
|
|
157
|
+
|
|
158
|
+
提醒:避免创建“虚拟 frame”(见 `references/schema.md` 的说明)。lane 外层必须具有可见属性以避免在编译时被跳过。
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
## 连线规则(强制参考 connectors.md)
|
|
162
|
+
|
|
163
|
+
泳道图中所有连线的选择与写法必须严格遵循 `references/connectors.md`,尤其是:
|
|
164
|
+
- `connector` 必须放在 `WBDocument.nodes` 顶层,不能嵌套在 `children`
|
|
165
|
+
- 默认优先使用自动绕线:`lineShape: "polyline"` / `"rightAngle"`,且不写 `waypoints`
|
|
166
|
+
- 未指定 `lineShape` 时默认使用 `"rightAngle"`
|
|
167
|
+
- 只有在必要时才强制锚点方向;锚点选择必须与节点相对位置一致
|
|
168
|
+
- 有连线时卡片间距必须满足 `gap >= 40`;如果连线包含文字(`label`),主轴间距必须 `gap >= 64`
|
|
169
|
+
- 带文字的连线必须设置 `labelFillColor: "#FFFFFF"` 遮挡底纹
|
|
170
|
+
|
|
171
|
+
泳道图语境下的落地约束:
|
|
172
|
+
- **默认不写锚点**,交给引擎自动推断;只有需要强制“左→右推进 / 上→下推进”时才写
|
|
173
|
+
- 需要表达“异步/事件流/推送”(如 SSE/Chunk)时:使用 `lineStyle: "dashed"` 并配合 `label` 说明语义;其他参数仍按 connectors.md
|
|
174
|
+
- 避免连接“仅用于布局且可能被优化掉的虚拟 frame”,尽量连接具体步骤卡片的节点 id(参考 `references/schema.md` 的虚拟 frame 陷阱)
|
|
175
|
+
|
|
176
|
+
## 骨架示例
|
|
177
|
+
|
|
178
|
+
> 示例展示布局的结构与对齐方法;实际节点的样式满足当前布局规则的前提下参考 `references/style.md`
|
|
179
|
+
|
|
180
|
+
- 水平泳道示例:
|
|
181
|
+
|
|
182
|
+
```json
|
|
183
|
+
{
|
|
184
|
+
"version": 2,
|
|
185
|
+
"nodes": [
|
|
186
|
+
{
|
|
187
|
+
"type": "frame",
|
|
188
|
+
"id": "lanes-root",
|
|
189
|
+
"x": 40,
|
|
190
|
+
"y": 40,
|
|
191
|
+
"layout": "vertical",
|
|
192
|
+
"gap": 16,
|
|
193
|
+
"alignItems": "stretch",
|
|
194
|
+
"padding": 0,
|
|
195
|
+
"width": "fit-content",
|
|
196
|
+
"height": "fit-content",
|
|
197
|
+
"children": [
|
|
198
|
+
{
|
|
199
|
+
"type": "frame",
|
|
200
|
+
"id": "lane-a",
|
|
201
|
+
"layout": "horizontal",
|
|
202
|
+
"gap": 40,
|
|
203
|
+
"padding": 16,
|
|
204
|
+
"width": "fit-content",
|
|
205
|
+
"height": "fill-container",
|
|
206
|
+
"fillColor": "#F8F9FA",
|
|
207
|
+
"borderDash": "dashed",
|
|
208
|
+
"borderWidth": 1,
|
|
209
|
+
"borderColor": "#DEE0E3",
|
|
210
|
+
"children": [
|
|
211
|
+
{
|
|
212
|
+
"type": "text",
|
|
213
|
+
"id": "lane-a-label",
|
|
214
|
+
"text": "Lane A",
|
|
215
|
+
"width": 120,
|
|
216
|
+
"height": "fit-content",
|
|
217
|
+
"textAlign": "left",
|
|
218
|
+
"verticalAlign": "middle",
|
|
219
|
+
"fontSize": 18,
|
|
220
|
+
"fontWeight": "bold",
|
|
221
|
+
"textColor": "#5178C6"
|
|
222
|
+
},
|
|
223
|
+
{
|
|
224
|
+
"type": "frame",
|
|
225
|
+
"id": "stage-1-cell-a",
|
|
226
|
+
"layout": "vertical",
|
|
227
|
+
"gap": 8,
|
|
228
|
+
"padding": 0,
|
|
229
|
+
"width": 200,
|
|
230
|
+
"height": "fit-content",
|
|
231
|
+
"fillColor": "transparent",
|
|
232
|
+
"alignItems": "stretch",
|
|
233
|
+
"justifyContent": "center",
|
|
234
|
+
"children": [
|
|
235
|
+
{
|
|
236
|
+
"type": "rect",
|
|
237
|
+
"id": "a-s1",
|
|
238
|
+
"width": "fill-container",
|
|
239
|
+
"height": "fit-content",
|
|
240
|
+
"fillColor": "#E1EAFA",
|
|
241
|
+
"borderColor": "#5178C6",
|
|
242
|
+
"borderWidth": 2,
|
|
243
|
+
"borderRadius": 8,
|
|
244
|
+
"text": "[阶段 1 节点]",
|
|
245
|
+
"fontSize": 14,
|
|
246
|
+
"textColor": "#1F2329",
|
|
247
|
+
"textAlign": "center",
|
|
248
|
+
"verticalAlign": "middle"
|
|
249
|
+
}
|
|
250
|
+
]
|
|
251
|
+
},
|
|
252
|
+
{
|
|
253
|
+
"type": "frame",
|
|
254
|
+
"id": "stage-2-cell-a",
|
|
255
|
+
"layout": "vertical",
|
|
256
|
+
"gap": 8,
|
|
257
|
+
"padding": 0,
|
|
258
|
+
"width": 200,
|
|
259
|
+
"height": "fit-content",
|
|
260
|
+
"fillColor": "transparent",
|
|
261
|
+
"alignItems": "stretch",
|
|
262
|
+
"justifyContent": "center",
|
|
263
|
+
"children": []
|
|
264
|
+
}
|
|
265
|
+
]
|
|
266
|
+
},
|
|
267
|
+
{
|
|
268
|
+
"type": "frame",
|
|
269
|
+
"id": "lane-b",
|
|
270
|
+
"layout": "horizontal",
|
|
271
|
+
"gap": 40,
|
|
272
|
+
"padding": 16,
|
|
273
|
+
"width": "fit-content",
|
|
274
|
+
"height": "fill-container",
|
|
275
|
+
"fillColor": "#F8F9FA",
|
|
276
|
+
"borderDash": "dashed",
|
|
277
|
+
"borderWidth": 1,
|
|
278
|
+
"borderColor": "#DEE0E3",
|
|
279
|
+
"children": [
|
|
280
|
+
{
|
|
281
|
+
"type": "text",
|
|
282
|
+
"id": "lane-b-label",
|
|
283
|
+
"text": "Lane B",
|
|
284
|
+
"width": 120,
|
|
285
|
+
"height": "fit-content",
|
|
286
|
+
"textAlign": "left",
|
|
287
|
+
"verticalAlign": "middle",
|
|
288
|
+
"fontSize": 18,
|
|
289
|
+
"fontWeight": "bold",
|
|
290
|
+
"textColor": "#8569CB"
|
|
291
|
+
},
|
|
292
|
+
{
|
|
293
|
+
"type": "frame",
|
|
294
|
+
"id": "stage-1-cell-b",
|
|
295
|
+
"layout": "vertical",
|
|
296
|
+
"gap": 8,
|
|
297
|
+
"padding": 0,
|
|
298
|
+
"width": 200,
|
|
299
|
+
"height": "fit-content",
|
|
300
|
+
"fillColor": "transparent",
|
|
301
|
+
"alignItems": "stretch",
|
|
302
|
+
"justifyContent": "center",
|
|
303
|
+
"children": []
|
|
304
|
+
},
|
|
305
|
+
{
|
|
306
|
+
"type": "frame",
|
|
307
|
+
"id": "stage-2-cell-b",
|
|
308
|
+
"layout": "vertical",
|
|
309
|
+
"gap": 8,
|
|
310
|
+
"padding": 0,
|
|
311
|
+
"width": 200,
|
|
312
|
+
"height": "fit-content",
|
|
313
|
+
"fillColor": "transparent",
|
|
314
|
+
"alignItems": "stretch",
|
|
315
|
+
"justifyContent": "center",
|
|
316
|
+
"children": [
|
|
317
|
+
{
|
|
318
|
+
"type": "rect",
|
|
319
|
+
"id": "b-s2",
|
|
320
|
+
"width": "fill-container",
|
|
321
|
+
"height": "fit-content",
|
|
322
|
+
"fillColor": "#EAE6F3",
|
|
323
|
+
"borderColor": "#8569CB",
|
|
324
|
+
"borderWidth": 2,
|
|
325
|
+
"borderRadius": 8,
|
|
326
|
+
"text": "[阶段 2 节点]",
|
|
327
|
+
"fontSize": 14,
|
|
328
|
+
"textColor": "#1F2329",
|
|
329
|
+
"textAlign": "center",
|
|
330
|
+
"verticalAlign": "middle"
|
|
331
|
+
}
|
|
332
|
+
]
|
|
333
|
+
}
|
|
334
|
+
]
|
|
335
|
+
}
|
|
336
|
+
]
|
|
337
|
+
},
|
|
338
|
+
{
|
|
339
|
+
"type": "connector",
|
|
340
|
+
"connector": {
|
|
341
|
+
"from": "a-s1",
|
|
342
|
+
"to": "b-s2",
|
|
343
|
+
"lineShape": "polyline",
|
|
344
|
+
"lineColor": "#BBBFC4",
|
|
345
|
+
"lineWidth": 2,
|
|
346
|
+
"endArrow": "arrow",
|
|
347
|
+
"label": "[跨泳道交互]",
|
|
348
|
+
"labelFillColor": "#FFFFFF"
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
]
|
|
352
|
+
}
|
|
353
|
+
```
|
|
354
|
+
|
|
355
|
+
- 垂直泳道示例:见上文“垂直泳道”
|
|
356
|
+
|
|
357
|
+
- 全泳道统一 `slotWidth/slotHeight/gap`,并为每个阶段生成占位 **stage cell**(空阶段 cell 透明但保留)
|
|
358
|
+
- Flex 容器内不写子节点 `x/y`;对齐通过 cell 索引与统一尺寸实现
|
|
359
|
+
- 只有真实阶段才在对应 cell 内生成卡片;空阶段不生成卡片但保留 cell 保证网格完整
|
|
360
|
+
- 连线必须放在 `nodes` 顶层,并连接具体步骤卡片 id,不要连接 `lane-*-body` 这类布局容器
|
|
361
|
+
- **水平泳道**:根容器用 `layout: "vertical"` 固定 `lanesGap`;lane body 用 `layout: "horizontal"`;cell 固定宽度 `slotWidth`;主轴 `gap` 统一
|
|
362
|
+
- **垂直泳道**:根容器用 `layout: "horizontal"` 固定 `lanesGap`;lane body 用 `layout: "vertical"`;cell 固定高度 `slotHeight`;主轴 `gap` 统一
|
|
363
|
+
- **泳道 title**:title 比步骤卡片更醒目,但仍只用字号、字重、文字色强调;不要给泳道 title 额外加背景条
|
|
364
|
+
|
|
365
|
+
## 陷阱
|
|
366
|
+
|
|
367
|
+
- **各泳道复用的 stage slots 不一致**:会导致同阶段错位;`slotWidth / slotHeight / gap` 必须全泳道统一
|
|
368
|
+
- **把 connector 放进 children**:会导致 schema 报错或无法连线(见 connectors.md)
|
|
369
|
+
- **把辅助容器画成可见元素**:lane body 或其他支撑 frame 必须保持 `fillColor: "transparent"`,除泳道分组容器外不要额外加边框
|
|
370
|
+
- **手写 waypoints 过早**:先让引擎自动绕线;只有在必要时才通过 waypoints 接管
|
|
371
|
+
- **连线过多**:按 connectors.md 的连线数量策略降采样,否则跨泳道线会互相遮挡导致不可读
|
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
# 矩形树图 (Treemap)
|
|
2
|
+
|
|
3
|
+
## Content 约束
|
|
4
|
+
|
|
5
|
+
- 分类 3-5 个,每个分类下子项 2-4 个
|
|
6
|
+
- 总面积比例需预先计算:每个矩形面积 = 父矩形面积 * (本项数值 / 同级总数值)
|
|
7
|
+
- 每个叶子节点标签必须包含数值(如 "{{LABEL}} ({{VALUE}})")
|
|
8
|
+
|
|
9
|
+
## Layout 选型
|
|
10
|
+
|
|
11
|
+
- **脚本生成坐标**(推荐):Treemap 需要精确的面积比例计算,用 .cjs 脚本递归切分矩形,脚本输出 JSON 文件后调用 `npx -y @larksuite/whiteboard-cli@^0.2.11` 渲染
|
|
12
|
+
- 不适合手动心算坐标
|
|
13
|
+
|
|
14
|
+
## Layout 规则
|
|
15
|
+
|
|
16
|
+
- 使用交替切分法(Slice-and-Dice):奇数层水平切分 width,偶数层垂直切分 height
|
|
17
|
+
- 父矩形内必须为标题预留 30-40px 顶部空间,子矩形从 y + 35 开始放置
|
|
18
|
+
- 子节点必须完全落在父矩形范围内
|
|
19
|
+
- 水平切分时:子 width = 父 width * (子数值 / 父总数值),子 x 依次累加
|
|
20
|
+
- 垂直切分时:子 height = (父 height - 35) * (子数值 / 父总数值),子 y 依次累加(注意扣除父标签预留的 35px)
|
|
21
|
+
|
|
22
|
+
### 面积比例计算规则
|
|
23
|
+
|
|
24
|
+
1. **面积与数值严格成正比**:任何层级的节点,其矩形面积 `width * height` 必须与数值成比例
|
|
25
|
+
2. **奇数层水平切分**(如第一层分类):
|
|
26
|
+
- 父矩形的 `height` 和 `y` 坐标传给所有子节点(扣除标签预留空间后)
|
|
27
|
+
- 按子节点数值占父节点的比例切分父矩形的 `width`:`子width = 父width * (子数值 / 父总数值)`
|
|
28
|
+
- 子节点的 `x` 坐标依次向右累加
|
|
29
|
+
3. **偶数层垂直切分**(如第二层子项):
|
|
30
|
+
- 父矩形的 `width` 和 `x` 坐标传给所有子节点
|
|
31
|
+
- 按子节点数值占父节点的比例切分父矩形的 `height`:`子height = 父height * (子数值 / 父总数值)`
|
|
32
|
+
- 子节点的 `y` 坐标依次向下累加
|
|
33
|
+
4. **层层递归**:不断交替水平和垂直切分方向,直到所有叶子节点都被分配了精确的坐标和宽高
|
|
34
|
+
|
|
35
|
+
### 父标签预留空间
|
|
36
|
+
|
|
37
|
+
每个非叶子节点的矩形,顶部必须预留 30-40px 放置分类标签。子矩形从父矩形的 `y + 35` 开始放置,可用高度为 `父height - 35`。
|
|
38
|
+
|
|
39
|
+
示例:父矩形 `{ x: 40, y: 40, height: 700 }`,则:
|
|
40
|
+
- 父标签放在 `y: 46`(留 6px 上边距)
|
|
41
|
+
- 子矩形从 `y: 75` 开始放置(40 + 35)
|
|
42
|
+
- 子矩形可用高度为 `700 - 35 = 665`
|
|
43
|
+
|
|
44
|
+
## 骨架示例
|
|
45
|
+
|
|
46
|
+
2 层 treemap:3 个分类(硬件 40、软件 35、服务 25),各含 2 个子项。
|
|
47
|
+
|
|
48
|
+
根矩形 1100x700,第一层水平切分 width,第二层垂直切分 height。
|
|
49
|
+
|
|
50
|
+
```json
|
|
51
|
+
{
|
|
52
|
+
"version": 2,
|
|
53
|
+
"nodes": [
|
|
54
|
+
{
|
|
55
|
+
"type": "rect",
|
|
56
|
+
"id": "root",
|
|
57
|
+
"x": 40, "y": 40,
|
|
58
|
+
"width": 1100, "height": 700,
|
|
59
|
+
"borderWidth": 2, "borderRadius": 6
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"type": "text",
|
|
63
|
+
"x": 48, "y": 46,
|
|
64
|
+
"width": 1084, "height": 24,
|
|
65
|
+
"text": "{{ROOT_TITLE}}",
|
|
66
|
+
"fontSize": 14
|
|
67
|
+
},
|
|
68
|
+
|
|
69
|
+
{
|
|
70
|
+
"type": "rect",
|
|
71
|
+
"id": "cat-A",
|
|
72
|
+
"x": 40, "y": 75,
|
|
73
|
+
"width": 440, "height": 665,
|
|
74
|
+
"borderWidth": 2, "borderRadius": 6
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"type": "text",
|
|
78
|
+
"x": 48, "y": 81,
|
|
79
|
+
"width": 424, "height": 24,
|
|
80
|
+
"text": "{{CAT_A}}",
|
|
81
|
+
"fontSize": 14
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"type": "rect",
|
|
85
|
+
"id": "cat-A-item-1",
|
|
86
|
+
"x": 40, "y": 110,
|
|
87
|
+
"width": 440, "height": 380,
|
|
88
|
+
"borderRadius": 4
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
"type": "text",
|
|
92
|
+
"x": 48, "y": 116,
|
|
93
|
+
"width": 424, "height": 24,
|
|
94
|
+
"text": "{{ITEM_A1}} (24)",
|
|
95
|
+
"fontSize": 14
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
"type": "rect",
|
|
99
|
+
"id": "cat-A-item-2",
|
|
100
|
+
"x": 40, "y": 490,
|
|
101
|
+
"width": 440, "height": 250,
|
|
102
|
+
"borderRadius": 4
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"type": "text",
|
|
106
|
+
"x": 48, "y": 496,
|
|
107
|
+
"width": 424, "height": 24,
|
|
108
|
+
"text": "{{ITEM_A2}} (16)",
|
|
109
|
+
"fontSize": 14
|
|
110
|
+
},
|
|
111
|
+
|
|
112
|
+
{
|
|
113
|
+
"type": "rect",
|
|
114
|
+
"id": "cat-B",
|
|
115
|
+
"x": 480, "y": 75,
|
|
116
|
+
"width": 385, "height": 665,
|
|
117
|
+
"borderWidth": 2, "borderRadius": 6
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
"type": "text",
|
|
121
|
+
"x": 488, "y": 81,
|
|
122
|
+
"width": 369, "height": 24,
|
|
123
|
+
"text": "{{CAT_B}}",
|
|
124
|
+
"fontSize": 14
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
"type": "rect",
|
|
128
|
+
"id": "cat-B-item-1",
|
|
129
|
+
"x": 480, "y": 110,
|
|
130
|
+
"width": 385, "height": 380,
|
|
131
|
+
"borderRadius": 4
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
"type": "text",
|
|
135
|
+
"x": 488, "y": 116,
|
|
136
|
+
"width": 369, "height": 24,
|
|
137
|
+
"text": "{{ITEM_B1}} (20)",
|
|
138
|
+
"fontSize": 14
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
"type": "rect",
|
|
142
|
+
"id": "cat-B-item-2",
|
|
143
|
+
"x": 480, "y": 490,
|
|
144
|
+
"width": 385, "height": 285,
|
|
145
|
+
"borderRadius": 4
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
"type": "text",
|
|
149
|
+
"x": 488, "y": 496,
|
|
150
|
+
"width": 369, "height": 24,
|
|
151
|
+
"text": "{{ITEM_B2}} (15)",
|
|
152
|
+
"fontSize": 14
|
|
153
|
+
},
|
|
154
|
+
|
|
155
|
+
{
|
|
156
|
+
"type": "rect",
|
|
157
|
+
"id": "cat-C",
|
|
158
|
+
"x": 865, "y": 75,
|
|
159
|
+
"width": 275, "height": 665,
|
|
160
|
+
"borderWidth": 2, "borderRadius": 6
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
"type": "text",
|
|
164
|
+
"x": 873, "y": 81,
|
|
165
|
+
"width": 259, "height": 24,
|
|
166
|
+
"text": "{{CAT_C}}",
|
|
167
|
+
"fontSize": 14
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
"type": "rect",
|
|
171
|
+
"id": "cat-C-item-1",
|
|
172
|
+
"x": 865, "y": 110,
|
|
173
|
+
"width": 275, "height": 399,
|
|
174
|
+
"borderRadius": 4
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
"type": "text",
|
|
178
|
+
"x": 873, "y": 116,
|
|
179
|
+
"width": 259, "height": 24,
|
|
180
|
+
"text": "{{ITEM_C1}} (15)",
|
|
181
|
+
"fontSize": 14
|
|
182
|
+
},
|
|
183
|
+
{
|
|
184
|
+
"type": "rect",
|
|
185
|
+
"id": "cat-C-item-2",
|
|
186
|
+
"x": 865, "y": 509,
|
|
187
|
+
"width": 275, "height": 231,
|
|
188
|
+
"borderRadius": 4
|
|
189
|
+
},
|
|
190
|
+
{
|
|
191
|
+
"type": "text",
|
|
192
|
+
"x": 873, "y": 515,
|
|
193
|
+
"width": 259, "height": 24,
|
|
194
|
+
"text": "{{ITEM_C2}} (10)",
|
|
195
|
+
"fontSize": 14
|
|
196
|
+
}
|
|
197
|
+
]
|
|
198
|
+
}
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
面积比例验证(第一层水平切分 width):
|
|
202
|
+
- 硬件 40/100 * 1100 = 440,软件 35/100 * 1100 = 385,服务 25/100 * 1100 = 275
|
|
203
|
+
- 子矩形从 y=75 开始,可用高度 665
|
|
204
|
+
|
|
205
|
+
## 陷阱
|
|
206
|
+
|
|
207
|
+
- **父标签被子矩形遮挡**(最严重):子矩形必须从 y + 35(相对父矩形顶部)开始放置,为父分类标签留出空间
|
|
208
|
+
- **分类标签不可见**:分类标签 text 节点必须在其子矩形 rect 节点之前添加(z-index 靠后的节点在上层)
|
|
209
|
+
- **面积比例不正确**:必须用脚本预先计算比例,不要心算
|
|
210
|
+
- **缺少配色区分**:不同顶层分类必须用不同背景色(从色板选取),所有子节点继承对应色系
|
|
211
|
+
|
|
212
|
+
此场景必须用 .cjs 脚本生成。Agent 使用时只需修改 `data` 树,其余坐标与矩形面积自动递归计算。
|
|
213
|
+
|
|
214
|
+
```javascript
|
|
215
|
+
const { writeFileSync } = require('fs');
|
|
216
|
+
```
|