weaver-work-cli 0.1.1 → 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 +187 -76
- package/dist/cmd/setup/index.js +5 -5
- package/dist/cmd/skills/index.js +1 -1
- package/dist/core/hooks.js +7 -0
- package/dist/index.js +0 -0
- package/dist/internal/e10/auth/commands.js +160 -55
- package/dist/internal/e10/auth/crypto.js +7 -22
- package/dist/internal/e10/auth/session.js +1 -1
- package/dist/internal/e10/auth/xiaoe.js +268 -0
- package/dist/internal/e10/context.js +16 -2
- package/dist/internal/e10/index.js +1 -0
- package/dist/internal/e10/request-runtime.js +344 -0
- package/dist/internal/skills/install.js +48 -6
- package/dist/internal/skills/reader.js +27 -0
- package/dist/shortcuts/archive/continuation.js +70 -0
- package/dist/shortcuts/archive/errors.js +53 -0
- package/dist/shortcuts/archive/host.js +197 -0
- package/dist/shortcuts/archive/index.js +363 -0
- package/dist/shortcuts/archive/manifest.js +45 -0
- package/dist/shortcuts/archive/operations/archive-info.js +55 -0
- package/dist/shortcuts/archive/operations/borrow-car.js +146 -0
- package/dist/shortcuts/archive/operations/borrow-list.js +200 -0
- package/dist/shortcuts/archive/operations/confirm.js +46 -0
- package/dist/shortcuts/archive/operations/download.js +238 -0
- package/dist/shortcuts/archive/operations/flow-url.js +240 -0
- package/dist/shortcuts/archive/operations/fonds.js +95 -0
- package/dist/shortcuts/archive/operations/getPageUrl.js +137 -0
- package/dist/shortcuts/archive/operations/registry.js +43 -0
- package/dist/shortcuts/archive/operations/search.js +88 -0
- package/dist/shortcuts/archive/operations/shared.js +120 -0
- package/dist/shortcuts/archive/operations/types.js +23 -0
- package/dist/shortcuts/archive/operations/upload.js +182 -0
- package/dist/shortcuts/archive/operations.js +13 -0
- package/dist/shortcuts/archive/render/search-format.js +276 -0
- package/dist/shortcuts/archive/render/search-view.js +125 -0
- package/dist/shortcuts/asset/continuation.js +70 -0
- package/dist/shortcuts/asset/errors.js +67 -0
- package/dist/shortcuts/asset/host.js +438 -0
- package/dist/shortcuts/asset/index.js +255 -0
- package/dist/shortcuts/asset/manifest.js +471 -0
- package/dist/shortcuts/asset/operations/query.js +249 -0
- package/dist/shortcuts/asset/operations/registry.js +85 -0
- package/dist/shortcuts/asset/operations/shared.js +100 -0
- package/dist/shortcuts/asset/operations/type-cache.js +49 -0
- package/dist/shortcuts/asset/operations/types.js +1 -0
- package/dist/shortcuts/asset/operations/viewlink.js +117 -0
- package/dist/shortcuts/asset/operations/write.js +435 -0
- package/dist/shortcuts/asset/operations.js +9 -0
- package/dist/shortcuts/calendar/continuation.js +70 -0
- package/dist/shortcuts/calendar/errors.js +53 -0
- package/dist/shortcuts/calendar/host.js +148 -0
- package/dist/shortcuts/calendar/index.js +125 -0
- package/dist/shortcuts/calendar/manifest.js +26 -0
- package/dist/shortcuts/calendar/operations/read.js +259 -0
- package/dist/shortcuts/calendar/operations/registry.js +31 -0
- package/dist/shortcuts/calendar/operations/shared.js +132 -0
- package/dist/shortcuts/calendar/operations/types.js +25 -0
- package/dist/shortcuts/calendar/operations/write.js +439 -0
- package/dist/shortcuts/calendar/operations.js +8 -0
- package/dist/shortcuts/ehr/continuation.js +70 -0
- package/dist/shortcuts/ehr/errors.js +53 -0
- package/dist/shortcuts/ehr/host.js +213 -0
- package/dist/shortcuts/ehr/index.js +205 -0
- package/dist/shortcuts/ehr/manifest.js +47 -0
- package/dist/shortcuts/ehr/operations/attend-read.js +373 -0
- package/dist/shortcuts/ehr/operations/attend-write.js +514 -0
- package/dist/shortcuts/ehr/operations/hr-contact.js +363 -0
- package/dist/shortcuts/ehr/operations/hr-ds.js +298 -0
- package/dist/shortcuts/ehr/operations/hr-report.js +386 -0
- package/dist/shortcuts/ehr/operations/recruit-write.js +1629 -0
- package/dist/shortcuts/ehr/operations/recruit.js +803 -0
- package/dist/shortcuts/ehr/operations/registry.js +43 -0
- package/dist/shortcuts/ehr/operations/salary.js +319 -0
- package/dist/shortcuts/ehr/operations/shared.js +246 -0
- package/dist/shortcuts/ehr/operations/types.js +25 -0
- package/dist/shortcuts/ehr/operations.js +25 -0
- package/dist/shortcuts/esb/continuation.js +70 -0
- package/dist/shortcuts/esb/errors.js +65 -0
- package/dist/shortcuts/esb/host.js +187 -0
- package/dist/shortcuts/esb/index.js +112 -0
- package/dist/shortcuts/esb/manifest.js +91 -0
- package/dist/shortcuts/esb/operations/input-format.js +31 -0
- package/dist/shortcuts/esb/operations/registry.js +48 -0
- package/dist/shortcuts/esb/operations/shared.js +152 -0
- package/dist/shortcuts/esb/operations/trigger.js +76 -0
- package/dist/shortcuts/esb/operations/types.js +21 -0
- package/dist/shortcuts/esb/operations.js +15 -0
- package/dist/shortcuts/fna/continuation.js +70 -0
- package/dist/shortcuts/fna/errors.js +59 -0
- package/dist/shortcuts/fna/host.js +146 -0
- package/dist/shortcuts/fna/index.js +111 -0
- package/dist/shortcuts/fna/manifest.js +41 -0
- package/dist/shortcuts/fna/operations/budget.js +124 -0
- package/dist/shortcuts/fna/operations/expense-center.js +148 -0
- package/dist/shortcuts/fna/operations/invoice-writeoff.js +212 -0
- package/dist/shortcuts/fna/operations/loan.js +195 -0
- package/dist/shortcuts/fna/operations/registry.js +35 -0
- package/dist/shortcuts/fna/operations/shared.js +210 -0
- package/dist/shortcuts/fna/operations/types.js +25 -0
- package/dist/shortcuts/fna/operations.js +19 -0
- package/dist/shortcuts/hrm/errors.js +38 -0
- package/dist/shortcuts/hrm/host.js +156 -0
- package/dist/shortcuts/hrm/index.js +111 -0
- package/dist/shortcuts/hrm/manifest.js +32 -0
- package/dist/shortcuts/hrm/operations/employee.js +338 -0
- package/dist/shortcuts/hrm/operations/org.js +110 -0
- package/dist/shortcuts/hrm/operations/position.js +176 -0
- package/dist/shortcuts/hrm/operations/registry.js +33 -0
- package/dist/shortcuts/hrm/operations/shared.js +143 -0
- package/dist/shortcuts/hrm/operations/types.js +23 -0
- package/dist/shortcuts/hrm/operations.js +19 -0
- package/dist/shortcuts/index.js +20 -0
- package/dist/shortcuts/invoice/host.js +99 -94
- package/dist/shortcuts/invoice/index.js +65 -61
- package/dist/shortcuts/invoice/manifest.js +222 -14
- package/dist/shortcuts/invoice/operations/browse-field.js +17 -0
- package/dist/shortcuts/invoice/operations/issuing.js +198 -0
- package/dist/shortcuts/invoice/operations/ocr-preview.js +6 -3
- package/dist/shortcuts/invoice/operations/registry.js +17 -0
- package/dist/shortcuts/invoice/operations/reim.js +401 -0
- package/dist/shortcuts/invoice/operations/shared.js +271 -6
- package/dist/shortcuts/invoice/operations/validate-preview.js +1 -1
- package/dist/shortcuts/jiuchuanhui/cache.js +441 -0
- package/dist/shortcuts/jiuchuanhui/continuation.js +70 -0
- package/dist/shortcuts/jiuchuanhui/errors.js +59 -0
- package/dist/shortcuts/jiuchuanhui/host.js +159 -0
- package/dist/shortcuts/jiuchuanhui/index.js +109 -0
- package/dist/shortcuts/jiuchuanhui/manifest.js +469 -0
- package/dist/shortcuts/jiuchuanhui/operations/datajson.js +214 -0
- package/dist/shortcuts/jiuchuanhui/operations/esb.js +157 -0
- package/dist/shortcuts/jiuchuanhui/operations/generic.js +146 -0
- package/dist/shortcuts/jiuchuanhui/operations/registry.js +133 -0
- package/dist/shortcuts/jiuchuanhui/operations/shared.js +158 -0
- package/dist/shortcuts/jiuchuanhui/operations/types.js +1 -0
- package/dist/shortcuts/jiuchuanhui/operations.js +8 -0
- package/dist/shortcuts/mail/continuation.js +70 -0
- package/dist/shortcuts/mail/errors.js +53 -0
- package/dist/shortcuts/mail/host.js +182 -0
- package/dist/shortcuts/mail/index.js +519 -0
- package/dist/shortcuts/mail/manifest.js +38 -0
- package/dist/shortcuts/mail/operations/mail-blacklist.js +79 -0
- package/dist/shortcuts/mail/operations/mail-contacts.js +195 -0
- package/dist/shortcuts/mail/operations/mail-manage.js +335 -0
- package/dist/shortcuts/mail/operations/mail-read.js +508 -0
- package/dist/shortcuts/mail/operations/mail-send.js +474 -0
- package/dist/shortcuts/mail/operations/mail-sign.js +203 -0
- package/dist/shortcuts/mail/operations/mail-template.js +170 -0
- package/dist/shortcuts/mail/operations/registry.js +41 -0
- package/dist/shortcuts/mail/operations/shared.js +64 -0
- package/dist/shortcuts/mail/operations/types.js +27 -0
- package/dist/shortcuts/mail/operations.js +19 -0
- package/dist/shortcuts/plan/continuation.js +70 -0
- package/dist/shortcuts/plan/errors.js +70 -0
- package/dist/shortcuts/plan/host.js +180 -0
- package/dist/shortcuts/plan/index.js +150 -0
- package/dist/shortcuts/plan/manifest.js +53 -0
- package/dist/shortcuts/plan/operations/link.js +256 -0
- package/dist/shortcuts/plan/operations/read.js +259 -0
- package/dist/shortcuts/plan/operations/registry.js +33 -0
- package/dist/shortcuts/plan/operations/shared.js +246 -0
- package/dist/shortcuts/plan/operations/types.js +49 -0
- package/dist/shortcuts/plan/operations/version.js +49 -0
- package/dist/shortcuts/plan/operations/write.js +710 -0
- package/dist/shortcuts/plan/operations.js +8 -0
- package/docs/SKILL.md +11 -7
- package/docs/_catalog.md +23 -5
- package/docs/agent-invoice.md +31 -10
- package/docs/agent-skill-install.md +211 -0
- package/docs/calendar.md +87 -0
- package/docs/e10-auth.md +28 -9
- package/docs/ehr.md +186 -0
- package/docs/esb.md +64 -0
- package/docs/fna.md +72 -0
- package/docs/hrm.md +89 -0
- package/docs/invoice.md +66 -20
- package/docs/jiuchuanhui.md +131 -0
- package/docs/operation-manual.md +443 -0
- package/docs/plan.md +82 -0
- package/docs/wenshuding.md +129 -0
- package/docs/ziguanjia.md +89 -0
- package/package.json +4 -4
- package/scripts/package-skill.mjs +127 -34
- package/scripts/postbuild.mjs +13 -0
- package/skill-template/business-info.json +13 -2
- package/skill-template/domains/calendar.md +15 -0
- package/skill-template/domains/esb.md +13 -0
- package/skill-template/domains/hrm.md +16 -0
- package/skill-template/domains/jiuchuanhui.md +23 -0
- package/skill-template/domains/jucailin.md +22 -0
- package/skill-template/domains/mail.md +21 -0
- package/skill-template/domains/plan.md +17 -0
- package/skill-template/domains/qiyecheng.md +17 -0
- package/skill-template/domains/shared.md +9 -3
- package/skill-template/domains/skill-maker.md +10 -0
- package/skill-template/domains/wenshuding.md +22 -0
- package/skill-template/domains/{invoice.md → yepiaotong.md} +4 -0
- package/skill-template/domains/ziguanjia.md +21 -0
- package/skill-template/master-skill-template.md +12 -6
- package/skill-template/skill-template.md +40 -9
- package/skills/weaver-e10-calendar/SKILL.md +101 -0
- package/skills/weaver-e10-calendar/product.json +8 -0
- package/skills/weaver-e10-calendar/references/calendar-app-check.md +65 -0
- package/skills/weaver-e10-calendar/references/calendar-dict.md +55 -0
- package/skills/weaver-e10-calendar/references/calendar-query.md +70 -0
- package/skills/weaver-e10-calendar/references/calendar-write.md +97 -0
- package/skills/weaver-e10-calendar/references/source-manifest.json +54 -0
- package/skills/weaver-e10-esb/SKILL.md +102 -0
- package/skills/weaver-e10-esb/product.json +8 -0
- package/skills/weaver-e10-esb/references/input-format.md +52 -0
- package/skills/weaver-e10-esb/references/source-manifest.json +242 -0
- package/skills/weaver-e10-esb/references/trigger.md +99 -0
- package/skills/weaver-e10-hrm/SKILL.md +87 -0
- package/skills/weaver-e10-hrm/product.json +8 -0
- package/skills/weaver-e10-hrm/references/employee.md +109 -0
- package/skills/weaver-e10-hrm/references/org.md +95 -0
- package/skills/weaver-e10-hrm/references/position.md +95 -0
- package/skills/weaver-e10-hrm/references/source-manifest.json +121 -0
- package/skills/weaver-e10-jiuchuanhui/SKILL.md +174 -0
- package/skills/weaver-e10-jiuchuanhui/product.json +8 -0
- package/skills/weaver-e10-jiuchuanhui/references/cache.md +110 -0
- package/skills/weaver-e10-jiuchuanhui/references/clue.md +61 -0
- package/skills/weaver-e10-jiuchuanhui/references/contact-plan.md +56 -0
- package/skills/weaver-e10-jiuchuanhui/references/contact-records.md +48 -0
- package/skills/weaver-e10-jiuchuanhui/references/contact.md +56 -0
- package/skills/weaver-e10-jiuchuanhui/references/customer.md +69 -0
- package/skills/weaver-e10-jiuchuanhui/references/disabled-capabilities.md +24 -0
- package/skills/weaver-e10-jiuchuanhui/references/discovery-config.md +60 -0
- package/skills/weaver-e10-jiuchuanhui/references/general-helpers.md +59 -0
- package/skills/weaver-e10-jiuchuanhui/references/jiuchuanhui-entry.md +60 -0
- package/skills/weaver-e10-jiuchuanhui/references/sale.md +72 -0
- package/skills/weaver-e10-jiuchuanhui/references/source-manifest.json +2632 -0
- package/skills/weaver-e10-jucailin/SKILL.md +101 -0
- package/skills/weaver-e10-jucailin/product.json +8 -0
- package/skills/weaver-e10-jucailin/references/attend-read.md +73 -0
- package/skills/weaver-e10-jucailin/references/attend-write.md +82 -0
- package/skills/weaver-e10-jucailin/references/hr-contact.md +92 -0
- package/skills/weaver-e10-jucailin/references/hr-datasource.md +104 -0
- package/skills/weaver-e10-jucailin/references/hr-report.md +76 -0
- package/skills/weaver-e10-jucailin/references/recruit-read.md +76 -0
- package/skills/weaver-e10-jucailin/references/recruit-write.md +70 -0
- package/skills/weaver-e10-jucailin/references/safety-boundaries.md +35 -0
- package/skills/weaver-e10-jucailin/references/salary.md +110 -0
- package/skills/weaver-e10-jucailin/references/source-manifest.json +152 -0
- package/skills/weaver-e10-mail/SKILL.md +151 -0
- package/skills/weaver-e10-mail/product.json +8 -0
- package/skills/weaver-e10-mail/references/mail-agent-entry.md +47 -0
- package/skills/weaver-e10-mail/references/mail-attachment.md +30 -0
- package/skills/weaver-e10-mail/references/mail-blacklist.md +27 -0
- package/skills/weaver-e10-mail/references/mail-contacts.md +33 -0
- package/skills/weaver-e10-mail/references/mail-manage.md +44 -0
- package/skills/weaver-e10-mail/references/mail-read.md +76 -0
- package/skills/weaver-e10-mail/references/mail-send.md +43 -0
- package/skills/weaver-e10-mail/references/mail-sign.md +33 -0
- package/skills/weaver-e10-mail/references/mail-template.md +31 -0
- package/skills/weaver-e10-mail/references/safety-boundaries.md +32 -0
- package/skills/weaver-e10-plan/SKILL.md +139 -0
- package/skills/weaver-e10-plan/product.json +8 -0
- package/skills/weaver-e10-plan/references/plan-collect-and-compose.md +123 -0
- package/skills/weaver-e10-plan/references/plan-overview-and-routing.md +138 -0
- package/skills/weaver-e10-plan/references/plan-report-query.md +154 -0
- package/skills/weaver-e10-plan/references/plan-report-remind.md +104 -0
- package/skills/weaver-e10-plan/references/plan-report-write.md +162 -0
- package/skills/weaver-e10-plan/references/source-manifest.json +858 -0
- package/skills/weaver-e10-qiyecheng/SKILL.md +118 -0
- package/skills/weaver-e10-qiyecheng/product.json +8 -0
- package/skills/weaver-e10-qiyecheng/references/budget.md +65 -0
- package/skills/weaver-e10-qiyecheng/references/catalog.md +56 -0
- package/skills/weaver-e10-qiyecheng/references/expense-center.md +51 -0
- package/skills/weaver-e10-qiyecheng/references/invoice-writeoff.md +57 -0
- package/skills/weaver-e10-qiyecheng/references/loan-management.md +59 -0
- package/skills/weaver-e10-qiyecheng/references/source-manifest.json +698 -0
- package/skills/weaver-e10-shared/SKILL.md +86 -0
- package/skills/weaver-e10-shared/references/e10-auth-and-session.md +127 -0
- package/skills/weaver-e10-shared/references/json-output-contract.md +120 -0
- package/skills/weaver-e10-shared/references/weaver-e10-installation.md +110 -0
- package/skills/weaver-e10-skill-maker/SKILL.md +77 -0
- package/skills/weaver-e10-skill-maker/product.json +8 -0
- package/skills/weaver-e10-skill-maker/references/business-skill-generation.md +124 -0
- package/skills/weaver-e10-skill-maker/references/detector-validation.md +101 -0
- package/skills/weaver-e10-skill-maker/references/module-cli-generation.md +230 -0
- package/skills/weaver-e10-skill-maker/references/post-generation-install.md +105 -0
- package/skills/weaver-e10-skill-maker/references/source-update-detection.md +261 -0
- package/skills/weaver-e10-skill-maker/references/weaver-skill-style.md +141 -0
- package/skills/weaver-e10-wenshuding/SKILL.md +157 -0
- package/skills/weaver-e10-wenshuding/product.json +8 -0
- package/skills/weaver-e10-wenshuding/references/archive-agent-entry.md +63 -0
- package/skills/weaver-e10-wenshuding/references/archive-borrow-car.md +52 -0
- package/skills/weaver-e10-wenshuding/references/archive-borrow-list.md +52 -0
- package/skills/weaver-e10-wenshuding/references/archive-disabled-capabilities.md +22 -0
- package/skills/weaver-e10-wenshuding/references/archive-download.md +48 -0
- package/skills/weaver-e10-wenshuding/references/archive-flow.md +46 -0
- package/skills/weaver-e10-wenshuding/references/archive-fonds.md +34 -0
- package/skills/weaver-e10-wenshuding/references/archive-info.md +33 -0
- package/skills/weaver-e10-wenshuding/references/archive-search.md +52 -0
- package/skills/weaver-e10-wenshuding/references/archive-upload.md +41 -0
- package/skills/weaver-e10-wenshuding/references/source-manifest.json +517 -0
- package/skills/weaver-e10-yepiaotong/SKILL.md +184 -0
- package/skills/{weaver-work-cli-invoice → weaver-e10-yepiaotong}/references/invoice-add.md +1 -1
- package/skills/weaver-e10-yepiaotong/references/invoice-agent-entry.md +47 -0
- package/skills/weaver-e10-yepiaotong/references/invoice-browse-field-data.md +204 -0
- package/skills/{weaver-work-cli-invoice → weaver-e10-yepiaotong}/references/invoice-delete.md +1 -1
- package/skills/{weaver-work-cli-invoice → weaver-e10-yepiaotong}/references/invoice-detail.md +13 -5
- package/skills/weaver-e10-yepiaotong/references/invoice-disabled-capabilities.md +28 -0
- package/skills/weaver-e10-yepiaotong/references/invoice-download.md +31 -0
- package/skills/weaver-e10-yepiaotong/references/invoice-enterprise-list.md +45 -0
- package/skills/{weaver-work-cli-invoice → weaver-e10-yepiaotong}/references/invoice-file-upload.md +15 -4
- package/skills/weaver-e10-yepiaotong/references/invoice-import.md +45 -0
- package/skills/weaver-e10-yepiaotong/references/invoice-issuing-examples.md +120 -0
- package/skills/weaver-e10-yepiaotong/references/invoice-issuing-field-rules.md +161 -0
- package/skills/weaver-e10-yepiaotong/references/invoice-issuing.md +99 -0
- package/skills/{weaver-work-cli-invoice → weaver-e10-yepiaotong}/references/invoice-ocr-preview.md +14 -4
- package/skills/weaver-e10-yepiaotong/references/invoice-personal-list.md +58 -0
- package/skills/weaver-e10-yepiaotong/references/invoice-red.md +261 -0
- package/skills/weaver-e10-yepiaotong/references/invoice-reim.md +97 -0
- package/skills/{weaver-work-cli-invoice → weaver-e10-yepiaotong}/references/invoice-update.md +1 -1
- package/skills/{weaver-work-cli-invoice → weaver-e10-yepiaotong}/references/invoice-validation-preview.md +10 -3
- package/skills/weaver-e10-yepiaotong/references/reim-api-reference.md +1340 -0
- package/skills/weaver-e10-yepiaotong/references/reim-examples.md +845 -0
- package/skills/weaver-e10-yepiaotong/references/reim-expense-subject-rules.md +94 -0
- package/skills/weaver-e10-yepiaotong/references/reim-form-fill-rules.md +449 -0
- package/skills/weaver-e10-yepiaotong/references/reim-matching-rules.md +266 -0
- package/skills/weaver-e10-yepiaotong/references/reim-workflow.md +494 -0
- package/skills/weaver-e10-yepiaotong/references/source-manifest.json +1103 -0
- package/skills/weaver-e10-ziguanjia/SKILL.md +162 -0
- package/skills/weaver-e10-ziguanjia/product.json +8 -0
- package/skills/weaver-e10-ziguanjia/references/source-manifest.json +147 -0
- package/skills/weaver-e10-ziguanjia/references/ziguanjia-agent-entry.md +65 -0
- package/skills/weaver-e10-ziguanjia/references/ziguanjia-create.md +45 -0
- package/skills/weaver-e10-ziguanjia/references/ziguanjia-depre.md +48 -0
- package/skills/weaver-e10-ziguanjia/references/ziguanjia-disabled-capabilities.md +22 -0
- package/skills/weaver-e10-ziguanjia/references/ziguanjia-purch.md +57 -0
- package/skills/weaver-e10-ziguanjia/references/ziguanjia-query.md +62 -0
- package/skills/weaver-e10-ziguanjia/references/ziguanjia-repair.md +83 -0
- package/skills/weaver-e10-ziguanjia/references/ziguanjia-resolve.md +49 -0
- package/skills/weaver-e10-ziguanjia/references/ziguanjia-return.md +70 -0
- package/skills/weaver-e10-ziguanjia/references/ziguanjia-update.md +45 -0
- package/skills/weaver-e10-ziguanjia/references/ziguanjia-use.md +60 -0
- package/skills/weaver-e10-ziguanjia/references/ziguanjia-viewlink.md +81 -0
- package/skills/weaver-work-cli-invoice/SKILL.md +0 -103
- package/skills/weaver-work-cli-invoice/references/invoice-agent-entry.md +0 -38
- package/skills/weaver-work-cli-invoice/references/invoice-disabled-capabilities.md +0 -26
- package/skills/weaver-work-cli-invoice/references/invoice-download.md +0 -22
- package/skills/weaver-work-cli-invoice/references/invoice-enterprise-list.md +0 -35
- package/skills/weaver-work-cli-invoice/references/invoice-import.md +0 -28
- package/skills/weaver-work-cli-invoice/references/invoice-personal-list.md +0 -47
- package/skills/weaver-work-cli-shared/SKILL.md +0 -53
- package/skills/weaver-work-cli-shared/references/e10-auth-and-session.md +0 -83
- package/skills/weaver-work-cli-shared/references/json-output-contract.md +0 -61
- package/skills/weaver-work-cli-shared/references/weaver-work-cli-installation.md +0 -61
- /package/skills/{weaver-work-cli-shared → weaver-e10-shared}/references/high-risk-write.md +0 -0
- /package/skills/{weaver-work-cli-invoice → weaver-e10-yepiaotong}/product.json +0 -0
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: weaver-e10-jucailin
|
|
3
|
+
display_name: 泛微聚才林人事云
|
|
4
|
+
display_name_en: Weaver Jucailin HR Cloud
|
|
5
|
+
description: 泛微聚才林(人事档案、出勤管理、薪酬管理)的 E10 查询与出勤写操作能力,通过 weaver-work-cli ehr 命令执行。
|
|
6
|
+
description_zh: 泛微聚才林(人事档案、出勤管理、薪酬管理)的 E10 查询与出勤写操作能力,通过 weaver-work-cli ehr 命令执行。
|
|
7
|
+
description_en: Weaver Jucailin HR capabilities for E10, covering HR profile, attendance and salary queries plus attendance write operations, delivered through the weaver-work-cli ehr command.
|
|
8
|
+
version: 1.0.0
|
|
9
|
+
author: 泛微网络科技股份有限公司
|
|
10
|
+
agent_created: true
|
|
11
|
+
requires:
|
|
12
|
+
bins: ["weaver-work-cli"]
|
|
13
|
+
cliHelp: "weaver-work-cli ehr --help"
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
# 泛微聚才林人事云
|
|
17
|
+
|
|
18
|
+
**CRITICAL — 开始前 MUST 先用 Read 工具读取 [`../weaver-e10-shared/SKILL.md`](../weaver-e10-shared/SKILL.md),其中包含安装、E10 认证、JSON 输出和高风险写入规则。若不存在则必须先执行 `weaver-work-cli skills install shared --skills-dir <当前Agent的Skills目录>`,若 CLI 未安装则先执行 `npm install -g weaver-work-cli`,安装或读取失败时必须停止执行。**
|
|
19
|
+
|
|
20
|
+
本技能覆盖聚才林业务域:**人事档案(hr)**、**出勤管理(attend)**、**薪酬管理(salary)**、**招聘(recruit,读 + 写)**。招聘写操作走 prepare→apply 确认协议;撤销类写操作不实现,原因见 [`references/safety-boundaries.md`](references/safety-boundaries.md)。
|
|
21
|
+
|
|
22
|
+
## 命令入口
|
|
23
|
+
|
|
24
|
+
```text
|
|
25
|
+
weaver-work-cli ehr --help
|
|
26
|
+
weaver-work-cli ehr schema
|
|
27
|
+
weaver-work-cli --json ehr run <operation> --input -
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
`schema` 是可用能力的唯一事实来源。禁止把本技能或源文档里的接口路径当成可直接调用的地址,也禁止把未出现在 `schema` 中的能力当作可用 operation。
|
|
31
|
+
|
|
32
|
+
## 认证
|
|
33
|
+
|
|
34
|
+
所有请求复用 `weaver-work-cli` 托管的 E10 会话,业务输入只描述业务对象和意图。禁止读取、列出、打印或解析 `.e10-cli` 等认证目录和文件;认证诊断只能通过 `weaver-work-cli auth` 系列命令、`weaver-work-cli doctor --e10` 和业务命令返回的 JSON 错误完成。
|
|
35
|
+
|
|
36
|
+
## Reference 路由表
|
|
37
|
+
|
|
38
|
+
命中任一条件时,执行下一步前读取对应 reference。
|
|
39
|
+
|
|
40
|
+
| 触发条件 | Reference |
|
|
41
|
+
| --- | --- |
|
|
42
|
+
| 工资单、福利、调薪、社保台账、员工薪资明细 | [`references/salary.md`](references/salary.md) |
|
|
43
|
+
| 出勤统计、异常考勤、打卡记录、外勤轨迹、假期统计、申诉查询 | [`references/attend-read.md`](references/attend-read.md) |
|
|
44
|
+
| PC 端打卡、创建申诉、处理申诉、报表重算 | [`references/attend-write.md`](references/attend-write.md) |
|
|
45
|
+
| 通讯录、字段列表、浏览器选择器、生日查询、人员状态变更 | [`references/hr-contact.md`](references/hr-contact.md) |
|
|
46
|
+
| HR 数据源:历史时点名册、离职名册、历史曾在职、编制、流动分析、人员情况合计 | [`references/hr-datasource.md`](references/hr-datasource.md) |
|
|
47
|
+
| 部门/岗位/职务/职类人数、流失离职、占编人员、人员流动明细、属性合计 | [`references/hr-report.md`](references/hr-report.md) |
|
|
48
|
+
| 人才库搜索、招聘需求/职位/入职/录用列表、人才详情卡片 | [`references/recruit-read.md`](references/recruit-read.md) |
|
|
49
|
+
| 新建人才、安排面试、发送 Offer、办理入职、面试反馈编辑/催评(写,prepare→apply) | [`references/recruit-write.md`](references/recruit-write.md) |
|
|
50
|
+
| 招聘撤销类写操作、移动端打卡、能力边界与禁止项 | [`references/safety-boundaries.md`](references/safety-boundaries.md) |
|
|
51
|
+
|
|
52
|
+
## 跨子系统差异(必须先知道)
|
|
53
|
+
|
|
54
|
+
三个子系统的响应契约和分页结构不统一,已在 CLI 内归一化,但语义差异仍会影响结果解读:
|
|
55
|
+
|
|
56
|
+
- **响应成功判定**:出勤是 `success` 布尔,人事档案是 `code=200`,薪酬个人报表是 `status` 布尔。
|
|
57
|
+
- **分页**:出勤统计接口不返回 page 对象。其余表格接口的 `pageSize` **由服务端固定,传参无效**:通讯录为 100,出勤与报表类为 20。全量数据必须递增 `current` 翻页(已实测:通讯录 `current=1` 返回 100 条、`current=2` 返回 45 条,合计 145)。
|
|
58
|
+
- **数据行位置不统一(三种命名,已实测)**:
|
|
59
|
+
|
|
60
|
+
| 接口 | 数据行字段 |
|
|
61
|
+
|---|---|
|
|
62
|
+
| 通讯录 `hr.contact.search` | `data` |
|
|
63
|
+
| 出勤表格类(`abnormal`/`signrecord`/`orbit`/`worktime`/`leave`/`appeal`)+ hr 报表(`report.*`/`props.table`) | **`displayData`**(此时 `data` 是空数组) |
|
|
64
|
+
| 出勤报表 `attend.report.get` | **`datas`**(注意复数) |
|
|
65
|
+
|
|
66
|
+
取不到行数据时,按上表依次检查 `data` → `displayData` → `datas`。CLI 原样透传整个响应对象,不做重命名。
|
|
67
|
+
- **每页条数由服务端按接口独立配置,传参无效**(实测):通讯录 100,出勤表格类(`abnormal`/`signrecord`/`orbit`/`appeal`)20,出勤 `worktime`/`leave.report` 10,hr 报表 `report.*`/`props.table` 20。全量数据一律递增 `current` 翻页。
|
|
68
|
+
- **默认人员范围**:通讯录默认只查**在职**(`personnelStatus=["normal"]`);人员状态变更台账默认**包含离职人员**。这是最容易出错的一处差异。
|
|
69
|
+
- **日期格式**:出勤与人事档案用 `YYYY-MM-DD`;创建申诉的 `attendDay` 用 `yyyyMMdd`;薪酬月份用 `YYYY-MM`。
|
|
70
|
+
|
|
71
|
+
## 安全边界
|
|
72
|
+
|
|
73
|
+
- 姓名、工号等条件都是**模糊匹配**,多人命中时必须列出候选让用户选择,不得自动取第一条。浏览器选择器返回多条时,响应会带 `requiresDisambiguation=true`,此时必须让用户确认选哪一个。
|
|
74
|
+
- `est.emp.table` / `est.dc.emp.table` 的 `cfgId`、`id` 必须先从对应数据源记录取得,禁止编造或使用默认值。
|
|
75
|
+
- 社保台账查询(`salary.siaccount.query`)不分页且返回高度敏感数据,CLI 会强制要求提供月份范围或人员/组织 ID 之一。
|
|
76
|
+
- 涉及附件、图片、本地文件或文件内容解析时,必须先向用户说明文件内容可能进入大模型上下文,也可能被发送到业务系统或解析服务,获得**明确确认**后才继续。本技能当前不涉及附件接口,若后续新增同类能力必须沿用该确认要求。
|
|
77
|
+
- 招聘撤销类写操作(取消改期入职)与移动端考勤打卡属于禁用边界,见 [`references/safety-boundaries.md`](references/safety-boundaries.md)。招聘其余写操作必须走 prepare→apply 确认协议。
|
|
78
|
+
|
|
79
|
+
## 失败处理
|
|
80
|
+
|
|
81
|
+
- 遇到 `partial`、`write_uncertain`、登录失效、回查失败或网络中断,立即停止当前写流程,不自动重试写入,先做一次只读回查再决定。
|
|
82
|
+
- `code=302` 或认证类错误:引导用户执行 `weaver-work-cli auth login`,不要用其他方式排查。
|
|
83
|
+
- 业务失败看 stderr JSON 的 `error.type` / `error.subtype` / `error.message`,不要用退出码 `0` 判断成功。
|
|
84
|
+
|
|
85
|
+
## 平台兼容
|
|
86
|
+
|
|
87
|
+
命令示例必须同时兼容 Windows 与 macOS/Linux。涉及 JSON stdin 时:
|
|
88
|
+
|
|
89
|
+
Windows PowerShell:
|
|
90
|
+
|
|
91
|
+
```powershell
|
|
92
|
+
weaver-work-cli --json ehr run ehr.attend.summary.get --input-json '{"beginDate":"2026-03-01","endDate":"2026-03-31"}'
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
macOS/Linux(bash/zsh):
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
printf '%s\n' '{"beginDate":"2026-03-01","endDate":"2026-03-31"}' | weaver-work-cli --json ehr run ehr.attend.summary.get --input -
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
复杂 JSON 建议保存为 UTF-8 文件后按平台传给 `--input <file>`。
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# 出勤查询
|
|
2
|
+
|
|
3
|
+
## 何时使用
|
|
4
|
+
|
|
5
|
+
查询出勤统计、异常考勤、出勤报表、工作时长、原始打卡记录、外勤轨迹、假期统计,以及为申诉准备参数时使用。全部为只读操作。
|
|
6
|
+
|
|
7
|
+
## 输入要点
|
|
8
|
+
|
|
9
|
+
除 `ehr.attend.appeal.formid` 与 `ehr.attend.appeal.calendar` 外,所有列表接口都必须提供 `beginDate` 与 `endDate`,格式 `YYYY-MM-DD`。
|
|
10
|
+
|
|
11
|
+
| operation | 必填 | 说明 |
|
|
12
|
+
| --- | --- | --- |
|
|
13
|
+
| `ehr.attend.summary.get` | `beginDate`,`endDate` | 出勤统计、出勤汇总、请假、外勤、假期余额 |
|
|
14
|
+
| `ehr.attend.abnormal.list` | `beginDate`,`endDate` | 迟到、早退、缺卡、缺勤、失联明细 |
|
|
15
|
+
| `ehr.attend.report.get` | `beginDate`,`endDate` | 出勤汇总报表,返回 `recalcPermission` |
|
|
16
|
+
| `ehr.attend.worktime.list` | `beginDate`,`endDate` | 应出勤天数、实际工作时长、加班时长 |
|
|
17
|
+
| `ehr.attend.signrecord.list` | `beginDate`,`endDate` | 原始打卡记录,含打卡方式与地点 |
|
|
18
|
+
| `ehr.attend.orbit.list` | `beginDate`,`endDate` | 外勤轨迹记录 |
|
|
19
|
+
| `ehr.attend.leave.report` | `beginDate`,`endDate` | 假期使用量与剩余额度 |
|
|
20
|
+
| `ehr.attend.appeal.formid` | `userId` | 申诉表单 ID 与可申诉状态 |
|
|
21
|
+
| `ehr.attend.appeal.calendar` | `date` | 某天考勤日历详情,取 `periodId`/`timecardId` |
|
|
22
|
+
| `ehr.attend.appeal.list` | `beginDate`,`endDate` | 申诉记录列表,取申诉 ID |
|
|
23
|
+
| `ehr.attend.card.status` | 无 | 当前打卡按钮状态 |
|
|
24
|
+
|
|
25
|
+
`ehr.attend.abnormal.list` 的 `attendStatus` 取值:`SIGN_IN_LATE`、`SIGN_OUT_EARLY`、`SIGN_IN_ABSENTEEISM`、`SIGN_OUT_ABSENTEEISM`、`ABSENTEEISM`、`LOST`。
|
|
26
|
+
|
|
27
|
+
## 命令
|
|
28
|
+
|
|
29
|
+
Windows PowerShell:
|
|
30
|
+
|
|
31
|
+
```powershell
|
|
32
|
+
weaver-work-cli --json ehr run ehr.attend.summary.get --input-json '{"beginDate":"2026-03-01","endDate":"2026-03-31"}'
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
macOS/Linux(bash/zsh):
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
printf '%s\n' '{"beginDate":"2026-03-01","endDate":"2026-03-31"}' | weaver-work-cli --json ehr run ehr.attend.summary.get --input -
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
查询某天的考勤日历详情(为申诉取参数):
|
|
42
|
+
|
|
43
|
+
Windows PowerShell:
|
|
44
|
+
|
|
45
|
+
```powershell
|
|
46
|
+
weaver-work-cli --json ehr run ehr.attend.appeal.calendar --input-json '{"date":"2026-03-05"}'
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
macOS/Linux(bash/zsh):
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
printf '%s\n' '{"date":"2026-03-05"}' | weaver-work-cli --json ehr run ehr.attend.appeal.calendar --input -
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## 输出处理
|
|
56
|
+
|
|
57
|
+
- 分页信息在 `meta.page`,含 `pageNo`、`pageSize`、`totalCount`。
|
|
58
|
+
- `ehr.attend.summary.get` **不返回 page 对象**,它是对时间范围的聚合统计,不是分页列表。
|
|
59
|
+
- 出勤类响应的成功判定走 `success` 布尔;列表数据在 `data.data`。
|
|
60
|
+
|
|
61
|
+
## 注意
|
|
62
|
+
|
|
63
|
+
- 日期格式必须是 `YYYY-MM-DD`。`2026-3-1` 这类非补零格式会被 CLI 拒绝。
|
|
64
|
+
- `beginDate` 不得晚于 `endDate`,两者必须成对提供。
|
|
65
|
+
- 打卡记录与外勤轨迹包含位置信息,属于个人行踪数据。回复用户时只给结论和必要字段,不要原样粘贴完整轨迹 JSON。
|
|
66
|
+
- 涉及附件、图片或文件内容解析时,必须先说明文件内容可能进入大模型上下文,获得用户**明确确认**后才继续。
|
|
67
|
+
|
|
68
|
+
## 失败处理
|
|
69
|
+
|
|
70
|
+
- `date_range_required`:缺少 `beginDate` 或 `endDate`。
|
|
71
|
+
- `date_range_invalid`:日期格式非法,或开始日期晚于结束日期。
|
|
72
|
+
- `user_id_invalid`:`appeal.formid` 的 `userId` 不是人员 ID。
|
|
73
|
+
- 权限不足时返回业务失败,不要重试;先确认当前账号是否有对应报表的查看权限。
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# 出勤写操作
|
|
2
|
+
|
|
3
|
+
## 何时使用
|
|
4
|
+
|
|
5
|
+
PC 端考勤打卡、创建考勤申诉、处理申诉、触发出勤报表重算时使用。这四类操作会写入业务数据,必须使用 `prepare -> apply` 确认链。
|
|
6
|
+
|
|
7
|
+
可用 operation:
|
|
8
|
+
|
|
9
|
+
| 用途 | prepare | apply |
|
|
10
|
+
| --- | --- | --- |
|
|
11
|
+
| PC 端打卡 | `ehr.attend.card.check.prepare` | `ehr.attend.card.check.apply` |
|
|
12
|
+
| 创建申诉 | `ehr.attend.appeal.save.prepare` | `ehr.attend.appeal.save.apply` |
|
|
13
|
+
| 处理申诉 | `ehr.attend.appeal.result.prepare` | `ehr.attend.appeal.result.apply` |
|
|
14
|
+
| 报表重算 | `ehr.attend.report.recalc.prepare` | `ehr.attend.report.recalc.apply` |
|
|
15
|
+
|
|
16
|
+
## 输入要点
|
|
17
|
+
|
|
18
|
+
- **PC 端打卡**:`type` 必填,取值 `CHECKIN`(上班签到)、`CHECKOUT`(下班签退)、`LEAVE`(外出)、`RETURN`(返回)、`CHECKIN_AND_RETURN`、`CHECKOUT_AND_LEAVE`。
|
|
19
|
+
- **创建申诉**:`attendDay`(格式 `yyyyMMdd`,注意不是 `yyyy-MM-dd`)、`periodId`、`attendInfoKey`、`appeals` 必填。创建前必须先调 `ehr.attend.appeal.formid` 确认 `stillShowAppeal=true`;`prepare` 传入 `userId` 时会自动完成这层校验。
|
|
20
|
+
- **处理申诉**:`id` 与 `handleResult` 必填,`handleResult` 取值 `APPROVE`、`REJECT`、`INVALID`。`suggestion` 最长 500 字。
|
|
21
|
+
- **报表重算**:`beginDate`、`endDate` 必填;`onlyEmpIds` 不传表示重算全部人员。
|
|
22
|
+
|
|
23
|
+
## 命令
|
|
24
|
+
|
|
25
|
+
第一步,只预览,不写入:
|
|
26
|
+
|
|
27
|
+
Windows PowerShell:
|
|
28
|
+
|
|
29
|
+
```powershell
|
|
30
|
+
weaver-work-cli --json ehr run ehr.attend.card.check.prepare --input-json '{"type":"CHECKIN"}'
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
macOS/Linux(bash/zsh):
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
printf '%s\n' '{"type":"CHECKIN"}' | weaver-work-cli --json ehr run ehr.attend.card.check.prepare --input -
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
第二步,用户确认后才提交:
|
|
40
|
+
|
|
41
|
+
Windows PowerShell:
|
|
42
|
+
|
|
43
|
+
```powershell
|
|
44
|
+
weaver-work-cli --json ehr run ehr.attend.card.check.apply --input-json '{"type":"CHECKIN","continuation":"<prepare 返回的 token>","confirm":true}'
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
macOS/Linux(bash/zsh):
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
printf '%s\n' '{"type":"CHECKIN","continuation":"<prepare 返回的 token>","confirm":true}' | weaver-work-cli --json ehr run ehr.attend.card.check.apply --input -
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## 确认链要求
|
|
54
|
+
|
|
55
|
+
1. `prepare` 只预览和生成 continuation,**不会发送任何写请求**。
|
|
56
|
+
2. 向用户摘要目标、影响范围、风险和 continuation 绑定含义(continuation 与当前租户与登录账号绑定,10 分钟有效)。
|
|
57
|
+
3. 用户**明确确认**后才调用 `apply`,并传入 `confirm=true` 与 `prepare` 返回的 continuation。
|
|
58
|
+
4. `apply` 不可盲目重试。遇到不确定结果先停止,再做一次只读回查。
|
|
59
|
+
|
|
60
|
+
## 输出处理
|
|
61
|
+
|
|
62
|
+
- `prepare` 返回 `status=AWAITING_CONFIRMATION`,`preview` 是待确认内容,`continuation` 是提交凭证。
|
|
63
|
+
- `apply` 返回 `status=COMPLETE`。报表重算额外返回 `async=true`。
|
|
64
|
+
- 回查方式:打卡用 `ehr.attend.card.status` 或 `ehr.attend.signrecord.list`;申诉用 `ehr.attend.appeal.list`;重算用 `ehr.attend.report.get`。
|
|
65
|
+
|
|
66
|
+
## 注意
|
|
67
|
+
|
|
68
|
+
- **`card.status` 的语义**:`timecardStatus` 表示**下一次应打的卡**(`CHECKIN` 待打上班卡 / `CHECKOUT` 待打下班卡)。2026-09-04 实测:打卡成功后立即回查,该字段仍返回 `CHECKIN`(服务端存在缓存滞后),**不能用它判断是否已打卡成功**。判断是否成功请回到 `apply` 返回的 `message`(如「签到成功:2026-09-04 14:00:40」),或用 `ehr.attend.signrecord.list` 查当日记录(记录含 `addTime`、`isInRange`、`isInTime`、`sourceType`、`ip` 等字段)。
|
|
69
|
+
- **PC 端打卡的前提**:只有当考勤打卡方式开启了「允许 PC 电脑端打卡」时才能成功。若设置为只允许移动端打卡并开启了地图定位校验、WiFi 校验等,智能工具无法获取当前定位位置信息,无法完成打卡——此时必须明确告知用户改用 IM APP 移动端、移动端企业微信等完成打卡,**不要伪造定位、WiFi 或设备凭证重试**。
|
|
70
|
+
- 打卡凭证 `sign` 由 CLI 按当前登录态的 `empId`、`ETEAMSID`、`tenantKey` 在 `apply` 阶段实时构造,continuation 中不携带可复用的签名材料。
|
|
71
|
+
- 创建申诉会生成审批流程;处理申诉不可逆转。这两类操作必须让用户看清楚对象再确认。
|
|
72
|
+
- 报表重算是异步任务,提交成功不代表计算完成;同一时刻仅允许一个重算任务。
|
|
73
|
+
- 涉及附件、图片或文件内容解析时,必须先说明文件内容可能进入大模型上下文,获得用户**明确确认**后才继续。
|
|
74
|
+
|
|
75
|
+
## 失败处理
|
|
76
|
+
|
|
77
|
+
- `confirmation/required`:缺少 `confirm=true`,必须回到确认链第 2 步。
|
|
78
|
+
- `target_changed`:提交参数与 `prepare` 快照不一致,必须重新执行 `prepare`。
|
|
79
|
+
- `context_mismatch`:租户或登录账号在 prepare 之后发生变化,必须重新执行 `prepare`。
|
|
80
|
+
- `continuation_expired`:continuation 超过 10 分钟,重新执行 `prepare`。
|
|
81
|
+
- `appeal_not_allowed`:`stillShowAppeal=false`,当前不可申诉,不要继续提交。
|
|
82
|
+
- `partial/write_uncertain`:请求已发出但结果不确定。立即停止,禁止自动重试,先做只读回查再向用户报告。
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# 通讯录与人员查询
|
|
2
|
+
|
|
3
|
+
## 何时使用
|
|
4
|
+
|
|
5
|
+
查询通讯录在职人员、获取可展示字段、按名称解析部门/岗位等 ID、查询过生日人员、查询人员状态变更台账时使用。全部为只读操作。
|
|
6
|
+
|
|
7
|
+
## 输入要点
|
|
8
|
+
|
|
9
|
+
| operation | 必填 | 说明 |
|
|
10
|
+
| --- | --- | --- |
|
|
11
|
+
| `ehr.hr.contact.fields` | 无 | 通讯录可展示字段及 key,是 `contact.search` 的前置步骤 |
|
|
12
|
+
| `ehr.hr.contact.sa` | 无 | 高级搜索条件定义与可选项 |
|
|
13
|
+
| `ehr.hr.contact.search` | 无 | 分页查询在职人员 |
|
|
14
|
+
| `ehr.hr.contact.count` | 无 | 只统计数量,不返回列表 |
|
|
15
|
+
| `ehr.hr.browser.complete` | `type`,`searchValue` | 按名称查部门/分部/岗位/职级/职务/上级的 id |
|
|
16
|
+
| `ehr.hr.birthday.conditions` | 无 | 生日查询的条件定义 |
|
|
17
|
+
| `ehr.hr.birthday.list` | 无 | 过生日人员查询 |
|
|
18
|
+
| `ehr.hr.empchange.conditions` | 无 | 状态变更的筛选字段定义 |
|
|
19
|
+
| `ehr.hr.empchange.list` | 无 | 人员状态变更台账 |
|
|
20
|
+
|
|
21
|
+
`ehr.hr.browser.complete` 的 `type` 取值:`department`、`subcompany`、`position`、`resource`、`jobsetid`、`grade`。该值必须取自 `ehr.hr.contact.sa` 返回的字段定义,不要臆造。
|
|
22
|
+
|
|
23
|
+
`ehr.hr.empchange.list` 的 `changeType` 取值:`trial`、`hire`、`extend`、`redeploy`、`dismiss`、`retire`、`quit`、`rehire`、`custom`。
|
|
24
|
+
|
|
25
|
+
## 命令
|
|
26
|
+
|
|
27
|
+
先取字段,再查询:
|
|
28
|
+
|
|
29
|
+
Windows PowerShell:
|
|
30
|
+
|
|
31
|
+
```powershell
|
|
32
|
+
weaver-work-cli --json ehr run ehr.hr.contact.fields --input-json '{}'
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
macOS/Linux(bash/zsh):
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
printf '%s\n' '{}' | weaver-work-cli --json ehr run ehr.hr.contact.fields --input -
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
按姓名查询在职人员:
|
|
42
|
+
|
|
43
|
+
Windows PowerShell:
|
|
44
|
+
|
|
45
|
+
```powershell
|
|
46
|
+
weaver-work-cli --json ehr run ehr.hr.contact.search --input-json '{"username":"张三"}'
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
macOS/Linux(bash/zsh):
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
printf '%s\n' '{"username":"张三"}' | weaver-work-cli --json ehr run ehr.hr.contact.search --input -
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
查询某人(含离职)的状态变更记录:
|
|
56
|
+
|
|
57
|
+
Windows PowerShell:
|
|
58
|
+
|
|
59
|
+
```powershell
|
|
60
|
+
weaver-work-cli --json ehr run ehr.hr.empchange.list --input-json '{"resourceId":123,"changeDateStart":"2026-01-01","changeDateEnd":"2026-03-31"}'
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
macOS/Linux(bash/zsh):
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
printf '%s\n' '{"resourceId":123,"changeDateStart":"2026-01-01","changeDateEnd":"2026-03-31"}' | weaver-work-cli --json ehr run ehr.hr.empchange.list --input -
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## 输出处理
|
|
70
|
+
|
|
71
|
+
- 分页信息在 `meta.page`。注意 `contact.search`、`birthday.list` 的 `pageSize` 被页面配置固定为 100,**全量数据必须递增 `current` 翻页**,改 `pageSize` 无效。
|
|
72
|
+
- `ehr.hr.browser.complete` 返回 `candidates`、`total` 和 `requiresDisambiguation`。当 `requiresDisambiguation=true` 时必须列出候选让用户选择。
|
|
73
|
+
- 人员状态变更的 `changeDateStart` 与 `changeDateEnd` 必须用两个独立字段传起止,传 `changeDate` 数组格式无效。
|
|
74
|
+
|
|
75
|
+
## 注意
|
|
76
|
+
|
|
77
|
+
- **默认人员范围相反**(2026-09-04 实测,差异很大):`contact.search` 默认只查**在职**,实测 `total=646`;传 `personnelStatus=["all"]` 后 `total=1392`。`contact.count` 同样(646 / 1392)。而 `empchange.list` 默认**包含离职人员**(`total=2843`)。查「某人是否已离职」要用 `empchange.list`,不要用 `contact.search` 反复试。
|
|
78
|
+
- 不要用 `["normal","6"]` 这类组合去查离职,实测无法覆盖离职人员;查离职请用 `empchange.list` 或 `contact.search` 传 `personnelStatus=["all"]` 再自行判断。
|
|
79
|
+
- **`containUnavailable` 实测无效**:`empchange.list` 传 `true`/`false`/不传,`total` 均为 2843,服务端忽略该字段(已确认字段被正确透传——同接口的 `changeType` 生效:`dismiss` 544 / `trial` 29 / `hire` 1065)。**不要依赖它过滤离职人员**。
|
|
80
|
+
- `empchange.list` 的每页条数是 **100**(不是其他接口的 20/10),`changeType` 各类型实测:默认 2843、dismiss 544、trial 29、hire 1065、日期区间 2124。
|
|
81
|
+
- 姓名、工号都是**模糊匹配**,多人命中时必须列出候选让用户确认,不得自动取第一条。查特定个人优先用 `resourceId`。
|
|
82
|
+
- `birthday.conditions` 与 `empchange.conditions` 只能通过 GET 调用,CLI 已固定为 GET,不要尝试改方法。
|
|
83
|
+
- 通讯录含个人联系方式等敏感信息,回复用户时只给必要字段,不要原样粘贴完整列表。
|
|
84
|
+
- 涉及附件、图片或文件内容解析时,必须先说明文件内容可能进入大模型上下文,获得用户**明确确认**后才继续。
|
|
85
|
+
|
|
86
|
+
## 失败处理
|
|
87
|
+
|
|
88
|
+
- `search_value_required`:`browser.complete` 缺少 `searchValue`。
|
|
89
|
+
- `enum_invalid`:`type`、`sex`、`changeType` 等取值不在允许集合内。
|
|
90
|
+
- `date_range_incomplete`:`empchange.list` 的起止日期只提供了一个。
|
|
91
|
+
- `date_range_invalid`:开始日期晚于结束日期。
|
|
92
|
+
- 认证类错误:引导用户执行 `weaver-work-cli auth login`。
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
# HR 数据源查询
|
|
2
|
+
|
|
3
|
+
## 何时使用
|
|
4
|
+
|
|
5
|
+
查询历史时点名册、离职名册、历史曾在职人员、组织编制、控编维度、人员流动分析、人员情况合计、基本状况分析图表时使用。
|
|
6
|
+
|
|
7
|
+
数据源是一组通过 `formId` 参数化的通用报表接口。四个接口共用同一套输入:
|
|
8
|
+
|
|
9
|
+
| operation | 说明 |
|
|
10
|
+
| --- | --- |
|
|
11
|
+
| `ehr.hr.ds.fields` | 取该数据源的字段结构,是构造查询的唯一依据 |
|
|
12
|
+
| `ehr.hr.ds.list` | 列表数据 |
|
|
13
|
+
| `ehr.hr.ds.count` | 数量统计,返回 `totalCount`/`totalPage`/`pageSize`/`tableId` |
|
|
14
|
+
| `ehr.hr.ds.chart` | 图表分布数据 |
|
|
15
|
+
|
|
16
|
+
## 使用流程
|
|
17
|
+
|
|
18
|
+
**必须先调 `ehr.hr.ds.fields`**,再构造查询。字段名和操作符都来自 fields 的返回,禁止凭文档名称臆造。
|
|
19
|
+
|
|
20
|
+
1. `ehr.hr.ds.fields` 传 `formId`,拿到字段列表与可用操作符。
|
|
21
|
+
2. 用 `conditions` 组装过滤条件,每个条件含 `field`(字段 name)、`value`、`compareType`。
|
|
22
|
+
3. 调用 `ds.list` / `ds.count` / `ds.chart`。
|
|
23
|
+
|
|
24
|
+
## 输入要点
|
|
25
|
+
|
|
26
|
+
- `formId` 必填。常量表在 `weaver-work-cli ehr schema` 的 `dataSourceIds` 中,其中历史时点是 `754217732232708651`,组织编制是 `754217732232708751`,控编维度是 `754217732232709056`,人员流动是 `754217732232708655`,人员情况合计是 `754217732232709010`。
|
|
27
|
+
- `compareType` 支持 `eq`、`in`、`like`、`gtAndEq`、`ltAndEq`、`between`。范围条件用 `between`,`value` 传逗号分隔的 `"起始值,结束值"`,例如 `"2026-01-01,2026-12-31"`。具体可用操作符以 `ehr.hr.ds.fields` 返回的 `conditionType` 为准。
|
|
28
|
+
- `permissionType` 控制人员范围,默认 `personnelStatus=["normal"]`(在职);传 `["all"]` 表示不限状态。
|
|
29
|
+
- **日期范围条件必须拆成 2 个条件**(2026-09-04 修正,此前传法错误):
|
|
30
|
+
|
|
31
|
+
```json
|
|
32
|
+
"conditions": [
|
|
33
|
+
{ "field": "dutyDate", "value": "2026-01-01", "compareType": "gte" },
|
|
34
|
+
{ "field": "dutyDate", "value": "2026-12-31", "compareType": "lte" }
|
|
35
|
+
]
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
引擎取前 2 个 `conditionValue` 作为起止日期。**用单个 `between` 传 "起,止" 会失败或退化为不过滤**(见下)。
|
|
39
|
+
|
|
40
|
+
- 各数据源必填条件与实测:
|
|
41
|
+
|
|
42
|
+
| 数据源 | formId | 必填字段 | 正确传法 | 实测 |
|
|
43
|
+
|---|---|---|---|---|
|
|
44
|
+
| 历史时点名册 | `754217732232708651` | `timePoint` | 单条件 `eq` | eq 2026-06-30 → 2535;eq 2025-01-01 → 0 |
|
|
45
|
+
| 历史曾在职名册 | `754217732232708653` | `dutyDate` | `gte`+`lte` 双条件,`yyyy-MM-dd` | 2026 全年 2535;**2026-06 单月 2534**(不同→过滤生效);2020 全年 0 |
|
|
46
|
+
| 人员流动分析 | `754217732232708655` | `dateRange` | `gte`+`lte` 双条件,`yyyy-MM-dd` | 2026 上半年 45 |
|
|
47
|
+
| 人员情况合计 | `754217732232709010` | `month` | `gte`+`lte` 双条件,值 `yyyy-MM` | 本租户无数据(count=0)|
|
|
48
|
+
| 离职名册 | `754217732232708654` | `dismissDate`(可选) | `gte`+`lte` 双条件 | 2025~2026 → 9;不传也返回 9 |
|
|
49
|
+
|
|
50
|
+
- **不要用 `between`**:实测 `timePoint` 传 `between` + "起,止" 时,`_inner_params` 回显为 `paramTp: "2026-01-01,2026-12-31"`(单个字符串),返回 2535 与全量相同——**服务端并未按范围过滤,而是退化为不过滤**。`hw` 等数据源传 `between` 则直接报 500「日期范围过滤条件错误」。范围条件一律用 `gte`+`lte` 两个条件。
|
|
51
|
+
|
|
52
|
+
- 验证条件是否真生效:看返回记录的 `_inner_params`(如 `paramDutyDate: ["2026-01-01","2026-12-31"]`),它回显服务端实际收到的起止值。不要只看"没报错"就认为过滤成功。
|
|
53
|
+
|
|
54
|
+
## 命令
|
|
55
|
+
|
|
56
|
+
先取字段:
|
|
57
|
+
|
|
58
|
+
Windows PowerShell:
|
|
59
|
+
|
|
60
|
+
```powershell
|
|
61
|
+
weaver-work-cli --json ehr run ehr.hr.ds.fields --input-json '{"formId":"754217732232708651"}'
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
macOS/Linux(bash/zsh):
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
printf '%s\n' '{"formId":"754217732232708651"}' | weaver-work-cli --json ehr run ehr.hr.ds.fields --input -
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
查询某历史时点的名册:
|
|
71
|
+
|
|
72
|
+
Windows PowerShell:
|
|
73
|
+
|
|
74
|
+
```powershell
|
|
75
|
+
weaver-work-cli --json ehr run ehr.hr.ds.list --input-json '{"formId":"754217732232708651","conditions":[{"field":"timePoint","value":"2026-02-28","compareType":"eq"}],"pageNo":1,"pageSize":100}'
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
macOS/Linux(bash/zsh):
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
printf '%s\n' '{"formId":"754217732232708651","conditions":[{"field":"timePoint","value":"2026-02-28","compareType":"eq"}],"pageNo":1,"pageSize":100}' | weaver-work-cli --json ehr run ehr.hr.ds.list --input -
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
## 输出处理
|
|
85
|
+
|
|
86
|
+
- `ds.count` 返回的是 `totalCount` / `totalPage` / `pageSize` / `tableId`,**不是** `count` 字段。要人数就取 `totalCount`。
|
|
87
|
+
- `ds.list` 的分页信息在 `meta.page`,默认 `pageSize=100`、`pageNo=1`。
|
|
88
|
+
- `ds.fields` 返回的是**数组**,元素形如 `{ id, name, fields: [...] }`,每个字段的 `conditionType` 列出可用操作符,`usage=query` 标记该字段是查询条件。构造条件前先读它。已实测各数据源字段数:历史时点/离职名册/历史曾在职 107、控编维度 26、组织编制 17、人员流动 14、人员情况合计 12、基本状况分析(年龄/性别)2。
|
|
89
|
+
- `ds.chart` 用于基本状况分析(年龄、性别、工龄、学历、婚姻、职称、职级、状态、安全级别)的分布数据。
|
|
90
|
+
|
|
91
|
+
## 注意
|
|
92
|
+
|
|
93
|
+
- 数据源接口是 `application/x-www-form-urlencoded` 提交(`sourceType=LOGIC` + `queryDto` 为 JSON 字符串),不是 JSON body。`queryDto` 的构造由 CLI 托管,调用方只传结构化参数,不需要手写 JSON 字符串。
|
|
94
|
+
- 若结构化参数无法表达所需查询,可用 `rawQueryDto` 逃生舱直接传完整对象,但传入后会覆盖 `conditions`/`queryFields`/`permissionType` 的构造结果。优先用结构化参数。
|
|
95
|
+
- 名册类数据源可能返回大量人员数据,回复用户时给摘要和统计口径,不要原样粘贴完整名册。
|
|
96
|
+
- `ds.list` 已走 `/api/bs/hr/ai/ds/getListData`,不要使用旧的 `/api/bs/hr/ds/getListData`(已废弃)。
|
|
97
|
+
- 涉及附件、图片或文件内容解析时,必须先说明文件内容可能进入大模型上下文,获得用户**明确确认**后才继续。
|
|
98
|
+
|
|
99
|
+
## 失败处理
|
|
100
|
+
|
|
101
|
+
- `form_id_required`:缺少 `formId`。
|
|
102
|
+
- `enum_invalid`:`compareType` 不在允许集合内。
|
|
103
|
+
- `condition_invalid`:`conditions` 的元素缺少 `field` 或格式不对。
|
|
104
|
+
- 查询返回业务失败时,先核对字段 name 与 compareType 是否来自 `ds.fields`,不要反复重试。
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
# 人事报表查询
|
|
2
|
+
|
|
3
|
+
## 何时使用
|
|
4
|
+
|
|
5
|
+
查询部门/岗位/职务/职类人数、流失离职人数、占编人员明细、人员流动明细、人员属性合计时使用。全部为只读操作。
|
|
6
|
+
|
|
7
|
+
与[数据源查询](hr-datasource.md)的区别:这些报表有各自独立的接口路径和参数结构,不用 `formId` + `queryDto` 的形式。
|
|
8
|
+
|
|
9
|
+
## 输入要点
|
|
10
|
+
|
|
11
|
+
| operation | 必填 | 说明 |
|
|
12
|
+
| --- | --- | --- |
|
|
13
|
+
| `ehr.hr.report.dept.table` | 无 | 部门人数,按人数从大到小 |
|
|
14
|
+
| `ehr.hr.report.posi.table` | 无 | 岗位人数 |
|
|
15
|
+
| `ehr.hr.report.job.table` | 无 | 职务人数,需「职务人员统计」权限 |
|
|
16
|
+
| `ehr.hr.report.jobtype.table` | 无 | 职务类别人数 |
|
|
17
|
+
| `ehr.hr.report.change.dept.table` | `type` | 流失/离职/解聘/退休人数,`type` 取 `loss`/`dismiss`/`quit`/`retire` |
|
|
18
|
+
| `ehr.hr.est.emp.table` | `cfgId`,`dataType`,`month` | 组织编制占编人员明细 |
|
|
19
|
+
| `ehr.hr.est.dc.emp.table` | `id`,`cfgId`,`dataType`,`month` | 控编维度占编人员明细 |
|
|
20
|
+
| `ehr.hr.turn.emp.table` | `startDate`,`endDate`,`dataType` | 人员流动明细名单 |
|
|
21
|
+
| `ehr.hr.props.sa` | 无 | 人员属性合计的高级搜索条件定义 |
|
|
22
|
+
| `ehr.hr.props.table` | 无 | 人员属性合计报表 |
|
|
23
|
+
|
|
24
|
+
前四个报表共用人员范围过滤:`hiredate`、`location`、`personnelStatus`、`subcompany`、`department`。**名称筛选字段名各不相同**:部门用 `departmentName`,岗位用 `positionName`,职务用 `jobName`,职务类别用 `jobTypeName`。
|
|
25
|
+
|
|
26
|
+
`ehr.hr.report.change.dept.table` 只有 `changeDate`/`subcompany`/`department`,**没有** `personnelStatus`、`hiredate`、`location`。
|
|
27
|
+
|
|
28
|
+
## 命令
|
|
29
|
+
|
|
30
|
+
部门人数:
|
|
31
|
+
|
|
32
|
+
Windows PowerShell:
|
|
33
|
+
|
|
34
|
+
```powershell
|
|
35
|
+
weaver-work-cli --json ehr run ehr.hr.report.dept.table --input-json '{"departmentName":"研发"}'
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
macOS/Linux(bash/zsh):
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
printf '%s\n' '{"departmentName":"研发"}' | weaver-work-cli --json ehr run ehr.hr.report.dept.table --input -
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
人员流动明细:
|
|
45
|
+
|
|
46
|
+
Windows PowerShell:
|
|
47
|
+
|
|
48
|
+
```powershell
|
|
49
|
+
weaver-work-cli --json ehr run ehr.hr.turn.emp.table --input-json '{"startDate":"2026-01-01","endDate":"2026-03-31","dataType":"join_emp_count"}'
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
macOS/Linux(bash/zsh):
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
printf '%s\n' '{"startDate":"2026-01-01","endDate":"2026-03-31","dataType":"join_emp_count"}' | weaver-work-cli --json ehr run ehr.hr.turn.emp.table --input -
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## 输出处理
|
|
59
|
+
|
|
60
|
+
- 分页信息在 `meta.page`。`dept.table`、`posi.table`、`job.table`、`jobtype.table` 的 `pageSize` 被页面配置固定为 100,全量数据必须递增 `current` 翻页。
|
|
61
|
+
- `props.table` 的 `calcLevel` 缺省按 `department`;`total` 与 `department` 粒度相同,`subcompany` 按分部聚合。
|
|
62
|
+
|
|
63
|
+
## 注意
|
|
64
|
+
|
|
65
|
+
- **占编人员查询的 ID 必须先解析**:`est.emp.table` 的 `cfgId`、`est.dc.emp.table` 的 `id` 与 `cfgId`,都必须先从对应数据源(`estCalc=754217732232708751`、`estDcCalc=754217732232709056`)的记录中取得,禁止编造或使用默认值。
|
|
66
|
+
- `turn.emp.table` 的 `dataType` 决定名单口径:`begin_emp_count` 是**起始日前一天**在职人数,`end_emp_count` 是期末,`join_emp_count` 入职,`dismiss_emp_count` 离职,`org_in_emp_count` 调入,`org_out_emp_count` 调出。
|
|
67
|
+
- `job.table` 需要「职务人员统计」查看权限,无权限时返回业务失败,不要反复重试。
|
|
68
|
+
- 报表含组织与人员统计信息,回复用户时给结论与关键数字,不要原样粘贴完整表格 JSON。
|
|
69
|
+
- 涉及附件、图片或文件内容解析时,必须先说明文件内容可能进入大模型上下文,获得用户**明确确认**后才继续。
|
|
70
|
+
|
|
71
|
+
## 失败处理
|
|
72
|
+
|
|
73
|
+
- `est_dc_id_required` / `cfg_id_required`:占编查询缺少必需 ID,请先从数据源取记录。
|
|
74
|
+
- `date_range_invalid`:`turn.emp.table` 的 `startDate` 晚于 `endDate`。
|
|
75
|
+
- `enum_invalid`:`type`、`dataType`、`calcLevel` 取值不在允许集合内。
|
|
76
|
+
- 权限不足返回业务失败,先确认账号是否具备对应报表的查看权限。
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
# 招聘查询
|
|
2
|
+
|
|
3
|
+
## 何时使用
|
|
4
|
+
|
|
5
|
+
需要查询招聘模块数据时使用:人才库搜索、招聘需求/职位/入职/录用列表、人才详情卡片。全部为只读操作。招聘**写操作**(新建人才、安排面试、发 Offer、入职办理、面试反馈等)已单独提供,走 prepare→apply 确认协议,见 [`recruit-write.md`](recruit-write.md)。
|
|
6
|
+
|
|
7
|
+
## 输入要点
|
|
8
|
+
|
|
9
|
+
| operation | 必填 | 说明 |
|
|
10
|
+
| --- | --- | --- |
|
|
11
|
+
| `ehr.recruit.candidate.search` | 无 | 按姓名/手机号模糊搜索人才库;都不传时列出全部人才用于浏览 |
|
|
12
|
+
| `ehr.recruit.candidate.list` | `type` | 查询招聘业务列表,`type` 取 `demand`(招聘需求)/`position`(招聘职位)/`entry`(入职管理)/`offer`(录用管理)之一 |
|
|
13
|
+
| `ehr.recruit.candidate.card` | `talentId` | 人才详情卡片:基本信息 + 应聘进展 + 面试安排 + 沟通备注 |
|
|
14
|
+
| `ehr.recruit.context.resolve` | 无 | 返回当前环境的招聘模块运行时参数(appId/表单/列表),仅用于调试与兜底 |
|
|
15
|
+
|
|
16
|
+
运行时参数(appId、菜单 listId/cusMenuId、字段 ID 映射)由 CLI 自动五层解析并缓存(进程内 + 磁盘;缓存根 = `E10_SKILL_CACHE_DIR` 环境变量,未设置回退 CLI 数据目录 `WEAVER_WORK_CLI_HOME`(默认用户主目录下 `.weaver-work-cli`)的 `env-cache/recruit-ops/`),业务调用**不需要也无法手工传这些参数**。解析失败会报明确错误(如未安装招聘服务、菜单缺失),此时先运行 `ehr.recruit.context.resolve` 检查环境,不要重试猜测。
|
|
17
|
+
|
|
18
|
+
`candidate.search` 返回白名单字段:`talentId`/`name`/`mobile`/`channel`/`status`/`creator`/`createTime`。`candidate.list` 返回对应业务列表的展示字段(显示层直出,已剔除内部键)。
|
|
19
|
+
|
|
20
|
+
## 命令
|
|
21
|
+
|
|
22
|
+
搜索人才(姓名模糊匹配):
|
|
23
|
+
|
|
24
|
+
Windows PowerShell:
|
|
25
|
+
|
|
26
|
+
```powershell
|
|
27
|
+
weaver-work-cli --json ehr run ehr.recruit.candidate.search --input-json '{"name":"张三"}'
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
macOS/Linux(bash/zsh):
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
printf '%s\n' '{"name":"张三"}' | weaver-work-cli --json ehr run ehr.recruit.candidate.search --input -
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
查询招聘需求列表:
|
|
37
|
+
|
|
38
|
+
Windows PowerShell:
|
|
39
|
+
|
|
40
|
+
```powershell
|
|
41
|
+
weaver-work-cli --json ehr run ehr.recruit.candidate.list --input-json '{"type":"demand","current":1,"pageSize":10}'
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
macOS/Linux(bash/zsh):
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
printf '%s\n' '{"type":"demand","current":1,"pageSize":10}' | weaver-work-cli --json ehr run ehr.recruit.candidate.list --input -
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
查看人才详情卡片:
|
|
51
|
+
|
|
52
|
+
Windows PowerShell:
|
|
53
|
+
|
|
54
|
+
```powershell
|
|
55
|
+
weaver-work-cli --json ehr run ehr.recruit.candidate.card --input-json '{"talentId":"PLACEHOLDER_TALENT_ID"}'
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
macOS/Linux(bash/zsh):
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
printf '%s\n' '{"talentId":"PLACEHOLDER_TALENT_ID"}' | weaver-work-cli --json ehr run ehr.recruit.candidate.card --input -
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## 输出处理
|
|
65
|
+
|
|
66
|
+
- `candidate.search` 与 `candidate.list` 的分页信息在返回数据内(`total`/`current`/`pageSize`),不在 `meta.page`。
|
|
67
|
+
- 人才姓名、渠道(`channel`)、招聘状态(`status`)已是中文可读值,无需再反查。
|
|
68
|
+
- `candidate.card` 返回结构化四段:`baseInfo`(姓名/手机/渠道/状态)、`position`(职位/当前阶段/阶段历程 `stages`/招聘负责人)、`interviews`(每场面试含 `feedbacks` 反馈列表)、`remarks`(沟通备注)。`cardLink` 是 E10 网页端人才卡片链接(环境未配置详情页时为 `null`)。
|
|
69
|
+
- 无权限查看某人才详情时报 `recruit_rights_denied`,不要换参数重试。
|
|
70
|
+
|
|
71
|
+
## 注意
|
|
72
|
+
|
|
73
|
+
- 姓名、手机号都是**模糊匹配**,多人命中时必须列出候选让用户选择,不得自动取第一条。
|
|
74
|
+
- `candidate.card` 会完整读取候选人的面试反馈与沟通备注,属敏感个人信息;回复用户时给摘要与关键字段,不要原样粘贴完整 JSON。
|
|
75
|
+
- 手机号、身份证等敏感字段不要回显给与业务无关的对话。
|
|
76
|
+
- 需要变更数据(新建人才/安排面试/发 Offer/办理入职/面试反馈)时,使用 `recruit-write.md` 的写操作协议,不要用只读接口编造变更。
|