@lovrabet/rabetbase-cli 2.4.6 → 2.4.7-beta.2
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 -4
- 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.d.ts +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/business-groups.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-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.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/search.d.ts +2 -0
- package/lib/commands/kb/search.js +1 -0
- 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/menu/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/template.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.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/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/sync.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/materialize-project-template.js +1 -1
- package/lib/commands/project/create/project-name.js +1 -1
- package/lib/commands/project/create/project-template-archive.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/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.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- 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 +17 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.d.ts +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.d.ts +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.d.ts +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.d.ts +2 -2
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/types.d.ts +1 -1
- package/lib/core/bff/utils.d.ts +2 -2
- 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.js +1 -1
- 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.js +1 -1
- package/lib/skills/main.js +1 -1
- 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/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 +2 -2
- package/sidecar/flags.json +1 -1
- package/skills/rabetbase/SKILL.md +30 -30
- package/skills/rabetbase/guides/backend-function.md +30 -30
- package/skills/rabetbase/guides/best-practices.md +8 -8
- package/skills/rabetbase/guides/bff-creation-workflow.md +16 -16
- package/skills/rabetbase/guides/conflict-detection.md +3 -3
- package/skills/rabetbase/guides/custom-page-workflow.md +8 -8
- package/skills/rabetbase/guides/data-api-guidelines.md +6 -6
- package/skills/rabetbase/guides/legacy-application-blueprint-workflow.md +8 -8
- package/skills/rabetbase/guides/sql-creation-workflow.md +2 -2
- package/skills/rabetbase/guides/troubleshooting.md +6 -6
- package/skills/rabetbase/guides/typescript-sdk.md +10 -10
- package/skills/rabetbase/knowledge/page-schema/LrSmartTable.md +1 -1
- package/skills/rabetbase/knowledge/page-schema/external-resources-usage.md +10 -10
- package/skills/rabetbase/references/rabetbase-app-config.md +2 -2
- package/skills/rabetbase/references/rabetbase-bff-create.md +3 -3
- package/skills/rabetbase/references/rabetbase-bff-delete.md +1 -1
- package/skills/rabetbase/references/rabetbase-bff-detail.md +4 -4
- package/skills/rabetbase/references/rabetbase-bff-list.md +8 -8
- package/skills/rabetbase/references/rabetbase-bff-pull.md +1 -1
- package/skills/rabetbase/references/rabetbase-bff-push.md +3 -3
- package/skills/rabetbase/references/rabetbase-bff-status.md +1 -1
- package/skills/rabetbase/references/rabetbase-codegen-sql.md +3 -3
- package/skills/rabetbase/references/rabetbase-dataset-detail.md +1 -1
- package/skills/rabetbase/references/rabetbase-kb.md +13 -3
- package/skills/rabetbase/references/rabetbase-notification-config-list.md +3 -3
- package/skills/rabetbase.manifest.json +3 -3
- package/templates/rules/lovrabet_rules.mdc.tpl +7 -7
- package/templates/skill/SKILL.md.tpl +12 -12
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# bff list
|
|
2
2
|
|
|
3
|
-
列出当前 App 下的
|
|
3
|
+
列出当前 App 下的 Backend Function 脚本。
|
|
4
4
|
|
|
5
5
|
## 命令
|
|
6
6
|
|
|
@@ -24,12 +24,12 @@ rabetbase bff list --name getUserInfo --format json
|
|
|
24
24
|
## 多应用过滤
|
|
25
25
|
|
|
26
26
|
多应用模式下:
|
|
27
|
-
- 不加 `--app` / `--appcode`:遍历所有已配置应用,依次列出各应用的
|
|
28
|
-
- 加 `--app <name>`:仅列出指定应用的
|
|
27
|
+
- 不加 `--app` / `--appcode`:遍历所有已配置应用,依次列出各应用的 Backend Function
|
|
28
|
+
- 加 `--app <name>`:仅列出指定应用的 Backend Function
|
|
29
29
|
- 加 `--appcode <code>`:反查到对应 app profile,使用其 cookie/env
|
|
30
30
|
|
|
31
31
|
```bash
|
|
32
|
-
# 仅列出 order 应用的
|
|
32
|
+
# 仅列出 order 应用的 Backend Function
|
|
33
33
|
rabetbase bff list --app order
|
|
34
34
|
|
|
35
35
|
# 指定 appcode
|
|
@@ -40,19 +40,19 @@ rabetbase bff list --appcode app-xxxxxxxx
|
|
|
40
40
|
|
|
41
41
|
默认返回精简列表(id, functionName, description, scriptType)。`--verbose` 返回完整对象。
|
|
42
42
|
|
|
43
|
-
##
|
|
43
|
+
## Backend Function 脚本类型
|
|
44
44
|
|
|
45
45
|
| 类型 | 用途 | 说明 |
|
|
46
46
|
|------|------|------|
|
|
47
47
|
| ENDPOINT | 独立业务端点,前端通过 `client.bff.execute()` 调用 | 默认类型 |
|
|
48
|
-
| COMMON | 公共函数,供其他
|
|
48
|
+
| COMMON | 公共函数,供其他 Backend Function 脚本 import 复用 | 需 `--type COMMON` 查询 |
|
|
49
49
|
| HOOK | 挂在标准数据接口前后执行 | 通过数据集详情查看 |
|
|
50
50
|
|
|
51
51
|
## 提示
|
|
52
52
|
|
|
53
|
-
- 写
|
|
53
|
+
- 写 Backend Function 前先查公共函数列表(`--type COMMON`),看是否有可复用函数
|
|
54
54
|
- 复用 COMMON 前用 `bff detail --id <id>` 确认入参、返回值和副作用,不要按函数名猜契约
|
|
55
|
-
- 修改已有
|
|
55
|
+
- 修改已有 Backend Function 前必须先用此命令找到脚本 ID
|
|
56
56
|
|
|
57
57
|
## 参考
|
|
58
58
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# bff push
|
|
2
2
|
|
|
3
|
-
把本地
|
|
3
|
+
把本地 Backend Function 脚本上传到远端。
|
|
4
4
|
|
|
5
5
|
> **风险等级:write** — 建议先使用 `--dry-run` 预览。
|
|
6
6
|
|
|
@@ -43,8 +43,8 @@ rabetbase bff push --type HOOK --name beforeFilter --format json
|
|
|
43
43
|
- 写入字段、必填字段、枚举 `options[].value` 来自当前 `dataset detail`
|
|
44
44
|
- `filter()` 结果从 `.tableData` 读取
|
|
45
45
|
- `create()` 返回新记录 ID,不访问 `created.id`
|
|
46
|
-
-
|
|
47
|
-
- 通知型
|
|
46
|
+
- Backend Function 中没有使用前端 SDK 初始化能力,如 `createClient`、`registerModels`
|
|
47
|
+
- 通知型 Backend Function 只使用已确认的 `configCode` / `audiences` / `message`,没有渠道地址、密钥、旧 MANUAL 参数或 `${...}` 模板表达式
|
|
48
48
|
|
|
49
49
|
## 提示
|
|
50
50
|
|
|
@@ -15,17 +15,17 @@ rabetbase codegen sql --sqlcode 2305f915-dd48cd4c > ./src/api/getUserList.ts
|
|
|
15
15
|
| Flag | 类型 | 必填 | 默认 | 说明 |
|
|
16
16
|
|------|------|------|------|------|
|
|
17
17
|
| `--sqlcode <code>` | string | 是 | — | SQL code 标识符(格式:`xxxxxxxx-xxxxxxxx`) |
|
|
18
|
-
| `--target <target>` | string | 否 | `sdk` | 生成目标:`sdk`(SDK 调用) / `bff`(
|
|
18
|
+
| `--target <target>` | string | 否 | `sdk` | 生成目标:`sdk`(SDK 调用) / `bff`(Backend Function 脚本内调用) |
|
|
19
19
|
| `--no-imports` | boolean | 否 | — | 不包含 import 语句 |
|
|
20
20
|
| `--format <fmt>` | string | 否 | `pretty` | 输出格式 |
|
|
21
21
|
|
|
22
22
|
## 输出
|
|
23
23
|
|
|
24
|
-
生成的 TypeScript 代码直接打印到 stdout。`--target sdk` 生成前端 SDK 调用代码,`--target bff` 生成
|
|
24
|
+
生成的 TypeScript 代码直接打印到 stdout。`--target sdk` 生成前端 SDK 调用代码,`--target bff` 生成 Backend Function 脚本内调用代码。
|
|
25
25
|
|
|
26
26
|
## 提示
|
|
27
27
|
|
|
28
|
-
- `--target bff` 生成的代码使用 `context.client.sql.execute()`,注意
|
|
28
|
+
- `--target bff` 生成的代码使用 `context.client.sql.execute()`,注意 Backend Function 中 SQL 返回直接是数组
|
|
29
29
|
- `--target sdk` 生成的代码使用 `client.sql.execute()`,返回 `{ execSuccess, execResult }`
|
|
30
30
|
|
|
31
31
|
## 参考
|
|
@@ -96,7 +96,7 @@ rabetbase dataset detail --code <数据集编码> --format json --jq '.data.oper
|
|
|
96
96
|
|
|
97
97
|
## 提示
|
|
98
98
|
|
|
99
|
-
- 写 SQL /
|
|
99
|
+
- 写 SQL / Backend Function 前先调用此命令确认真实字段名、类型与枚举;关联关系统一看 **`dataset relations`**
|
|
100
100
|
- `--alias` 需要先执行 `rabetbase api pull` 生成 `api.ts`
|
|
101
101
|
- 横切数据访问流程、外键与性能:见 [`guides/data-api-guidelines.md`](../guides/data-api-guidelines.md)
|
|
102
102
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# rabetbase kb
|
|
2
2
|
|
|
3
|
-
管理开发者侧当前解析应用下的 `company`
|
|
3
|
+
管理开发者侧当前解析应用下的 `company` 知识库,并检索当前应用可访问的公司与公共知识。所有命令都通过标准工作区、`--app <name>` 或 `--appcode <code>` 解析目标应用。
|
|
4
4
|
|
|
5
|
-
> 边界:`lovrabet kb` 使用运行态 AK/当前应用/当前用户,面向个人知识库和可见知识搜索;`rabetbase kb`
|
|
5
|
+
> 边界:`lovrabet kb` 使用运行态 AK/当前应用/当前用户,面向个人知识库和可见知识搜索;`rabetbase kb` 使用开发者登录态,面向公司知识库管理以及公司/公共知识检索。不要用其中一个替代另一个。
|
|
6
6
|
|
|
7
7
|
## 命令
|
|
8
8
|
|
|
@@ -10,6 +10,8 @@
|
|
|
10
10
|
rabetbase kb list --format compress
|
|
11
11
|
rabetbase kb list --appcode app-xxxxx --title "业务规则" --format compress
|
|
12
12
|
rabetbase kb detail --id 60 --format compress
|
|
13
|
+
rabetbase kb search --query "怎么查订单?" --format compress
|
|
14
|
+
rabetbase kb search --query "体育特长生的录取条件是什么?" --topk 5 --format compress
|
|
13
15
|
rabetbase kb create --title "业务规则" --file ./knowledge.md --dry-run
|
|
14
16
|
rabetbase kb create --title "业务规则" --file ./knowledge.md
|
|
15
17
|
rabetbase kb update --id 60 --file ./knowledge.md --expected-version 2 --dry-run
|
|
@@ -23,7 +25,7 @@ rabetbase kb delete --id 60 --yes
|
|
|
23
25
|
- `create --file` 必填,`update --file` 可选;输入必须是可读的普通 UTF-8 文本或 Markdown 文件。
|
|
24
26
|
- CLI 保留解码后的文本,不解析 JSON、不重排段落,也不把路径映射转换成其他格式。
|
|
25
27
|
- 空白文件、目录、无效 UTF-8、缺失或不可读文件都会在网络请求前拒绝。
|
|
26
|
-
-
|
|
28
|
+
- 管理命令的结构化输出不包含知识库全文,只展示 `contentByteSize`、`contentHash`、`snapshotHash` 等安全元数据;`search` 会按检索用途返回命中的正文片段。
|
|
27
29
|
|
|
28
30
|
## list / detail
|
|
29
31
|
|
|
@@ -31,6 +33,14 @@ rabetbase kb delete --id 60 --yes
|
|
|
31
33
|
- `detail` 使用正安全整数 ID 精确读取,并验证返回 ID、scope 和 appCode。
|
|
32
34
|
- 服务端 Long 字段即使序列化为十进制字符串,CLI 也只接受能安全转换的整数;超出 JavaScript 安全整数范围时失败关闭。
|
|
33
35
|
|
|
36
|
+
## search
|
|
37
|
+
|
|
38
|
+
- 调用 `POST /smartapi/knowledge/company-public/search`,请求仅包含 `query`、解析后的 `appCode` 和可选 `topK`。
|
|
39
|
+
- 不传 `userId`,不查询个人知识库;命中 `scope` 只可能为 `COMPANY` 或 `PUBLIC`。
|
|
40
|
+
- `--query` 必填且不能是纯空白;`--topk` 可选,必须是正整数。不传时沿用服务端缺省规则。
|
|
41
|
+
- 输出 `total` 与 `hits`,命中字段为 `scope/title/docId/score/weightedScore/content/jsonPath/jsonData`;无命中时返回空数组。
|
|
42
|
+
- 同时判断 HTTP 状态和平台业务结果;未登录、无权限、参数错误、检索异常或响应字段漂移都会以结构化错误失败。
|
|
43
|
+
|
|
34
44
|
## create
|
|
35
45
|
|
|
36
46
|
- `create/update` 为 `write`,正式执行不要求 `--yes`;仍应先审阅 dry-run。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# rabetbase notification config-list
|
|
2
2
|
|
|
3
|
-
只读查询当前应用的应用级通知渠道配置,主要用于获取
|
|
3
|
+
只读查询当前应用的应用级通知渠道配置,主要用于获取 Backend Function 消息通知扩展需要的应用级 `configCode`。
|
|
4
4
|
|
|
5
5
|
## 命令
|
|
6
6
|
|
|
@@ -54,7 +54,7 @@ CLI 只输出用于选择配置的安全字段,不输出:
|
|
|
54
54
|
|
|
55
55
|
若服务端返回的任一记录缺少非空的 `configCode`、`configName` 或 `channelType`,CLI 会返回 `api_error`,不会用空字符串伪造可用配置,也不会输出可能不完整的成功列表。
|
|
56
56
|
|
|
57
|
-
##
|
|
57
|
+
## Backend Function 使用
|
|
58
58
|
|
|
59
59
|
先根据 `configName` 和 `description` 选择目标配置,再把同一项的 `configCode` 传给:
|
|
60
60
|
|
|
@@ -76,5 +76,5 @@ await context.client.extension.execute("notification", "send", {
|
|
|
76
76
|
|
|
77
77
|
## 参考
|
|
78
78
|
|
|
79
|
-
* [
|
|
79
|
+
* [Backend Function 创建工作流](../guides/bff-creation-workflow.md)
|
|
80
80
|
* [Backend Function 消息通知扩展](../guides/backend-function.md#消息通知扩展)
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"name": "rabetbase",
|
|
4
4
|
"packageName": "@lovrabet/rabetbase-cli",
|
|
5
|
-
"packageVersion": "2.4.
|
|
6
|
-
"skillVersion": "2.4.
|
|
5
|
+
"packageVersion": "2.4.7-beta.2",
|
|
6
|
+
"skillVersion": "2.4.7-beta.2",
|
|
7
7
|
"files": [
|
|
8
8
|
"SKILL.md",
|
|
9
9
|
"guides/backend-function.md",
|
|
@@ -131,5 +131,5 @@
|
|
|
131
131
|
"references/rabetbase-user-account.md",
|
|
132
132
|
"references/rabetbase-workspace.md"
|
|
133
133
|
],
|
|
134
|
-
"digest": "
|
|
134
|
+
"digest": "91bcc2cef3e9a2edb89cc0216a5c5e15757c30699d13312778d4bf7dd8d96805"
|
|
135
135
|
}
|
|
@@ -71,7 +71,7 @@ if (result.execSuccess && result.execResult) {
|
|
|
71
71
|
- HTTP 错误:抛出 `LovrabetError` 异常
|
|
72
72
|
- 应用层职责:检查 `execSuccess` 状态,处理业务结果
|
|
73
73
|
|
|
74
|
-
####
|
|
74
|
+
#### Backend Function API
|
|
75
75
|
|
|
76
76
|
```typescript
|
|
77
77
|
const dashboard = await client.bff.execute({
|
|
@@ -102,7 +102,7 @@ try {
|
|
|
102
102
|
// Use result directly (it's already the business data)
|
|
103
103
|
} catch (error) {
|
|
104
104
|
if (error instanceof LovrabetError) {
|
|
105
|
-
console.error('
|
|
105
|
+
console.error('Backend Function call failed:', error.message);
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
108
|
```
|
|
@@ -118,7 +118,7 @@ try {
|
|
|
118
118
|
- `orderBy: 'createTime desc'` → Use `orderBy: [{ createTime: 'desc' }]`
|
|
119
119
|
- `where: { name: 'LIKE %keyword%' }` → Use `where: { name: { $contain: 'keyword' } }`
|
|
120
120
|
- SQL: Wrong format → Use `client.sql.execute({ sqlCode, params })`
|
|
121
|
-
-
|
|
121
|
+
- Backend Function: Wrong format → Use `client.bff.execute({ scriptName, params })`
|
|
122
122
|
- Filter: `getList()` → Use `filter()` (getList is deprecated)
|
|
123
123
|
|
|
124
124
|
### 2. MCP SQL Workflow (STRICT ORDER)
|
|
@@ -343,7 +343,7 @@ try {
|
|
|
343
343
|
}
|
|
344
344
|
}
|
|
345
345
|
|
|
346
|
-
// ✅ 正确:
|
|
346
|
+
// ✅ 正确:Backend Function API - 直接使用返回的业务数据
|
|
347
347
|
try {
|
|
348
348
|
const dashboard = await client.bff.execute({
|
|
349
349
|
scriptName: 'getUserDashboard',
|
|
@@ -775,7 +775,7 @@ import {
|
|
|
775
775
|
|
|
776
776
|
**注意**:
|
|
777
777
|
- 所有方法返回的都是 `data`(业务数据层),不是完整的响应对象
|
|
778
|
-
- SQL 和
|
|
778
|
+
- SQL 和 Backend Function 的返回值需要应用层检查业务状态(如 `execSuccess`)
|
|
779
779
|
|
|
780
780
|
### 记住
|
|
781
781
|
|
|
@@ -805,7 +805,7 @@ import {
|
|
|
805
805
|
- **使用方式**:`client.sql.execute({ sqlCode, params })` - 对象参数格式
|
|
806
806
|
- **返回值检查**:应用层必须检查 `execSuccess` 状态
|
|
807
807
|
|
|
808
|
-
####
|
|
808
|
+
#### Backend Function API
|
|
809
809
|
- **使用方式**:`client.bff.execute({ scriptName, params })` - 直接客户端访问
|
|
810
810
|
- **返回值**:直接是业务数据对象,无需检查 `execSuccess`
|
|
811
811
|
|
|
@@ -869,7 +869,7 @@ import {
|
|
|
869
869
|
### v2.1.0 (2025-01-24)
|
|
870
870
|
- ✨ **完善 SDK 返回值行为说明** - 明确 SDK 返回 `data`(业务数据层),应用层负责检查业务状态
|
|
871
871
|
- ✨ **补充 SQL API 详细说明** - 明确返回值结构和应用层职责,添加类型安全示例
|
|
872
|
-
- ✨ **补充
|
|
872
|
+
- ✨ **补充 Backend Function API 详细说明** - 添加完整的使用示例和错误处理
|
|
873
873
|
- ✨ **补充 Filter API 逻辑操作符** - 添加 `$and`、`$or` 嵌套组合示例
|
|
874
874
|
- ✨ **新增 API 集成指南** - 添加 `lovrabet api pull` 使用说明
|
|
875
875
|
- 📝 更新"快速参考"和"记住"部分,明确 SDK 返回值结构和使用方式
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: lovrabet
|
|
3
|
-
description: 当用户请求涉及 Lovrabet/云兔/yuntoo 平台的数据集查询、SQL 创建、
|
|
3
|
+
description: 当用户请求涉及 Lovrabet/云兔/yuntoo 平台的数据集查询、SQL 创建、Backend Function 开发时使用。触发词:数据集、数据表、自定义 SQL、filter、sql.execute、bff.execute、get_dataset_detail、validate_sql_content、save_or_update_custom_sql、save_or_update_bff_script、@lovrabet/sdk、MCP SQL 工作流、多表关联、lovrabet 开发。
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Lovrabet 开发工作流(路由指南)
|
|
@@ -15,8 +15,8 @@ Lovrabet 中文名为**云兔**,也常写作 **yuntoo**。本文档是**路由
|
|
|
15
15
|
|---------|--------------|
|
|
16
16
|
| 创建 / 修改 / 保存 SQL | `.lovrabet/skill/guides/02-mcp-sql-workflow.md` |
|
|
17
17
|
| 涉及 SQL 本地落盘、目录规范 | `.lovrabet/skill/guides/07-sql-creation-workflow.md` |
|
|
18
|
-
| 创建 / 修改 / 保存
|
|
19
|
-
| 涉及
|
|
18
|
+
| 创建 / 修改 / 保存 Backend Function 脚本 | `.lovrabet/skill/guides/08-bff-creation-workflow.md` |
|
|
19
|
+
| 涉及 Backend Function 本地落盘、目录规范 | `.lovrabet/skill/guides/05-backend-function.md` |
|
|
20
20
|
| 遇到冲突提示 / blocked / confirmationRequired | `.lovrabet/skill/guides/09-conflict-detection.md` |
|
|
21
21
|
| 使用 TypeScript SDK / filter / sql.execute | `.lovrabet/skill/guides/01-typescript-sdk.md` |
|
|
22
22
|
| 数据接口设计、多表关联、性能优化 | `.lovrabet/skill/guides/06-data-api-guidelines.md` |
|
|
@@ -49,8 +49,8 @@ Lovrabet 中文名为**云兔**,也常写作 **yuntoo**。本文档是**路由
|
|
|
49
49
|
| 获取数据集详情 | `get_dataset_detail` |
|
|
50
50
|
| 执行已保存的 SQL | `execute_custom_sql` |
|
|
51
51
|
| 列出 SQL 查询 | `list_sql_queries` |
|
|
52
|
-
| 列出
|
|
53
|
-
| 获取
|
|
52
|
+
| 列出 Backend Function 脚本 | `list_bff_scripts` |
|
|
53
|
+
| 获取 Backend Function 详情 | `get_bff_script_info` |
|
|
54
54
|
| 生成 SDK 代码 | `generate_sdk_code` |
|
|
55
55
|
| 生成 SQL 代码 | `generate_sql_code` |
|
|
56
56
|
|
|
@@ -62,11 +62,11 @@ Lovrabet 中文名为**云兔**,也常写作 **yuntoo**。本文档是**路由
|
|
|
62
62
|
|------|----------------|------|
|
|
63
63
|
| 验证 SQL 语法 | `validate_sql_content` | 静态语法 + 可选 schema 验证 |
|
|
64
64
|
| 保存 SQL | `save_or_update_custom_sql` | 通过 toolbox,自动冲突检测 |
|
|
65
|
-
| 保存
|
|
65
|
+
| 保存 Backend Function | `save_or_update_bff_script` | 通过 toolbox,自动冲突检测 |
|
|
66
66
|
|
|
67
67
|
**冲突处理**:保存工具返回 `blocked: true`(例如他人为最后提交者)时,告知用户在平台上手动处理,**不要**自动重试同一保存。`confirmationRequired` / `nextAction` 等字段以工具返回为准;细节见 `09-conflict-detection.md`。
|
|
68
68
|
|
|
69
|
-
**
|
|
69
|
+
**Backend Function 写入类 MCP**:若看不到 `list_bff_scripts` / `save_or_update_bff_script`,请在数据集 MCP 的启动参数中加入 `--enable-bff-save`,旧名 `--dangerously-bff-save` 仍可用;详见 `11-bff-sync-workflow.md`。
|
|
70
70
|
|
|
71
71
|
## 快速决策树
|
|
72
72
|
|
|
@@ -84,9 +84,9 @@ Lovrabet 中文名为**云兔**,也常写作 **yuntoo**。本文档是**路由
|
|
|
84
84
|
│ ├─ 4. 用 MCP: save_or_update_custom_sql(保存,含冲突检测)
|
|
85
85
|
│ └─ 5. 用 MCP: execute_custom_sql(测试)
|
|
86
86
|
│
|
|
87
|
-
├─ 创建/修改
|
|
87
|
+
├─ 创建/修改 Backend Function?
|
|
88
88
|
│ ├─ 0. 读取 .lovrabet/skill/guides/08-bff-creation-workflow.md(必须)
|
|
89
|
-
│ ├─ 1. 生成
|
|
89
|
+
│ ├─ 1. 生成 Backend Function 代码
|
|
90
90
|
│ └─ 2. 用 MCP: save_or_update_bff_script(保存,含冲突检测)
|
|
91
91
|
│
|
|
92
92
|
├─ 生成 SDK 代码?
|
|
@@ -106,11 +106,11 @@ Lovrabet 中文名为**云兔**,也常写作 **yuntoo**。本文档是**路由
|
|
|
106
106
|
| 创建自定义 SQL(MCP 模式) | `.lovrabet/skill/guides/02-mcp-sql-workflow.md` |
|
|
107
107
|
| React 前端开发 | `.lovrabet/skill/guides/03-frontend-development.md` |
|
|
108
108
|
| 故障排查 | `.lovrabet/skill/guides/04-troubleshooting.md` |
|
|
109
|
-
| 创建
|
|
109
|
+
| 创建 Backend Function 脚本 | `.lovrabet/skill/guides/05-backend-function.md` |
|
|
110
110
|
| 数据接口规范 | `.lovrabet/skill/guides/06-data-api-guidelines.md` |
|
|
111
111
|
| SQL 创建工作流 | `.lovrabet/skill/guides/07-sql-creation-workflow.md` |
|
|
112
|
-
|
|
|
113
|
-
|
|
|
112
|
+
| Backend Function 创建工作流 | `.lovrabet/skill/guides/08-bff-creation-workflow.md` |
|
|
113
|
+
| Backend Function 同步与协作(平台脚本列表、保存) | `.lovrabet/skill/guides/11-bff-sync-workflow.md` |
|
|
114
114
|
| 冲突检测和处理 | `.lovrabet/skill/guides/09-conflict-detection.md` |
|
|
115
115
|
| 团队协作最佳实践 | `.lovrabet/skill/guides/10-best-practices.md` |
|
|
116
116
|
|