@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,27 @@
|
|
|
1
|
+
# db detail
|
|
2
|
+
|
|
3
|
+
按 **dblink id** 拉取单条连接的完整元数据(含分析相关字段)。密码在输出中脱敏。
|
|
4
|
+
|
|
5
|
+
## 何时用
|
|
6
|
+
|
|
7
|
+
- 已用 `db list` 拿到 `id`,需要比列表更全的字段
|
|
8
|
+
- 需要当前 **`latestAnalysisTraceId`** 查询最新分析状态;取消已知任务时仍使用正在跟踪的原 planId
|
|
9
|
+
|
|
10
|
+
## 命令
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
rabetbase db detail --id 10157 --format compress
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## 参数
|
|
17
|
+
|
|
18
|
+
| Flag | 类型 | 必填 | 说明 |
|
|
19
|
+
|------|------|------|------|
|
|
20
|
+
| `--id` | number | **是** | `db list` / 工作台连接列表上的 dblink id |
|
|
21
|
+
| `--appcode` | string | 否 | 覆盖当前 app |
|
|
22
|
+
| `--format` | string | 否 | 默认 **compress** |
|
|
23
|
+
|
|
24
|
+
## 参考
|
|
25
|
+
|
|
26
|
+
- [database-connection-workflow.md](../guides/database-connection-workflow.md)
|
|
27
|
+
- [SKILL.md](../SKILL.md)
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# db diff
|
|
2
|
+
|
|
3
|
+
分页查看**线上库相对上次分析**的 schema 差异(新增表、删除表、改字段等)。只读。
|
|
4
|
+
|
|
5
|
+
## 何时用
|
|
6
|
+
|
|
7
|
+
- 表结构变更后,决定是跑全量分析还是 `analyze-start --tables …` 增量
|
|
8
|
+
- 排查「平台数据集与真实库不一致」
|
|
9
|
+
|
|
10
|
+
## 命令
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
rabetbase db diff --id 10157 --format compress
|
|
14
|
+
rabetbase db diff --id 10157 --table order --page 1 --pagesize 20 --format compress
|
|
15
|
+
rabetbase db diff --id 10157 --all --changed-only --format compress
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## 参数
|
|
19
|
+
|
|
20
|
+
| Flag | 必填 | 说明 |
|
|
21
|
+
|------|------|------|
|
|
22
|
+
| `--id` | **是** | dblink id |
|
|
23
|
+
| `--table` | 否 | 表名模糊过滤 |
|
|
24
|
+
| `--page` / `--pagesize` | 否 | 默认 `1` / `20` |
|
|
25
|
+
| `--all` | 否 | 从第 1 页开始按 `pageSize=100` 自动聚合全部分页;优先级高于 `--page / --pagesize` |
|
|
26
|
+
| `--changed-only` | 否 | 只从 `tables / tableList` 排除 `ALREADY_ANALYZED`;保留 `DELETED_TABLE` |
|
|
27
|
+
|
|
28
|
+
## 机器可读摘要
|
|
29
|
+
|
|
30
|
+
| 字段 | 语义 |
|
|
31
|
+
|------|------|
|
|
32
|
+
| `summaryByType` | 本次查询范围内四种 `diffType` 的计数 |
|
|
33
|
+
| `toAnalyzeTables` | 仅包含 `NEW_TABLE` 与 `MODIFIED_TABLE` 的表名,可传给 `analyze-start --tables` |
|
|
34
|
+
| `deletedTables` | 仅包含 `DELETED_TABLE`,供人工确认,不自动分析或清理 |
|
|
35
|
+
| `modifiedFieldDiffs` | 修改表的新增、删除、变更字段摘要 |
|
|
36
|
+
|
|
37
|
+
未传 `--all` 时,上述字段只代表当前页;需要完整范围时使用 `--all`。派生字段基于过滤前的查询范围计算,因此使用 `--changed-only` 时,`summaryByType.ALREADY_ANALYZED` 仍可反映原始计数。
|
|
38
|
+
|
|
39
|
+
## `diffType` 语义(与 yuntoo-web-app 增量分析抽屉一致)
|
|
40
|
+
|
|
41
|
+
接口返回 `IDbTableDiffInfo.diffType`,工作台「数据库连接 → 增量分析」里对每行表的展示文案如下,可与 CLI 输出对照:
|
|
42
|
+
|
|
43
|
+
| `diffType` | 界面文案 | 含义 |
|
|
44
|
+
|------------|----------|------|
|
|
45
|
+
| `NEW_TABLE` | 表新增 | 物理库中**有**该表,但**尚未纳入**(或尚未完成)上次智能分析;适合勾选后走 `db analyze-start --tables …` 做增量分析。 |
|
|
46
|
+
| `DELETED_TABLE` | 表删除 | 相对上次已分析快照,该表在库侧**已不存在**(或已被移除);界面上勾选增量分析时**不可选**该行。 |
|
|
47
|
+
| `MODIFIED_TABLE` | 表修改 | 表仍在,但**结构相对上次分析有变**;同条记录里可能有 `fieldDiff`(`addedColumns` / `deletedColumns` / `modifiedColumns`)。 |
|
|
48
|
+
| `ALREADY_ANALYZED` | 无差异 | 当前表结构与上次分析结果**一致**,无需因本表再跑增量(界面用灰色「无差异」标签)。 |
|
|
49
|
+
|
|
50
|
+
`DELETED_TABLE` 不会进入 `toAnalyzeTables`。如果自动分页在达到 `totalCount` 前遇到空页或不再产生新的唯一表,命令会失败,不把部分结果当作完整结果返回。
|
|
51
|
+
|
|
52
|
+
`--all` 聚合的是服务端实时分页结果,不是事务一致性快照。数据库结构在翻页期间持续变化时,结果可能来自不同查询时刻;检测到分页无进展会直接失败。此时应等待库表结构稳定后重试,并在分析结束后再次执行 `db diff --all --changed-only` 验证差异收敛。
|
|
53
|
+
|
|
54
|
+
## 参考
|
|
55
|
+
|
|
56
|
+
- [database-connection-workflow.md](../guides/database-connection-workflow.md)
|
|
57
|
+
- [SKILL.md](../SKILL.md)
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# db list
|
|
2
|
+
|
|
3
|
+
列出当前应用下所有 **数据库连接(dblink)** 及最近一次**分析状态**。**先执行本命令拿到 `id`**,再调用 `db detail` / `db test` / `db tables` 等。
|
|
4
|
+
|
|
5
|
+
## 何时用
|
|
6
|
+
|
|
7
|
+
- 刚接手项目,需要知道有哪些库、分析是否跑完
|
|
8
|
+
- 为其它 `db` 子命令准备 **`--id`**
|
|
9
|
+
- 查看 **`latestAnalysisTraceId`**(连接级最新快照,可供 `db analyze-status` 使用;取消已知任务时应使用正在跟踪的原 planId)
|
|
10
|
+
|
|
11
|
+
## 命令
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
rabetbase db list --format compress
|
|
15
|
+
rabetbase db list --page 1 --pagesize 100 --format compress
|
|
16
|
+
rabetbase db list --appcode app-xxxx --format compress
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## 参数
|
|
20
|
+
|
|
21
|
+
| Flag | 类型 | 必填 | 默认 | 说明 |
|
|
22
|
+
|------|------|------|------|------|
|
|
23
|
+
| `--appcode` | string | 否 | 配置文件 | 覆盖当前 app |
|
|
24
|
+
| `--page` | number | 否 | `1` | 页码(1-based) |
|
|
25
|
+
| `--pagesize` | number | 否 | `100` | 每页条数 |
|
|
26
|
+
| `--format` | string | 否 | **compress** | `json` / `compress` / `pretty` |
|
|
27
|
+
|
|
28
|
+
## 输出要点
|
|
29
|
+
|
|
30
|
+
- `connections[]`:每条含 `id`、`dbName`、`dbType`、`latestAnalysisStatus`、`latestAnalysisTraceId` 等
|
|
31
|
+
- 返回中密码已脱敏
|
|
32
|
+
- 若接口未返回分页元数据,`paging.totalCount` 为 `null` 并带 `note`,**勿将本页条数当作全量总数**
|
|
33
|
+
|
|
34
|
+
## 参考
|
|
35
|
+
|
|
36
|
+
- [database-connection-workflow.md](../guides/database-connection-workflow.md)
|
|
37
|
+
- [SKILL.md](../SKILL.md)
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# db tables
|
|
2
|
+
|
|
3
|
+
列出指定 dblink 下**物理表**及平台打上的分析标签(如是否已分析、是否新增表等)。只读。
|
|
4
|
+
|
|
5
|
+
## 何时用
|
|
6
|
+
|
|
7
|
+
- 写自定义 SQL / 对表前确认真实表名
|
|
8
|
+
- 与 `dataset list` 对照:哪些表尚未建成数据集
|
|
9
|
+
|
|
10
|
+
## 命令
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
rabetbase db tables --id 10157 --format compress
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## 参数
|
|
17
|
+
|
|
18
|
+
| Flag | 必填 | 说明 |
|
|
19
|
+
|------|------|------|
|
|
20
|
+
| `--id` | **是** | dblink id(`db list`) |
|
|
21
|
+
|
|
22
|
+
## 参考
|
|
23
|
+
|
|
24
|
+
- [database-connection-workflow.md](../guides/database-connection-workflow.md)
|
|
25
|
+
- [SKILL.md](../SKILL.md)
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# db test
|
|
2
|
+
|
|
3
|
+
用平台已保存的凭据**测试**到数据库的网络与登录是否成功。只读(`read`)。
|
|
4
|
+
|
|
5
|
+
## 何时用
|
|
6
|
+
|
|
7
|
+
- 改白名单、换 VPC、更新密码后快速验证
|
|
8
|
+
- 新建连接后确认无误再跑长耗时分析
|
|
9
|
+
|
|
10
|
+
## 命令
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
rabetbase db test --id 10157 --format compress
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## 参数
|
|
17
|
+
|
|
18
|
+
| Flag | 必填 | 说明 |
|
|
19
|
+
|------|------|------|
|
|
20
|
+
| `--id` | **是** | dblink id |
|
|
21
|
+
|
|
22
|
+
## 输出
|
|
23
|
+
|
|
24
|
+
`data.connected` 为布尔语义;`data.result` 为后端响应的**摘要**(白名单字段或键名列表),不返回完整原始 body,避免泄露敏感细节。
|
|
25
|
+
|
|
26
|
+
## 参考
|
|
27
|
+
|
|
28
|
+
- [database-connection-workflow.md](../guides/database-connection-workflow.md)
|
|
29
|
+
- [SKILL.md](../SKILL.md)
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# db update
|
|
2
|
+
|
|
3
|
+
**增量更新**已有 dblink:只传需要改的 flag,未传的字段保持服务端原值。`write`。
|
|
4
|
+
|
|
5
|
+
## 何时用
|
|
6
|
+
|
|
7
|
+
- 换库地址、改账号、轮换密码
|
|
8
|
+
- 改描述便于他人识别
|
|
9
|
+
|
|
10
|
+
## 命令
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
rabetbase db update --id 10157 --dburl new-host:3306 --format compress
|
|
14
|
+
rabetbase db update --id 10157 --password '***' --format compress
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## 参数
|
|
18
|
+
|
|
19
|
+
| Flag | 必填 | 说明 |
|
|
20
|
+
|------|------|------|
|
|
21
|
+
| `--id` | **是** | dblink id(`db list`) |
|
|
22
|
+
| `--dbname` / `--dburl` / `--username` / `--password` / `--dbparam` / `--dbdesc` | 否 | 仅传要覆盖的项;**不传 `--password` 则不修改密码**(空字符串行为以后端为准) |
|
|
23
|
+
|
|
24
|
+
写操作支持 **`--dry-run`**:合并当前服务端记录与 CLI 覆盖项后预览(密码脱敏)。
|
|
25
|
+
|
|
26
|
+
## 参考
|
|
27
|
+
|
|
28
|
+
- [database-connection-workflow.md](../guides/database-connection-workflow.md)
|
|
29
|
+
- [SKILL.md](../SKILL.md)
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# doctor
|
|
2
|
+
|
|
3
|
+
诊断 CLI 与 Built-in Skill 一致性、当前生效的配置、API 域名和认证状态。
|
|
4
|
+
|
|
5
|
+
遇到配置错误、`auth_required`、`api_error` 等问题时,先运行此命令定位根因。
|
|
6
|
+
|
|
7
|
+
## 命令
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
rabetbase doctor
|
|
11
|
+
# 等价(Diagnostics 为单命令 service,默认子命令为 check):
|
|
12
|
+
rabetbase doctor check
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
无需额外参数,直接执行。
|
|
16
|
+
|
|
17
|
+
## 输出内容
|
|
18
|
+
|
|
19
|
+
| 段落 | 说明 |
|
|
20
|
+
|------|------|
|
|
21
|
+
| CLI Version | 当前 CLI 版本(含 build number) |
|
|
22
|
+
| Built-in Skill | 目标路径、包版本、Skill 版本、内容状态;不一致时给出 `rabetbase cli-skill install` 修复命令 |
|
|
23
|
+
| Config Files | 全局和项目级配置文件路径 |
|
|
24
|
+
| Config JSON | 分别检测全局/项目配置文件是否为**合法 JSON**;非法时标红并给出解析错误(常见于尾随逗号、注释等,会导致该侧配置在合并时被忽略) |
|
|
25
|
+
| Merged Config | 合并后的所有配置项(appCode / env / cookie / apiDir 等) |
|
|
26
|
+
| Apps | 多应用模式下的应用列表及各自配置 |
|
|
27
|
+
| API Endpoints | 最终生效的三个域名(apiDomain / userDomain / runtimeDomain) |
|
|
28
|
+
| Auth | 登录状态及 cookie 有效性 |
|
|
29
|
+
|
|
30
|
+
## 典型场景
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
# 独立部署后,验证域名是否正确
|
|
34
|
+
rabetbase doctor
|
|
35
|
+
# 查看 API Endpoints 是否为自定义域名
|
|
36
|
+
|
|
37
|
+
# 认证失效时,查看 Auth 状态
|
|
38
|
+
rabetbase doctor
|
|
39
|
+
# 如果显示 Expired → 重新 run rabetbase auth
|
|
40
|
+
|
|
41
|
+
# 多应用配置混乱时,查看 Merged Config
|
|
42
|
+
rabetbase doctor
|
|
43
|
+
# 确认 --app 指定的配置是否正确生效
|
|
44
|
+
|
|
45
|
+
# 项目里「明明配了 apps 但行为像没配」— 先看 Config JSON 是否 Invalid
|
|
46
|
+
rabetbase doctor
|
|
47
|
+
# 若 Project JSON 为 ✗,修正 .rabetbase.json 语法后再试
|
|
48
|
+
|
|
49
|
+
# Skill 缺失、版本不一致或内容被修改时
|
|
50
|
+
rabetbase doctor
|
|
51
|
+
rabetbase cli-skill install
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## 独立部署场景
|
|
55
|
+
|
|
56
|
+
如果 Lovrabet 部署在自定义域名下,先通过 `rabetbase config set` 配置域名,再用 `doctor` 验证:
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
rabetbase config set apiDomain https://custom-api.example.com --global
|
|
60
|
+
rabetbase doctor
|
|
61
|
+
# API Endpoints 应显示自定义域名
|
|
62
|
+
```
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# file upload / query-url
|
|
2
|
+
|
|
3
|
+
应用文件命令。参数与输出约定和 `lovrabet file` 一致,通过 rabetbase 当前登录态与应用权限执行。
|
|
4
|
+
|
|
5
|
+
## 上传文件
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
rabetbase file upload --file ./evidence.png --appcode app-demo --format compress
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
`upload` 的风险等级为 `read`,支持 `--dry-run`。上传只生成尚未绑定业务记录的远端文件对象,不创建、更新或删除业务数据;它仍会把本地文件发送到目标应用,执行前需要核对应用和敏感文件范围。本地文件必须存在、必须是普通文件且不能超过 50 MB。成功后保留返回的 `filePath`,用于业务字段或后续查询 URL。
|
|
12
|
+
|
|
13
|
+
## 查询访问 URL
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
# 短效预览 URL
|
|
17
|
+
rabetbase file query-url --filepath '20260717/hash-evidence.png' --appcode app-demo --format compress
|
|
18
|
+
|
|
19
|
+
# 短效下载 URL
|
|
20
|
+
rabetbase file query-url --filepath '20260717/hash-evidence.png' --download --appcode app-demo --format compress
|
|
21
|
+
|
|
22
|
+
# 3 年 URL,供 Markdown、HTML、富文本等只能保存 URL 的内容使用
|
|
23
|
+
rabetbase file query-url --filepath '20260717/hash-evidence.png' --long-term --appcode app-demo --format compress
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## 选择原则
|
|
27
|
+
|
|
28
|
+
- 可保存文件引用时保存 `filePath`,访问时再获取短效 URL。
|
|
29
|
+
- 只有 Markdown、HTML 或富文本等 URL-only 内容才使用 `--long-term`。
|
|
30
|
+
- 使用 rabetbase 当前登录态上传应用文件;不要改用 `lovrabet file upload`,避免混用两套应用权限。
|
|
31
|
+
|
|
32
|
+
## 参考
|
|
33
|
+
|
|
34
|
+
- [SKILL.md](../SKILL.md)
|
|
35
|
+
- [rabetbase-issue-report.md](rabetbase-issue-report.md)
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# rabetbase init
|
|
2
|
+
|
|
3
|
+
智能初始化 `.rabetbase.json` 配置。
|
|
4
|
+
|
|
5
|
+
> **风险等级:write** — 创建或修改配置文件。
|
|
6
|
+
|
|
7
|
+
## 命令
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
# 交互模式(从平台拉取应用列表选择)
|
|
11
|
+
rabetbase init
|
|
12
|
+
|
|
13
|
+
# 指定 appcode 直接写入(非交互)
|
|
14
|
+
rabetbase init --appcode <code>
|
|
15
|
+
|
|
16
|
+
# 指定环境
|
|
17
|
+
rabetbase init --appcode <code> --env daily
|
|
18
|
+
|
|
19
|
+
# 写入全局配置
|
|
20
|
+
rabetbase init --appcode <code> --global
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## 参数
|
|
24
|
+
|
|
25
|
+
| Flag | 类型 | 必填 | 默认 | 说明 |
|
|
26
|
+
|------|------|------|------|------|
|
|
27
|
+
| `--appcode <code>` | string | 否 | — | 直接写入配置,跳过交互选择 |
|
|
28
|
+
| `--env <env>` | string | 否 | `production` | 目标环境:`production` / `daily` |
|
|
29
|
+
| `--global` | boolean | 否 | `false` | 写入全局配置而非项目配置 |
|
|
30
|
+
|
|
31
|
+
## 执行逻辑
|
|
32
|
+
|
|
33
|
+
按优先级自动路由:
|
|
34
|
+
|
|
35
|
+
1. **老项目检测**(仅 project scope)→ 若检测到旧配置文件(如 `.lovrabet.json`)且无 `.rabetbase.json`,自动触发 `project upgrade`
|
|
36
|
+
2. **`--appcode`** → 直接写入配置(单应用或 CI 模式)
|
|
37
|
+
3. **CI 无 `--appcode`** → 报错 `flag_missing`
|
|
38
|
+
4. **TTY 交互** → 从平台拉取应用列表,用户多选后写入配置
|
|
39
|
+
|
|
40
|
+
## 输出
|
|
41
|
+
|
|
42
|
+
- 成功:`✓ Successfully initialized project config` 并显示 AppCode、Env、Config 路径
|
|
43
|
+
- 已有配置:报错 `.rabetbase.json already exists`
|
|
44
|
+
- 旧项目:自动进入 `project upgrade` 流程
|
|
45
|
+
|
|
46
|
+
## 多应用
|
|
47
|
+
|
|
48
|
+
交互模式支持选择多个应用,生成多应用配置:
|
|
49
|
+
|
|
50
|
+
```json
|
|
51
|
+
{
|
|
52
|
+
"apps": {
|
|
53
|
+
"app1": { "appcode": "code1", "env": "production" },
|
|
54
|
+
"app2": { "appcode": "code2", "env": "production" }
|
|
55
|
+
},
|
|
56
|
+
"defaultApp": "app1"
|
|
57
|
+
}
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
## 提示
|
|
61
|
+
|
|
62
|
+
- 这是新用户首次使用的推荐入口命令
|
|
63
|
+
- CI/CD 场景必须传 `--appcode`
|
|
64
|
+
- 已有配置时先删除,或用 `config set env ...` / `workspace add` / `workspace use` 修改;`config set appcode` 仅适合单应用场景,会写成 `apps + defaultApp`
|
|
65
|
+
|
|
66
|
+
## 参考
|
|
67
|
+
|
|
68
|
+
- [SKILL.md](../SKILL.md)
|
|
69
|
+
- [配置参考](rabetbase-config.md)
|
|
70
|
+
- [project upgrade](rabetbase-project-upgrade.md)
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
# issue report
|
|
2
|
+
|
|
3
|
+
向平台 Issue 采集链路上报一个问题。description 的核心是完整组织客观事实,供平台侧复现和排查;该入口不负责代替平台侧判断根因或设计解决方案。
|
|
4
|
+
|
|
5
|
+
> **前置条件:** 已通过 `rabetbase auth login` 完成认证;未登录时命令返回 `auth_required`。
|
|
6
|
+
|
|
7
|
+
## 核心边界
|
|
8
|
+
|
|
9
|
+
- 只写已经观察、执行或读取到的事实,包括环境、版本、时间、命令、输入、原始输出、状态变化、错误信息和定位标识
|
|
10
|
+
- 实际结果与期望结果分开记录;“期望结果”只描述用户可验证的目标,不延伸成技术实现建议
|
|
11
|
+
- 不确定的信息放入“尚未确认”,明确说明缺少什么证据;不得把推测写成事实
|
|
12
|
+
- 不得推测根因,不得提供修复方案,不得给出主观优先级或未经验证的影响判断
|
|
13
|
+
- 不得为了简洁删除唯一事实;可以去除完全重复的输出,但必须保留首次出现位置、重复次数和可定位标识
|
|
14
|
+
- Cookie、Authorization、AccessKey、密码、私钥和 JWT 等敏感值仍需由命令脱敏,不得以“保持原始事实”为由绕过安全处理
|
|
15
|
+
|
|
16
|
+
## 事实模板
|
|
17
|
+
|
|
18
|
+
```markdown
|
|
19
|
+
## 问题概述
|
|
20
|
+
|
|
21
|
+
用一句话描述已经发生的异常,不写原因判断。
|
|
22
|
+
|
|
23
|
+
## 环境与标识
|
|
24
|
+
|
|
25
|
+
- CLI 与版本:
|
|
26
|
+
- AppCode / AppEnv:
|
|
27
|
+
- 发生时间与时区:
|
|
28
|
+
- TraceId / SpanId / JobId:
|
|
29
|
+
|
|
30
|
+
## 复现步骤
|
|
31
|
+
|
|
32
|
+
1. 按实际顺序记录操作。
|
|
33
|
+
2. 命令、参数和必要输入保持可复现;敏感值使用安全占位符。
|
|
34
|
+
|
|
35
|
+
## 实际结果
|
|
36
|
+
|
|
37
|
+
- 原样记录状态、错误码、错误信息和关键返回字段。
|
|
38
|
+
- 长输出注明完整证据的位置、字节数和摘要值。
|
|
39
|
+
|
|
40
|
+
## 期望结果
|
|
41
|
+
|
|
42
|
+
- 描述用户能够验证的正确行为。
|
|
43
|
+
|
|
44
|
+
## 客观证据
|
|
45
|
+
|
|
46
|
+
- 日志、截图、文件、URL、时间线和对应标识。
|
|
47
|
+
|
|
48
|
+
## 尚未确认
|
|
49
|
+
|
|
50
|
+
- 只列缺少证据、尚未执行或平台侧需要继续核对的事实问题。
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
不要在模板中增加“根因分析”“建议修复方案”“解决方案”或“建议排查方向”等章节。
|
|
54
|
+
|
|
55
|
+
## 命令
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
rabetbase issue report --title "page push 保存失败" --description "## 实际现象\n- 点击保存后报错" --dry-run --format json
|
|
59
|
+
|
|
60
|
+
cat <<'EOF' >/tmp/platform-issue.md
|
|
61
|
+
## 问题概述
|
|
62
|
+
page push 保存失败
|
|
63
|
+
|
|
64
|
+
## 环境与标识
|
|
65
|
+
- rabetbase: 2.3.6
|
|
66
|
+
- AppCode: app-example
|
|
67
|
+
|
|
68
|
+
## 复现步骤
|
|
69
|
+
1. 执行 `rabetbase page push ...`
|
|
70
|
+
|
|
71
|
+
## 实际结果
|
|
72
|
+
- 命令返回 `validation_error`
|
|
73
|
+
|
|
74
|
+
## 期望结果
|
|
75
|
+
页面 schema 能成功推送
|
|
76
|
+
|
|
77
|
+
## 客观证据
|
|
78
|
+
- TraceId: `<trace-id>`
|
|
79
|
+
|
|
80
|
+
## 尚未确认
|
|
81
|
+
- 当前返回内容未包含具体字段信息
|
|
82
|
+
EOF
|
|
83
|
+
|
|
84
|
+
wc -c /tmp/platform-issue.md
|
|
85
|
+
rabetbase issue report --title "TEST issue smoke" --description-file /tmp/platform-issue.md --dry-run --format json
|
|
86
|
+
# 确认 issue.description_original_bytes 与上方字节数一致,且 issue.description_truncated=false
|
|
87
|
+
rabetbase issue report --title "page push 保存失败" --description-file /tmp/platform-issue.md --format json
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
## 参数
|
|
91
|
+
|
|
92
|
+
| Flag | 类型 | 必填 | 默认 | 说明 |
|
|
93
|
+
|------|------|------|------|------|
|
|
94
|
+
| `--title <text>` | string | 是 | — | 一句话问题摘要 |
|
|
95
|
+
| `--description <markdown>` | string | 与 `--description-file` 二选一 | — | 内联 Markdown 问题描述 |
|
|
96
|
+
| `--description-file <path>` | string | 与 `--description` 二选一 | — | Markdown 文件路径,适合长上下文;最终会上报文件内容文本,而不是路径 |
|
|
97
|
+
| `--dry-run` | boolean | 否 | `false` | 仅预览将要写入的 trace/span/logData |
|
|
98
|
+
| `--format <fmt>` | string | 否 | `compress` | 输出格式 |
|
|
99
|
+
|
|
100
|
+
## 行为说明
|
|
101
|
+
|
|
102
|
+
- 命令会自动补充 CLI 宿主公共上下文,不需要手动重复传入环境或用户字段
|
|
103
|
+
- `--description-file` 只是本地输入来源;命令会先读取文件内容,最终上报的是 `issue.description` 的 Markdown 文本,不是本机文件路径
|
|
104
|
+
- 命令不会自动附带 Agent 对话、工具历史或工作目录文件;只有显式写入 `--description` / `--description-file` 的事实会进入上报正文
|
|
105
|
+
- 单次 issue 的正文业务字段只写:
|
|
106
|
+
- `issue.title`
|
|
107
|
+
- `issue.description`
|
|
108
|
+
- 命令还会上报 `issue.description_original_bytes`、`issue.description_truncated`、`issue.description_redactions` 和 `issue.description_redaction_kinds`,用于核对完整性与脱敏结果
|
|
109
|
+
- `--dry-run` 中若出现 `descriptionFile`,它只用于本地确认读取了哪个文件,不属于正式上报字段
|
|
110
|
+
- 当前仅支持 `report`;不支持 `issue update`、`issue close`
|
|
111
|
+
|
|
112
|
+
## 上报前完整性检查
|
|
113
|
+
|
|
114
|
+
1. 先用 `wc -c /path/to/platform-issue.md` 记录源文件字节数,并确认文件包含所有唯一事实。
|
|
115
|
+
2. 执行 `rabetbase issue report ... --dry-run --format compress`。
|
|
116
|
+
3. 检查 `issue.description_original_bytes` 与源文件字节数一致,并确认 `issue.description_truncated=false`。
|
|
117
|
+
4. 检查 `issue.description` 的结尾仍是源文件的最后一条事实,且 `issue.description_redactions` 只命中预期的敏感信息。
|
|
118
|
+
5. 只有上述检查通过后才正式上报;正式提交成功前保留源 Markdown,便于逐字核对。
|
|
119
|
+
|
|
120
|
+
如果 `issue.description_truncated=true`,不得把该结果当作完整上报。去除完全重复内容,或将大体积原始日志/文件通过文件服务保存,在正文中记录其 `filePath`、访问链接、字节数和摘要值;不得静默丢弃超出部分。
|
|
121
|
+
|
|
122
|
+
## 文件与图片证据
|
|
123
|
+
|
|
124
|
+
- 如需加入图片证据,先执行 `rabetbase file upload --file <图片路径>`,再用 `rabetbase file query-url --filepath <filePath> --long-term` 获取 Markdown 图片 URL
|
|
125
|
+
- OSS 签名 URL 查询参数中的 `OSSAccessKeyId` 会保持原样,避免签名被脱敏改写;URL 外的 AccessKey 文本仍会脱敏
|
|
126
|
+
- 需要确认当前 CLI 环境、登录态和配置时,先执行 [`rabetbase doctor`](rabetbase-doctor.md)
|
|
127
|
+
|
|
128
|
+
## 参考
|
|
129
|
+
|
|
130
|
+
- [SKILL.md](../SKILL.md)
|
|
131
|
+
- [rabetbase-file.md](rabetbase-file.md)
|
|
132
|
+
- [rabetbase-doctor.md](rabetbase-doctor.md)
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# rabetbase kb
|
|
2
|
+
|
|
3
|
+
管理开发者侧当前解析应用下的 `company` 知识库。所有命令都通过标准工作区、`--app <name>` 或 `--appcode <code>` 解析目标应用,并在读写前后精确校验 `scope=company`、appCode 和 ID。
|
|
4
|
+
|
|
5
|
+
> 边界:`lovrabet kb` 使用运行态 AK/当前应用/当前用户,面向个人知识库和可见知识搜索;`rabetbase kb` 使用开发者登录态,面向公司知识库管理。不要用其中一个替代另一个。
|
|
6
|
+
|
|
7
|
+
## 命令
|
|
8
|
+
|
|
9
|
+
```sh
|
|
10
|
+
rabetbase kb list --format compress
|
|
11
|
+
rabetbase kb list --appcode app-xxxxx --title "业务规则" --format compress
|
|
12
|
+
rabetbase kb detail --id 60 --format compress
|
|
13
|
+
rabetbase kb create --title "业务规则" --file ./knowledge.md --dry-run
|
|
14
|
+
rabetbase kb create --title "业务规则" --file ./knowledge.md --yes
|
|
15
|
+
rabetbase kb update --id 60 --file ./knowledge.md --expected-version 2 --dry-run
|
|
16
|
+
rabetbase kb update --id 60 --file ./knowledge.md --expected-version 2 --yes
|
|
17
|
+
rabetbase kb delete --id 60 --dry-run
|
|
18
|
+
rabetbase kb delete --id 60 --yes
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## 内容文件与安全输出
|
|
22
|
+
|
|
23
|
+
- `create --file` 必填,`update --file` 可选;输入必须是可读的普通 UTF-8 文本或 Markdown 文件。
|
|
24
|
+
- CLI 保留解码后的文本,不解析 JSON、不重排段落,也不把路径映射转换成其他格式。
|
|
25
|
+
- 空白文件、目录、无效 UTF-8、缺失或不可读文件都会在网络请求前拒绝。
|
|
26
|
+
- 结构化输出不包含正文,只展示 `contentByteSize`、`contentHash`、`snapshotHash` 等安全元数据。
|
|
27
|
+
|
|
28
|
+
## list / detail
|
|
29
|
+
|
|
30
|
+
- `list` 自动读取全部分页,并强制过滤为精确 company scope 与当前 appCode;服务端的 appCode/title LIKE 结果不能扩大客户端作用域。
|
|
31
|
+
- `detail` 使用正安全整数 ID 精确读取,并验证返回 ID、scope 和 appCode。
|
|
32
|
+
- 服务端 Long 字段即使序列化为十进制字符串,CLI 也只接受能安全转换的整数;超出 JavaScript 安全整数范围时失败关闭。
|
|
33
|
+
|
|
34
|
+
## create
|
|
35
|
+
|
|
36
|
+
- 只需 `--title`、`--file`;应用由标准全局应用解析得到。
|
|
37
|
+
- 写前按 `(company, appCode, title)` 精确检查重复。
|
|
38
|
+
- 正式执行必须显式 `--yes`,请求最多提交一次。
|
|
39
|
+
- 正常响应使用服务端返回 VO/ID 并按 ID 回读。只有底层响应不确定时,才按同一 company/app/title 三元组做只读恢复;零条或多条都返回 outcome unknown,绝不自动重提。
|
|
40
|
+
- 授权、权限、参数和其他确定性服务端错误直接失败,不能用旧状态回读伪装成成功。
|
|
41
|
+
|
|
42
|
+
## update
|
|
43
|
+
|
|
44
|
+
- `--id` 必填,`--title`、`--file` 至少传一个;服务端合同不支持 `--remark`。
|
|
45
|
+
- 标题单独更新只发送 `{id,title}`,不会合并并回写未修改的 content,也不强求版本递增。
|
|
46
|
+
- 内容更新发送 `{id,content}` 与可选 title;回读必须匹配内容哈希且版本高于写前版本。
|
|
47
|
+
- `--expected-version` 是非原子的 read-before-write 断言;服务端请求没有 version 条件,不能把它描述为 compare-and-set。
|
|
48
|
+
- 响应不确定时只按同一 ID 回读;证据不足返回 outcome unknown,不自动重提。
|
|
49
|
+
|
|
50
|
+
## delete
|
|
51
|
+
|
|
52
|
+
- 已验证服务端合同:`POST /admin/knowledge-base/delete`,请求体 `{id}`,成功为 `Result<Void>`。
|
|
53
|
+
- 写前读取目标,校验 ID、company scope、appCode、可选 expected-version 和安全快照;`--expected-version` 仍是非原子断言,dry-run 明确输出 `atomicCompareAndSet: false`。
|
|
54
|
+
- 目标明确不存在时返回 no-op 且不发请求;只有服务端 `DATA_NOT_EXIST (306)` 可识别为不存在,`PARAM_INVALID (103)`、权限、认证或传输错误不能降级为 no-op。
|
|
55
|
+
- 正式删除最多提交一次,再按同一 ID 回读;明确不存在用于验证数据库软删除。
|
|
56
|
+
- 服务端在事务提交后异步清理 RAG。CLI 不验证 RAG 文件/索引清理,不宣称物理删除。
|
|
57
|
+
|
|
58
|
+
## 环境与授权
|
|
59
|
+
|
|
60
|
+
- 使用 `--env daily` 或 `--env production` 选择 Profile 环境,不通过 URL 参数切换。
|
|
61
|
+
- Production 写操作必须单独取得授权;需求、dry-run 或命令可用不等于写入授权。
|
|
62
|
+
- 输出和错误不得包含 Cookie、Token、AccessKey 或知识正文。
|