@lovrabet/rabetbase-cli 2.4.6 → 2.4.7-beta.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.
Files changed (297) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/fetch-model-list.js +1 -1
  3. package/lib/api/generate-api-file.js +1 -1
  4. package/lib/auth/auth-server-ui.js +1 -1
  5. package/lib/auth/auth-server.js +1 -1
  6. package/lib/auth/constant.js +1 -1
  7. package/lib/auth/get-cookie.js +1 -1
  8. package/lib/auth/get-session-user.js +1 -1
  9. package/lib/auth/is-session-valid.js +1 -1
  10. package/lib/auth/login-success-html.js +1 -1
  11. package/lib/auth/logout.js +1 -1
  12. package/lib/cli-flags.js +1 -1
  13. package/lib/cli.js +1 -1
  14. package/lib/commands/api/generate.js +1 -1
  15. package/lib/commands/api/index.js +1 -1
  16. package/lib/commands/api/list.js +1 -1
  17. package/lib/commands/api/pull.js +1 -1
  18. package/lib/commands/api/shared.js +1 -1
  19. package/lib/commands/app/index.js +1 -1
  20. package/lib/commands/app/list.js +1 -1
  21. package/lib/commands/app/members-list.js +1 -1
  22. package/lib/commands/app/remote-directory.js +1 -1
  23. package/lib/commands/app/shared.js +1 -1
  24. package/lib/commands/app-config/delete.js +1 -1
  25. package/lib/commands/app-config/get.js +1 -1
  26. package/lib/commands/app-config/index.js +1 -1
  27. package/lib/commands/app-config/list.js +1 -1
  28. package/lib/commands/app-config/set.js +1 -1
  29. package/lib/commands/app-config/shared.js +1 -1
  30. package/lib/commands/auth/index.js +1 -1
  31. package/lib/commands/bff/create.js +1 -1
  32. package/lib/commands/bff/delete.js +1 -1
  33. package/lib/commands/bff/detail.js +1 -1
  34. package/lib/commands/bff/index.js +1 -1
  35. package/lib/commands/bff/list.js +1 -1
  36. package/lib/commands/bff/pull.js +1 -1
  37. package/lib/commands/bff/push.js +1 -1
  38. package/lib/commands/bff/status.js +1 -1
  39. package/lib/commands/cli-skill/index.js +1 -1
  40. package/lib/commands/cli-update.js +1 -1
  41. package/lib/commands/codegen/index.js +1 -1
  42. package/lib/commands/codegen/sdk.js +1 -1
  43. package/lib/commands/codegen/sql.js +1 -1
  44. package/lib/commands/common/app-registry.js +1 -1
  45. package/lib/commands/common/app-selector.js +1 -1
  46. package/lib/commands/common/async-task.js +1 -1
  47. package/lib/commands/common/dry-run.js +1 -1
  48. package/lib/commands/common/flags.js +1 -1
  49. package/lib/commands/common/local-file.js +1 -1
  50. package/lib/commands/common/validate.js +1 -1
  51. package/lib/commands/config/get.js +1 -1
  52. package/lib/commands/config/index.js +1 -1
  53. package/lib/commands/config/list.js +1 -1
  54. package/lib/commands/config/set.js +1 -1
  55. package/lib/commands/config/shared.js +1 -1
  56. package/lib/commands/data/filter.js +1 -1
  57. package/lib/commands/data/getOne.js +1 -1
  58. package/lib/commands/data/index.js +1 -1
  59. package/lib/commands/data/shared.js +1 -1
  60. package/lib/commands/dataset/business-group-update.js +1 -1
  61. package/lib/commands/dataset/business-groups.js +1 -1
  62. package/lib/commands/dataset/capability.js +1 -1
  63. package/lib/commands/dataset/delete.js +1 -1
  64. package/lib/commands/dataset/detail.js +1 -1
  65. package/lib/commands/dataset/extend-update.js +1 -1
  66. package/lib/commands/dataset/field-update.js +1 -1
  67. package/lib/commands/dataset/generate.js +1 -1
  68. package/lib/commands/dataset/index.js +1 -1
  69. package/lib/commands/dataset/list.js +1 -1
  70. package/lib/commands/dataset/operations.js +1 -1
  71. package/lib/commands/dataset/relation-audit.js +1 -1
  72. package/lib/commands/dataset/relation-create.js +1 -1
  73. package/lib/commands/dataset/relation-delete.js +1 -1
  74. package/lib/commands/dataset/relation-shared.js +1 -1
  75. package/lib/commands/dataset/relation-update.js +1 -1
  76. package/lib/commands/dataset/relations.js +1 -1
  77. package/lib/commands/dataset/rename.js +1 -1
  78. package/lib/commands/dataset/restore.js +1 -1
  79. package/lib/commands/db/analysis-batching.js +1 -1
  80. package/lib/commands/db/analyze-batch-plan.js +1 -1
  81. package/lib/commands/db/analyze-cancel.js +1 -1
  82. package/lib/commands/db/analyze-start.js +1 -1
  83. package/lib/commands/db/analyze-status.js +1 -1
  84. package/lib/commands/db/create.js +1 -1
  85. package/lib/commands/db/delete.js +1 -1
  86. package/lib/commands/db/detail.js +1 -1
  87. package/lib/commands/db/diff-refresh-start.js +1 -1
  88. package/lib/commands/db/diff-refresh-status.js +1 -1
  89. package/lib/commands/db/diff.js +1 -1
  90. package/lib/commands/db/index.js +1 -1
  91. package/lib/commands/db/list.js +1 -1
  92. package/lib/commands/db/shared.js +1 -1
  93. package/lib/commands/db/tables.js +1 -1
  94. package/lib/commands/db/test.js +1 -1
  95. package/lib/commands/db/update.js +1 -1
  96. package/lib/commands/doctor.js +1 -1
  97. package/lib/commands/file/index.js +1 -1
  98. package/lib/commands/init/index.js +1 -1
  99. package/lib/commands/issue/index.js +1 -1
  100. package/lib/commands/issue/nudge.js +1 -1
  101. package/lib/commands/issue/report.js +1 -1
  102. package/lib/commands/issue/shared.js +1 -1
  103. package/lib/commands/kb/create.js +1 -1
  104. package/lib/commands/kb/delete.js +1 -1
  105. package/lib/commands/kb/detail.js +1 -1
  106. package/lib/commands/kb/index.js +1 -1
  107. package/lib/commands/kb/list.js +1 -1
  108. package/lib/commands/kb/search.d.ts +2 -0
  109. package/lib/commands/kb/search.js +1 -0
  110. package/lib/commands/kb/shared.js +1 -1
  111. package/lib/commands/kb/update.js +1 -1
  112. package/lib/commands/logs/index.js +1 -1
  113. package/lib/commands/menu/asset-update.js +1 -1
  114. package/lib/commands/menu/delete.js +1 -1
  115. package/lib/commands/menu/external-link-create.js +1 -1
  116. package/lib/commands/menu/external-link-update.js +1 -1
  117. package/lib/commands/menu/group-create.js +1 -1
  118. package/lib/commands/menu/group-update.js +1 -1
  119. package/lib/commands/menu/index.js +1 -1
  120. package/lib/commands/menu/list.js +1 -1
  121. package/lib/commands/menu/move.js +1 -1
  122. package/lib/commands/menu/regroup-start.js +1 -1
  123. package/lib/commands/menu/rename.js +1 -1
  124. package/lib/commands/menu/shared/compare-table.js +1 -1
  125. package/lib/commands/menu/shared/delete-plan.js +1 -1
  126. package/lib/commands/menu/shared/facts.js +1 -1
  127. package/lib/commands/menu/shared/index.js +1 -1
  128. package/lib/commands/menu/shared/inquirer.js +1 -1
  129. package/lib/commands/menu/shared/local-pages.js +1 -1
  130. package/lib/commands/menu/shared/logic.js +1 -1
  131. package/lib/commands/menu/shared/mutations.js +1 -1
  132. package/lib/commands/menu/shared/service.js +1 -1
  133. package/lib/commands/menu/shared/sync-core.js +1 -1
  134. package/lib/commands/menu/shared/update-core.js +1 -1
  135. package/lib/commands/menu/shared/valid-url.js +1 -1
  136. package/lib/commands/menu/sync.js +1 -1
  137. package/lib/commands/menu/visibility-update.js +1 -1
  138. package/lib/commands/notification/config-create.js +1 -1
  139. package/lib/commands/notification/config-delete.js +1 -1
  140. package/lib/commands/notification/config-list.js +1 -1
  141. package/lib/commands/notification/config-update.js +1 -1
  142. package/lib/commands/notification/index.js +1 -1
  143. package/lib/commands/notification/shared.js +1 -1
  144. package/lib/commands/ocr/index.js +1 -1
  145. package/lib/commands/page/create.js +1 -1
  146. package/lib/commands/page/custom/detail.js +1 -1
  147. package/lib/commands/page/custom/list.js +1 -1
  148. package/lib/commands/page/custom/publish.js +1 -1
  149. package/lib/commands/page/custom/shared.js +1 -1
  150. package/lib/commands/page/custom/syntax.js +1 -1
  151. package/lib/commands/page/custom/template.js +1 -1
  152. package/lib/commands/page/custom/update.js +1 -1
  153. package/lib/commands/page/data-list-status.js +1 -1
  154. package/lib/commands/page/generate-start.js +1 -1
  155. package/lib/commands/page/generate-status.js +1 -1
  156. package/lib/commands/page/index.js +1 -1
  157. package/lib/commands/page/pull.js +1 -1
  158. package/lib/commands/page/push.js +1 -1
  159. package/lib/commands/page/relation-audit.js +1 -1
  160. package/lib/commands/page/restore.js +1 -1
  161. package/lib/commands/page/shared.js +1 -1
  162. package/lib/commands/page/sync.js +1 -1
  163. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  164. package/lib/commands/project/create/format-elapsed.js +1 -1
  165. package/lib/commands/project/create/main.js +1 -1
  166. package/lib/commands/project/create/materialize-project-template.js +1 -1
  167. package/lib/commands/project/create/project-name.js +1 -1
  168. package/lib/commands/project/create/project-template-archive.js +1 -1
  169. package/lib/commands/project/create/project-template-path.js +1 -1
  170. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  171. package/lib/commands/project/create/use-format-code.js +1 -1
  172. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  173. package/lib/commands/project/index.js +1 -1
  174. package/lib/commands/project/upgrade.js +1 -1
  175. package/lib/commands/registry.js +1 -1
  176. package/lib/commands/role/delete.js +1 -1
  177. package/lib/commands/role/detail.js +1 -1
  178. package/lib/commands/role/index.js +1 -1
  179. package/lib/commands/role/list.js +1 -1
  180. package/lib/commands/role/shared.js +1 -1
  181. package/lib/commands/role/update.js +1 -1
  182. package/lib/commands/role/user-add.js +1 -1
  183. package/lib/commands/role/user-remove.js +1 -1
  184. package/lib/commands/role/user-resolve.js +1 -1
  185. package/lib/commands/run/index.js +1 -1
  186. package/lib/commands/schema.js +1 -1
  187. package/lib/commands/sql/create.js +1 -1
  188. package/lib/commands/sql/delete.js +1 -1
  189. package/lib/commands/sql/detail.js +1 -1
  190. package/lib/commands/sql/exec.js +1 -1
  191. package/lib/commands/sql/index.js +1 -1
  192. package/lib/commands/sql/list.js +1 -1
  193. package/lib/commands/sql/pull.js +1 -1
  194. package/lib/commands/sql/push.js +1 -1
  195. package/lib/commands/sql/shared.js +1 -1
  196. package/lib/commands/sql/status.js +1 -1
  197. package/lib/commands/sql/validate.js +1 -1
  198. package/lib/commands/task/index.js +1 -1
  199. package/lib/commands/task/status.js +1 -1
  200. package/lib/commands/tenant/index.js +1 -1
  201. package/lib/commands/tenant/members-list.js +1 -1
  202. package/lib/commands/tenant/shared.js +1 -1
  203. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  204. package/lib/commands/user-account/index.js +1 -1
  205. package/lib/commands/workspace/add.js +1 -1
  206. package/lib/commands/workspace/index.js +1 -1
  207. package/lib/commands/workspace/remove.js +1 -1
  208. package/lib/config/schema.js +1 -1
  209. package/lib/constant/cdn.js +1 -1
  210. package/lib/constant/cli.js +1 -1
  211. package/lib/constant/defaults.js +1 -1
  212. package/lib/constant/domain.js +1 -1
  213. package/lib/constant/env.js +1 -1
  214. package/lib/constant/output.js +1 -1
  215. package/lib/constant/paths.js +1 -1
  216. package/lib/constant/risk.js +1 -1
  217. package/lib/context/app-resolver.js +1 -1
  218. package/lib/context/auth-resolver.js +1 -1
  219. package/lib/context/config-loader.js +1 -1
  220. package/lib/context.js +1 -1
  221. package/lib/core/alias-resolver.js +1 -1
  222. package/lib/core/api-client.d.ts +16 -0
  223. package/lib/core/api-client.js +1 -1
  224. package/lib/core/bff/config.js +1 -1
  225. package/lib/core/bff/file-system.js +1 -1
  226. package/lib/core/bff/hash.js +1 -1
  227. package/lib/core/bff/lock.js +1 -1
  228. package/lib/core/bff/utils.js +1 -1
  229. package/lib/core/db-resolver.js +1 -1
  230. package/lib/core/page/file-system.js +1 -1
  231. package/lib/core/page/hash.js +1 -1
  232. package/lib/core/page/lock.js +1 -1
  233. package/lib/core/sql-index-auditor.js +1 -1
  234. package/lib/core/sql-sync/config.js +1 -1
  235. package/lib/core/sql-sync/file-system.js +1 -1
  236. package/lib/core/sql-sync/hash.js +1 -1
  237. package/lib/core/sql-sync/lock.js +1 -1
  238. package/lib/core/sql-sync/utils.js +1 -1
  239. package/lib/core/sql-validator.js +1 -1
  240. package/lib/errors.js +1 -1
  241. package/lib/framework/build-all-flags.js +1 -1
  242. package/lib/framework/error-output.js +1 -1
  243. package/lib/framework/explicit-yes.js +1 -1
  244. package/lib/framework/flags.js +1 -1
  245. package/lib/framework/help.js +1 -1
  246. package/lib/framework/index.js +1 -1
  247. package/lib/framework/output.js +1 -1
  248. package/lib/framework/response.js +1 -1
  249. package/lib/framework/runner-alias.js +1 -1
  250. package/lib/framework/runner.js +1 -1
  251. package/lib/framework/schema-export.js +1 -1
  252. package/lib/framework/types.js +1 -1
  253. package/lib/generated/build-info.d.ts +4 -4
  254. package/lib/generated/build-info.js +1 -1
  255. package/lib/help.js +1 -1
  256. package/lib/postinstall.js +1 -1
  257. package/lib/runtime/confirmation.js +1 -1
  258. package/lib/runtime/event.js +1 -1
  259. package/lib/runtime/index.js +1 -1
  260. package/lib/runtime/queue.js +1 -1
  261. package/lib/runtime/resolve.js +1 -1
  262. package/lib/skills/builtin-skill.js +1 -1
  263. package/lib/skills/main.js +1 -1
  264. package/lib/skills/npx-skills-add.js +1 -1
  265. package/lib/skills/skill-presence.js +1 -1
  266. package/lib/telemetry/cli-command-trace.js +1 -1
  267. package/lib/telemetry/cli-help-trace.js +1 -1
  268. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  269. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  270. package/lib/telemetry/send-cli-trace-log.js +1 -1
  271. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  272. package/lib/utils/ai_config.js +1 -1
  273. package/lib/utils/apply-jq-filter.js +1 -1
  274. package/lib/utils/cdn-config.js +1 -1
  275. package/lib/utils/check-sdk-version.js +1 -1
  276. package/lib/utils/cli-version-check.js +1 -1
  277. package/lib/utils/cli-version-policy.js +1 -1
  278. package/lib/utils/config.js +1 -1
  279. package/lib/utils/entity-with-id.js +1 -1
  280. package/lib/utils/file-utils.js +1 -1
  281. package/lib/utils/guides-cdn.js +1 -1
  282. package/lib/utils/http-client.js +1 -1
  283. package/lib/utils/is-non-interactive.js +1 -1
  284. package/lib/utils/logger.js +1 -1
  285. package/lib/utils/params.js +1 -1
  286. package/lib/utils/platform.js +1 -1
  287. package/lib/utils/rules-cdn.js +1 -1
  288. package/lib/utils/sleep.js +1 -1
  289. package/lib/utils/template-replacer.js +1 -1
  290. package/lib/utils/update-notice.js +1 -1
  291. package/lib/utils/version.js +1 -1
  292. package/lib/utils/with-active-cookie.js +1 -1
  293. package/lib/utils/write-cli-side-channel.js +1 -1
  294. package/package.json +1 -1
  295. package/skills/rabetbase/SKILL.md +4 -4
  296. package/skills/rabetbase/references/rabetbase-kb.md +13 -3
  297. package/skills/rabetbase.manifest.json +3 -3
