@lovrabet/lovrabet-cli 2.0.14-beta.2 → 2.0.14-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/lib/cli.js +1 -1
  2. package/lib/commands/api-doc/index.js +1 -1
  3. package/lib/commands/app/cache.js +1 -1
  4. package/lib/commands/app/definitions.js +1 -1
  5. package/lib/commands/app/mock-loader.js +1 -1
  6. package/lib/commands/app/remote-source.js +1 -1
  7. package/lib/commands/app/shared.js +1 -1
  8. package/lib/commands/artifact/index.js +1 -1
  9. package/lib/commands/auth/index.js +1 -1
  10. package/lib/commands/auth/prompt.js +1 -1
  11. package/lib/commands/bff/detail.js +1 -1
  12. package/lib/commands/bff/exec.js +1 -1
  13. package/lib/commands/bff/index.js +1 -1
  14. package/lib/commands/common/config-policy.js +1 -1
  15. package/lib/commands/common/constraints.js +1 -1
  16. package/lib/commands/common/flags.js +1 -1
  17. package/lib/commands/config/definitions.js +1 -1
  18. package/lib/commands/config/shared.js +1 -1
  19. package/lib/commands/data/index.js +1 -1
  20. package/lib/commands/dataset/detail.js +1 -1
  21. package/lib/commands/dataset/index.js +1 -1
  22. package/lib/commands/dataset/list.js +1 -1
  23. package/lib/commands/dataset/sdk-doc.js +1 -1
  24. package/lib/commands/doctor.js +1 -1
  25. package/lib/commands/init.js +1 -1
  26. package/lib/commands/kb/index.js +1 -1
  27. package/lib/commands/logs/index.js +1 -1
  28. package/lib/commands/personal-bff/index.js +1 -1
  29. package/lib/commands/registry.js +1 -1
  30. package/lib/commands/schema.js +1 -1
  31. package/lib/commands/skill/index.js +1 -1
  32. package/lib/commands/skill/templates.js +1 -1
  33. package/lib/commands/skill/validate.js +1 -1
  34. package/lib/commands/sql/detail.js +1 -1
  35. package/lib/commands/sql/exec.js +1 -1
  36. package/lib/commands/sql/index.js +1 -1
  37. package/lib/commands/update.js +1 -1
  38. package/lib/config/schema.js +1 -1
  39. package/lib/constant/auth-mode.js +1 -1
  40. package/lib/constant/cli.js +1 -1
  41. package/lib/constant/defaults.js +1 -1
  42. package/lib/constant/distribution.js +1 -1
  43. package/lib/constant/domain.js +1 -1
  44. package/lib/constant/env.js +1 -1
  45. package/lib/constant/output.js +1 -1
  46. package/lib/constant/product.js +1 -1
  47. package/lib/constant/risk.js +1 -1
  48. package/lib/constant/url.js +1 -1
  49. package/lib/context.js +1 -1
  50. package/lib/core/api-client.js +1 -1
  51. package/lib/core/db-resolver.js +1 -1
  52. package/lib/core/sdk-client.js +1 -1
  53. package/lib/errors.js +1 -1
  54. package/lib/framework/build-all-flags.js +1 -1
  55. package/lib/framework/dryrun.js +1 -1
  56. package/lib/framework/flags.js +1 -1
  57. package/lib/framework/help.js +1 -1
  58. package/lib/framework/index.js +1 -1
  59. package/lib/framework/output.js +1 -1
  60. package/lib/framework/preparse.js +1 -1
  61. package/lib/framework/response.js +1 -1
  62. package/lib/framework/runner-confirmation.js +1 -1
  63. package/lib/framework/runner-error.js +1 -1
  64. package/lib/framework/runner.js +1 -1
  65. package/lib/framework/schema-export.js +1 -1
  66. package/lib/framework/types.js +1 -1
  67. package/lib/generated/build-info.js +1 -1
  68. package/lib/help.js +1 -1
  69. package/lib/skills/npx-skills-add.js +1 -1
  70. package/lib/skills/runtime-skill-sync.js +1 -1
  71. package/lib/utils/apply-jq-filter.js +1 -1
  72. package/lib/utils/logger.js +1 -1
  73. package/lib/utils/params.js +1 -1
  74. package/lib/utils/platform.js +1 -1
  75. package/lib/utils/update-notice.js +1 -1
  76. package/lib/utils/version.js +1 -1
  77. package/lib/utils/write-cli-side-channel.js +1 -1
  78. package/package.json +1 -1
