@amaster.ai/pi-lark 0.1.4 → 0.1.5
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/package.json +3 -3
- package/skills/lark-approval/SKILL.md +99 -0
- package/skills/lark-approval/references/lark-approval-approvals-get.md +128 -0
- package/skills/lark-approval/references/lark-approval-approvals-search.md +103 -0
- package/skills/lark-approval/references/lark-approval-initiate.md +224 -0
- package/skills/lark-approval/references/lark-approval-instance-form-control-parameters.md +606 -0
- package/skills/lark-approval/references/lark-approval-instance-value-sourcing.md +108 -0
- package/skills/lark-approval/references/lark-approval-instances-cancel.md +78 -0
- package/skills/lark-approval/references/lark-approval-instances-cc.md +105 -0
- package/skills/lark-approval/references/lark-approval-instances-get.md +145 -0
- package/skills/lark-approval/references/lark-approval-instances-initiated.md +122 -0
- package/skills/lark-approval/references/lark-approval-tasks-add-sign.md +120 -0
- package/skills/lark-approval/references/lark-approval-tasks-approve.md +81 -0
- package/skills/lark-approval/references/lark-approval-tasks-query.md +76 -0
- package/skills/lark-approval/references/lark-approval-tasks-reject.md +73 -0
- package/skills/lark-approval/references/lark-approval-tasks-remind.md +82 -0
- package/skills/lark-approval/references/lark-approval-tasks-rollback.md +83 -0
- package/skills/lark-approval/references/lark-approval-tasks-transfer.md +91 -0
- package/skills/lark-apps/SKILL.md +92 -0
- package/skills/lark-apps/references/lark-apps-access-scope-get.md +28 -0
- package/skills/lark-apps/references/lark-apps-access-scope-set.md +40 -0
- package/skills/lark-apps/references/lark-apps-cloud-dev.md +120 -0
- package/skills/lark-apps/references/lark-apps-create.md +40 -0
- package/skills/lark-apps/references/lark-apps-db-execute.md +44 -0
- package/skills/lark-apps/references/lark-apps-db.md +162 -0
- package/skills/lark-apps/references/lark-apps-env-pull.md +37 -0
- package/skills/lark-apps/references/lark-apps-env.md +48 -0
- package/skills/lark-apps/references/lark-apps-file.md +96 -0
- package/skills/lark-apps/references/lark-apps-git-credential.md +37 -0
- package/skills/lark-apps/references/lark-apps-html-publish.md +57 -0
- package/skills/lark-apps/references/lark-apps-init.md +37 -0
- package/skills/lark-apps/references/lark-apps-list.md +37 -0
- package/skills/lark-apps/references/lark-apps-local-dev.md +78 -0
- package/skills/lark-apps/references/lark-apps-observability.md +48 -0
- package/skills/lark-apps/references/lark-apps-openapi-key.md +79 -0
- package/skills/lark-apps/references/lark-apps-plugin-install.md +36 -0
- package/skills/lark-apps/references/lark-apps-plugin-list.md +23 -0
- package/skills/lark-apps/references/lark-apps-plugin-uninstall.md +25 -0
- package/skills/lark-apps/references/lark-apps-release-create.md +30 -0
- package/skills/lark-apps/references/lark-apps-release-get.md +28 -0
- package/skills/lark-apps/references/lark-apps-release-list.md +31 -0
- package/skills/lark-apps/references/lark-apps-session-messages-list.md +53 -0
- package/skills/lark-apps/references/lark-apps-update.md +30 -0
- package/skills/lark-attendance/SKILL.md +57 -0
- package/skills/lark-base/SKILL.md +157 -0
- package/skills/lark-base/references/dashboard-block-data-config.md +350 -0
- package/skills/lark-base/references/formula-field-guide.md +737 -0
- package/skills/lark-base/references/lark-base-cell-value.md +153 -0
- package/skills/lark-base/references/lark-base-dashboard-block-get-data.md +717 -0
- package/skills/lark-base/references/lark-base-dashboard.md +238 -0
- package/skills/lark-base/references/lark-base-data-analysis-sop.md +210 -0
- package/skills/lark-base/references/lark-base-data-query-guide.md +61 -0
- package/skills/lark-base/references/lark-base-data-query.md +452 -0
- package/skills/lark-base/references/lark-base-field-create.md +103 -0
- package/skills/lark-base/references/lark-base-field-json.md +490 -0
- package/skills/lark-base/references/lark-base-field-update.md +171 -0
- package/skills/lark-base/references/lark-base-form-detail.md +71 -0
- package/skills/lark-base/references/lark-base-form-questions-create.md +118 -0
- package/skills/lark-base/references/lark-base-form-questions-update.md +92 -0
- package/skills/lark-base/references/lark-base-form-submit.md +170 -0
- package/skills/lark-base/references/lark-base-record-batch-create.md +57 -0
- package/skills/lark-base/references/lark-base-record-batch-update.md +52 -0
- package/skills/lark-base/references/lark-base-record-history-list.md +43 -0
- package/skills/lark-base/references/lark-base-record-upsert.md +63 -0
- package/skills/lark-base/references/lark-base-role-guide.md +65 -0
- package/skills/lark-base/references/lark-base-view-set-filter.md +189 -0
- package/skills/lark-base/references/lark-base-workflow-guide.md +830 -0
- package/skills/lark-base/references/lark-base-workflow-schema.md +1071 -0
- package/skills/lark-base/references/lookup-field-guide.md +512 -0
- package/skills/lark-base/references/role-config.md +549 -0
- package/skills/lark-calendar/SKILL.md +140 -0
- package/skills/lark-calendar/references/lark-calendar-agenda.md +78 -0
- package/skills/lark-calendar/references/lark-calendar-create.md +114 -0
- package/skills/lark-calendar/references/lark-calendar-freebusy.md +124 -0
- package/skills/lark-calendar/references/lark-calendar-meeting.md +40 -0
- package/skills/lark-calendar/references/lark-calendar-recurring.md +90 -0
- package/skills/lark-calendar/references/lark-calendar-room-find.md +113 -0
- package/skills/lark-calendar/references/lark-calendar-rsvp.md +42 -0
- package/skills/lark-calendar/references/lark-calendar-schedule-meeting.md +265 -0
- package/skills/lark-calendar/references/lark-calendar-search-event.md +29 -0
- package/skills/lark-calendar/references/lark-calendar-suggestion.md +125 -0
- package/skills/lark-calendar/references/lark-calendar-update.md +105 -0
- package/skills/lark-contact/SKILL.md +55 -0
- package/skills/lark-contact/references/lark-contact-get-user.md +19 -0
- package/skills/lark-contact/references/lark-contact-search-user.md +123 -0
- package/skills/lark-doc/SKILL.md +84 -0
- package/skills/lark-doc/references/lark-doc-create.md +80 -0
- package/skills/lark-doc/references/lark-doc-fetch.md +138 -0
- package/skills/lark-doc/references/lark-doc-history.md +107 -0
- package/skills/lark-doc/references/lark-doc-md.md +76 -0
- package/skills/lark-doc/references/lark-doc-media-download.md +50 -0
- package/skills/lark-doc/references/lark-doc-media-insert.md +114 -0
- package/skills/lark-doc/references/lark-doc-media-preview.md +41 -0
- package/skills/lark-doc/references/lark-doc-mindnote.md +113 -0
- package/skills/lark-doc/references/lark-doc-resource-cover.md +70 -0
- package/skills/lark-doc/references/lark-doc-update.md +260 -0
- package/skills/lark-doc/references/lark-doc-whiteboard.md +154 -0
- package/skills/lark-doc/references/lark-doc-word-stat.md +93 -0
- package/skills/lark-doc/references/lark-doc-xml.md +181 -0
- package/skills/lark-doc/references/style/lark-doc-create-workflow.md +47 -0
- package/skills/lark-doc/references/style/lark-doc-style.md +68 -0
- package/skills/lark-doc/references/style/lark-doc-update-workflow.md +48 -0
- package/skills/lark-doc/scripts/doc_word_stat.py +1243 -0
- package/skills/lark-drive/SKILL.md +220 -0
- package/skills/lark-drive/references/lark-drive-add-comment.md +193 -0
- package/skills/lark-drive/references/lark-drive-apply-permission.md +77 -0
- package/skills/lark-drive/references/lark-drive-comment-location.md +193 -0
- package/skills/lark-drive/references/lark-drive-comments-guide.md +72 -0
- package/skills/lark-drive/references/lark-drive-cover.md +79 -0
- package/skills/lark-drive/references/lark-drive-create-folder.md +73 -0
- package/skills/lark-drive/references/lark-drive-create-shortcut.md +103 -0
- package/skills/lark-drive/references/lark-drive-delete.md +79 -0
- package/skills/lark-drive/references/lark-drive-download.md +31 -0
- package/skills/lark-drive/references/lark-drive-export-download.md +50 -0
- package/skills/lark-drive/references/lark-drive-export.md +145 -0
- package/skills/lark-drive/references/lark-drive-files-list.md +158 -0
- package/skills/lark-drive/references/lark-drive-import.md +178 -0
- package/skills/lark-drive/references/lark-drive-inspect.md +50 -0
- package/skills/lark-drive/references/lark-drive-member-add.md +66 -0
- package/skills/lark-drive/references/lark-drive-move.md +120 -0
- package/skills/lark-drive/references/lark-drive-permission-guide.md +41 -0
- package/skills/lark-drive/references/lark-drive-preview.md +87 -0
- package/skills/lark-drive/references/lark-drive-pull.md +137 -0
- package/skills/lark-drive/references/lark-drive-push.md +162 -0
- package/skills/lark-drive/references/lark-drive-reactions.md +113 -0
- package/skills/lark-drive/references/lark-drive-search.md +273 -0
- package/skills/lark-drive/references/lark-drive-secure-label.md +52 -0
- package/skills/lark-drive/references/lark-drive-status.md +137 -0
- package/skills/lark-drive/references/lark-drive-task-result.md +302 -0
- package/skills/lark-drive/references/lark-drive-upload.md +101 -0
- package/skills/lark-drive/references/lark-drive-version-delete.md +38 -0
- package/skills/lark-drive/references/lark-drive-version-get.md +71 -0
- package/skills/lark-drive/references/lark-drive-version-history.md +73 -0
- package/skills/lark-drive/references/lark-drive-version-revert.md +35 -0
- package/skills/lark-drive/references/lark-drive-workflow-knowledge-organize-analysis.md +249 -0
- package/skills/lark-drive/references/lark-drive-workflow-knowledge-organize-discovery.md +253 -0
- package/skills/lark-drive/references/lark-drive-workflow-knowledge-organize-execution.md +200 -0
- package/skills/lark-drive/references/lark-drive-workflow-knowledge-organize-planning.md +336 -0
- package/skills/lark-drive/references/lark-drive-workflow-knowledge-organize-rollback.md +308 -0
- package/skills/lark-drive/references/lark-drive-workflow-knowledge-organize.md +226 -0
- package/skills/lark-drive/references/lark-drive-workflow-permission-governance-commands.md +168 -0
- package/skills/lark-drive/references/lark-drive-workflow-permission-governance-outputs.md +424 -0
- package/skills/lark-drive/references/lark-drive-workflow-permission-governance.md +207 -0
- package/skills/lark-drive/references/lark-drive-workflow.md +130 -0
- package/skills/lark-event/SKILL.md +154 -0
- package/skills/lark-event/references/lark-event-im.md +87 -0
- package/skills/lark-event/references/lark-event-minutes.md +54 -0
- package/skills/lark-event/references/lark-event-task.md +78 -0
- package/skills/lark-event/references/lark-event-vc.md +106 -0
- package/skills/lark-event/references/lark-event-whiteboard.md +67 -0
- package/skills/lark-im/SKILL.md +248 -0
- package/skills/lark-im/references/card/card-2.0-schema.md +107 -0
- package/skills/lark-im/references/card/components/button.md +63 -0
- package/skills/lark-im/references/card/components/chart.md +57 -0
- package/skills/lark-im/references/card/components/checker.md +38 -0
- package/skills/lark-im/references/card/components/collapsible_panel.md +46 -0
- package/skills/lark-im/references/card/components/column_set.md +53 -0
- package/skills/lark-im/references/card/components/date_picker.md +34 -0
- package/skills/lark-im/references/card/components/div.md +36 -0
- package/skills/lark-im/references/card/components/form.md +51 -0
- package/skills/lark-im/references/card/components/header.md +34 -0
- package/skills/lark-im/references/card/components/hr.md +17 -0
- package/skills/lark-im/references/card/components/img.md +34 -0
- package/skills/lark-im/references/card/components/img_combination.md +30 -0
- package/skills/lark-im/references/card/components/input.md +43 -0
- package/skills/lark-im/references/card/components/interactive_container.md +46 -0
- package/skills/lark-im/references/card/components/markdown.md +56 -0
- package/skills/lark-im/references/card/components/multi_select_person.md +40 -0
- package/skills/lark-im/references/card/components/multi_select_static.md +40 -0
- package/skills/lark-im/references/card/components/overflow.md +36 -0
- package/skills/lark-im/references/card/components/person.md +30 -0
- package/skills/lark-im/references/card/components/person_list.md +31 -0
- package/skills/lark-im/references/card/components/picker_datetime.md +34 -0
- package/skills/lark-im/references/card/components/picker_time.md +34 -0
- package/skills/lark-im/references/card/components/recycling_container.md +35 -0
- package/skills/lark-im/references/card/components/select_img.md +42 -0
- package/skills/lark-im/references/card/components/select_person.md +39 -0
- package/skills/lark-im/references/card/components/select_static.md +43 -0
- package/skills/lark-im/references/card/components/table.md +53 -0
- package/skills/lark-im/references/card/lark-im-card-create.md +180 -0
- package/skills/lark-im/references/card/lark-im-card-style.md +281 -0
- package/skills/lark-im/references/card/resource/colors.md +34 -0
- package/skills/lark-im/references/card/resource/icons.md +38 -0
- package/skills/lark-im/references/lark-im-card-action-reply.md +175 -0
- package/skills/lark-im/references/lark-im-chat-create.md +162 -0
- package/skills/lark-im/references/lark-im-chat-identity.md +55 -0
- package/skills/lark-im/references/lark-im-chat-list.md +166 -0
- package/skills/lark-im/references/lark-im-chat-members-list.md +83 -0
- package/skills/lark-im/references/lark-im-chat-messages-list.md +157 -0
- package/skills/lark-im/references/lark-im-chat-search.md +142 -0
- package/skills/lark-im/references/lark-im-chat-update.md +84 -0
- package/skills/lark-im/references/lark-im-feed-group-list-item.md +68 -0
- package/skills/lark-im/references/lark-im-feed-group-list.md +65 -0
- package/skills/lark-im/references/lark-im-feed-group-query-item.md +44 -0
- package/skills/lark-im/references/lark-im-feed-groups.md +452 -0
- package/skills/lark-im/references/lark-im-feed-shortcut-create.md +97 -0
- package/skills/lark-im/references/lark-im-feed-shortcut-list.md +103 -0
- package/skills/lark-im/references/lark-im-feed-shortcut-remove.md +48 -0
- package/skills/lark-im/references/lark-im-flag-cancel.md +67 -0
- package/skills/lark-im/references/lark-im-flag-create.md +67 -0
- package/skills/lark-im/references/lark-im-flag-list.md +100 -0
- package/skills/lark-im/references/lark-im-message-enrichment.md +54 -0
- package/skills/lark-im/references/lark-im-messages-mget.md +99 -0
- package/skills/lark-im/references/lark-im-messages-reply.md +277 -0
- package/skills/lark-im/references/lark-im-messages-resources-download.md +94 -0
- package/skills/lark-im/references/lark-im-messages-search.md +234 -0
- package/skills/lark-im/references/lark-im-messages-send.md +279 -0
- package/skills/lark-im/references/lark-im-reactions.md +299 -0
- package/skills/lark-im/references/lark-im-threads-messages-list.md +115 -0
- package/skills/lark-mail/SKILL.md +287 -0
- package/skills/lark-mail/assets/templates/job-application--resume.html +33 -0
- package/skills/lark-mail/assets/templates/newsletter--weekly-brief.html +50 -0
- package/skills/lark-mail/assets/templates/research--market-report.html +256 -0
- package/skills/lark-mail/assets/templates/weekly--personal-report.html +43 -0
- package/skills/lark-mail/assets/templates/weekly--team-report.html +9 -0
- package/skills/lark-mail/references/lark-mail-calendar-invite.md +36 -0
- package/skills/lark-mail/references/lark-mail-decline-receipt.md +115 -0
- package/skills/lark-mail/references/lark-mail-draft-create.md +127 -0
- package/skills/lark-mail/references/lark-mail-draft-edit.md +404 -0
- package/skills/lark-mail/references/lark-mail-forward.md +239 -0
- package/skills/lark-mail/references/lark-mail-html.md +333 -0
- package/skills/lark-mail/references/lark-mail-lint-html.md +243 -0
- package/skills/lark-mail/references/lark-mail-message.md +233 -0
- package/skills/lark-mail/references/lark-mail-messages.md +108 -0
- package/skills/lark-mail/references/lark-mail-recall.md +66 -0
- package/skills/lark-mail/references/lark-mail-recipient-search.md +59 -0
- package/skills/lark-mail/references/lark-mail-reply-all.md +213 -0
- package/skills/lark-mail/references/lark-mail-reply.md +249 -0
- package/skills/lark-mail/references/lark-mail-rules.md +31 -0
- package/skills/lark-mail/references/lark-mail-send-as.md +44 -0
- package/skills/lark-mail/references/lark-mail-send-receipt.md +120 -0
- package/skills/lark-mail/references/lark-mail-send-status.md +46 -0
- package/skills/lark-mail/references/lark-mail-send.md +222 -0
- package/skills/lark-mail/references/lark-mail-share-to-chat.md +87 -0
- package/skills/lark-mail/references/lark-mail-signature.md +98 -0
- package/skills/lark-mail/references/lark-mail-template-create.md +129 -0
- package/skills/lark-mail/references/lark-mail-template-update.md +150 -0
- package/skills/lark-mail/references/lark-mail-template.md +54 -0
- package/skills/lark-mail/references/lark-mail-thread.md +111 -0
- package/skills/lark-mail/references/lark-mail-triage.md +131 -0
- package/skills/lark-mail/references/lark-mail-watch.md +94 -0
- package/skills/lark-markdown/SKILL.md +69 -0
- package/skills/lark-markdown/references/lark-markdown-create.md +94 -0
- package/skills/lark-markdown/references/lark-markdown-diff.md +156 -0
- package/skills/lark-markdown/references/lark-markdown-fetch.md +79 -0
- package/skills/lark-markdown/references/lark-markdown-overwrite.md +85 -0
- package/skills/lark-markdown/references/lark-markdown-patch.md +160 -0
- package/skills/lark-minutes/SKILL.md +192 -0
- package/skills/lark-minutes/references/lark-minutes-detail.md +62 -0
- package/skills/lark-minutes/references/lark-minutes-download.md +137 -0
- package/skills/lark-minutes/references/lark-minutes-search.md +204 -0
- package/skills/lark-minutes/references/lark-minutes-speaker-replace.md +109 -0
- package/skills/lark-minutes/references/lark-minutes-summary.md +122 -0
- package/skills/lark-minutes/references/lark-minutes-todo.md +138 -0
- package/skills/lark-minutes/references/lark-minutes-update.md +41 -0
- package/skills/lark-minutes/references/lark-minutes-upload.md +104 -0
- package/skills/lark-note/SKILL.md +94 -0
- package/skills/lark-note/references/lark-note-detail.md +26 -0
- package/skills/lark-note/references/lark-note-transcript.md +23 -0
- package/skills/lark-okr/SKILL.md +122 -0
- package/skills/lark-okr/references/lark-okr-alignments.md +180 -0
- package/skills/lark-okr/references/lark-okr-batch-create.md +106 -0
- package/skills/lark-okr/references/lark-okr-contentblock.md +427 -0
- package/skills/lark-okr/references/lark-okr-cycle-detail.md +91 -0
- package/skills/lark-okr/references/lark-okr-cycle-list.md +93 -0
- package/skills/lark-okr/references/lark-okr-entities.md +329 -0
- package/skills/lark-okr/references/lark-okr-image-upload.md +116 -0
- package/skills/lark-okr/references/lark-okr-indicator-update.md +80 -0
- package/skills/lark-okr/references/lark-okr-indicators.md +223 -0
- package/skills/lark-okr/references/lark-okr-patch.md +104 -0
- package/skills/lark-okr/references/lark-okr-progress-create.md +85 -0
- package/skills/lark-okr/references/lark-okr-progress-delete.md +47 -0
- package/skills/lark-okr/references/lark-okr-progress-get.md +93 -0
- package/skills/lark-okr/references/lark-okr-progress-list.md +80 -0
- package/skills/lark-okr/references/lark-okr-progress-update.md +85 -0
- package/skills/lark-okr/references/lark-okr-reorder.md +81 -0
- package/skills/lark-okr/references/lark-okr-weight.md +96 -0
- package/skills/lark-openapi-explorer/SKILL.md +153 -0
- package/skills/lark-shared/SKILL.md +193 -0
- package/skills/lark-shared/references/lark-wiki-token-routing.md +42 -0
- package/skills/lark-sheets/SKILL.md +165 -0
- package/skills/lark-sheets/references/lark-sheets-batch-update.md +191 -0
- package/skills/lark-sheets/references/lark-sheets-chart.md +330 -0
- package/skills/lark-sheets/references/lark-sheets-conditional-format.md +179 -0
- package/skills/lark-sheets/references/lark-sheets-core-operations.md +103 -0
- package/skills/lark-sheets/references/lark-sheets-filter-view.md +137 -0
- package/skills/lark-sheets/references/lark-sheets-filter.md +130 -0
- package/skills/lark-sheets/references/lark-sheets-float-image.md +159 -0
- package/skills/lark-sheets/references/lark-sheets-formula-translation.md +267 -0
- package/skills/lark-sheets/references/lark-sheets-pivot-table.md +166 -0
- package/skills/lark-sheets/references/lark-sheets-range-operations.md +267 -0
- package/skills/lark-sheets/references/lark-sheets-read-data.md +235 -0
- package/skills/lark-sheets/references/lark-sheets-search-replace.md +111 -0
- package/skills/lark-sheets/references/lark-sheets-sheet-structure.md +212 -0
- package/skills/lark-sheets/references/lark-sheets-sparkline.md +149 -0
- package/skills/lark-sheets/references/lark-sheets-visual-standards.md +205 -0
- package/skills/lark-sheets/references/lark-sheets-workbook.md +395 -0
- package/skills/lark-sheets/references/lark-sheets-write-cells.md +565 -0
- package/skills/lark-sheets/scripts/sheets_df.py +32 -0
- package/skills/lark-skill-maker/SKILL.md +85 -0
- package/skills/lark-slides/SKILL.md +274 -0
- package/skills/lark-slides/references/asset-planning.md +124 -0
- package/skills/lark-slides/references/examples.md +261 -0
- package/skills/lark-slides/references/iconpark-index.json +41901 -0
- package/skills/lark-slides/references/iconpark.md +46 -0
- package/skills/lark-slides/references/lark-slides-create.md +137 -0
- package/skills/lark-slides/references/lark-slides-edit-workflows.md +144 -0
- package/skills/lark-slides/references/lark-slides-media-upload.md +128 -0
- package/skills/lark-slides/references/lark-slides-replace-pages.md +95 -0
- package/skills/lark-slides/references/lark-slides-replace-slide.md +240 -0
- package/skills/lark-slides/references/lark-slides-screenshot.md +94 -0
- package/skills/lark-slides/references/lark-slides-whiteboard.md +330 -0
- package/skills/lark-slides/references/lark-slides-xml-presentation-slide-create.md +220 -0
- package/skills/lark-slides/references/lark-slides-xml-presentation-slide-delete.md +123 -0
- package/skills/lark-slides/references/lark-slides-xml-presentation-slide-get.md +110 -0
- package/skills/lark-slides/references/lark-slides-xml-presentation-slide-replace.md +187 -0
- package/skills/lark-slides/references/lark-slides-xml-presentations-get.md +98 -0
- package/skills/lark-slides/references/planning-layer.md +216 -0
- package/skills/lark-slides/references/slide-templates.md +201 -0
- package/skills/lark-slides/references/slides_demo.xml +226 -0
- package/skills/lark-slides/references/slides_xml_schema_definition.xml +3049 -0
- package/skills/lark-slides/references/troubleshooting.md +63 -0
- package/skills/lark-slides/references/validation-checklist.md +110 -0
- package/skills/lark-slides/references/visual-planning.md +254 -0
- package/skills/lark-slides/references/xml-format-guide.md +369 -0
- package/skills/lark-slides/references/xml-schema-quick-ref.md +245 -0
- package/skills/lark-slides/scripts/iconpark_tool.py +362 -0
- package/skills/lark-slides/scripts/iconpark_tool_test.py +177 -0
- package/skills/lark-slides/scripts/xml_text_overlap_lint.py +367 -0
- package/skills/lark-slides/scripts/xml_text_overlap_lint_test.py +299 -0
- package/skills/lark-task/SKILL.md +167 -0
- package/skills/lark-task/references/lark-task-assign.md +38 -0
- package/skills/lark-task/references/lark-task-comment.md +28 -0
- package/skills/lark-task/references/lark-task-complete.md +27 -0
- package/skills/lark-task/references/lark-task-create.md +57 -0
- package/skills/lark-task/references/lark-task-followers.md +35 -0
- package/skills/lark-task/references/lark-task-get-my-tasks.md +61 -0
- package/skills/lark-task/references/lark-task-get-related-tasks.md +53 -0
- package/skills/lark-task/references/lark-task-reminder.md +36 -0
- package/skills/lark-task/references/lark-task-reopen.md +27 -0
- package/skills/lark-task/references/lark-task-search.md +41 -0
- package/skills/lark-task/references/lark-task-set-ancestor.md +32 -0
- package/skills/lark-task/references/lark-task-tasklist-create.md +35 -0
- package/skills/lark-task/references/lark-task-tasklist-members.md +36 -0
- package/skills/lark-task/references/lark-task-tasklist-search.md +38 -0
- package/skills/lark-task/references/lark-task-tasklist-task-add.md +38 -0
- package/skills/lark-task/references/lark-task-update.md +37 -0
- package/skills/lark-task/references/lark-task-upload-attachment.md +59 -0
- package/skills/lark-vc/SKILL.md +202 -0
- package/skills/lark-vc/references/lark-vc-detail.md +44 -0
- package/skills/lark-vc/references/lark-vc-recording.md +154 -0
- package/skills/lark-vc/references/lark-vc-search.md +163 -0
- package/skills/lark-vc/references/vc-domain-boundaries.md +188 -0
- package/skills/lark-vc-agent/SKILL.md +191 -0
- package/skills/lark-vc-agent/references/lark-vc-agent-meeting-events.md +287 -0
- package/skills/lark-vc-agent/references/lark-vc-agent-meeting-join.md +141 -0
- package/skills/lark-vc-agent/references/lark-vc-agent-meeting-leave.md +105 -0
- package/skills/lark-vc-agent/references/lark-vc-agent-meeting-list-active.md +91 -0
- package/skills/lark-vc-agent/references/lark-vc-agent-meeting-message-send.md +134 -0
- package/skills/lark-whiteboard/SKILL.md +47 -0
- package/skills/lark-whiteboard/elements/connectors.md +102 -0
- package/skills/lark-whiteboard/elements/content.md +40 -0
- package/skills/lark-whiteboard/elements/image.md +80 -0
- package/skills/lark-whiteboard/elements/layout.md +374 -0
- package/skills/lark-whiteboard/elements/schema.md +357 -0
- package/skills/lark-whiteboard/elements/style.md +318 -0
- package/skills/lark-whiteboard/elements/typography.md +73 -0
- package/skills/lark-whiteboard/references/lark-whiteboard-query.md +60 -0
- package/skills/lark-whiteboard/references/lark-whiteboard-update.md +122 -0
- package/skills/lark-whiteboard/references/lark-whiteboard-workflow.md +94 -0
- package/skills/lark-whiteboard/routes/dsl.md +107 -0
- package/skills/lark-whiteboard/routes/mermaid.md +27 -0
- package/skills/lark-whiteboard/routes/svg-edit.md +85 -0
- package/skills/lark-whiteboard/routes/svg.md +54 -0
- package/skills/lark-whiteboard/scenes/architecture.md +433 -0
- package/skills/lark-whiteboard/scenes/bar-chart.md +187 -0
- package/skills/lark-whiteboard/scenes/comparison.md +135 -0
- package/skills/lark-whiteboard/scenes/fishbone.md +238 -0
- package/skills/lark-whiteboard/scenes/flowchart.md +185 -0
- package/skills/lark-whiteboard/scenes/flywheel.md +195 -0
- package/skills/lark-whiteboard/scenes/funnel.md +101 -0
- package/skills/lark-whiteboard/scenes/line-chart.md +214 -0
- package/skills/lark-whiteboard/scenes/mermaid.md +130 -0
- package/skills/lark-whiteboard/scenes/milestone.md +139 -0
- package/skills/lark-whiteboard/scenes/organization.md +173 -0
- package/skills/lark-whiteboard/scenes/photo-showcase.md +126 -0
- package/skills/lark-whiteboard/scenes/pyramid.md +99 -0
- package/skills/lark-whiteboard/scenes/swimlane.md +371 -0
- package/skills/lark-whiteboard/scenes/treemap.md +216 -0
- package/skills/lark-wiki/SKILL.md +110 -0
- package/skills/lark-wiki/references/lark-wiki-delete-space.md +205 -0
- package/skills/lark-wiki/references/lark-wiki-member-add.md +67 -0
- package/skills/lark-wiki/references/lark-wiki-member-list.md +76 -0
- package/skills/lark-wiki/references/lark-wiki-member-remove.md +61 -0
- package/skills/lark-wiki/references/lark-wiki-move.md +183 -0
- package/skills/lark-wiki/references/lark-wiki-node-copy.md +72 -0
- package/skills/lark-wiki/references/lark-wiki-node-create.md +127 -0
- package/skills/lark-wiki/references/lark-wiki-node-delete.md +62 -0
- package/skills/lark-wiki/references/lark-wiki-node-get.md +57 -0
- package/skills/lark-wiki/references/lark-wiki-node-list.md +88 -0
- package/skills/lark-wiki/references/lark-wiki-space-create.md +46 -0
- package/skills/lark-wiki/references/lark-wiki-space-list.md +68 -0
- package/skills/lark-workflow-meeting-summary/SKILL.md +122 -0
- package/skills/lark-workflow-standup-report/SKILL.md +122 -0
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
# lark-doc 画板处理指南
|
|
2
|
+
|
|
3
|
+
> **前置条件:** 先阅读 [`../../lark-shared/SKILL.md`](../../lark-shared/SKILL.md) 了解认证、全局参数和安全规则。
|
|
4
|
+
|
|
5
|
+
## 两个 Skill 的职责边界
|
|
6
|
+
|
|
7
|
+
| Skill | 核心职责 | 约束 |
|
|
8
|
+
|-------------------|-----------------------------------------------------------|---------------------------------|
|
|
9
|
+
| `lark-doc` | 识别画板机会、使用 Mermaid/SVG 创建图表、调度 SubAgent、插入简单 SVG 画板或复杂空白画板 | 主 Agent 不直接创作画板内容; |
|
|
10
|
+
| `lark-whiteboard` | 查询/导出已有画板;复杂图表生成(Mermaid/DSL/SVG 路由、场景选型、渲染验证);写入已有/空白画板 | 仅特别复杂的图表或已有画板更新时由独立 SubAgent 读取 |
|
|
11
|
+
|
|
12
|
+
## 画板适用规则
|
|
13
|
+
|
|
14
|
+
写文档时,核心流程、系统架构、方案对比、风险链路、里程碑、指标趋势、因果归因、组织关系、能力分层等内容,如果图示能明显降低理解成本,可以规划为画板;结构简单或文字更清楚的内容不必强行画板化。
|
|
15
|
+
|
|
16
|
+
同一篇文档可以有多个画板。确有多个独立图示点时,可拆成多个聚焦画板,而不是把所有信息塞进一张大图。
|
|
17
|
+
|
|
18
|
+
## 文档与画板协同流程
|
|
19
|
+
|
|
20
|
+
### 步骤 1:识别画板机会
|
|
21
|
+
|
|
22
|
+
| 场景 | 入口 |
|
|
23
|
+
|-------------------------|-----------------------------------------------------------|
|
|
24
|
+
| 文档中需要思维导图、时序图、类图、饼图、甘特图 | 步骤 2A:使用 mermaid 插入图表 |
|
|
25
|
+
| 文档中需要插入其他图表/自定义图形 | 步骤 2B: 使用 SVG 插入图表 |
|
|
26
|
+
| 已有画板需要更新内容 | 先 `docs +fetch` 获取 `board_token`,跳至步骤 3B |
|
|
27
|
+
| 只查看 / 下载已有画板 | 切换至 `lark-whiteboard`,不走本流程 |
|
|
28
|
+
|
|
29
|
+
> [!IMPORTANT]
|
|
30
|
+
> ⚠️ **分别对每个图表进行决策**
|
|
31
|
+
|
|
32
|
+
如果有多个位置需要插入图表,你需要根据每个图表的内容**分别决定**采用步骤 2A 还是 2B
|
|
33
|
+
中的方式插入这个图表。在需要插入思维导图、时序图、类图、饼图、甘特图的时候可以插入 mermaid 块,在需要插入其他类型图表时启动
|
|
34
|
+
SubAgent 插入 SVG。
|
|
35
|
+
|
|
36
|
+
建议优先使用 SVG 插入图表,除非其属于思维导图、时序图、类图、饼图、甘特图这类可以直接使用 mermaid 语法描述,且不适宜用 SVG 绘制的图表
|
|
37
|
+
|
|
38
|
+
### 步骤 2A: 使用 mermaid 插入图表
|
|
39
|
+
|
|
40
|
+
```xml
|
|
41
|
+
|
|
42
|
+
<whiteboard type="mermaid">
|
|
43
|
+
mermaid 代码...
|
|
44
|
+
</whiteboard>
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### 步骤 2B: SubAgent 使用 SVG 插入图表
|
|
48
|
+
|
|
49
|
+
主 Agent 启动 SubAgent,让它用 `docs +create` / `docs +update` 插入:
|
|
50
|
+
|
|
51
|
+
```xml
|
|
52
|
+
|
|
53
|
+
<whiteboard type="svg">
|
|
54
|
+
<svg...>...
|
|
55
|
+
</svg>
|
|
56
|
+
</whiteboard>
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Sub Agent 需要携带以下的最小上下文,以及后续的 [SVG 设计 Workflow] 章节指南:
|
|
60
|
+
|
|
61
|
+
- doc token、插入位置(标题 / block_id / command)
|
|
62
|
+
- 图表目标、受众、源段落或数据
|
|
63
|
+
- 要求读取 `lark-doc-xml.md`;不需要读取 `lark-whiteboard`
|
|
64
|
+
- SVG 必须完整自包含:包含 `<svg>` 根节点和 `viewBox`,不引用外部图片、脚本、远程资源
|
|
65
|
+
|
|
66
|
+
#### 画板 SVG 设计指南
|
|
67
|
+
|
|
68
|
+
使用 SVG 插入画板时,最终交付是**画板跨越重排渲染的节点**(你写 SVG → 画板解析)
|
|
69
|
+
**核心心智纠正 (重要)**:
|
|
70
|
+
|
|
71
|
+
- 大多数 AI 如果只考虑“绝对不报错/完美映射”, 最终给出的都是全篇纯白底色加单层 `<rect>` 的方正卡片网格, 极其死板单调, *
|
|
72
|
+
*这将被视为不及格!**
|
|
73
|
+
- **SVG 给你了完全的设计自由**, 请大胆使用你脑内的图标路径 (`<path>`), 连接指引 (`流畅的 <path>`), 各种环境氛围点缀,
|
|
74
|
+
大胆一点, 充分信任你的品味, 发挥出你的顶级艺术创造力!
|
|
75
|
+
|
|
76
|
+
##### SVG 设计 Workflow
|
|
77
|
+
|
|
78
|
+
###### 1. 想清楚要画什么
|
|
79
|
+
|
|
80
|
+
- **核心信息是什么?** 能做到一图胜千言, 绝对不要只生成平平无奇的文字表格, 要有设计感
|
|
81
|
+
- **内容充实度**:如果用户描述稀疏简略, 利用你的领域知识扩展, 保证信息维度和内容充实, 但不要过度堆砌, 淹没重点
|
|
82
|
+
- **视觉层级与隐喻**:这个没有固定的形式, 你自由判断, 比如: 给重要的节点加光环, 加高亮背景;给对比项设计天平或对称结构
|
|
83
|
+
|
|
84
|
+
###### 2. 写 SVG
|
|
85
|
+
|
|
86
|
+
> [!IMPORTANT]
|
|
87
|
+
> 布局, 配色, 信息密度, 装饰物——**全部由你判断**, 打破单调的 `<rect>` 牢笼, 严禁通篇用矩形和文字应付用户
|
|
88
|
+
> 操作边界约束:
|
|
89
|
+
|
|
90
|
+
- **语言跟随用户**:图表文字的语言与用户 prompt 保持一致, 技术术语用行业里通用的写法, 不机械翻译
|
|
91
|
+
- 文字用 `<text>`(不是 `<path>`), 容器宽度留够——画板按 CJK ≈ 1em / Latin ≈ 0.6em 重排
|
|
92
|
+
- 连线使用正交折线替代斜直线(`<polyline>` 带水平/垂直折点)视觉效果更好
|
|
93
|
+
- 可自由使用 `translate`, `rotate`, `scale`但请尽量避免使用 `skewX` / `skewY` / `matrix(...)` 发生空间级扭曲
|
|
94
|
+
|
|
95
|
+
###### 画板怎么处理 SVG
|
|
96
|
+
|
|
97
|
+
画板的 svg-parser 把可识别元素转成可编辑节点, 其余降级为内嵌图片(渲染没问题, 虽然不可编辑, 但是可以正常显示);但
|
|
98
|
+
`<radialGradient>` / `<filter>` / `<clipPath>` 等装饰特性画板完全不支持,会导致渲染问题(见下方⚠️)
|
|
99
|
+
**不需要所有元素都可编辑, 但必须避免使用不支持的装饰特性, 且要兼顾可编辑和美观漂亮**
|
|
100
|
+
|
|
101
|
+
**可识别的元素**
|
|
102
|
+
|
|
103
|
+
- 形状:`<rect>` / `<circle>` / `<ellipse>` / `<polygon>`
|
|
104
|
+
- 连线:`<line>` / `<polyline>` / `<path>`(自动识别为直线 / 折线 / 曲线)
|
|
105
|
+
- 文本:`<text>` / `<tspan>` 画板硬编码 Noto Sans SC **文字必须用 `<text>`**
|
|
106
|
+
- 分组:`<g>` / `<a>` / `<use>` 引用 `<symbol>`
|
|
107
|
+
- 变换:`translate` / `rotate` / `scale` 正常;`skewX` / `skewY` / `matrix(...)` 降级
|
|
108
|
+
|
|
109
|
+
> [!IMPORTANT]
|
|
110
|
+
> ⚠️ ** 不支持的装饰特性**
|
|
111
|
+
|
|
112
|
+
- `<radialGradient>` / `<filter>` / `<pattern>` / `<clipPath>` / `<mask>` → 画板都不支持,**请避免使用,否则会导致画板渲染问题
|
|
113
|
+
**
|
|
114
|
+
|
|
115
|
+
###### 3.插入后审查
|
|
116
|
+
|
|
117
|
+
插入画板后,可以从返回值使用 lark-cli 指令,将画板内容导出为 png
|
|
118
|
+
图片。若是对设计不满意,可以修改后,删除原来的画板再重新插入,或是调用 [
|
|
119
|
+
`../../lark-whiteboard/SKILL.md`](../../lark-whiteboard/SKILL.md) 编辑。
|
|
120
|
+
|
|
121
|
+
```bash
|
|
122
|
+
lark-cli whiteboard +query \
|
|
123
|
+
--whiteboard-token "wbcnxxxxxxxx" \
|
|
124
|
+
--output_as image \
|
|
125
|
+
--output ./preview.png
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
### 步骤 3B:编辑已有画板 — 启动 lark-whiteboard SubAgent
|
|
129
|
+
|
|
130
|
+
复杂图和已有画板更新必须启动 SubAgent。主 Agent 只传最小上下文,不直接执行 `lark-whiteboard` 的渲染和写入流程。
|
|
131
|
+
|
|
132
|
+
复杂图 SubAgent 的最小上下文:
|
|
133
|
+
|
|
134
|
+
- board_token
|
|
135
|
+
- 图表目标、推荐画板类型、受众
|
|
136
|
+
- 与图表直接相关的源段落或数据
|
|
137
|
+
- 要求读取 [`../../lark-whiteboard/SKILL.md`](../../lark-whiteboard/SKILL.md),按其完整流程写入该 board_token
|
|
138
|
+
|
|
139
|
+
多个画板互不依赖时,可并行启动多个 SubAgent;每个 SubAgent 只负责一个画板或一个 SVG 插入点,不要互相复用上下文。
|
|
140
|
+
|
|
141
|
+
### 步骤 4:完成校验
|
|
142
|
+
|
|
143
|
+
- Mermaid: 确认插入的是 `<whiteboard type="mermaid">`,且内容 mermaid 语法完整
|
|
144
|
+
- SVG: 确认插入的是 `<whiteboard type="svg">`,且内容是完整 `<svg ...>...</svg>`
|
|
145
|
+
- 不保留空白占位画板;复杂路径只有空白画板而无内容视为任务未完成
|
|
146
|
+
|
|
147
|
+
---
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
---
|
|
151
|
+
|
|
152
|
+
## 关联参考
|
|
153
|
+
|
|
154
|
+
- 画板查询/创作/修改/渲染写入:[`../../lark-whiteboard/SKILL.md`](../../lark-whiteboard/SKILL.md)
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
# 文档统计:总字数 / 总字符数
|
|
2
|
+
|
|
3
|
+
当用户需要统计 Docx / Wiki 文档的总字数或总字符数时,使用本 skill 附带脚本 `scripts/doc_word_stat.py`。统计口径以该脚本为准,不要改用其他方式自行计算,也不要只读取 simple 摘要后统计。
|
|
4
|
+
|
|
5
|
+
## 调用方式
|
|
6
|
+
|
|
7
|
+
在线文档使用 XML full 内容,并让脚本读取 `docs +fetch --format json` 的 envelope:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
lark-cli docs +fetch --doc "$URL" --doc-format xml --detail full --format json \
|
|
11
|
+
| python3 skills/lark-doc/scripts/doc_word_stat.py --protocol xml --lark-json --pretty
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
`$URL` 可以是用户给出的 docx/wiki URL,也可以是可被 `docs +fetch` 解析的 token。
|
|
15
|
+
|
|
16
|
+
## 统计范围
|
|
17
|
+
|
|
18
|
+
先判断用户要求的是**整篇文档**还是**局部内容**:
|
|
19
|
+
|
|
20
|
+
- 整篇文档的总字数 / 总字符数:按上方「调用方式」抓取 `full` 内容后统计。
|
|
21
|
+
- 本次新增 / 替换 / 改写片段的字数:优先统计拟写内容本身;内容已写入文档时,只 fetch 对应 block / range 后统计。不得用整篇文档字数对比局部目标。
|
|
22
|
+
|
|
23
|
+
如需在自动化或回归验证中发现未覆盖块类型,追加严格参数:
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
lark-cli docs +fetch --doc "$URL" --doc-format xml --detail full --format json \
|
|
27
|
+
| python3 skills/lark-doc/scripts/doc_word_stat.py --protocol xml --lark-json --pretty --fail-on-unsupported --fail-on-unknown
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## 如何读取结果
|
|
31
|
+
|
|
32
|
+
脚本输出 JSON。对用户汇报时默认只读两个核心字段:
|
|
33
|
+
|
|
34
|
+
- `word_count`:总字数。按语义单位统计汉字、英文单词/URL/code path、数字、中文标点;普通贴着英文的英文标点不计入,但独立 ASCII 符号、中文之间的 `/` 等以脚本结果为准。
|
|
35
|
+
- `char_count`:总字符数。统计汉字、英文字母、数字、中英文标点和脚本识别的可见符号;空格不计入。
|
|
36
|
+
|
|
37
|
+
其余字段用于排查或解释:
|
|
38
|
+
|
|
39
|
+
- `breakdown`:拆分统计来源,例如 `han_chars`、`english_words`、`digits`、`chinese_punctuations`。
|
|
40
|
+
- `unknown_blocks`:脚本遇到未知 XML/Markdown 块类型;通常表示需要扩展解析规则。
|
|
41
|
+
- `unsupported_blocks`:脚本识别到块类型,但当前无法可靠提取可见文本。
|
|
42
|
+
- `diagnostics.has_unknown` / `diagnostics.has_unsupported`:快速判断统计是否存在覆盖风险。
|
|
43
|
+
|
|
44
|
+
如果 `unknown_blocks` 或 `unsupported_blocks` 非空,回复用户时要说明“已统计可提取文本,但存在未覆盖块,结果可能偏低”,并列出对应块类型。为空时可直接给出结果。
|
|
45
|
+
|
|
46
|
+
## 字数遵循校验
|
|
47
|
+
|
|
48
|
+
当用户给了明确字数要求(写 N 字 / x-y 字 / x 字左右 / 上下浮动)时执行;没有明确字数要求则跳过。字数必须按本文流程用脚本统计,不要自己估。
|
|
49
|
+
|
|
50
|
+
1. 先按「统计范围」确认统计对象,再把要求归一成目标区间:`>x`→`[x+1, +∞)`;`<y`→`(-∞, y-1]`;`x-y`→`[x, y]`;`x 字左右`→`[round(0.9x), round(1.1x)]`
|
|
51
|
+
2. 按统计对象选择对应输入并调用脚本统计实际字数,读取输出里的 `word_count`
|
|
52
|
+
3. 对比 `word_count` 与目标区间:区间内即通过;低于下限 → 补充**实质内容**(非注水);高于上限 → 删减冗余内容。改完重新统计
|
|
53
|
+
4. **最多 2 轮**。2 轮后仍不达标:停止,不得为达标而注水或删关键内容;如实汇报【目标区间 / 当前字数 / 差值与方向 / 已试 2 轮 / 未达原因】,**禁止谎称达标**
|
|
54
|
+
|
|
55
|
+
## 输出示例
|
|
56
|
+
|
|
57
|
+
输入正文等价于:`标题` + `一个苹果是 an apple。` 时,输出形态如下:
|
|
58
|
+
|
|
59
|
+
```json
|
|
60
|
+
{
|
|
61
|
+
"word_count": 10,
|
|
62
|
+
"char_count": 15,
|
|
63
|
+
"breakdown": {
|
|
64
|
+
"han_chars": 7,
|
|
65
|
+
"english_words": 2,
|
|
66
|
+
"number_words": 0,
|
|
67
|
+
"chinese_punctuations": 1,
|
|
68
|
+
"english_letters": 7,
|
|
69
|
+
"digits": 0,
|
|
70
|
+
"english_punctuations": 0,
|
|
71
|
+
"symbol_words": 0,
|
|
72
|
+
"symbol_chars": 0
|
|
73
|
+
},
|
|
74
|
+
"protocol": "xml",
|
|
75
|
+
"unknown_blocks": [],
|
|
76
|
+
"unsupported_blocks": [],
|
|
77
|
+
"diagnostics": {
|
|
78
|
+
"has_unknown": false,
|
|
79
|
+
"has_unsupported": false,
|
|
80
|
+
"types": {},
|
|
81
|
+
"unknown_types": {},
|
|
82
|
+
"unsupported_types": {},
|
|
83
|
+
"actions": {}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
面向用户的回复可简化为:
|
|
89
|
+
|
|
90
|
+
```text
|
|
91
|
+
总字数:10
|
|
92
|
+
总字符数:15
|
|
93
|
+
```
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
基于 HTML 子集的 XML 格式描述飞书文档内容。
|
|
2
|
+
|
|
3
|
+
# 一、标准 HTML 标签
|
|
4
|
+
p, h1-h9, ul, ol, li, table, thead, tbody, tr, th, td, blockquote, pre, code, hr, img, b, em, u, del, a, br, span 语义不变
|
|
5
|
+
|
|
6
|
+
# 二、扩展标签速查表
|
|
7
|
+
## 块级标签
|
|
8
|
+
|标签|说明|关键属性|
|
|
9
|
+
|-|-|-|
|
|
10
|
+
| `<title>` | 文档标题(每篇唯一)| `align` |
|
|
11
|
+
| `<checkbox>` | 待办项| `done="true"\|"false"` |
|
|
12
|
+
|
|
13
|
+
## 容器标签
|
|
14
|
+
|标签|说明|关键属性|
|
|
15
|
+
|-|-|-|
|
|
16
|
+
| `<callout>` | 高亮框,子块仅支持文本、标题、列表、待办、引用 | `emoji`(默认 bulb), `background-color`, `border-color`, `text-color` |
|
|
17
|
+
| `<grid>` + `<column>` | 分栏布局,各列 width-ratio 之和为 1 | `width-ratio` |
|
|
18
|
+
| `<whiteboard>` | 嵌入画板 | `type`: `blank` \| `mermaid` \| `plantuml` \| `svg` |
|
|
19
|
+
| `<pre>` | (代码块,内含 `code`)| `lang`, `caption` |
|
|
20
|
+
| `<figure>` | 视图容器 | `view-type` |
|
|
21
|
+
| `<bookmark>` | 书签链接 | `<bookmark name="标题" href="https://..."></bookmark>`,必传 name 和 href |
|
|
22
|
+
|
|
23
|
+
## 行内组件
|
|
24
|
+
| 标签 | 说明 | 关键属性 |
|
|
25
|
+
|-|-|-|
|
|
26
|
+
| `<cite type="user">` | @人 | `<cite type="user" user-id="userID"></cite>` |
|
|
27
|
+
| `<cite type="doc">` | @文档 | `<cite type="doc" doc-id="docx_token"></cite>` |
|
|
28
|
+
| `<latex>` | 行内公式 | `<latex>E = mc^2</latex>` |
|
|
29
|
+
| `<img>` | 图片(可独立成块或内联) | `<img width="800" height="600" caption="说明" name="图.png" href="http 或 https"/>` |
|
|
30
|
+
| `<source>` | 文件附件(可独立成块或内联) | `<source name="报告.pdf"/>` |
|
|
31
|
+
| `<a type="url-preview">` | 预览卡片 | `<a type="url-preview" href="...">标题</a>` |
|
|
32
|
+
| `<button>` | 操作按钮 | `background-color`、`src`,必须包含 `action=OpenLink\|DuplicatePage\|FollowPage` |
|
|
33
|
+
| `<time>` | 提醒 | 必包含 `expire-time`、`notify-time`(毫秒时间戳)、`should-notify=true\|false` |
|
|
34
|
+
|
|
35
|
+
## 文本块通用属性
|
|
36
|
+
- `align` — `"left"`|`"center"`|`"right"`(适用于 p / h1-h9 / li / checkbox)
|
|
37
|
+
- 有序列表项用 `seq="auto"` 自动编号
|
|
38
|
+
|
|
39
|
+
# 三、资源块
|
|
40
|
+
|
|
41
|
+
文档中可嵌入外部资源块(属于容器标签的特殊形式),需要额外语法创建:
|
|
42
|
+
|
|
43
|
+
- `<img>` — `<img href="https://..."/>` 上传网络图片
|
|
44
|
+
- `<whiteboard>` — 简单图由 SubAgent 直接插入 `<whiteboard type="svg">完整自包含 SVG</whiteboard>`;复杂图使用 `<whiteboard type="blank"></whiteboard>` 先创建空白画板,再按 [`lark-doc-whiteboard.md`](lark-doc-whiteboard.md) 启动 SubAgent 调用 `lark-whiteboard` 写入;
|
|
45
|
+
- `<sheet>` — `<sheet type="blank"></sheet>` 空白;`<sheet sheet-id="SID" token="TOKEN"></sheet>` 复制已有
|
|
46
|
+
- `<task>` — `<task task-id="GUID"></task>`,必传 task-id(任务 guid)
|
|
47
|
+
- `<chat_card>` — `<chat_card chat-id="CHAT_ID"></chat_card>`,必传 chat-id
|
|
48
|
+
- `<sub-page-list>` — `<sub-page-list></sub-page-list>` 子页面列表块;仅 wiki 文档可插入
|
|
49
|
+
- bitable、base_ref、synced_reference、synced_source、okr — 不可创建,仅支持移动
|
|
50
|
+
|
|
51
|
+
# 四、块级复制与移动
|
|
52
|
+
|
|
53
|
+
## 移动(block_move_after)
|
|
54
|
+
支持**所有**块类型(块级标签、容器标签、行内组件、资源块),使用 `docs +update --command block_move_after --block-id "<锚点>" --src-block-ids "id1,id2"`。
|
|
55
|
+
|
|
56
|
+
## 复制(block_copy_insert_after)
|
|
57
|
+
- **基础标签**(块级标签、容器标签、行内组件):均支持复制
|
|
58
|
+
- **资源块**:仅 img、source、whiteboard、sheet、chat_card、sub-page-list 支持复制;task、bitable、base_ref、synced_reference、synced_source、okr 不支持复制
|
|
59
|
+
|
|
60
|
+
使用 `docs +update --command block_copy_insert_after --block-id "<锚点>" --src-block-ids "id1,id2"`。
|
|
61
|
+
|
|
62
|
+
> 详见 [lark-doc-update.md](lark-doc-update.md)。
|
|
63
|
+
|
|
64
|
+
# 五、补充规则
|
|
65
|
+
|
|
66
|
+
## 富文本样式嵌套顺序
|
|
67
|
+
- 行内样式标签必须按以下固定顺序嵌套(外 → 内),关闭顺序严格反转:`<a> → <b> → <em> → <del> → <u> → <code> → <span> → 文本内容`
|
|
68
|
+
|
|
69
|
+
## 列表分组
|
|
70
|
+
- 连续同类型列表项自动合并为一个 `<ul>` 或 `<ol>`
|
|
71
|
+
- 嵌套子列表放在 `<li>` 内部
|
|
72
|
+
- 新增列表项必须包在 `<ul>` 或 `<ol>` 内:
|
|
73
|
+
```xml
|
|
74
|
+
<ul>
|
|
75
|
+
<li>第一项</li>
|
|
76
|
+
<li>第二项</li>
|
|
77
|
+
</ul>
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
## 代码块
|
|
81
|
+
- 代码块必须写成 `<pre lang="xxx" caption="可选说明"><code>代码内容</code></pre>`。
|
|
82
|
+
- 不要将代码文本直接放在 `<pre>` 下;应放在内层 `<code>` 中。
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
## 用户名写入规则
|
|
86
|
+
|
|
87
|
+
- 当从 IM 消息、日历、审批、任务等来源获取到用户的 `open_id` 时,写入文档**必须**使用 `<cite type="user" user-id="open_id">` 标签,而非纯文本名字。这样文档中会渲染为可点击的 @人。
|
|
88
|
+
- 典型场景:IM 消息的 `sender`、`mentions`、reactions 的 `operator`、卡片消息中引用的用户、系统消息中的用户名、合并转发中的用户名。
|
|
89
|
+
- 当只有纯文本名字而没有 `open_id` 时(如系统消息、合并转发内容),先通过 `lark-cli contact +search-user --query "名字" --as user` 反查 `open_id`,再写入 cite 标签。
|
|
90
|
+
|
|
91
|
+
## 表格扩展
|
|
92
|
+
标准 HTML table 结构不变,扩展点:
|
|
93
|
+
- `<colgroup>` / `<col>` 定义列宽,紧跟 `<table>` 之后:`<col span="2" width="100"/>`
|
|
94
|
+
- `<th>` / `<td>` 增加 `background-color` 和 `vertical-align`(top | middle | bottom)
|
|
95
|
+
- 有表头时第一行在 `<thead>` 用 `<th>`,其余在 `<tbody>` 用 `<td>`
|
|
96
|
+
- 合并单元格仅起始格输出 `colspan` / `rowspan`,被合并的格不出现
|
|
97
|
+
|
|
98
|
+
# 六、美化系统
|
|
99
|
+
- 颜色优先使用命名色,也可写 `rgb(r,g,b)` / `rgba(r,g,b,a)`。**基础色(7 色)**:red, orange, yellow, green, blue, purple, gray
|
|
100
|
+
| 属性 | 支持的命名色 |
|
|
101
|
+
|-|-|
|
|
102
|
+
| 文字颜色 `<span text-color>` | 基础色 |
|
|
103
|
+
| 高亮框字色 `<callout text-color>` | 基础色 |
|
|
104
|
+
| 高亮框边框 `<callout border-color>` | 基础色 |
|
|
105
|
+
| 文字背景 `<span background-color>` | 基础色 + `light-{色}` + `medium-gray` |
|
|
106
|
+
| 高亮框填充 `<callout background-color>` | `gray` + `light-{色}` + `medium-{色}` |
|
|
107
|
+
| 单元格背景 `<th/td background-color>` | 同文字背景 |
|
|
108
|
+
| 按钮背景 `<button background-color>` | 同文字背景 |
|
|
109
|
+
- 常用 emoji: 💡(默认)✅❌📝❓❗👍❤️📌🏁⭐
|
|
110
|
+
|
|
111
|
+
# 七、**重要规则**
|
|
112
|
+
## 转义规则:标签本身 **禁止转义**,只有标签内部的文本内容才需要转义
|
|
113
|
+
|
|
114
|
+
**错误** ❌:`<p>内容</p>`(把标签也转义了)
|
|
115
|
+
**正确** ✅:`<p>A & B 的对比:1 < 2</p>`(标签保持原样,文本中的 `&` 和 `<` 才转义)
|
|
116
|
+
|
|
117
|
+
转义字符表:
|
|
118
|
+
- `<` → `<`
|
|
119
|
+
- `>` → `>`
|
|
120
|
+
- `&` → `&`
|
|
121
|
+
- `\n`(换行符) → `<br/>`
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
# 八、完整示例
|
|
125
|
+
|
|
126
|
+
```xml
|
|
127
|
+
<title>文档标题</title>
|
|
128
|
+
|
|
129
|
+
<h1>一级标题</h1>
|
|
130
|
+
|
|
131
|
+
<p><b>加粗文本</b>,<span text-color="green">绿色文本</span></p>
|
|
132
|
+
|
|
133
|
+
<callout emoji="💡" background-color="light-yellow" border-color="yellow">
|
|
134
|
+
<p>高亮框内容,子块仅支持文本/标题/列表/待办/引用</p>
|
|
135
|
+
</callout>
|
|
136
|
+
|
|
137
|
+
<checkbox done="true">已完成事项</checkbox>
|
|
138
|
+
<checkbox done="false">未完成事项</checkbox>
|
|
139
|
+
|
|
140
|
+
<grid>
|
|
141
|
+
<column width-ratio="0.5">
|
|
142
|
+
<p>左栏</p>
|
|
143
|
+
</column>
|
|
144
|
+
<column width-ratio="0.5">
|
|
145
|
+
<p>右栏</p>
|
|
146
|
+
</column>
|
|
147
|
+
</grid>
|
|
148
|
+
|
|
149
|
+
<table>
|
|
150
|
+
<colgroup><col span="2" width="120"/></colgroup>
|
|
151
|
+
<thead><tr><th background-color="light-gray">表头</th><th background-color="light-gray">表头</th></tr></thead>
|
|
152
|
+
<tbody><tr><td>单元格</td><td>单元格</td></tr></tbody>
|
|
153
|
+
</table>
|
|
154
|
+
|
|
155
|
+
<p><cite type="doc" doc-id="DOC_TOKEN"></cite> <cite type="user" user-id="USER_ID"></cite></p>
|
|
156
|
+
|
|
157
|
+
<ol><li seq="auto">第一项</li><li seq="auto">第二项</li></ol>
|
|
158
|
+
|
|
159
|
+
<p><a type="url-preview" href="https://example.com">链接标题</a></p>
|
|
160
|
+
|
|
161
|
+
<p><latex>E = mc^2</latex></p>
|
|
162
|
+
|
|
163
|
+
<pre lang="go" caption="示例"><code>fmt.Println("hello")</code></pre>
|
|
164
|
+
|
|
165
|
+
<hr/>
|
|
166
|
+
|
|
167
|
+
<source name="文件名.pdf"/>
|
|
168
|
+
<img src="IMG_TOKEN" width="800" height="400" caption="说明" name="图.png"/>
|
|
169
|
+
<img href="https://example.com/photo.png"/>
|
|
170
|
+
|
|
171
|
+
<button action="OpenLink" src="https://example.com">按钮文字</button>
|
|
172
|
+
|
|
173
|
+
<time expire-time="1775916000000" notify-time="1775912400000" should-notify="false">时间戳毫秒</time>
|
|
174
|
+
|
|
175
|
+
<cite type="citation"><a href="https://example.com">引文标题</a></cite>
|
|
176
|
+
<bookmark name="书签标题" href="https://example.com"></bookmark>
|
|
177
|
+
|
|
178
|
+
<task task-id="TASK_GUID"></task>
|
|
179
|
+
<chat_card chat-id="CHAT_ID"></chat_card>
|
|
180
|
+
<sub-page-list></sub-page-list>
|
|
181
|
+
```
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# 从零创作工作流
|
|
2
|
+
|
|
3
|
+
用户提供主题、需求或简要说明,需要生成一份新的飞书文档时,遵循本工作流。
|
|
4
|
+
|
|
5
|
+
## 核心方法论 — Code-Act Loop
|
|
6
|
+
|
|
7
|
+
通过自适应的 **Code-Act Loop** 驱动文档创作,而非固定模板式的工作流。每次任务都循环执行:
|
|
8
|
+
|
|
9
|
+
1. **Plan(规划)** — 根据用户目标和文档当前状态,评估下一步该做什么
|
|
10
|
+
2. **Execute(执行)** — 由主 Agent 自己运行 `lark-cli docs` 命令推进正文;仅画板渲染按需隔离到 SubAgent(见步骤三)
|
|
11
|
+
3. **Observe(观察)** — 检查命令输出,验证正确性,确认内容是否满足用户目标
|
|
12
|
+
4. **Iterate(迭代)** — 如需调整,回到 Plan 继续循环
|
|
13
|
+
|
|
14
|
+
循环在文档达到质量标准且满足用户需求时结束。不要试图一次性产出完美内容——迭代打磨效果更好。根据用户实际需求灵活决定文档结构和版块,而不是套用固定模板。
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
## 典型 Code-Act Loop 流程
|
|
18
|
+
|
|
19
|
+
### 步骤一:规划与撰写(单 Agent 串行)
|
|
20
|
+
|
|
21
|
+
正文由主 Agent 串行维护,**不按章节拆给并行 Agent**,避免上下文割裂、重复矛盾和全文级约束失效。
|
|
22
|
+
|
|
23
|
+
1. 分析用户需求:受众、目的、范围
|
|
24
|
+
2. 设计大纲:根据任务自然选择结构。可以是短文、纪要、FAQ、方案、报告、清单或其他形式;不要默认套固定章节、固定开头或固定富 block 配比
|
|
25
|
+
3. `docs +create` 创建并撰写:
|
|
26
|
+
- **短文档**:一次写入完整内容。使用 Markdown 时,避免同时传入 `--title` 和同名 `# 标题`
|
|
27
|
+
- **长文档**:先建骨架(标题 + 各级标题),再由主 Agent **顺序逐节**用 `block_insert_after --block-id <章节标题 block_id>` 补全正文;写完一节再写下一节,始终带着已写内容的上下文,保证衔接、不重复
|
|
28
|
+
- ⚠️ 不要一次性把超长完整内容塞进 `--content`,容易触发字符/参数限制;长文按节分次写入
|
|
29
|
+
- ⚠️ 同一节内多次插入时,要锚到**上一个新插入的 block**(按 [`lark-doc-update.md`](../lark-doc-update.md) 的「Block ID 生命周期」),否则反复锚同一个标题会让段落顺序颠倒
|
|
30
|
+
- ⚠️ 若先建骨架写了占位摘要,补正文时**删除占位摘要**,不要留残渣
|
|
31
|
+
- ⚠️ **`@file` 路径限制**:`--content @file` 只接受当前工作目录下的相对路径,传绝对路径(如 `@/tmp/xxx.md`)会报 `unsafe file path`。需要落盘时,将文件写在 cwd 下,用完自行清理
|
|
32
|
+
|
|
33
|
+
### 步骤二:整合审查与画板识别(串行)
|
|
34
|
+
|
|
35
|
+
4. `docs +fetch --api-version v2 --detail with-ids` 获取文档,审查整体效果
|
|
36
|
+
5. 评估内容是否满足用户目标:事实是否完整、结构是否清楚、语气是否匹配、是否保留必要素材;检查跨节有无重复、矛盾或断流。再按 `lark-doc-style.md` 的「写完自检」快速核对,发现问题就地定向修正
|
|
37
|
+
6. **画板识别**:逐章节扫描,判断是否有段落用图明显比文字更易懂(流程 / 架构 / 时间线 / 对比 / 占比等,见 `lark-doc-style.md` 的画板原则)。默认用文字,只有确需图示才记录需要插图的章节、推荐画板类型、mermaid/SVG 路径和用于画图的源内容
|
|
38
|
+
|
|
39
|
+
### 步骤三:画板处理与润色
|
|
40
|
+
|
|
41
|
+
7. **优先处理步骤二识别出的画板需求**:读取并按 [lark-doc-whiteboard.md](../lark-doc-whiteboard.md) 选型和插入;正文本身不交给 SubAgent
|
|
42
|
+
8. 由**主 Agent 自行润色**(不另起内容子 Agent,正文始终一人维护):文字密集且不易读时,优先拆段、加小标题或调整顺序——叙述内容保持成段,**不要默认改成列表**,只有确属并列要点 / 步骤才用列表(见 `lark-doc-style.md`);只有确实存在行列数据时才用 `<table>`。其余富 block 的取舍一律遵循 `lark-doc-style.md` 的写作原则,不主动堆叠。需要明显分隔的主题可补充 `<hr/>`,不强制章节间都使用。本地图片使用 `docs +media-insert` 插入
|
|
43
|
+
|
|
44
|
+
### 步骤四:专项校验
|
|
45
|
+
|
|
46
|
+
9. **字数门禁**:如果用户给出任何明确字数要求(如“700-800 字”“1000 字左右”“不少于 500 字”“控制在 800 字以内”),本步骤必须执行,不属于按需项。读取并执行 [`lark-doc-word-stat.md`](../lark-doc-word-stat.md) 的「字数遵循校验」;未得到脚本统计结果前,不得向用户声明“符合字数要求”。若没有明确字数要求,则跳过本项,不读取该 workflow。若执行了专项校验,向用户呈现目标区间、`word_count` 和达标结论
|
|
47
|
+
10. **重复标题检查**:文档生成后,检查文档标题和正文第一个标题块是否重复;若重复,删除或改写正文第一个标题块,避免读者看到同一标题连续出现
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# 飞书文档写作原则
|
|
2
|
+
|
|
3
|
+
写飞书文档,像一个该领域资深的人类作者那样写,而不是把内容"装配"成组件。
|
|
4
|
+
本文只讲"何时用、什么风格";具体标签 / 命令语法见 [`lark-doc-xml.md`](../lark-doc-xml.md)。
|
|
5
|
+
|
|
6
|
+
## 一、用户明确要求优先
|
|
7
|
+
|
|
8
|
+
用户点名要某种格式——高亮块、分栏、列表、某编号体例、表格、画板、某模板、某已有文档的风格——**一律照用户的来,下面的"默认克制"全部让位**。用户给了样例或已有文档,就沿用它的结构与语气。
|
|
9
|
+
|
|
10
|
+
## 二、默认写连贯段落
|
|
11
|
+
|
|
12
|
+
用户没指定时,**默认是连贯段落**;其余按内容类型分流,别一律"少用结构",也别什么都升标题:
|
|
13
|
+
|
|
14
|
+
| 内容 | 用什么 | ❌ 别 |
|
|
15
|
+
|---|---|---|
|
|
16
|
+
| 叙述、论证、分析、说明 | **连贯段落** | 拆成列举 |
|
|
17
|
+
| 真·行列数据(预算、指标、对比、排期、字段说明) | **表格** | 写成段落或把字段堆成一行 |
|
|
18
|
+
| 字段:值(主题、时长、负责人等,少量) | **加粗标签行**或一句话 | 每字段一个标题 |
|
|
19
|
+
| 方法 / 措施 + 每项一段描述 | **加粗引导句段落**(「**全程督导。**…」) | 每项升标题 |
|
|
20
|
+
| 任务清单 / 检查项 / 待办事项 | **`<checkbox>`** | 用普通列表替代可交互待办 |
|
|
21
|
+
| 纯短并列项(无描述,如材料清单) | 列表 | — |
|
|
22
|
+
| 章节(内容成块、需在目录导航) | 标题层级 | — |
|
|
23
|
+
|
|
24
|
+
- 判断标准:**去掉结构后能顺成段落,就用段落;成行成列的数据,就用表格。**
|
|
25
|
+
- **红线一:标题层级只给"章节"。** "小标题 + 一两句话"的小项(字段、方法、要点)不该占标题层级——按上表降成标签行 / 加粗引导句段落(否则目录里全是没信息量的条目)。
|
|
26
|
+
- **红线二:列举(「一是 / 二是」「第一 / 第二」「(1)(2)(3)」)只给真正并列的具体项,且别每节都用。**
|
|
27
|
+
- 「一是 / 二是」是党务列举的措辞——只用在列具体的**问题 / 措施**那一处;背景、现状、认识、分析、过渡、总结**一律成段**。
|
|
28
|
+
- **整篇每段 / 每节都"一是 / 二是",和"每段一个 bullet"是同一个骨架化的错——不因为是党务就变对**(纯清单 / 台账类除外)。
|
|
29
|
+
|
|
30
|
+
## 三、按体裁写
|
|
31
|
+
|
|
32
|
+
- **公文 / 法律 / 学术 / 申报 / 项目方案等严肃正式提交物**:靠规范的标题层级、段落与编号体系表达;**默认不用高亮块、分栏**,要强调用加粗或规范小标题。
|
|
33
|
+
- **面向公众号、微信等外部平台粘贴 / 发布的内容**:不用飞书特有富 block(高亮块、分栏等),粘出去会丢样式 / 错乱;改用标准标题、段落、列表、引用。
|
|
34
|
+
- **一般文档**:以可读为先,不堆砌结构。
|
|
35
|
+
|
|
36
|
+
## 四、编号与层级
|
|
37
|
+
|
|
38
|
+
- **一套编号体例、全篇一致;最忌中文大层级与阿拉伯小数编号混用。**
|
|
39
|
+
- 公文 / 正式材料常用:「一、→(一)→ 1.→(1)」(中文大层级 + 阿拉伯细分层级)。
|
|
40
|
+
- 学术 / 技术 / 商业报告:「1 → 1.1 → 1.1.1」或「一、→(一)→ 1.」,**择一**。
|
|
41
|
+
- ⚠️ **「一、」只能配「(一)」;要用阿拉伯小数就从顶层全用「1 / 1.1」。绝不「一、」配「1.1 / 2.1」**——这是最常见的混用。
|
|
42
|
+
- **不混用**多套(别"第X部分"+"一、"+"1."混着来);**同级不跳号**;**不跳级**。
|
|
43
|
+
- **编号 / 标题层级只给"章节"**,不要为了凑齐体例把每个小项都编上「(一)」、升成标题(小项处理方式见上文「二、默认写连贯段落」)。
|
|
44
|
+
- 简单的 1.2.3 并列项用原生 `<ol><li seq="auto">…</li></ol>` 让飞书自动编号、自动对齐;「一、(一)」原生产不出,才手打成文字——此时用标题级别表达层次,**不靠手动缩进**、各级顶格(全角括号「()」叠手动缩进会视觉错位)。
|
|
45
|
+
|
|
46
|
+
## 五、飞书特有组件,克制使用
|
|
47
|
+
|
|
48
|
+
- **高亮块 `<callout>`**:很重的强提醒信号,**默认不用**;只给"不提醒就会出错 / 遗漏"的关键项,全文极少(0~1 个),不要每节导语 / 结论都做成高亮块。
|
|
49
|
+
- **分栏 `<grid>`**:仅左右信息量相当、确需并排对照的短内容;否则用段落或表格。
|
|
50
|
+
- **画板**:默认用文字,只在**图示明显比文字更易懂**(流程、架构、时间线、对比、占比等)或用户要求时才用。怎么插、用哪种类型见 [`lark-doc-xml.md`](../lark-doc-xml.md) 与 [`lark-doc-whiteboard.md`](../lark-doc-whiteboard.md)。
|
|
51
|
+
- **颜色**:默认朴素、不上色;需要时保持语义一致,按下表选择对应颜色,不为装饰上色。可用色见 [`lark-doc-xml.md`](../lark-doc-xml.md) 的「美化系统」。
|
|
52
|
+
|
|
53
|
+
| 语义 | 背景色 | 文字色 |
|
|
54
|
+
|-|-|-|
|
|
55
|
+
| 信息、说明 | `light-blue` | `blue` |
|
|
56
|
+
| 成功、推荐 | `light-green` | `green` |
|
|
57
|
+
| 警告 / 错误 / 风险 | `light-red` | `red` |
|
|
58
|
+
| 注意、待确认 | `light-yellow` | `yellow` |
|
|
59
|
+
| 中性、辅助 | `light-gray` | — |
|
|
60
|
+
|
|
61
|
+
## 六、写完自检
|
|
62
|
+
|
|
63
|
+
交付前快速回看:
|
|
64
|
+
- **叙述是否被列举化**:背景 / 现状 / 认识 / 分析 / 成效 / 过渡 / 总结等应成段;列举只用于同层级、可并列处理的信息,如问题、措施、步骤、任务或材料清单。若正文反复使用连续编号、项目符号或固定并列句式,导致内容缺少叙述,应把背景 / 认识 / 分析 / 过渡改写成有承接关系的段落(纯清单 / 台账类除外)。
|
|
65
|
+
- **数据是否正确呈现**:成行成列的数据应使用表格呈现,不要写成段落,也不要用分隔符把多个字段硬串在一起。
|
|
66
|
+
- **标题是否滥用**:"小标题 + 一句话"的小项不要升成标题;应改成标签行、加粗引导句段落或普通段落。
|
|
67
|
+
- **编号是否统一**:全篇一套、不跳号、不跳级,尤其不要中文 + 阿拉伯混用(如「一、」配「1.1」)。
|
|
68
|
+
- **组件是否克制且保真**:高亮块 / 分栏 / 画板 / 颜色应符合体裁和用户要求;引用 / 图片 / 资源块必须保留。
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# 改写增强工作流
|
|
2
|
+
|
|
3
|
+
用户提供已有文档链接或 token,需要改写、润色、补充或重排版时,遵循本工作流。
|
|
4
|
+
|
|
5
|
+
## 核心方法论 — Code-Act Loop
|
|
6
|
+
通过自适应的 **Code-Act Loop** 驱动文档改写,而非固定模板式的工作流。每次任务都循环执行:
|
|
7
|
+
1. **Plan(规划)** — 根据用户目标和文档当前状态,评估下一步该做什么
|
|
8
|
+
2. **Execute(执行)** — 由主 Agent 自己运行 `lark-cli docs` 命令推进改写;仅画板渲染按需隔离到 SubAgent(见步骤二)
|
|
9
|
+
3. **Observe(观察)** — 检查命令输出,验证正确性,确认内容是否满足用户目标
|
|
10
|
+
4. **Iterate(迭代)** — 如需调整,回到 Plan 继续循环
|
|
11
|
+
|
|
12
|
+
## 核心原则:精准手术优于全量覆盖
|
|
13
|
+
1. **精准手术**:只改用户指定的 block,不改其他 block。
|
|
14
|
+
2. **全量覆盖**:如果用户明确要改整篇,才用 `overwrite` 命令。
|
|
15
|
+
3. **保真约束**:改写时原文里的 `<cite type="user">`(@人)、`<cite type="doc">`(@文档)、`<img>`、`<source>`、`<whiteboard>`、`<sheet>`、`<bitable>`、`<synced_reference>` 等行内组件和资源块一律原样保留(含所有 token / user-id / doc-id 属性),不许替换成纯文本姓名、链接或占位符。
|
|
16
|
+
|
|
17
|
+
## 工作流程
|
|
18
|
+
|
|
19
|
+
### 步骤一:分析与画板识别(串行)
|
|
20
|
+
|
|
21
|
+
1. **选择读取范围**(节省上下文的关键):
|
|
22
|
+
- 用户只改某一节 / 文档较大 → 先 `docs +fetch --scope outline --max-depth 2` 拿目录,再 `docs +fetch --scope section --start-block-id <目标标题id> --detail with-ids` 精读该节(`section` 会自动展开到下一个同级/更高级标题前,不用手动算结束 block id)
|
|
23
|
+
- 需要精确跨节区间 → `docs +fetch --scope range --start-block-id xxx --end-block-id yyy`(或 `--end-block-id -1` 读到末尾)
|
|
24
|
+
- 用户只给了模糊关键词 → `docs +fetch --scope keyword --keyword xxx --context-before 1 --context-after 1 --detail with-ids`
|
|
25
|
+
- 用户明确要改整篇 → `docs +fetch --detail with-ids`
|
|
26
|
+
- 详见 [`lark-doc-fetch.md`](../lark-doc-fetch.md) 中「选 `--scope`(读取范围)」小节
|
|
27
|
+
2. 系统性评估:用户想改什么、现有文档风格是什么、哪些内容需要保留、哪些问题影响理解
|
|
28
|
+
3. **画板识别**:逐章节扫描,判断是否有段落用图明显比文字更易懂(流程 / 架构 / 时间线 / 对比 / 占比等,见 `lark-doc-style.md` 的画板原则)。默认用文字,只有确需图示才记录需要插图的章节(block ID)、推荐画板类型、mermaid/SVG路径和源内容片段
|
|
29
|
+
4. 向用户简要说明改进计划(包含识别出的画板机会)
|
|
30
|
+
|
|
31
|
+
### 步骤二:定向改写(单 Agent 串行)
|
|
32
|
+
|
|
33
|
+
5. **优先处理步骤一识别出的画板候选段落**:读取并按 [lark-doc-whiteboard.md](../lark-doc-whiteboard.md) 选型和插入;正文本身不交给 SubAgent
|
|
34
|
+
6. 由主 Agent **顺序逐节**改写,**不按章节拆给并行 Agent**,避免上下文割裂、重复矛盾和全文级约束失效:
|
|
35
|
+
- 沿用或轻微调整已有文档风格,除非用户要求彻底重排版
|
|
36
|
+
- 优先通过重写段落、调整标题、补充小标题提升可读性;叙述内容保持成段,**不要默认改成列表**,只有确属并列要点 / 步骤才用列表(见 `lark-doc-style.md`)
|
|
37
|
+
- 富 block 是可选表达手段,不因固定比例而添加,取舍遵循 `lark-doc-style.md` 的写作原则;画板类需求只走第 5 步
|
|
38
|
+
|
|
39
|
+
### 步骤三:验证(串行)
|
|
40
|
+
|
|
41
|
+
7. 获取更新后文档局部内容,检查是否符合用户目标和已有风格
|
|
42
|
+
8. 检查是否满足用户目标并保留原有关键内容。再按 `lark-doc-style.md` 的「写完自检」快速核对,发现问题则定向修正
|
|
43
|
+
|
|
44
|
+
### 步骤四:专项校验(按需执行)
|
|
45
|
+
|
|
46
|
+
9. 仅当用户预期需要校验字数时,才读取并执行 [`lark-doc-word-stat.md`](../lark-doc-word-stat.md) 的「字数遵循校验」;否则跳过本项,不读取该 workflow。若执行了专项校验,向用户呈现结果
|
|
47
|
+
|
|
48
|
+
**上下文节省提示**:主 Agent 改某节时如需重新读取,优先用 `docs +fetch --scope section --start-block-id <章节标题id>`(自动覆盖整节),或 `--scope range --start-block-id xxx --end-block-id yyy` 精确区间,只拉当前章节,不要重复拉全文。
|