@@ -1 +1 @@
1
- (function(_0x5225aa,_0x5d73b6){const _0x51bd45=a291_0x10ed,_0x447e8f=_0x5225aa();while(!![]){try{const _0x2daaa2=-parseInt(_0x51bd45(0x95))/0x1+-parseInt(_0x51bd45(0x9f))/0x2+-parseInt(_0x51bd45(0x97))/0x3*(parseInt(_0x51bd45(0x93))/0x4)+parseInt(_0x51bd45(0x8e))/0x5+parseInt(_0x51bd45(0xab))/0x6*(-parseInt(_0x51bd45(0x96))/0x7)+parseInt(_0x51bd45(0xa2))/0x8+-parseInt(_0x51bd45(0xa4))/0x9*(-parseInt(_0x51bd45(0x92))/0xa);if(_0x2daaa2===_0x5d73b6)break;else _0x447e8f['push'](_0x447e8f['shift']());}catch(_0x1870ef){_0x447e8f['push'](_0x447e8f['shift']());}}}(a291_0x21e3,0x861e0));import{mkdir,readFile,writeFile}from'node:fs/promises';import{homedir}from'node:os';import{dirname,join}from'node:path';import a291_0x442dca from'semver';import{CLI_BIN_NAME,NPM_PACKAGE_NAME}from'../constant/cli.js';import{getCliVersionPolicy}from'../utils/cli-version-policy.js';function a291_0x21e3(){const _0x3bc5a4=['valid','toLowerCase','gte','629528SpvhPh','checkedAt','number','2754264eaVfac','utf8','14562657vUegdl','lastNotifiedAt','stableVersion','lastNotifiedVersion','latest',',\x20run:\x20','rabetbase-cli','108OeMSRp','now','3916550CSuyCK','\x20update','stringify','trim','10fdnwqx','204152MrAzqm','parse','340086erVqbj','182651JUKnJO','63GATjIP','https://www.npmjs.com/package/','/v/','object','true'];a291_0x21e3=function(){return _0x3bc5a4;};return a291_0x21e3();}import{getCliVersion}from'../utils/version.js';const UPDATE_CHECK_TTL_MS=0xc*0x3c*0x3c*0x3e8,UPDATE_NOTICE_TTL_MS=0x18*0x3c*0x3c*0x3e8;function isUpdateNoticeDisabled(){const _0x34b296=a291_0x10ed,_0x24349b=process.env.RABETBASE_NO_UPDATE_NOTICE?.['trim']()[_0x34b296(0x9d)]();return _0x24349b==='1'||_0x24349b===_0x34b296(0x9b)||_0x24349b==='yes';}function cacheRoot(){return process.env.XDG_CACHE_HOME||process.env.LOCALAPPDATA||join(homedir(),'.cache');}export function getUpdateNoticeCachePath(){const _0x5d6177=a291_0x10ed;return join(cacheRoot(),_0x5d6177(0xaa),'update-check.json');}async function readUpdateNoticeCache(){const _0x37e369=a291_0x10ed;try{const _0x468c90=await readFile(getUpdateNoticeCachePath(),_0x37e369(0xa3)),_0xb96373=JSON[_0x37e369(0x94)](_0x468c90);if(!_0xb96373||typeof _0xb96373!==_0x37e369(0x9a))return{};return _0xb96373;}catch{return{};}}function a291_0x10ed(_0x20babb,_0x1ae76e){_0x20babb=_0x20babb-0x8d;const _0x21e3d9=a291_0x21e3();let _0x10ed53=_0x21e3d9[_0x20babb];return _0x10ed53;}async function writeUpdateNoticeCache(_0x2205a8){const _0x1c3625=a291_0x10ed;try{const _0x2ae727=getUpdateNoticeCachePath();await mkdir(dirname(_0x2ae727),{'recursive':!![]}),await writeFile(_0x2ae727,JSON[_0x1c3625(0x90)](_0x2205a8,null,0x2)+'\x0a',_0x1c3625(0xa3));}catch{}}function isFreshCheck(_0x2f4afb,_0x5a0c6a){const _0x1ea384=a291_0x10ed;return typeof _0x2f4afb['checkedAt']==='number'&&_0x5a0c6a-_0x2f4afb[_0x1ea384(0xa0)]<UPDATE_CHECK_TTL_MS;}function isRecentlyNotified(_0x3c28de,_0xd3a436,_0x59a5f0){const _0x57255b=a291_0x10ed;return _0x3c28de[_0x57255b(0xa7)]===_0xd3a436&&typeof _0x3c28de[_0x57255b(0xa5)]===_0x57255b(0xa1)&&_0x59a5f0-_0x3c28de[_0x57255b(0xa5)]<UPDATE_NOTICE_TTL_MS;}export function buildNpmVersionUrl(_0x955f72){const _0x13db83=a291_0x10ed;return _0x13db83(0x98)+NPM_PACKAGE_NAME+_0x13db83(0x99)+_0x955f72;}export async function resolveLatestUpdateNotice(){const _0x51a9c0=a291_0x10ed;if(isUpdateNoticeDisabled())return null;try{const _0x46aca9=Date[_0x51a9c0(0x8d)](),_0x399072=getCliVersion(),_0x546122=await readUpdateNoticeCache();let _0x2160f4=isFreshCheck(_0x546122,_0x46aca9)?_0x546122[_0x51a9c0(0xa8)]?.[_0x51a9c0(0x91)]():undefined;if(!_0x2160f4&&!isFreshCheck(_0x546122,_0x46aca9)){const _0x4af82b=await getCliVersionPolicy();_0x2160f4=_0x4af82b?.[_0x51a9c0(0xa6)]?.[_0x51a9c0(0x91)]()||undefined,await writeUpdateNoticeCache({..._0x546122,'checkedAt':_0x46aca9,'latest':_0x2160f4,'failed':!_0x2160f4});}if(!_0x2160f4||!a291_0x442dca[_0x51a9c0(0x9c)](_0x399072)||!a291_0x442dca[_0x51a9c0(0x9c)](_0x2160f4))return null;if(a291_0x442dca[_0x51a9c0(0x9e)](_0x399072,_0x2160f4))return null;if(isRecentlyNotified(_0x546122,_0x2160f4,_0x46aca9))return null;const _0x437ea9=CLI_BIN_NAME+_0x51a9c0(0x8f);return await writeUpdateNoticeCache({..._0x546122,'checkedAt':isFreshCheck(_0x546122,_0x46aca9)?_0x546122[_0x51a9c0(0xa0)]:_0x46aca9,'latest':_0x2160f4,'failed':![],'lastNotifiedVersion':_0x2160f4,'lastNotifiedAt':_0x46aca9}),{'command':_0x437ea9,'current':_0x399072,'latest':_0x2160f4,'url':buildNpmVersionUrl(_0x2160f4),'message':CLI_BIN_NAME+'\x20'+_0x2160f4+'\x20available,\x20current\x20'+_0x399072+_0x51a9c0(0xa9)+_0x437ea9};}catch{return null;}}
1
+ (function(_0x3df725,_0x2e1d4d){const _0x429ef0=a292_0xd224,_0x350ed2=_0x3df725();while(!![]){try{const _0x55b721=parseInt(_0x429ef0(0xe1))/0x1+-parseInt(_0x429ef0(0xf0))/0x2*(parseInt(_0x429ef0(0xea))/0x3)+-parseInt(_0x429ef0(0xe3))/0x4+-parseInt(_0x429ef0(0xd5))/0x5*(-parseInt(_0x429ef0(0xee))/0x6)+-parseInt(_0x429ef0(0xdc))/0x7*(-parseInt(_0x429ef0(0xdf))/0x8)+parseInt(_0x429ef0(0xe4))/0x9+parseInt(_0x429ef0(0xd7))/0xa*(-parseInt(_0x429ef0(0xd8))/0xb);if(_0x55b721===_0x2e1d4d)break;else _0x350ed2['push'](_0x350ed2['shift']());}catch(_0x11571f){_0x350ed2['push'](_0x350ed2['shift']());}}}(a292_0x41d8,0x4dbd3));import{mkdir,readFile,writeFile}from'node:fs/promises';import{homedir}from'node:os';import{dirname,join}from'node:path';import a292_0x3331c1 from'semver';import{CLI_BIN_NAME,NPM_PACKAGE_NAME}from'../constant/cli.js';import{getCliVersionPolicy}from'../utils/cli-version-policy.js';import{getCliVersion}from'../utils/version.js';const UPDATE_CHECK_TTL_MS=0xc*0x3c*0x3c*0x3e8,UPDATE_NOTICE_TTL_MS=0x18*0x3c*0x3c*0x3e8;function isUpdateNoticeDisabled(){const _0x27df93=a292_0xd224,_0xc208a7=process.env.RABETBASE_NO_UPDATE_NOTICE?.[_0x27df93(0xdd)]()[_0x27df93(0xde)]();return _0xc208a7==='1'||_0xc208a7==='true'||_0xc208a7==='yes';}function a292_0x41d8(){const _0x10cef4=['776928gFmPcl','.cache','4DjGpto','update-check.json','latest','20MTTvMz','lastNotifiedAt','6640ZHiAsh','2233AMlOHX','stableVersion','/v/','stringify','7iluwbT','trim','toLowerCase','4978664xrELLJ','\x20available,\x20current\x20','31156arezfD','\x20update','576524AzdiTL','553581swYURm','https://www.npmjs.com/package/','utf8','checkedAt','parse','gte','953412kKTaRY','number','valid',',\x20run:\x20'];a292_0x41d8=function(){return _0x10cef4;};return a292_0x41d8();}function a292_0xd224(_0x1f1727,_0xb1f8b5){_0x1f1727=_0x1f1727-0xd5;const _0x41d84a=a292_0x41d8();let _0xd2244c=_0x41d84a[_0x1f1727];return _0xd2244c;}function cacheRoot(){const _0x1828b5=a292_0xd224;return process.env.XDG_CACHE_HOME||process.env.LOCALAPPDATA||join(homedir(),_0x1828b5(0xef));}export function getUpdateNoticeCachePath(){const _0xa5215=a292_0xd224;return join(cacheRoot(),'rabetbase-cli',_0xa5215(0xf1));}async function readUpdateNoticeCache(){const _0x20ab19=a292_0xd224;try{const _0x3c6d5a=await readFile(getUpdateNoticeCachePath(),_0x20ab19(0xe6)),_0x44728d=JSON[_0x20ab19(0xe8)](_0x3c6d5a);if(!_0x44728d||typeof _0x44728d!=='object')return{};return _0x44728d;}catch{return{};}}async function writeUpdateNoticeCache(_0x120aaf){const _0x3cc7a5=a292_0xd224;try{const _0xc20ff8=getUpdateNoticeCachePath();await mkdir(dirname(_0xc20ff8),{'recursive':!![]}),await writeFile(_0xc20ff8,JSON[_0x3cc7a5(0xdb)](_0x120aaf,null,0x2)+'\x0a',_0x3cc7a5(0xe6));}catch{}}function isFreshCheck(_0x4c564c,_0xc216a0){const _0x12bf05=a292_0xd224;return typeof _0x4c564c[_0x12bf05(0xe7)]===_0x12bf05(0xeb)&&_0xc216a0-_0x4c564c[_0x12bf05(0xe7)]<UPDATE_CHECK_TTL_MS;}function isRecentlyNotified(_0x3bfece,_0x457f38,_0x4d9b1b){const _0x27b17a=a292_0xd224;return _0x3bfece['lastNotifiedVersion']===_0x457f38&&typeof _0x3bfece[_0x27b17a(0xd6)]==='number'&&_0x4d9b1b-_0x3bfece[_0x27b17a(0xd6)]<UPDATE_NOTICE_TTL_MS;}export function buildNpmVersionUrl(_0xadf280){const _0x1a35be=a292_0xd224;return _0x1a35be(0xe5)+NPM_PACKAGE_NAME+_0x1a35be(0xda)+_0xadf280;}export async function resolveLatestUpdateNotice(){const _0x3bbf42=a292_0xd224;if(isUpdateNoticeDisabled())return null;try{const _0xac1eda=Date['now'](),_0xe907ed=getCliVersion(),_0x2688c4=await readUpdateNoticeCache();let _0x4b01d3=isFreshCheck(_0x2688c4,_0xac1eda)?_0x2688c4[_0x3bbf42(0xf2)]?.[_0x3bbf42(0xdd)]():undefined;if(!_0x4b01d3&&!isFreshCheck(_0x2688c4,_0xac1eda)){const _0x3c9f8a=await getCliVersionPolicy();_0x4b01d3=_0x3c9f8a?.[_0x3bbf42(0xd9)]?.['trim']()||undefined,await writeUpdateNoticeCache({..._0x2688c4,'checkedAt':_0xac1eda,'latest':_0x4b01d3,'failed':!_0x4b01d3});}if(!_0x4b01d3||!a292_0x3331c1[_0x3bbf42(0xec)](_0xe907ed)||!a292_0x3331c1['valid'](_0x4b01d3))return null;if(a292_0x3331c1[_0x3bbf42(0xe9)](_0xe907ed,_0x4b01d3))return null;if(isRecentlyNotified(_0x2688c4,_0x4b01d3,_0xac1eda))return null;const _0x4e8365=CLI_BIN_NAME+_0x3bbf42(0xe2);return await writeUpdateNoticeCache({..._0x2688c4,'checkedAt':isFreshCheck(_0x2688c4,_0xac1eda)?_0x2688c4[_0x3bbf42(0xe7)]:_0xac1eda,'latest':_0x4b01d3,'failed':![],'lastNotifiedVersion':_0x4b01d3,'lastNotifiedAt':_0xac1eda}),{'command':_0x4e8365,'current':_0xe907ed,'latest':_0x4b01d3,'url':buildNpmVersionUrl(_0x4b01d3),'message':CLI_BIN_NAME+'\x20'+_0x4b01d3+_0x3bbf42(0xe0)+_0xe907ed+_0x3bbf42(0xed)+_0x4e8365};}catch{return null;}}
@@ -1 +1 @@
1
- (function(_0x120b65,_0x57bb95){var _0x17c86e=a292_0x1e63,_0x5ac14f=_0x120b65();while(!![]){try{var _0x3a4cc1=parseInt(_0x17c86e(0x1ef))/0x1*(parseInt(_0x17c86e(0x1eb))/0x2)+-parseInt(_0x17c86e(0x1f1))/0x3+parseInt(_0x17c86e(0x1f4))/0x4+parseInt(_0x17c86e(0x1f5))/0x5*(parseInt(_0x17c86e(0x1f3))/0x6)+parseInt(_0x17c86e(0x1f2))/0x7+parseInt(_0x17c86e(0x1ed))/0x8*(parseInt(_0x17c86e(0x1f0))/0x9)+parseInt(_0x17c86e(0x1ec))/0xa*(-parseInt(_0x17c86e(0x1ee))/0xb);if(_0x3a4cc1===_0x57bb95)break;else _0x5ac14f['push'](_0x5ac14f['shift']());}catch(_0xf5b2cd){_0x5ac14f['push'](_0x5ac14f['shift']());}}}(a292_0x26a2,0x5da92));import{VERSION}from'../generated/build-info.js';function a292_0x26a2(){var _0x5dcfa9=['2738603qvYiTZ','3306UUZFlk','266704oWUzgy','5365DtdVNU','76886gArDHe','9054950KRQwfT','1966704DklStE','11llxXVT','5UZlkbo','9QaeLeD','594156dzgpzj'];a292_0x26a2=function(){return _0x5dcfa9;};return a292_0x26a2();}function a292_0x1e63(_0x368c70,_0xa8bbbe){_0x368c70=_0x368c70-0x1eb;var _0x26a266=a292_0x26a2();var _0x1e6329=_0x26a266[_0x368c70];return _0x1e6329;}export function getCliVersion(){return VERSION;}
1
+ (function(_0x735a4a,_0x43828e){var _0x489d4d=a293_0x5887,_0x51ac15=_0x735a4a();while(!![]){try{var _0x4fe352=parseInt(_0x489d4d(0x97))/0x1*(-parseInt(_0x489d4d(0x99))/0x2)+-parseInt(_0x489d4d(0x9b))/0x3*(parseInt(_0x489d4d(0x9a))/0x4)+-parseInt(_0x489d4d(0x9c))/0x5+parseInt(_0x489d4d(0x98))/0x6*(parseInt(_0x489d4d(0x95))/0x7)+-parseInt(_0x489d4d(0x96))/0x8+parseInt(_0x489d4d(0x9e))/0x9*(parseInt(_0x489d4d(0x94))/0xa)+parseInt(_0x489d4d(0x9d))/0xb;if(_0x4fe352===_0x43828e)break;else _0x51ac15['push'](_0x51ac15['shift']());}catch(_0x4af2b8){_0x51ac15['push'](_0x51ac15['shift']());}}}(a293_0x3741,0x55cf9));function a293_0x5887(_0x2f4491,_0x4b7848){_0x2f4491=_0x2f4491-0x94;var _0x3741e8=a293_0x3741();var _0x5887da=_0x3741e8[_0x2f4491];return _0x5887da;}import{VERSION}from'../generated/build-info.js';function a293_0x3741(){var _0x5b648f=['17864627vVNvaV','9dEnsDq','3109530mIZCRN','161XGKuqI','5376944YKSlDm','7oAoznG','128718NKowYo','187718PbhAHT','16pgRlwH','83595YmROug','3181785hKptLQ'];a293_0x3741=function(){return _0x5b648f;};return a293_0x3741();}export function getCliVersion(){return VERSION;}
@@ -1 +1 @@
1
- (function(_0xecf787,_0x1ae88a){var _0xa3ebfa=a293_0x2772,_0x488a55=_0xecf787();while(!![]){try{var _0x31d81c=parseInt(_0xa3ebfa(0x91))/0x1*(parseInt(_0xa3ebfa(0x99))/0x2)+parseInt(_0xa3ebfa(0x96))/0x3+-parseInt(_0xa3ebfa(0x98))/0x4+-parseInt(_0xa3ebfa(0x92))/0x5*(-parseInt(_0xa3ebfa(0x97))/0x6)+parseInt(_0xa3ebfa(0x94))/0x7+-parseInt(_0xa3ebfa(0x93))/0x8*(parseInt(_0xa3ebfa(0x90))/0x9)+-parseInt(_0xa3ebfa(0x95))/0xa;if(_0x31d81c===_0x1ae88a)break;else _0x488a55['push'](_0x488a55['shift']());}catch(_0x4a4901){_0x488a55['push'](_0x488a55['shift']());}}}(a293_0x5ced,0x2e6c0));function a293_0x2772(_0x35a0d7,_0x4040b8){_0x35a0d7=_0x35a0d7-0x90;var _0x5ced0b=a293_0x5ced();var _0x277218=_0x5ced0b[_0x35a0d7];return _0x277218;}import{setActiveCookie,clearActiveCookie}from'../core/api-client.js';export async function withActiveCookie(_0x7b99b0,_0xf471ee){setActiveCookie(_0x7b99b0);try{return await _0xf471ee();}finally{clearActiveCookie();}}function a293_0x5ced(){var _0xa61cdb=['819576XEwspY','103432FLheSS','432460DwAEix','840402dYqVAN','6zffaKM','577416xbBvOK','138802fNQWhW','9strvlw','1Kvbdzc','579400SLgnRB'];a293_0x5ced=function(){return _0xa61cdb;};return a293_0x5ced();}
1
+ (function(_0x3b326f,_0x2ff58c){var _0x4a9de1=a294_0x549d,_0x5a8b22=_0x3b326f();while(!![]){try{var _0x186a7a=parseInt(_0x4a9de1(0x8e))/0x1*(parseInt(_0x4a9de1(0x8f))/0x2)+parseInt(_0x4a9de1(0x95))/0x3*(parseInt(_0x4a9de1(0x99))/0x4)+parseInt(_0x4a9de1(0x98))/0x5*(parseInt(_0x4a9de1(0x90))/0x6)+parseInt(_0x4a9de1(0x96))/0x7+-parseInt(_0x4a9de1(0x97))/0x8*(-parseInt(_0x4a9de1(0x92))/0x9)+-parseInt(_0x4a9de1(0x93))/0xa*(-parseInt(_0x4a9de1(0x8d))/0xb)+-parseInt(_0x4a9de1(0x91))/0xc*(parseInt(_0x4a9de1(0x94))/0xd);if(_0x186a7a===_0x2ff58c)break;else _0x5a8b22['push'](_0x5a8b22['shift']());}catch(_0x1217c6){_0x5a8b22['push'](_0x5a8b22['shift']());}}}(a294_0x102e,0x473cc));function a294_0x549d(_0xe5612,_0x36f79d){_0xe5612=_0xe5612-0x8d;var _0x102e51=a294_0x102e();var _0x549d0d=_0x102e51[_0xe5612];return _0x549d0d;}import{setActiveCookie,clearActiveCookie}from'../core/api-client.js';export async function withActiveCookie(_0x2fb651,_0x4abffa){setActiveCookie(_0x2fb651);try{return await _0x4abffa();}finally{clearActiveCookie();}}function a294_0x102e(){var _0x2f9bce=['1106252KKfdsL','3538931LkJLXM','388904MeGJAh','2dFtMmV','90owcguA','11049612ZKepCM','397926IQHfVl','10JhunpZ','26VxeWYR','3ChWBSD','2716840vQoQpE','64ObqCyi','134790UroMUw'];a294_0x102e=function(){return _0x2f9bce;};return a294_0x102e();}
@@ -1 +1 @@
1
- function a294_0x1345(_0x51e4ed,_0x5dea17){_0x51e4ed=_0x51e4ed-0x1b4;var _0x351e67=a294_0x351e();var _0x134585=_0x351e67[_0x51e4ed];return _0x134585;}(function(_0x4462fd,_0x15c10c){var _0x776d9b=a294_0x1345,_0x1c61af=_0x4462fd();while(!![]){try{var _0x28a652=-parseInt(_0x776d9b(0x1b6))/0x1+-parseInt(_0x776d9b(0x1bb))/0x2+-parseInt(_0x776d9b(0x1bc))/0x3+-parseInt(_0x776d9b(0x1bd))/0x4+parseInt(_0x776d9b(0x1b9))/0x5+parseInt(_0x776d9b(0x1b8))/0x6*(-parseInt(_0x776d9b(0x1b4))/0x7)+-parseInt(_0x776d9b(0x1ba))/0x8*(-parseInt(_0x776d9b(0x1b5))/0x9);if(_0x28a652===_0x15c10c)break;else _0x1c61af['push'](_0x1c61af['shift']());}catch(_0x3607be){_0x1c61af['push'](_0x1c61af['shift']());}}}(a294_0x351e,0x69ef4));export function writeCliSideChannelLine(_0x4358c7){var _0x1ea8dd=a294_0x1345;process[_0x1ea8dd(0x1b7)]['write'](_0x4358c7+'\x0a');}function a294_0x351e(){var _0x4963bc=['1812730kuTyYl','8576120UVJofj','189420IZPSjp','1798353LIzebM','1041856sdJmTP','7NOpEbx','18nXexIb','612520xPVUnM','stderr','3033138UtnWSH'];a294_0x351e=function(){return _0x4963bc;};return a294_0x351e();}
1
+ (function(_0x339101,_0x26530e){var _0x444794=a295_0x2d74,_0x1fad7c=_0x339101();while(!![]){try{var _0x29b8d9=-parseInt(_0x444794(0xb9))/0x1+-parseInt(_0x444794(0xb7))/0x2*(-parseInt(_0x444794(0xb8))/0x3)+-parseInt(_0x444794(0xb6))/0x4*(-parseInt(_0x444794(0xb5))/0x5)+-parseInt(_0x444794(0xba))/0x6+parseInt(_0x444794(0xbb))/0x7+-parseInt(_0x444794(0xb1))/0x8*(-parseInt(_0x444794(0xb4))/0x9)+-parseInt(_0x444794(0xb0))/0xa;if(_0x29b8d9===_0x26530e)break;else _0x1fad7c['push'](_0x1fad7c['shift']());}catch(_0x4f509b){_0x1fad7c['push'](_0x1fad7c['shift']());}}}(a295_0x2272,0x9ee74));function a295_0x2272(){var _0x2e1f14=['stderr','write','45FIglHE','20805aoZrRN','796feCexO','5752SwChnL','1284jgYxxa','1000057JzsSrO','6815292qpfJct','5991118OxUhSN','13613790kCpXlE','1973352tjOGfK'];a295_0x2272=function(){return _0x2e1f14;};return a295_0x2272();}function a295_0x2d74(_0x4be80f,_0x15ca85){_0x4be80f=_0x4be80f-0xb0;var _0x2272b6=a295_0x2272();var _0x2d74f5=_0x2272b6[_0x4be80f];return _0x2d74f5;}export function writeCliSideChannelLine(_0x347c83){var _0x598b5e=a295_0x2d74;process[_0x598b5e(0xb2)][_0x598b5e(0xb3)](_0x347c83+'\x0a');}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lovrabet/rabetbase-cli",
3
- "version": "2.4.6",
3
+ "version": "2.4.7-beta.1",
4
4
  "description": "Developer CLI for Lovrabet apps, datasets, pages, SQL, BFF, database connections, skills, and AI agent workflows.",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "keywords": [
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: rabetbase
3
- version: 2.4.6
4
- description: "Lovrabet 开发工作流 CLI — 通过 rabetbase 命令管理数据集、数据库连接(dblink)、数据列表页(Data List Page)、自定义页面(Custom Page)、SQL 查询、BFF 脚本、通知配置、菜单事实读取与同步、开发角色与协作者、应用文件、面向票证类业务材料文字与结构化字段提取的 OCR、代码生成,以及平台问题上报。触发词:数据集、数据表、dataset relation-audit、dataset delete、dataset restore、废弃数据集、恢复数据集、dataset rename、dataset field-update、dataset extend-update、dataset business-groups、dataset business-group-update、businessGroup、字段对象更新、doType、options、数据列表页、Data List Page、自定义页面、Custom Page、page create、page custom-list、page custom-detail、page custom-update、page custom-publish、page generate-start、page generate-status、page relation-audit、page sync、page pull、page push、page restore、恢复已删除页面、dblink、数据库连接、schema 分析、db list、db detail、db create、db update、db delete、db test、db tables、db diff、db diff --view all、db diff-refresh-start、db diff-refresh-status、db analyze-batch-plan、db analyze-start、analyze-cancel、analyze-status、traceId、自定义 SQL、sql.execute、bff.execute、BF 消息通知、BFF 消息通知、Backend Function 消息通知、notification config-list、EMAIL configCode、通知配置、notification.send、get_dataset_detail、validate_sql_content、save_or_update_custom_sql、@lovrabet/sdk、lovrabet 开发、rabetbase、filter、codegen、init、appcode、app list、app members-list、tenant members-list、应用人员列表、租户人员列表、workspace、workspace init、workspace use、workspace add、workspace remove、多应用、默认应用、menu list、menu visibility-update、菜单显示、菜单隐藏、visible、menu external-link-create、menu external-link-update、menu rename、菜单改名、外链菜单创建、外链 URL 更新、菜单异常审计、菜单手动删除清单、menu sync、menu asset-update、菜单资源更新、menu move、菜单移动、开发角色、开发协作者、role、role list、role user-add、role user-remove、user-resolve、加入开发者、ADMIN、DEV、OWNER、CUSTOM、project create、project upgrade、schema、jq、compress、file upload、file query-url、ocr recognize、文件上传、OCR 识别、票证文字提取、票证字段提取、发票识别、票据识别、证照识别、长期链接、issue report、平台问题、platform issue、问题上报、user-account dingding-sandbox-bind、钉钉沙箱账号绑定。"
3
+ version: 2.4.7-beta.1
4
+ description: "Lovrabet 开发工作流 CLI — 通过 rabetbase 命令管理数据集、数据库连接(dblink)、数据列表页(Data List Page)、自定义页面(Custom Page)、SQL 查询、BFF 脚本、通知配置、企业知识库、菜单事实读取与同步、开发角色与协作者、应用文件、面向票证类业务材料文字与结构化字段提取的 OCR、代码生成,以及平台问题上报。触发词:数据集、数据表、dataset relation-audit、dataset delete、dataset restore、废弃数据集、恢复数据集、dataset rename、dataset field-update、dataset extend-update、dataset business-groups、dataset business-group-update、businessGroup、字段对象更新、doType、options、数据列表页、Data List Page、自定义页面、Custom Page、page create、page custom-list、page custom-detail、page custom-update、page custom-publish、page generate-start、page generate-status、page relation-audit、page sync、page pull、page push、page restore、恢复已删除页面、dblink、数据库连接、schema 分析、db list、db detail、db create、db update、db delete、db test、db tables、db diff、db diff --view all、db diff-refresh-start、db diff-refresh-status、db analyze-batch-plan、db analyze-start、analyze-cancel、analyze-status、traceId、自定义 SQL、sql.execute、bff.execute、BF 消息通知、BFF 消息通知、Backend Function 消息通知、notification config-list、EMAIL configCode、通知配置、notification.send、企业知识库、公司知识、公共知识、kb search、get_dataset_detail、validate_sql_content、save_or_update_custom_sql、@lovrabet/sdk、lovrabet 开发、rabetbase、filter、codegen、init、appcode、app list、app members-list、tenant members-list、应用人员列表、租户人员列表、workspace、workspace init、workspace use、workspace add、workspace remove、多应用、默认应用、menu list、menu visibility-update、菜单显示、菜单隐藏、visible、menu external-link-create、menu external-link-update、menu rename、菜单改名、外链菜单创建、外链 URL 更新、菜单异常审计、菜单手动删除清单、menu sync、menu asset-update、菜单资源更新、menu move、菜单移动、开发角色、开发协作者、role、role list、role user-add、role user-remove、user-resolve、加入开发者、ADMIN、DEV、OWNER、CUSTOM、project create、project upgrade、schema、jq、compress、file upload、file query-url、ocr recognize、文件上传、OCR 识别、票证文字提取、票证字段提取、发票识别、票据识别、证照识别、长期链接、issue report、平台问题、platform issue、问题上报、user-account dingding-sandbox-bind、钉钉沙箱账号绑定。"
5
5
  metadata:
6
6
  requires:
7
7
  bins: ["rabetbase"]
@@ -304,7 +304,7 @@ const result = await client.bff.execute<DashboardData>({
304
304
  | 修改配置文件 | [`rabetbase config set <key> <value>`](references/rabetbase-config.md) | 默认写项目;无项目配置且未 `--global` 会拒绝;`--global` 写 `~/.rabetbase.json` |
305
305
  | 列出配置 | [`rabetbase config list`](references/rabetbase-config.md) | 查看当前生效的配置 |
306
306
  | 管理运行态 app-config | [`rabetbase app-config list/get/set/delete`](references/rabetbase-app-config.md) | 运行态 app-config 管理面;默认不输出明文 value;`set` 为 `write`,`delete` 保持 `high-risk-write` |
307
- | 管理当前研发应用的企业知识库 | [`rabetbase kb list/detail/create/update/delete`](references/rabetbase-kb.md) | 标准解析 `--app/--appcode`;仅 company scope;`create/update` 为 `write`,`delete` 保持 `high-risk-write` |
307
+ | 管理和检索当前研发应用的企业知识库 | [`rabetbase kb list/detail/search/create/update/delete`](references/rabetbase-kb.md) | 管理仅 company scope;search 仅 COMPANY/PUBLIC;`create/update` 为 `write`,`delete` 保持 `high-risk-write` |
308
308
  | 查询或管理应用级通知配置 | [`rabetbase notification config-list`](references/rabetbase-notification-config-list.md) / [`rabetbase notification config-create`](references/rabetbase-notification-config-mutations.md) / [`rabetbase notification config-update`](references/rabetbase-notification-config-mutations.md) / [`rabetbase notification config-delete`](references/rabetbase-notification-config-mutations.md) | list 获取 BFF 所需 `configCode`;写入只接收单一敏感 JSON 源,先 dry-run;update/delete 必须 `--yes` |
309
309
  | 查看线上菜单事实 / 菜单异常审计 | [`rabetbase menu list`](references/rabetbase-menu-list.md) | 返回 DFS 事实、children/page、URL、最近更新人/时间和 snapshotHash;异常治理先读 [`menu-anomaly-manual-cleanup`](guides/menu-anomaly-manual-cleanup.md) |
310
310
  | 批量显示或隐藏菜单 | [`rabetbase menu visibility-update`](references/rabetbase-menu-visibility-update.md) | 用精确 ID/path 选择目标;先 dry-run,使用 `--expect-visible` / `--expected-count` 防漂移,正式执行必须 `--yes` |
@@ -404,7 +404,7 @@ const result = await client.bff.execute<DashboardData>({
404
404
  | File | [`upload` / `query-url`](references/rabetbase-file.md) |
405
405
  | Configuration | [`config set`](references/rabetbase-config.md) / [`config get`](references/rabetbase-config.md) / [`config list`](references/rabetbase-config.md) |
406
406
  | Runtime App Config Management | [`app-config list/get/set/delete`](references/rabetbase-app-config.md) |
407
- | Company Knowledge Base | [`kb list/detail/create/update/delete`](references/rabetbase-kb.md) |
407
+ | Company Knowledge Base | [`kb list/detail/search/create/update/delete`](references/rabetbase-kb.md) |
408
408
  | Menu | [`list`](references/rabetbase-menu-list.md) / [`external-link-create`](references/rabetbase-menu-external-link-create.md) / [`external-link-update`](references/rabetbase-menu-external-link-update.md) / [`rename`](references/rabetbase-menu-rename.md) / [`sync`](references/rabetbase-menu-sync.md) / [`asset-update`](references/rabetbase-menu-asset-update.md) / [`delete`](references/rabetbase-menu-delete.md) / [`group-create`](references/rabetbase-menu-group-create.md) / [`group-update`](references/rabetbase-menu-group-update.md) / [`move`](references/rabetbase-menu-move.md) / [`regroup-start`](references/rabetbase-menu-regroup-start.md) |
409
409
  | Async Tasks | [`task status`](references/rabetbase-task-status.md) |
410
410
  | Notification Configuration | [`notification config-list`](references/rabetbase-notification-config-list.md) / [`notification config-create`](references/rabetbase-notification-config-mutations.md) / [`notification config-update`](references/rabetbase-notification-config-mutations.md) / [`notification config-delete`](references/rabetbase-notification-config-mutations.md) |
@@ -1,8 +1,8 @@
1
1
  # rabetbase kb
2
2
 
3
- 管理开发者侧当前解析应用下的 `company` 知识库。所有命令都通过标准工作区、`--app <name>` 或 `--appcode <code>` 解析目标应用,并在读写前后精确校验 `scope=company`、appCode 和 ID。
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
- - 结构化输出不包含正文,只展示 `contentByteSize`、`contentHash`、`snapshotHash` 等安全元数据。
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。
@@ -2,8 +2,8 @@
2
2
  "schemaVersion": 1,
3
3
  "name": "rabetbase",
4
4
  "packageName": "@lovrabet/rabetbase-cli",
5
- "packageVersion": "2.4.6",
6
- "skillVersion": "2.4.6",
5
+ "packageVersion": "2.4.7-beta.1",
6
+ "skillVersion": "2.4.7-beta.1",
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": "cda9976607a5ec8b8ab704654bb3a37807aefee9bcdee2092571b5b44b057c7b"
134
+ "digest": "47732a1d539685b12db545917a5e4d58e7fb86263a9a999308e7bb5be82470db"
135
135
  }