@@ -1 +1 @@
1
- const a27_0x549dfc=a27_0x2b85;(function(_0x38792f,_0xe89950){const _0x16e53d=a27_0x2b85,_0x2a8c9b=_0x38792f();while(!![]){try{const _0x31ae57=-parseInt(_0x16e53d(0x17d))/0x1*(-parseInt(_0x16e53d(0x17a))/0x2)+parseInt(_0x16e53d(0x189))/0x3+parseInt(_0x16e53d(0x197))/0x4*(-parseInt(_0x16e53d(0x19b))/0x5)+parseInt(_0x16e53d(0x17e))/0x6+-parseInt(_0x16e53d(0x1a3))/0x7+parseInt(_0x16e53d(0x178))/0x8*(-parseInt(_0x16e53d(0x194))/0x9)+-parseInt(_0x16e53d(0x1ac))/0xa*(-parseInt(_0x16e53d(0x180))/0xb);if(_0x31ae57===_0xe89950)break;else _0x2a8c9b['push'](_0x2a8c9b['shift']());}catch(_0x327648){_0x2a8c9b['push'](_0x2a8c9b['shift']());}}}(a27_0x3126,0xba90c));import{existsSync,readFileSync,statSync}from'node:fs';import{createPersonalBff,executePersonalBff,getPersonalBff,listPersonalBffs,updatePersonalBff}from'../../core/api-client.js';import{ID_FLAG,PARAMS_FLAG,VERBOSE_FLAG}from'../../commands/common/flags.js';import{CliErrors}from'../../errors.js';import{dryRun}from'../../framework/dryrun.js';import{parseJsonParams}from'../../utils/params.js';const FUNCTION_NAME_PATTERN=/^[a-zA-Z_$][a-zA-Z0-9_$]*$/,FILE_FLAG={'name':a27_0x549dfc(0x191),'type':a27_0x549dfc(0x1af),'description':'Path\x20to\x20a\x20local\x20UTF-8\x20JavaScript\x20or\x20TypeScript\x20file'},FUNCTION_NAME_FLAG={'name':a27_0x549dfc(0x1aa),'type':'string','required':!![],'description':'Personal\x20BFF\x20functionName,\x20for\x20example\x20loadOrders'},DESCRIPTION_FLAG={'name':a27_0x549dfc(0x187),'type':a27_0x549dfc(0x1af),'description':'Personal\x20BFF\x20description'},SOURCE_SESSION_FLAG={'name':a27_0x549dfc(0x182),'type':a27_0x549dfc(0x1af),'description':a27_0x549dfc(0x172)};function normalizeFunctionName(_0xe18317){const _0x55ad1d=a27_0x549dfc,_0x3601eb=String(_0xe18317||'')[_0x55ad1d(0x1a5)]();if(!_0x3601eb||!FUNCTION_NAME_PATTERN[_0x55ad1d(0x1ab)](_0x3601eb))throw CliErrors[_0x55ad1d(0x198)](_0x55ad1d(0x171));return _0x3601eb;}function a27_0x3126(){const _0x14f1b8=['115905XvkMVT','createTime','gmtCreate','scriptContent','personal-bff','appCode','update','JSON\x20object\x20passed\x20to\x20the\x20personal\x20BFF\x20execution','10208506VDxgvK','/client/runtime-bff/personal/create','trim','Personal\x20BFF\x20script\x20ID','num','isFile','File\x20is\x20not\x20a\x20regular\x20file:\x20','name','test','10KvZkaK','map','read','string','Preview:\x20update\x20personal\x20BFF\x20','createUserId','--name\x20must\x20be\x20a\x20valid\x20JavaScript\x20identifier,\x20for\x20example\x20loadOrders.','Optional\x20source\x20RuntimeAgent\x20session\x20id','functionName','list','write','create','scriptType','244576jWRdxv','--params\x20must\x20be\x20a\x20JSON\x20object.','20ZmnAri','List\x20current\x20user\x27s\x20personal\x20BFF\x20scripts\x20for\x20the\x20current\x20app','utf8','115169RThctE','2349954IPAusm','params','22623931JAGmhE','/client/runtime-bff/personal/','source-session-id','verbose','Executed\x20personal\x20BFF\x20','length','version','description','flag','2465898Adodwf','exec','Execute\x20a\x20personal\x20BFF\x20by\x20id\x20with\x20optional\x20JSON\x20params','build','Update\x20a\x20personal\x20BFF\x20by\x20id','/update','POST','sourceSessionId','file','updateTime','File\x20not\x20found:\x20','279qmzfbZ','Show\x20one\x20personal\x20BFF\x20by\x20id','str','216TxtUtx','validation','Personal\x20BFF\x20script\x20file\x20is\x20blank.','gmtModified'];a27_0x3126=function(){return _0x14f1b8;};return a27_0x3126();}function readScriptFile(_0x455c4c){const _0xfa592a=a27_0x549dfc;if(!_0x455c4c)throw CliErrors[_0xfa592a(0x198)]('File\x20path\x20is\x20required.');if(!existsSync(_0x455c4c))throw CliErrors[_0xfa592a(0x198)](_0xfa592a(0x193)+_0x455c4c);if(!statSync(_0x455c4c)[_0xfa592a(0x1a8)]())throw CliErrors[_0xfa592a(0x198)](_0xfa592a(0x1a9)+_0x455c4c);const _0x18b20c=readFileSync(_0x455c4c,_0xfa592a(0x17c));if(!_0x18b20c[_0xfa592a(0x1a5)]())throw CliErrors[_0xfa592a(0x198)](_0xfa592a(0x199));return _0x18b20c;}function optionalTrimmed(_0x10c805){const _0x5cbc7a=a27_0x549dfc,_0x389b98=String(_0x10c805||'')[_0x5cbc7a(0x1a5)]();return _0x389b98||undefined;}function summarizeBff(_0x1c6d77){const _0x55f42a=a27_0x549dfc;return{'id':_0x1c6d77['id'],'appCode':_0x1c6d77['appCode'],'functionName':_0x1c6d77['functionName'],'description':_0x1c6d77[_0x55f42a(0x187)],'scriptType':_0x1c6d77[_0x55f42a(0x177)],'version':_0x1c6d77[_0x55f42a(0x186)],'gmtModified':_0x1c6d77[_0x55f42a(0x19a)],'updateTime':_0x1c6d77[_0x55f42a(0x192)]};}function detailBff(_0x5b4c38){const _0x5769b0=a27_0x549dfc;return{'id':_0x5b4c38['id'],'appCode':_0x5b4c38[_0x5769b0(0x1a0)],'functionName':_0x5b4c38[_0x5769b0(0x173)],'description':_0x5b4c38[_0x5769b0(0x187)],'scriptType':_0x5b4c38['scriptType'],'scriptContent':_0x5b4c38[_0x5769b0(0x19e)]??'','config':_0x5b4c38['config'],'version':_0x5b4c38[_0x5769b0(0x186)],'createUserId':_0x5b4c38[_0x5769b0(0x1b1)],'gmtCreate':_0x5b4c38[_0x5769b0(0x19d)],'gmtModified':_0x5b4c38[_0x5769b0(0x19a)],'createTime':_0x5b4c38[_0x5769b0(0x19c)],'updateTime':_0x5b4c38[_0x5769b0(0x192)]};}function buildCreateInput(_0x4cdbca){const _0x3e3f87=a27_0x549dfc;return{'functionName':normalizeFunctionName(_0x4cdbca[_0x3e3f87(0x196)]('name')),...optionalTrimmed(_0x4cdbca[_0x3e3f87(0x196)](_0x3e3f87(0x187)))?{'description':optionalTrimmed(_0x4cdbca[_0x3e3f87(0x196)](_0x3e3f87(0x187)))}:{},'scriptContent':readScriptFile(_0x4cdbca['str']('file')),...optionalTrimmed(_0x4cdbca[_0x3e3f87(0x196)](_0x3e3f87(0x182)))?{'sourceSessionId':optionalTrimmed(_0x4cdbca[_0x3e3f87(0x196)](_0x3e3f87(0x182)))}:{}};}function buildUpdateInput(_0x51d223){const _0x618dff=a27_0x549dfc,_0xf62eeb={};optionalTrimmed(_0x51d223[_0x618dff(0x196)](_0x618dff(0x1aa)))&&(_0xf62eeb[_0x618dff(0x173)]=normalizeFunctionName(_0x51d223[_0x618dff(0x196)](_0x618dff(0x1aa))));_0x51d223[_0x618dff(0x188)]('description')!==undefined&&(_0xf62eeb['description']=_0x51d223['str'](_0x618dff(0x187)));optionalTrimmed(_0x51d223[_0x618dff(0x196)]('file'))&&(_0xf62eeb[_0x618dff(0x19e)]=readScriptFile(_0x51d223['str'](_0x618dff(0x191))));_0x51d223[_0x618dff(0x188)](_0x618dff(0x182))!==undefined&&(_0xf62eeb[_0x618dff(0x190)]=_0x51d223[_0x618dff(0x196)](_0x618dff(0x182)));if(Object['keys'](_0xf62eeb)[_0x618dff(0x185)]===0x0)throw CliErrors[_0x618dff(0x198)]('personal-bff\x20update\x20requires\x20at\x20least\x20one\x20of\x20--name,\x20--description,\x20--file,\x20or\x20--source-session-id.');return _0xf62eeb;}function parseExecParams(_0x4a4f80){const _0x1b38c0=a27_0x549dfc,_0x5e8950=parseJsonParams(_0x4a4f80)??{};if(Array['isArray'](_0x5e8950))throw CliErrors[_0x1b38c0(0x198)](_0x1b38c0(0x179));return _0x5e8950;}function a27_0x2b85(_0x40bf5a,_0x1d3dee){_0x40bf5a=_0x40bf5a-0x171;const _0x312669=a27_0x3126();let _0x2b85d5=_0x312669[_0x40bf5a];return _0x2b85d5;}const personalBffList={'service':'personal-bff','command':a27_0x549dfc(0x174),'description':a27_0x549dfc(0x17b),'risk':a27_0x549dfc(0x1ae),'flags':[VERBOSE_FLAG],async 'execute'(_0x37514c){const _0x85e3ec=a27_0x549dfc,_0x4d15b0=await listPersonalBffs(_0x37514c[_0x85e3ec(0x1a0)]);return{'ok':!![],'data':{'total':_0x4d15b0[_0x85e3ec(0x185)],'items':_0x37514c['bool'](_0x85e3ec(0x183))?_0x4d15b0:_0x4d15b0[_0x85e3ec(0x1ad)](summarizeBff)}};}},personalBffDetail={'service':a27_0x549dfc(0x19f),'command':'detail','description':a27_0x549dfc(0x195),'risk':a27_0x549dfc(0x1ae),'flags':[{...ID_FLAG,'description':a27_0x549dfc(0x1a6)}],async 'execute'(_0x44fa2a){const _0x56428c=a27_0x549dfc,_0x4a66ee=await getPersonalBff(_0x44fa2a[_0x56428c(0x1a7)]('id'),_0x44fa2a[_0x56428c(0x1a0)]);return{'ok':!![],'data':detailBff(_0x4a66ee)};}},personalBffCreate={'service':'personal-bff','command':a27_0x549dfc(0x176),'description':'Create\x20a\x20personal\x20BFF\x20from\x20a\x20local\x20script\x20file','risk':a27_0x549dfc(0x175),'flags':[FUNCTION_NAME_FLAG,{...FILE_FLAG,'required':!![]},DESCRIPTION_FLAG,SOURCE_SESSION_FLAG],async 'execute'(_0x2a33b4){const _0x48282c=a27_0x549dfc,_0x20383e=buildCreateInput(_0x2a33b4),_0x70fd44=await createPersonalBff(_0x2a33b4[_0x48282c(0x1a0)],_0x20383e);return{'ok':!![],'data':detailBff(_0x70fd44),'message':'Created\x20personal\x20BFF\x20'+_0x70fd44['id']+(_0x70fd44[_0x48282c(0x173)]?'\x20('+_0x70fd44[_0x48282c(0x173)]+')':'')};},async 'dryRun'(_0x662614){const _0x5cf98d=a27_0x549dfc,_0x21eabf=buildCreateInput(_0x662614);return dryRun('POST',_0x5cf98d(0x1a4))['body']({'appCode':_0x662614[_0x5cf98d(0x1a0)],..._0x21eabf})[_0x5cf98d(0x187)]('Preview:\x20create\x20personal\x20BFF\x20'+_0x21eabf['functionName'])[_0x5cf98d(0x18c)]();}},personalBffUpdate={'service':'personal-bff','command':a27_0x549dfc(0x1a1),'description':a27_0x549dfc(0x18d),'risk':a27_0x549dfc(0x175),'flags':[{...ID_FLAG,'description':a27_0x549dfc(0x1a6)},{...FUNCTION_NAME_FLAG,'required':![]},FILE_FLAG,DESCRIPTION_FLAG,SOURCE_SESSION_FLAG],async 'execute'(_0x29d061){const _0x370929=a27_0x549dfc,_0x166825=_0x29d061[_0x370929(0x1a7)]('id'),_0x4b658f=buildUpdateInput(_0x29d061),_0x43c0e8=await updatePersonalBff(_0x166825,_0x29d061[_0x370929(0x1a0)],_0x4b658f);return{'ok':!![],'data':detailBff(_0x43c0e8),'message':'Updated\x20personal\x20BFF\x20'+_0x43c0e8['id']+(_0x43c0e8['functionName']?'\x20('+_0x43c0e8[_0x370929(0x173)]+')':'')};},async 'dryRun'(_0x363672){const _0x2b6873=a27_0x549dfc,_0x4b6864=_0x363672['num']('id'),_0x25bdb9=buildUpdateInput(_0x363672);return dryRun(_0x2b6873(0x18f),_0x2b6873(0x181)+_0x4b6864+_0x2b6873(0x18e))['body']({'appCode':_0x363672[_0x2b6873(0x1a0)],..._0x25bdb9})[_0x2b6873(0x187)](_0x2b6873(0x1b0)+_0x4b6864)[_0x2b6873(0x18c)]();}},personalBffExec={'service':a27_0x549dfc(0x19f),'command':a27_0x549dfc(0x18a),'description':a27_0x549dfc(0x18b),'risk':'high-risk-write','flags':[{...ID_FLAG,'description':a27_0x549dfc(0x1a6)},{...PARAMS_FLAG,'description':a27_0x549dfc(0x1a2)}],async 'validate'(_0x1d623b){const _0x584ed2=a27_0x549dfc;parseExecParams(_0x1d623b[_0x584ed2(0x196)](_0x584ed2(0x17f)));},async 'execute'(_0x3dd8cd){const _0x130669=a27_0x549dfc,_0x560bd3=_0x3dd8cd[_0x130669(0x1a7)]('id'),_0x1f30b1=parseExecParams(_0x3dd8cd[_0x130669(0x196)](_0x130669(0x17f))),_0x2af98e=await executePersonalBff(_0x560bd3,_0x3dd8cd[_0x130669(0x1a0)],_0x1f30b1);return{'ok':!![],'data':{'result':_0x2af98e},'message':_0x130669(0x184)+_0x560bd3};}};export const personalBffDefinitions=[personalBffList,personalBffDetail,personalBffCreate,personalBffUpdate,personalBffExec];
1
+ const a27_0x11d850=a27_0x3fab;(function(_0x19676c,_0x55ea80){const _0x418b83=a27_0x3fab,_0x2d46ed=_0x19676c();while(!![]){try{const _0x20d8fc=parseInt(_0x418b83(0x111))/0x1*(-parseInt(_0x418b83(0x113))/0x2)+parseInt(_0x418b83(0x12b))/0x3+parseInt(_0x418b83(0x118))/0x4*(-parseInt(_0x418b83(0x127))/0x5)+-parseInt(_0x418b83(0x114))/0x6+parseInt(_0x418b83(0x112))/0x7+-parseInt(_0x418b83(0x13b))/0x8*(-parseInt(_0x418b83(0x13c))/0x9)+-parseInt(_0x418b83(0xff))/0xa;if(_0x20d8fc===_0x55ea80)break;else _0x2d46ed['push'](_0x2d46ed['shift']());}catch(_0x44093c){_0x2d46ed['push'](_0x2d46ed['shift']());}}}(a27_0x3d52,0xec83e));import{existsSync,readFileSync,statSync}from'node:fs';import{createPersonalBff,executePersonalBff,getPersonalBff,listPersonalBffs,updatePersonalBff}from'../../core/api-client.js';import{ID_FLAG,PARAMS_FLAG,VERBOSE_FLAG}from'../../commands/common/flags.js';import{CliErrors}from'../../errors.js';import{dryRun}from'../../framework/dryrun.js';import{parseJsonParams}from'../../utils/params.js';const FUNCTION_NAME_PATTERN=/^[a-zA-Z_$][a-zA-Z0-9_$]*$/,FILE_FLAG={'name':a27_0x11d850(0x106),'type':a27_0x11d850(0x132),'description':a27_0x11d850(0x102)},FUNCTION_NAME_FLAG={'name':a27_0x11d850(0x139),'type':a27_0x11d850(0x132),'required':!![],'description':a27_0x11d850(0x10d)},DESCRIPTION_FLAG={'name':a27_0x11d850(0x130),'type':a27_0x11d850(0x132),'description':'Personal\x20BFF\x20description'},SOURCE_SESSION_FLAG={'name':a27_0x11d850(0x123),'type':a27_0x11d850(0x132),'description':a27_0x11d850(0x115)};function normalizeFunctionName(_0x47abae){const _0x1541fc=a27_0x11d850,_0x3affb5=String(_0x47abae||'')['trim']();if(!_0x3affb5||!FUNCTION_NAME_PATTERN[_0x1541fc(0x12c)](_0x3affb5))throw CliErrors['validation'](_0x1541fc(0x129));return _0x3affb5;}function readScriptFile(_0x2897d3){const _0x466c9=a27_0x11d850;if(!_0x2897d3)throw CliErrors[_0x466c9(0x10f)](_0x466c9(0x101));if(!existsSync(_0x2897d3))throw CliErrors[_0x466c9(0x10f)](_0x466c9(0x13a)+_0x2897d3);if(!statSync(_0x2897d3)[_0x466c9(0x141)]())throw CliErrors[_0x466c9(0x10f)](_0x466c9(0x11f)+_0x2897d3);const _0x3f4324=readFileSync(_0x2897d3,_0x466c9(0x104));if(!_0x3f4324['trim']())throw CliErrors[_0x466c9(0x10f)]('Personal\x20BFF\x20script\x20file\x20is\x20blank.');return _0x3f4324;}function optionalTrimmed(_0x333b76){const _0x4d87a2=String(_0x333b76||'')['trim']();return _0x4d87a2||undefined;}function summarizeBff(_0x34a22a){const _0x17684f=a27_0x11d850;return{'id':_0x34a22a['id'],'appCode':_0x34a22a[_0x17684f(0x10c)],'functionName':_0x34a22a[_0x17684f(0x11a)],'description':_0x34a22a[_0x17684f(0x130)],'scriptType':_0x34a22a[_0x17684f(0x103)],'version':_0x34a22a[_0x17684f(0x145)],'gmtModified':_0x34a22a[_0x17684f(0x105)],'updateTime':_0x34a22a[_0x17684f(0x109)]};}function detailBff(_0xfd0549){const _0x56b102=a27_0x11d850;return{'id':_0xfd0549['id'],'appCode':_0xfd0549[_0x56b102(0x10c)],'functionName':_0xfd0549[_0x56b102(0x11a)],'description':_0xfd0549[_0x56b102(0x130)],'scriptType':_0xfd0549[_0x56b102(0x103)],'scriptContent':_0xfd0549[_0x56b102(0x143)]??'','config':_0xfd0549[_0x56b102(0x122)],'version':_0xfd0549[_0x56b102(0x145)],'createUserId':_0xfd0549[_0x56b102(0x119)],'gmtCreate':_0xfd0549[_0x56b102(0x110)],'gmtModified':_0xfd0549[_0x56b102(0x105)],'createTime':_0xfd0549[_0x56b102(0x125)],'updateTime':_0xfd0549[_0x56b102(0x109)]};}function buildCreateInput(_0x4e5c43){const _0x59ae72=a27_0x11d850;return{'functionName':normalizeFunctionName(_0x4e5c43['str'](_0x59ae72(0x139))),...optionalTrimmed(_0x4e5c43[_0x59ae72(0x12a)](_0x59ae72(0x130)))?{'description':optionalTrimmed(_0x4e5c43[_0x59ae72(0x12a)](_0x59ae72(0x130)))}:{},'scriptContent':readScriptFile(_0x4e5c43[_0x59ae72(0x12a)](_0x59ae72(0x106))),...optionalTrimmed(_0x4e5c43[_0x59ae72(0x12a)](_0x59ae72(0x123)))?{'sourceSessionId':optionalTrimmed(_0x4e5c43[_0x59ae72(0x12a)](_0x59ae72(0x123)))}:{}};}function buildUpdateInput(_0x4113d9){const _0x2f5513=a27_0x11d850,_0x9120bd={};optionalTrimmed(_0x4113d9[_0x2f5513(0x12a)]('name'))&&(_0x9120bd[_0x2f5513(0x11a)]=normalizeFunctionName(_0x4113d9[_0x2f5513(0x12a)]('name')));_0x4113d9[_0x2f5513(0x136)](_0x2f5513(0x130))!==undefined&&(_0x9120bd['description']=_0x4113d9['str']('description'));optionalTrimmed(_0x4113d9[_0x2f5513(0x12a)](_0x2f5513(0x106)))&&(_0x9120bd['scriptContent']=readScriptFile(_0x4113d9[_0x2f5513(0x12a)]('file')));_0x4113d9[_0x2f5513(0x136)](_0x2f5513(0x123))!==undefined&&(_0x9120bd[_0x2f5513(0x117)]=_0x4113d9[_0x2f5513(0x12a)](_0x2f5513(0x123)));if(Object[_0x2f5513(0x144)](_0x9120bd)[_0x2f5513(0x12e)]===0x0)throw CliErrors[_0x2f5513(0x10f)](_0x2f5513(0x10b));return _0x9120bd;}function a27_0x3d52(){const _0x14702c=['scriptType','utf8','gmtModified','file','list','Created\x20personal\x20BFF\x20','updateTime','Preview:\x20create\x20personal\x20BFF\x20','personal-bff\x20update\x20requires\x20at\x20least\x20one\x20of\x20--name,\x20--description,\x20--file,\x20or\x20--source-session-id.','appCode','Personal\x20BFF\x20functionName,\x20for\x20example\x20loadOrders','List\x20current\x20user\x27s\x20personal\x20BFF\x20scripts\x20for\x20the\x20current\x20app','validation','gmtCreate','22215FRmcRE','10374077qSqpRs','110RNFvXu','2294766dkLvSr','Optional\x20source\x20RuntimeAgent\x20session\x20id','bool','sourceSessionId','145324kBnuSA','createUserId','functionName','Updated\x20personal\x20BFF\x20','detail','--params\x20must\x20be\x20a\x20JSON\x20object.','build','File\x20is\x20not\x20a\x20regular\x20file:\x20','create','JSON\x20object\x20passed\x20to\x20the\x20personal\x20BFF\x20execution','config','source-session-id','verbose','createTime','high-risk-write','120gMbdYv','update','--name\x20must\x20be\x20a\x20valid\x20JavaScript\x20identifier,\x20for\x20example\x20loadOrders.','str','1815024qfNOsy','test','/client/runtime-bff/personal/create','length','body','description','params','string','Preview:\x20update\x20personal\x20BFF\x20','read','/update','flag','POST','write','name','File\x20not\x20found:\x20','2113464mscgdb','63VTIygS','Personal\x20BFF\x20script\x20ID','map','personal-bff','exec','isFile','Execute\x20a\x20personal\x20BFF\x20by\x20id\x20with\x20optional\x20JSON\x20params','scriptContent','keys','version','num','4913040xzfbaS','Executed\x20personal\x20BFF\x20','File\x20path\x20is\x20required.','Path\x20to\x20a\x20local\x20UTF-8\x20JavaScript\x20or\x20TypeScript\x20file'];a27_0x3d52=function(){return _0x14702c;};return a27_0x3d52();}function parseExecParams(_0x55ab22){const _0x579ba2=a27_0x11d850,_0x258d70=parseJsonParams(_0x55ab22)??{};if(Array['isArray'](_0x258d70))throw CliErrors['validation'](_0x579ba2(0x11d));return _0x258d70;}const personalBffList={'service':a27_0x11d850(0x13f),'command':a27_0x11d850(0x107),'description':a27_0x11d850(0x10e),'risk':'read','flags':[VERBOSE_FLAG],async 'execute'(_0x12c39d){const _0x2238ff=a27_0x11d850,_0x516cfe=await listPersonalBffs(_0x12c39d[_0x2238ff(0x10c)]);return{'ok':!![],'data':{'total':_0x516cfe[_0x2238ff(0x12e)],'items':_0x12c39d[_0x2238ff(0x116)](_0x2238ff(0x124))?_0x516cfe:_0x516cfe[_0x2238ff(0x13e)](summarizeBff)}};}},personalBffDetail={'service':a27_0x11d850(0x13f),'command':a27_0x11d850(0x11c),'description':'Show\x20one\x20personal\x20BFF\x20by\x20id','risk':a27_0x11d850(0x134),'flags':[{...ID_FLAG,'description':a27_0x11d850(0x13d)}],async 'execute'(_0x1565cd){const _0x1a071b=a27_0x11d850,_0x1671c5=await getPersonalBff(_0x1565cd[_0x1a071b(0xfe)]('id'),_0x1565cd['appCode']);return{'ok':!![],'data':detailBff(_0x1671c5)};}},personalBffCreate={'service':'personal-bff','command':a27_0x11d850(0x120),'description':'Create\x20a\x20personal\x20BFF\x20from\x20a\x20local\x20script\x20file','risk':a27_0x11d850(0x138),'flags':[FUNCTION_NAME_FLAG,{...FILE_FLAG,'required':!![]},DESCRIPTION_FLAG,SOURCE_SESSION_FLAG],async 'execute'(_0x249c21){const _0x1324d8=a27_0x11d850,_0x512874=buildCreateInput(_0x249c21),_0x3e5cfb=await createPersonalBff(_0x249c21['appCode'],_0x512874);return{'ok':!![],'data':detailBff(_0x3e5cfb),'message':_0x1324d8(0x108)+_0x3e5cfb['id']+(_0x3e5cfb[_0x1324d8(0x11a)]?'\x20('+_0x3e5cfb[_0x1324d8(0x11a)]+')':'')};},async 'dryRun'(_0x32c8e4){const _0x763b82=a27_0x11d850,_0x3373a9=buildCreateInput(_0x32c8e4);return dryRun(_0x763b82(0x137),_0x763b82(0x12d))['body']({'appCode':_0x32c8e4[_0x763b82(0x10c)],..._0x3373a9})[_0x763b82(0x130)](_0x763b82(0x10a)+_0x3373a9[_0x763b82(0x11a)])[_0x763b82(0x11e)]();}},personalBffUpdate={'service':'personal-bff','command':a27_0x11d850(0x128),'description':'Update\x20a\x20personal\x20BFF\x20by\x20id','risk':a27_0x11d850(0x138),'flags':[{...ID_FLAG,'description':a27_0x11d850(0x13d)},{...FUNCTION_NAME_FLAG,'required':![]},FILE_FLAG,DESCRIPTION_FLAG,SOURCE_SESSION_FLAG],async 'execute'(_0x2ea784){const _0x5b9b27=a27_0x11d850,_0x2809f0=_0x2ea784[_0x5b9b27(0xfe)]('id'),_0x486e48=buildUpdateInput(_0x2ea784),_0x29c13f=await updatePersonalBff(_0x2809f0,_0x2ea784[_0x5b9b27(0x10c)],_0x486e48);return{'ok':!![],'data':detailBff(_0x29c13f),'message':_0x5b9b27(0x11b)+_0x29c13f['id']+(_0x29c13f[_0x5b9b27(0x11a)]?'\x20('+_0x29c13f['functionName']+')':'')};},async 'dryRun'(_0x324be3){const _0x4fcb65=a27_0x11d850,_0x21c8b1=_0x324be3['num']('id'),_0xbcfc2d=buildUpdateInput(_0x324be3);return dryRun(_0x4fcb65(0x137),'/client/runtime-bff/personal/'+_0x21c8b1+_0x4fcb65(0x135))[_0x4fcb65(0x12f)]({'appCode':_0x324be3[_0x4fcb65(0x10c)],..._0xbcfc2d})[_0x4fcb65(0x130)](_0x4fcb65(0x133)+_0x21c8b1)['build']();}},personalBffExec={'service':a27_0x11d850(0x13f),'command':a27_0x11d850(0x140),'description':a27_0x11d850(0x142),'risk':a27_0x11d850(0x126),'flags':[{...ID_FLAG,'description':a27_0x11d850(0x13d)},{...PARAMS_FLAG,'description':a27_0x11d850(0x121)}],async 'validate'(_0x40a5fb){const _0x5cb317=a27_0x11d850;parseExecParams(_0x40a5fb[_0x5cb317(0x12a)]('params'));},async 'execute'(_0x4749ef){const _0x4bba4f=a27_0x11d850,_0xfe6739=_0x4749ef['num']('id'),_0x36de89=parseExecParams(_0x4749ef['str'](_0x4bba4f(0x131))),_0x3e126c=await executePersonalBff(_0xfe6739,_0x4749ef[_0x4bba4f(0x10c)],_0x36de89);return{'ok':!![],'data':{'result':_0x3e126c},'message':_0x4bba4f(0x100)+_0xfe6739};}};function a27_0x3fab(_0x47c9f0,_0xc56514){_0x47c9f0=_0x47c9f0-0xfe;const _0x3d52cd=a27_0x3d52();let _0x3fab32=_0x3d52cd[_0x47c9f0];return _0x3fab32;}export const personalBffDefinitions=[personalBffList,personalBffDetail,personalBffCreate,personalBffUpdate,personalBffExec];
@@ -1 +1 @@
1
- const a28_0x1ed3f0=a28_0x4394;(function(_0x4b01c1,_0x33c1e6){const _0xec90b7=a28_0x4394,_0x4147a0=_0x4b01c1();while(!![]){try{const _0x1ca57c=parseInt(_0xec90b7(0xdc))/0x1*(-parseInt(_0xec90b7(0xdd))/0x2)+parseInt(_0xec90b7(0xc8))/0x3*(-parseInt(_0xec90b7(0xe8))/0x4)+parseInt(_0xec90b7(0xd9))/0x5*(parseInt(_0xec90b7(0xcb))/0x6)+-parseInt(_0xec90b7(0xd8))/0x7+-parseInt(_0xec90b7(0xe0))/0x8*(parseInt(_0xec90b7(0xe2))/0x9)+-parseInt(_0xec90b7(0xd1))/0xa+parseInt(_0xec90b7(0xcd))/0xb;if(_0x1ca57c===_0x33c1e6)break;else _0x4147a0['push'](_0x4147a0['shift']());}catch(_0x5154bc){_0x4147a0['push'](_0x4147a0['shift']());}}}(a28_0x413f,0x7ea30));import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{skillDefinitions}from'../commands/skill/index.js';import{updateDefinition}from'../commands/update.js';import{doctorDefinition}from'../commands/doctor.js';import{schemaDefinition}from'../commands/schema.js';import{appDefinitions}from'../commands/app/definitions.js';import{configDefinitions}from'../commands/config/definitions.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';function a28_0x413f(){const _0x1727c9=['2097298RugOKM','480495FxEreU','push','API\x20Documentation','80979FXQZQG','14mCmpZH','isSingleCommand','map','440HzDwNN','Schema','73161Rgtktm','Artifacts','App\x20Management','\x20\x20[write]','command','write','1224028vLVCUU','values','service','set','Skills','show','Knowledge\x20Base','6bFxlxW','risk','BFF\x20Scripts','30wOgBaW','from','22396891chgUoD','Authentication','Personal\x20BFF','get','722960QUbddB','defaultCommand','SQL\x20Queries','Datasets','Self\x20Update','run','\x20\x20[high-risk-write]'];a28_0x413f=function(){return _0x1727c9;};return a28_0x413f();}function a28_0x4394(_0x5a91f4,_0x26e756){_0x5a91f4=_0x5a91f4-0xc8;const _0x413ff9=a28_0x413f();let _0x4394db=_0x413ff9[_0x5a91f4];return _0x4394db;}import{datasetDefinitions}from'../commands/dataset/index.js';import{dataDefinitions}from'../commands/data/index.js';import{kbDefinitions}from'../commands/kb/index.js';import{artifactDefinitions}from'../commands/artifact/index.js';import{personalBffDefinitions}from'../commands/personal-bff/index.js';import{apiDocDefinitions}from'../commands/api-doc/index.js';export const serviceRegistry=[];const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x46ce82){const _0x5854d4=a28_0x4394;for(const _0x2286cc of _0x46ce82){definitions[_0x5854d4(0xeb)](_0x2286cc[_0x5854d4(0xea)]+':'+_0x2286cc[_0x5854d4(0xe6)],_0x2286cc);let _0x3efe79=serviceGroups[_0x5854d4(0xd0)](_0x2286cc[_0x5854d4(0xea)]);!_0x3efe79&&(_0x3efe79=[],serviceGroups['set'](_0x2286cc[_0x5854d4(0xea)],_0x3efe79)),_0x3efe79['push'](_0x2286cc);}}function registerService(_0x571014,_0x1c74cb,_0x4c2637){const _0x43393c=a28_0x4394;registerDefinitions(_0x1c74cb);const _0x517692=_0x2b862d=>_0x2b862d==='read'?'':_0x2b862d===_0x43393c(0xe7)?_0x43393c(0xe5):_0x43393c(0xd7),_0x1b7435={'service':_0x1c74cb[0x0][_0x43393c(0xea)],'label':_0x571014,'commands':_0x1c74cb[_0x43393c(0xdf)](_0x8dc3f7=>({'command':_0x8dc3f7[_0x43393c(0xe6)],'description':_0x8dc3f7['description'],'tag':_0x517692(_0x8dc3f7[_0x43393c(0xc9)])})),'defaultCommand':_0x4c2637?.[_0x43393c(0xd2)]??(_0x4c2637?.[_0x43393c(0xde)]?_0x1c74cb[0x0][_0x43393c(0xe6)]:undefined),'isSingleCommand':_0x4c2637?.['isSingleCommand']};serviceRegistry[_0x43393c(0xda)](_0x1b7435),serviceByName[_0x43393c(0xeb)](_0x1b7435[_0x43393c(0xea)],_0x1b7435);}registerService(a28_0x1ed3f0(0xce),authDefinitions,{'defaultCommand':'login'}),registerService(a28_0x1ed3f0(0xdb),apiDocDefinitions),registerService(a28_0x1ed3f0(0xd4),datasetDefinitions),registerService('Instant\x20API',dataDefinitions),registerService(a28_0x1ed3f0(0xd3),sqlDefinitions),registerService(a28_0x1ed3f0(0xca),bffDefinitions),registerService(a28_0x1ed3f0(0xcf),personalBffDefinitions),registerService(a28_0x1ed3f0(0xe3),artifactDefinitions),registerService(a28_0x1ed3f0(0xee),kbDefinitions),registerService(a28_0x1ed3f0(0xe4),appDefinitions,{'defaultCommand':'list'}),registerService('Configuration',configDefinitions,{'defaultCommand':'list'}),registerService(a28_0x1ed3f0(0xec),skillDefinitions,{'defaultCommand':'install'}),registerService(a28_0x1ed3f0(0xd5),[updateDefinition],{'defaultCommand':a28_0x1ed3f0(0xd6),'isSingleCommand':!![]}),registerService('Diagnostics',[doctorDefinition],{'isSingleCommand':!![]}),registerService(a28_0x1ed3f0(0xe1),[schemaDefinition],{'isSingleCommand':!![]}),registerService('Logs',logsDefinitions,{'defaultCommand':a28_0x1ed3f0(0xed)});export function findDefinition(_0x584c3,_0x5e4717){const _0x3e34ab=a28_0x1ed3f0;return definitions[_0x3e34ab(0xd0)](_0x584c3+':'+_0x5e4717);}export function isKnownService(_0x38f376){return serviceByName['has'](_0x38f376);}export function getServiceEntry(_0x445268){const _0x3a17c6=a28_0x1ed3f0;return serviceByName[_0x3a17c6(0xd0)](_0x445268);}export function getAllDefinitions(){const _0xb407b6=a28_0x1ed3f0;return Array[_0xb407b6(0xcc)](definitions[_0xb407b6(0xe9)]());}
1
+ const a28_0x311e5a=a28_0x4fd4;(function(_0x9167ac,_0x5ebac5){const _0x3254ba=a28_0x4fd4,_0x443d33=_0x9167ac();while(!![]){try{const _0x1da356=-parseInt(_0x3254ba(0x105))/0x1*(parseInt(_0x3254ba(0xef))/0x2)+-parseInt(_0x3254ba(0xe2))/0x3+parseInt(_0x3254ba(0xf2))/0x4*(parseInt(_0x3254ba(0xfe))/0x5)+parseInt(_0x3254ba(0xe7))/0x6+parseInt(_0x3254ba(0xf5))/0x7*(-parseInt(_0x3254ba(0xfd))/0x8)+parseInt(_0x3254ba(0xeb))/0x9*(parseInt(_0x3254ba(0x101))/0xa)+parseInt(_0x3254ba(0xfa))/0xb*(parseInt(_0x3254ba(0x103))/0xc);if(_0x1da356===_0x5ebac5)break;else _0x443d33['push'](_0x443d33['shift']());}catch(_0x36d647){_0x443d33['push'](_0x443d33['shift']());}}}(a28_0x3324,0x76995));import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{skillDefinitions}from'../commands/skill/index.js';import{updateDefinition}from'../commands/update.js';import{doctorDefinition}from'../commands/doctor.js';import{schemaDefinition}from'../commands/schema.js';import{appDefinitions}from'../commands/app/definitions.js';import{configDefinitions}from'../commands/config/definitions.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{dataDefinitions}from'../commands/data/index.js';import{kbDefinitions}from'../commands/kb/index.js';import{artifactDefinitions}from'../commands/artifact/index.js';import{personalBffDefinitions}from'../commands/personal-bff/index.js';import{apiDocDefinitions}from'../commands/api-doc/index.js';export const serviceRegistry=[];const serviceByName=new Map();export const definitions=new Map();function a28_0x4fd4(_0x2ec2cd,_0x1ab60e){_0x2ec2cd=_0x2ec2cd-0xe0;const _0x33247d=a28_0x3324();let _0x4fd412=_0x33247d[_0x2ec2cd];return _0x4fd412;}export const serviceGroups=new Map();function registerDefinitions(_0x57da01){const _0x225757=a28_0x4fd4;for(const _0xb4772e of _0x57da01){definitions[_0x225757(0x107)](_0xb4772e[_0x225757(0xff)]+':'+_0xb4772e[_0x225757(0xf9)],_0xb4772e);let _0x3ac06c=serviceGroups[_0x225757(0xe0)](_0xb4772e[_0x225757(0xff)]);!_0x3ac06c&&(_0x3ac06c=[],serviceGroups[_0x225757(0x107)](_0xb4772e['service'],_0x3ac06c)),_0x3ac06c[_0x225757(0xe1)](_0xb4772e);}}function registerService(_0x512e0c,_0x3e9e9d,_0x1a06d4){const _0x4eaa1b=a28_0x4fd4;registerDefinitions(_0x3e9e9d);const _0x57f3f2=_0x2a94d6=>_0x2a94d6===_0x4eaa1b(0xf4)?'':_0x2a94d6===_0x4eaa1b(0xed)?_0x4eaa1b(0xf6):_0x4eaa1b(0x100),_0x166af9={'service':_0x3e9e9d[0x0][_0x4eaa1b(0xff)],'label':_0x512e0c,'commands':_0x3e9e9d['map'](_0x6633c4=>({'command':_0x6633c4[_0x4eaa1b(0xf9)],'description':_0x6633c4['description'],'tag':_0x57f3f2(_0x6633c4['risk'])})),'defaultCommand':_0x1a06d4?.[_0x4eaa1b(0x104)]??(_0x1a06d4?.[_0x4eaa1b(0xf0)]?_0x3e9e9d[0x0][_0x4eaa1b(0xf9)]:undefined),'isSingleCommand':_0x1a06d4?.[_0x4eaa1b(0xf0)]};serviceRegistry[_0x4eaa1b(0xe1)](_0x166af9),serviceByName[_0x4eaa1b(0x107)](_0x166af9[_0x4eaa1b(0xff)],_0x166af9);}function a28_0x3324(){const _0x2c0691=['8060301RFdYMu','BFF\x20Scripts','write','has','22FhwONR','isSingleCommand','run','7480jeKTfk','App\x20Management','read','55454XMIIFX','\x20\x20[write]','show','list','command','722689eScwJX','API\x20Documentation','Personal\x20BFF','616xiDqTF','1160cGokDZ','service','\x20\x20[high-risk-write]','10vxGutz','Artifacts','84uWkEpG','defaultCommand','88097Stcxdr','login','set','Skills','get','push','406944XXkkPw','Schema','Knowledge\x20Base','Instant\x20API','Diagnostics','2467008dzPhIR','Authentication','SQL\x20Queries','Self\x20Update'];a28_0x3324=function(){return _0x2c0691;};return a28_0x3324();}registerService(a28_0x311e5a(0xe8),authDefinitions,{'defaultCommand':a28_0x311e5a(0x106)}),registerService(a28_0x311e5a(0xfb),apiDocDefinitions),registerService('Datasets',datasetDefinitions),registerService(a28_0x311e5a(0xe5),dataDefinitions),registerService(a28_0x311e5a(0xe9),sqlDefinitions),registerService(a28_0x311e5a(0xec),bffDefinitions),registerService(a28_0x311e5a(0xfc),personalBffDefinitions),registerService(a28_0x311e5a(0x102),artifactDefinitions),registerService(a28_0x311e5a(0xe4),kbDefinitions),registerService(a28_0x311e5a(0xf3),appDefinitions,{'defaultCommand':'list'}),registerService('Configuration',configDefinitions,{'defaultCommand':a28_0x311e5a(0xf8)}),registerService(a28_0x311e5a(0x108),skillDefinitions,{'defaultCommand':'install'}),registerService(a28_0x311e5a(0xea),[updateDefinition],{'defaultCommand':a28_0x311e5a(0xf1),'isSingleCommand':!![]}),registerService(a28_0x311e5a(0xe6),[doctorDefinition],{'isSingleCommand':!![]}),registerService(a28_0x311e5a(0xe3),[schemaDefinition],{'isSingleCommand':!![]}),registerService('Logs',logsDefinitions,{'defaultCommand':a28_0x311e5a(0xf7)});export function findDefinition(_0x240638,_0x4df32d){const _0x20f23=a28_0x311e5a;return definitions[_0x20f23(0xe0)](_0x240638+':'+_0x4df32d);}export function isKnownService(_0x5be1c5){const _0x505711=a28_0x311e5a;return serviceByName[_0x505711(0xee)](_0x5be1c5);}export function getServiceEntry(_0x45d7e7){const _0x4f80c6=a28_0x311e5a;return serviceByName[_0x4f80c6(0xe0)](_0x45d7e7);}export function getAllDefinitions(){return Array['from'](definitions['values']());}
@@ -1 +1 @@
1
- const a29_0xff2d76=a29_0x226c;(function(_0x4537b9,_0x48467c){const _0x348ee2=a29_0x226c,_0x3d1e9e=_0x4537b9();while(!![]){try{const _0x56829a=-parseInt(_0x348ee2(0x144))/0x1*(parseInt(_0x348ee2(0x14f))/0x2)+-parseInt(_0x348ee2(0x148))/0x3*(-parseInt(_0x348ee2(0x147))/0x4)+parseInt(_0x348ee2(0x142))/0x5*(parseInt(_0x348ee2(0x14b))/0x6)+parseInt(_0x348ee2(0x146))/0x7*(parseInt(_0x348ee2(0x14c))/0x8)+-parseInt(_0x348ee2(0x145))/0x9+-parseInt(_0x348ee2(0x143))/0xa*(-parseInt(_0x348ee2(0x149))/0xb)+-parseInt(_0x348ee2(0x14e))/0xc;if(_0x56829a===_0x48467c)break;else _0x3d1e9e['push'](_0x3d1e9e['shift']());}catch(_0x3c73e8){_0x3d1e9e['push'](_0x3d1e9e['shift']());}}}(a29_0x5c3d,0x58077));function a29_0x5c3d(){const _0x256ad0=['510boGpfD','70762bZShXh','6060861qxnWWP','1421FnNHkX','308sacpQs','16617ZTHhrT','51733TkFZTA','export','3671610QDDKxK','7112bebVwI','Export\x20machine-readable\x20command\x20schema\x20(JSON)','851424CCnkwu','10aYyldJ','read','5DZuvxa'];a29_0x5c3d=function(){return _0x256ad0;};return a29_0x5c3d();}import{buildSchemaPayload}from'../framework/schema-export.js';async function execute(_0x356d79){const _0x2d49f3=await buildSchemaPayload();return{'ok':!![],'data':_0x2d49f3};}function a29_0x226c(_0x66cab2,_0x69db33){_0x66cab2=_0x66cab2-0x142;const _0x5c3dd9=a29_0x5c3d();let _0x226c36=_0x5c3dd9[_0x66cab2];return _0x226c36;}export const schemaDefinition={'service':'schema','command':a29_0xff2d76(0x14a),'description':a29_0xff2d76(0x14d),'risk':a29_0xff2d76(0x150),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'flags':[],'execute':execute};
1
+ const a29_0x245b58=a29_0x416d;(function(_0x50f861,_0x1d8f4e){const _0x10cf65=a29_0x416d,_0x2a985e=_0x50f861();while(!![]){try{const _0x647ff2=parseInt(_0x10cf65(0x129))/0x1*(-parseInt(_0x10cf65(0x130))/0x2)+parseInt(_0x10cf65(0x126))/0x3*(-parseInt(_0x10cf65(0x123))/0x4)+-parseInt(_0x10cf65(0x125))/0x5*(-parseInt(_0x10cf65(0x12d))/0x6)+parseInt(_0x10cf65(0x12c))/0x7*(parseInt(_0x10cf65(0x124))/0x8)+parseInt(_0x10cf65(0x12e))/0x9*(parseInt(_0x10cf65(0x12a))/0xa)+-parseInt(_0x10cf65(0x12b))/0xb*(parseInt(_0x10cf65(0x127))/0xc)+parseInt(_0x10cf65(0x122))/0xd;if(_0x647ff2===_0x1d8f4e)break;else _0x2a985e['push'](_0x2a985e['shift']());}catch(_0x440fa8){_0x2a985e['push'](_0x2a985e['shift']());}}}(a29_0xf09b,0x973b5));function a29_0x416d(_0x1a900d,_0x156374){_0x1a900d=_0x1a900d-0x120;const _0xf09b31=a29_0xf09b();let _0x416d91=_0xf09b31[_0x1a900d];return _0x416d91;}import{buildSchemaPayload}from'../framework/schema-export.js';function a29_0xf09b(){const _0x2edf3f=['12509JcrXyP','5803176vIHZPt','39771iPiJfa','export','710zGufnN','Export\x20machine-readable\x20command\x20schema\x20(JSON)','read','5087199zITRij','981444ZkWYKr','1592XzAZgY','5crsTcm','9vjLStm','4404yrNYSL','schema','283xicEfR','2110ChfyxJ','35684QxHqXI'];a29_0xf09b=function(){return _0x2edf3f;};return a29_0xf09b();}async function execute(_0x31f16a){const _0x2fc0b8=await buildSchemaPayload();return{'ok':!![],'data':_0x2fc0b8};}export const schemaDefinition={'service':a29_0x245b58(0x128),'command':a29_0x245b58(0x12f),'description':a29_0x245b58(0x120),'risk':a29_0x245b58(0x121),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'flags':[],'execute':execute};
@@ -1 +1 @@
1
- const a30_0x2db8cc=a30_0x23b9;(function(_0x5a6ea1,_0x1257bf){const _0x5e8630=a30_0x23b9,_0xc4366b=_0x5a6ea1();while(!![]){try{const _0x547fe9=parseInt(_0x5e8630(0x164))/0x1*(-parseInt(_0x5e8630(0x193))/0x2)+-parseInt(_0x5e8630(0x16f))/0x3*(-parseInt(_0x5e8630(0x1ae))/0x4)+parseInt(_0x5e8630(0x16d))/0x5*(-parseInt(_0x5e8630(0x175))/0x6)+parseInt(_0x5e8630(0x171))/0x7*(-parseInt(_0x5e8630(0x1b2))/0x8)+parseInt(_0x5e8630(0x1bd))/0x9*(-parseInt(_0x5e8630(0x1bc))/0xa)+-parseInt(_0x5e8630(0x199))/0xb*(parseInt(_0x5e8630(0x1d4))/0xc)+-parseInt(_0x5e8630(0x17e))/0xd*(-parseInt(_0x5e8630(0x169))/0xe);if(_0x547fe9===_0x1257bf)break;else _0xc4366b['push'](_0xc4366b['shift']());}catch(_0x1d64de){_0xc4366b['push'](_0xc4366b['shift']());}}}(a30_0x5db2,0x33b9b));import{CLI_BIN_NAME,CLI_DISPLAY_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';import{logger}from'../../utils/logger.js';import{existsSync,lstatSync,mkdirSync,writeFileSync}from'node:fs';import{basename,dirname,resolve}from'node:path';import{DEFAULT_SKILL_TARGET,renderSkillTemplate,SKILL_NAME_PATTERN,SKILL_TYPES}from'../../commands/skill/templates.js';import{throwIfSkillValidationFailed,validateSkillDirectory}from'../../commands/skill/validate.js';const CODE_FLAG={'name':'code','type':'string','description':'Only\x20pull\x20a\x20specific\x20runtime\x20Skill\x20code'},SCOPE_FLAG={'name':'scope','type':a30_0x2db8cc(0x1b3),'description':a30_0x2db8cc(0x1b4)},DIR_FLAG={'name':a30_0x2db8cc(0x1a2),'type':'string','required':!![],'description':a30_0x2db8cc(0x1c9)},CREATE_NAME_FLAG={'name':'name','type':'string','required':!![],'description':a30_0x2db8cc(0x180),'pattern':{'regex':SKILL_NAME_PATTERN,'description':'lowercase\x20letters,\x20numbers,\x20and\x20single\x20hyphens'}},TYPE_FLAG={'name':a30_0x2db8cc(0x1b1),'type':a30_0x2db8cc(0x1b3),'description':a30_0x2db8cc(0x1c8),'default':a30_0x2db8cc(0x191),'enum':[...SKILL_TYPES]},TARGET_FLAG={'name':a30_0x2db8cc(0x183),'type':a30_0x2db8cc(0x1b3),'description':'Directory\x20that\x20will\x20contain\x20the\x20generated\x20Skill\x20directory','default':DEFAULT_SKILL_TARGET},FORCE_FLAG={'name':a30_0x2db8cc(0x1a3),'type':a30_0x2db8cc(0x16c),'description':a30_0x2db8cc(0x162)},STRICT_FLAG={'name':a30_0x2db8cc(0x1b5),'type':'boolean','description':a30_0x2db8cc(0x1a0)};function summarizeRuntimeSkill(_0x3ba72e){const _0x2a7335=a30_0x2db8cc;return{'id':_0x3ba72e['id'],'skillCode':_0x3ba72e['skillCode'],'skillName':_0x3ba72e[_0x2a7335(0x1c1)],'scope':_0x3ba72e['scope'],'version':_0x3ba72e['version'],'readonly':_0x3ba72e['readonly']};}function filterByCode(_0xd829f2,_0x19edbd){const _0x553ca8=a30_0x2db8cc,_0x2f6171=_0x19edbd['trim']();if(!_0x2f6171)return _0xd829f2;return _0xd829f2[_0x553ca8(0x198)](_0x468746=>_0x468746[_0x553ca8(0x1cc)]===_0x2f6171);}export const skillDefinitions=[{'service':a30_0x2db8cc(0x189),'command':a30_0x2db8cc(0x186),'description':a30_0x2db8cc(0x179)+CLI_BIN_NAME+a30_0x2db8cc(0x19b),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x31d309){const _0x783d7b=a30_0x2db8cc;logger['setLogPath'](process[_0x783d7b(0x1aa)]()),logger[_0x783d7b(0x167)]('skill-install',_0x783d7b(0x1c7)+CLI_DISPLAY_NAME+_0x783d7b(0x173));const {LOVRABET_SKILL_SOURCE:_0x456b9e,LOVRABET_SKIP_NPX_SKILLS_ENV:_0x3dbec6,runNpxSkillsAddGlobal:_0x3b7195}=await import(_0x783d7b(0x19e)),_0x5e4814=_0x31d309['nonInteractive']?_0x783d7b(0x181):'inherit';console[_0x783d7b(0x18d)]('Installing\x20official\x20skill\x20via\x20npx\x20(npx\x20skills\x20add\x20'+_0x456b9e+'\x20-g\x20-y)...');const _0x2a1650=_0x3b7195(process[_0x783d7b(0x1aa)](),_0x456b9e,{'stdio':_0x5e4814});if(_0x2a1650[_0x783d7b(0x1b7)])console[_0x783d7b(0x18d)](_0x783d7b(0x1b9)+_0x3dbec6+_0x783d7b(0x1be));else{if(_0x2a1650['ok'])console[_0x783d7b(0x18d)](CLI_BIN_NAME+_0x783d7b(0x19c));else throw CliErrors['apiError'](_0x783d7b(0x172)+(_0x2a1650[_0x783d7b(0x17a)]||_0x783d7b(0x178)),_0x783d7b(0x176));}return{'ok':!![]};}},{'service':a30_0x2db8cc(0x189),'command':a30_0x2db8cc(0x1bf),'description':a30_0x2db8cc(0x16b),'risk':a30_0x2db8cc(0x191),'requiresAuth':![],'requiresAppCode':![],'flags':[CREATE_NAME_FLAG,TYPE_FLAG,TARGET_FLAG,FORCE_FLAG],async 'dryRun'(_0x45afdd){const _0xc1c0f1=a30_0x2db8cc,_0x39bbc9=buildSkillCreatePlan(_0x45afdd[_0xc1c0f1(0x1bb)]('name'),_0x45afdd[_0xc1c0f1(0x1bb)]('type'),_0x45afdd[_0xc1c0f1(0x1bb)](_0xc1c0f1(0x183)));return{'method':_0xc1c0f1(0x17b),'url':_0x39bbc9['skillDir'],'body':{'skillName':_0x39bbc9[_0xc1c0f1(0x182)][_0xc1c0f1(0x1c1)],'type':_0x39bbc9[_0xc1c0f1(0x182)]['type'],'selfContained':!![],'files':_0x39bbc9['rendered']['files'][_0xc1c0f1(0x197)](_0x5b2ee4=>_0x5b2ee4[_0xc1c0f1(0x1a9)])},'description':_0xc1c0f1(0x1d1)};},async 'execute'(_0x139947){const _0x256c93=a30_0x2db8cc,_0x1a3bba=buildSkillCreatePlan(_0x139947[_0x256c93(0x1bb)]('name'),_0x139947[_0x256c93(0x1bb)](_0x256c93(0x1b1)),_0x139947[_0x256c93(0x1bb)](_0x256c93(0x183)));return writeSkillDraft(_0x1a3bba,_0x139947[_0x256c93(0x18b)](_0x256c93(0x1a3))),{'ok':!![],'data':{'skillName':_0x1a3bba[_0x256c93(0x182)]['skillName'],'type':_0x1a3bba['rendered'][_0x256c93(0x1b1)],'dir':_0x1a3bba[_0x256c93(0x1b6)],'files':_0x1a3bba[_0x256c93(0x182)][_0x256c93(0x1c3)][_0x256c93(0x197)](_0x1ca813=>_0x1ca813[_0x256c93(0x1a9)])},'message':_0x256c93(0x18a)+_0x1a3bba[_0x256c93(0x182)][_0x256c93(0x1c1)]};}},{'service':a30_0x2db8cc(0x189),'command':a30_0x2db8cc(0x16a),'description':'Validate\x20a\x20local\x20Skill\x20directory\x20as\x20a\x20self-contained\x20delivery\x20package','risk':a30_0x2db8cc(0x1a5),'requiresAuth':![],'requiresAppCode':![],'flags':[DIR_FLAG,STRICT_FLAG],async 'execute'(_0x1b2d18){const _0x4dd6de=a30_0x2db8cc,_0xff5d5e=_0x1b2d18[_0x4dd6de(0x18b)](_0x4dd6de(0x1b5)),_0x32bb51=validateSkillDirectory(_0x1b2d18[_0x4dd6de(0x1bb)](_0x4dd6de(0x1a2)),{'strict':_0xff5d5e});return throwIfSkillValidationFailed(_0x32bb51,_0xff5d5e),{'ok':!![],'data':{'dir':_0x32bb51[_0x4dd6de(0x1a2)],'type':_0x32bb51[_0x4dd6de(0x1b1)],'errors':_0x32bb51[_0x4dd6de(0x1c4)],'warnings':_0x32bb51[_0x4dd6de(0x185)]},'message':_0x4dd6de(0x17c)};}},{'service':a30_0x2db8cc(0x189),'command':'pull','description':a30_0x2db8cc(0x1d0),'risk':'write','flags':[CODE_FLAG,SCOPE_FLAG],async 'execute'(_0x5099b3){const _0xe8184a=a30_0x2db8cc,{downloadRuntimeSkillPackage:_0x19ac09,listCompanyRuntimeSkills:_0x5e0c5e,listPersonalRuntimeSkills:_0x335cfb,listVisibleRuntimeSkills:_0x1fca39}=await import(_0xe8184a(0x1d8)),{linkGlobalRuntimeSkills:_0x2a9207,linkEffectiveRuntimeSkills:_0x17ebd1,materializeRuntimeSkill:_0x486a77,pruneStaleRuntimeSkillCache:_0x193847,pruneStaleRuntimeSkillLinks:_0x28ec7d}=await import(_0xe8184a(0x165)),_0x3c81b8=_0x5099b3[_0xe8184a(0x1bb)]('code'),_0x3d2f40=normalizePullScope(_0x5099b3[_0xe8184a(0x1bb)](_0xe8184a(0x195))),_0xbed55a=_0x5099b3[_0xe8184a(0x196)]??_0xe8184a(0x1cd),_0xb39b67=_0x5099b3[_0xe8184a(0x1d7)];if(!_0xb39b67)throw CliErrors[_0xe8184a(0x19f)]();if(_0x3d2f40===_0xe8184a(0x170)){const _0x5290fd=filterByCode((await _0x1fca39(_0x5099b3['appCode']))['filter'](_0x5d5481=>_0x5d5481['scope']===_0xe8184a(0x170)),_0x3c81b8),_0x4401a6=[];for(const _0x57a972 of _0x5290fd){_0x4401a6[_0xe8184a(0x168)](_0x486a77(_0x57a972,_0xe8184a(0x170),{'env':_0xbed55a,'accessKey':_0xb39b67,'appCode':_0x5099b3['appCode'],'packageBytes':await downloadPackageIfNeeded(_0x57a972,'builtin',_0x5099b3[_0xe8184a(0x18e)],_0x19ac09)}));}const _0x22481c=_0x2a9207(_0x4401a6),_0x2f6886=countLinkActions(_0x22481c),_0x431a9b=_0x22481c[0x0]?.[_0xe8184a(0x1a9)]?dirname(_0x22481c[0x0][_0xe8184a(0x1a9)]):undefined,_0x55d65d=new Map(_0x22481c[_0xe8184a(0x197)](_0x20f6cd=>[basename(_0x20f6cd['path']),_0x20f6cd]));return{'ok':!![],'data':{'appCode':_0x5099b3[_0xe8184a(0x18e)],'scope':_0xe8184a(0x170),'builtin':_0x5290fd[_0xe8184a(0x1c0)],'materialized':_0x4401a6['length'],'globalRoot':_0x431a9b,'links':{'total':_0x22481c['length'],'created':_0x2f6886['created']??0x0,'updated':_0x2f6886[_0xe8184a(0x16e)]??0x0,'unchanged':_0x2f6886['unchanged']??0x0,'skipped':0x0,'conflicted':0x0},'skills':{'builtin':_0x5290fd[_0xe8184a(0x197)](_0x5b11f4=>{const _0x21e7c8=_0xe8184a,_0x40671b=_0x55d65d[_0x21e7c8(0x187)](_0x5b11f4[_0x21e7c8(0x1cc)]);return{...summarizeRuntimeSkill(_0x5b11f4),'contentHash':_0x40671b?.[_0x21e7c8(0x19a)]};})}},'message':'Pulled\x20'+_0x5290fd[_0xe8184a(0x1c0)]+_0xe8184a(0x1ce)};}const _0x2e1c0c=filterByCode(await _0x335cfb(_0x5099b3[_0xe8184a(0x18e)]),_0x3c81b8),_0xac5e77=filterByCode(await _0x5e0c5e(_0x5099b3[_0xe8184a(0x18e)]),_0x3c81b8),_0x4c637b=new Set([..._0x2e1c0c[_0xe8184a(0x197)](_0x2728bf=>_0x2728bf[_0xe8184a(0x1cc)]?.[_0xe8184a(0x190)]())['filter'](_0x43dc9c=>Boolean(_0x43dc9c)),..._0xac5e77[_0xe8184a(0x197)](_0xb52f04=>_0xb52f04[_0xe8184a(0x1cc)]?.[_0xe8184a(0x190)]())['filter'](_0x536e49=>Boolean(_0x536e49))]),_0x1f172e=_0x3c81b8[_0xe8184a(0x190)]()?[_0x3c81b8['trim']()]:undefined,_0x5e67bd=_0x28ec7d(_0x5099b3[_0xe8184a(0x18e)],_0x4c637b,{},_0x1f172e),_0x547c3c=_0x193847({'env':_0xbed55a,'accessKey':_0xb39b67,'appCode':_0x5099b3[_0xe8184a(0x18e)],'activeSkillCodes':_0x4c637b,'pruneSkillCodes':_0x1f172e}),_0x2dc687=[];for(const _0x3dcad6 of _0x2e1c0c){_0x2dc687[_0xe8184a(0x168)](_0x486a77(_0x3dcad6,_0xe8184a(0x184),{'env':_0xbed55a,'accessKey':_0xb39b67,'appCode':_0x5099b3[_0xe8184a(0x18e)],'packageBytes':await downloadPackageIfNeeded(_0x3dcad6,_0xe8184a(0x184),_0x5099b3[_0xe8184a(0x18e)],_0x19ac09)}));}for(const _0x1e0586 of _0xac5e77){_0x2dc687[_0xe8184a(0x168)](_0x486a77(_0x1e0586,_0xe8184a(0x1c6),{'env':_0xbed55a,'accessKey':_0xb39b67,'appCode':_0x5099b3[_0xe8184a(0x18e)],'packageBytes':await downloadPackageIfNeeded(_0x1e0586,_0xe8184a(0x1c6),_0x5099b3['appCode'],_0x19ac09)}));}const _0x49a8a5=_0x17ebd1(_0x2dc687,_0x5099b3[_0xe8184a(0x18e)]),_0xb0fbeb=countLinkActions(_0x49a8a5);return{'ok':!![],'data':{'appCode':_0x5099b3['appCode'],'personal':_0x2e1c0c[_0xe8184a(0x1c0)],'company':_0xac5e77[_0xe8184a(0x1c0)],'materialized':_0x2dc687[_0xe8184a(0x1c0)],'links':{'total':_0x49a8a5['length'],'created':_0xb0fbeb['created']??0x0,'updated':_0xb0fbeb[_0xe8184a(0x16e)]??0x0,'unchanged':_0xb0fbeb[_0xe8184a(0x1a7)]??0x0,'skipped':0x0,'conflicted':0x0},'pruned':{'links':_0x5e67bd[_0xe8184a(0x198)](_0x257ba6=>_0x257ba6['action']==='removed')[_0xe8184a(0x1c0)],'cacheDirs':_0x547c3c[_0xe8184a(0x198)](_0x420f4d=>_0x420f4d['action']==='removed')[_0xe8184a(0x1c0)],'skipped':[..._0x5e67bd,..._0x547c3c][_0xe8184a(0x198)](_0x17b75d=>_0x17b75d[_0xe8184a(0x18c)]===_0xe8184a(0x1b7))[_0xe8184a(0x1c0)]},'skills':{'personal':_0x2e1c0c[_0xe8184a(0x197)](summarizeRuntimeSkill),'company':_0xac5e77['map'](summarizeRuntimeSkill)}},'message':'Pulled\x20'+_0x2e1c0c[_0xe8184a(0x1c0)]+_0xe8184a(0x188)+_0xac5e77[_0xe8184a(0x1c0)]+'\x20company\x20Skill(s).'};}},{'service':a30_0x2db8cc(0x189),'command':a30_0x2db8cc(0x168),'description':a30_0x2db8cc(0x1ca),'risk':a30_0x2db8cc(0x191),'flags':[DIR_FLAG],async 'execute'(_0x3d4e49){const _0x454dcb=a30_0x2db8cc,{createPersonalRuntimeSkill:_0x1da9d3,downloadRuntimeSkillPackage:_0x57ba87,listPersonalRuntimeSkills:_0x2352ae,updatePersonalRuntimeSkill:_0x4e2c18}=await import(_0x454dcb(0x1d8)),{verifyRuntimeSkillPackage:_0xb0ff79,readPushDirectory:_0x3bf418,recordPushedRuntimeSkill:_0x4b4ace}=await import(_0x454dcb(0x165));if(!_0x3d4e49[_0x454dcb(0x1d7)])throw CliErrors['authRequired']();const _0x3e47d3=_0x3d4e49[_0x454dcb(0x1bb)](_0x454dcb(0x1a2)),_0x277e35=validateSkillDirectory(_0x3e47d3);throwIfSkillValidationFailed(_0x277e35);const _0x368328=_0x3bf418(_0x3e47d3,_0x3d4e49[_0x454dcb(0x18e)]),_0x3e3551=(await _0x2352ae(_0x3d4e49[_0x454dcb(0x18e)]))[_0x454dcb(0x1b0)](_0x2b08a3=>_0x2b08a3['skillCode']===_0x368328[_0x454dcb(0x1cc)]),_0x190d1a=_0x3e3551?await _0x4e2c18(_0x368328[_0x454dcb(0x1cc)],_0x3d4e49[_0x454dcb(0x18e)],_0x368328[_0x454dcb(0x1ba)]):await _0x1da9d3(_0x3d4e49[_0x454dcb(0x18e)],_0x368328[_0x454dcb(0x1ba)]);assertMultiFilePushPersisted(_0x368328[_0x454dcb(0x1ba)]['files'],_0x190d1a);if(isPackageBackedMultiFile(_0x190d1a['files'])){const _0x1a2ddf=await _0x57ba87(_0x454dcb(0x184),_0x368328[_0x454dcb(0x1cc)],_0x3d4e49[_0x454dcb(0x18e)]);_0xb0ff79(_0x190d1a[_0x454dcb(0x1c3)],_0x1a2ddf);}return _0x4b4ace(_0x3e47d3,_0x190d1a,_0x3d4e49[_0x454dcb(0x18e)]),{'ok':!![],'data':summarizeRuntimeSkill(_0x190d1a),'message':_0x3e3551?_0x454dcb(0x1ac)+_0x368328[_0x454dcb(0x1cc)]:'Created\x20personal\x20Skill\x20'+_0x368328[_0x454dcb(0x1cc)]};}}];function buildSkillCreatePlan(_0x2b1a8d,_0x4d98e9,_0x3c5313){const _0x4dce05=a30_0x2db8cc,_0x535dd1=renderSkillTemplate({'skillName':_0x2b1a8d,'type':_0x4d98e9}),_0x326a57=resolve(normalizeSkillTarget(_0x3c5313));return{'rendered':_0x535dd1,'targetRoot':_0x326a57,'skillDir':resolve(_0x326a57,_0x535dd1[_0x4dce05(0x1c1)])};}function normalizeSkillTarget(_0x2880a1){const _0x13e2a4=a30_0x2db8cc;return(_0x2880a1||DEFAULT_SKILL_TARGET)[_0x13e2a4(0x190)]()||DEFAULT_SKILL_TARGET;}function writeSkillDraft(_0x1e0617,_0x4653c4){const _0x2f24a1=a30_0x2db8cc;if(existsSync(_0x1e0617[_0x2f24a1(0x1b6)])){const _0x436cbe=lstatSync(_0x1e0617[_0x2f24a1(0x1b6)]);if(!_0x436cbe['isDirectory']()||_0x436cbe['isSymbolicLink']())throw CliErrors[_0x2f24a1(0x177)](_0x2f24a1(0x1d6)+_0x1e0617[_0x2f24a1(0x1b6)]);if(!_0x4653c4)throw CliErrors['validation'](_0x2f24a1(0x163)+_0x1e0617['skillDir'],_0x2f24a1(0x166));}for(const _0x12b247 of _0x1e0617['rendered'][_0x2f24a1(0x1c3)]){const _0x24e71a=resolve(_0x1e0617[_0x2f24a1(0x1b6)],_0x12b247[_0x2f24a1(0x1a9)]),_0x178a16=dirname(_0x24e71a);mkdirSync(_0x178a16,{'recursive':!![]});if(existsSync(_0x24e71a)&&lstatSync(_0x24e71a)[_0x2f24a1(0x1a1)]())throw CliErrors[_0x2f24a1(0x177)](_0x2f24a1(0x17d)+_0x24e71a);writeFileSync(_0x24e71a,_0x12b247[_0x2f24a1(0x1b8)],_0x2f24a1(0x1a4));}}function a30_0x5db2(){const _0xdada82=['Unsupported\x20Skill\x20pull\x20scope:\x20','6ApGNFH','size','scope','envName','map','filter','77jGaOXJ','contentHash','\x20developer\x20skill','\x20skill\x20installed','sha256','../../skills/npx-skills-add.js','authRequired','Treat\x20delivery\x20consistency\x20warnings\x20as\x20validation\x20failures','isSymbolicLink','dir','force','utf8','read','Check\x20the\x20runtime\x20service\x20Skill\x20file\x20manifest\x20storage\x20before\x20pulling\x20this\x20Skill.','unchanged','zipSize','path','cwd','object','Updated\x20personal\x20Skill\x20','treeSha256','356ElzxFh','SKILL.md','find','type','48ZlDMsV','string','Skill\x20pull\x20scope:\x20user\x20(personal/company)\x20or\x20builtin','strict','skillDir','skipped','content','Skipped\x20npx\x20(','input','str','10gAObHE','1911348LiXwQP','=1);\x20assuming\x20skill\x20is\x20already\x20present.','create','length','skillName','Backend\x20did\x20not\x20persist\x20the\x20multi-file\x20Skill\x20manifest.','files','errors','Upgrade\x20the\x20runtime\x20service\x20before\x20pushing\x20multi-file\x20Skill\x20directories.','company','Installing\x20published\x20','Skill\x20template\x20type','Local\x20Skill\x20directory\x20containing\x20SKILL.md','Push\x20a\x20local\x20Skill\x20directory\x20to\x20personal\x20runtime\x20Skill\x20scope','join','skillCode','production','\x20builtin\x20Skill(s).','Backend\x20returned\x20a\x20different\x20multi-file\x20Skill\x20manifest\x20after\x20push.','Pull\x20runtime\x20Skills\x20into\x20explicit\x20local\x20agent\x20skill\x20directories','Create\x20a\x20local\x20runtime\x20Skill\x20draft\x20without\x20uploading\x20or\x20publishing\x20it.','some','zipSha256','65988oJucjR','reduce','Skill\x20path\x20already\x20exists\x20and\x20is\x20not\x20a\x20writable\x20directory:\x20','accessKey','../../core/api-client.js','Overwrite\x20generated\x20files\x20when\x20the\x20Skill\x20directory\x20already\x20exists','Skill\x20directory\x20already\x20exists:\x20','74966bAzAcq','../../skills/runtime-skill-sync.js','Pass\x20--force\x20to\x20overwrite\x20generated\x20template\x20files.','info','push','42HLqcas','validate','Create\x20a\x20local\x20self-contained\x20runtime\x20Skill\x20draft','boolean','215nVhsDq','updated','6663pderNd','builtin','443681NksIgF','npx\x20skills\x20add\x20failed:\x20','\x20skill\x20via\x20npx.','isArray','50466CHHUMq','Check\x20network\x20connectivity\x20and\x20try\x20again.','validation','unknown','Install\x20the\x20published\x20','error','WRITE','Skill\x20validation\x20passed.','Refusing\x20to\x20overwrite\x20symlink:\x20','5338372SNREMA','sort','Skill\x20name\x20using\x20lowercase\x20letters,\x20numbers,\x20and\x20hyphens','pipe','rendered','target','personal','warnings','install','get','\x20personal\x20and\x20','skill','Created\x20local\x20Skill\x20draft\x20','bool','action','log','appCode','ossPath','trim','write'];a30_0x5db2=function(){return _0xdada82;};return a30_0x5db2();}async function downloadPackageIfNeeded(_0x207cc3,_0x2b7564,_0x191f47,_0x55692e){const _0x39a455=a30_0x2db8cc;if(!isPackageBackedManifest(_0x207cc3[_0x39a455(0x1c3)]))return undefined;return _0x55692e(_0x2b7564,_0x207cc3[_0x39a455(0x1cc)],_0x191f47);}function normalizePullScope(_0x4ab4f4){const _0x3db132=a30_0x2db8cc,_0x4b22a6=_0x4ab4f4['trim']();if(!_0x4b22a6)return'user';if(_0x4b22a6==='user'||_0x4b22a6===_0x3db132(0x170))return _0x4b22a6;throw CliErrors[_0x3db132(0x177)](_0x3db132(0x192)+_0x4ab4f4);}function countLinkActions(_0x10e705){const _0x3d17f4=a30_0x2db8cc;return _0x10e705[_0x3d17f4(0x1d5)]((_0x45f638,_0x3cb5ac)=>{const _0x44a1c0=_0x3d17f4;return _0x45f638[_0x3cb5ac['action']]=(_0x45f638[_0x3cb5ac[_0x44a1c0(0x18c)]]??0x0)+0x1,_0x45f638;},{});}function assertMultiFilePushPersisted(_0x3fcc29,_0x36f437){const _0x2cebb5=a30_0x2db8cc;if(!isMultiFileManifest(_0x3fcc29))return;if(!isPackageBackedMultiFile(_0x36f437[_0x2cebb5(0x1c3)]))throw CliErrors[_0x2cebb5(0x177)](_0x2cebb5(0x1c2),_0x2cebb5(0x1c5));if(_0x3fcc29[_0x2cebb5(0x1ad)]!==_0x36f437[_0x2cebb5(0x1c3)][_0x2cebb5(0x1ad)]||_0x3fcc29[_0x2cebb5(0x1d3)]!==_0x36f437[_0x2cebb5(0x1c3)]['zipSha256']||_0x3fcc29[_0x2cebb5(0x1a8)]!==_0x36f437['files'][_0x2cebb5(0x1a8)]||!_0x36f437[_0x2cebb5(0x1c3)][_0x2cebb5(0x18f)]||manifestFileSignature(_0x3fcc29)!==manifestFileSignature(_0x36f437['files']))throw CliErrors[_0x2cebb5(0x177)](_0x2cebb5(0x1cf),_0x2cebb5(0x1a6));}function isPackageBackedManifest(_0x2a16e1){const _0x157784=a30_0x2db8cc;return!!_0x2a16e1&&typeof _0x2a16e1===_0x157784(0x1ab)&&!Array[_0x157784(0x174)](_0x2a16e1)&&typeof _0x2a16e1['ossPath']==='string'&&_0x2a16e1[_0x157784(0x18f)]['length']>0x0&&Array['isArray'](_0x2a16e1[_0x157784(0x1c3)]);}function isPackageBackedMultiFile(_0x2c44a6){return isPackageBackedManifest(_0x2c44a6)&&isMultiFileManifest(_0x2c44a6);}function a30_0x23b9(_0x23e23c,_0x18590b){_0x23e23c=_0x23e23c-0x162;const _0x5db270=a30_0x5db2();let _0x23b989=_0x5db270[_0x23e23c];return _0x23b989;}function isMultiFileManifest(_0x5eb778){const _0x15ff94=a30_0x2db8cc;return!!_0x5eb778&&typeof _0x5eb778===_0x15ff94(0x1ab)&&!Array[_0x15ff94(0x174)](_0x5eb778)&&Array['isArray'](_0x5eb778[_0x15ff94(0x1c3)])&&_0x5eb778[_0x15ff94(0x1c3)][_0x15ff94(0x1d2)](_0x551965=>_0x551965['path']!==_0x15ff94(0x1af));}function manifestFileSignature(_0x2b54df){const _0x4bdb77=a30_0x2db8cc;return[..._0x2b54df[_0x4bdb77(0x1c3)]][_0x4bdb77(0x197)](_0xd010a2=>_0xd010a2[_0x4bdb77(0x1a9)]+'\x00'+_0xd010a2[_0x4bdb77(0x19d)]+'\x00'+_0xd010a2[_0x4bdb77(0x194)])[_0x4bdb77(0x17f)]()[_0x4bdb77(0x1cb)]('\x00');}
1
+ const a30_0x23c98c=a30_0x1386;(function(_0x28fff1,_0x3fa704){const _0x372782=a30_0x1386,_0x56c0aa=_0x28fff1();while(!![]){try{const _0x260adc=-parseInt(_0x372782(0x1c3))/0x1+-parseInt(_0x372782(0x1bb))/0x2*(-parseInt(_0x372782(0x1bc))/0x3)+parseInt(_0x372782(0x1a0))/0x4*(-parseInt(_0x372782(0x1b2))/0x5)+parseInt(_0x372782(0x1ca))/0x6*(-parseInt(_0x372782(0x1d0))/0x7)+-parseInt(_0x372782(0x1bd))/0x8+-parseInt(_0x372782(0x18c))/0x9+parseInt(_0x372782(0x1c9))/0xa;if(_0x260adc===_0x3fa704)break;else _0x56c0aa['push'](_0x56c0aa['shift']());}catch(_0x2ffabe){_0x56c0aa['push'](_0x56c0aa['shift']());}}}(a30_0x53c7,0x96091));import{CLI_BIN_NAME,CLI_DISPLAY_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';import{logger}from'../../utils/logger.js';import{existsSync,lstatSync,mkdirSync,writeFileSync}from'node:fs';import{basename,dirname,resolve}from'node:path';function a30_0x1386(_0x16ea18,_0x1b8226){_0x16ea18=_0x16ea18-0x184;const _0x53c795=a30_0x53c7();let _0x1386f5=_0x53c795[_0x16ea18];return _0x1386f5;}import{DEFAULT_SKILL_TARGET,renderSkillTemplate,SKILL_NAME_PATTERN,SKILL_TYPES}from'../../commands/skill/templates.js';import{throwIfSkillValidationFailed,validateSkillDirectory}from'../../commands/skill/validate.js';function a30_0x53c7(){const _0x4c9c02=['size','\x20personal\x20and\x20','filter','lowercase\x20letters,\x20numbers,\x20and\x20single\x20hyphens','7579998FNsaNt','files','accessKey','created','find','skillDir','Pulled\x20','isSymbolicLink','Refusing\x20to\x20overwrite\x20symlink:\x20','scope','create','\x20developer\x20skill','push','info','Installing\x20official\x20skill\x20via\x20npx\x20(npx\x20skills\x20add\x20','string','log','Install\x20the\x20published\x20','company','skill','2373992WRXveP','version','sha256','target','\x20builtin\x20Skill(s).','get','removed','dir','cwd','Create\x20a\x20local\x20runtime\x20Skill\x20draft\x20without\x20uploading\x20or\x20publishing\x20it.','zipSha256','Validate\x20a\x20local\x20Skill\x20directory\x20as\x20a\x20self-contained\x20delivery\x20package','isDirectory','../../core/api-client.js','install','rendered','Check\x20the\x20runtime\x20service\x20Skill\x20file\x20manifest\x20storage\x20before\x20pulling\x20this\x20Skill.','name','10wAsELv','skillCode','personal','\x20-g\x20-y)...','authRequired','Skill\x20validation\x20passed.','skillName','SKILL.md','inherit','6pMhFDK','684099WgFNky','1158912MhvLxK','Backend\x20returned\x20a\x20different\x20multi-file\x20Skill\x20manifest\x20after\x20push.','Local\x20Skill\x20directory\x20containing\x20SKILL.md','Push\x20a\x20local\x20Skill\x20directory\x20to\x20personal\x20runtime\x20Skill\x20scope','contentHash','Backend\x20did\x20not\x20persist\x20the\x20multi-file\x20Skill\x20manifest.','815680awasRk','unchanged','length','\x20skill\x20installed','Skill\x20path\x20already\x20exists\x20and\x20is\x20not\x20a\x20writable\x20directory:\x20','updated','39479330BZiZVR','3474lhYNId','appCode','Skill\x20name\x20using\x20lowercase\x20letters,\x20numbers,\x20and\x20hyphens','trim','error','isArray','12425abyQZK','../../skills/npx-skills-add.js','validation','builtin','action','utf8','Directory\x20that\x20will\x20contain\x20the\x20generated\x20Skill\x20directory','readonly','user','pipe','ossPath','Create\x20a\x20local\x20self-contained\x20runtime\x20Skill\x20draft','map','Pass\x20--force\x20to\x20overwrite\x20generated\x20template\x20files.','=1);\x20assuming\x20skill\x20is\x20already\x20present.','object','input','boolean','bool','strict','skill-install','npx\x20skills\x20add\x20failed:\x20','warnings','write','path','zipSize','Updated\x20personal\x20Skill\x20','envName','type','treeSha256','../../skills/runtime-skill-sync.js','str','validate','production','force','Created\x20local\x20Skill\x20draft\x20','code','Upgrade\x20the\x20runtime\x20service\x20before\x20pushing\x20multi-file\x20Skill\x20directories.','apiError','Compatibility\x20flag;\x20no\x20extra\x20checks\x20are\x20enabled','Skipped\x20npx\x20(','skipped'];a30_0x53c7=function(){return _0x4c9c02;};return a30_0x53c7();}const CODE_FLAG={'name':a30_0x23c98c(0x1f4),'type':a30_0x23c98c(0x19b),'description':'Only\x20pull\x20a\x20specific\x20runtime\x20Skill\x20code'},SCOPE_FLAG={'name':a30_0x23c98c(0x195),'type':'string','description':'Skill\x20pull\x20scope:\x20user\x20(personal/company)\x20or\x20builtin'},DIR_FLAG={'name':'dir','type':a30_0x23c98c(0x19b),'required':!![],'description':a30_0x23c98c(0x1bf)},CREATE_NAME_FLAG={'name':'name','type':a30_0x23c98c(0x19b),'required':!![],'description':a30_0x23c98c(0x1cc),'pattern':{'regex':SKILL_NAME_PATTERN,'description':a30_0x23c98c(0x18b)}},TYPE_FLAG={'name':a30_0x23c98c(0x1ec),'type':'string','description':'Skill\x20template\x20type','default':a30_0x23c98c(0x1e7),'enum':[...SKILL_TYPES]},TARGET_FLAG={'name':a30_0x23c98c(0x1a3),'type':a30_0x23c98c(0x19b),'description':a30_0x23c98c(0x1d6),'default':DEFAULT_SKILL_TARGET},FORCE_FLAG={'name':'force','type':a30_0x23c98c(0x1e1),'description':'Overwrite\x20generated\x20files\x20when\x20the\x20Skill\x20directory\x20already\x20exists'},STRICT_FLAG={'name':'strict','type':a30_0x23c98c(0x1e1),'description':a30_0x23c98c(0x185)};function summarizeRuntimeSkill(_0x23b742){const _0x602885=a30_0x23c98c;return{'id':_0x23b742['id'],'skillCode':_0x23b742[_0x602885(0x1b3)],'skillName':_0x23b742[_0x602885(0x1b8)],'scope':_0x23b742[_0x602885(0x195)],'version':_0x23b742[_0x602885(0x1a1)],'readonly':_0x23b742[_0x602885(0x1d7)]};}function filterByCode(_0x256174,_0x244063){const _0x37f95b=a30_0x23c98c,_0x49a434=_0x244063[_0x37f95b(0x1cd)]();if(!_0x49a434)return _0x256174;return _0x256174['filter'](_0x1f67d1=>_0x1f67d1[_0x37f95b(0x1b3)]===_0x49a434);}export const skillDefinitions=[{'service':a30_0x23c98c(0x19f),'command':a30_0x23c98c(0x1ae),'description':a30_0x23c98c(0x19d)+CLI_BIN_NAME+a30_0x23c98c(0x197),'risk':a30_0x23c98c(0x1e7),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x4b6aa6){const _0x4f1bcd=a30_0x23c98c;logger['setLogPath'](process[_0x4f1bcd(0x1a8)]()),logger[_0x4f1bcd(0x199)](_0x4f1bcd(0x1e4),'Installing\x20published\x20'+CLI_DISPLAY_NAME+'\x20skill\x20via\x20npx.');const {LOVRABET_SKILL_SOURCE:_0x1d193b,LOVRABET_SKIP_NPX_SKILLS_ENV:_0x3f4a0e,runNpxSkillsAddGlobal:_0x5e309a}=await import(_0x4f1bcd(0x1d1)),_0xb885e2=_0x4b6aa6['nonInteractive']?_0x4f1bcd(0x1d9):_0x4f1bcd(0x1ba);console[_0x4f1bcd(0x19c)](_0x4f1bcd(0x19a)+_0x1d193b+_0x4f1bcd(0x1b5));const _0x1bc1c0=_0x5e309a(process[_0x4f1bcd(0x1a8)](),_0x1d193b,{'stdio':_0xb885e2});if(_0x1bc1c0[_0x4f1bcd(0x187)])console[_0x4f1bcd(0x19c)](_0x4f1bcd(0x186)+_0x3f4a0e+_0x4f1bcd(0x1de));else{if(_0x1bc1c0['ok'])console[_0x4f1bcd(0x19c)](CLI_BIN_NAME+_0x4f1bcd(0x1c6));else throw CliErrors[_0x4f1bcd(0x184)](_0x4f1bcd(0x1e5)+(_0x1bc1c0[_0x4f1bcd(0x1ce)]||'unknown'),'Check\x20network\x20connectivity\x20and\x20try\x20again.');}return{'ok':!![]};}},{'service':'skill','command':a30_0x23c98c(0x196),'description':a30_0x23c98c(0x1db),'risk':a30_0x23c98c(0x1e7),'requiresAuth':![],'requiresAppCode':![],'flags':[CREATE_NAME_FLAG,TYPE_FLAG,TARGET_FLAG,FORCE_FLAG],async 'dryRun'(_0x4e1a06){const _0x526b50=a30_0x23c98c,_0x42b4a8=buildSkillCreatePlan(_0x4e1a06[_0x526b50(0x1ef)](_0x526b50(0x1b1)),_0x4e1a06[_0x526b50(0x1ef)](_0x526b50(0x1ec)),_0x4e1a06['str'](_0x526b50(0x1a3)));return{'method':'WRITE','url':_0x42b4a8[_0x526b50(0x191)],'body':{'skillName':_0x42b4a8['rendered']['skillName'],'type':_0x42b4a8['rendered']['type'],'selfContained':!![],'files':_0x42b4a8[_0x526b50(0x1af)][_0x526b50(0x18d)][_0x526b50(0x1dc)](_0x298625=>_0x298625[_0x526b50(0x1e8)])},'description':_0x526b50(0x1a9)};},async 'execute'(_0x3c8274){const _0x198c5f=a30_0x23c98c,_0x3caf10=buildSkillCreatePlan(_0x3c8274['str']('name'),_0x3c8274[_0x198c5f(0x1ef)](_0x198c5f(0x1ec)),_0x3c8274[_0x198c5f(0x1ef)](_0x198c5f(0x1a3)));return writeSkillDraft(_0x3caf10,_0x3c8274[_0x198c5f(0x1e2)](_0x198c5f(0x1f2))),{'ok':!![],'data':{'skillName':_0x3caf10['rendered'][_0x198c5f(0x1b8)],'type':_0x3caf10['rendered'][_0x198c5f(0x1ec)],'dir':_0x3caf10[_0x198c5f(0x191)],'files':_0x3caf10[_0x198c5f(0x1af)][_0x198c5f(0x18d)]['map'](_0x483dde=>_0x483dde[_0x198c5f(0x1e8)])},'message':_0x198c5f(0x1f3)+_0x3caf10['rendered'][_0x198c5f(0x1b8)]};}},{'service':'skill','command':a30_0x23c98c(0x1f0),'description':a30_0x23c98c(0x1ab),'risk':'read','requiresAuth':![],'requiresAppCode':![],'flags':[DIR_FLAG,STRICT_FLAG],async 'execute'(_0x2ae914){const _0x5aa103=a30_0x23c98c,_0x4912c1=_0x2ae914[_0x5aa103(0x1e2)](_0x5aa103(0x1e3)),_0x404252=validateSkillDirectory(_0x2ae914[_0x5aa103(0x1ef)](_0x5aa103(0x1a7)),{'strict':_0x4912c1});return throwIfSkillValidationFailed(_0x404252,_0x4912c1),{'ok':!![],'data':{'dir':_0x404252['dir'],'type':_0x404252[_0x5aa103(0x1ec)],'errors':_0x404252['errors'],'warnings':_0x404252[_0x5aa103(0x1e6)]},'message':_0x5aa103(0x1b7)};}},{'service':a30_0x23c98c(0x19f),'command':'pull','description':'Pull\x20runtime\x20Skills\x20into\x20explicit\x20local\x20agent\x20skill\x20directories','risk':a30_0x23c98c(0x1e7),'flags':[CODE_FLAG,SCOPE_FLAG],async 'execute'(_0xe36679){const _0x105ac6=a30_0x23c98c,{downloadRuntimeSkillPackage:_0xac5957,listCompanyRuntimeSkills:_0x464977,listPersonalRuntimeSkills:_0x37536b,listVisibleRuntimeSkills:_0x5e90c9}=await import(_0x105ac6(0x1ad)),{linkGlobalRuntimeSkills:_0x933133,linkEffectiveRuntimeSkills:_0x9f4a64,materializeRuntimeSkill:_0x4b9c32,pruneStaleRuntimeSkillCache:_0x2e144a,pruneStaleRuntimeSkillLinks:_0x5b230f}=await import(_0x105ac6(0x1ee)),_0xae1e4d=_0xe36679[_0x105ac6(0x1ef)](_0x105ac6(0x1f4)),_0x165e42=normalizePullScope(_0xe36679[_0x105ac6(0x1ef)](_0x105ac6(0x195))),_0x47f5c1=_0xe36679[_0x105ac6(0x1eb)]??_0x105ac6(0x1f1),_0x47d3a7=_0xe36679[_0x105ac6(0x18e)];if(!_0x47d3a7)throw CliErrors['authRequired']();if(_0x165e42===_0x105ac6(0x1d3)){const _0x10b5f8=filterByCode((await _0x5e90c9(_0xe36679[_0x105ac6(0x1cb)]))[_0x105ac6(0x18a)](_0x1d2535=>_0x1d2535[_0x105ac6(0x195)]===_0x105ac6(0x1d3)),_0xae1e4d),_0x51daef=[];for(const _0x4468ee of _0x10b5f8){_0x51daef[_0x105ac6(0x198)](_0x4b9c32(_0x4468ee,_0x105ac6(0x1d3),{'env':_0x47f5c1,'accessKey':_0x47d3a7,'appCode':_0xe36679[_0x105ac6(0x1cb)],'packageBytes':await downloadPackageIfNeeded(_0x4468ee,_0x105ac6(0x1d3),_0xe36679[_0x105ac6(0x1cb)],_0xac5957)}));}const _0x2647c4=_0x933133(_0x51daef),_0xead5bf=countLinkActions(_0x2647c4),_0x2ae7de=_0x2647c4[0x0]?.[_0x105ac6(0x1e8)]?dirname(_0x2647c4[0x0][_0x105ac6(0x1e8)]):undefined,_0x181c48=new Map(_0x2647c4[_0x105ac6(0x1dc)](_0x265603=>[basename(_0x265603['path']),_0x265603]));return{'ok':!![],'data':{'appCode':_0xe36679['appCode'],'scope':_0x105ac6(0x1d3),'builtin':_0x10b5f8[_0x105ac6(0x1c5)],'materialized':_0x51daef[_0x105ac6(0x1c5)],'globalRoot':_0x2ae7de,'links':{'total':_0x2647c4['length'],'created':_0xead5bf[_0x105ac6(0x18f)]??0x0,'updated':_0xead5bf[_0x105ac6(0x1c8)]??0x0,'unchanged':_0xead5bf[_0x105ac6(0x1c4)]??0x0,'skipped':0x0,'conflicted':0x0},'skills':{'builtin':_0x10b5f8[_0x105ac6(0x1dc)](_0x2d78b6=>{const _0x59a6f5=_0x105ac6,_0x682174=_0x181c48[_0x59a6f5(0x1a5)](_0x2d78b6['skillCode']);return{...summarizeRuntimeSkill(_0x2d78b6),'contentHash':_0x682174?.[_0x59a6f5(0x1c1)]};})}},'message':'Pulled\x20'+_0x10b5f8[_0x105ac6(0x1c5)]+_0x105ac6(0x1a4)};}const _0x1cf41d=filterByCode(await _0x37536b(_0xe36679[_0x105ac6(0x1cb)]),_0xae1e4d),_0x4cebd2=filterByCode(await _0x464977(_0xe36679[_0x105ac6(0x1cb)]),_0xae1e4d),_0x12096b=new Set([..._0x1cf41d[_0x105ac6(0x1dc)](_0x3a414e=>_0x3a414e[_0x105ac6(0x1b3)]?.['trim']())[_0x105ac6(0x18a)](_0x3710e8=>Boolean(_0x3710e8)),..._0x4cebd2[_0x105ac6(0x1dc)](_0xf8217a=>_0xf8217a[_0x105ac6(0x1b3)]?.[_0x105ac6(0x1cd)]())[_0x105ac6(0x18a)](_0xad3631=>Boolean(_0xad3631))]),_0x2cce6b=_0xae1e4d[_0x105ac6(0x1cd)]()?[_0xae1e4d['trim']()]:undefined,_0x480d7c=_0x5b230f(_0xe36679['appCode'],_0x12096b,{},_0x2cce6b),_0x469002=_0x2e144a({'env':_0x47f5c1,'accessKey':_0x47d3a7,'appCode':_0xe36679[_0x105ac6(0x1cb)],'activeSkillCodes':_0x12096b,'pruneSkillCodes':_0x2cce6b}),_0x479af9=[];for(const _0x9e9233 of _0x1cf41d){_0x479af9['push'](_0x4b9c32(_0x9e9233,_0x105ac6(0x1b4),{'env':_0x47f5c1,'accessKey':_0x47d3a7,'appCode':_0xe36679[_0x105ac6(0x1cb)],'packageBytes':await downloadPackageIfNeeded(_0x9e9233,_0x105ac6(0x1b4),_0xe36679[_0x105ac6(0x1cb)],_0xac5957)}));}for(const _0x5bb570 of _0x4cebd2){_0x479af9[_0x105ac6(0x198)](_0x4b9c32(_0x5bb570,_0x105ac6(0x19e),{'env':_0x47f5c1,'accessKey':_0x47d3a7,'appCode':_0xe36679[_0x105ac6(0x1cb)],'packageBytes':await downloadPackageIfNeeded(_0x5bb570,'company',_0xe36679[_0x105ac6(0x1cb)],_0xac5957)}));}const _0x18f5c1=_0x9f4a64(_0x479af9,_0xe36679['appCode']),_0x5387bd=countLinkActions(_0x18f5c1);return{'ok':!![],'data':{'appCode':_0xe36679[_0x105ac6(0x1cb)],'personal':_0x1cf41d[_0x105ac6(0x1c5)],'company':_0x4cebd2[_0x105ac6(0x1c5)],'materialized':_0x479af9[_0x105ac6(0x1c5)],'links':{'total':_0x18f5c1['length'],'created':_0x5387bd[_0x105ac6(0x18f)]??0x0,'updated':_0x5387bd[_0x105ac6(0x1c8)]??0x0,'unchanged':_0x5387bd[_0x105ac6(0x1c4)]??0x0,'skipped':0x0,'conflicted':0x0},'pruned':{'links':_0x480d7c[_0x105ac6(0x18a)](_0x273a12=>_0x273a12[_0x105ac6(0x1d4)]==='removed')[_0x105ac6(0x1c5)],'cacheDirs':_0x469002[_0x105ac6(0x18a)](_0x1f390d=>_0x1f390d['action']===_0x105ac6(0x1a6))[_0x105ac6(0x1c5)],'skipped':[..._0x480d7c,..._0x469002]['filter'](_0x15cb70=>_0x15cb70[_0x105ac6(0x1d4)]===_0x105ac6(0x187))['length']},'skills':{'personal':_0x1cf41d[_0x105ac6(0x1dc)](summarizeRuntimeSkill),'company':_0x4cebd2[_0x105ac6(0x1dc)](summarizeRuntimeSkill)}},'message':_0x105ac6(0x192)+_0x1cf41d['length']+_0x105ac6(0x189)+_0x4cebd2['length']+'\x20company\x20Skill(s).'};}},{'service':a30_0x23c98c(0x19f),'command':'push','description':a30_0x23c98c(0x1c0),'risk':a30_0x23c98c(0x1e7),'flags':[DIR_FLAG],async 'execute'(_0x21e849){const _0x19c629=a30_0x23c98c,{createPersonalRuntimeSkill:_0x264a20,downloadRuntimeSkillPackage:_0x59af24,listPersonalRuntimeSkills:_0x49de70,updatePersonalRuntimeSkill:_0x43c6b5}=await import(_0x19c629(0x1ad)),{verifyRuntimeSkillPackage:_0x38a921,readPushDirectory:_0x50612a,recordPushedRuntimeSkill:_0x5b7540}=await import(_0x19c629(0x1ee));if(!_0x21e849[_0x19c629(0x18e)])throw CliErrors[_0x19c629(0x1b6)]();const _0x1f9052=_0x21e849['str'](_0x19c629(0x1a7)),_0x5356f3=validateSkillDirectory(_0x1f9052);throwIfSkillValidationFailed(_0x5356f3);const _0x4f2298=_0x50612a(_0x1f9052,_0x21e849[_0x19c629(0x1cb)]),_0x43bbfe=(await _0x49de70(_0x21e849[_0x19c629(0x1cb)]))[_0x19c629(0x190)](_0x28f8c8=>_0x28f8c8[_0x19c629(0x1b3)]===_0x4f2298[_0x19c629(0x1b3)]),_0x1a4638=_0x43bbfe?await _0x43c6b5(_0x4f2298[_0x19c629(0x1b3)],_0x21e849['appCode'],_0x4f2298['input']):await _0x264a20(_0x21e849[_0x19c629(0x1cb)],_0x4f2298[_0x19c629(0x1e0)]);assertMultiFilePushPersisted(_0x4f2298['input'][_0x19c629(0x18d)],_0x1a4638);if(isPackageBackedMultiFile(_0x1a4638[_0x19c629(0x18d)])){const _0x1fdc92=await _0x59af24(_0x19c629(0x1b4),_0x4f2298[_0x19c629(0x1b3)],_0x21e849[_0x19c629(0x1cb)]);_0x38a921(_0x1a4638[_0x19c629(0x18d)],_0x1fdc92);}return _0x5b7540(_0x1f9052,_0x1a4638,_0x21e849['appCode']),{'ok':!![],'data':summarizeRuntimeSkill(_0x1a4638),'message':_0x43bbfe?_0x19c629(0x1ea)+_0x4f2298[_0x19c629(0x1b3)]:'Created\x20personal\x20Skill\x20'+_0x4f2298[_0x19c629(0x1b3)]};}}];function buildSkillCreatePlan(_0x231238,_0x542d7a,_0x4d974e){const _0x3d44be=a30_0x23c98c,_0x2a48d0=renderSkillTemplate({'skillName':_0x231238,'type':_0x542d7a}),_0x370fc3=resolve(normalizeSkillTarget(_0x4d974e));return{'rendered':_0x2a48d0,'targetRoot':_0x370fc3,'skillDir':resolve(_0x370fc3,_0x2a48d0[_0x3d44be(0x1b8)])};}function normalizeSkillTarget(_0x48bc74){const _0x18a38a=a30_0x23c98c;return(_0x48bc74||DEFAULT_SKILL_TARGET)[_0x18a38a(0x1cd)]()||DEFAULT_SKILL_TARGET;}function writeSkillDraft(_0x34ade1,_0x371e1b){const _0x2e3378=a30_0x23c98c;if(existsSync(_0x34ade1[_0x2e3378(0x191)])){const _0x4ed687=lstatSync(_0x34ade1[_0x2e3378(0x191)]);if(!_0x4ed687[_0x2e3378(0x1ac)]()||_0x4ed687[_0x2e3378(0x193)]())throw CliErrors['validation'](_0x2e3378(0x1c7)+_0x34ade1['skillDir']);if(!_0x371e1b)throw CliErrors['validation']('Skill\x20directory\x20already\x20exists:\x20'+_0x34ade1[_0x2e3378(0x191)],_0x2e3378(0x1dd));}for(const _0xdf20e0 of _0x34ade1['rendered'][_0x2e3378(0x18d)]){const _0x232529=resolve(_0x34ade1[_0x2e3378(0x191)],_0xdf20e0[_0x2e3378(0x1e8)]),_0x34d95b=dirname(_0x232529);mkdirSync(_0x34d95b,{'recursive':!![]});if(existsSync(_0x232529)&&lstatSync(_0x232529)[_0x2e3378(0x193)]())throw CliErrors['validation'](_0x2e3378(0x194)+_0x232529);writeFileSync(_0x232529,_0xdf20e0['content'],_0x2e3378(0x1d5));}}async function downloadPackageIfNeeded(_0x230567,_0x5f2588,_0x36cc9d,_0x58ae5b){if(!isPackageBackedManifest(_0x230567['files']))return undefined;return _0x58ae5b(_0x5f2588,_0x230567['skillCode'],_0x36cc9d);}function normalizePullScope(_0x30c506){const _0x4403b8=a30_0x23c98c,_0x15a6ae=_0x30c506['trim']();if(!_0x15a6ae)return _0x4403b8(0x1d8);if(_0x15a6ae===_0x4403b8(0x1d8)||_0x15a6ae===_0x4403b8(0x1d3))return _0x15a6ae;throw CliErrors['validation']('Unsupported\x20Skill\x20pull\x20scope:\x20'+_0x30c506);}function countLinkActions(_0x5a26be){return _0x5a26be['reduce']((_0x2ebae6,_0x50cf9c)=>{const _0x592855=a30_0x1386;return _0x2ebae6[_0x50cf9c[_0x592855(0x1d4)]]=(_0x2ebae6[_0x50cf9c[_0x592855(0x1d4)]]??0x0)+0x1,_0x2ebae6;},{});}function assertMultiFilePushPersisted(_0x567e01,_0x7ec00c){const _0x1ded44=a30_0x23c98c;if(!isMultiFileManifest(_0x567e01))return;if(!isPackageBackedMultiFile(_0x7ec00c['files']))throw CliErrors[_0x1ded44(0x1d2)](_0x1ded44(0x1c2),_0x1ded44(0x1f5));if(_0x567e01[_0x1ded44(0x1ed)]!==_0x7ec00c[_0x1ded44(0x18d)]['treeSha256']||_0x567e01[_0x1ded44(0x1aa)]!==_0x7ec00c[_0x1ded44(0x18d)][_0x1ded44(0x1aa)]||_0x567e01[_0x1ded44(0x1e9)]!==_0x7ec00c[_0x1ded44(0x18d)][_0x1ded44(0x1e9)]||!_0x7ec00c['files']['ossPath']||manifestFileSignature(_0x567e01)!==manifestFileSignature(_0x7ec00c[_0x1ded44(0x18d)]))throw CliErrors[_0x1ded44(0x1d2)](_0x1ded44(0x1be),_0x1ded44(0x1b0));}function isPackageBackedManifest(_0x3ca90e){const _0xd597dd=a30_0x23c98c;return!!_0x3ca90e&&typeof _0x3ca90e===_0xd597dd(0x1df)&&!Array[_0xd597dd(0x1cf)](_0x3ca90e)&&typeof _0x3ca90e[_0xd597dd(0x1da)]===_0xd597dd(0x19b)&&_0x3ca90e[_0xd597dd(0x1da)][_0xd597dd(0x1c5)]>0x0&&Array['isArray'](_0x3ca90e['files']);}function isPackageBackedMultiFile(_0x58fd5f){return isPackageBackedManifest(_0x58fd5f)&&isMultiFileManifest(_0x58fd5f);}function isMultiFileManifest(_0x5d62b5){const _0x3f5ed3=a30_0x23c98c;return!!_0x5d62b5&&typeof _0x5d62b5===_0x3f5ed3(0x1df)&&!Array[_0x3f5ed3(0x1cf)](_0x5d62b5)&&Array[_0x3f5ed3(0x1cf)](_0x5d62b5['files'])&&_0x5d62b5['files']['some'](_0x34c0e3=>_0x34c0e3[_0x3f5ed3(0x1e8)]!==_0x3f5ed3(0x1b9));}function manifestFileSignature(_0x44cd44){const _0xeb3196=a30_0x23c98c;return[..._0x44cd44[_0xeb3196(0x18d)]][_0xeb3196(0x1dc)](_0x190442=>_0x190442[_0xeb3196(0x1e8)]+'\x00'+_0x190442[_0xeb3196(0x1a2)]+'\x00'+_0x190442[_0xeb3196(0x188)])['sort']()['join']('\x00');}
@@ -1 +1 @@
1
- const a31_0x122da3=a31_0x26cd;(function(_0x4967e4,_0xc65bc9){const _0x3b2997=a31_0x26cd,_0x510650=_0x4967e4();while(!![]){try{const _0x1cf7ca=-parseInt(_0x3b2997(0x194))/0x1+-parseInt(_0x3b2997(0x1a3))/0x2*(-parseInt(_0x3b2997(0x199))/0x3)+-parseInt(_0x3b2997(0x19b))/0x4*(parseInt(_0x3b2997(0x17d))/0x5)+-parseInt(_0x3b2997(0x1a6))/0x6*(parseInt(_0x3b2997(0x1a2))/0x7)+-parseInt(_0x3b2997(0x191))/0x8+-parseInt(_0x3b2997(0x182))/0x9*(parseInt(_0x3b2997(0x180))/0xa)+parseInt(_0x3b2997(0x19a))/0xb;if(_0x1cf7ca===_0xc65bc9)break;else _0x510650['push'](_0x510650['shift']());}catch(_0x38f01d){_0x510650['push'](_0x510650['shift']());}}}(a31_0x18a7,0xc32b3));import{CliErrors}from'../../errors.js';export const SKILL_TYPES=[a31_0x122da3(0x1a4),'read',a31_0x122da3(0x19c)];export const DEFAULT_SKILL_TARGET=a31_0x122da3(0x1a1);export const SKILL_NAME_PATTERN=/^[a-z0-9]+(?:-[a-z0-9]+)*$/;export const RUNTIME_CONTRACT_FILE=a31_0x122da3(0x185);export const OUTPUT_CONTRACT_FILE=a31_0x122da3(0x17f);export function validateSkillName(_0x24d009){const _0x56f4ba=a31_0x122da3,_0x34414f=_0x24d009[_0x56f4ba(0x181)]();if(!SKILL_NAME_PATTERN[_0x56f4ba(0x195)](_0x34414f))throw CliErrors['validation'](_0x56f4ba(0x18e)+_0x24d009+'.\x20Use\x20lowercase\x20letters,\x20numbers,\x20and\x20single\x20hyphens.','Use\x20lowercase\x20letters,\x20numbers,\x20and\x20single\x20hyphens,\x20for\x20example\x20invoice-export.');return _0x34414f;}export function normalizeSkillTemplateType(_0x465474){const _0x1d2cc8=a31_0x122da3,_0x52387a=(_0x465474||_0x1d2cc8(0x1a4))['trim']()||_0x1d2cc8(0x1a4);if(SKILL_TYPES[_0x1d2cc8(0x183)](_0x52387a))return _0x52387a;throw CliErrors[_0x1d2cc8(0x186)]('Unsupported\x20Skill\x20type:\x20'+_0x465474,_0x1d2cc8(0x193)+SKILL_TYPES[_0x1d2cc8(0x189)](',\x20')+'.');}export function renderSkillTemplate(_0x19f1cf){const _0x4a1ebb=a31_0x122da3,_0x3e0b5e=validateSkillName(_0x19f1cf[_0x4a1ebb(0x19e)]),_0x3f6f34=normalizeSkillTemplateType(_0x19f1cf[_0x4a1ebb(0x196)]),_0x1f597a=_0x19f1cf[_0x4a1ebb(0x184)]??new Date()[_0x4a1ebb(0x1a5)]();return{'skillName':_0x3e0b5e,'type':_0x3f6f34,'files':[{'path':_0x4a1ebb(0x19d),'content':renderSkillMd(_0x3e0b5e,_0x3f6f34,_0x1f597a)},{'path':RUNTIME_CONTRACT_FILE,'content':renderRuntimeContract(_0x3e0b5e,_0x3f6f34)},{'path':OUTPUT_CONTRACT_FILE,'content':renderOutputContract(_0x3e0b5e,_0x3f6f34)}]};}function renderSkillMd(_0x451ab7,_0x5bde38,_0x23cec2){const _0x29f8e0=a31_0x122da3,_0x191c8d=typeWorkflow(_0x5bde38);return _0x29f8e0(0x192)+_0x451ab7+'\x0adescription:\x20\x22【填写模型触发语义:用户在什么场景应使用本\x20Skill、不要使用的边界和关键词】\x22\x0ametadata:\x0a\x20\x20type:\x20'+_0x5bde38+_0x29f8e0(0x197)+_0x23cec2+_0x29f8e0(0x1a0)+_0x451ab7+_0x29f8e0(0x198)+_0x191c8d+'\x0a\x0a'+businessStateSection(_0x5bde38)+_0x29f8e0(0x18a);}function renderRuntimeContract(_0x19869b,_0x56bdf5){const _0x4c2b22=a31_0x122da3,_0x56abd5=_0x56bdf5===_0x4c2b22(0x1a4)?'##\x20状态读回与未知状态处理\x0a\x0a【填写业务状态事实源、fromStatus\x20->\x20toStatus\x20预览、写入后读回核对方式,以及\x20unknown\x20/\x20needs_manual_check\x20的处理边界】\x0a\x0a':'';return'#\x20Runtime\x20Contract\x0a\x0aSkill\x20push\x20后的\x20zip\x20包就是完整交付产物。'+_0x19869b+_0x4c2b22(0x1a7)+_0x56bdf5+_0x4c2b22(0x187)+_0x56abd5+_0x4c2b22(0x18b);}function renderOutputContract(_0xc5a1a0,_0x34ca53){const _0x36332c=a31_0x122da3,_0x166656=_0x34ca53===_0x36332c(0x1a4)?_0x36332c(0x18f):_0x34ca53+_0x36332c(0x19f);return'#\x20Output\x20Contract\x0a\x0a'+_0xc5a1a0+_0x36332c(0x188)+_0x166656+_0x36332c(0x17c);}function a31_0x26cd(_0xd4a9e3,_0x325ef6){_0xd4a9e3=_0xd4a9e3-0x17c;const _0x18a73b=a31_0x18a7();let _0x26cdfd=_0x18a73b[_0xd4a9e3];return _0x26cdfd;}function a31_0x18a7(){const _0x42100e=['670414IVpCRm','write','toISOString','492342CKptBE','\x20的所有必读规则必须位于\x20SKILL.md\x20或\x20references/\x20内。\x0a\x0a##\x20必读文档\x0a\x0a-\x20[SKILL.md](../SKILL.md)\x0a-\x20[runtime-contract.md](runtime-contract.md)\x0a-\x20[output-contract.md](output-contract.md)\x0a\x0a##\x20主边界\x0a\x0a-\x20不得依赖\x20Skill\x20目录外的仓库文件、绝对路径、file\x20URL\x20或本机专属配置。\x0a-\x20文档中的缓存路径、安装路径、示例路径或排障路径不等于运行时包外依赖;只有明确要求读取、链接或执行包外内容时才属于自包含风险。\x0a-\x20如需承接仓库规范,必须把必要规则内化到本\x20Skill\x20包内的\x20references/\x20文件中。\x0a-\x20type=','\x0a\x0a##\x20错误与人工接管\x0a\x0aerrors\x20必须包含失败阶段、错误原因和可复核对象。\x0anextActions\x20必须给出重试、补充输入、人工接管或停止处理的动作。\x0a','11425lNEwHg','1.\x20dry-run:【填写预览入口、影响范围和差异摘要;不得写入业务数据】\x0a2.\x20用户确认:【填写确认语义、目标对象、数量、风险和操作者责任】\x0a3.\x20confirmed\x20写入:【填写确认后的写入入口和幂等/防重复要求】\x0a4.\x20只读核对:【填写写入后的查询核对、差异展示和结果链接】\x0a5.\x20checkpoint:【填写失败恢复、重试条件和人工接管方式】','references/output-contract.md','9214070yQriBk','trim','9FaKlMK','includes','timestamp','references/runtime-contract.md','validation','\x20只作为模板选择器,不替代业务权限、风险等级和用户确认。\x0a\x0a##\x20运行态入口\x0a\x0a【填写包内说明的运行态入口、可调用脚本或人工执行边界】\x0a\x0a##\x20凭证与登录态\x0a\x0a【填写本\x20Skill\x20依赖的第三方服务凭证和登录态治理方式。强烈建议通过\x20Lovrabet\x20应用后台或平台服务端适配器做平台托管配置;开发先行阶段如存在临时明文凭证,应标注后续治理计划、适用环境和额度边界,并避免进入长期交付内容。】\x0a\x0a##\x20第三方候选资产\x0a\x0a【填写第三方生成类结果的消费边界。生成类结果仅作为候选素材;涉及商品图、客户资料、Excel\x20或业务文件上传时,必须声明授权、额度、审计、失败降级和人工审核/业务\x20BFF\x20校验后的发布边界。】\x0a\x0a##\x20预览\x20/\x20写入\x20/\x20核对差异\x0a\x0a【填写预览、确认、正式执行和只读核对的顺序】\x0a\x0a','\x20的最终回复必须让运营人员能判断:是否执行、影响了什么、如何复核、失败后下一步做什么。\x0a\x0a##\x20状态枚举\x0a\x0astatus:\x20success\x20|\x20no_op\x20|\x20partial_success\x20|\x20blocked\x20|\x20failed\x20|\x20needs_manual_check\x0a\x0a-\x20success:动作已完成,且关键结果已核对。\x0a-\x20no_op:没有符合条件的对象或无需变更。\x0a-\x20partial_success:部分对象完成,未完成对象必须进入\x20errors\x20和\x20nextActions。\x0a-\x20blocked:缺少输入、权限、确认或平台能力,无法继续。\x0a-\x20failed:执行失败,必须说明失败阶段、错误和恢复方式。\x0a-\x20needs_manual_check:读回异常、状态未知或人工判断缺失。\x0a\x0aunknown、partial_success、failed、needs_manual_check\x20不能包装为\x20success。\x0a\x0a##\x20输出模式\x0a\x0amode:\x20dry_run\x20|\x20confirmed\x20|\x20read_only\x0a\x0a-\x20dry_run:只展示预览、影响范围和差异,不写入业务数据。\x0a-\x20confirmed:用户明确确认后的执行模式;写入后必须读回核对。\x0a-\x20read_only:只查询、汇总或核对,不触发写入。\x0a\x0a##\x20必填字段\x0a\x0a-\x20status\x0a-\x20mode\x0a-\x20summary\x0a-\x20scope\x0a-\x20changes\x0a-\x20verification\x0a-\x20warnings\x0a-\x20errors\x0a-\x20nextActions\x0a\x0a##\x20写入结果\x0a\x0a','join','\x0a\x0a##\x20展示规范\x0a\x0a【填写面向运营人员的展示字段、差异摘要、成功/失败状态和人工处理项;最终输出必须按\x20references/output-contract.md\x20的\x20status\x20/\x20mode\x20/\x20summary\x20/\x20errors\x20/\x20nextActions\x20返回,不能把\x20unknown、partial_success、failed\x20或\x20needs_manual_check\x20包装为\x20success。】\x0a\x0a##\x20失败恢复\x0a\x0a【填写失败后的\x20checkpoint、重试条件、人工接管方式和避免重复写入的核对步骤】\x0a','\x0a##\x20返回契约\x0a\x0a最终输出必须遵守\x20[output-contract.md](output-contract.md)。本文件只补充运行态安全约束;展示字段、状态枚举、失败暴露和人工处理项以\x20output-contract.md\x20为准。\x0a\x0a##\x20失败恢复\x0a\x0a【填写失败状态识别、checkpoint、重试和人工接管方式】\x0a\x0a##\x20禁止事项\x0a\x0a-\x20禁止链接或读取\x20Skill\x20目录外的\x20AGENTS.md、wiki、docs、脚本或个人路径作为运行时必读依赖。\x0a-\x20禁止把说明性的缓存路径、安装路径、示例路径或排障路径包装成运行时必读依赖。\x0a-\x20禁止在未确认影响范围时执行写入。\x0a-\x20禁止隐藏失败或把未知状态描述为成功。\x0a','read','1.\x20受控模板预览:【填写待维护内容、影响范围和预览方式】\x0a2.\x20用户确认:【填写确认信息和不可省略的人工判断点】\x0a3.\x20受控维护:【填写确认后的维护步骤和记录方式】\x0a4.\x20只读核对:【填写维护后的核对入口、差异和回滚/修正方式】','Invalid\x20Skill\x20name:\x20','write\x20类型在\x20dry_run\x20下只展示预览、影响范围和差异,不写入业务数据。\x0aconfirmed\x20写入后必须执行读回核对,并把核对结果写入\x20verification。\x0a读回异常、业务状态未知或结果不一致时,status\x20必须为\x20partial_successfailed\x20或\x20needs_manual_check。','1.\x20只读查询:【填写查询入口、过滤条件和权限边界】\x0a2.\x20业务汇总:【填写统计口径、字段解释和异常提示】\x0a3.\x20查看链接:【填写可供运营人员复核的记录、页面或报告链接】\x0a4.\x20禁止写入:不得创建、更新、删除或触发会改变业务状态的动作。','456648COVtSy','---\x0aname:\x20','Use\x20one\x20of:\x20','479854swQyRc','test','type','\x0a\x20\x20created:\x20\x22','\x0a\x0a##\x20内部要求\x0a\x0a执行前必须读取并遵守\x20[runtime-contract.md](references/runtime-contract.md)\x20和\x20[output-contract.md](references/output-contract.md)。\x0a\x0a##\x20使用边界\x0a\x0a【填写该\x20Skill\x20能做什么、不能做什么、适用业务范围和禁止扩大执行范围】\x0a\x0a##\x20输入门禁\x0a\x0a【填写必须具备的输入;缺失业务对象、执行范围、确认信息或权限上下文时必须停止】\x0a\x0a##\x20与现有能力集成\x0a\x0a【填写本\x20Skill\x20使用的\x20lovrabet\x20data、lovrabet\x20sql、lovrabet\x20bff\x20或\x20lovrabet\x20personal-bff\x20命令,以及包内\x20references/\x20中沉淀的运行态入口、脚本对接方式或人工操作边界。不得依赖\x20Skill\x20目录外文件、绝对路径或本机专属配置。】\x0a\x0a##\x20平台能力优先\x0a\x0a【填写本\x20Skill\x20优先使用的\x20Lovrabet\x20平台命令:lovrabet\x20data\x20/\x20lovrabet\x20sql\x20/\x20lovrabet\x20bff\x20/\x20lovrabet\x20personal-bff。本地脚本仅用于平台明确不覆盖的文件格式转换、静态校验、展示整理或第三方薄适配;不得用本地脚本替代平台命令承载业务写入、权限判断、状态机、审批提交或回滚。】\x0a\x0a##\x20第三方服务边界\x0a\x0a【填写是否调用第三方识别、生成、上传或行业服务;如涉及\x20API\x20Key、OAuth、Cookie、登录态或业务数据上传,必须说明由\x20Lovrabet\x20应用后台、BFF\x20或平台适配器统一配置。目标治理口径是\x20Skill\x20不读取、不分发、不保存明文凭证。详细凭证、额度、审计和审核发布规则写入\x20references/runtime-contract.md。】\x0a\x0a##\x20SOP\x20工作流\x0a\x0a','6AyDgYK','49369353yCBZGq','2636BTUZRE','trainer','SKILL.md','skillName','\x20类型默认不执行业务写入;如流程包含受控维护或人工确认,也必须用\x20mode\x20标明执行阶段并暴露核对结果。','\x22\x0a\x20\x20generator:\x20\x22lovrabet\x20skill\x20create\x22\x0a---\x0a\x0a#\x20','.agents/skills','119rDRpFi'];a31_0x18a7=function(){return _0x42100e;};return a31_0x18a7();}function typeWorkflow(_0x1c4e88){const _0x2d88d2=a31_0x122da3;if(_0x1c4e88===_0x2d88d2(0x18c))return _0x2d88d2(0x190);if(_0x1c4e88===_0x2d88d2(0x19c))return _0x2d88d2(0x18d);return _0x2d88d2(0x17e);}function businessStateSection(_0x484291){if(_0x484291!=='write')return'';return'##\x20业务状态流转\x0a\x0a【填写本\x20Skill\x20的前置业务状态、允许动作、目标业务状态、fromStatus\x20->\x20toStatus\x20预览、写入后读回核对,以及\x20unknown\x20/\x20needs_manual_check\x20处理。状态迁移合法性必须由业务\x20BFF、Lovrabet\x20平台命令或服务端接口判断,Skill\x20不作为状态事实源。】';}
1
+ const a31_0x1b75e9=a31_0x2fc7;(function(_0x5aa6b4,_0x12f24c){const _0x2c6575=a31_0x2fc7,_0x53c138=_0x5aa6b4();while(!![]){try{const _0x2969eb=parseInt(_0x2c6575(0xcd))/0x1*(-parseInt(_0x2c6575(0xe4))/0x2)+parseInt(_0x2c6575(0xc4))/0x3*(-parseInt(_0x2c6575(0xc1))/0x4)+parseInt(_0x2c6575(0xe6))/0x5*(-parseInt(_0x2c6575(0xe8))/0x6)+parseInt(_0x2c6575(0xc5))/0x7+-parseInt(_0x2c6575(0xf2))/0x8*(-parseInt(_0x2c6575(0xca))/0x9)+parseInt(_0x2c6575(0xd4))/0xa+-parseInt(_0x2c6575(0xd0))/0xb*(-parseInt(_0x2c6575(0xe1))/0xc);if(_0x2969eb===_0x12f24c)break;else _0x53c138['push'](_0x53c138['shift']());}catch(_0x2a91af){_0x53c138['push'](_0x53c138['shift']());}}}(a31_0x51fe,0x9b165));import{CliErrors}from'../../errors.js';export const SKILL_TYPES=['write',a31_0x1b75e9(0xe5),a31_0x1b75e9(0xf0)];export const DEFAULT_SKILL_TARGET=a31_0x1b75e9(0xe0);function a31_0x51fe(){const _0x35ca0a=['1.\x20只读查询:【填写查询入口、过滤条件和权限边界】\x0a2.\x20业务汇总:【填写统计口径、字段解释和异常提示】\x0a3.\x20查看链接:【填写可供运营人员复核的记录、页面或报告链接】\x0a4.\x20禁止写入:不得创建、更新、删除或触发会改变业务状态的动作。','.agents/skills','9324204VyMJaf','\x20只作为模板选择器,不替代业务权限、风险等级和用户确认。\x0a\x0a##\x20运行态入口\x0a\x0a【填写包内说明的运行态入口、可调用脚本或人工执行边界】\x0a\x0a##\x20凭证与登录态\x0a\x0a【填写本\x20Skill\x20依赖的第三方服务凭证和登录态治理方式。强烈建议通过\x20Lovrabet\x20应用后台或平台服务端适配器做平台托管配置;开发先行阶段如存在临时明文凭证,应标注后续治理计划、适用环境和额度边界,并避免进入长期交付内容。】\x0a\x0a##\x20第三方候选资产\x0a\x0a【填写第三方生成类结果的消费边界。生成类结果仅作为候选素材;涉及商品图、客户资料、Excel\x20或业务文件上传时,必须声明授权、额度、审计、失败降级和人工审核/业务\x20BFF\x20校验后的发布边界。】\x0a\x0a##\x20预览\x20/\x20写入\x20/\x20核对差异\x0a\x0a【填写预览、确认、正式执行和只读核对的顺序】\x0a\x0a','Use\x20lowercase\x20letters,\x20numbers,\x20and\x20single\x20hyphens,\x20for\x20example\x20invoice-export.','306424CbUTOr','read','5maShKT','\x22\x0a\x20\x20generator:\x20\x22lovrabet\x20skill\x20create\x22\x0a---\x0a\x0a#\x20','6751950mUtmmR','\x20的最终回复必须让运营人员能判断:是否执行、影响了什么、如何复核、失败后下一步做什么。\x0a\x0a##\x20状态枚举\x0a\x0astatus:\x20success\x20|\x20no_op\x20|\x20partial_success\x20|\x20blocked\x20|\x20failed\x20|\x20needs_manual_check\x0a\x0a-\x20success:动作已完成,且关键结果已核对。\x0a-\x20no_op:没有符合条件的对象或无需变更。\x0a-\x20partial_success:部分对象完成,未完成对象必须进入\x20errors\x20和\x20nextActions。\x0a-\x20blocked:缺少输入、权限、确认或平台能力,无法继续。\x0a-\x20failed:执行失败,必须说明失败阶段、错误和恢复方式。\x0a-\x20needs_manual_check:读回异常、状态未知或人工判断缺失。\x0a\x0aunknown、partial_success、failed、needs_manual_check\x20不能包装为\x20success。\x0a\x0a##\x20输出模式\x0a\x0amode:\x20dry_run\x20|\x20confirmed\x20|\x20read_only\x0a\x0a-\x20dry_run:只展示预览、影响范围和差异,不写入业务数据。\x0a-\x20confirmed:用户明确确认后的执行模式;写入后必须读回核对。\x0a-\x20read_only:只查询、汇总或核对,不触发写入。\x0a\x0a##\x20必填字段\x0a\x0a-\x20status\x0a-\x20mode\x0a-\x20summary\x0a-\x20scope\x0a-\x20changes\x0a-\x20verification\x0a-\x20warnings\x0a-\x20errors\x0a-\x20nextActions\x0a\x0a##\x20写入结果\x0a\x0a','references/output-contract.md','includes','test','1.\x20dry-run:【填写预览入口、影响范围和差异摘要;不得写入业务数据】\x0a2.\x20用户确认:【填写确认语义、目标对象、数量、风险和操作者责任】\x0a3.\x20confirmed\x20写入:【填写确认后的写入入口和幂等/防重复要求】\x0a4.\x20只读核对:【填写写入后的查询核对、差异展示和结果链接】\x0a5.\x20checkpoint:【填写失败恢复、重试条件和人工接管方式】','\x0a\x0a##\x20展示规范\x0a\x0a【填写面向运营人员的展示字段、差异摘要、成功/失败状态和人工处理项;最终输出必须按\x20references/output-contract.md\x20的\x20status\x20/\x20mode\x20/\x20summary\x20/\x20errors\x20/\x20nextActions\x20返回,不能把\x20unknown、partial_success、failed\x20或\x20needs_manual_check\x20包装为\x20success。】\x0a\x0a##\x20失败恢复\x0a\x0a【填写失败后的\x20checkpoint、重试条件、人工接管方式和避免重复写入的核对步骤】\x0a','Unsupported\x20Skill\x20type:\x20','trainer','##\x20状态读回与未知状态处理\x0a\x0a【填写业务状态事实源、fromStatus\x20->\x20toStatus\x20预览、写入后读回核对方式,以及\x20unknown\x20/\x20needs_manual_check\x20的处理边界】\x0a\x0a','16xASeDK','1.\x20受控模板预览:【填写待维护内容、影响范围和预览方式】\x0a2.\x20用户确认:【填写确认信息和不可省略的人工判断点】\x0a3.\x20受控维护:【填写确认后的维护步骤和记录方式】\x0a4.\x20只读核对:【填写维护后的核对入口、差异和回滚/修正方式】','1042872FBKNah','##\x20业务状态流转\x0a\x0a【填写本\x20Skill\x20的前置业务状态、允许动作、目标业务状态、fromStatus\x20->\x20toStatus\x20预览、写入后读回核对,以及\x20unknown\x20/\x20needs_manual_check\x20处理。状态迁移合法性必须由业务\x20BFFLovrabet\x20平台命令或服务端接口判断,Skill\x20不作为状态事实源。】','#\x20Runtime\x20Contract\x0a\x0aSkill\x20push\x20后的\x20zip\x20包就是完整交付产物。','9AvzafM','4071627XPnguR','Use\x20one\x20of:\x20','\x0a\x20\x20created:\x20\x22','\x0a\x0a##\x20错误与人工接管\x0a\x0aerrors\x20必须包含失败阶段、错误原因和可复核对象。\x0anextActions\x20必须给出重试、补充输入、人工接管或停止处理的动作。\x0a','---\x0aname:\x20','366048KpwmDn','validation','trim','1ypVkLX','timestamp','skillName','22FnKrCM','SKILL.md','Invalid\x20Skill\x20name:\x20','references/runtime-contract.md','4788890JdMugT','write','toISOString','\x20的所有必读规则必须位于\x20SKILL.md\x20或\x20references/\x20内。\x0a\x0a##\x20必读文档\x0a\x0a-\x20[SKILL.md](../SKILL.md)\x0a-\x20[runtime-contract.md](runtime-contract.md)\x0a-\x20[output-contract.md](output-contract.md)\x0a\x0a##\x20主边界\x0a\x0a-\x20不得依赖\x20Skill\x20目录外的仓库文件、绝对路径、file\x20URL\x20或本机专属配置。\x0a-\x20文档中的缓存路径、安装路径、示例路径或排障路径不等于运行时包外依赖;只有明确要求读取、链接或执行包外内容时才属于自包含风险。\x0a-\x20如需承接仓库规范,必须把必要规则内化到本\x20Skill\x20包内的\x20references/\x20文件中。\x0a-\x20type=','\x0adescription:\x20\x22【填写模型触发语义:用户在什么场景应使用本\x20Skill、不要使用的边界和关键词】\x22\x0ametadata:\x0a\x20\x20type:\x20','.\x20Use\x20lowercase\x20letters,\x20numbers,\x20and\x20single\x20hyphens.','\x20类型默认不执行业务写入;如流程包含受控维护或人工确认,也必须用\x20mode\x20标明执行阶段并暴露核对结果。','#\x20Output\x20Contract\x0a\x0a','\x0a\x0a##\x20内部要求\x0a\x0a执行前必须读取并遵守\x20[runtime-contract.md](references/runtime-contract.md)\x20和\x20[output-contract.md](references/output-contract.md)。\x0a\x0a##\x20使用边界\x0a\x0a【填写该\x20Skill\x20能做什么、不能做什么、适用业务范围和禁止扩大执行范围】\x0a\x0a##\x20输入门禁\x0a\x0a【填写必须具备的输入;缺失业务对象、执行范围、确认信息或权限上下文时必须停止】\x0a\x0a##\x20与现有能力集成\x0a\x0a【填写本\x20Skill\x20使用的\x20lovrabet\x20data、lovrabet\x20sql、lovrabet\x20bff\x20或\x20lovrabet\x20personal-bff\x20命令,以及包内\x20references/\x20中沉淀的运行态入口、脚本对接方式或人工操作边界。不得依赖\x20Skill\x20目录外文件、绝对路径或本机专属配置。】\x0a\x0a##\x20平台能力优先\x0a\x0a【填写本\x20Skill\x20优先使用的\x20Lovrabet\x20平台命令:lovrabet\x20data\x20/\x20lovrabet\x20sql\x20/\x20lovrabet\x20bff\x20/\x20lovrabet\x20personal-bff。本地脚本仅用于平台明确不覆盖的文件格式转换、静态校验、展示整理或第三方薄适配;不得用本地脚本替代平台命令承载业务写入、权限判断、状态机、审批提交或回滚。】\x0a\x0a##\x20第三方服务边界\x0a\x0a【填写是否调用第三方识别、生成、上传或行业服务;如涉及\x20API\x20Key、OAuth、Cookie、登录态或业务数据上传,必须说明由\x20Lovrabet\x20应用后台、BFF\x20或平台适配器统一配置。目标治理口径是\x20Skill\x20不读取、不分发、不保存明文凭证。详细凭证、额度、审计和审核发布规则写入\x20references/runtime-contract.md。】\x0a\x0a##\x20SOP\x20工作流\x0a\x0a','type','write\x20类型在\x20dry_run\x20下只展示预览、影响范围和差异,不写入业务数据。\x0aconfirmed\x20写入后必须执行读回核对,并把核对结果写入\x20verification。\x0a读回异常、业务状态未知或结果不一致时,status\x20必须为\x20partial_success、failed\x20或\x20needs_manual_check。'];a31_0x51fe=function(){return _0x35ca0a;};return a31_0x51fe();}export const SKILL_NAME_PATTERN=/^[a-z0-9]+(?:-[a-z0-9]+)*$/;export const RUNTIME_CONTRACT_FILE=a31_0x1b75e9(0xd3);export const OUTPUT_CONTRACT_FILE=a31_0x1b75e9(0xea);export function validateSkillName(_0x2e7c43){const _0x103173=a31_0x1b75e9,_0xabc28f=_0x2e7c43[_0x103173(0xcc)]();if(!SKILL_NAME_PATTERN[_0x103173(0xec)](_0xabc28f))throw CliErrors['validation'](_0x103173(0xd2)+_0x2e7c43+_0x103173(0xd9),_0x103173(0xe3));return _0xabc28f;}function a31_0x2fc7(_0x483793,_0x11cf77){_0x483793=_0x483793-0xc0;const _0x51feb9=a31_0x51fe();let _0x2fc7dc=_0x51feb9[_0x483793];return _0x2fc7dc;}export function normalizeSkillTemplateType(_0x55ac89){const _0x53ab2c=a31_0x1b75e9,_0xb801f=(_0x55ac89||_0x53ab2c(0xd5))[_0x53ab2c(0xcc)]()||_0x53ab2c(0xd5);if(SKILL_TYPES[_0x53ab2c(0xeb)](_0xb801f))return _0xb801f;throw CliErrors[_0x53ab2c(0xcb)](_0x53ab2c(0xef)+_0x55ac89,_0x53ab2c(0xc6)+SKILL_TYPES['join'](',\x20')+'.');}export function renderSkillTemplate(_0x3f5743){const _0x55df52=a31_0x1b75e9,_0xde1759=validateSkillName(_0x3f5743[_0x55df52(0xcf)]),_0x59d614=normalizeSkillTemplateType(_0x3f5743[_0x55df52(0xdd)]),_0x35d192=_0x3f5743[_0x55df52(0xce)]??new Date()[_0x55df52(0xd6)]();return{'skillName':_0xde1759,'type':_0x59d614,'files':[{'path':_0x55df52(0xd1),'content':renderSkillMd(_0xde1759,_0x59d614,_0x35d192)},{'path':RUNTIME_CONTRACT_FILE,'content':renderRuntimeContract(_0xde1759,_0x59d614)},{'path':OUTPUT_CONTRACT_FILE,'content':renderOutputContract(_0xde1759,_0x59d614)}]};}function renderSkillMd(_0x47a6af,_0x2ae0e7,_0x15c12f){const _0x33fc56=a31_0x1b75e9,_0x16516f=typeWorkflow(_0x2ae0e7);return _0x33fc56(0xc9)+_0x47a6af+_0x33fc56(0xd8)+_0x2ae0e7+_0x33fc56(0xc7)+_0x15c12f+_0x33fc56(0xe7)+_0x47a6af+_0x33fc56(0xdc)+_0x16516f+'\x0a\x0a'+businessStateSection(_0x2ae0e7)+_0x33fc56(0xee);}function renderRuntimeContract(_0x1097d0,_0x5e8a2f){const _0x187c44=a31_0x1b75e9,_0x3c5efc=_0x5e8a2f===_0x187c44(0xd5)?_0x187c44(0xf1):'';return _0x187c44(0xc3)+_0x1097d0+_0x187c44(0xd7)+_0x5e8a2f+_0x187c44(0xe2)+_0x3c5efc+'\x0a##\x20返回契约\x0a\x0a最终输出必须遵守\x20[output-contract.md](output-contract.md)。本文件只补充运行态安全约束;展示字段、状态枚举、失败暴露和人工处理项以\x20output-contract.md\x20为准。\x0a\x0a##\x20失败恢复\x0a\x0a【填写失败状态识别、checkpoint、重试和人工接管方式】\x0a\x0a##\x20禁止事项\x0a\x0a-\x20禁止链接或读取\x20Skill\x20目录外的\x20AGENTS.md、wiki、docs、脚本或个人路径作为运行时必读依赖。\x0a-\x20禁止把说明性的缓存路径、安装路径、示例路径或排障路径包装成运行时必读依赖。\x0a-\x20禁止在未确认影响范围时执行写入。\x0a-\x20禁止隐藏失败或把未知状态描述为成功。\x0a';}function renderOutputContract(_0x259454,_0x16340c){const _0x105394=a31_0x1b75e9,_0x259d28=_0x16340c===_0x105394(0xd5)?_0x105394(0xde):_0x16340c+_0x105394(0xda);return _0x105394(0xdb)+_0x259454+_0x105394(0xe9)+_0x259d28+_0x105394(0xc8);}function typeWorkflow(_0x5aab37){const _0x182e03=a31_0x1b75e9;if(_0x5aab37===_0x182e03(0xe5))return _0x182e03(0xdf);if(_0x5aab37==='trainer')return _0x182e03(0xc0);return _0x182e03(0xed);}function businessStateSection(_0x4db6c5){const _0x4ba4a8=a31_0x1b75e9;if(_0x4db6c5!==_0x4ba4a8(0xd5))return'';return _0x4ba4a8(0xc2);}
@@ -1 +1 @@
1
- const a32_0x37aa1e=a32_0x22cd;(function(_0x490e6c,_0x35400e){const _0x549c6c=a32_0x22cd,_0x374d74=_0x490e6c();while(!![]){try{const _0xc9f249=-parseInt(_0x549c6c(0x137))/0x1*(-parseInt(_0x549c6c(0x17f))/0x2)+parseInt(_0x549c6c(0x161))/0x3+parseInt(_0x549c6c(0x18a))/0x4*(-parseInt(_0x549c6c(0x1a2))/0x5)+-parseInt(_0x549c6c(0x169))/0x6+-parseInt(_0x549c6c(0x18f))/0x7*(-parseInt(_0x549c6c(0x189))/0x8)+parseInt(_0x549c6c(0x13e))/0x9*(-parseInt(_0x549c6c(0x199))/0xa)+-parseInt(_0x549c6c(0x158))/0xb*(-parseInt(_0x549c6c(0x1b3))/0xc);if(_0xc9f249===_0x35400e)break;else _0x374d74['push'](_0x374d74['shift']());}catch(_0x32fc63){_0x374d74['push'](_0x374d74['shift']());}}}(a32_0x18c3,0xd29cd));import{existsSync,lstatSync,readFileSync,readdirSync}from'node:fs';import{dirname,extname,isAbsolute,relative,resolve}from'node:path';import{CliErrors}from'../../errors.js';const SKILL_FILE='SKILL.md',CONTRACT_FILE='references/runtime-contract.md',OUTPUT_CONTRACT_FILE='references/output-contract.md',SUPPORTED_SKILL_TYPES=new Set([a32_0x37aa1e(0x1bf),a32_0x37aa1e(0x1a1),a32_0x37aa1e(0x18b)]),REQUIRED_SECTIONS=[a32_0x37aa1e(0x165),a32_0x37aa1e(0x164),'SOP\x20工作流',a32_0x37aa1e(0x172),a32_0x37aa1e(0x190)],OUTPUT_CONTRACT_REQUIRED_FIELDS=[{'token':/\bstatus\b|状态/i,'label':a32_0x37aa1e(0x141)},{'token':/\bsummary\b|摘要/i,'label':a32_0x37aa1e(0x1a3)},{'token':/\berrors?\b|错误/i,'label':a32_0x37aa1e(0x146)},{'token':/\bnextActions?\b|next\s+actions?|后续动作|下一步/i,'label':'nextActions'}],PLACEHOLDER_PATTERN=/【[^】]*】/g,EXTERNAL_PATH_PATTERN=/(^|[\s(["'])((?:\/Users\/|~\/|file:\/\/)[^\s)"']*)/g,MARKDOWN_LINK_PATTERN=/\[[^\]]+\]\(([^)]+)\)/g,SECRET_VALUE_PATTERNS=[/\bsk-[A-Za-z0-9_-]{20,}\b/i,/\b(?:api[-_ ]?key|secret|token|access[-_ ]?key)\s*[:=]\s*["']?(?!<|your\b|你的|paste\b|redacted\b)([A-Za-z0-9_-]{20,})/i,/\bAuthorization\s*:\s*Bearer\s+(?!<|your\b|你的|paste\b|redacted\b)[A-Za-z0-9._-]{16,}/i,/\bCookie\s*:\s*(?!<|your\b|你的|paste\b|redacted\b)[A-Za-z0-9_.-]+=[^;\s]{8,}/i];export function validateSkillDirectory(_0x55f57e,_0x441b3a={}){const _0x3a09fa=a32_0x37aa1e,_0x943894=resolve(_0x55f57e),_0x51aaf9=[];if(!existsSync(_0x943894)||!lstatSync(_0x943894)[_0x3a09fa(0x18d)]())throw CliErrors['validation'](_0x3a09fa(0x15d)+_0x55f57e);const _0x2bf698=loadSkillFiles(_0x943894,_0x51aaf9),_0x4577b8=_0x2bf698[_0x3a09fa(0x1b1)](_0x5ab8a2=>_0x5ab8a2['path']===SKILL_FILE),_0x4d64ec=_0x2bf698['find'](_0x48b098=>_0x48b098[_0x3a09fa(0x176)]===CONTRACT_FILE),_0x585f47=_0x2bf698[_0x3a09fa(0x1b1)](_0xae0fd4=>_0xae0fd4[_0x3a09fa(0x176)]===OUTPUT_CONTRACT_FILE),_0x294df5=_0x4577b8?parseFrontmatter(_0x4577b8[_0x3a09fa(0x160)]):{'hasFrontmatter':![]};!_0x4577b8&&_0x51aaf9[_0x3a09fa(0x1c0)](issue(_0x3a09fa(0x134),_0x3a09fa(0x155),SKILL_FILE,_0x3a09fa(0x1b4),_0x3a09fa(0x14a)));!_0x4d64ec&&_0x51aaf9['push'](issue(_0x3a09fa(0x134),_0x3a09fa(0x155),CONTRACT_FILE,'Missing\x20references/runtime-contract.md.',_0x3a09fa(0x166)));!_0x585f47&&_0x51aaf9[_0x3a09fa(0x1c0)](issue(outputContractIssueLevel(),'output-contract-recommended',OUTPUT_CONTRACT_FILE,_0x3a09fa(0x1a9),'Recommended\x20for\x20all\x20Skill\x20types;\x20run\x20with\x20--strict\x20to\x20enforce\x20a\x20packaged\x20output\x20contract.'));_0x4577b8&&(validateFrontmatter(_0x4577b8['path'],_0x294df5,_0x51aaf9),validateRequiredSections(_0x4577b8[_0x3a09fa(0x160)],_0x51aaf9),validateWriteSafety(_0x4577b8[_0x3a09fa(0x160)],_0x294df5[_0x3a09fa(0x16f)],_0x51aaf9));_0x585f47&&(validateOutputContractReference(_0x4577b8,_0x4d64ec,_0x51aaf9),validateOutputContractRequiredFields(_0x585f47,_0x51aaf9));for(const _0x4e7c79 of _0x2bf698['filter'](_0x53f0bb=>isMarkdownFile(_0x53f0bb[_0x3a09fa(0x176)]))){validatePlaceholders(_0x4e7c79,_0x51aaf9),validateSecretExposure(_0x4e7c79,_0x51aaf9),validateSelfContainedLinks(_0x943894,_0x4e7c79,_0x51aaf9);}_0x441b3a[_0x3a09fa(0x150)]&&_0x4577b8&&validateDeliveryConsistency(_0x4577b8[_0x3a09fa(0x160)],_0x294df5[_0x3a09fa(0x16f)],_0x585f47?.[_0x3a09fa(0x160)],_0x51aaf9);const _0x3d73fa=_0x51aaf9['filter'](_0x151d32=>_0x151d32[_0x3a09fa(0x157)]===_0x3a09fa(0x134)),_0x6057a3=_0x51aaf9[_0x3a09fa(0x154)](_0x11fe9c=>_0x11fe9c[_0x3a09fa(0x157)]===_0x3a09fa(0x187));return{'ok':_0x3d73fa[_0x3a09fa(0x17b)]===0x0&&(!_0x441b3a[_0x3a09fa(0x150)]||_0x6057a3['length']===0x0),'dir':_0x943894,'type':_0x294df5[_0x3a09fa(0x16f)],'errors':_0x3d73fa,'warnings':_0x6057a3};}export function throwIfSkillValidationFailed(_0xf34046,_0x1647b6=![]){const _0x4187d1=a32_0x37aa1e;if(_0xf34046['ok'])return;const _0x3baa54=_0x1647b6?[..._0xf34046[_0x4187d1(0x146)],..._0xf34046['warnings']]:_0xf34046['errors'],_0x400e2b=_0x3baa54[_0x4187d1(0x1ae)](_0x5da09a=>{const _0x32f616=_0x4187d1,_0x55e24b=_0x5da09a['section']?'#'+_0x5da09a[_0x32f616(0x163)]:'';return _0x5da09a['level']['toUpperCase']()+'\x20'+_0x5da09a[_0x32f616(0x183)]+'\x20'+_0x5da09a[_0x32f616(0x19a)]+_0x55e24b+':\x20'+_0x5da09a[_0x32f616(0x143)]+'\x20Fix:\x20'+_0x5da09a[_0x32f616(0x182)];});throw CliErrors[_0x4187d1(0x162)](_0x4187d1(0x1b8)+_0x400e2b[_0x4187d1(0x196)]('\x0a'),_0x4187d1(0x193));}function loadSkillFiles(_0x1a427b,_0x149fcd){const _0x3c19fb=[];function _0x4974e4(_0x4343f8){const _0x35fb30=a32_0x22cd;for(const _0x1b5b40 of readdirSync(_0x4343f8,{'withFileTypes':!![]})[_0x35fb30(0x13b)]((_0x2dea16,_0x176a65)=>_0x2dea16[_0x35fb30(0x1a4)][_0x35fb30(0x153)](_0x176a65[_0x35fb30(0x1a4)]))){const _0x5e8329=resolve(_0x4343f8,_0x1b5b40[_0x35fb30(0x1a4)]);if(_0x1b5b40[_0x35fb30(0x185)]()){_0x149fcd['push'](issue(_0x35fb30(0x134),'structure-complete',toRelative(_0x1a427b,_0x5e8329),'Symlinks\x20are\x20not\x20supported\x20in\x20Skill\x20packages.',_0x35fb30(0x15c)));continue;}if(_0x1b5b40[_0x35fb30(0x18d)]()){_0x4974e4(_0x5e8329);continue;}if(!_0x1b5b40['isFile']())continue;const _0x42641d=toRelative(_0x1a427b,_0x5e8329);_0x3c19fb[_0x35fb30(0x1c0)]({'path':_0x42641d,'absolutePath':_0x5e8329,'content':readFileSync(_0x5e8329,'utf8')});}}return _0x4974e4(_0x1a427b),_0x3c19fb;}function validateFrontmatter(_0x230bf6,_0x5083ef,_0xf4149){const _0x3bba6b=a32_0x37aa1e;if(!_0x5083ef['hasFrontmatter']){_0xf4149[_0x3bba6b(0x1c0)](issue('error',_0x3bba6b(0x1a0),_0x230bf6,_0x3bba6b(0x178),_0x3bba6b(0x19b)));return;}!_0x5083ef[_0x3bba6b(0x1a4)]?.[_0x3bba6b(0x1a5)]()&&_0xf4149[_0x3bba6b(0x1c0)](issue(_0x3bba6b(0x134),_0x3bba6b(0x1a0),_0x230bf6,_0x3bba6b(0x14b),'Set\x20name\x20to\x20the\x20Skill\x20directory\x20code.'));!_0x5083ef[_0x3bba6b(0x1bd)]?.[_0x3bba6b(0x1a5)]()&&_0xf4149[_0x3bba6b(0x1c0)](issue(_0x3bba6b(0x134),'description-required',_0x230bf6,_0x3bba6b(0x14f),_0x3bba6b(0x1b2)));if(!_0x5083ef['type']?.[_0x3bba6b(0x1a5)]())_0xf4149['push'](issue(_0x3bba6b(0x134),_0x3bba6b(0x1a0),_0x230bf6,_0x3bba6b(0x198),_0x3bba6b(0x140)));else!SUPPORTED_SKILL_TYPES[_0x3bba6b(0x13f)](_0x5083ef[_0x3bba6b(0x16f)])&&_0xf4149[_0x3bba6b(0x1c0)](issue(_0x3bba6b(0x134),_0x3bba6b(0x1a0),_0x230bf6,_0x3bba6b(0x14d),_0x3bba6b(0x168)));}function validateRequiredSections(_0x1b9a84,_0x7b4e4a){const _0xf86382=a32_0x37aa1e;for(const _0x41fed9 of REQUIRED_SECTIONS){!hasSection(_0x1b9a84,_0x41fed9)&&_0x7b4e4a[_0xf86382(0x1c0)](issue(_0xf86382(0x134),_0xf86382(0x197),SKILL_FILE,_0xf86382(0x174)+_0x41fed9+'.',_0xf86382(0x180)+_0x41fed9+'\x20section\x20with\x20concrete\x20delivery\x20guidance.',_0x41fed9));}}function validateWriteSafety(_0x3ec4b4,_0x3da516,_0x161c46){const _0x18970e=a32_0x37aa1e;if(_0x3da516!=='write')return;const _0x3f7c30=[{'token':/dry-?run/i,'label':_0x18970e(0x167)},{'token':/用户确认|confirmed|确认后/,'label':_0x18970e(0x1aa)},{'token':/失败恢复|checkpoint|重试|人工接管/,'label':_0x18970e(0x136)}];for(const _0x275ee4 of _0x3f7c30){!_0x275ee4[_0x18970e(0x1be)][_0x18970e(0x135)](_0x3ec4b4)&&_0x161c46['push'](issue(_0x18970e(0x134),_0x18970e(0x152),SKILL_FILE,_0x18970e(0x139)+_0x275ee4[_0x18970e(0x17e)]+'.',_0x18970e(0x19c)));}}function validateOutputContractReference(_0xb4174c,_0x3affe5,_0x1e0842){const _0x58637f=a32_0x37aa1e,_0x10cd7f=[_0xb4174c,_0x3affe5][_0x58637f(0x154)](_0x2b19b4=>!!_0x2b19b4)['some'](_0x5405b8=>/\boutput-contract\.md\b/i['test'](_0x5405b8[_0x58637f(0x160)]));if(_0x10cd7f)return;_0x1e0842['push'](issue(outputContractIssueLevel(),_0x58637f(0x1b7),OUTPUT_CONTRACT_FILE,_0x58637f(0x195),_0x58637f(0x1ab)));}function validateOutputContractRequiredFields(_0x273f57,_0x5a4ca4){const _0x48f5d0=a32_0x37aa1e,_0x965b08=OUTPUT_CONTRACT_REQUIRED_FIELDS[_0x48f5d0(0x154)](_0x4211da=>!_0x4211da[_0x48f5d0(0x1be)][_0x48f5d0(0x135)](_0x273f57[_0x48f5d0(0x160)]))[_0x48f5d0(0x1ae)](_0x1168e3=>_0x1168e3[_0x48f5d0(0x17e)]);if(_0x965b08[_0x48f5d0(0x17b)]===0x0)return;_0x5a4ca4[_0x48f5d0(0x1c0)](issue(outputContractIssueLevel(),_0x48f5d0(0x1b6),_0x273f57['path'],_0x48f5d0(0x151)+_0x965b08[_0x48f5d0(0x196)](',\x20')+'.','Recommended\x20for\x20all\x20Skill\x20types;\x20define\x20status,\x20summary,\x20errors,\x20and\x20nextActions,\x20or\x20use\x20--strict\x20to\x20enforce\x20it.'));}function outputContractIssueLevel(){const _0x4ffd4d=a32_0x37aa1e;return _0x4ffd4d(0x187);}function a32_0x22cd(_0x199348,_0x1fbe21){_0x199348=_0x199348-0x132;const _0x18c37f=a32_0x18c3();let _0x22cda8=_0x18c37f[_0x199348];return _0x22cda8;}function validatePlaceholders(_0x2f411c,_0x1f9794){const _0xa7b3e4=a32_0x37aa1e,_0x1f5741=[..._0x2f411c[_0xa7b3e4(0x160)]['matchAll'](PLACEHOLDER_PATTERN)];_0x1f5741[_0xa7b3e4(0x17b)]>0x0&&_0x1f9794[_0xa7b3e4(0x1c0)](issue(_0xa7b3e4(0x134),'placeholder-filled',_0x2f411c[_0xa7b3e4(0x176)],'Found\x20'+_0x1f5741[_0xa7b3e4(0x17b)]+'\x20unfinished\x20placeholder(s).',_0xa7b3e4(0x18e)));}function validateSelfContainedLinks(_0x369b2d,_0x451e73,_0x4af109){const _0x1f8064=a32_0x37aa1e;for(const _0x135e5a of _0x451e73[_0x1f8064(0x160)][_0x1f8064(0x173)](MARKDOWN_LINK_PATTERN)){const _0x127bb4=(_0x135e5a[0x1]??'')[_0x1f8064(0x1a5)]();if(!_0x127bb4||isWebUrl(_0x127bb4)||_0x127bb4[_0x1f8064(0x1a6)]('#'))continue;const _0x22ef8a=_0x127bb4[_0x1f8064(0x133)]('#',0x1)[0x0]??'';if(!_0x22ef8a)continue;const _0x3b559f=resolve(dirname(_0x451e73[_0x1f8064(0x1af)]),_0x22ef8a);!isPathInside(_0x3b559f,_0x369b2d)&&_0x4af109[_0x1f8064(0x1c0)](issue(_0x1f8064(0x134),_0x1f8064(0x194),_0x451e73[_0x1f8064(0x176)],_0x1f8064(0x144)+_0x127bb4+'.',_0x1f8064(0x16a)));}for(const _0x151aea of _0x451e73[_0x1f8064(0x160)][_0x1f8064(0x173)](EXTERNAL_PATH_PATTERN)){_0x4af109[_0x1f8064(0x1c0)](issue('warning',_0x1f8064(0x194),_0x451e73[_0x1f8064(0x176)],'Plain\x20text\x20local\x20path\x20may\x20be\x20a\x20non-portable\x20runtime\x20dependency:\x20'+(_0x151aea[0x2]??'')[_0x1f8064(0x1a5)]()+'.',_0x1f8064(0x170)));}}function validateDeliveryConsistency(_0x1b5b06,_0x25cec7,_0x124955,_0x2b1373){const _0x9f650d=a32_0x37aa1e;!hasSection(_0x1b5b06,'与现有能力集成')&&_0x2b1373[_0x9f650d(0x1c0)](issue('warning',_0x9f650d(0x15a),SKILL_FILE,_0x9f650d(0x18c),'Add\x20##\x20与现有能力集成\x20and\x20explain\x20packaged\x20runtime\x20entries\x20or\x20manual\x20boundaries.')),validatePlatformCommandFirst(_0x1b5b06,_0x2b1373),validateExternalServiceBoundary(_0x1b5b06,_0x2b1373),validateStateTransitionContract(_0x1b5b06,_0x25cec7,_0x2b1373),validateOrchestratorSmell(_0x1b5b06,_0x2b1373),validateOutputContractSemantics(_0x124955,_0x25cec7,_0x2b1373);}function validateOutputContractSemantics(_0x344055,_0x562b02,_0x27422e){const _0x46bed3=a32_0x37aa1e;if(!_0x344055)return;const _0xd2702d=[{'token':/\bsuccess\b/,'label':_0x46bed3(0x17a)},{'token':/\bno_op\b|no-op|no\s+op/i,'label':_0x46bed3(0x175)},{'token':/\bpartial_success\b|partial\s+success/i,'label':_0x46bed3(0x1bb)},{'token':/\bblocked\b/i,'label':'blocked'},{'token':/\bfailed\b/i,'label':_0x46bed3(0x1ba)},{'token':/\bneeds_manual_check\b|needs\s+manual\s+check/i,'label':_0x46bed3(0x1a7)},{'token':/(?:unknown|partial_success|failed|needs_manual_check)[^。\n]*(?:不能|不得|禁止)[^。\n]*success|不能[^。\n]*(?:包装|标记|报告)[^。\n]*success/i,'label':_0x46bed3(0x17d)}],_0x266632=_0xd2702d[_0x46bed3(0x154)](_0x42f63b=>!_0x42f63b[_0x46bed3(0x1be)][_0x46bed3(0x135)](_0x344055))[_0x46bed3(0x1ae)](_0x342b03=>_0x342b03[_0x46bed3(0x17e)]);if(_0x562b02===_0x46bed3(0x1bf)){const _0x175fac=/dry[_ -]?run[^。\n]*(?:不写入|不得写入|不触发写入|no write)|(?:不写入|不得写入|不触发写入|no write)[^。\n]*dry[_ -]?run/i[_0x46bed3(0x135)](_0x344055),_0x9d12db=/confirmed[^。\n]*(?:读回核对|重新读取|read[-\s]?back)|(?:读回核对|重新读取|read[-\s]?back)[^。\n]*confirmed/i[_0x46bed3(0x135)](_0x344055);if(!_0x175fac)_0x266632[_0x46bed3(0x1c0)](_0x46bed3(0x17c));if(!_0x9d12db)_0x266632[_0x46bed3(0x1c0)](_0x46bed3(0x1bc));}if(_0x266632['length']===0x0)return;_0x27422e[_0x46bed3(0x1c0)](issue(_0x46bed3(0x187),'output-contract-semantics',OUTPUT_CONTRACT_FILE,_0x46bed3(0x1b5)+_0x266632[_0x46bed3(0x196)](',\x20')+'.','Declare\x20success/no_op/partial_success/blocked/failed/needs_manual_check,\x20forbid\x20wrapping\x20unknown\x20or\x20partial\x20results\x20as\x20success,\x20and\x20define\x20dry_run/confirmed\x20read-back\x20behavior\x20for\x20write\x20Skills.',_0x46bed3(0x156)));}function validatePlatformCommandFirst(_0x1fc23c,_0x3d2726){const _0x2b06c6=a32_0x37aa1e,_0x2f1637=/scripts\/|\.py\b|\.mjs\b|\.js\b|python|node(?:js)?/i[_0x2b06c6(0x135)](_0x1fc23c);if(!_0x2f1637)return;const _0xe2aea2=/lovrabet\s+(?:data|sql|bff|personal-bff)\b/i[_0x2b06c6(0x135)](_0x1fc23c),_0x45d3bf=/平台[^。\n]*(?:不覆盖|未覆盖|空白|补位|不足)|文件格式转换|静态校验|展示整理|第三方[^。\n]*(?:适配|薄适配)|thin third-party|file conversion|static check/i[_0x2b06c6(0x135)](_0x1fc23c);(!_0xe2aea2||!_0x45d3bf)&&_0x3d2726[_0x2b06c6(0x1c0)](issue(_0x2b06c6(0x187),_0x2b06c6(0x1b0),SKILL_FILE,_0x2b06c6(0x147),_0x2b06c6(0x186),_0x2b06c6(0x15e)));const _0x25a113=/脚本[^。\n]*(?:写入|状态|状态机|权限|审批|提交|回滚|数据库|核保)|(?:scripts\/|\.py\b|python|node(?:js)?)[^。\n]*(?:写入|状态|状态机|权限|审批|提交|回滚|数据库|核保)/i['test'](_0x1fc23c),_0x1308bd=/脚本[^。\n]*(?:直接|负责)[^。\n]*(?:写入|状态|状态机|权限|审批|提交|回滚|数据库|核保)|(?:直接写入数据库|脚本负责权限判断|脚本负责.*状态)/i[_0x2b06c6(0x135)](_0x1fc23c),_0x37b33f=/状态事实源|业务事实源|lovrabet\s+bff|lovrabet\s+data|平台服务端接口|服务端接口|业务\s*BFF/i[_0x2b06c6(0x135)](_0x1fc23c);if(!_0x25a113||_0x37b33f&&!_0x1308bd)return;_0x3d2726[_0x2b06c6(0x1c0)](issue('warning',_0x2b06c6(0x191),SKILL_FILE,_0x2b06c6(0x181),_0x2b06c6(0x16b),'平台能力优先'));}function validateExternalServiceBoundary(_0x42207b,_0x1e3966){const _0x1bbec9=a32_0x37aa1e,_0x34186e=/第三方|外部服务|外部供应商|供应商|生图|图像生成|OCR|provider|gateway|VectorEngine|AIHubMix|https?:\/\//i[_0x1bbec9(0x135)](_0x42207b);if(!_0x34186e)return;const _0x4ebb39=/API[_ -]?KEY|api[-_ ]?key|OAuth|Cookie|登录态|Authorization|Bearer|token|密钥|凭证|上传[^。\n]*(?:原图|图片|文件|Excel|商品|客户|素材|数据)|敏感/i[_0x1bbec9(0x135)](_0x42207b);if(!_0x4ebb39)return;const _0x1bb972=/(?:Lovrabet\s*)?应用后台[^。\n]*(?:托管|管理|配置)|平台[^。\n]*(?:托管|管理|配置)[^。\n]*(?:凭证|密钥|登录态|API\s*Key|Cookie|OAuth)|(?:凭证|密钥|登录态|API\s*Key|Cookie|OAuth)[^。\n]*(?:Lovrabet\s*)?应用后台[^。\n]*(?:托管|管理|配置)|Skill\s*不(?:读取|分发|保存)[^。\n]*(?:明文凭证|API\s*Key|Cookie|登录态|密钥|凭证)/i[_0x1bbec9(0x135)](_0x42207b);if(_0x1bb972)return;_0x1e3966[_0x1bbec9(0x1c0)](issue(_0x1bbec9(0x187),_0x1bbec9(0x19f),SKILL_FILE,_0x1bbec9(0x188),_0x1bbec9(0x13a),_0x1bbec9(0x171)));}function validateStateTransitionContract(_0x28874f,_0x3c26f8,_0x5ca438){const _0x2a6f24=a32_0x37aa1e;if(_0x3c26f8!==_0x2a6f24(0x1bf))return;const _0x223c73=[{'token':/前置业务状态|适用状态|fromStatus|from\s+status/i,'label':_0x2a6f24(0x19e)},{'token':/目标业务状态|目标状态|toStatus|to\s+status/i,'label':_0x2a6f24(0x1ad)},{'token':/读回核对|重新读取|写入后.*核对|read[-\s]?back/i,'label':'read-back\x20verification'},{'token':/unknown|未知状态|needs_manual_check|人工处理边界/i,'label':_0x2a6f24(0x15b)}],_0x256d1e=_0x223c73[_0x2a6f24(0x154)](_0x60594f=>!_0x60594f[_0x2a6f24(0x1be)][_0x2a6f24(0x135)](_0x28874f))[_0x2a6f24(0x1ae)](_0x13c23f=>_0x13c23f[_0x2a6f24(0x17e)]);if(_0x256d1e['length']===0x0)return;_0x5ca438[_0x2a6f24(0x1c0)](issue(_0x2a6f24(0x187),_0x2a6f24(0x145),SKILL_FILE,_0x2a6f24(0x142)+_0x256d1e['join'](',\x20')+'.',_0x2a6f24(0x13d),_0x2a6f24(0x15f)));}function validateOrchestratorSmell(_0x4aa7ff,_0x2f1215){const _0x276965=a32_0x37aa1e,_0x2af1f4=[{'name':_0x276965(0x1b9),'token':/全链路|完整链路|full[-\s]?chain/i},{'name':'chapter-flow','token':/Chapter\s*\d+|章节切换|CEO\s*章节/i},{'name':_0x276965(0x149),'token':/handoff|交接/i},{'name':'sequential-skill-calls','token':/按顺序调用|依次调用|调用多个[^。\n]*(Skill|技能)|遵循对应阶段\s*Skill/i},{'name':_0x276965(0x184),'token':/(?:[a-z0-9]+-[a-z0-9-]+,\s*){2,}[a-z0-9]+-[a-z0-9-]+/i}][_0x276965(0x154)](_0x2e813c=>_0x2e813c['token']['test'](_0x4aa7ff))['map'](_0x2de6ea=>_0x2de6ea[_0x276965(0x1a4)]);if(_0x2af1f4[_0x276965(0x17b)]<0x2)return;_0x2f1215['push'](issue('warning',_0x276965(0x14e),SKILL_FILE,'Skill\x20appears\x20to\x20orchestrate\x20multiple\x20roles\x20or\x20Skills\x20('+_0x2af1f4[_0x276965(0x196)](',\x20')+').',_0x276965(0x132)));}function validateSecretExposure(_0xef408c,_0x4de49){const _0x1ae6dd=a32_0x37aa1e;if(!SECRET_VALUE_PATTERNS[_0x1ae6dd(0x159)](_0x594ac9=>_0x594ac9['test'](_0xef408c[_0x1ae6dd(0x160)])))return;_0x4de49[_0x1ae6dd(0x1c0)](issue('warning',_0x1ae6dd(0x1a8),_0xef408c[_0x1ae6dd(0x176)],_0x1ae6dd(0x16d),_0x1ae6dd(0x192)));}function parseFrontmatter(_0x5e33ca){const _0x30d67d=a32_0x37aa1e,_0xca93e4=_0x5e33ca[_0x30d67d(0x177)](/^---\r?\n([\s\S]*?)\r?\n---(?:\r?\n|$)/);if(!_0xca93e4)return{'hasFrontmatter':![]};const _0x44e659=_0xca93e4[0x1]??'',_0x589788={'hasFrontmatter':!![]};let _0x43b736=![];for(const _0x1a2a87 of _0x44e659[_0x30d67d(0x133)](/\r?\n/)){if(/^\s*$/[_0x30d67d(0x135)](_0x1a2a87))continue;const _0x6e5ada=_0x1a2a87[_0x30d67d(0x177)](/^([A-Za-z0-9_-]+):\s*(.*)$/);if(_0x6e5ada){const _0x488ba8=_0x6e5ada[0x1],_0x4ca7b0=cleanScalar(_0x6e5ada[0x2]??'');_0x43b736=_0x488ba8===_0x30d67d(0x148);if(_0x488ba8===_0x30d67d(0x1a4))_0x589788[_0x30d67d(0x1a4)]=_0x4ca7b0;if(_0x488ba8==='description')_0x589788[_0x30d67d(0x1bd)]=_0x4ca7b0;continue;}const _0x2c79e9=_0x1a2a87[_0x30d67d(0x177)](/^\s+type:\s*(.*)$/);_0x43b736&&_0x2c79e9&&(_0x589788[_0x30d67d(0x16f)]=cleanScalar(_0x2c79e9[0x1]??''));}return _0x589788;}function hasSection(_0x41df87,_0x2eb77f){const _0x35ecda=a32_0x37aa1e,_0x1064d4=_0x2eb77f[_0x35ecda(0x19d)](/[.*+?^${}()|[\]\\]/g,_0x35ecda(0x16c));return new RegExp(_0x35ecda(0x13c)+_0x1064d4+'\x5cs*$','m')[_0x35ecda(0x135)](_0x41df87);}function cleanScalar(_0x85c2da){const _0x20b2a8=a32_0x37aa1e,_0x2d3f5d=_0x85c2da[_0x20b2a8(0x1a5)]();if(_0x2d3f5d[_0x20b2a8(0x1a6)]('\x22')&&_0x2d3f5d[_0x20b2a8(0x179)]('\x22')||_0x2d3f5d[_0x20b2a8(0x1a6)]('\x27')&&_0x2d3f5d['endsWith']('\x27'))return _0x2d3f5d[_0x20b2a8(0x14c)](0x1,-0x1);return _0x2d3f5d;}function issue(_0x30f2a9,_0x2fe893,_0x7df0fe,_0x1ee4ed,_0x250521,_0x27e900){return{'level':_0x30f2a9,'ruleId':_0x2fe893,'file':_0x7df0fe,'section':_0x27e900,'message':_0x1ee4ed,'suggestion':_0x250521};}function toRelative(_0x1cf4bc,_0x12c60d){const _0x4efb87=a32_0x37aa1e;return relative(_0x1cf4bc,_0x12c60d)[_0x4efb87(0x19d)](/\\/g,'/');}function a32_0x18c3(){const _0x75a4e2=['Describe\x20dry-run,\x20explicit\x20confirmation,\x20and\x20failure\x20recovery\x20before\x20any\x20write.','replace','precondition\x20state','external-service-boundary','frontmatter-required','read','10JYqini','summary','name','trim','startsWith','needs_manual_check','secret-exposure','Missing\x20references/output-contract.md.','user\x20confirmation','Recommended\x20for\x20all\x20Skill\x20types;\x20link\x20output-contract.md\x20from\x20SKILL.md\x20or\x20runtime-contract.md,\x20or\x20use\x20--strict\x20to\x20enforce\x20it.','toLowerCase','target\x20state','map','absolutePath','platform-command-first','find','填写模型触发语义:用户在什么场景应使用本\x20Skill、不要使用的边界和关键词。','4095048WrjMSU','Missing\x20SKILL.md.','Output\x20contract\x20is\x20missing\x20strict\x20delivery\x20semantics:\x20','output-contract-required','output-contract-linked','Skill\x20validation\x20failed:\x0a','full-chain','failed','partial_success','confirmed-read-back','description','token','write','push','Keep\x20Skill\x20scope\x20to\x20one\x20reusable\x20business\x20capability;\x20move\x20full-chain\x20choreography\x20to\x20docs,\x20demo-show\x20scripts,\x20workflow\x20plans,\x20or\x20an\x20external\x20orchestrator.','split','error','test','failure\x20recovery','6076pHwRTL','.md','Write\x20Skill\x20is\x20missing\x20','State\x20that\x20API\x20keys,\x20OAuth,\x20cookies,\x20and\x20login\x20state\x20are\x20configured\x20in\x20the\x20Lovrabet\x20app\x20backend\x20or\x20platform\x20adapter;\x20Skill\x20must\x20only\x20consume\x20the\x20authorized\x20platform\x20capability\x20and\x20treat\x20generated\x20assets\x20as\x20candidates\x20until\x20review.','sort','^##\x5cs+','Add\x20##\x20业务状态流转\x20with\x20precondition\x20state,\x20allowed\x20action,\x20target\x20state,\x20fromStatus\x20->\x20toStatus\x20preview,\x20read-back\x20verification,\x20and\x20unknown\x20/\x20needs_manual_check\x20handling.','5931ArgRtn','has','Set\x20metadata.type\x20to\x20write,\x20read,\x20or\x20trainer.','status','Write\x20Skill\x20is\x20missing\x20business\x20state\x20transition\x20boundary:\x20','message','Link\x20points\x20outside\x20the\x20Skill\x20package:\x20','state-transition-contract','errors','Local\x20scripts\x20are\x20referenced\x20without\x20explaining\x20why\x20Lovrabet\x20platform\x20commands\x20are\x20not\x20sufficient.','metadata','handoff-state','Add\x20SKILL.md\x20at\x20the\x20Skill\x20directory\x20root.','Frontmatter\x20name\x20is\x20missing.','slice','metadata.type\x20must\x20be\x20one\x20of\x20write,\x20read,\x20or\x20trainer.','orchestrator-smell','Frontmatter\x20description\x20is\x20empty.','strict','Output\x20contract\x20is\x20missing\x20required\x20delivery\x20field(s):\x20','write-safety-gate','localeCompare','filter','structure-complete','状态枚举','level','11CjdnQz','some','delivery-consistency','unknown-state\x20handling','Replace\x20the\x20symlink\x20with\x20a\x20regular\x20file\x20inside\x20the\x20Skill\x20directory.','Skill\x20directory\x20not\x20found:\x20','与现有能力集成','业务状态流转','content','3088074NKjktV','validation','section','输入门禁','使用边界','Add\x20a\x20self-contained\x20runtime\x20contract\x20under\x20references/.','dry-run\x20preview','Fix\x20metadata.type\x20before\x20validating\x20delivery\x20risk\x20gates.','2046432vhuoNt','Move\x20required\x20content\x20into\x20references/\x20and\x20link\x20that\x20packaged\x20file.','Move\x20durable\x20business\x20execution\x20to\x20lovrabet\x20bff/data/sql/personal-bff\x20or\x20a\x20platform\x20service;\x20keep\x20packaged\x20scripts\x20as\x20thin\x20adapters\x20for\x20platform\x20gaps\x20only.','\x5c$&','Skill\x20package\x20appears\x20to\x20contain\x20cleartext\x20credentials\x20that\x20should\x20be\x20governed\x20by\x20the\x20platform.','file://','type','Keep\x20examples,\x20cache\x20paths,\x20and\x20install\x20locations\x20as\x20documentation\x20only;\x20package\x20any\x20required\x20runtime\x20instructions\x20under\x20references/.','第三方服务边界','展示规范','matchAll','Missing\x20required\x20section:\x20','no_op','path','match','SKILL.md\x20must\x20start\x20with\x20frontmatter.','endsWith','success','length','dry_run-no-write','do-not-wrap-unknown-as-success','label','86gHHlpd','Add\x20a\x20##\x20','Local\x20scripts\x20appear\x20to\x20own\x20business\x20writes,\x20permissions,\x20approval,\x20rollback,\x20or\x20state\x20transitions.','suggestion','ruleId','many-skill-names','isSymbolicLink','Prefer\x20lovrabet\x20data/sql/bff/personal-bff\x20for\x20business\x20execution;\x20document\x20local\x20scripts\x20only\x20for\x20platform\x20gaps\x20such\x20as\x20file\x20conversion,\x20static\x20checks,\x20or\x20thin\x20third-party\x20adapters.','warning','External\x20service\x20credentials\x20or\x20sensitive\x20uploads\x20are\x20referenced\x20without\x20Lovrabet\x20platform-managed\x20credential\x20boundaries.','24vXdUdS','70372Auxtai','trainer','Missing\x20integration\x20guidance\x20section.','isDirectory','Replace\x20all\x20【...】\x20placeholders\x20with\x20concrete\x20delivery\x20content.','285565TpBiAM','失败恢复','local-script-overreach','开发先行阶段不阻断;强烈建议在\x20Lovrabet\x20应用后台或平台适配器统一管理\x20API\x20Key、Bearer\x20token、Cookie\x20和登录态。','Fix\x20the\x20reported\x20delivery\x20quality\x20issues\x20before\x20running\x20skill\x20push.','self-contained-package','references/output-contract.md\x20exists\x20but\x20is\x20not\x20referenced\x20by\x20SKILL.md\x20or\x20references/runtime-contract.md.','join','required-section','metadata.type\x20is\x20missing.','7820oGYuup','file','Add\x20frontmatter\x20with\x20name,\x20description,\x20and\x20metadata.type.'];a32_0x18c3=function(){return _0x75a4e2;};return a32_0x18c3();}function isMarkdownFile(_0x56c4ef){const _0x421d26=a32_0x37aa1e;return extname(_0x56c4ef)[_0x421d26(0x1ac)]()===_0x421d26(0x138);}function isWebUrl(_0xdc1189){const _0x213023=a32_0x37aa1e;return/^[a-z][a-z0-9+.-]*:\/\//i['test'](_0xdc1189)&&!_0xdc1189['toLowerCase']()[_0x213023(0x1a6)](_0x213023(0x16e));}function isPathInside(_0x4c578e,_0x2ce0e0){const _0x213009=a32_0x37aa1e,_0x54ba74=relative(_0x2ce0e0,_0x4c578e);return _0x54ba74===''||!_0x54ba74[_0x213009(0x1a6)]('..')&&!isAbsolute(_0x54ba74);}
1
+ const a32_0x419cd4=a32_0x2f21;(function(_0x41795e,_0x1bc6f2){const _0x17e64d=a32_0x2f21,_0x365258=_0x41795e();while(!![]){try{const _0x189c41=parseInt(_0x17e64d(0x14c))/0x1+parseInt(_0x17e64d(0x157))/0x2*(parseInt(_0x17e64d(0x15d))/0x3)+parseInt(_0x17e64d(0x172))/0x4+-parseInt(_0x17e64d(0x145))/0x5*(parseInt(_0x17e64d(0x16f))/0x6)+-parseInt(_0x17e64d(0x15a))/0x7+-parseInt(_0x17e64d(0x17d))/0x8+parseInt(_0x17e64d(0x156))/0x9;if(_0x189c41===_0x1bc6f2)break;else _0x365258['push'](_0x365258['shift']());}catch(_0x4768e6){_0x365258['push'](_0x365258['shift']());}}}(a32_0x57f6,0xe81ad));import{existsSync,lstatSync,readFileSync}from'node:fs';import{resolve}from'node:path';import{CliErrors}from'../../errors.js';const SKILL_FILE=a32_0x419cd4(0x175),SUPPORTED_SKILL_TYPES=new Set([a32_0x419cd4(0x152),a32_0x419cd4(0x16d),a32_0x419cd4(0x180)]);export function validateSkillDirectory(_0x2a7ac3,_0x274cb6={}){const _0x312297=a32_0x419cd4,_0xa43879=resolve(_0x2a7ac3),_0x629df3=[];if(!existsSync(_0xa43879)||!lstatSync(_0xa43879)['isDirectory']())throw CliErrors[_0x312297(0x147)](_0x312297(0x177)+_0x2a7ac3);const _0x55ea99=loadRequiredSkillFile(_0xa43879,_0x629df3),_0x500929=_0x55ea99?parseFrontmatter(_0x55ea99[_0x312297(0x178)]):{'hasFrontmatter':![]};_0x55ea99&&validateFrontmatter(_0x55ea99[_0x312297(0x16e)],_0x500929,_0x629df3);const _0x3c9592=_0x629df3['filter'](_0x191957=>_0x191957['level']===_0x312297(0x170));return{'ok':_0x3c9592[_0x312297(0x14d)]===0x0,'dir':_0xa43879,'type':_0x500929[_0x312297(0x16b)],'errors':_0x3c9592,'warnings':[]};}export function throwIfSkillValidationFailed(_0x1f33c7,_0x15b125=![]){const _0x4eed9e=a32_0x419cd4;if(_0x1f33c7['ok'])return;const _0x5ca427=_0x1f33c7[_0x4eed9e(0x144)][_0x4eed9e(0x149)](_0x1f0f13=>{const _0xc6e5dc=_0x4eed9e,_0x343eec=_0x1f0f13[_0xc6e5dc(0x160)]?'#'+_0x1f0f13[_0xc6e5dc(0x160)]:'';return _0x1f0f13[_0xc6e5dc(0x16a)]['toUpperCase']()+'\x20'+_0x1f0f13[_0xc6e5dc(0x171)]+'\x20'+_0x1f0f13['file']+_0x343eec+':\x20'+_0x1f0f13[_0xc6e5dc(0x165)]+_0xc6e5dc(0x161)+_0x1f0f13[_0xc6e5dc(0x15b)];});throw CliErrors['validation'](_0x4eed9e(0x14a)+_0x5ca427[_0x4eed9e(0x155)]('\x0a'),_0x4eed9e(0x163));}function loadRequiredSkillFile(_0x34db07,_0x59a431){const _0x2ebf14=a32_0x419cd4,_0x5ce44e=resolve(_0x34db07,SKILL_FILE);if(!existsSync(_0x5ce44e))return _0x59a431[_0x2ebf14(0x162)](issue(_0x2ebf14(0x170),'structure-complete',SKILL_FILE,_0x2ebf14(0x148),'Add\x20SKILL.md\x20at\x20the\x20Skill\x20directory\x20root.')),undefined;const _0x49ce62=lstatSync(_0x5ce44e);if(_0x49ce62[_0x2ebf14(0x14f)]())return _0x59a431['push'](issue('error',_0x2ebf14(0x14b),SKILL_FILE,_0x2ebf14(0x164),_0x2ebf14(0x181))),undefined;if(!_0x49ce62[_0x2ebf14(0x154)]())return _0x59a431[_0x2ebf14(0x162)](issue('error',_0x2ebf14(0x14b),SKILL_FILE,_0x2ebf14(0x15f),_0x2ebf14(0x16c))),undefined;return{'path':SKILL_FILE,'content':readFileSync(_0x5ce44e,'utf8')};}function validateFrontmatter(_0x56a545,_0x3f9516,_0x143c5c){const _0x38b6cd=a32_0x419cd4;if(!_0x3f9516[_0x38b6cd(0x179)]){_0x143c5c[_0x38b6cd(0x162)](issue(_0x38b6cd(0x170),_0x38b6cd(0x17f),_0x56a545,_0x38b6cd(0x17c),_0x38b6cd(0x176)));return;}!_0x3f9516[_0x38b6cd(0x168)]?.[_0x38b6cd(0x17b)]()&&_0x143c5c['push'](issue('error','frontmatter-required',_0x56a545,_0x38b6cd(0x151),'Set\x20name\x20to\x20the\x20Skill\x20directory\x20code.'));!_0x3f9516[_0x38b6cd(0x146)]?.['trim']()&&_0x143c5c[_0x38b6cd(0x162)](issue(_0x38b6cd(0x170),_0x38b6cd(0x166),_0x56a545,_0x38b6cd(0x158),_0x38b6cd(0x169)));if(!_0x3f9516['type']?.[_0x38b6cd(0x17b)]())_0x143c5c[_0x38b6cd(0x162)](issue(_0x38b6cd(0x170),_0x38b6cd(0x17f),_0x56a545,_0x38b6cd(0x17e),_0x38b6cd(0x174)));else!SUPPORTED_SKILL_TYPES[_0x38b6cd(0x15c)](_0x3f9516[_0x38b6cd(0x16b)])&&_0x143c5c[_0x38b6cd(0x162)](issue(_0x38b6cd(0x170),_0x38b6cd(0x17f),_0x56a545,_0x38b6cd(0x15e),_0x38b6cd(0x174)));}function a32_0x2f21(_0x4a33c4,_0x103dce){_0x4a33c4=_0x4a33c4-0x144;const _0x57f6f7=a32_0x57f6();let _0x2f21af=_0x57f6f7[_0x4a33c4];return _0x2f21af;}function parseFrontmatter(_0x550090){const _0x2a31aa=a32_0x419cd4,_0x58d2f6=_0x550090[_0x2a31aa(0x159)](/^---\r?\n([\s\S]*?)\r?\n---(?:\r?\n|$)/);if(!_0x58d2f6)return{'hasFrontmatter':![]};const _0x3e00bd=_0x58d2f6[0x1]??'',_0x4e684f={'hasFrontmatter':!![]};let _0x10d7a9=![];for(const _0x5a104a of _0x3e00bd[_0x2a31aa(0x153)](/\r?\n/)){if(/^\s*$/[_0x2a31aa(0x167)](_0x5a104a))continue;const _0x511bd8=_0x5a104a['match'](/^([A-Za-z0-9_-]+):\s*(.*)$/);if(_0x511bd8){const _0x7935d3=_0x511bd8[0x1],_0xa28170=cleanScalar(_0x511bd8[0x2]??'');_0x10d7a9=_0x7935d3===_0x2a31aa(0x14e);if(_0x7935d3===_0x2a31aa(0x168))_0x4e684f[_0x2a31aa(0x168)]=_0xa28170;if(_0x7935d3===_0x2a31aa(0x146))_0x4e684f[_0x2a31aa(0x146)]=_0xa28170;continue;}const _0x5f0400=_0x5a104a[_0x2a31aa(0x159)](/^\s+type:\s*(.*)$/);_0x10d7a9&&_0x5f0400&&(_0x4e684f['type']=cleanScalar(_0x5f0400[0x1]??''));}return _0x4e684f;}function cleanScalar(_0x3b0de4){const _0x4d817e=a32_0x419cd4,_0x50d127=_0x3b0de4[_0x4d817e(0x17b)]();if(_0x50d127[_0x4d817e(0x17a)]('\x22')&&_0x50d127[_0x4d817e(0x173)]('\x22')||_0x50d127['startsWith']('\x27')&&_0x50d127['endsWith']('\x27'))return _0x50d127[_0x4d817e(0x150)](0x1,-0x1);return _0x50d127;}function issue(_0x10542e,_0x3c70a2,_0x5c679e,_0xfd1e04,_0x1e9d77,_0x38f95e){return{'level':_0x10542e,'ruleId':_0x3c70a2,'file':_0x5c679e,'section':_0x38f95e,'message':_0xfd1e04,'suggestion':_0x1e9d77};}function a32_0x57f6(){const _0x432c10=['map','Skill\x20validation\x20failed:\x0a','structure-complete','502515kjqObw','length','metadata','isSymbolicLink','slice','Frontmatter\x20name\x20is\x20missing.','write','split','isFile','join','10346625GZZhFK','741110vKaVAQ','Frontmatter\x20description\x20is\x20empty.','match','3428320wacxSq','suggestion','has','15hHWSSc','metadata.type\x20must\x20be\x20one\x20of\x20write,\x20read,\x20or\x20trainer.','SKILL.md\x20is\x20not\x20a\x20file.','section','\x20Fix:\x20','push','Fix\x20the\x20required\x20Skill\x20metadata\x20before\x20running\x20skill\x20push.','SKILL.md\x20must\x20be\x20a\x20regular\x20file.','message','description-required','test','name','填写模型触发语义:用户在什么场景应使用本\x20Skill、不要使用的边界和关键词。','level','type','Add\x20SKILL.md\x20as\x20a\x20regular\x20file\x20at\x20the\x20Skill\x20directory\x20root.','read','path','355416ikRrxf','error','ruleId','4729348uDSTkE','endsWith','Set\x20metadata.type\x20to\x20write,\x20read,\x20or\x20trainer.','SKILL.md','Add\x20frontmatter\x20with\x20name,\x20description,\x20and\x20metadata.type.','Skill\x20directory\x20not\x20found:\x20','content','hasFrontmatter','startsWith','trim','SKILL.md\x20must\x20start\x20with\x20frontmatter.','11283800TVPZJU','metadata.type\x20is\x20missing.','frontmatter-required','trainer','Replace\x20the\x20symlink\x20with\x20a\x20regular\x20SKILL.md\x20file\x20inside\x20the\x20Skill\x20directory.','errors','155xbteBI','description','validation','Missing\x20SKILL.md.'];a32_0x57f6=function(){return _0x432c10;};return a32_0x57f6();}
@@ -1 +1 @@
1
- function a33_0x4c3b(_0x2b0496,_0x140424){_0x2b0496=_0x2b0496-0x10e;const _0x86839b=a33_0x8683();let _0x4c3b56=_0x86839b[_0x2b0496];return _0x4c3b56;}const a33_0x1f6294=a33_0x4c3b;(function(_0x88c9a2,_0x8d6428){const _0x3ce650=a33_0x4c3b,_0x610e4d=_0x88c9a2();while(!![]){try{const _0x5de3ce=parseInt(_0x3ce650(0x11d))/0x1*(parseInt(_0x3ce650(0x10e))/0x2)+parseInt(_0x3ce650(0x112))/0x3+-parseInt(_0x3ce650(0x119))/0x4+-parseInt(_0x3ce650(0x11b))/0x5+-parseInt(_0x3ce650(0x11c))/0x6*(parseInt(_0x3ce650(0x116))/0x7)+parseInt(_0x3ce650(0x115))/0x8*(-parseInt(_0x3ce650(0x110))/0x9)+-parseInt(_0x3ce650(0x122))/0xa*(-parseInt(_0x3ce650(0x117))/0xb);if(_0x5de3ce===_0x8d6428)break;else _0x610e4d['push'](_0x610e4d['shift']());}catch(_0x1bbaa7){_0x610e4d['push'](_0x610e4d['shift']());}}}(a33_0x8683,0x65e16));import{getSqlQueryInfo}from'../../core/api-client.js';import{getDbName}from'../../core/db-resolver.js';import{SQLCODE_FLAG,VERBOSE_FLAG}from'../../commands/common/flags.js';export const sqlDetail={'service':'sql','command':a33_0x1f6294(0x124),'description':a33_0x1f6294(0x120),'risk':a33_0x1f6294(0x121),'flags':[SQLCODE_FLAG,VERBOSE_FLAG],async 'execute'(_0x16a003){const _0x401375=a33_0x1f6294,_0x7ca279=await getSqlQueryInfo(_0x16a003[_0x401375(0x11f)],_0x16a003[_0x401375(0x113)](_0x401375(0x111))),_0x486298=_0x16a003[_0x401375(0x118)](_0x401375(0x123));if(_0x486298)return{'ok':!![],'data':_0x7ca279};const _0x22ee52=_0x7ca279[_0x401375(0x10f)]?await getDbName(_0x16a003['appCode'],_0x7ca279['dbId']):undefined;return{'ok':!![],'data':{'sqlCode':_0x7ca279[_0x401375(0x114)],'sqlName':_0x7ca279[_0x401375(0x11a)],'db':_0x22ee52?_0x22ee52+'\x20('+_0x7ca279[_0x401375(0x10f)]+')':_0x7ca279[_0x401375(0x10f)]??'','description':_0x7ca279['description']??'','sqlContent':_0x7ca279[_0x401375(0x11e)]??''}};}};function a33_0x8683(){const _0x32f6bd=['verbose','detail','41576wytZcF','dbId','712863xlQfxq','sqlcode','2317791LKeQeD','str','sqlCode','24FusxUn','21PRClEP','1286626YBpzSS','bool','507304PAcwYO','sqlName','2874535ZZcZVa','526506VxWWcn','7Yfhpdu','sqlContent','appCode','Get\x20custom\x20SQL\x20query\x20details\x20by\x20sqlCode','read','60fIDNdv'];a33_0x8683=function(){return _0x32f6bd;};return a33_0x8683();}
1
+ const a33_0xa1254e=a33_0x317a;function a33_0x5193(){const _0x45a0c3=['sqlcode','sql','dbId','sqlCode','str','254378DpgLYg','18891ttmWaC','1345080wCvAze','sqlContent','120qGEqWx','1350474pZqzNf','appCode','verbose','41400nIYiIR','description','Get\x20custom\x20SQL\x20query\x20details\x20by\x20sqlCode','1478106MVSocE','3524616XBFPXr','8NzfEcW','bool'];a33_0x5193=function(){return _0x45a0c3;};return a33_0x5193();}(function(_0x295eff,_0xa02c33){const _0x3a2c3e=a33_0x317a,_0x2954d8=_0x295eff();while(!![]){try{const _0x11030c=-parseInt(_0x3a2c3e(0xb4))/0x1+parseInt(_0x3a2c3e(0xac))/0x2+-parseInt(_0x3a2c3e(0xad))/0x3*(-parseInt(_0x3a2c3e(0xb0))/0x4)+parseInt(_0x3a2c3e(0xae))/0x5+-parseInt(_0x3a2c3e(0xb1))/0x6+-parseInt(_0x3a2c3e(0xb7))/0x7*(-parseInt(_0x3a2c3e(0xa5))/0x8)+-parseInt(_0x3a2c3e(0xb8))/0x9;if(_0x11030c===_0xa02c33)break;else _0x2954d8['push'](_0x2954d8['shift']());}catch(_0x37149c){_0x2954d8['push'](_0x2954d8['shift']());}}}(a33_0x5193,0x21bba));function a33_0x317a(_0x28dd26,_0x500b83){_0x28dd26=_0x28dd26-0xa5;const _0x519304=a33_0x5193();let _0x317a48=_0x519304[_0x28dd26];return _0x317a48;}import{getSqlQueryInfo}from'../../core/api-client.js';import{getDbName}from'../../core/db-resolver.js';import{SQLCODE_FLAG,VERBOSE_FLAG}from'../../commands/common/flags.js';export const sqlDetail={'service':a33_0xa1254e(0xa8),'command':'detail','description':a33_0xa1254e(0xb6),'risk':'read','flags':[SQLCODE_FLAG,VERBOSE_FLAG],async 'execute'(_0x5d5ef9){const _0x27d2b9=a33_0xa1254e,_0x3a8784=await getSqlQueryInfo(_0x5d5ef9[_0x27d2b9(0xb2)],_0x5d5ef9[_0x27d2b9(0xab)](_0x27d2b9(0xa7))),_0x3e95bc=_0x5d5ef9[_0x27d2b9(0xa6)](_0x27d2b9(0xb3));if(_0x3e95bc)return{'ok':!![],'data':_0x3a8784};const _0x309894=_0x3a8784['dbId']?await getDbName(_0x5d5ef9['appCode'],_0x3a8784[_0x27d2b9(0xa9)]):undefined;return{'ok':!![],'data':{'sqlCode':_0x3a8784[_0x27d2b9(0xaa)],'sqlName':_0x3a8784['sqlName'],'db':_0x309894?_0x309894+'\x20('+_0x3a8784[_0x27d2b9(0xa9)]+')':_0x3a8784['dbId']??'','description':_0x3a8784[_0x27d2b9(0xb5)]??'','sqlContent':_0x3a8784[_0x27d2b9(0xaf)]??''}};}};
@@ -1 +1 @@
1
- const a34_0x335e36=a34_0x22b3;(function(_0x41829b,_0x205b14){const _0x2c95b3=a34_0x22b3,_0x58c6dc=_0x41829b();while(!![]){try{const _0x5d6ea4=parseInt(_0x2c95b3(0x121))/0x1+parseInt(_0x2c95b3(0x11f))/0x2*(parseInt(_0x2c95b3(0x12b))/0x3)+-parseInt(_0x2c95b3(0x120))/0x4+-parseInt(_0x2c95b3(0x11a))/0x5+parseInt(_0x2c95b3(0x12d))/0x6*(parseInt(_0x2c95b3(0x118))/0x7)+-parseInt(_0x2c95b3(0x129))/0x8*(-parseInt(_0x2c95b3(0x128))/0x9)+-parseInt(_0x2c95b3(0x119))/0xa;if(_0x5d6ea4===_0x205b14)break;else _0x58c6dc['push'](_0x58c6dc['shift']());}catch(_0x471c45){_0x58c6dc['push'](_0x58c6dc['shift']());}}}(a34_0x21d4,0xe59c0));import{executeSdkSql}from'../../core/sdk-client.js';import{SQLCODE_FLAG,PARAMS_FLAG}from'../../commands/common/flags.js';import{parseJsonParams}from'../../utils/params.js';function a34_0x21d4(){const _0x3d0685=['length','isArray','SQL\x20execution\x20failed','Execute\x20a\x20custom\x20SQL\x20query\x20by\x20sqlCode','252404vgZTsW','3399468SPnUAq','268703WxxJXD','sql','read','execResult','str','sqlcode','execSuccess','1619883fMIMXE','56jMHybB','\x20row(s)\x20in\x20','15uRFbMA','params','11250618rMMsRd','7EuWvXG','4808120QGGZKa','8817830SbEUBr'];a34_0x21d4=function(){return _0x3d0685;};return a34_0x21d4();}function a34_0x22b3(_0x16e2af,_0x4ac24f){_0x16e2af=_0x16e2af-0x118;const _0x21d4f3=a34_0x21d4();let _0x22b38d=_0x21d4f3[_0x16e2af];return _0x22b38d;}export const sqlExec={'service':a34_0x335e36(0x122),'command':'exec','description':a34_0x335e36(0x11e),'risk':a34_0x335e36(0x123),'flags':[SQLCODE_FLAG,PARAMS_FLAG],async 'execute'(_0x1a6f99){const _0xcf2fcb=a34_0x335e36,_0x127ffc=parseJsonParams(_0x1a6f99[_0xcf2fcb(0x125)](_0xcf2fcb(0x12c))),_0x398425=Date['now'](),_0x13f16a=await executeSdkSql(_0x1a6f99['str'](_0xcf2fcb(0x126)),_0x127ffc),_0x3a0ce6=Date['now']()-_0x398425,_0x509bb4=_0x13f16a?.[_0xcf2fcb(0x124)]??_0x13f16a,_0x201ede=_0x13f16a?.[_0xcf2fcb(0x127)]??!![];if(!_0x201ede)return{'ok':![],'data':{'error':_0x13f16a?.['execError']||_0xcf2fcb(0x11d),'elapsed':_0x3a0ce6},'message':_0xcf2fcb(0x11d)};const _0x5657b5=Array[_0xcf2fcb(0x11c)](_0x509bb4)?_0x509bb4:[];return{'ok':!![],'data':{'rows':_0x5657b5,'rowCount':_0x5657b5[_0xcf2fcb(0x11b)],'elapsed':_0x3a0ce6},'message':'Returned\x20'+_0x5657b5[_0xcf2fcb(0x11b)]+_0xcf2fcb(0x12a)+_0x3a0ce6+'ms'};}};
1
+ const a34_0x16d2ed=a34_0xbb82;(function(_0x5128f4,_0x425dee){const _0x526b41=a34_0xbb82,_0x390525=_0x5128f4();while(!![]){try{const _0x38d96e=parseInt(_0x526b41(0xc9))/0x1+parseInt(_0x526b41(0xc1))/0x2+parseInt(_0x526b41(0xbf))/0x3*(parseInt(_0x526b41(0xb7))/0x4)+-parseInt(_0x526b41(0xbe))/0x5*(parseInt(_0x526b41(0xc3))/0x6)+parseInt(_0x526b41(0xbc))/0x7+parseInt(_0x526b41(0xc0))/0x8*(-parseInt(_0x526b41(0xc8))/0x9)+-parseInt(_0x526b41(0xb6))/0xa;if(_0x38d96e===_0x425dee)break;else _0x390525['push'](_0x390525['shift']());}catch(_0xbd3378){_0x390525['push'](_0x390525['shift']());}}}(a34_0xb8f8,0xdab64));import{executeSdkSql}from'../../core/sdk-client.js';import{SQLCODE_FLAG,PARAMS_FLAG}from'../../commands/common/flags.js';import{parseJsonParams}from'../../utils/params.js';function a34_0xbb82(_0x137850,_0x58e2b6){_0x137850=_0x137850-0xb4;const _0xb8f8a7=a34_0xb8f8();let _0xbb82a4=_0xb8f8a7[_0x137850];return _0xbb82a4;}export const sqlExec={'service':a34_0x16d2ed(0xbd),'command':a34_0x16d2ed(0xc7),'description':a34_0x16d2ed(0xc6),'risk':a34_0x16d2ed(0xc2),'flags':[SQLCODE_FLAG,PARAMS_FLAG],async 'execute'(_0x33106f){const _0x56391b=a34_0x16d2ed,_0x5b1395=parseJsonParams(_0x33106f['str'](_0x56391b(0xb8))),_0x43cb4a=Date['now'](),_0x3bd3b7=await executeSdkSql(_0x33106f['str'](_0x56391b(0xb5)),_0x5b1395),_0x4ff6d9=Date[_0x56391b(0xb9)]()-_0x43cb4a,_0x42b6a9=_0x3bd3b7?.['execResult']??_0x3bd3b7,_0x1c2de2=_0x3bd3b7?.[_0x56391b(0xb4)]??!![];if(!_0x1c2de2)return{'ok':![],'data':{'error':_0x3bd3b7?.[_0x56391b(0xca)]||_0x56391b(0xc4),'elapsed':_0x4ff6d9},'message':_0x56391b(0xc4)};const _0x371b4c=Array[_0x56391b(0xc5)](_0x42b6a9)?_0x42b6a9:[];return{'ok':!![],'data':{'rows':_0x371b4c,'rowCount':_0x371b4c[_0x56391b(0xbb)],'elapsed':_0x4ff6d9},'message':_0x56391b(0xba)+_0x371b4c[_0x56391b(0xbb)]+'\x20row(s)\x20in\x20'+_0x4ff6d9+'ms'};}};function a34_0xb8f8(){const _0x2f5044=['exec','5654178IuPDKE','228746cjATSW','execError','execSuccess','sqlcode','8159270FOQkix','22108uDNlOu','params','now','Returned\x20','length','10741955MenhJS','sql','10qbyybw','789EOULxO','8HPogVQ','615926rvWWPZ','read','3554586KjOFrD','SQL\x20execution\x20failed','isArray','Execute\x20a\x20custom\x20SQL\x20query\x20by\x20sqlCode'];a34_0xb8f8=function(){return _0x2f5044;};return a34_0xb8f8();}
@@ -1 +1 @@
1
- (function(_0x409b08,_0x18e9f1){const _0x8f4bf=a35_0x54f7,_0x27a20a=_0x409b08();while(!![]){try{const _0x1246de=-parseInt(_0x8f4bf(0x191))/0x1+-parseInt(_0x8f4bf(0x193))/0x2+parseInt(_0x8f4bf(0x199))/0x3*(-parseInt(_0x8f4bf(0x190))/0x4)+parseInt(_0x8f4bf(0x19a))/0x5+parseInt(_0x8f4bf(0x196))/0x6*(-parseInt(_0x8f4bf(0x198))/0x7)+parseInt(_0x8f4bf(0x195))/0x8*(parseInt(_0x8f4bf(0x192))/0x9)+parseInt(_0x8f4bf(0x197))/0xa*(parseInt(_0x8f4bf(0x194))/0xb);if(_0x1246de===_0x18e9f1)break;else _0x27a20a['push'](_0x27a20a['shift']());}catch(_0x168539){_0x27a20a['push'](_0x27a20a['shift']());}}}(a35_0x9641,0x5c97b));function a35_0x54f7(_0x1f90f3,_0x12bed7){_0x1f90f3=_0x1f90f3-0x190;const _0x964149=a35_0x9641();let _0x54f7f2=_0x964149[_0x1f90f3];return _0x54f7f2;}import{sqlDetail}from'../../commands/sql/detail.js';import{sqlExec}from'../../commands/sql/exec.js';export const sqlDefinitions=[sqlDetail,sqlExec];function a35_0x9641(){const _0x37fc97=['22dqkYdr','13672ZieeOj','312xjdTzQ','3986650YzhZSx','42476ZcxZUv','3TUQDFo','1702805PLMSja','1443812UYQdAt','49647vuUQlO','1503zcKvzW','635798hmvaSh'];a35_0x9641=function(){return _0x37fc97;};return a35_0x9641();}
1
+ (function(_0x195149,_0x4bf607){const _0x1431d3=a35_0x1c89,_0x536828=_0x195149();while(!![]){try{const _0xa9fd87=parseInt(_0x1431d3(0x116))/0x1*(parseInt(_0x1431d3(0x11b))/0x2)+parseInt(_0x1431d3(0x115))/0x3+parseInt(_0x1431d3(0x117))/0x4+-parseInt(_0x1431d3(0x114))/0x5+-parseInt(_0x1431d3(0x11d))/0x6*(-parseInt(_0x1431d3(0x11c))/0x7)+-parseInt(_0x1431d3(0x118))/0x8*(parseInt(_0x1431d3(0x119))/0x9)+-parseInt(_0x1431d3(0x11a))/0xa;if(_0xa9fd87===_0x4bf607)break;else _0x536828['push'](_0x536828['shift']());}catch(_0x27e896){_0x536828['push'](_0x536828['shift']());}}}(a35_0x41a4,0xd1e9b));function a35_0x1c89(_0x5ade3e,_0xd64679){_0x5ade3e=_0x5ade3e-0x114;const _0x41a426=a35_0x41a4();let _0x1c896c=_0x41a426[_0x5ade3e];return _0x1c896c;}import{sqlDetail}from'../../commands/sql/detail.js';function a35_0x41a4(){const _0x1e894b=['5638uVRCnJ','23779ZOjiMZ','2298HxAMNV','7537595CIMvfE','3811989FautLc','166nnkZxe','6842720YSktsK','12824yolFxq','7569gPXkPM','10349030KGEjvY'];a35_0x41a4=function(){return _0x1e894b;};return a35_0x41a4();}import{sqlExec}from'../../commands/sql/exec.js';export const sqlDefinitions=[sqlDetail,sqlExec];
@@ -1 +1 @@
1
- const a36_0x5b2681=a36_0x1902;(function(_0x151839,_0x12d9fc){const _0x4bcdee=a36_0x1902,_0x4f930a=_0x151839();while(!![]){try{const _0x4c52d3=-parseInt(_0x4bcdee(0x1db))/0x1*(parseInt(_0x4bcdee(0x1c6))/0x2)+parseInt(_0x4bcdee(0x1de))/0x3*(-parseInt(_0x4bcdee(0x1b4))/0x4)+parseInt(_0x4bcdee(0x19e))/0x5*(-parseInt(_0x4bcdee(0x1d5))/0x6)+-parseInt(_0x4bcdee(0x1b1))/0x7+parseInt(_0x4bcdee(0x1a2))/0x8*(-parseInt(_0x4bcdee(0x1d7))/0x9)+parseInt(_0x4bcdee(0x19a))/0xa*(parseInt(_0x4bcdee(0x1e7))/0xb)+parseInt(_0x4bcdee(0x1e5))/0xc*(parseInt(_0x4bcdee(0x1bf))/0xd);if(_0x4c52d3===_0x12d9fc)break;else _0x4f930a['push'](_0x4f930a['shift']());}catch(_0x3d1cf6){_0x4f930a['push'](_0x4f930a['shift']());}}}(a36_0xbd93,0x337de));import{spawnSync}from'node:child_process';function a36_0xbd93(){const _0x12bfb1=['object','patch','match','status','Already\x20up\x20to\x20date\x20(v','filter','Version\x20comparison\x20failed.','install','Refresh\x20official\x20skill\x20package\x20after\x20updating','2282172Ldihtp','Skipping\x20official\x20skill\x20package\x20(--no-skills).','225lOXEwV','prerelease','validation','pipe','1SQUian','Unable\x20to\x20resolve\x20','cwd','73167CZXtmn','join','Use\x20full\x20semver\x20versions\x20such\x20as\x202.0.6\x20or\x202.0.7-beta.1.','str','\x20\x20Official\x20skill\x20update\x20failed:\x20','minor','\x20\x20Run\x20manually:\x20npx\x20skills\x20add\x20','836508dAMvoi','string','596211Giulkh','Install\x20the\x20version\x20from\x20npm\x20beta\x20dist-tag','update','/dist-tags','Use\x20a\x20full\x20semver\x20such\x20as\x202.0.6\x20or\x202.0.7-beta.1.','no-skills','stderr','fromEntries','10wCUtYG','json','\x20\x20Official\x20skill\x20package\x20is\x20up\x20to\x20date.','args','5HVtXTt','stdout','npm','Updating\x20','104392FZkYfH','log','warn','nonInteractive','error','Invalid\x20version:\x20','run','message','skipped','\x20\x20Run\x20manually:\x20npm\x20install\x20-g\x20','entries','map','version','Already\x20on\x20requested\x20version\x20(v','Update\x20','2727389wRMocZ','unknown','trim','24cMRQcU','Updated\x20to\x20v','Checking\x20npm\x20dist-tags...','toString','Install\x20a\x20specific\x20CLI\x20version','source','Update\x20failed:\x20','Skip\x20official\x20skill\x20package\x20refresh\x20after\x20updating','bool','beta','inherit','325VkJvkl','Current\x20version:\x20','=1).','latest','\x20version\x20from\x20npm.','\x20\x20Restart\x20your\x20terminal\x20to\x20use\x20the\x20new\x20version.','length','686936zfTScx','boolean','Install\x20the\x20version\x20from\x20npm\x20latest\x20dist-tag','write','skills','\x20\x20Try\x20manually:\x20npm\x20install\x20-g\x20'];a36_0xbd93=function(){return _0x12bfb1;};return a36_0xbd93();}import{CliErrors}from'../errors.js';import{CLI_BIN_NAME}from'../constant/cli.js';import{LOVRABET_NPM_PACKAGE_NAME,LOVRABET_SKILL_SOURCE,NPM_REGISTRY_BASE_URL}from'../constant/distribution.js';import{resolveNpmBin}from'../utils/platform.js';import{getCliVersion}from'../utils/version.js';import{LOVRABET_SKIP_NPX_SKILLS_ENV,runNpxSkillsAddGlobal}from'../skills/npx-skills-add.js';const updateFlags=[{'name':a36_0x5b2681(0x1c2),'type':a36_0x5b2681(0x1c7),'description':a36_0x5b2681(0x1c8),'default':![]},{'name':a36_0x5b2681(0x1bd),'type':a36_0x5b2681(0x1c7),'description':a36_0x5b2681(0x1e8),'default':![]},{'name':'version','type':a36_0x5b2681(0x1e6),'description':a36_0x5b2681(0x1b8)},{'name':'no-skills','type':'boolean','description':a36_0x5b2681(0x1bb),'default':![]},{'name':a36_0x5b2681(0x1ca),'type':'boolean','description':a36_0x5b2681(0x1d4),'default':!![],'hidden':!![]}];function parseSemver(_0x10639){const _0x45d103=a36_0x5b2681,_0x51c04a=_0x10639['trim']()[_0x45d103(0x1ce)](/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z.-]+))?$/);if(!_0x51c04a)return null;return{'major':Number(_0x51c04a[0x1]),'minor':Number(_0x51c04a[0x2]),'patch':Number(_0x51c04a[0x3]),'prerelease':_0x51c04a[0x4]};}function compareSemver(_0x51ea40,_0x195691){const _0x395a0d=a36_0x5b2681,_0x59e208=parseSemver(_0x51ea40),_0x5de386=parseSemver(_0x195691);if(!_0x59e208||!_0x5de386)throw CliErrors[_0x395a0d(0x1d9)](_0x395a0d(0x1d2),_0x395a0d(0x1e0));for(const _0xee9fe of['major',_0x395a0d(0x1e3),_0x395a0d(0x1cd)]){if(_0x59e208[_0xee9fe]<_0x5de386[_0xee9fe])return-0x1;if(_0x59e208[_0xee9fe]>_0x5de386[_0xee9fe])return 0x1;}if(!_0x59e208[_0x395a0d(0x1d8)]&&!_0x5de386['prerelease'])return 0x0;if(!_0x59e208[_0x395a0d(0x1d8)])return 0x1;if(!_0x5de386[_0x395a0d(0x1d8)])return-0x1;if(_0x59e208[_0x395a0d(0x1d8)]===_0x5de386['prerelease'])return 0x0;return _0x59e208['prerelease']<_0x5de386['prerelease']?-0x1:0x1;}function getRequestedVersion(_0x1bc97c){const _0x351904=a36_0x5b2681,_0x497509=_0x1bc97c[_0x351904(0x1e1)]('version')[_0x351904(0x1b3)]();if(_0x497509)return _0x497509;return String(_0x1bc97c[_0x351904(0x19d)]?.[0x0]??'')[_0x351904(0x1b3)]();}function a36_0x1902(_0x5a6c0e,_0x150151){_0x5a6c0e=_0x5a6c0e-0x195;const _0xbd9370=a36_0xbd93();let _0x19029d=_0xbd9370[_0x5a6c0e];return _0x19029d;}function shouldSkipOfficialSkill(_0x4bf26d){const _0xc3f804=a36_0x5b2681;return _0x4bf26d['bool'](_0xc3f804(0x197))||_0x4bf26d['flag'](_0xc3f804(0x1ca))===![];}async function validateUpdateFlags(_0x28e39d){const _0xf515ba=a36_0x5b2681,_0x17185c=getRequestedVersion(_0x28e39d),_0x278ae0=[_0x28e39d['bool']('latest')?_0xf515ba(0x1c2):'',_0x28e39d[_0xf515ba(0x1bc)](_0xf515ba(0x1bd))?_0xf515ba(0x1bd):'',_0x17185c?'version':''][_0xf515ba(0x1d1)](Boolean);if(_0x278ae0[_0xf515ba(0x1c5)]>0x1)throw CliErrors[_0xf515ba(0x1d9)]('--latest,\x20--beta,\x20and\x20version\x20cannot\x20be\x20used\x20together.','Choose\x20exactly\x20one\x20target:\x20--latest,\x20--beta,\x20or\x20--version\x20<version>.');if(_0x17185c&&!parseSemver(_0x17185c))throw CliErrors[_0xf515ba(0x1d9)](_0xf515ba(0x1a7)+_0x17185c,_0xf515ba(0x196));}async function fetchNpmDistTags(){const _0x41991f=a36_0x5b2681;try{const _0x3b0e47=NPM_REGISTRY_BASE_URL+'/-/package/'+encodeURIComponent(LOVRABET_NPM_PACKAGE_NAME)+_0x41991f(0x195),_0x96355b=await fetch(_0x3b0e47,{'signal':AbortSignal['timeout'](0x2710)});if(!_0x96355b['ok'])return null;const _0x440b72=await _0x96355b[_0x41991f(0x19b)]();if(!_0x440b72||typeof _0x440b72!==_0x41991f(0x1cc))return null;return Object[_0x41991f(0x199)](Object[_0x41991f(0x1ac)](_0x440b72)['filter'](([,_0x4096a0])=>typeof _0x4096a0===_0x41991f(0x1e6)&&_0x4096a0[_0x41991f(0x1b3)]())[_0x41991f(0x1ad)](([_0x13e778,_0x1e9737])=>[_0x13e778,String(_0x1e9737)[_0x41991f(0x1b3)]()]));}catch{return null;}}async function resolveTargetVersion(_0x306c36){const _0x341c19=a36_0x5b2681,_0x1d3bf5=getRequestedVersion(_0x306c36);if(_0x1d3bf5)return{'version':_0x1d3bf5,'source':'version'};const _0x4ab339=_0x306c36['bool'](_0x341c19(0x1bd))?_0x341c19(0x1bd):_0x341c19(0x1c2),_0x324c42=await fetchNpmDistTags(),_0x56b62f=_0x324c42?.[_0x4ab339];if(!_0x56b62f)return null;return{'version':_0x56b62f,'source':_0x4ab339};}function shouldInstallTarget(_0x434b24,_0x5e1233){const _0x3f8633=a36_0x5b2681,_0x42d250=compareSemver(_0x434b24,_0x5e1233[_0x3f8633(0x1ae)]);if(_0x5e1233[_0x3f8633(0x1b9)]===_0x3f8633(0x1ae))return _0x42d250!==0x0;return _0x42d250<0x0;}function installCliPackage(_0x9d15e7,_0x2d8a6b){const _0x42ab92=a36_0x5b2681,_0x4ef42e=resolveNpmBin(_0x42ab92(0x1a0)),_0x2a8126=[_0x42ab92(0x1d3),'-g',LOVRABET_NPM_PACKAGE_NAME+'@'+_0x9d15e7];console['log']('*\x20'+[_0x4ef42e,..._0x2a8126][_0x42ab92(0x1df)]('\x20'));const _0x50adb7=spawnSync(_0x4ef42e,_0x2a8126,{'cwd':process[_0x42ab92(0x1dd)](),'stdio':_0x2d8a6b?_0x42ab92(0x1da):'inherit','env':process.env,'shell':![]});if(_0x50adb7['status']===0x0)return{'ok':!![]};let _0x5f16bf=_0x50adb7[_0x42ab92(0x1a6)]?.[_0x42ab92(0x1a9)]||'exit\x20'+(_0x50adb7[_0x42ab92(0x1cf)]??_0x42ab92(0x1b2));if(_0x2d8a6b){const _0x390265=_0x50adb7[_0x42ab92(0x198)]?_0x50adb7['stderr'][_0x42ab92(0x1b7)]()[_0x42ab92(0x1b3)]():'',_0x4efee0=_0x50adb7[_0x42ab92(0x19f)]?_0x50adb7[_0x42ab92(0x19f)]['toString']()[_0x42ab92(0x1b3)]():'';if(_0x390265)_0x5f16bf=_0x390265;else{if(_0x4efee0)_0x5f16bf=_0x4efee0;}}return{'ok':![],'error':_0x5f16bf};}async function installOfficialSkill(_0xb02d53){const _0x1fc9b6=a36_0x5b2681;console[_0x1fc9b6(0x1a3)]('Checking\x20official\x20skill\x20package...');const _0x3361a2=runNpxSkillsAddGlobal(process[_0x1fc9b6(0x1dd)](),LOVRABET_SKILL_SOURCE,{'stdio':_0xb02d53?'pipe':_0x1fc9b6(0x1be)});if(_0x3361a2[_0x1fc9b6(0x1aa)]){console['log']('\x20\x20Skipped\x20skill\x20install\x20('+LOVRABET_SKIP_NPX_SKILLS_ENV+_0x1fc9b6(0x1c1));return;}if(_0x3361a2['ok']){console[_0x1fc9b6(0x1a3)](_0x1fc9b6(0x19c));return;}console[_0x1fc9b6(0x1a4)](_0x1fc9b6(0x1e2)+(_0x3361a2['error']||_0x1fc9b6(0x1b2))),console[_0x1fc9b6(0x1a3)](_0x1fc9b6(0x1e4)+LOVRABET_SKILL_SOURCE+'\x20-g\x20-y');}async function execute(_0x4f3cd5){const _0x2283de=a36_0x5b2681;await validateUpdateFlags(_0x4f3cd5);const _0x5a81a1=getCliVersion();console[_0x2283de(0x1a3)](_0x2283de(0x1c0)+_0x5a81a1),console[_0x2283de(0x1a3)](_0x2283de(0x1b6));const _0x187d6e=await resolveTargetVersion(_0x4f3cd5);if(!_0x187d6e){const _0xbe1b8d=_0x4f3cd5['bool'](_0x2283de(0x1bd))?_0x2283de(0x1bd):_0x2283de(0x1c2),_0x525585=_0x2283de(0x1dc)+_0xbe1b8d+_0x2283de(0x1c3);return console[_0x2283de(0x1a4)](_0x525585),console['log'](_0x2283de(0x1ab)+LOVRABET_NPM_PACKAGE_NAME+'@'+_0xbe1b8d),{'ok':![]};}if(!shouldInstallTarget(_0x5a81a1,_0x187d6e)){const _0x604ae3=_0x187d6e[_0x2283de(0x1b9)]===_0x2283de(0x1ae)?_0x2283de(0x1af)+_0x187d6e[_0x2283de(0x1ae)]+').':_0x2283de(0x1d0)+_0x187d6e[_0x2283de(0x1ae)]+').';return console[_0x2283de(0x1a3)](_0x604ae3),shouldSkipOfficialSkill(_0x4f3cd5)?console['log']('Skipping\x20official\x20skill\x20package\x20(--no-skills).'):await installOfficialSkill(_0x4f3cd5['nonInteractive']),{'ok':!![]};}console[_0x2283de(0x1a3)](_0x2283de(0x1a1)+LOVRABET_NPM_PACKAGE_NAME+':\x20'+_0x5a81a1+'\x20->\x20'+_0x187d6e['version']);const _0x15fc73=installCliPackage(_0x187d6e[_0x2283de(0x1ae)],_0x4f3cd5[_0x2283de(0x1a5)]);if(!_0x15fc73['ok']){const _0x40b39f=_0x2283de(0x1ba)+(_0x15fc73['error']||_0x2283de(0x1b2));return console[_0x2283de(0x1a6)](_0x40b39f),console[_0x2283de(0x1a3)](_0x2283de(0x1cb)+LOVRABET_NPM_PACKAGE_NAME+'@'+_0x187d6e['version']),{'ok':![]};}return console['log'](_0x2283de(0x1b5)+_0x187d6e[_0x2283de(0x1ae)]+'.'),console[_0x2283de(0x1a3)](_0x2283de(0x1c4)),shouldSkipOfficialSkill(_0x4f3cd5)?console[_0x2283de(0x1a3)](_0x2283de(0x1d6)):await installOfficialSkill(_0x4f3cd5[_0x2283de(0x1a5)]),{'ok':!![]};}export const updateDefinition={'service':a36_0x5b2681(0x1e9),'command':a36_0x5b2681(0x1a8),'description':a36_0x5b2681(0x1b0)+CLI_BIN_NAME+'\x20CLI\x20from\x20npm','risk':a36_0x5b2681(0x1c9),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':updateFlags,'validate':validateUpdateFlags,'execute':execute};
1
+ const a36_0x47fc52=a36_0x33fa;(function(_0x48bb6c,_0x199d0c){const _0x4cfd91=a36_0x33fa,_0x316260=_0x48bb6c();while(!![]){try{const _0xf6bb63=-parseInt(_0x4cfd91(0x1a0))/0x1+-parseInt(_0x4cfd91(0x19c))/0x2+parseInt(_0x4cfd91(0x1b2))/0x3*(-parseInt(_0x4cfd91(0x1b9))/0x4)+-parseInt(_0x4cfd91(0x194))/0x5+-parseInt(_0x4cfd91(0x1ae))/0x6+-parseInt(_0x4cfd91(0x19a))/0x7*(parseInt(_0x4cfd91(0x1c0))/0x8)+parseInt(_0x4cfd91(0x192))/0x9;if(_0xf6bb63===_0x199d0c)break;else _0x316260['push'](_0x316260['shift']());}catch(_0x3690e6){_0x316260['push'](_0x316260['shift']());}}}(a36_0x2517,0x4a9d1));import{spawnSync}from'node:child_process';import{CliErrors}from'../errors.js';function a36_0x33fa(_0x25bfb9,_0x57ce55){_0x25bfb9=_0x25bfb9-0x179;const _0x2517be=a36_0x2517();let _0x33faac=_0x2517be[_0x25bfb9];return _0x33faac;}import{CLI_BIN_NAME}from'../constant/cli.js';import{LOVRABET_NPM_PACKAGE_NAME,LOVRABET_SKILL_SOURCE,NPM_REGISTRY_BASE_URL}from'../constant/distribution.js';import{resolveNpmBin}from'../utils/platform.js';import{getCliVersion}from'../utils/version.js';import{LOVRABET_SKIP_NPX_SKILLS_ENV,runNpxSkillsAddGlobal}from'../skills/npx-skills-add.js';const updateFlags=[{'name':a36_0x47fc52(0x193),'type':'boolean','description':a36_0x47fc52(0x196),'default':![]},{'name':a36_0x47fc52(0x18f),'type':a36_0x47fc52(0x17a),'description':a36_0x47fc52(0x1b0),'default':![]},{'name':a36_0x47fc52(0x190),'type':a36_0x47fc52(0x198),'description':'Install\x20a\x20specific\x20CLI\x20version'},{'name':'no-skills','type':'boolean','description':a36_0x47fc52(0x1aa),'default':![]},{'name':a36_0x47fc52(0x1b6),'type':a36_0x47fc52(0x17a),'description':a36_0x47fc52(0x1bd),'default':!![],'hidden':!![]}];function parseSemver(_0x1c627f){const _0x377284=a36_0x47fc52,_0x19cbcc=_0x1c627f[_0x377284(0x1c2)]()[_0x377284(0x1c5)](/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z.-]+))?$/);if(!_0x19cbcc)return null;return{'major':Number(_0x19cbcc[0x1]),'minor':Number(_0x19cbcc[0x2]),'patch':Number(_0x19cbcc[0x3]),'prerelease':_0x19cbcc[0x4]};}function a36_0x2517(){const _0x365a50=['args','skills','object','prerelease','1072168HxaoVb','Current\x20version:\x20','validation','nonInteractive','Refresh\x20official\x20skill\x20package\x20after\x20updating','\x20version\x20from\x20npm.','filter','64JLBUXx','Updated\x20to\x20v','trim','inherit','npm','match','exit\x20','boolean','Use\x20full\x20semver\x20versions\x20such\x20as\x202.0.6\x20or\x202.0.7-beta.1.','Use\x20a\x20full\x20semver\x20such\x20as\x202.0.6\x20or\x202.0.7-beta.1.','skipped','Invalid\x20version:\x20','stdout','Update\x20failed:\x20','/-/package/','bool','\x20-g\x20-y','stderr','log','cwd','warn','Skipping\x20official\x20skill\x20package\x20(--no-skills).','minor','--latest,\x20--beta,\x20and\x20version\x20cannot\x20be\x20used\x20together.','major','fromEntries','Checking\x20official\x20skill\x20package...','\x20CLI\x20from\x20npm','beta','version','entries','14091777lXgOhx','latest','167395UPyjAH','status','Install\x20the\x20version\x20from\x20npm\x20latest\x20dist-tag','Choose\x20exactly\x20one\x20target:\x20--latest,\x20--beta,\x20or\x20--version\x20<version>.','string','Checking\x20npm\x20dist-tags...','2156KcCUjE','\x20\x20Official\x20skill\x20update\x20failed:\x20','397736yPGPWH','Already\x20up\x20to\x20date\x20(v','\x20\x20Run\x20manually:\x20npx\x20skills\x20add\x20','=1).','191874qZmott','map','toString','patch','write','source','Unable\x20to\x20resolve\x20','\x20\x20Skipped\x20skill\x20install\x20(','\x20\x20Run\x20manually:\x20npm\x20install\x20-g\x20','pipe','Skip\x20official\x20skill\x20package\x20refresh\x20after\x20updating','unknown','flag','Version\x20comparison\x20failed.','3392454ecXSPu','no-skills','Install\x20the\x20version\x20from\x20npm\x20beta\x20dist-tag','run','3nezPRJ','error','join'];a36_0x2517=function(){return _0x365a50;};return a36_0x2517();}function compareSemver(_0x50ae43,_0x590885){const _0xe1f46=a36_0x47fc52,_0x10c2f9=parseSemver(_0x50ae43),_0x3e7f41=parseSemver(_0x590885);if(!_0x10c2f9||!_0x3e7f41)throw CliErrors[_0xe1f46(0x1bb)](_0xe1f46(0x1ad),_0xe1f46(0x17b));for(const _0x238d3d of[_0xe1f46(0x18b),_0xe1f46(0x189),_0xe1f46(0x1a3)]){if(_0x10c2f9[_0x238d3d]<_0x3e7f41[_0x238d3d])return-0x1;if(_0x10c2f9[_0x238d3d]>_0x3e7f41[_0x238d3d])return 0x1;}if(!_0x10c2f9[_0xe1f46(0x1b8)]&&!_0x3e7f41[_0xe1f46(0x1b8)])return 0x0;if(!_0x10c2f9[_0xe1f46(0x1b8)])return 0x1;if(!_0x3e7f41[_0xe1f46(0x1b8)])return-0x1;if(_0x10c2f9[_0xe1f46(0x1b8)]===_0x3e7f41[_0xe1f46(0x1b8)])return 0x0;return _0x10c2f9[_0xe1f46(0x1b8)]<_0x3e7f41[_0xe1f46(0x1b8)]?-0x1:0x1;}function getRequestedVersion(_0x48636d){const _0x55a921=a36_0x47fc52,_0x205876=_0x48636d['str'](_0x55a921(0x190))[_0x55a921(0x1c2)]();if(_0x205876)return _0x205876;return String(_0x48636d[_0x55a921(0x1b5)]?.[0x0]??'')['trim']();}function shouldSkipOfficialSkill(_0x54f58a){const _0x4f40d4=a36_0x47fc52;return _0x54f58a[_0x4f40d4(0x182)](_0x4f40d4(0x1af))||_0x54f58a[_0x4f40d4(0x1ac)]('skills')===![];}async function validateUpdateFlags(_0x21f651){const _0x2b74cf=a36_0x47fc52,_0x284664=getRequestedVersion(_0x21f651),_0x3a604d=[_0x21f651[_0x2b74cf(0x182)]('latest')?_0x2b74cf(0x193):'',_0x21f651[_0x2b74cf(0x182)](_0x2b74cf(0x18f))?_0x2b74cf(0x18f):'',_0x284664?_0x2b74cf(0x190):'']['filter'](Boolean);if(_0x3a604d['length']>0x1)throw CliErrors[_0x2b74cf(0x1bb)](_0x2b74cf(0x18a),_0x2b74cf(0x197));if(_0x284664&&!parseSemver(_0x284664))throw CliErrors['validation'](_0x2b74cf(0x17e)+_0x284664,_0x2b74cf(0x17c));}async function fetchNpmDistTags(){const _0x31a741=a36_0x47fc52;try{const _0x38d7e0=NPM_REGISTRY_BASE_URL+_0x31a741(0x181)+encodeURIComponent(LOVRABET_NPM_PACKAGE_NAME)+'/dist-tags',_0x270b03=await fetch(_0x38d7e0,{'signal':AbortSignal['timeout'](0x2710)});if(!_0x270b03['ok'])return null;const _0x1045cb=await _0x270b03['json']();if(!_0x1045cb||typeof _0x1045cb!==_0x31a741(0x1b7))return null;return Object[_0x31a741(0x18c)](Object[_0x31a741(0x191)](_0x1045cb)[_0x31a741(0x1bf)](([,_0x57347d])=>typeof _0x57347d===_0x31a741(0x198)&&_0x57347d[_0x31a741(0x1c2)]())[_0x31a741(0x1a1)](([_0x16f142,_0x213f3a])=>[_0x16f142,String(_0x213f3a)[_0x31a741(0x1c2)]()]));}catch{return null;}}async function resolveTargetVersion(_0x5e2cd2){const _0x395aeb=a36_0x47fc52,_0x164cac=getRequestedVersion(_0x5e2cd2);if(_0x164cac)return{'version':_0x164cac,'source':_0x395aeb(0x190)};const _0x586140=_0x5e2cd2[_0x395aeb(0x182)]('beta')?_0x395aeb(0x18f):'latest',_0x4439e6=await fetchNpmDistTags(),_0x446e94=_0x4439e6?.[_0x586140];if(!_0x446e94)return null;return{'version':_0x446e94,'source':_0x586140};}function shouldInstallTarget(_0xd7292f,_0x2c8506){const _0x2a558e=a36_0x47fc52,_0x5b0a76=compareSemver(_0xd7292f,_0x2c8506[_0x2a558e(0x190)]);if(_0x2c8506['source']===_0x2a558e(0x190))return _0x5b0a76!==0x0;return _0x5b0a76<0x0;}function installCliPackage(_0x31b9b1,_0x2e00da){const _0x49c9fe=a36_0x47fc52,_0x14630b=resolveNpmBin(_0x49c9fe(0x1c4)),_0x2bc91b=['install','-g',LOVRABET_NPM_PACKAGE_NAME+'@'+_0x31b9b1];console[_0x49c9fe(0x185)]('*\x20'+[_0x14630b,..._0x2bc91b][_0x49c9fe(0x1b4)]('\x20'));const _0x4d1665=spawnSync(_0x14630b,_0x2bc91b,{'cwd':process['cwd'](),'stdio':_0x2e00da?'pipe':_0x49c9fe(0x1c3),'env':process.env,'shell':![]});if(_0x4d1665[_0x49c9fe(0x195)]===0x0)return{'ok':!![]};let _0x3c7e1d=_0x4d1665[_0x49c9fe(0x1b3)]?.['message']||_0x49c9fe(0x179)+(_0x4d1665['status']??_0x49c9fe(0x1ab));if(_0x2e00da){const _0x53e814=_0x4d1665['stderr']?_0x4d1665[_0x49c9fe(0x184)][_0x49c9fe(0x1a2)]()[_0x49c9fe(0x1c2)]():'',_0x3cca96=_0x4d1665[_0x49c9fe(0x17f)]?_0x4d1665['stdout']['toString']()[_0x49c9fe(0x1c2)]():'';if(_0x53e814)_0x3c7e1d=_0x53e814;else{if(_0x3cca96)_0x3c7e1d=_0x3cca96;}}return{'ok':![],'error':_0x3c7e1d};}async function installOfficialSkill(_0xa0b579){const _0x2256ba=a36_0x47fc52;console[_0x2256ba(0x185)](_0x2256ba(0x18d));const _0x28b114=runNpxSkillsAddGlobal(process[_0x2256ba(0x186)](),LOVRABET_SKILL_SOURCE,{'stdio':_0xa0b579?_0x2256ba(0x1a9):'inherit'});if(_0x28b114[_0x2256ba(0x17d)]){console[_0x2256ba(0x185)](_0x2256ba(0x1a7)+LOVRABET_SKIP_NPX_SKILLS_ENV+_0x2256ba(0x19f));return;}if(_0x28b114['ok']){console[_0x2256ba(0x185)]('\x20\x20Official\x20skill\x20package\x20is\x20up\x20to\x20date.');return;}console[_0x2256ba(0x187)](_0x2256ba(0x19b)+(_0x28b114[_0x2256ba(0x1b3)]||'unknown')),console[_0x2256ba(0x185)](_0x2256ba(0x19e)+LOVRABET_SKILL_SOURCE+_0x2256ba(0x183));}async function execute(_0x51e8aa){const _0x1019ae=a36_0x47fc52;await validateUpdateFlags(_0x51e8aa);const _0x539fea=getCliVersion();console[_0x1019ae(0x185)](_0x1019ae(0x1ba)+_0x539fea),console[_0x1019ae(0x185)](_0x1019ae(0x199));const _0x62afc4=await resolveTargetVersion(_0x51e8aa);if(!_0x62afc4){const _0x5180f0=_0x51e8aa[_0x1019ae(0x182)](_0x1019ae(0x18f))?'beta':_0x1019ae(0x193),_0xc09a6a=_0x1019ae(0x1a6)+_0x5180f0+_0x1019ae(0x1be);return console['warn'](_0xc09a6a),console[_0x1019ae(0x185)](_0x1019ae(0x1a8)+LOVRABET_NPM_PACKAGE_NAME+'@'+_0x5180f0),{'ok':![]};}if(!shouldInstallTarget(_0x539fea,_0x62afc4)){const _0x4b3b20=_0x62afc4[_0x1019ae(0x1a5)]===_0x1019ae(0x190)?'Already\x20on\x20requested\x20version\x20(v'+_0x62afc4[_0x1019ae(0x190)]+').':_0x1019ae(0x19d)+_0x62afc4[_0x1019ae(0x190)]+').';return console[_0x1019ae(0x185)](_0x4b3b20),shouldSkipOfficialSkill(_0x51e8aa)?console[_0x1019ae(0x185)](_0x1019ae(0x188)):await installOfficialSkill(_0x51e8aa[_0x1019ae(0x1bc)]),{'ok':!![]};}console[_0x1019ae(0x185)]('Updating\x20'+LOVRABET_NPM_PACKAGE_NAME+':\x20'+_0x539fea+'\x20->\x20'+_0x62afc4[_0x1019ae(0x190)]);const _0x1d1bd3=installCliPackage(_0x62afc4[_0x1019ae(0x190)],_0x51e8aa['nonInteractive']);if(!_0x1d1bd3['ok']){const _0x2560e5=_0x1019ae(0x180)+(_0x1d1bd3[_0x1019ae(0x1b3)]||_0x1019ae(0x1ab));return console[_0x1019ae(0x1b3)](_0x2560e5),console[_0x1019ae(0x185)]('\x20\x20Try\x20manually:\x20npm\x20install\x20-g\x20'+LOVRABET_NPM_PACKAGE_NAME+'@'+_0x62afc4[_0x1019ae(0x190)]),{'ok':![]};}return console[_0x1019ae(0x185)](_0x1019ae(0x1c1)+_0x62afc4['version']+'.'),console[_0x1019ae(0x185)]('\x20\x20Restart\x20your\x20terminal\x20to\x20use\x20the\x20new\x20version.'),shouldSkipOfficialSkill(_0x51e8aa)?console[_0x1019ae(0x185)](_0x1019ae(0x188)):await installOfficialSkill(_0x51e8aa['nonInteractive']),{'ok':!![]};}export const updateDefinition={'service':'update','command':a36_0x47fc52(0x1b1),'description':'Update\x20'+CLI_BIN_NAME+a36_0x47fc52(0x18e),'risk':a36_0x47fc52(0x1a4),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':updateFlags,'validate':validateUpdateFlags,'execute':execute};
@@ -1 +1 @@
1
- const a37_0x4c37d7=a37_0x3336;(function(_0x13b94e,_0x443242){const _0x4a4e28=a37_0x3336,_0x5b9f4e=_0x13b94e();while(!![]){try{const _0x1f761a=parseInt(_0x4a4e28(0x175))/0x1*(-parseInt(_0x4a4e28(0x17e))/0x2)+-parseInt(_0x4a4e28(0x179))/0x3*(-parseInt(_0x4a4e28(0x16f))/0x4)+-parseInt(_0x4a4e28(0x180))/0x5+parseInt(_0x4a4e28(0x182))/0x6+parseInt(_0x4a4e28(0x17d))/0x7+parseInt(_0x4a4e28(0x16b))/0x8*(-parseInt(_0x4a4e28(0x16a))/0x9)+parseInt(_0x4a4e28(0x173))/0xa*(-parseInt(_0x4a4e28(0x16e))/0xb);if(_0x1f761a===_0x443242)break;else _0x5b9f4e['push'](_0x5b9f4e['shift']());}catch(_0xf45c57){_0x5b9f4e['push'](_0x5b9f4e['shift']());}}}(a37_0x5685,0xa5b2a));import{DEFAULT_CONFIG_VALUES}from'../constant/defaults.js';import{RUNTIME_ENV_VALUES}from'../constant/env.js';function a37_0x5685(){const _0x408218=['Override\x20API\x20domain','cliSettableTopLevel','7078715WJMVKg','152BvoCkp','enumValues','2948355WKRFyC','Risk\x20level','1410408ThBUjU','filter','Target\x20environment',';\x20local\x20alias:\x20apps.<alias>.appcode','Default\x20page\x20size','legacyCompatOnly','18cOWxqV','1567816PjcNMo','env','Access\x20key\x20(client-ak\x20auth)','3245YnDyAB','28YCtkAS','has','Locale','fromEntries','3270TugMlW','importable','8673rZvhlM','Default\x20output\x20format','entries','Override\x20runtime\x20domain','501267zlFVMC','map'];a37_0x5685=function(){return _0x408218;};return a37_0x5685();}import{OUTPUT_FORMAT_VALUES}from'../constant/output.js';export const CONFIG_FIELD_SCHEMAS={'env':{'description':a37_0x4c37d7(0x184),'topLevel':!![],'cliSettableTopLevel':!![],'enumValues':RUNTIME_ENV_VALUES,'defaultValue':DEFAULT_CONFIG_VALUES[a37_0x4c37d7(0x16c)],'importable':!![]},'format':{'description':a37_0x4c37d7(0x176),'topLevel':!![],'cliSettableTopLevel':!![],'enumValues':OUTPUT_FORMAT_VALUES,'defaultValue':DEFAULT_CONFIG_VALUES['format'],'importable':!![]},'pageSize':{'description':a37_0x4c37d7(0x168),'topLevel':!![],'cliSettableTopLevel':!![],'importable':!![]},'apiDomain':{'description':a37_0x4c37d7(0x17b),'topLevel':!![],'cliSettableTopLevel':!![],'importable':!![]},'userDomain':{'description':'Override\x20user\x20domain','topLevel':!![],'cliSettableTopLevel':!![],'importable':!![]},'runtimeDomain':{'description':a37_0x4c37d7(0x178),'topLevel':!![],'cliSettableTopLevel':!![],'importable':!![]},'accessKey':{'description':a37_0x4c37d7(0x16d),'topLevel':!![],'cliSettableTopLevel':!![],'importable':!![]},'riskLevel':{'description':a37_0x4c37d7(0x181),'topLevel':!![],'defaultValue':DEFAULT_CONFIG_VALUES['riskLevel'],'importable':!![]},'locale':{'description':a37_0x4c37d7(0x171),'topLevel':!![],'defaultValue':DEFAULT_CONFIG_VALUES['locale'],'importable':!![],'legacyCompatOnly':!![]}};export const TOP_LEVEL_CONFIG_KEYS=new Set(Object[a37_0x4c37d7(0x177)](CONFIG_FIELD_SCHEMAS)[a37_0x4c37d7(0x183)](([,_0x296ed5])=>_0x296ed5[a37_0x4c37d7(0x17c)])['map'](([_0x30ab66])=>_0x30ab66));export const CONFIG_ENUM_VALUES=Object[a37_0x4c37d7(0x172)](Object[a37_0x4c37d7(0x177)](CONFIG_FIELD_SCHEMAS)['filter'](([,_0x2aa208])=>_0x2aa208[a37_0x4c37d7(0x17f)])[a37_0x4c37d7(0x17a)](([_0x6862c2,_0x19c7a3])=>[_0x6862c2,[..._0x19c7a3[a37_0x4c37d7(0x17f)]||[]]]));export const IMPORTABLE_RUNTIME_CONFIG_KEYS=Object[a37_0x4c37d7(0x177)](CONFIG_FIELD_SCHEMAS)['filter'](([,_0x3b451b])=>_0x3b451b[a37_0x4c37d7(0x174)])[a37_0x4c37d7(0x17a)](([_0x376cc0])=>_0x376cc0);export function getConfigFieldSchema(_0x14f91a){return CONFIG_FIELD_SCHEMAS[_0x14f91a];}export function getConfigEnumValues(_0x643fd8){const _0x2388cb=a37_0x4c37d7;return getConfigFieldSchema(_0x643fd8)?.[_0x2388cb(0x17f)];}export function getConfigDefaultValue(_0x58ccea){return getConfigFieldSchema(_0x58ccea)?.['defaultValue'];}export function isTopLevelConfigKey(_0x1d37d1){const _0x42b891=a37_0x4c37d7;return TOP_LEVEL_CONFIG_KEYS[_0x42b891(0x170)](_0x1d37d1);}function a37_0x3336(_0x326182,_0x4d1b6a){_0x326182=_0x326182-0x167;const _0x568588=a37_0x5685();let _0x33361b=_0x568588[_0x326182];return _0x33361b;}export function isLegacyCompatConfigKey(_0xbb7984){const _0x19f302=a37_0x4c37d7;return getConfigFieldSchema(_0xbb7984)?.[_0x19f302(0x169)]===!![];}export function getTopLevelConfigKeyList(){return[...TOP_LEVEL_CONFIG_KEYS];}export function formatConfigKeyList(_0x5cde71){return[..._0x5cde71]['join'](',\x20');}export function getTopLevelConfigKeySummary(){return formatConfigKeyList(getTopLevelConfigKeyList());}export function getConfigCommandKeyDescription(){const _0x222b83=a37_0x4c37d7;return'Config\x20key.\x20Top-level:\x20'+getTopLevelConfigKeySummary()+_0x222b83(0x167);}export function buildAppProfileListFields(_0x2ba3b2){return{'env':_0x2ba3b2,'hasAccessKey':![],'format':null,'pageSize':null,'riskLevel':null,'locale':null};}
1
+ const a37_0x2e5256=a37_0x2500;(function(_0x4d27dc,_0x4cff43){const _0x35fde1=a37_0x2500,_0x4603bd=_0x4d27dc();while(!![]){try{const _0x26cbcb=parseInt(_0x35fde1(0x1e5))/0x1+-parseInt(_0x35fde1(0x201))/0x2+parseInt(_0x35fde1(0x1ea))/0x3*(-parseInt(_0x35fde1(0x1ef))/0x4)+-parseInt(_0x35fde1(0x1f4))/0x5+parseInt(_0x35fde1(0x1e9))/0x6*(-parseInt(_0x35fde1(0x203))/0x7)+parseInt(_0x35fde1(0x1fb))/0x8*(-parseInt(_0x35fde1(0x1ed))/0x9)+parseInt(_0x35fde1(0x1fc))/0xa;if(_0x26cbcb===_0x4cff43)break;else _0x4603bd['push'](_0x4603bd['shift']());}catch(_0x279762){_0x4603bd['push'](_0x4603bd['shift']());}}}(a37_0x234e,0x7a32c));import{DEFAULT_CONFIG_VALUES}from'../constant/defaults.js';import{RUNTIME_ENV_VALUES}from'../constant/env.js';import{OUTPUT_FORMAT_VALUES}from'../constant/output.js';export const CONFIG_FIELD_SCHEMAS={'env':{'description':a37_0x2e5256(0x1f5),'topLevel':!![],'cliSettableTopLevel':!![],'enumValues':RUNTIME_ENV_VALUES,'defaultValue':DEFAULT_CONFIG_VALUES[a37_0x2e5256(0x1f0)],'importable':!![]},'format':{'description':'Default\x20output\x20format','topLevel':!![],'cliSettableTopLevel':!![],'enumValues':OUTPUT_FORMAT_VALUES,'defaultValue':DEFAULT_CONFIG_VALUES[a37_0x2e5256(0x1f3)],'importable':!![]},'pageSize':{'description':a37_0x2e5256(0x1f6),'topLevel':!![],'cliSettableTopLevel':!![],'importable':!![]},'apiDomain':{'description':a37_0x2e5256(0x1fd),'topLevel':!![],'cliSettableTopLevel':!![],'importable':!![]},'userDomain':{'description':a37_0x2e5256(0x1fe),'topLevel':!![],'cliSettableTopLevel':!![],'importable':!![]},'runtimeDomain':{'description':a37_0x2e5256(0x1f2),'topLevel':!![],'cliSettableTopLevel':!![],'importable':!![]},'accessKey':{'description':a37_0x2e5256(0x1f9),'topLevel':!![],'cliSettableTopLevel':!![],'importable':!![]},'riskLevel':{'description':a37_0x2e5256(0x1ff),'topLevel':!![],'defaultValue':DEFAULT_CONFIG_VALUES[a37_0x2e5256(0x1f8)],'importable':!![]},'locale':{'description':a37_0x2e5256(0x1e6),'topLevel':!![],'defaultValue':DEFAULT_CONFIG_VALUES[a37_0x2e5256(0x1f1)],'importable':!![],'legacyCompatOnly':!![]}};export const TOP_LEVEL_CONFIG_KEYS=new Set(Object['entries'](CONFIG_FIELD_SCHEMAS)[a37_0x2e5256(0x204)](([,_0x227fb1])=>_0x227fb1[a37_0x2e5256(0x1e8)])[a37_0x2e5256(0x1e4)](([_0x905d66])=>_0x905d66));export const CONFIG_ENUM_VALUES=Object['fromEntries'](Object[a37_0x2e5256(0x200)](CONFIG_FIELD_SCHEMAS)[a37_0x2e5256(0x204)](([,_0x128b88])=>_0x128b88['enumValues'])[a37_0x2e5256(0x1e4)](([_0x4a2ab3,_0x1d6330])=>[_0x4a2ab3,[..._0x1d6330[a37_0x2e5256(0x1eb)]||[]]]));function a37_0x234e(){const _0x39807f=['Locale','defaultValue','cliSettableTopLevel','2878476tuIHZA','2081655prfeHN','enumValues','Config\x20key.\x20Top-level:\x20','72VwoKHf','join','4cAjUeO','env','locale','Override\x20runtime\x20domain','format','2666415hMEpry','Target\x20environment','Default\x20page\x20size','has','riskLevel','Access\x20key\x20(client-ak\x20auth)','legacyCompatOnly','183200LnQCOJ','29231930NwCSOe','Override\x20API\x20domain','Override\x20user\x20domain','Risk\x20level','entries','1413978SjWhRt','importable','7UQqtbm','filter','map','174434EstJdv'];a37_0x234e=function(){return _0x39807f;};return a37_0x234e();}export const IMPORTABLE_RUNTIME_CONFIG_KEYS=Object[a37_0x2e5256(0x200)](CONFIG_FIELD_SCHEMAS)[a37_0x2e5256(0x204)](([,_0x5dc3cb])=>_0x5dc3cb[a37_0x2e5256(0x202)])[a37_0x2e5256(0x1e4)](([_0x4e545a])=>_0x4e545a);export function getConfigFieldSchema(_0x3fa679){return CONFIG_FIELD_SCHEMAS[_0x3fa679];}function a37_0x2500(_0x5a8d44,_0x15da32){_0x5a8d44=_0x5a8d44-0x1e4;const _0x234e43=a37_0x234e();let _0x250076=_0x234e43[_0x5a8d44];return _0x250076;}export function getConfigEnumValues(_0x3a6156){const _0x154e65=a37_0x2e5256;return getConfigFieldSchema(_0x3a6156)?.[_0x154e65(0x1eb)];}export function getConfigDefaultValue(_0x235e99){const _0x27cb2e=a37_0x2e5256;return getConfigFieldSchema(_0x235e99)?.[_0x27cb2e(0x1e7)];}export function isTopLevelConfigKey(_0x292478){const _0x16c23d=a37_0x2e5256;return TOP_LEVEL_CONFIG_KEYS[_0x16c23d(0x1f7)](_0x292478);}export function isLegacyCompatConfigKey(_0x1145cd){const _0x588bb7=a37_0x2e5256;return getConfigFieldSchema(_0x1145cd)?.[_0x588bb7(0x1fa)]===!![];}export function getTopLevelConfigKeyList(){return[...TOP_LEVEL_CONFIG_KEYS];}export function formatConfigKeyList(_0xbc1c1f){const _0x2078a5=a37_0x2e5256;return[..._0xbc1c1f][_0x2078a5(0x1ee)](',\x20');}export function getTopLevelConfigKeySummary(){return formatConfigKeyList(getTopLevelConfigKeyList());}export function getConfigCommandKeyDescription(){const _0x52c421=a37_0x2e5256;return _0x52c421(0x1ec)+getTopLevelConfigKeySummary()+';\x20local\x20alias:\x20apps.<alias>.appcode';}export function buildAppProfileListFields(_0x9c4d41){return{'env':_0x9c4d41,'hasAccessKey':![],'format':null,'pageSize':null,'riskLevel':null,'locale':null};}
@@ -1 +1 @@
1
- function a38_0x36bd(_0x157fee,_0x1af09){_0x157fee=_0x157fee-0x10d;const _0x24883b=a38_0x2488();let _0x36bde9=_0x24883b[_0x157fee];return _0x36bde9;}const a38_0x409b35=a38_0x36bd;(function(_0x5ddb6f,_0x3bdcda){const _0x31e1e0=a38_0x36bd,_0x1f6835=_0x5ddb6f();while(!![]){try{const _0x6ee0eb=-parseInt(_0x31e1e0(0x114))/0x1*(-parseInt(_0x31e1e0(0x110))/0x2)+-parseInt(_0x31e1e0(0x10d))/0x3+parseInt(_0x31e1e0(0x116))/0x4+-parseInt(_0x31e1e0(0x117))/0x5+parseInt(_0x31e1e0(0x10e))/0x6+-parseInt(_0x31e1e0(0x113))/0x7+-parseInt(_0x31e1e0(0x115))/0x8*(-parseInt(_0x31e1e0(0x10f))/0x9);if(_0x6ee0eb===_0x3bdcda)break;else _0x1f6835['push'](_0x1f6835['shift']());}catch(_0x2a72a7){_0x1f6835['push'](_0x1f6835['shift']());}}}(a38_0x2488,0x80f68));function a38_0x2488(){const _0x1acd3a=['5266680npALJI','3060140jzSnoN','1834095BPbExv','1221381yjfWzb','1694040AValer','9FreiNx','240NdChRG','ClientAk','client-ak','3322004DAuQcx','592vPWFKj'];a38_0x2488=function(){return _0x1acd3a;};return a38_0x2488();}export const AUTH_MODE={'ClientAk':a38_0x409b35(0x112)};export function isAuthMode(_0x24cdc3){const _0xdafaae=a38_0x409b35;return _0x24cdc3===AUTH_MODE[_0xdafaae(0x111)];}
1
+ const a38_0x2ab954=a38_0x33cb;(function(_0x126dfb,_0x6e3f17){const _0x2cfb01=a38_0x33cb,_0x299962=_0x126dfb();while(!![]){try{const _0x4b002d=parseInt(_0x2cfb01(0x93))/0x1+-parseInt(_0x2cfb01(0x8e))/0x2*(-parseInt(_0x2cfb01(0x91))/0x3)+parseInt(_0x2cfb01(0x96))/0x4*(-parseInt(_0x2cfb01(0x8d))/0x5)+-parseInt(_0x2cfb01(0x97))/0x6+parseInt(_0x2cfb01(0x94))/0x7*(-parseInt(_0x2cfb01(0x8b))/0x8)+-parseInt(_0x2cfb01(0x95))/0x9+parseInt(_0x2cfb01(0x90))/0xa*(parseInt(_0x2cfb01(0x8c))/0xb);if(_0x4b002d===_0x6e3f17)break;else _0x299962['push'](_0x299962['shift']());}catch(_0x4af0c7){_0x299962['push'](_0x299962['shift']());}}}(a38_0x1ce8,0x2a41c));function a38_0x1ce8(){const _0x2ce9a3=['336681cEniAu','415296TnrUms','91440zZXZPS','164WpiCSh','917772vrtODp','24WQrkIf','991331KCaLLQ','27910DusXah','36YsVizq','ClientAk','30KMeNci','22668lOJcFF','client-ak'];a38_0x1ce8=function(){return _0x2ce9a3;};return a38_0x1ce8();}function a38_0x33cb(_0x39cd9a,_0x556b58){_0x39cd9a=_0x39cd9a-0x8b;const _0x1ce88a=a38_0x1ce8();let _0x33cb84=_0x1ce88a[_0x39cd9a];return _0x33cb84;}export const AUTH_MODE={'ClientAk':a38_0x2ab954(0x92)};export function isAuthMode(_0x586ba8){const _0x138699=a38_0x2ab954;return _0x586ba8===AUTH_MODE[_0x138699(0x8f)];}