@lovrabet/rabetbase-cli 2.3.16-beta.7 → 2.4.1
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 +4 -10
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/init/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/react/create.d.ts +2 -0
- package/lib/commands/page/react/create.js +1 -0
- package/lib/commands/page/react/detail.d.ts +2 -0
- package/lib/commands/page/react/detail.js +1 -0
- package/lib/commands/page/react/list.d.ts +2 -0
- package/lib/commands/page/react/list.js +1 -0
- package/lib/commands/page/react/publish.d.ts +2 -0
- package/lib/commands/page/react/publish.js +1 -0
- package/lib/commands/page/react/shared.d.ts +78 -0
- package/lib/commands/page/react/shared.js +1 -0
- package/lib/commands/page/react/syntax.d.ts +18 -0
- package/lib/commands/page/react/syntax.js +1 -0
- package/lib/commands/page/react/template.d.ts +8 -0
- package/lib/commands/page/react/template.js +1 -0
- package/lib/commands/page/react/update.d.ts +2 -0
- package/lib/commands/page/react/update.js +1 -0
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.d.ts +1 -0
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/standard-page-status.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/permit/index.js +1 -1
- package/lib/commands/permit/page-get.js +1 -1
- package/lib/commands/permit/page-set.js +1 -1
- package/lib/commands/permit/role-apis-set.js +1 -1
- package/lib/commands/permit/role-menus-set.js +1 -1
- package/lib/commands/permit/role-menus.js +1 -1
- package/lib/commands/permit/shared.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/non-interactive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/create.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.d.ts +2 -0
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -0
- package/lib/commands/user-account/index.d.ts +2 -0
- package/lib/commands/user-account/index.js +1 -0
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.d.ts +117 -0
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.d.ts +3 -0
- package/lib/postinstall.js +1 -0
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.d.ts +37 -0
- package/lib/skills/builtin-skill.js +1 -0
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.d.ts +4 -2
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/copy-directory.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +9 -3
- package/scripts/postinstall.mjs +24 -0
- package/skills/rabetbase/SKILL.md +493 -0
- package/skills/rabetbase/guides/backend-function.md +835 -0
- package/skills/rabetbase/guides/best-practices.md +137 -0
- package/skills/rabetbase/guides/bff-creation-workflow.md +148 -0
- package/skills/rabetbase/guides/conflict-detection.md +119 -0
- package/skills/rabetbase/guides/data-api-guidelines.md +414 -0
- package/skills/rabetbase/guides/database-connection-workflow.md +169 -0
- package/skills/rabetbase/guides/frontend-development.md +179 -0
- package/skills/rabetbase/guides/legacy-application-blueprint-workflow.md +495 -0
- package/skills/rabetbase/guides/menu-anomaly-manual-cleanup.md +137 -0
- package/skills/rabetbase/guides/page-development-workflow.md +187 -0
- package/skills/rabetbase/guides/react-custom-page-workflow.md +184 -0
- package/skills/rabetbase/guides/role-permit-workflow.md +127 -0
- package/skills/rabetbase/guides/sql-creation-workflow.md +173 -0
- package/skills/rabetbase/guides/sql-mybatis.md +126 -0
- package/skills/rabetbase/guides/troubleshooting.md +67 -0
- package/skills/rabetbase/guides/typescript-sdk.md +227 -0
- package/skills/rabetbase/knowledge/page-schema/LrSmartCreate.md +367 -0
- package/skills/rabetbase/knowledge/page-schema/LrSmartDetail.md +153 -0
- package/skills/rabetbase/knowledge/page-schema/LrSmartEcharts.md +291 -0
- package/skills/rabetbase/knowledge/page-schema/LrSmartFilter.md +478 -0
- package/skills/rabetbase/knowledge/page-schema/LrSmartJsx.md +119 -0
- package/skills/rabetbase/knowledge/page-schema/LrSmartStatistic.md +223 -0
- package/skills/rabetbase/knowledge/page-schema/LrSmartTable.md +632 -0
- package/skills/rabetbase/knowledge/page-schema/YtPage.md +172 -0
- package/skills/rabetbase/knowledge/page-schema/dataset-relations.md +126 -0
- package/skills/rabetbase/knowledge/page-schema/external-resources-usage.md +232 -0
- package/skills/rabetbase/knowledge/page-schema/field-components.md +312 -0
- package/skills/rabetbase/knowledge/page-schema/syntax-reference.md +278 -0
- package/skills/rabetbase/knowledge/react-page/components.md +225 -0
- package/skills/rabetbase/knowledge/react-page/generation-standards.md +385 -0
- package/skills/rabetbase/references/rabetbase-api-list.md +58 -0
- package/skills/rabetbase/references/rabetbase-api-pull.md +82 -0
- package/skills/rabetbase/references/rabetbase-app-config.md +95 -0
- package/skills/rabetbase/references/rabetbase-app-list.md +79 -0
- package/skills/rabetbase/references/rabetbase-app-members-list.md +64 -0
- package/skills/rabetbase/references/rabetbase-auth-login.md +53 -0
- package/skills/rabetbase/references/rabetbase-auth-logout.md +29 -0
- package/skills/rabetbase/references/rabetbase-bff-create.md +59 -0
- package/skills/rabetbase/references/rabetbase-bff-delete.md +42 -0
- package/skills/rabetbase/references/rabetbase-bff-detail.md +38 -0
- package/skills/rabetbase/references/rabetbase-bff-list.md +61 -0
- package/skills/rabetbase/references/rabetbase-bff-pull.md +42 -0
- package/skills/rabetbase/references/rabetbase-bff-push.md +65 -0
- package/skills/rabetbase/references/rabetbase-bff-save.md +63 -0
- package/skills/rabetbase/references/rabetbase-bff-status.md +37 -0
- package/skills/rabetbase/references/rabetbase-cli-skill-install.md +42 -0
- package/skills/rabetbase/references/rabetbase-codegen-sdk.md +35 -0
- package/skills/rabetbase/references/rabetbase-codegen-sql.md +33 -0
- package/skills/rabetbase/references/rabetbase-config.md +296 -0
- package/skills/rabetbase/references/rabetbase-dataset-business-group-update.md +84 -0
- package/skills/rabetbase/references/rabetbase-dataset-delete.md +54 -0
- package/skills/rabetbase/references/rabetbase-dataset-detail.md +106 -0
- package/skills/rabetbase/references/rabetbase-dataset-extend-update.md +70 -0
- package/skills/rabetbase/references/rabetbase-dataset-field-update.md +117 -0
- package/skills/rabetbase/references/rabetbase-dataset-generate.md +206 -0
- package/skills/rabetbase/references/rabetbase-dataset-list.md +42 -0
- package/skills/rabetbase/references/rabetbase-dataset-operations.md +34 -0
- package/skills/rabetbase/references/rabetbase-dataset-relation-audit.md +63 -0
- package/skills/rabetbase/references/rabetbase-dataset-relation-mutations.md +141 -0
- package/skills/rabetbase/references/rabetbase-dataset-relations.md +71 -0
- package/skills/rabetbase/references/rabetbase-dataset-rename.md +107 -0
- package/skills/rabetbase/references/rabetbase-dataset-restore.md +54 -0
- package/skills/rabetbase/references/rabetbase-db-analyze.md +135 -0
- package/skills/rabetbase/references/rabetbase-db-create.md +54 -0
- package/skills/rabetbase/references/rabetbase-db-delete.md +26 -0
- package/skills/rabetbase/references/rabetbase-db-detail.md +27 -0
- package/skills/rabetbase/references/rabetbase-db-diff.md +57 -0
- package/skills/rabetbase/references/rabetbase-db-list.md +37 -0
- package/skills/rabetbase/references/rabetbase-db-tables.md +25 -0
- package/skills/rabetbase/references/rabetbase-db-test.md +29 -0
- package/skills/rabetbase/references/rabetbase-db-update.md +29 -0
- package/skills/rabetbase/references/rabetbase-doctor.md +62 -0
- package/skills/rabetbase/references/rabetbase-file.md +35 -0
- package/skills/rabetbase/references/rabetbase-init.md +70 -0
- package/skills/rabetbase/references/rabetbase-issue-report.md +132 -0
- package/skills/rabetbase/references/rabetbase-kb.md +62 -0
- package/skills/rabetbase/references/rabetbase-menu-asset-update.md +135 -0
- package/skills/rabetbase/references/rabetbase-menu-delete.md +54 -0
- package/skills/rabetbase/references/rabetbase-menu-external-link-create.md +63 -0
- package/skills/rabetbase/references/rabetbase-menu-external-link-update.md +74 -0
- package/skills/rabetbase/references/rabetbase-menu-group-create.md +33 -0
- package/skills/rabetbase/references/rabetbase-menu-group-update.md +38 -0
- package/skills/rabetbase/references/rabetbase-menu-list.md +144 -0
- package/skills/rabetbase/references/rabetbase-menu-move.md +54 -0
- package/skills/rabetbase/references/rabetbase-menu-regroup-start.md +45 -0
- package/skills/rabetbase/references/rabetbase-menu-rename.md +48 -0
- package/skills/rabetbase/references/rabetbase-menu-sync.md +60 -0
- package/skills/rabetbase/references/rabetbase-notification-config-list.md +80 -0
- package/skills/rabetbase/references/rabetbase-ocr.md +86 -0
- package/skills/rabetbase/references/rabetbase-page-generate-start.md +32 -0
- package/skills/rabetbase/references/rabetbase-page-generate-status.md +32 -0
- package/skills/rabetbase/references/rabetbase-page-pull.md +47 -0
- package/skills/rabetbase/references/rabetbase-page-push.md +45 -0
- package/skills/rabetbase/references/rabetbase-page-react-create.md +29 -0
- package/skills/rabetbase/references/rabetbase-page-react-detail.md +26 -0
- package/skills/rabetbase/references/rabetbase-page-react-list.md +23 -0
- package/skills/rabetbase/references/rabetbase-page-react-publish.md +23 -0
- package/skills/rabetbase/references/rabetbase-page-react-update.md +24 -0
- package/skills/rabetbase/references/rabetbase-page-relation-binding.md +72 -0
- package/skills/rabetbase/references/rabetbase-page-restore.md +45 -0
- package/skills/rabetbase/references/rabetbase-page-sync.md +36 -0
- package/skills/rabetbase/references/rabetbase-permit-page-set.md +69 -0
- package/skills/rabetbase/references/rabetbase-permit-role-apis-set.md +53 -0
- package/skills/rabetbase/references/rabetbase-permit-role-menus-set.md +57 -0
- package/skills/rabetbase/references/rabetbase-project-create.md +46 -0
- package/skills/rabetbase/references/rabetbase-project-upgrade.md +57 -0
- package/skills/rabetbase/references/rabetbase-role-list.md +68 -0
- package/skills/rabetbase/references/rabetbase-role-user-add.md +54 -0
- package/skills/rabetbase/references/rabetbase-role-user-resolve.md +27 -0
- package/skills/rabetbase/references/rabetbase-run.md +53 -0
- package/skills/rabetbase/references/rabetbase-schema.md +22 -0
- package/skills/rabetbase/references/rabetbase-sql-create.md +41 -0
- package/skills/rabetbase/references/rabetbase-sql-delete.md +37 -0
- package/skills/rabetbase/references/rabetbase-sql-detail.md +32 -0
- package/skills/rabetbase/references/rabetbase-sql-exec.md +34 -0
- package/skills/rabetbase/references/rabetbase-sql-list.md +54 -0
- package/skills/rabetbase/references/rabetbase-sql-pull.md +54 -0
- package/skills/rabetbase/references/rabetbase-sql-push.md +46 -0
- package/skills/rabetbase/references/rabetbase-sql-status.md +39 -0
- package/skills/rabetbase/references/rabetbase-sql-validate.md +73 -0
- package/skills/rabetbase/references/rabetbase-standard-page-status.md +31 -0
- package/skills/rabetbase/references/rabetbase-task-status.md +40 -0
- package/skills/rabetbase/references/rabetbase-tenant-members-list.md +69 -0
- package/skills/rabetbase/references/rabetbase-update.md +56 -0
- package/skills/rabetbase/references/rabetbase-user-account.md +45 -0
- package/skills/rabetbase/references/rabetbase-workspace.md +60 -0
- package/skills/rabetbase.manifest.json +137 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# sql detail
|
|
2
|
+
|
|
3
|
+
根据 SQL code 获取完整查询详情(含 SQL 内容和参数定义)。
|
|
4
|
+
|
|
5
|
+
## 命令
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
rabetbase sql detail --sqlcode 2305f915-dd48cd4c --format json
|
|
9
|
+
rabetbase sql detail --sqlcode 2305f915-dd48cd4c --verbose --format json
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
## 参数
|
|
13
|
+
|
|
14
|
+
| Flag | 类型 | 必填 | 默认 | 说明 |
|
|
15
|
+
|------|------|------|------|------|
|
|
16
|
+
| `--sqlcode <code>` | string | 是 | — | SQL code 标识符(格式:`xxxxxxxx-xxxxxxxx`) |
|
|
17
|
+
| `--verbose` | boolean | 否 | — | 返回完整原始对象 |
|
|
18
|
+
| `--format <fmt>` | string | 否 | `pretty` | 输出格式 |
|
|
19
|
+
|
|
20
|
+
## 输出
|
|
21
|
+
|
|
22
|
+
返回 SQL 查询的完整信息:sqlCode、sqlName、sqlContent(完整 SQL 文本)、参数列表、目标数据库。
|
|
23
|
+
|
|
24
|
+
## 提示
|
|
25
|
+
|
|
26
|
+
- 修改已有 SQL 前必须先用此命令拉取最新内容
|
|
27
|
+
- sqlContent 是完整的 SQL/MyBatis XML 文本
|
|
28
|
+
|
|
29
|
+
## 参考
|
|
30
|
+
|
|
31
|
+
- [SKILL.md](../SKILL.md)
|
|
32
|
+
- [sql-creation-workflow.md](../guides/sql-creation-workflow.md)
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# sql exec
|
|
2
|
+
|
|
3
|
+
执行已保存的 SQL 查询(通过 sqlCode 调用)。
|
|
4
|
+
|
|
5
|
+
## 命令
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
rabetbase sql exec --sqlcode 2305f915-dd48cd4c --format json
|
|
9
|
+
rabetbase sql exec --sqlcode 2305f915-dd48cd4c --params '{"keyword":"alice"}' --format json
|
|
10
|
+
rabetbase sql exec --sqlcode 2305f915-dd48cd4c --params '{"page":1,"pageSize":20}' --format json
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## 参数
|
|
14
|
+
|
|
15
|
+
| Flag | 类型 | 必填 | 默认 | 说明 |
|
|
16
|
+
|------|------|------|------|------|
|
|
17
|
+
| `--sqlcode <code>` | string | 是 | — | SQL code 标识符(格式:`xxxxxxxx-xxxxxxxx`) |
|
|
18
|
+
| `--params <json>` | string | 否 | — | SQL 参数,JSON 格式 |
|
|
19
|
+
| `--format <fmt>` | string | 否 | `pretty` | 输出格式 |
|
|
20
|
+
|
|
21
|
+
## 输出
|
|
22
|
+
|
|
23
|
+
返回 SQL 执行结果,包含数据行和执行耗时。
|
|
24
|
+
|
|
25
|
+
## 提示
|
|
26
|
+
|
|
27
|
+
- `--params` 的 JSON key 必须匹配 SQL 中的 `#{param}` 占位符名称
|
|
28
|
+
- 可先用 `sql validate` 或 `sql detail` 查看 SQL 需要哪些参数
|
|
29
|
+
- 执行结果仅包含数据,不含分页元信息(分页由 SQL 本身控制)
|
|
30
|
+
|
|
31
|
+
## 参考
|
|
32
|
+
|
|
33
|
+
- [SKILL.md](../SKILL.md)
|
|
34
|
+
- [sql-creation-workflow.md](../guides/sql-creation-workflow.md)
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# sql list
|
|
2
|
+
|
|
3
|
+
列出当前 App 下的自定义 SQL 查询。
|
|
4
|
+
|
|
5
|
+
## 命令
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
rabetbase sql list --format json
|
|
9
|
+
rabetbase sql list --name getUserList --format json
|
|
10
|
+
rabetbase sql list --sqlcode 2305f915-dd48cd4c --format json
|
|
11
|
+
rabetbase sql list --page 2 --pagesize 20 --format json
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## 参数
|
|
15
|
+
|
|
16
|
+
| Flag | 类型 | 必填 | 默认 | 说明 |
|
|
17
|
+
|------|------|------|------|------|
|
|
18
|
+
| `--sqlcode <code>` | string | 否 | — | 按 SQL code 过滤(格式:`xxxxxxxx-xxxxxxxx`) |
|
|
19
|
+
| `--name <name>` | string | 否 | — | 按名称过滤 |
|
|
20
|
+
| `--page <n>` | number | 否 | `1` | 页码 |
|
|
21
|
+
| `--pagesize <n>` | number | 否 | `50` | 每页数量 |
|
|
22
|
+
| `--verbose` | boolean | 否 | — | 返回完整 SQL 对象(含 SQL 内容和参数) |
|
|
23
|
+
| `--format <fmt>` | string | 否 | `pretty` | 输出格式 |
|
|
24
|
+
|
|
25
|
+
## 多应用过滤
|
|
26
|
+
|
|
27
|
+
`sql list` 总是查询**当前已经决议到的单个应用**:
|
|
28
|
+
|
|
29
|
+
- 默认使用当前项目 `defaultApp`
|
|
30
|
+
- 传 `--app <name>` 时,切到指定本地应用名
|
|
31
|
+
- 传 `--appcode <code>` 时,直接使用指定 appcode
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
# 仅列出 order 应用的 SQL
|
|
35
|
+
rabetbase sql list --app order
|
|
36
|
+
|
|
37
|
+
# 指定 appcode
|
|
38
|
+
rabetbase sql list --appcode app-xxxxxxxx
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## 输出
|
|
42
|
+
|
|
43
|
+
默认返回精简列表(sqlCode, sqlName, description, db)。`--verbose` 返回完整对象含 SQL 内容。
|
|
44
|
+
|
|
45
|
+
## 提示
|
|
46
|
+
|
|
47
|
+
- `--name` 是服务端过滤,`--sqlcode` 也是服务端过滤
|
|
48
|
+
- 修改已有 SQL 前先用此命令找到 sqlCode
|
|
49
|
+
- SQL Code 格式为 `{8位hex}-{8位hex}`,如 `2305f915-dd48cd4c`
|
|
50
|
+
|
|
51
|
+
## 参考
|
|
52
|
+
|
|
53
|
+
- [SKILL.md](../SKILL.md)
|
|
54
|
+
- [sql-creation-workflow.md](../guides/sql-creation-workflow.md)
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# sql pull
|
|
2
|
+
|
|
3
|
+
将远端自定义 SQL 同步到本地 **`<项目根>/.rabetbase/sql/<appCode>/<dbName|db-<id>>/`**,并刷新 `.rabetbase/sql.lock.json`。
|
|
4
|
+
|
|
5
|
+
## 命令
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
rabetbase sql pull --format json
|
|
9
|
+
rabetbase sql pull --sqlcode <xxxxxxxx-xxxxxxxx> --format json
|
|
10
|
+
rabetbase sql pull --name <过滤名> --format json
|
|
11
|
+
rabetbase sql pull --dry-run --format json
|
|
12
|
+
rabetbase sql pull --force --format json
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## 参数
|
|
16
|
+
|
|
17
|
+
| Flag | 说明 |
|
|
18
|
+
|------|------|
|
|
19
|
+
| `--sqlcode` | 仅拉取指定 SQL(格式 `xxxxxxxx-xxxxxxxx`) |
|
|
20
|
+
| `--name` | 按展示名过滤(与 list API 一致) |
|
|
21
|
+
| `--force` | 覆盖与远端不一致的本地文件 |
|
|
22
|
+
| `--dry-run` | 预览目标路径与状态(不写文件) |
|
|
23
|
+
|
|
24
|
+
## 输出文件
|
|
25
|
+
|
|
26
|
+
每条 SQL 会写入:
|
|
27
|
+
|
|
28
|
+
```text
|
|
29
|
+
.rabetbase/sql/<appCode>/<dbName|db-<id>>/<sqlCode>_<sqlName>.sql|xml
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
文件头部会自动补齐:
|
|
33
|
+
|
|
34
|
+
- `-- @lovrabet.sqlCode`
|
|
35
|
+
- `-- @lovrabet.sqlName`
|
|
36
|
+
- `-- @lovrabet.dbId`
|
|
37
|
+
- `-- @lovrabet.dbName`
|
|
38
|
+
- `-- @lovrabet.mode`
|
|
39
|
+
- `-- @lovrabet.syncedAt`
|
|
40
|
+
- `-- @lovrabet.description`
|
|
41
|
+
|
|
42
|
+
正文为远端 `sqlContent`;同时会更新 `.rabetbase/sql.lock.json` 中的 `path / hash / remoteId / version / dbId / sqlName / mode`。
|
|
43
|
+
|
|
44
|
+
## 行为说明
|
|
45
|
+
|
|
46
|
+
- 本地文件与远端生成内容完全一致:计入 `skipped: unchanged`
|
|
47
|
+
- 本地存在且与远端不同、未加 `--force`:跳过并提示 `local differs from remote`
|
|
48
|
+
- `--force` 且存在需覆盖的本地文件时:交互模式下会先确认(非交互需显式 `--force`)
|
|
49
|
+
- 即使本地 `status` 为 `unchanged`,若远端后来被平台侧改动,`pull --dry-run` 仍可能提示冲突;这说明是“远端漂移”,不是 CLI 入口故障
|
|
50
|
+
|
|
51
|
+
## 参考
|
|
52
|
+
|
|
53
|
+
- [sql-creation-workflow.md](../guides/sql-creation-workflow.md)
|
|
54
|
+
- [SKILL.md](../SKILL.md)
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# sql push
|
|
2
|
+
|
|
3
|
+
将本地同步目录中的 SQL 文件上传到远端,并刷新 `.rabetbase/sql.lock.json`。
|
|
4
|
+
|
|
5
|
+
> **风险等级:high-risk-write** — 建议先 `--dry-run` 预览;正式执行需 `--yes` 或交互确认。
|
|
6
|
+
|
|
7
|
+
## 命令
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
rabetbase sql push --format json
|
|
11
|
+
rabetbase sql push --sqlcode 2305f915-dd48cd4c --dry-run --format json
|
|
12
|
+
rabetbase sql push --sqlcode 2305f915-dd48cd4c --yes --format json
|
|
13
|
+
rabetbase sql push --sqlcode 2305f915-dd48cd4c --force --yes --format json
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## 参数
|
|
17
|
+
|
|
18
|
+
| Flag | 类型 | 必填 | 默认 | 说明 |
|
|
19
|
+
|------|------|------|------|------|
|
|
20
|
+
| `--sqlcode <code>` | string | 否 | — | 仅推指定 SQL;不传则扫描当前应用同步目录下的全部 SQL |
|
|
21
|
+
| `--force` | boolean | 否 | — | 即使本地 hash 与 lock 一致也强制推送 |
|
|
22
|
+
| `--dry-run` | boolean | 否 | — | 仅预览会推哪些 SQL |
|
|
23
|
+
| `--yes` | boolean | 否 | — | 跳过高风险确认 |
|
|
24
|
+
| `--format <fmt>` | string | 否 | `compress` | 输出格式 |
|
|
25
|
+
|
|
26
|
+
## 行为说明
|
|
27
|
+
|
|
28
|
+
- 以 `.rabetbase/sql.lock.json` 为准,读取本地同步目录中的当前文件
|
|
29
|
+
- 上传前会自动剥离 `@lovrabet` 头注释,只把 SQL/XML 正文发到平台
|
|
30
|
+
- 若本地文件名中的 `sqlName` 变化,推送时会同步更新远端 `sqlName`
|
|
31
|
+
- 若本地文件被移动到新的数据库目录,推送时会按目录名重新解析目标 `dbId`
|
|
32
|
+
- 推送成功后会刷新 lock 中的 `hash / path / sqlName / dbId / version`
|
|
33
|
+
|
|
34
|
+
## 常见失败
|
|
35
|
+
|
|
36
|
+
- `missing remote version; run rabetbase sql pull to refresh version info first`
|
|
37
|
+
- 说明 lock 中缺失乐观锁版本号,先执行 `sql pull`
|
|
38
|
+
- `local SQL is not tracked by sql.lock.json`
|
|
39
|
+
- 说明这不是已同步资产;先执行 `sql create` 或 `sql pull`
|
|
40
|
+
- `Multiple local SQL files found for sqlCode ...`
|
|
41
|
+
- 说明同一 `sqlCode` 存在多个本地文件,先清理到只剩一份
|
|
42
|
+
|
|
43
|
+
## 参考
|
|
44
|
+
|
|
45
|
+
- [SKILL.md](../SKILL.md)
|
|
46
|
+
- [sql-creation-workflow.md](../guides/sql-creation-workflow.md)
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# sql status
|
|
2
|
+
|
|
3
|
+
检查本地 SQL 同步目录与 `.rabetbase/sql.lock.json` 的状态。
|
|
4
|
+
|
|
5
|
+
## 命令
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
rabetbase sql status --format json
|
|
9
|
+
rabetbase sql status --remote --format json
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
## 参数
|
|
13
|
+
|
|
14
|
+
| Flag | 类型 | 必填 | 默认 | 说明 |
|
|
15
|
+
|------|------|------|------|------|
|
|
16
|
+
| `--remote` | boolean | 否 | — | 额外检查远端存在但本地/lock 都没有的 SQL |
|
|
17
|
+
| `--format <fmt>` | string | 否 | `compress` | 输出格式 |
|
|
18
|
+
|
|
19
|
+
## 输出分类
|
|
20
|
+
|
|
21
|
+
| 字段 | 含义 |
|
|
22
|
+
|------|------|
|
|
23
|
+
| `added` | 本地同步目录中存在,但 `sql.lock.json` 尚未跟踪 |
|
|
24
|
+
| `modified` | 本地文件 hash、文件名(`sqlName`)、或相对路径与 lock 不一致 |
|
|
25
|
+
| `missing` | lock 中有条目,但本地文件缺失 |
|
|
26
|
+
| `unchanged` | 本地文件与 lock 一致 |
|
|
27
|
+
| `remoteOnly` | 仅在加 `--remote` 时返回:远端存在,但本地和 lock 都没有 |
|
|
28
|
+
|
|
29
|
+
## 提示
|
|
30
|
+
|
|
31
|
+
- 修改文件名会被视为 `sqlName` 变更;`sql push` 时会把新文件名回写远端
|
|
32
|
+
- 把文件移动到新的数据库目录,会在 `sql push` 时尝试按目录名重新绑定 `dbId`
|
|
33
|
+
- `status` 只看本地文件与 lock;若要核对远端是否漂移,可结合 `sql pull --dry-run` 或 `sql detail`
|
|
34
|
+
|
|
35
|
+
## 参考
|
|
36
|
+
|
|
37
|
+
- [SKILL.md](../SKILL.md)
|
|
38
|
+
- [sql-creation-workflow.md](../guides/sql-creation-workflow.md)
|
|
39
|
+
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# sql validate
|
|
2
|
+
|
|
3
|
+
校验普通 SQL 或 MyBatis XML 内容(类型检测、参数提取、危险语句检查),不实际保存。文件格式默认使用 `.sql`;只有内容实际采用 MyBatis XML 语法时才使用 `.xml`。
|
|
4
|
+
|
|
5
|
+
## 本地路径约定
|
|
6
|
+
|
|
7
|
+
从文件校验时,优先使用同步目录下的文件:
|
|
8
|
+
|
|
9
|
+
```text
|
|
10
|
+
.rabetbase/sql/<appCode>/<dbName|db-<id>>/<sqlCode>_<sqlName>.sql|xml
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
内联 `--sql` 不受此限。
|
|
14
|
+
|
|
15
|
+
## 命令
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
# 从文件校验
|
|
19
|
+
rabetbase sql validate --file .rabetbase/sql/app-xxxxxxxx/sample_db/2305f915-dd48cd4c_getUserList.sql --format json
|
|
20
|
+
|
|
21
|
+
# 仅在内容使用 MyBatis XML 语法时选择 .xml
|
|
22
|
+
rabetbase sql validate --file .rabetbase/sql/app-xxxxxxxx/sample_db/2305f915-dd48cd4c_getUserList.xml --format json
|
|
23
|
+
|
|
24
|
+
# 内联 SQL 校验
|
|
25
|
+
rabetbase sql validate --sql "SELECT * FROM users WHERE id = #{userId}" --format json
|
|
26
|
+
|
|
27
|
+
# 带 schema 交叉校验
|
|
28
|
+
rabetbase sql validate --file .rabetbase/sql/app-xxxxxxxx/sample_db/report.sql --schemas datasetCode1,datasetCode2 --format json
|
|
29
|
+
|
|
30
|
+
# 审计顶层 JOIN 的索引匹配
|
|
31
|
+
rabetbase sql validate --file .rabetbase/sql/app-xxxxxxxx/sample_db/report.sql --schemas datasetCode1,datasetCode2 --check-indexes --format json
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## 参数
|
|
35
|
+
|
|
36
|
+
| Flag | 类型 | 必填 | 默认 | 说明 |
|
|
37
|
+
|------|------|------|------|------|
|
|
38
|
+
| `--file <path>` | string | 与 sql 二选一 | — | 默认传 `.sql`;MyBatis XML 内容传 `.xml` |
|
|
39
|
+
| `--sql <content>` | string | 与 file 二选一 | — | 内联 SQL 或 MyBatis XML 内容 |
|
|
40
|
+
| `--schemas <codes>` | string | 否 | — | 逗号分隔的 Dataset code 列表,交叉校验表名 |
|
|
41
|
+
| `--check-indexes` | boolean | 否 | `false` | 使用 Dataset 索引元数据审计顶层 JOIN;必须同时传 `--schemas` |
|
|
42
|
+
| `--format <fmt>` | string | 否 | `compress` | 输出格式 |
|
|
43
|
+
|
|
44
|
+
## 输出
|
|
45
|
+
|
|
46
|
+
| 字段 | 说明 |
|
|
47
|
+
|------|------|
|
|
48
|
+
| `valid` | 是否通过校验 |
|
|
49
|
+
| `sqlType` | SQL 类型(SELECT / INSERT / UPDATE / DELETE / DDL / UNKNOWN) |
|
|
50
|
+
| `isSelectOnly` | 是否为纯读查询 |
|
|
51
|
+
| `isDangerous` | 是否包含危险操作 |
|
|
52
|
+
| `tables` | 引用的表名列表 |
|
|
53
|
+
| `parameters` | 提取的 `#{param}` / `#{param, jdbcType=...}` / `${param}` 参数名 |
|
|
54
|
+
| `schemaWarnings` | 表名/Dataset 不匹配的警告(仅 `--schemas` 时) |
|
|
55
|
+
| `joinAudit` | JOIN 索引审计结果(仅 `--check-indexes` 时);不会修改 `valid` |
|
|
56
|
+
|
|
57
|
+
## 提示
|
|
58
|
+
|
|
59
|
+
- SQL 保存前建议先用此命令独立校验
|
|
60
|
+
- 普通 SQL 保持 `.sql`;不要因为校验器支持 MyBatis XML 而改成 `.xml`
|
|
61
|
+
- MyBatis XML 会去除组装标签后做保守静态分析,不执行 OGNL、动态分支或集合展开
|
|
62
|
+
- 受 `<if>` / `<choose>` / `<foreach>` 影响的 JOIN 和无法展开的 `<include>` 返回无法判断,不报告确定的索引缺失或覆盖
|
|
63
|
+
- `--schemas` 可交叉检查 SQL 中引用的表是否在指定 dataset 中存在
|
|
64
|
+
- `--check-indexes` 只审计可安全识别的顶层 JOIN 等值条件,不支持时返回无法判断,不猜测缺索引
|
|
65
|
+
- 空索引元数据返回 `INDEX_METADATA_UNAVAILABLE`;静态审计不能替代数据库执行计划
|
|
66
|
+
- `JOIN_INDEX_MISSING` 仅表示非空索引元数据中没有相关字段;`JOIN_INDEX_NOT_USABLE` 表示相关字段不构成完整最左前缀
|
|
67
|
+
- `JOIN_PREDICATE_UNSUPPORTED` 表示 JOIN 方向、目标或谓词不能安全分析;发现这类 JOIN 时 `checked` 仍为 `true`
|
|
68
|
+
- `sql create` 与 `sql push` 的校验复用同一个 `validateSql()` 核心,不可跳过
|
|
69
|
+
|
|
70
|
+
## 参考
|
|
71
|
+
|
|
72
|
+
- [SKILL.md](../SKILL.md)
|
|
73
|
+
- [sql-creation-workflow.md](../guides/sql-creation-workflow.md)
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# page standard-page-status
|
|
2
|
+
|
|
3
|
+
查询某个数据集当前智能列表页(Smart List Page)事实快照。
|
|
4
|
+
|
|
5
|
+
## 命令
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
rabetbase page standard-page-status --datasetcode 097b7361b76c42bcb12b923fa5a08861 --format json
|
|
9
|
+
rabetbase page standard-page-status --alias order --format json
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
## 行为说明
|
|
13
|
+
|
|
14
|
+
- 该命令只返回**页面事实**:
|
|
15
|
+
- 智能列表页组
|
|
16
|
+
- 是否完整
|
|
17
|
+
- 残留页
|
|
18
|
+
- 菜单事实
|
|
19
|
+
- 它不返回异步任务的执行进度,也不负责表达 job 状态。
|
|
20
|
+
- 这是 `page generate-start` 的前置判定与终态回查依据,属于事实接口,不是任务状态接口。
|
|
21
|
+
|
|
22
|
+
## 适用场景
|
|
23
|
+
|
|
24
|
+
- 生成前判断是否允许继续 `generate-start`
|
|
25
|
+
- 生成完成后确认是否真的形成完整智能列表页组
|
|
26
|
+
- 排查为什么当前数据集被判定为 `blocked_*`
|
|
27
|
+
|
|
28
|
+
## 参考
|
|
29
|
+
|
|
30
|
+
- [rabetbase-page-generate-start.md](rabetbase-page-generate-start.md)
|
|
31
|
+
- [rabetbase-page-generate-status.md](rabetbase-page-generate-status.md)
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# task status
|
|
2
|
+
|
|
3
|
+
按 `taskId + appCode` 查询平台通用异步任务是否到达终态。该命令不限定业务任务类型。
|
|
4
|
+
|
|
5
|
+
> **风险等级:read** — 只查询任务,不取消、重启或重提业务请求。
|
|
6
|
+
|
|
7
|
+
## 命令
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
rabetbase task status --task-id <taskId> --format compress
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Flags
|
|
14
|
+
|
|
15
|
+
| Flag | 类型 | 必填 | 说明 |
|
|
16
|
+
|---|---|---|---|
|
|
17
|
+
| `--task-id <id>` | string | 是 | 异步接口返回的任务 ID |
|
|
18
|
+
| `--appcode <code>` | string | 否 | 任务归属应用;未传时使用当前应用 |
|
|
19
|
+
|
|
20
|
+
## 输出与决策
|
|
21
|
+
|
|
22
|
+
| status | `isTerminal` | 动作 |
|
|
23
|
+
|---|---:|---|
|
|
24
|
+
| `PENDING` | `false` | 等待后再查询同一 taskId |
|
|
25
|
+
| `PROCESSING` | `false` | 等待后再查询同一 taskId |
|
|
26
|
+
| `SUCCESS` | `true` | 任务成功;按业务命令的回读步骤验证最终事实 |
|
|
27
|
+
| `FAILED` | `true` | 任务失败;读取 `errorMessage`,不自动重提原业务请求 |
|
|
28
|
+
|
|
29
|
+
未知 status 返回 `knownStatus=false`,必须人工复核,不推断为成功、失败或终态。
|
|
30
|
+
|
|
31
|
+
## Agent 编排规则
|
|
32
|
+
|
|
33
|
+
- `PENDING / PROCESSING` 时执行响应中的 `data.query.command`,始终查询同一个 taskId。
|
|
34
|
+
- 只有 `SUCCESS` 才能按来源业务命令的回读步骤确认最终完成。
|
|
35
|
+
- `FAILED` 时报告 `errorMessage`,不得自动重提来源业务请求。
|
|
36
|
+
- 未知状态进入人工复核,不循环提交来源业务请求。
|
|
37
|
+
|
|
38
|
+
## 相关命令
|
|
39
|
+
|
|
40
|
+
- [menu regroup-start](rabetbase-menu-regroup-start.md)
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# rabetbase tenant members-list
|
|
2
|
+
|
|
3
|
+
按精确 `tenantCode` 列出当前登录账号所属租户的完整人员清单。只读,不要求 App Code。
|
|
4
|
+
|
|
5
|
+
## 命令
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
rabetbase tenant members-list \
|
|
9
|
+
--tenant-code tenant-example \
|
|
10
|
+
--format compress
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## 参数
|
|
14
|
+
|
|
15
|
+
| Flag | 必填 | 说明 |
|
|
16
|
+
|------|------|------|
|
|
17
|
+
| `--tenant-code <code>` | 是 | 精确租户编码;不支持名称猜测 |
|
|
18
|
+
| `--format <compress\|json\|pretty>` | 否 | Agent 优先使用 `compress` |
|
|
19
|
+
|
|
20
|
+
命令返回全量人员,不提供分页、关键字、状态或角色筛选。
|
|
21
|
+
|
|
22
|
+
## 安全边界
|
|
23
|
+
|
|
24
|
+
命令先查询当前账号所属的启用租户关系。只有 `tenantCode` 精确命中时,才继续读取租户人员;未命中会报错,且不请求成员详情。
|
|
25
|
+
|
|
26
|
+
输出不会包含手机、邮箱、头像、Cookie、Token 或 AccessKey。
|
|
27
|
+
|
|
28
|
+
## 结构化输出
|
|
29
|
+
|
|
30
|
+
```json
|
|
31
|
+
{
|
|
32
|
+
"ok": true,
|
|
33
|
+
"command": "rabetbase tenant members-list",
|
|
34
|
+
"risk": "read",
|
|
35
|
+
"data": {
|
|
36
|
+
"tenantCode": "tenant-example",
|
|
37
|
+
"items": [
|
|
38
|
+
{
|
|
39
|
+
"userId": 100,
|
|
40
|
+
"username": "alice",
|
|
41
|
+
"displayName": "Alice",
|
|
42
|
+
"role": "ADMIN",
|
|
43
|
+
"status": "ENABLE"
|
|
44
|
+
}
|
|
45
|
+
],
|
|
46
|
+
"totalCount": 1
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
- `role` 为 `ADMIN` 或 `MEMBER`。
|
|
52
|
+
- 返回服务端目录中的全部状态,包括 `ENABLE` 与 `DISABLE`。
|
|
53
|
+
- `username`、`displayName`、`status` 缺失时为 `null`;不会用 userId 伪造。
|
|
54
|
+
- 结果按 `userId` 升序,同一 userId 只保留一个人员条目。
|
|
55
|
+
|
|
56
|
+
## 失败路径
|
|
57
|
+
|
|
58
|
+
- 未登录:先执行 `rabetbase auth login`。
|
|
59
|
+
- 缺少 `--tenant-code`:补充精确租户编码。
|
|
60
|
+
- 租户不属于当前账号:核对编码或切换登录账号;不要尝试枚举其他租户。
|
|
61
|
+
- 租户不存在、网络异常或服务端错误:保留 CLI 结构化错误,不把错误解释为空列表。
|
|
62
|
+
|
|
63
|
+
合法空租户返回成功,`items: []` 且 `totalCount: 0`。
|
|
64
|
+
|
|
65
|
+
## 参考
|
|
66
|
+
|
|
67
|
+
- [应用人员列表](rabetbase-app-members-list.md)
|
|
68
|
+
- [角色查人](rabetbase-role-user-resolve.md)
|
|
69
|
+
- [SKILL.md](../SKILL.md)
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# update
|
|
2
|
+
|
|
3
|
+
从 npm 更新 rabetbase CLI,并让 CLI 与 Built-in Skill 一体升级。
|
|
4
|
+
|
|
5
|
+
## 命令策略
|
|
6
|
+
|
|
7
|
+
- 默认升级入口是 `rabetbase update`。
|
|
8
|
+
- 预览版本使用 `rabetbase update --beta`;精确版本使用 `rabetbase update --version <version>`。
|
|
9
|
+
- 内部发布或故障复现可使用 `npm install -g @lovrabet/rabetbase-cli@<version>`。
|
|
10
|
+
|
|
11
|
+
## 命令
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
rabetbase update
|
|
15
|
+
rabetbase update --beta
|
|
16
|
+
rabetbase update --version 2.1.8-beta.1
|
|
17
|
+
rabetbase update --help
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## 行为
|
|
21
|
+
|
|
22
|
+
1. 显示当前版本。
|
|
23
|
+
2. 默认解析 npm `latest`;`--beta` 解析 `beta`;`--version` 使用指定完整 semver。
|
|
24
|
+
3. 通过当前包管理器全局安装目标 npm 包。
|
|
25
|
+
4. 新 npm 包的 `postinstall` 调用最新版官方 Skills CLI,以包内本地路径安装同版本 Built-in Skill。
|
|
26
|
+
5. 安装目录由官方 Skills CLI 按已安装 Agent 决定,发起更新的进程验证实际生效路径和版本。
|
|
27
|
+
6. CLI 已是目标版本时,仍以当前 npm 包内文件检查并修复 Skill。
|
|
28
|
+
|
|
29
|
+
## Flags
|
|
30
|
+
|
|
31
|
+
| Flag | 说明 |
|
|
32
|
+
|------|------|
|
|
33
|
+
| `--beta` | 安装 npm `beta` dist-tag 指向的版本 |
|
|
34
|
+
| `--version <version>` | 安装指定完整 semver,如 `2.1.8` 或 `2.1.8-beta.1` |
|
|
35
|
+
|
|
36
|
+
`--beta` 与 `--version` 互斥。CLI 与 Skill 不提供拆分升级模式。
|
|
37
|
+
|
|
38
|
+
## 前置条件
|
|
39
|
+
|
|
40
|
+
- CLI 通过 npm 或 bun 全局安装。
|
|
41
|
+
- 能访问 npm registry,以安装 CLI 并获取最新版 `skills` 安装器;Skill 内容仍来自当前 Rabetbase npm 包,不访问外部 Skill 内容源。
|
|
42
|
+
|
|
43
|
+
## 修复
|
|
44
|
+
|
|
45
|
+
若 npm 包安装成功但 Skill 校验失败,执行:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
rabetbase cli-skill install
|
|
49
|
+
rabetbase doctor
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
如 update 命令本身失败,可精确安装 npm 包;其 `postinstall` 仍会自动安装同版本 Skill:
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
npm install -g @lovrabet/rabetbase-cli@latest
|
|
56
|
+
```
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# rabetbase user-account
|
|
2
|
+
|
|
3
|
+
绑定当前已登录的 Lovrabet 平台用户与钉钉沙箱用户账号。该能力只处理显式提供的钉钉沙箱用户 ID,不负责打开登录流程或自动获取 ID。
|
|
4
|
+
|
|
5
|
+
## 命令
|
|
6
|
+
|
|
7
|
+
先预览:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
rabetbase user-account dingding-sandbox-bind \
|
|
11
|
+
--ding-talk-user-id <id> \
|
|
12
|
+
--dry-run \
|
|
13
|
+
--format compress
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
确认 ID 后正式绑定:
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
rabetbase user-account dingding-sandbox-bind \
|
|
20
|
+
--ding-talk-user-id <id> \
|
|
21
|
+
--yes \
|
|
22
|
+
--format compress
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
该命令不需要 `appCode`,但必须使用当前有效的登录 Cookie。不要传入平台 `userId`、`providerId` 或应用编码。
|
|
26
|
+
|
|
27
|
+
## 输出确认
|
|
28
|
+
|
|
29
|
+
重点检查以下字段:
|
|
30
|
+
|
|
31
|
+
- `data.operation = "bind"`
|
|
32
|
+
- `data.selector.providerId = "dingding-sandbox"`
|
|
33
|
+
- `data.selector.dingTalkUserId` 与输入一致
|
|
34
|
+
- 正式执行成功时 `data.after.bound = true`
|
|
35
|
+
- `data.dryRun` 与本次执行模式一致
|
|
36
|
+
|
|
37
|
+
`before: null` 表示服务端当前没有提供旧绑定查询能力,不代表旧绑定不存在。只有接口明确返回 `data: true` 时,才可将正式绑定视为成功。
|
|
38
|
+
|
|
39
|
+
## 失败与恢复
|
|
40
|
+
|
|
41
|
+
- `--ding-talk-user-id` 缺失或只包含空白字符时,CLI 在发起请求前拒绝执行。
|
|
42
|
+
- 登录态无效时,先执行 `rabetbase auth login`,再重新确认目标钉钉用户 ID。
|
|
43
|
+
- 网络超时或响应丢失时,结果可能不确定,不得自动重试。
|
|
44
|
+
- 人工确认登录态和目标 ID 后,只能使用相同的 `--ding-talk-user-id` 显式重试,避免误绑到其他账号。
|
|
45
|
+
- 当前命令不提供绑定查询或解绑能力;需要确认既有绑定时,应通过平台现有查询渠道核实。
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# rabetbase workspace
|
|
2
|
+
|
|
3
|
+
配置当前工作环境使用哪些 Lovrabet 应用。它是面向工作空间的推荐入口,一切「改我的配置」的写操作都在这里。
|
|
4
|
+
|
|
5
|
+
> **边界**:`workspace` 负责所有「配置我的工作环境」的写操作——绑定目录默认应用(`init` / `use`),以及登记/移除应用清单(`add` / `remove`)。默认写当前项目 `.rabetbase.json`;`add` / `remove` 支持 `--global`(全局视作一个大工作空间);`init` / `use` 只写当前目录。纯事实查询「有哪些 app」用 [`app list`](rabetbase-app-list.md)。
|
|
6
|
+
|
|
7
|
+
**选型**:首次安装全局引导用 `rabetbase init`;当前目录还没绑定默认 app → `workspace init`(始终写 `defaultApp`);已有配置只再登记 profile → `workspace add`;切换默认 → `workspace use`。
|
|
8
|
+
|
|
9
|
+
## 命令
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
rabetbase workspace init --appcode <code> [--env daily|production]
|
|
13
|
+
rabetbase workspace init --app <name> --appcode <code>
|
|
14
|
+
rabetbase workspace use --app <name>
|
|
15
|
+
rabetbase workspace use --app <name> --appcode <code>
|
|
16
|
+
rabetbase workspace add <name> --appcode <code> [--global]
|
|
17
|
+
rabetbase workspace remove <name> [--global]
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## 参数
|
|
21
|
+
|
|
22
|
+
| Flag | 说明 |
|
|
23
|
+
|------|------|
|
|
24
|
+
| `--app <name>` | 工作空间里的应用名,如 `crm`、`order` |
|
|
25
|
+
| `--appcode <code>` | 应用 App Code;不知道本地应用名时可直接使用 |
|
|
26
|
+
| `--env <env>` | 写入该 app profile 的环境:`daily` / `production` |
|
|
27
|
+
| `--apiDir <dir>` | 写入该 app profile 的 API 目录 |
|
|
28
|
+
| `--defaultFormat <format>` | 写入该 app profile 的默认输出格式 |
|
|
29
|
+
| `--pageSize <n>` | 写入该 app profile 的分页大小 |
|
|
30
|
+
| `--riskLevel <level>` | 写入该 app profile 的风险等级 |
|
|
31
|
+
| `--locale <locale>` | 写入该 app profile 的地区设置 |
|
|
32
|
+
|
|
33
|
+
`add` / `remove` 用位置参数 `<name>` 指定应用名;`add` 必带 `--appcode <code>`,两者都支持 `--global`(写/删全局清单,全局视作一个大工作空间),其余 profile flags 与上表一致。
|
|
34
|
+
|
|
35
|
+
## 行为
|
|
36
|
+
|
|
37
|
+
- `workspace init --appcode app-xxx`:用 appcode 作为应用名,写入 `apps.app-xxx` 和 `defaultApp`。
|
|
38
|
+
- `workspace init --app crm --appcode app-xxx`:用业务名 `crm` 绑定 appcode,写入 `apps.crm` 和 `defaultApp`。
|
|
39
|
+
- `workspace use --app crm`:切换当前目录默认应用;如果 `crm` 只存在于全局配置,会复制非敏感 profile 字段到当前目录。
|
|
40
|
+
- `workspace use --app crm --appcode app-xxx`:直接在当前目录新增或更新 `crm`,并设为默认应用。
|
|
41
|
+
- `workspace add crm --appcode app-xxx`:登记应用 profile(默认写当前项目,`--global` 写全局);当前无 `defaultApp` 时首个自动设为默认。已存在则更新。
|
|
42
|
+
- `workspace remove crm`:移除本地应用 profile。默认按「项目优先、其次全局」定位要删的那一层,`--global` 强制删全局;若删的是当前 `defaultApp`,自动切到剩余的第一个;若该应用在项目与全局都有定义,只删单侧并在结果里提示另一侧仍存在。
|
|
43
|
+
|
|
44
|
+
`workspace init` / `workspace use` 不会从全局配置复制 `cookie` / `accessKey` 到项目文件。若当前项目文件里原本已有这些字段,更新应用时会保留它们。
|
|
45
|
+
|
|
46
|
+
## 输出
|
|
47
|
+
|
|
48
|
+
结构化输出会包含:
|
|
49
|
+
|
|
50
|
+
- `data.operation`:`workspace.init` 或 `workspace.use`
|
|
51
|
+
- `data.configPath`:实际写入的配置文件
|
|
52
|
+
- `data.app` / `data.appcode`
|
|
53
|
+
- `data.credentialsWritten`:固定表示本命令是否写入凭证
|
|
54
|
+
|
|
55
|
+
`add` / `remove` 返回单行 `message`(如 `Added app "crm" ...` / `Removed app "crm" ...`),移除时若涉及默认应用切换或另一侧仍有定义会在同一 `message` 里说明。
|
|
56
|
+
|
|
57
|
+
## 参考
|
|
58
|
+
|
|
59
|
+
- [rabetbase app list](rabetbase-app-list.md) — 查看本地或平台应用列表(只读事实)
|
|
60
|
+
- [`.rabetbase.json` 配置参考](rabetbase-config.md) — 配置文件结构
|