@lovrabet/lovrabet-cli 2.1.0 → 2.1.1-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cli.js +1 -1
- package/lib/commands/api-doc/index.js +1 -1
- package/lib/commands/app/cache.js +1 -1
- package/lib/commands/app/definitions.js +1 -1
- package/lib/commands/app/eligibility.js +1 -1
- package/lib/commands/app/mock-loader.js +1 -1
- package/lib/commands/app/remote-source.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/artifact/index.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/auth/prompt.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/exec.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/common/config-policy.js +1 -1
- package/lib/commands/common/constraints.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/config/definitions.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/sdk-doc.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/init.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/personal-bff/index.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/service/dynamic.js +1 -1
- package/lib/commands/service/index.js +1 -1
- package/lib/commands/service/registry.js +1 -1
- package/lib/commands/skill/index.js +1 -1
- package/lib/commands/skill/templates.js +1 -1
- package/lib/commands/skill/validate.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/update.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/app.js +1 -1
- package/lib/constant/auth-mode.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/distribution.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/product.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/constant/url.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/sdk-client.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/dryrun.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/preparse.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-confirmation.js +1 -1
- package/lib/framework/runner-error.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/runtime-skill-sync.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a35_0xba3e4f=a35_0x4e26;(function(_0x30c80d,_0x13bca5){const _0x2bdeed=a35_0x4e26,_0x57ead8=_0x30c80d();while(!![]){try{const _0x3c56d1=-parseInt(_0x2bdeed(0x108))/0x1*(parseInt(_0x2bdeed(0x120))/0x2)+parseInt(_0x2bdeed(0x121))/0x3+-parseInt(_0x2bdeed(0x12a))/0x4*(parseInt(_0x2bdeed(0x104))/0x5)+-parseInt(_0x2bdeed(0x15c))/0x6+parseInt(_0x2bdeed(0x151))/0x7+-parseInt(_0x2bdeed(0x140))/0x8+-parseInt(_0x2bdeed(0x13e))/0x9*(-parseInt(_0x2bdeed(0x144))/0xa);if(_0x3c56d1===_0x13bca5)break;else _0x57ead8['push'](_0x57ead8['shift']());}catch(_0x578e05){_0x57ead8['push'](_0x57ead8['shift']());}}}(a35_0x4c32,0x724a2));import{CliErrors}from'../../errors.js';import{existsSync,lstatSync,mkdirSync,writeFileSync}from'node:fs';function a35_0x4e26(_0x547bbf,_0x322372){_0x547bbf=_0x547bbf-0xee;const _0x4c320e=a35_0x4c32();let _0x4e2667=_0x4c320e[_0x547bbf];return _0x4e2667;}import{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':a35_0xba3e4f(0x153),'type':a35_0xba3e4f(0x162),'description':a35_0xba3e4f(0xee)},SCOPE_FLAG={'name':a35_0xba3e4f(0x14f),'type':a35_0xba3e4f(0x162),'description':a35_0xba3e4f(0xf1)},LIST_SCOPE_FLAG={'name':a35_0xba3e4f(0x14f),'type':a35_0xba3e4f(0x162),'description':a35_0xba3e4f(0x118),'enum':[a35_0xba3e4f(0x14b),a35_0xba3e4f(0xff),a35_0xba3e4f(0x14e),'public',a35_0xba3e4f(0x161)]},LOCAL_FLAG={'name':'local','type':a35_0xba3e4f(0x159),'description':a35_0xba3e4f(0x14c)},DIR_FLAG={'name':a35_0xba3e4f(0x10b),'type':a35_0xba3e4f(0x162),'required':!![],'description':a35_0xba3e4f(0x130)},CREATE_NAME_FLAG={'name':a35_0xba3e4f(0x139),'type':a35_0xba3e4f(0x162),'required':!![],'description':'Skill\x20name\x20using\x20lowercase\x20letters,\x20numbers,\x20and\x20hyphens','pattern':{'regex':SKILL_NAME_PATTERN,'description':a35_0xba3e4f(0x102)}},TYPE_FLAG={'name':a35_0xba3e4f(0x10d),'type':a35_0xba3e4f(0x162),'description':'Skill\x20template\x20type','default':a35_0xba3e4f(0x15e),'enum':[...SKILL_TYPES]},TARGET_FLAG={'name':a35_0xba3e4f(0x12f),'type':'string','description':a35_0xba3e4f(0x10f),'default':DEFAULT_SKILL_TARGET},FORCE_FLAG={'name':a35_0xba3e4f(0x12d),'type':'boolean','description':a35_0xba3e4f(0x137)},STRICT_FLAG={'name':a35_0xba3e4f(0x11c),'type':a35_0xba3e4f(0x159),'description':a35_0xba3e4f(0x143)};function summarizeRuntimeSkill(_0x2e22ab){const _0x27c17c=a35_0xba3e4f;return{'id':_0x2e22ab['id'],'skillCode':_0x2e22ab[_0x27c17c(0x14d)],'skillName':_0x2e22ab['skillName'],'scope':_0x2e22ab[_0x27c17c(0x14f)],'version':_0x2e22ab['version'],'readonly':_0x2e22ab[_0x27c17c(0x11f)]};}function summarizeLocalRuntimeSkill(_0x26d4da){const _0x54988c=a35_0xba3e4f;return{'id':_0x26d4da['id'],'skillCode':_0x26d4da[_0x54988c(0x14d)],'skillName':_0x26d4da[_0x54988c(0x15b)],'scope':_0x26d4da[_0x54988c(0x14f)],'appCode':_0x26d4da['appCode'],'version':_0x26d4da[_0x54988c(0xf5)],'status':_0x26d4da[_0x54988c(0x155)],'readonly':_0x26d4da[_0x54988c(0x11f)],'tags':_0x26d4da[_0x54988c(0x160)],'dir':_0x26d4da['dir'],'cacheDir':_0x26d4da[_0x54988c(0x115)],'skillMdPath':_0x26d4da[_0x54988c(0x142)],'metadataPath':_0x26d4da[_0x54988c(0x127)],'linkedPaths':_0x26d4da[_0x54988c(0xf7)],'contentHash':_0x26d4da['contentHash'],'treeHash':_0x26d4da[_0x54988c(0xf4)],'pulledAt':_0x26d4da['pulledAt']};}export const skillDefinitions=[{'service':'skill','command':a35_0xba3e4f(0x13d),'description':'Install\x20current-app\x20business\x20Skills\x20into\x20user-level\x20Agent\x20skill\x20directories','risk':a35_0xba3e4f(0x15e),'requiresAuth':!![],'requiresAppCode':!![],'hasFormat':![],'flags':[CODE_FLAG,SCOPE_FLAG],async 'execute'(_0x24e170){return syncRuntimeSkills(_0x24e170,{'installToAgent':!![]});}},{'service':'skill','command':a35_0xba3e4f(0x156),'description':a35_0xba3e4f(0x10e),'risk':'write','requiresAuth':![],'requiresAppCode':![],'flags':[CREATE_NAME_FLAG,TYPE_FLAG,TARGET_FLAG,FORCE_FLAG],async 'dryRun'(_0x4ac9bf){const _0x4bcf13=a35_0xba3e4f,_0x40c81a=buildSkillCreatePlan(_0x4ac9bf[_0x4bcf13(0x114)](_0x4bcf13(0x139)),_0x4ac9bf[_0x4bcf13(0x114)](_0x4bcf13(0x10d)),_0x4ac9bf['str']('target'));return{'method':'WRITE','url':_0x40c81a[_0x4bcf13(0x135)],'body':{'skillName':_0x40c81a[_0x4bcf13(0x107)][_0x4bcf13(0x15b)],'type':_0x40c81a[_0x4bcf13(0x107)][_0x4bcf13(0x10d)],'selfContained':!![],'files':_0x40c81a[_0x4bcf13(0x107)][_0x4bcf13(0x109)][_0x4bcf13(0x154)](_0x5c0765=>_0x5c0765['path'])},'description':_0x4bcf13(0x116)};},async 'execute'(_0x4328d4){const _0x54a9bd=a35_0xba3e4f,_0x373e2f=buildSkillCreatePlan(_0x4328d4[_0x54a9bd(0x114)]('name'),_0x4328d4[_0x54a9bd(0x114)]('type'),_0x4328d4[_0x54a9bd(0x114)](_0x54a9bd(0x12f)));return writeSkillDraft(_0x373e2f,_0x4328d4[_0x54a9bd(0x13f)](_0x54a9bd(0x12d))),{'ok':!![],'data':{'skillName':_0x373e2f[_0x54a9bd(0x107)]['skillName'],'type':_0x373e2f[_0x54a9bd(0x107)][_0x54a9bd(0x10d)],'dir':_0x373e2f['skillDir'],'files':_0x373e2f[_0x54a9bd(0x107)][_0x54a9bd(0x109)][_0x54a9bd(0x154)](_0x25f504=>_0x25f504[_0x54a9bd(0x128)])},'message':_0x54a9bd(0x146)+_0x373e2f[_0x54a9bd(0x107)][_0x54a9bd(0x15b)]};}},{'service':a35_0xba3e4f(0xf0),'command':a35_0xba3e4f(0x15a),'description':a35_0xba3e4f(0xfd),'risk':a35_0xba3e4f(0x103),'requiresAuth':![],'requiresAppCode':![],'flags':[DIR_FLAG,STRICT_FLAG],async 'execute'(_0x1154ab){const _0x6257a7=a35_0xba3e4f,_0xaecc53=_0x1154ab[_0x6257a7(0x13f)]('strict'),_0x30f657=validateSkillDirectory(_0x1154ab[_0x6257a7(0x114)]('dir'),{'strict':_0xaecc53});return throwIfSkillValidationFailed(_0x30f657,_0xaecc53),{'ok':!![],'data':{'dir':_0x30f657[_0x6257a7(0x10b)],'type':_0x30f657[_0x6257a7(0x10d)],'errors':_0x30f657[_0x6257a7(0x12e)],'warnings':_0x30f657['warnings']},'message':_0x6257a7(0xf3)};}},{'service':a35_0xba3e4f(0xf0),'command':a35_0xba3e4f(0x12c),'description':'List\x20runtime\x20Skills\x20from\x20remote\x20or\x20CLI-managed\x20local\x20cache','risk':'read','flags':[CODE_FLAG,LIST_SCOPE_FLAG,LOCAL_FLAG],async 'execute'(_0x58817b){const _0x1bba70=a35_0xba3e4f,_0x619287=_0x58817b[_0x1bba70(0x114)](_0x1bba70(0x153)),_0x4b9409=normalizeListScope(_0x58817b[_0x1bba70(0x114)](_0x1bba70(0x14f)));if(_0x58817b[_0x1bba70(0x13f)](_0x1bba70(0x15f))){const _0x520cb1=_0x58817b['accessKey'];if(!_0x520cb1)throw CliErrors[_0x1bba70(0x106)]();const _0x31b290=_0x4b9409===_0x1bba70(0x105)?[]:await((async()=>{const _0x3e2c12=_0x1bba70,{listLocalRuntimeSkills:_0x15496b}=await import('../../skills/runtime-skill-sync.js');return _0x15496b({'env':_0x58817b[_0x3e2c12(0x131)]??'production','accessKey':_0x520cb1,'appCode':_0x58817b[_0x3e2c12(0x136)],'scopes':listScopeToRuntimeScopes(_0x4b9409),'code':_0x619287['trim']()||undefined});})()),_0x4e9afe=groupLocalRuntimeSkills(_0x31b290);return{'ok':!![],'data':{'appCode':_0x58817b[_0x1bba70(0x136)],'source':_0x1bba70(0x15f),'scope':_0x4b9409,'total':_0x31b290[_0x1bba70(0x119)],'personal':_0x4e9afe[_0x1bba70(0xff)][_0x1bba70(0x119)],'company':_0x4e9afe[_0x1bba70(0x14e)][_0x1bba70(0x119)],'public':0x0,'items':_0x31b290['map'](summarizeLocalRuntimeSkill),'skills':{'personal':_0x4e9afe['personal']['map'](summarizeLocalRuntimeSkill),'company':_0x4e9afe[_0x1bba70(0x14e)][_0x1bba70(0x154)](summarizeLocalRuntimeSkill),'public':[]}},'message':'Listed\x20'+_0x31b290[_0x1bba70(0x119)]+_0x1bba70(0x112)};}const {listRuntimeSkills:_0x48db2c}=await import(_0x1bba70(0x141)),_0x37ea6d=await _0x48db2c({'appCode':_0x58817b[_0x1bba70(0x136)],'scope':listScopeToRemoteScope(_0x4b9409),'code':_0x619287[_0x1bba70(0x13c)]()||undefined}),_0x2e73ea=shouldListScope(_0x4b9409,_0x1bba70(0xff))?_0x37ea6d[_0x1bba70(0xff)]:[],_0x54293f=shouldListScope(_0x4b9409,_0x1bba70(0x14e))?_0x37ea6d['company']:[],_0x393d44=shouldListScope(_0x4b9409,_0x1bba70(0x105))?_0x37ea6d[_0x1bba70(0x105)]:[],_0x23f3e7=_0x4b9409==='user'?_0x37ea6d[_0x1bba70(0x148)]:[..._0x2e73ea,..._0x54293f,..._0x393d44];return{'ok':!![],'data':{'appCode':_0x58817b[_0x1bba70(0x136)],'source':'remote','scope':_0x4b9409,'total':_0x23f3e7[_0x1bba70(0x119)],'personal':_0x2e73ea[_0x1bba70(0x119)],'company':_0x54293f[_0x1bba70(0x119)],'public':_0x393d44[_0x1bba70(0x119)],'items':_0x23f3e7[_0x1bba70(0x154)](summarizeRuntimeSkill),'skills':{'personal':_0x2e73ea[_0x1bba70(0x154)](summarizeRuntimeSkill),'company':_0x54293f[_0x1bba70(0x154)](summarizeRuntimeSkill),'public':_0x393d44[_0x1bba70(0x154)](summarizeRuntimeSkill)}},'message':'Listed\x20'+_0x23f3e7[_0x1bba70(0x119)]+_0x1bba70(0x150)};}},{'service':a35_0xba3e4f(0xf0),'command':a35_0xba3e4f(0x149),'description':a35_0xba3e4f(0x158),'risk':a35_0xba3e4f(0x15e),'flags':[CODE_FLAG,SCOPE_FLAG],async 'execute'(_0x1d5073){return syncRuntimeSkills(_0x1d5073,{'installToAgent':![]});}},{'service':a35_0xba3e4f(0xf0),'command':'push','description':a35_0xba3e4f(0x111),'risk':a35_0xba3e4f(0x15e),'flags':[DIR_FLAG],async 'execute'(_0x3affbc){const _0x5e080d=a35_0xba3e4f,{createPersonalRuntimeSkill:_0xbd2bbe,downloadRuntimeSkillPackage:_0x42f742,listRuntimeSkills:_0x323e5c,updatePersonalRuntimeSkill:_0x363a46}=await import('../../core/api-client.js'),{verifyRuntimeSkillPackage:_0x2f5d92,readPushDirectory:_0x47dfb6,recordPushedRuntimeSkill:_0xbc14fa}=await import(_0x5e080d(0x11d));if(!_0x3affbc[_0x5e080d(0x13a)])throw CliErrors[_0x5e080d(0x106)]();const _0x29cdd8=_0x3affbc[_0x5e080d(0x114)](_0x5e080d(0x10b)),_0x58c5b4=validateSkillDirectory(_0x29cdd8);throwIfSkillValidationFailed(_0x58c5b4);const _0x3e3876=_0x47dfb6(_0x29cdd8,_0x3affbc['appCode']),_0x586d16=(await _0x323e5c({'appCode':_0x3affbc[_0x5e080d(0x136)],'scope':'personal'}))['personal'][_0x5e080d(0x110)](_0x4bc16a=>_0x4bc16a['skillCode']===_0x3e3876['skillCode']),_0x4e51a9=_0x586d16?await _0x363a46(_0x3e3876[_0x5e080d(0x14d)],_0x3affbc['appCode'],_0x3e3876[_0x5e080d(0xf9)]):await _0xbd2bbe(_0x3affbc[_0x5e080d(0x136)],_0x3e3876[_0x5e080d(0xf9)]);assertMultiFilePushPersisted(_0x3e3876[_0x5e080d(0xf9)][_0x5e080d(0x109)],_0x4e51a9);if(isPackageBackedMultiFile(_0x4e51a9['files'])){const _0x5323b0=await _0x42f742(_0x5e080d(0xff),_0x3e3876[_0x5e080d(0x14d)],_0x3affbc[_0x5e080d(0x136)]);_0x2f5d92(_0x4e51a9[_0x5e080d(0x109)],_0x5323b0);}return _0xbc14fa(_0x29cdd8,_0x4e51a9,_0x3affbc[_0x5e080d(0x136)]),{'ok':!![],'data':summarizeRuntimeSkill(_0x4e51a9),'message':_0x586d16?_0x5e080d(0xfa)+_0x3e3876[_0x5e080d(0x14d)]:_0x5e080d(0xf6)+_0x3e3876[_0x5e080d(0x14d)]};}}];async function syncRuntimeSkills(_0x3fe20d,_0x51a187){const _0x2315fc=a35_0xba3e4f,{downloadRuntimeSkillPackage:_0x860f0c,listRuntimeSkills:_0x154048}=await import(_0x2315fc(0x141)),{linkEffectiveRuntimeSkills:_0x4a595f,materializeRuntimeSkill:_0x534025,pruneStaleRuntimeSkillCache:_0x238f8f,pruneStaleRuntimeSkillLinks:_0x452336}=await import(_0x2315fc(0x11d)),_0x22d11c=_0x3fe20d[_0x2315fc(0x114)]('code');normalizePullScope(_0x3fe20d['str'](_0x2315fc(0x14f)));const _0x1a9de1=_0x3fe20d['envName']??_0x2315fc(0x11e),_0x11b7ad=_0x3fe20d['accessKey'];if(!_0x11b7ad){if(_0x51a187[_0x2315fc(0x125)])throw CliErrors[_0x2315fc(0x106)](_0x2315fc(0x11b));throw CliErrors[_0x2315fc(0x106)]();}const _0x39e0a5=await _0x154048({'appCode':_0x3fe20d[_0x2315fc(0x136)],'scope':'user','code':_0x22d11c[_0x2315fc(0x13c)]()||undefined}),_0x4d44fc=_0x39e0a5[_0x2315fc(0xff)],_0x26e9e8=_0x39e0a5['company'],_0x1d0f87=new Set([..._0x4d44fc[_0x2315fc(0x154)](_0x340e36=>_0x340e36[_0x2315fc(0x14d)]?.[_0x2315fc(0x13c)]())[_0x2315fc(0x10a)](_0x5656ca=>Boolean(_0x5656ca)),..._0x26e9e8['map'](_0x194f71=>_0x194f71[_0x2315fc(0x14d)]?.[_0x2315fc(0x13c)]())[_0x2315fc(0x10a)](_0xd80935=>Boolean(_0xd80935))]),_0x29dbd0=_0x22d11c[_0x2315fc(0x13c)]()?[_0x22d11c[_0x2315fc(0x13c)]()]:undefined,_0x23de83=_0x51a187['installToAgent']?_0x452336(_0x3fe20d['appCode'],_0x1d0f87,{},_0x29dbd0):[],_0xf35e74=_0x238f8f({'env':_0x1a9de1,'accessKey':_0x11b7ad,'appCode':_0x3fe20d[_0x2315fc(0x136)],'activeSkillCodes':_0x1d0f87,'pruneSkillCodes':_0x29dbd0}),_0x4214e0=[];for(const _0x59e6be of _0x4d44fc){_0x4214e0['push'](_0x534025(_0x59e6be,_0x2315fc(0xff),{'env':_0x1a9de1,'accessKey':_0x11b7ad,'appCode':_0x3fe20d['appCode'],'packageBytes':await downloadPackageIfNeeded(_0x59e6be,'personal',_0x3fe20d[_0x2315fc(0x136)],_0x860f0c)}));}for(const _0x3e3df1 of _0x26e9e8){_0x4214e0['push'](_0x534025(_0x3e3df1,_0x2315fc(0x14e),{'env':_0x1a9de1,'accessKey':_0x11b7ad,'appCode':_0x3fe20d[_0x2315fc(0x136)],'packageBytes':await downloadPackageIfNeeded(_0x3e3df1,_0x2315fc(0x14e),_0x3fe20d[_0x2315fc(0x136)],_0x860f0c)}));}const _0x26992b=_0x51a187[_0x2315fc(0x125)]?_0x4a595f(_0x4214e0,_0x3fe20d[_0x2315fc(0x136)]):[],_0x383b43=countLinkActions(_0x26992b);return{'ok':!![],'data':{'appCode':_0x3fe20d[_0x2315fc(0x136)],'personal':_0x4d44fc[_0x2315fc(0x119)],'company':_0x26e9e8['length'],'materialized':_0x4214e0['length'],'links':{'total':_0x26992b['length'],'created':_0x383b43[_0x2315fc(0xfc)]??0x0,'updated':_0x383b43[_0x2315fc(0x129)]??0x0,'unchanged':_0x383b43[_0x2315fc(0xf2)]??0x0,'skipped':0x0,'conflicted':0x0},'pruned':{'links':_0x23de83[_0x2315fc(0x10a)](_0x4c5ec8=>_0x4c5ec8[_0x2315fc(0x134)]===_0x2315fc(0xfb))['length'],'cacheDirs':_0xf35e74[_0x2315fc(0x10a)](_0x17811f=>_0x17811f[_0x2315fc(0x134)]===_0x2315fc(0xfb))['length'],'skipped':[..._0x23de83,..._0xf35e74]['filter'](_0xfbe8d1=>_0xfbe8d1[_0x2315fc(0x134)]==='skipped')[_0x2315fc(0x119)]},'skills':{'personal':_0x4d44fc[_0x2315fc(0x154)](summarizeRuntimeSkill),'company':_0x26e9e8[_0x2315fc(0x154)](summarizeRuntimeSkill)}},'message':_0x51a187[_0x2315fc(0x125)]?'Installed\x20'+_0x4d44fc[_0x2315fc(0x119)]+'\x20personal\x20and\x20'+_0x26e9e8['length']+_0x2315fc(0x145):'Pulled\x20'+_0x4d44fc['length']+_0x2315fc(0x138)+_0x26e9e8[_0x2315fc(0x119)]+_0x2315fc(0x145)};}function buildSkillCreatePlan(_0x3fb028,_0x493cad,_0x2908fe){const _0x34df45=renderSkillTemplate({'skillName':_0x3fb028,'type':_0x493cad}),_0x441077=resolve(normalizeSkillTarget(_0x2908fe));return{'rendered':_0x34df45,'targetRoot':_0x441077,'skillDir':resolve(_0x441077,_0x34df45['skillName'])};}function normalizeSkillTarget(_0x2bda5a){const _0x24e549=a35_0xba3e4f;return(_0x2bda5a||DEFAULT_SKILL_TARGET)[_0x24e549(0x13c)]()||DEFAULT_SKILL_TARGET;}function writeSkillDraft(_0x3b156f,_0x2bae22){const _0x2a5f86=a35_0xba3e4f;if(existsSync(_0x3b156f['skillDir'])){const _0x5c0754=lstatSync(_0x3b156f[_0x2a5f86(0x135)]);if(!_0x5c0754['isDirectory']()||_0x5c0754[_0x2a5f86(0x163)]())throw CliErrors[_0x2a5f86(0x147)](_0x2a5f86(0x123)+_0x3b156f[_0x2a5f86(0x135)]);if(!_0x2bae22)throw CliErrors[_0x2a5f86(0x147)]('Skill\x20directory\x20already\x20exists:\x20'+_0x3b156f[_0x2a5f86(0x135)],_0x2a5f86(0x117));}for(const _0x485eac of _0x3b156f['rendered'][_0x2a5f86(0x109)]){const _0x40df56=resolve(_0x3b156f[_0x2a5f86(0x135)],_0x485eac[_0x2a5f86(0x128)]),_0x215e7e=dirname(_0x40df56);mkdirSync(_0x215e7e,{'recursive':!![]});if(existsSync(_0x40df56)&&lstatSync(_0x40df56)['isSymbolicLink']())throw CliErrors[_0x2a5f86(0x147)]('Refusing\x20to\x20overwrite\x20symlink:\x20'+_0x40df56);writeFileSync(_0x40df56,_0x485eac[_0x2a5f86(0x15d)],_0x2a5f86(0x152));}}async function downloadPackageIfNeeded(_0x1ce219,_0x428f3e,_0x1bf47b,_0x3c10ef){const _0x90c7f4=a35_0xba3e4f;if(!isPackageBackedManifest(_0x1ce219[_0x90c7f4(0x109)]))return undefined;return _0x3c10ef(_0x428f3e,_0x1ce219['skillCode'],_0x1bf47b);}function normalizePullScope(_0x100b2f){const _0xdd0ea8=a35_0xba3e4f,_0x354400=_0x100b2f[_0xdd0ea8(0x13c)]();if(!_0x354400)return _0xdd0ea8(0x14b);if(_0x354400==='user')return _0x354400;throw CliErrors[_0xdd0ea8(0x147)](_0xdd0ea8(0x100)+_0x100b2f);}function normalizeListScope(_0x44d15b){const _0x4fc03a=a35_0xba3e4f,_0x391179=_0x44d15b['trim']();if(!_0x391179)return'user';if(_0x391179===_0x4fc03a(0x14b)||_0x391179==='personal'||_0x391179===_0x4fc03a(0x14e)||_0x391179===_0x4fc03a(0x105)||_0x391179===_0x4fc03a(0x161))return _0x391179;throw CliErrors[_0x4fc03a(0x147)](_0x4fc03a(0x12b)+_0x44d15b);}function shouldListScope(_0x5a3058,_0x5284a1){const _0x29ca4a=a35_0xba3e4f;if(_0x5a3058===_0x29ca4a(0x161))return!![];if(_0x5a3058===_0x29ca4a(0x14b))return _0x5284a1==='personal'||_0x5284a1===_0x29ca4a(0x14e)||_0x5284a1===_0x29ca4a(0x105);return _0x5a3058===_0x5284a1;}function listScopeToRuntimeScopes(_0x34d53f){const _0x45b3fe=a35_0xba3e4f;if(_0x34d53f===_0x45b3fe(0x161))return['personal',_0x45b3fe(0x14e)];if(_0x34d53f===_0x45b3fe(0x14b))return[_0x45b3fe(0xff),_0x45b3fe(0x14e)];if(_0x34d53f===_0x45b3fe(0x105))return[];return[_0x34d53f===_0x45b3fe(0x14e)?_0x45b3fe(0x14e):_0x34d53f];}function listScopeToRemoteScope(_0x48bed6){return _0x48bed6;}function groupLocalRuntimeSkills(_0x574aa4){const _0x4ca1ca=a35_0xba3e4f;return{'personal':_0x574aa4[_0x4ca1ca(0x10a)](_0x4e5a8c=>_0x4e5a8c['scope']===_0x4ca1ca(0xff)),'company':_0x574aa4[_0x4ca1ca(0x10a)](_0x4e3906=>_0x4e3906['scope']==='company'),'builtin':_0x574aa4[_0x4ca1ca(0x10a)](_0x31fcaf=>_0x31fcaf[_0x4ca1ca(0x14f)]===_0x4ca1ca(0x113))};}function countLinkActions(_0xf1b9a){const _0x79139d=a35_0xba3e4f;return _0xf1b9a[_0x79139d(0x101)]((_0x29615f,_0x4bea24)=>{const _0x55b57d=_0x79139d;return _0x29615f[_0x4bea24[_0x55b57d(0x134)]]=(_0x29615f[_0x4bea24[_0x55b57d(0x134)]]??0x0)+0x1,_0x29615f;},{});}function a35_0x4c32(){const _0x232b2f=['rendered','284216BtchbE','files','filter','dir','some','type','Create\x20a\x20local\x20self-contained\x20runtime\x20Skill\x20draft','Directory\x20that\x20will\x20contain\x20the\x20generated\x20Skill\x20directory','find','Push\x20a\x20local\x20Skill\x20directory\x20to\x20personal\x20runtime\x20Skill\x20scope','\x20local\x20Skill(s).','builtin','str','cacheDir','Create\x20a\x20local\x20runtime\x20Skill\x20draft\x20without\x20uploading\x20or\x20publishing\x20it.','Pass\x20--force\x20to\x20overwrite\x20generated\x20template\x20files.','Skill\x20list\x20scope:\x20user,\x20personal,\x20company,\x20public,\x20or\x20all','length','sha256','Business\x20Skill\x20installation\x20requires\x20authentication.\x20Run\x20`lovrabet\x20auth\x20login`,\x20or\x20use\x20`lovrabet\x20cli-skill\x20install`\x20for\x20CLI\x20Built-in\x20Skill\x20setup.','strict','../../skills/runtime-skill-sync.js','production','readonly','6jqNbFy','609039zXHFuy','size','Skill\x20path\x20already\x20exists\x20and\x20is\x20not\x20a\x20writable\x20directory:\x20','Backend\x20did\x20not\x20persist\x20the\x20multi-file\x20Skill\x20manifest.','installToAgent','treeSha256','metadataPath','path','updated','1299324YnLaaI','Unsupported\x20Skill\x20list\x20scope:\x20','list','force','errors','target','Local\x20Skill\x20directory\x20containing\x20SKILL.md','envName','object','sort','action','skillDir','appCode','Overwrite\x20generated\x20files\x20when\x20the\x20Skill\x20directory\x20already\x20exists','\x20personal\x20and\x20','name','accessKey','zipSha256','trim','install','78291hhEOEQ','bool','619264onzuJE','../../core/api-client.js','skillMdPath','Compatibility\x20flag;\x20no\x20extra\x20checks\x20are\x20enabled','1570LVwowo','\x20company\x20Skill(s).','Created\x20local\x20Skill\x20draft\x20','validation','effective','pull','Check\x20the\x20runtime\x20service\x20Skill\x20file\x20manifest\x20storage\x20before\x20pulling\x20this\x20Skill.','user','Read\x20CLI-managed\x20local\x20Skill\x20cache\x20and\x20links\x20instead\x20of\x20remote\x20lists','skillCode','company','scope','\x20remote\x20Skill(s).','4298231bIdLxL','utf8','code','map','status','create','isArray','Pull\x20runtime\x20Skills\x20into\x20the\x20local\x20development\x20cache','boolean','validate','skillName','2758632uLFTFN','content','write','local','tags','all','string','isSymbolicLink','Only\x20target\x20a\x20specific\x20runtime\x20Skill\x20code','ossPath','skill','Skill\x20pull\x20scope:\x20user\x20(personal/company)','unchanged','Skill\x20validation\x20passed.','treeHash','version','Created\x20personal\x20Skill\x20','linkedPaths','Backend\x20returned\x20a\x20different\x20multi-file\x20Skill\x20manifest\x20after\x20push.','input','Updated\x20personal\x20Skill\x20','removed','created','Validate\x20a\x20local\x20Skill\x20directory\x20as\x20a\x20self-contained\x20delivery\x20package','zipSize','personal','Unsupported\x20Skill\x20pull\x20scope:\x20','reduce','lowercase\x20letters,\x20numbers,\x20and\x20single\x20hyphens','read','5TVMusm','public','authRequired'];a35_0x4c32=function(){return _0x232b2f;};return a35_0x4c32();}function assertMultiFilePushPersisted(_0xce763f,_0x1a2048){const _0x21e875=a35_0xba3e4f;if(!isMultiFileManifest(_0xce763f))return;if(!isPackageBackedMultiFile(_0x1a2048[_0x21e875(0x109)]))throw CliErrors[_0x21e875(0x147)](_0x21e875(0x124),'Upgrade\x20the\x20runtime\x20service\x20before\x20pushing\x20multi-file\x20Skill\x20directories.');if(_0xce763f['treeSha256']!==_0x1a2048[_0x21e875(0x109)][_0x21e875(0x126)]||_0xce763f['zipSha256']!==_0x1a2048[_0x21e875(0x109)][_0x21e875(0x13b)]||_0xce763f[_0x21e875(0xfe)]!==_0x1a2048[_0x21e875(0x109)][_0x21e875(0xfe)]||!_0x1a2048[_0x21e875(0x109)][_0x21e875(0xef)]||manifestFileSignature(_0xce763f)!==manifestFileSignature(_0x1a2048[_0x21e875(0x109)]))throw CliErrors[_0x21e875(0x147)](_0x21e875(0xf8),_0x21e875(0x14a));}function isPackageBackedManifest(_0x3854a6){const _0x931826=a35_0xba3e4f;return!!_0x3854a6&&typeof _0x3854a6===_0x931826(0x132)&&!Array[_0x931826(0x157)](_0x3854a6)&&typeof _0x3854a6[_0x931826(0xef)]===_0x931826(0x162)&&_0x3854a6[_0x931826(0xef)][_0x931826(0x119)]>0x0&&Array[_0x931826(0x157)](_0x3854a6[_0x931826(0x109)]);}function isPackageBackedMultiFile(_0x394a97){return isPackageBackedManifest(_0x394a97)&&isMultiFileManifest(_0x394a97);}function isMultiFileManifest(_0x3242ed){const _0x30dc18=a35_0xba3e4f;return!!_0x3242ed&&typeof _0x3242ed==='object'&&!Array[_0x30dc18(0x157)](_0x3242ed)&&Array[_0x30dc18(0x157)](_0x3242ed['files'])&&_0x3242ed[_0x30dc18(0x109)][_0x30dc18(0x10c)](_0x12152d=>_0x12152d[_0x30dc18(0x128)]!=='SKILL.md');}function manifestFileSignature(_0x112eea){const _0x11a6f0=a35_0xba3e4f;return[..._0x112eea['files']][_0x11a6f0(0x154)](_0x19c8a6=>_0x19c8a6[_0x11a6f0(0x128)]+'\x00'+_0x19c8a6[_0x11a6f0(0x11a)]+'\x00'+_0x19c8a6[_0x11a6f0(0x122)])[_0x11a6f0(0x133)]()['join']('\x00');}
|
|
1
|
+
const a35_0x3ad629=a35_0x49a2;(function(_0x93fae3,_0x57e00e){const _0x3a3e61=a35_0x49a2,_0x42fce0=_0x93fae3();while(!![]){try{const _0x2481ae=-parseInt(_0x3a3e61(0x135))/0x1+parseInt(_0x3a3e61(0x109))/0x2*(-parseInt(_0x3a3e61(0x128))/0x3)+parseInt(_0x3a3e61(0x11e))/0x4*(-parseInt(_0x3a3e61(0x137))/0x5)+-parseInt(_0x3a3e61(0x138))/0x6*(parseInt(_0x3a3e61(0xd3))/0x7)+parseInt(_0x3a3e61(0xf7))/0x8+parseInt(_0x3a3e61(0xe3))/0x9+-parseInt(_0x3a3e61(0x120))/0xa*(-parseInt(_0x3a3e61(0xe7))/0xb);if(_0x2481ae===_0x57e00e)break;else _0x42fce0['push'](_0x42fce0['shift']());}catch(_0x110fe2){_0x42fce0['push'](_0x42fce0['shift']());}}}(a35_0x58c0,0xeda2e));function a35_0x58c0(){const _0x412e9c=['strict','envName','filter','dir','skillCode','map','content','tags','str','2134bhNawk','Pass\x20--force\x20to\x20overwrite\x20generated\x20template\x20files.','Pulled\x20','Unsupported\x20Skill\x20list\x20scope:\x20','installToAgent','\x20personal\x20and\x20','version','Pull\x20runtime\x20Skills\x20into\x20the\x20local\x20development\x20cache','boolean','\x20local\x20Skill(s).','Read\x20CLI-managed\x20local\x20Skill\x20cache\x20and\x20links\x20instead\x20of\x20remote\x20lists','object','skillDir','remote','unchanged','Validate\x20a\x20local\x20Skill\x20directory\x20as\x20a\x20self-contained\x20delivery\x20package','force','trim','../../core/api-client.js','Install\x20current-app\x20business\x20Skills\x20into\x20user-level\x20Agent\x20skill\x20directories','user','4904ozWHmd','path','40TKNOTu','Listed\x20','all','create','Skill\x20template\x20type','target','type','linkedPaths','597MorbHG','isArray','SKILL.md','removed','effective','skill','appCode','\x20company\x20Skill(s).','skillName','local','updated','warnings','Push\x20a\x20local\x20Skill\x20directory\x20to\x20personal\x20runtime\x20Skill\x20scope','22092WBNJze','name','6910uGkrBl','24DksaIK','Local\x20Skill\x20directory\x20containing\x20SKILL.md','read','\x20remote\x20Skill(s).','production','Updated\x20personal\x20Skill\x20','791PqACGE','write','ossPath','pulledAt','builtin','personal','skillMdPath','string','rendered','pull','code','scope','Unsupported\x20Skill\x20pull\x20scope:\x20','public','Created\x20local\x20Skill\x20draft\x20','length','10151874EqqzMT','files','company','treeHash','1680162uFWAcJ','readonly','Skill\x20validation\x20passed.','Skill\x20list\x20scope:\x20user,\x20personal,\x20company,\x20public,\x20or\x20all','bool','install','Overwrite\x20generated\x20files\x20when\x20the\x20Skill\x20directory\x20already\x20exists','reduce','metadataPath','List\x20runtime\x20Skills\x20from\x20remote\x20or\x20CLI-managed\x20local\x20cache','input','action','Business\x20Skill\x20installation\x20requires\x20authentication.\x20Run\x20`lovrabet\x20auth\x20login`,\x20or\x20use\x20`lovrabet\x20cli-skill\x20install`\x20for\x20CLI\x20Built-in\x20Skill\x20setup.','Create\x20a\x20local\x20self-contained\x20runtime\x20Skill\x20draft','Skill\x20path\x20already\x20exists\x20and\x20is\x20not\x20a\x20writable\x20directory:\x20','lowercase\x20letters,\x20numbers,\x20and\x20single\x20hyphens','9308904oulobP','accessKey','some','isSymbolicLink','push','validation','authRequired','Create\x20a\x20local\x20runtime\x20Skill\x20draft\x20without\x20uploading\x20or\x20publishing\x20it.','../../skills/runtime-skill-sync.js'];a35_0x58c0=function(){return _0x412e9c;};return a35_0x58c0();}import{CliErrors}from'../../errors.js';import{existsSync,lstatSync,mkdirSync,writeFileSync}from'node:fs';import{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';function a35_0x49a2(_0x37438f,_0x2b3ab7){_0x37438f=_0x37438f-0xce;const _0x58c071=a35_0x58c0();let _0x49a2d0=_0x58c071[_0x37438f];return _0x49a2d0;}const CODE_FLAG={'name':a35_0x3ad629(0xdd),'type':'string','description':'Only\x20target\x20a\x20specific\x20runtime\x20Skill\x20code'},SCOPE_FLAG={'name':a35_0x3ad629(0xde),'type':a35_0x3ad629(0xda),'description':'Skill\x20pull\x20scope:\x20user\x20(personal/company)'},LIST_SCOPE_FLAG={'name':'scope','type':a35_0x3ad629(0xda),'description':a35_0x3ad629(0xea),'enum':[a35_0x3ad629(0x11d),a35_0x3ad629(0xd8),a35_0x3ad629(0xe5),a35_0x3ad629(0xe0),a35_0x3ad629(0x122)]},LOCAL_FLAG={'name':a35_0x3ad629(0x131),'type':a35_0x3ad629(0x111),'description':a35_0x3ad629(0x113)},DIR_FLAG={'name':'dir','type':a35_0x3ad629(0xda),'required':!![],'description':a35_0x3ad629(0xce)},CREATE_NAME_FLAG={'name':a35_0x3ad629(0x136),'type':a35_0x3ad629(0xda),'required':!![],'description':'Skill\x20name\x20using\x20lowercase\x20letters,\x20numbers,\x20and\x20hyphens','pattern':{'regex':SKILL_NAME_PATTERN,'description':a35_0x3ad629(0xf6)}},TYPE_FLAG={'name':a35_0x3ad629(0x126),'type':'string','description':a35_0x3ad629(0x124),'default':a35_0x3ad629(0xd4),'enum':[...SKILL_TYPES]},TARGET_FLAG={'name':a35_0x3ad629(0x125),'type':a35_0x3ad629(0xda),'description':'Directory\x20that\x20will\x20contain\x20the\x20generated\x20Skill\x20directory','default':DEFAULT_SKILL_TARGET},FORCE_FLAG={'name':'force','type':a35_0x3ad629(0x111),'description':a35_0x3ad629(0xed)},STRICT_FLAG={'name':a35_0x3ad629(0x100),'type':'boolean','description':'Compatibility\x20flag;\x20no\x20extra\x20checks\x20are\x20enabled'};function summarizeRuntimeSkill(_0x5ad709){const _0x1577bd=a35_0x3ad629;return{'id':_0x5ad709['id'],'skillCode':_0x5ad709[_0x1577bd(0x104)],'skillName':_0x5ad709[_0x1577bd(0x130)],'scope':_0x5ad709[_0x1577bd(0xde)],'version':_0x5ad709[_0x1577bd(0x10f)],'readonly':_0x5ad709[_0x1577bd(0xe8)]};}function summarizeLocalRuntimeSkill(_0x8754b2){const _0x1f3c36=a35_0x3ad629;return{'id':_0x8754b2['id'],'skillCode':_0x8754b2['skillCode'],'skillName':_0x8754b2['skillName'],'scope':_0x8754b2[_0x1f3c36(0xde)],'appCode':_0x8754b2[_0x1f3c36(0x12e)],'version':_0x8754b2['version'],'status':_0x8754b2['status'],'readonly':_0x8754b2[_0x1f3c36(0xe8)],'tags':_0x8754b2[_0x1f3c36(0x107)],'dir':_0x8754b2[_0x1f3c36(0x103)],'cacheDir':_0x8754b2['cacheDir'],'skillMdPath':_0x8754b2[_0x1f3c36(0xd9)],'metadataPath':_0x8754b2[_0x1f3c36(0xef)],'linkedPaths':_0x8754b2[_0x1f3c36(0x127)],'contentHash':_0x8754b2['contentHash'],'treeHash':_0x8754b2[_0x1f3c36(0xe6)],'pulledAt':_0x8754b2[_0x1f3c36(0xd6)]};}export const skillDefinitions=[{'service':a35_0x3ad629(0x12d),'command':a35_0x3ad629(0xec),'description':a35_0x3ad629(0x11c),'risk':a35_0x3ad629(0xd4),'requiresAuth':!![],'requiresAppCode':!![],'hasFormat':![],'flags':[CODE_FLAG,SCOPE_FLAG],async 'execute'(_0x365f15){return syncRuntimeSkills(_0x365f15,{'installToAgent':!![]});}},{'service':a35_0x3ad629(0x12d),'command':a35_0x3ad629(0x123),'description':a35_0x3ad629(0xf4),'risk':'write','requiresAuth':![],'requiresAppCode':![],'flags':[CREATE_NAME_FLAG,TYPE_FLAG,TARGET_FLAG,FORCE_FLAG],async 'dryRun'(_0x48e80d){const _0xe49e57=a35_0x3ad629,_0x15817b=buildSkillCreatePlan(_0x48e80d['str'](_0xe49e57(0x136)),_0x48e80d[_0xe49e57(0x108)]('type'),_0x48e80d[_0xe49e57(0x108)]('target'));return{'method':'WRITE','url':_0x15817b[_0xe49e57(0x115)],'body':{'skillName':_0x15817b[_0xe49e57(0xdb)]['skillName'],'type':_0x15817b[_0xe49e57(0xdb)][_0xe49e57(0x126)],'selfContained':!![],'files':_0x15817b[_0xe49e57(0xdb)][_0xe49e57(0xe4)][_0xe49e57(0x105)](_0x1f2321=>_0x1f2321['path'])},'description':_0xe49e57(0xfe)};},async 'execute'(_0x415306){const _0x4fe3e8=a35_0x3ad629,_0x59d640=buildSkillCreatePlan(_0x415306[_0x4fe3e8(0x108)](_0x4fe3e8(0x136)),_0x415306[_0x4fe3e8(0x108)](_0x4fe3e8(0x126)),_0x415306['str'](_0x4fe3e8(0x125)));return writeSkillDraft(_0x59d640,_0x415306[_0x4fe3e8(0xeb)](_0x4fe3e8(0x119))),{'ok':!![],'data':{'skillName':_0x59d640[_0x4fe3e8(0xdb)]['skillName'],'type':_0x59d640[_0x4fe3e8(0xdb)][_0x4fe3e8(0x126)],'dir':_0x59d640[_0x4fe3e8(0x115)],'files':_0x59d640['rendered'][_0x4fe3e8(0xe4)][_0x4fe3e8(0x105)](_0x5da1cf=>_0x5da1cf['path'])},'message':_0x4fe3e8(0xe1)+_0x59d640[_0x4fe3e8(0xdb)]['skillName']};}},{'service':a35_0x3ad629(0x12d),'command':'validate','description':a35_0x3ad629(0x118),'risk':a35_0x3ad629(0xcf),'requiresAuth':![],'requiresAppCode':![],'flags':[DIR_FLAG,STRICT_FLAG],async 'execute'(_0x525364){const _0x54da6c=a35_0x3ad629,_0x5c8cfc=_0x525364[_0x54da6c(0xeb)](_0x54da6c(0x100)),_0xc311ea=validateSkillDirectory(_0x525364['str'](_0x54da6c(0x103)),{'strict':_0x5c8cfc});return throwIfSkillValidationFailed(_0xc311ea,_0x5c8cfc),{'ok':!![],'data':{'dir':_0xc311ea[_0x54da6c(0x103)],'type':_0xc311ea[_0x54da6c(0x126)],'errors':_0xc311ea['errors'],'warnings':_0xc311ea[_0x54da6c(0x133)]},'message':_0x54da6c(0xe9)};}},{'service':a35_0x3ad629(0x12d),'command':'list','description':a35_0x3ad629(0xf0),'risk':'read','flags':[CODE_FLAG,LIST_SCOPE_FLAG,LOCAL_FLAG],async 'execute'(_0x4c0152){const _0x2007c2=a35_0x3ad629,_0x11e2e6=_0x4c0152[_0x2007c2(0x108)]('code'),_0x503e67=normalizeListScope(_0x4c0152[_0x2007c2(0x108)](_0x2007c2(0xde)));if(_0x4c0152[_0x2007c2(0xeb)]('local')){const _0x293e23=_0x4c0152[_0x2007c2(0xf8)];if(!_0x293e23)throw CliErrors[_0x2007c2(0xfd)]();const _0x29a712=_0x503e67===_0x2007c2(0xe0)?[]:await((async()=>{const _0x1028bf=_0x2007c2,{listLocalRuntimeSkills:_0x3acc48}=await import(_0x1028bf(0xff));return _0x3acc48({'env':_0x4c0152['envName']??_0x1028bf(0xd1),'accessKey':_0x293e23,'appCode':_0x4c0152['appCode'],'scopes':listScopeToRuntimeScopes(_0x503e67),'code':_0x11e2e6[_0x1028bf(0x11a)]()||undefined});})()),_0x2430a4=groupLocalRuntimeSkills(_0x29a712);return{'ok':!![],'data':{'appCode':_0x4c0152[_0x2007c2(0x12e)],'source':'local','scope':_0x503e67,'total':_0x29a712[_0x2007c2(0xe2)],'personal':_0x2430a4[_0x2007c2(0xd8)][_0x2007c2(0xe2)],'company':_0x2430a4[_0x2007c2(0xe5)][_0x2007c2(0xe2)],'public':0x0,'items':_0x29a712['map'](summarizeLocalRuntimeSkill),'skills':{'personal':_0x2430a4[_0x2007c2(0xd8)][_0x2007c2(0x105)](summarizeLocalRuntimeSkill),'company':_0x2430a4[_0x2007c2(0xe5)][_0x2007c2(0x105)](summarizeLocalRuntimeSkill),'public':[]}},'message':_0x2007c2(0x121)+_0x29a712['length']+_0x2007c2(0x112)};}const {listRuntimeSkills:_0x520369}=await import('../../core/api-client.js'),_0x33cc9a=await _0x520369({'appCode':_0x4c0152[_0x2007c2(0x12e)],'scope':listScopeToRemoteScope(_0x503e67),'code':_0x11e2e6['trim']()||undefined}),_0x121215=shouldListScope(_0x503e67,_0x2007c2(0xd8))?_0x33cc9a[_0x2007c2(0xd8)]:[],_0xf07fbb=shouldListScope(_0x503e67,_0x2007c2(0xe5))?_0x33cc9a[_0x2007c2(0xe5)]:[],_0x369ae8=shouldListScope(_0x503e67,'public')?_0x33cc9a[_0x2007c2(0xe0)]:[],_0x8ae05a=_0x503e67===_0x2007c2(0x11d)?_0x33cc9a[_0x2007c2(0x12c)]:[..._0x121215,..._0xf07fbb,..._0x369ae8];return{'ok':!![],'data':{'appCode':_0x4c0152[_0x2007c2(0x12e)],'source':_0x2007c2(0x116),'scope':_0x503e67,'total':_0x8ae05a['length'],'personal':_0x121215['length'],'company':_0xf07fbb[_0x2007c2(0xe2)],'public':_0x369ae8[_0x2007c2(0xe2)],'items':_0x8ae05a['map'](summarizeRuntimeSkill),'skills':{'personal':_0x121215[_0x2007c2(0x105)](summarizeRuntimeSkill),'company':_0xf07fbb['map'](summarizeRuntimeSkill),'public':_0x369ae8[_0x2007c2(0x105)](summarizeRuntimeSkill)}},'message':_0x2007c2(0x121)+_0x8ae05a[_0x2007c2(0xe2)]+_0x2007c2(0xd0)};}},{'service':a35_0x3ad629(0x12d),'command':a35_0x3ad629(0xdc),'description':a35_0x3ad629(0x110),'risk':'write','flags':[CODE_FLAG,SCOPE_FLAG],async 'execute'(_0x4bcf4b){return syncRuntimeSkills(_0x4bcf4b,{'installToAgent':![]});}},{'service':a35_0x3ad629(0x12d),'command':a35_0x3ad629(0xfb),'description':a35_0x3ad629(0x134),'risk':a35_0x3ad629(0xd4),'flags':[DIR_FLAG],async 'execute'(_0x2133de){const _0x10b330=a35_0x3ad629,{createPersonalRuntimeSkill:_0x53d78e,downloadRuntimeSkillPackage:_0x2aab19,listRuntimeSkills:_0xcfef70,updatePersonalRuntimeSkill:_0x5023cc}=await import(_0x10b330(0x11b)),{verifyRuntimeSkillPackage:_0x4daaa7,verifyRuntimeSkillBundle:_0xd1d23,readPushDirectory:_0x3d3e90,recordPushedRuntimeSkill:_0x502482}=await import(_0x10b330(0xff));if(!_0x2133de[_0x10b330(0xf8)])throw CliErrors[_0x10b330(0xfd)]();const _0x1252aa=_0x2133de[_0x10b330(0x108)](_0x10b330(0x103)),_0x5e7e3b=validateSkillDirectory(_0x1252aa);throwIfSkillValidationFailed(_0x5e7e3b);const _0x6b6c3e=_0x5e7e3b[_0x10b330(0x103)],_0x548c87=_0x3d3e90(_0x6b6c3e,_0x2133de[_0x10b330(0x12e)]),_0x5e5461=(await _0xcfef70({'appCode':_0x2133de[_0x10b330(0x12e)],'scope':_0x10b330(0xd8)}))[_0x10b330(0xd8)]['find'](_0x17ac1f=>_0x17ac1f['skillCode']===_0x548c87[_0x10b330(0x104)]),_0x52dc21=_0x5e5461?await _0x5023cc(_0x548c87[_0x10b330(0x104)],_0x2133de[_0x10b330(0x12e)],_0x548c87[_0x10b330(0xf1)]):await _0x53d78e(_0x2133de['appCode'],_0x548c87[_0x10b330(0xf1)]);let _0x309b8e=_0x52dc21;if(isMultiFileManifest(_0x548c87[_0x10b330(0xf1)][_0x10b330(0xe4)])){const _0x54fe99=await _0x2aab19(_0x10b330(0xd8),_0x52dc21[_0x10b330(0x104)]||_0x548c87[_0x10b330(0x104)],_0x2133de[_0x10b330(0x12e)]);_0xd1d23(_0x548c87['input'][_0x10b330(0xe4)],_0x54fe99),_0x309b8e={..._0x52dc21,'files':_0x548c87[_0x10b330(0xf1)][_0x10b330(0xe4)]};}else{if(isPackageBackedManifest(_0x52dc21[_0x10b330(0xe4)])){const _0x282fe4=await _0x2aab19('personal',_0x52dc21[_0x10b330(0x104)]||_0x548c87[_0x10b330(0x104)],_0x2133de[_0x10b330(0x12e)]);_0x4daaa7(_0x52dc21[_0x10b330(0xe4)],_0x282fe4);}}return _0x502482(_0x6b6c3e,_0x309b8e,_0x2133de[_0x10b330(0x12e)]),{'ok':!![],'data':summarizeRuntimeSkill(_0x52dc21),'message':_0x5e5461?_0x10b330(0xd2)+_0x548c87[_0x10b330(0x104)]:'Created\x20personal\x20Skill\x20'+_0x548c87[_0x10b330(0x104)]};}}];async function syncRuntimeSkills(_0x257b86,_0x4d2554){const _0xae1335=a35_0x3ad629,{downloadRuntimeSkillPackage:_0xe20533,listRuntimeSkills:_0x34654e}=await import(_0xae1335(0x11b)),{linkEffectiveRuntimeSkills:_0x1342c3,materializeRuntimeSkill:_0x461dc3,pruneStaleRuntimeSkillCache:_0x301af3,pruneStaleRuntimeSkillLinks:_0x5033e5}=await import(_0xae1335(0xff)),_0x4822fa=_0x257b86['str'](_0xae1335(0xdd));normalizePullScope(_0x257b86[_0xae1335(0x108)]('scope'));const _0x243a64=_0x257b86[_0xae1335(0x101)]??_0xae1335(0xd1),_0x864e17=_0x257b86[_0xae1335(0xf8)];if(!_0x864e17){if(_0x4d2554[_0xae1335(0x10d)])throw CliErrors[_0xae1335(0xfd)](_0xae1335(0xf3));throw CliErrors[_0xae1335(0xfd)]();}const _0x54ffa0=await _0x34654e({'appCode':_0x257b86[_0xae1335(0x12e)],'scope':_0xae1335(0x11d),'code':_0x4822fa[_0xae1335(0x11a)]()||undefined}),_0x4b13b1=_0x54ffa0[_0xae1335(0xd8)],_0x48f960=_0x54ffa0['company'],_0x39e236=new Set([..._0x4b13b1[_0xae1335(0x105)](_0x29b10d=>_0x29b10d[_0xae1335(0x104)]?.['trim']())[_0xae1335(0x102)](_0x1a7648=>Boolean(_0x1a7648)),..._0x48f960[_0xae1335(0x105)](_0x8d2fc0=>_0x8d2fc0[_0xae1335(0x104)]?.[_0xae1335(0x11a)]())[_0xae1335(0x102)](_0x11261b=>Boolean(_0x11261b))]),_0x49dfd3=_0x4822fa['trim']()?[_0x4822fa[_0xae1335(0x11a)]()]:undefined,_0x22b977=_0x4d2554[_0xae1335(0x10d)]?_0x5033e5(_0x257b86[_0xae1335(0x12e)],_0x39e236,{},_0x49dfd3):[],_0x268c12=_0x301af3({'env':_0x243a64,'accessKey':_0x864e17,'appCode':_0x257b86[_0xae1335(0x12e)],'activeSkillCodes':_0x39e236,'pruneSkillCodes':_0x49dfd3}),_0x5a96d4=[];for(const _0x555cf5 of _0x4b13b1){_0x5a96d4[_0xae1335(0xfb)](_0x461dc3(_0x555cf5,_0xae1335(0xd8),{'env':_0x243a64,'accessKey':_0x864e17,'appCode':_0x257b86[_0xae1335(0x12e)],'packageBytes':await downloadPackageIfNeeded(_0x555cf5,_0xae1335(0xd8),_0x257b86[_0xae1335(0x12e)],_0xe20533)}));}for(const _0xda8b20 of _0x48f960){_0x5a96d4['push'](_0x461dc3(_0xda8b20,_0xae1335(0xe5),{'env':_0x243a64,'accessKey':_0x864e17,'appCode':_0x257b86['appCode'],'packageBytes':await downloadPackageIfNeeded(_0xda8b20,'company',_0x257b86[_0xae1335(0x12e)],_0xe20533)}));}const _0x3e68de=_0x4d2554[_0xae1335(0x10d)]?_0x1342c3(_0x5a96d4,_0x257b86['appCode']):[],_0x20ec6f=countLinkActions(_0x3e68de);return{'ok':!![],'data':{'appCode':_0x257b86[_0xae1335(0x12e)],'personal':_0x4b13b1[_0xae1335(0xe2)],'company':_0x48f960[_0xae1335(0xe2)],'materialized':_0x5a96d4[_0xae1335(0xe2)],'links':{'total':_0x3e68de[_0xae1335(0xe2)],'created':_0x20ec6f['created']??0x0,'updated':_0x20ec6f[_0xae1335(0x132)]??0x0,'unchanged':_0x20ec6f[_0xae1335(0x117)]??0x0,'skipped':0x0,'conflicted':0x0},'pruned':{'links':_0x22b977[_0xae1335(0x102)](_0x36019d=>_0x36019d[_0xae1335(0xf2)]===_0xae1335(0x12b))[_0xae1335(0xe2)],'cacheDirs':_0x268c12[_0xae1335(0x102)](_0x59b12d=>_0x59b12d['action']==='removed')['length'],'skipped':[..._0x22b977,..._0x268c12][_0xae1335(0x102)](_0x5004c7=>_0x5004c7['action']==='skipped')[_0xae1335(0xe2)]},'skills':{'personal':_0x4b13b1[_0xae1335(0x105)](summarizeRuntimeSkill),'company':_0x48f960['map'](summarizeRuntimeSkill)}},'message':_0x4d2554[_0xae1335(0x10d)]?'Installed\x20'+_0x4b13b1['length']+_0xae1335(0x10e)+_0x48f960['length']+_0xae1335(0x12f):_0xae1335(0x10b)+_0x4b13b1[_0xae1335(0xe2)]+'\x20personal\x20and\x20'+_0x48f960['length']+_0xae1335(0x12f)};}function buildSkillCreatePlan(_0x2c9b08,_0x3050e7,_0x2db7cf){const _0x49449b=a35_0x3ad629,_0x2ac9dc=renderSkillTemplate({'skillName':_0x2c9b08,'type':_0x3050e7}),_0x36fa66=resolve(normalizeSkillTarget(_0x2db7cf));return{'rendered':_0x2ac9dc,'targetRoot':_0x36fa66,'skillDir':resolve(_0x36fa66,_0x2ac9dc[_0x49449b(0x130)])};}function normalizeSkillTarget(_0x5e9407){const _0x13e3d2=a35_0x3ad629;return(_0x5e9407||DEFAULT_SKILL_TARGET)[_0x13e3d2(0x11a)]()||DEFAULT_SKILL_TARGET;}function writeSkillDraft(_0x4def8f,_0x319ee7){const _0x1e0f3b=a35_0x3ad629;if(existsSync(_0x4def8f['skillDir'])){const _0x174dbf=lstatSync(_0x4def8f['skillDir']);if(!_0x174dbf['isDirectory']()||_0x174dbf[_0x1e0f3b(0xfa)]())throw CliErrors[_0x1e0f3b(0xfc)](_0x1e0f3b(0xf5)+_0x4def8f[_0x1e0f3b(0x115)]);if(!_0x319ee7)throw CliErrors[_0x1e0f3b(0xfc)]('Skill\x20directory\x20already\x20exists:\x20'+_0x4def8f['skillDir'],_0x1e0f3b(0x10a));}for(const _0x70ac02 of _0x4def8f['rendered'][_0x1e0f3b(0xe4)]){const _0x3b1b86=resolve(_0x4def8f[_0x1e0f3b(0x115)],_0x70ac02['path']),_0xe9e6dd=dirname(_0x3b1b86);mkdirSync(_0xe9e6dd,{'recursive':!![]});if(existsSync(_0x3b1b86)&&lstatSync(_0x3b1b86)[_0x1e0f3b(0xfa)]())throw CliErrors[_0x1e0f3b(0xfc)]('Refusing\x20to\x20overwrite\x20symlink:\x20'+_0x3b1b86);writeFileSync(_0x3b1b86,_0x70ac02[_0x1e0f3b(0x106)],'utf8');}}async function downloadPackageIfNeeded(_0x80fcb0,_0x26851a,_0x2c00de,_0x176bc5){const _0x569946=a35_0x3ad629;if(!isPackageBackedManifest(_0x80fcb0[_0x569946(0xe4)]))return undefined;return _0x176bc5(_0x26851a,_0x80fcb0[_0x569946(0x104)],_0x2c00de);}function normalizePullScope(_0x3bc36f){const _0x56164c=a35_0x3ad629,_0x19df4d=_0x3bc36f[_0x56164c(0x11a)]();if(!_0x19df4d)return _0x56164c(0x11d);if(_0x19df4d===_0x56164c(0x11d))return _0x19df4d;throw CliErrors[_0x56164c(0xfc)](_0x56164c(0xdf)+_0x3bc36f);}function normalizeListScope(_0x35cf3c){const _0x3bcd26=a35_0x3ad629,_0x1c1499=_0x35cf3c[_0x3bcd26(0x11a)]();if(!_0x1c1499)return _0x3bcd26(0x11d);if(_0x1c1499===_0x3bcd26(0x11d)||_0x1c1499===_0x3bcd26(0xd8)||_0x1c1499===_0x3bcd26(0xe5)||_0x1c1499===_0x3bcd26(0xe0)||_0x1c1499===_0x3bcd26(0x122))return _0x1c1499;throw CliErrors[_0x3bcd26(0xfc)](_0x3bcd26(0x10c)+_0x35cf3c);}function shouldListScope(_0x300bf7,_0x118109){const _0x314565=a35_0x3ad629;if(_0x300bf7===_0x314565(0x122))return!![];if(_0x300bf7===_0x314565(0x11d))return _0x118109===_0x314565(0xd8)||_0x118109===_0x314565(0xe5)||_0x118109===_0x314565(0xe0);return _0x300bf7===_0x118109;}function listScopeToRuntimeScopes(_0x4dca01){const _0x32cca3=a35_0x3ad629;if(_0x4dca01===_0x32cca3(0x122))return[_0x32cca3(0xd8),_0x32cca3(0xe5)];if(_0x4dca01==='user')return[_0x32cca3(0xd8),_0x32cca3(0xe5)];if(_0x4dca01===_0x32cca3(0xe0))return[];return[_0x4dca01==='company'?_0x32cca3(0xe5):_0x4dca01];}function listScopeToRemoteScope(_0xd20f18){return _0xd20f18;}function groupLocalRuntimeSkills(_0x825cbc){const _0x20e00b=a35_0x3ad629;return{'personal':_0x825cbc[_0x20e00b(0x102)](_0x49c226=>_0x49c226[_0x20e00b(0xde)]===_0x20e00b(0xd8)),'company':_0x825cbc[_0x20e00b(0x102)](_0x1577ff=>_0x1577ff[_0x20e00b(0xde)]==='company'),'builtin':_0x825cbc[_0x20e00b(0x102)](_0x4915a9=>_0x4915a9[_0x20e00b(0xde)]===_0x20e00b(0xd7))};}function countLinkActions(_0x32f25e){const _0x52295a=a35_0x3ad629;return _0x32f25e[_0x52295a(0xee)]((_0x8aae0b,_0x407c17)=>{return _0x8aae0b[_0x407c17['action']]=(_0x8aae0b[_0x407c17['action']]??0x0)+0x1,_0x8aae0b;},{});}function isPackageBackedManifest(_0x38abe7){const _0x242cc3=a35_0x3ad629;return!!_0x38abe7&&typeof _0x38abe7==='object'&&!Array['isArray'](_0x38abe7)&&typeof _0x38abe7[_0x242cc3(0xd5)]===_0x242cc3(0xda)&&_0x38abe7['ossPath']['length']>0x0&&Array[_0x242cc3(0x129)](_0x38abe7[_0x242cc3(0xe4)]);}function isMultiFileManifest(_0x38f500){const _0x23802a=a35_0x3ad629;return!!_0x38f500&&typeof _0x38f500===_0x23802a(0x114)&&!Array[_0x23802a(0x129)](_0x38f500)&&Array[_0x23802a(0x129)](_0x38f500[_0x23802a(0xe4)])&&_0x38f500[_0x23802a(0xe4)][_0x23802a(0xf9)](_0x3bdbcf=>_0x3bdbcf[_0x23802a(0x11f)]!==_0x23802a(0x12a));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a36_0x14ee70=a36_0x208e;(function(_0x21a0b6,_0x41715d){const _0xe205f5=a36_0x208e,_0x12b066=_0x21a0b6();while(!![]){try{const _0x40d988=-parseInt(_0xe205f5(0xff))/0x1*(-parseInt(_0xe205f5(0x102))/0x2)+parseInt(_0xe205f5(0x109))/0x3*(parseInt(_0xe205f5(0x106))/0x4)+-parseInt(_0xe205f5(0xf3))/0x5+-parseInt(_0xe205f5(0xf9))/0x6+parseInt(_0xe205f5(0xf1))/0x7+parseInt(_0xe205f5(0xe7))/0x8*(parseInt(_0xe205f5(0x104))/0x9)+parseInt(_0xe205f5(0xfc))/0xa*(-parseInt(_0xe205f5(0xfd))/0xb);if(_0x40d988===_0x41715d)break;else _0x12b066['push'](_0x12b066['shift']());}catch(_0x106527){_0x12b066['push'](_0x12b066['shift']());}}}(a36_0x2efd,0xf27e6));import{CliErrors}from'../../errors.js';export const SKILL_TYPES=[a36_0x14ee70(0xfb),'read',a36_0x14ee70(0xed)];export const DEFAULT_SKILL_TARGET=a36_0x14ee70(0x107);export const SKILL_NAME_PATTERN=/^[a-z0-9]+(?:-[a-z0-9]+)*$/;export const RUNTIME_CONTRACT_FILE=a36_0x14ee70(0xfe);export const OUTPUT_CONTRACT_FILE=a36_0x14ee70(0x10f);export function validateSkillName(_0x53c475){const _0x3126ed=a36_0x14ee70,_0x2c53ee=_0x53c475[_0x3126ed(0x10b)]();if(!SKILL_NAME_PATTERN[_0x3126ed(0xef)](_0x2c53ee))throw CliErrors[_0x3126ed(0x100)](_0x3126ed(0xf4)+_0x53c475+_0x3126ed(0xf0),'Use\x20lowercase\x20letters,\x20numbers,\x20and\x20single\x20hyphens,\x20for\x20example\x20invoice-export.');return _0x2c53ee;}function a36_0x2efd(){const _0x793b68=['write','10KcRpbo','20628333TNtOEF','references/runtime-contract.md','2xysdGO','validation','#\x20Output\x20Contract\x0a\x0a','1474366sOPLmL','\x0adescription:\x20\x22【填写模型触发语义:用户在什么场景应使用本\x20Skill、不要使用的边界和关键词】\x22\x0ametadata:\x0a\x20\x20type:\x20','3074985kzfTAe','\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','3076SBiPWs','.agents/skills','#\x20Runtime\x20Contract\x0a\x0aSkill\x20push\x20后的\x20zip\x20包就是完整交付产物。','6129kbaVqt','1.\x20dry-run:【填写预览入口、影响范围和差异摘要;不得写入业务数据】\x0a2.\x20用户确认:【填写确认语义、目标对象、数量、风险和操作者责任】\x0a3.\x20confirmed\x20写入:【填写确认后的写入入口和幂等/防重复要求】\x0a4.\x20只读核对:【填写写入后的查询核对、差异展示和结果链接】\x0a5.\x20checkpoint:【填写失败恢复、重试条件和人工接管方式】','trim','---\x0aname:\x20','type','1.\x20受控模板预览:【填写待维护内容、影响范围和预览方式】\x0a2.\x20用户确认:【填写确认信息和不可省略的人工判断点】\x0a3.\x20受控维护:【填写确认后的维护步骤和记录方式】\x0a4.\x20只读核对:【填写维护后的核对入口、差异和回滚/修正方式】','references/output-contract.md','1.\x20只读查询:【填写查询入口、过滤条件和权限边界】\x0a2.\x20业务汇总:【填写统计口径、字段解释和异常提示】\x0a3.\x20查看链接:【填写可供运营人员复核的记录、页面或报告链接】\x0a4.\x20禁止写入:不得创建、更新、删除或触发会改变业务状态的动作。','16SxVSsY','write\x20类型在\x20dry_run\x20下只展示预览、影响范围和差异,不写入业务数据。\x0aconfirmed\x20写入后必须执行读回核对,并把核对结果写入\x20verification。\x0a读回异常、业务状态未知或结果不一致时,status\x20必须为\x20partial_success、failed\x20或\x20needs_manual_check。','skillName','\x22\x0a\x20\x20generator:\x20\x22lovrabet\x20skill\x20create\x22\x0a---\x0a\x0a#\x20','##\x20状态读回与未知状态处理\x0a\x0a【填写业务状态事实源、fromStatus\x20->\x20toStatus\x20预览、写入后读回核对方式,以及\x20unknown\x20/\x20needs_manual_check\x20的处理边界】\x0a\x0a','\x0a\x20\x20created:\x20\x22','trainer','\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','test','.\x20Use\x20lowercase\x20letters,\x20numbers,\x20and\x20single\x20hyphens.','1424332mBznMZ','includes','49300yrzWfp','Invalid\x20Skill\x20name:\x20','\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=','timestamp','SKILL.md','Use\x20one\x20of:\x20','6322932tMFckL','\x20类型默认不执行业务写入;如流程包含受控维护或人工确认,也必须用\x20mode\x20标明执行阶段并暴露核对结果。'];a36_0x2efd=function(){return _0x793b68;};return a36_0x2efd();}export function normalizeSkillTemplateType(_0x2de8d3){const _0x43d74c=a36_0x14ee70,_0x21a26c=(_0x2de8d3||'write')[_0x43d74c(0x10b)]()||_0x43d74c(0xfb);if(SKILL_TYPES[_0x43d74c(0xf2)](_0x21a26c))return _0x21a26c;throw CliErrors[_0x43d74c(0x100)]('Unsupported\x20Skill\x20type:\x20'+_0x2de8d3,_0x43d74c(0xf8)+SKILL_TYPES['join'](',\x20')+'.');}export function renderSkillTemplate(_0x5905ba){const _0x1f623d=a36_0x14ee70,_0x2806f0=validateSkillName(_0x5905ba[_0x1f623d(0xe9)]),_0x1d6377=normalizeSkillTemplateType(_0x5905ba[_0x1f623d(0x10d)]),_0x18447f=_0x5905ba[_0x1f623d(0xf6)]??new Date()['toISOString']();return{'skillName':_0x2806f0,'type':_0x1d6377,'files':[{'path':_0x1f623d(0xf7),'content':renderSkillMd(_0x2806f0,_0x1d6377,_0x18447f)},{'path':RUNTIME_CONTRACT_FILE,'content':renderRuntimeContract(_0x2806f0,_0x1d6377)},{'path':OUTPUT_CONTRACT_FILE,'content':renderOutputContract(_0x2806f0,_0x1d6377)}]};}function renderSkillMd(_0x54330a,_0x3877e3,_0x86c42f){const _0x4ad075=a36_0x14ee70,_0x3f0e99=typeWorkflow(_0x3877e3);return _0x4ad075(0x10c)+_0x54330a+_0x4ad075(0x103)+_0x3877e3+_0x4ad075(0xec)+_0x86c42f+_0x4ad075(0xea)+_0x54330a+'\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'+_0x3f0e99+'\x0a\x0a'+businessStateSection(_0x3877e3)+'\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';}function a36_0x208e(_0x2a08ef,_0x7013e4){_0x2a08ef=_0x2a08ef-0xe7;const _0x2efd40=a36_0x2efd();let _0x208eae=_0x2efd40[_0x2a08ef];return _0x208eae;}function renderRuntimeContract(_0x22cf47,_0x191d05){const _0x2035d3=a36_0x14ee70,_0x19c7b2=_0x191d05===_0x2035d3(0xfb)?_0x2035d3(0xeb):'';return _0x2035d3(0x108)+_0x22cf47+_0x2035d3(0xf5)+_0x191d05+_0x2035d3(0x105)+_0x19c7b2+'\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(_0x1eec3a,_0x378755){const _0xa92b31=a36_0x14ee70,_0x3b083e=_0x378755===_0xa92b31(0xfb)?_0xa92b31(0xe8):_0x378755+_0xa92b31(0xfa);return _0xa92b31(0x101)+_0x1eec3a+_0xa92b31(0xee)+_0x3b083e+'\x0a\x0a##\x20错误与人工接管\x0a\x0aerrors\x20必须包含失败阶段、错误原因和可复核对象。\x0anextActions\x20必须给出重试、补充输入、人工接管或停止处理的动作。\x0a';}function typeWorkflow(_0x28e003){const _0xc71863=a36_0x14ee70;if(_0x28e003==='read')return _0xc71863(0x110);if(_0x28e003===_0xc71863(0xed))return _0xc71863(0x10e);return _0xc71863(0x10a);}function businessStateSection(_0x4f5d10){if(_0x4f5d10!=='write')return'';return'##\x20业务状态流转\x0a\x0a【填写本\x20Skill\x20的前置业务状态、允许动作、目标业务状态、fromStatus\x20->\x20toStatus\x20预览、写入后读回核对,以及\x20unknown\x20/\x20needs_manual_check\x20处理。状态迁移合法性必须由业务\x20BFF、Lovrabet\x20平台命令或服务端接口判断,Skill\x20不作为状态事实源。】';}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a37_0x2e5e46=a37_0x5b72;(function(_0x2e79c7,_0x2ab04b){const _0x2e49f5=a37_0x5b72,_0x5ea343=_0x2e79c7();while(!![]){try{const _0x19367f=-parseInt(_0x2e49f5(0x86))/0x1*(parseInt(_0x2e49f5(0x85))/0x2)+parseInt(_0x2e49f5(0x9c))/0x3*(parseInt(_0x2e49f5(0x76))/0x4)+-parseInt(_0x2e49f5(0x82))/0x5+parseInt(_0x2e49f5(0x7a))/0x6+parseInt(_0x2e49f5(0x96))/0x7+-parseInt(_0x2e49f5(0x68))/0x8*(parseInt(_0x2e49f5(0x73))/0x9)+parseInt(_0x2e49f5(0x84))/0xa;if(_0x19367f===_0x2ab04b)break;else _0x5ea343['push'](_0x5ea343['shift']());}catch(_0x63b9c1){_0x5ea343['push'](_0x5ea343['shift']());}}}(a37_0x391b,0xbb2bc));import{existsSync,lstatSync,readFileSync,realpathSync}from'node:fs';function a37_0x5b72(_0x1217fc,_0x373d6e){_0x1217fc=_0x1217fc-0x64;const _0x391b5c=a37_0x391b();let _0x5b72ac=_0x391b5c[_0x1217fc];return _0x5b72ac;}import{resolve}from'node:path';import{CliErrors}from'../../errors.js';const SKILL_FILE=a37_0x2e5e46(0x97),SUPPORTED_SKILL_TYPES=new Set([a37_0x2e5e46(0x7d),'read',a37_0x2e5e46(0x66)]);export function validateSkillDirectory(_0x48ca10,_0x217f32={}){const _0x198dc8=a37_0x2e5e46,_0x3ae450=resolveSkillDirectoryRoot(_0x48ca10),_0x470600=[],_0x239d83=loadRequiredSkillFile(_0x3ae450,_0x470600),_0x2e6405=_0x239d83?parseFrontmatter(_0x239d83[_0x198dc8(0x81)]):{'hasFrontmatter':![]};_0x239d83&&validateFrontmatter(_0x239d83[_0x198dc8(0x69)],_0x2e6405,_0x470600);const _0x2ca60b=_0x470600['filter'](_0xac7c7a=>_0xac7c7a[_0x198dc8(0x8b)]===_0x198dc8(0x89));return{'ok':_0x2ca60b[_0x198dc8(0x71)]===0x0,'dir':_0x3ae450,'type':_0x2e6405[_0x198dc8(0x92)],'errors':_0x2ca60b,'warnings':[]};}function resolveSkillDirectoryRoot(_0x595d06){const _0x13602d=a37_0x2e5e46,_0x16e0c0=resolve(_0x595d06);if(!existsSync(_0x16e0c0))throw CliErrors['validation'](_0x13602d(0x74)+_0x595d06);const _0x31470e=lstatSync(_0x16e0c0);if(_0x31470e['isDirectory']())return _0x16e0c0;if(_0x31470e[_0x13602d(0x93)]()){const _0x3c4c7e=realpathSync(_0x16e0c0);if(lstatSync(_0x3c4c7e)[_0x13602d(0x83)]())return _0x3c4c7e;}throw CliErrors['validation']('Skill\x20directory\x20not\x20found:\x20'+_0x595d06);}export function throwIfSkillValidationFailed(_0xee590,_0x5c3ce0=![]){const _0x8d65e9=a37_0x2e5e46;if(_0xee590['ok'])return;const _0x23adc9=_0xee590[_0x8d65e9(0x72)][_0x8d65e9(0xa3)](_0x446a7a=>{const _0x1730fd=_0x8d65e9,_0x1aee32=_0x446a7a[_0x1730fd(0x8f)]?'#'+_0x446a7a[_0x1730fd(0x8f)]:'';return _0x446a7a[_0x1730fd(0x8b)][_0x1730fd(0x79)]()+'\x20'+_0x446a7a[_0x1730fd(0x78)]+'\x20'+_0x446a7a[_0x1730fd(0x94)]+_0x1aee32+':\x20'+_0x446a7a['message']+_0x1730fd(0x7b)+_0x446a7a[_0x1730fd(0x6d)];});throw CliErrors[_0x8d65e9(0x64)](_0x8d65e9(0x99)+_0x23adc9[_0x8d65e9(0x90)]('\x0a'),_0x8d65e9(0x67));}function loadRequiredSkillFile(_0x4f8706,_0x317286){const _0xb6c9b5=a37_0x2e5e46,_0x1bcafd=resolve(_0x4f8706,SKILL_FILE);if(!existsSync(_0x1bcafd))return _0x317286[_0xb6c9b5(0x77)](issue(_0xb6c9b5(0x89),'structure-complete',SKILL_FILE,'Missing\x20SKILL.md.',_0xb6c9b5(0x8d))),undefined;const _0x13de52=lstatSync(_0x1bcafd);if(_0x13de52[_0xb6c9b5(0x93)]())return _0x317286[_0xb6c9b5(0x77)](issue(_0xb6c9b5(0x89),_0xb6c9b5(0xa1),SKILL_FILE,_0xb6c9b5(0x88),_0xb6c9b5(0xa5))),undefined;if(!_0x13de52[_0xb6c9b5(0x9a)]())return _0x317286[_0xb6c9b5(0x77)](issue(_0xb6c9b5(0x89),_0xb6c9b5(0xa1),SKILL_FILE,_0xb6c9b5(0x9b),'Add\x20SKILL.md\x20as\x20a\x20regular\x20file\x20at\x20the\x20Skill\x20directory\x20root.')),undefined;return{'path':SKILL_FILE,'content':readFileSync(_0x1bcafd,_0xb6c9b5(0x70))};}function validateFrontmatter(_0x12e22e,_0x3f64d7,_0x4d469a){const _0x19d4dc=a37_0x2e5e46;if(!_0x3f64d7[_0x19d4dc(0x6b)]){_0x4d469a[_0x19d4dc(0x77)](issue(_0x19d4dc(0x89),_0x19d4dc(0x7f),_0x12e22e,_0x19d4dc(0x6c),_0x19d4dc(0x8a)));return;}!_0x3f64d7[_0x19d4dc(0x6f)]?.[_0x19d4dc(0x8e)]()&&_0x4d469a[_0x19d4dc(0x77)](issue('error','frontmatter-required',_0x12e22e,_0x19d4dc(0x8c),_0x19d4dc(0x87))),!_0x3f64d7[_0x19d4dc(0x9d)]?.[_0x19d4dc(0x8e)]()&&_0x4d469a['push'](issue(_0x19d4dc(0x89),'description-required',_0x12e22e,_0x19d4dc(0x65),_0x19d4dc(0x6a))),_0x3f64d7[_0x19d4dc(0x95)]===!![]&&_0x4d469a[_0x19d4dc(0x77)](issue(_0x19d4dc(0x89),_0x19d4dc(0xa0),_0x12e22e,_0x19d4dc(0x9e),_0x19d4dc(0x7e))),_0x3f64d7[_0x19d4dc(0x92)]?.[_0x19d4dc(0x8e)]()&&!SUPPORTED_SKILL_TYPES['has'](_0x3f64d7[_0x19d4dc(0x92)])&&_0x4d469a['push'](issue(_0x19d4dc(0x89),_0x19d4dc(0x7f),_0x12e22e,'metadata.type\x20must\x20be\x20one\x20of\x20write,\x20read,\x20or\x20trainer.',_0x19d4dc(0x9f)));}function a37_0x391b(){const _0x542d0f=['trainer','Fix\x20the\x20Skill\x20metadata\x20before\x20running\x20skill\x20push.','8Nflgky','path','填写模型触发语义:用户在什么场景应使用本\x20Skill、不要使用的边界和关键词。','hasFrontmatter','SKILL.md\x20must\x20start\x20with\x20frontmatter.','suggestion','startsWith','name','utf8','length','errors','12944457ofUgWf','Skill\x20directory\x20not\x20found:\x20','false','4188124CXeJIr','push','ruleId','toUpperCase','161808iJbugK','\x20Fix:\x20','toLowerCase','write','Remove\x20metadata.internal\x20or\x20set\x20it\x20to\x20false\x20before\x20running\x20skill\x20push.','frontmatter-required','true','content','1311935eNvqyW','isDirectory','18815980DPKnUC','39450WIZfAO','73VcPwIv','Set\x20name\x20to\x20the\x20Skill\x20directory\x20code.','SKILL.md\x20must\x20be\x20a\x20regular\x20file.','error','Add\x20frontmatter\x20with\x20name\x20and\x20description.','level','Frontmatter\x20name\x20is\x20missing.','Add\x20SKILL.md\x20at\x20the\x20Skill\x20directory\x20root.','trim','section','join','endsWith','type','isSymbolicLink','file','internal','6661480eOJFfp','SKILL.md','match','Skill\x20validation\x20failed:\x0a','isFile','SKILL.md\x20is\x20not\x20a\x20file.','3JbyrAQ','description','metadata.internal=true\x20Skills\x20cannot\x20be\x20uploaded.','Set\x20metadata.type\x20to\x20write,\x20read,\x20or\x20trainer.','internal-skill','structure-complete','test','map','slice','Replace\x20the\x20symlink\x20with\x20a\x20regular\x20SKILL.md\x20file\x20inside\x20the\x20Skill\x20directory.','metadata','validation','Frontmatter\x20description\x20is\x20empty.'];a37_0x391b=function(){return _0x542d0f;};return a37_0x391b();}function parseFrontmatter(_0x5e4ef0){const _0x5141de=a37_0x2e5e46,_0x472a13=_0x5e4ef0[_0x5141de(0x98)](/^---\r?\n([\s\S]*?)\r?\n---(?:\r?\n|$)/);if(!_0x472a13)return{'hasFrontmatter':![]};const _0x2dcb4e=_0x472a13[0x1]??'',_0x23fe9e={'hasFrontmatter':!![]};let _0x1c6dba=![];for(const _0x13ad0c of _0x2dcb4e['split'](/\r?\n/)){if(/^\s*$/[_0x5141de(0xa2)](_0x13ad0c))continue;const _0x18f10f=_0x13ad0c[_0x5141de(0x98)](/^([A-Za-z0-9_-]+):\s*(.*)$/);if(_0x18f10f){const _0x136fe9=_0x18f10f[0x1],_0x590e22=cleanScalar(_0x18f10f[0x2]??'');_0x1c6dba=_0x136fe9===_0x5141de(0xa6);if(_0x136fe9===_0x5141de(0x6f))_0x23fe9e['name']=_0x590e22;if(_0x136fe9===_0x5141de(0x9d))_0x23fe9e['description']=_0x590e22;continue;}const _0x38b3e4=_0x13ad0c['match'](/^\s+type:\s*(.*)$/);if(_0x1c6dba&&_0x38b3e4){_0x23fe9e[_0x5141de(0x92)]=cleanScalar(_0x38b3e4[0x1]??'');continue;}const _0x423a4e=_0x13ad0c[_0x5141de(0x98)](/^\s+internal:\s*(.*)$/);_0x1c6dba&&_0x423a4e&&(_0x23fe9e[_0x5141de(0x95)]=cleanBoolean(_0x423a4e[0x1]??''));}return _0x23fe9e;}function cleanScalar(_0x536bc6){const _0x27854b=a37_0x2e5e46,_0x14a265=_0x536bc6['trim']();if(_0x14a265[_0x27854b(0x6e)]('\x22')&&_0x14a265[_0x27854b(0x91)]('\x22')||_0x14a265['startsWith']('\x27')&&_0x14a265[_0x27854b(0x91)]('\x27'))return _0x14a265[_0x27854b(0xa4)](0x1,-0x1);return _0x14a265;}function cleanBoolean(_0x1567cd){const _0x1a3c9b=a37_0x2e5e46,_0x32f158=cleanScalar(_0x1567cd)[_0x1a3c9b(0x7c)]();if(_0x32f158===_0x1a3c9b(0x80))return!![];if(_0x32f158===_0x1a3c9b(0x75))return![];return undefined;}function issue(_0x441b00,_0x18024e,_0x176d7b,_0x1207b7,_0x4e0f7f,_0x52acbc){return{'level':_0x441b00,'ruleId':_0x18024e,'file':_0x176d7b,'section':_0x52acbc,'message':_0x1207b7,'suggestion':_0x4e0f7f};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a38_0x1cdb(){const _0x3527ad=['appCode','161984ZaTQdQ','sql','876197aNReDC','description','72kvfQCU','dbId','1119795Byjuqv','2RBzJhr','detail','str','verbose','3457894lxisPx','10zdQtIA','55qdkzRS','4030236xYRvKQ','234462ZnGXcq','sqlName','Get\x20custom\x20SQL\x20query\x20details\x20by\x20sqlCode','709083KPawXc'];a38_0x1cdb=function(){return _0x3527ad;};return a38_0x1cdb();}const a38_0x577cda=a38_0x5602;(function(_0x3240e5,_0x3df6c5){const _0x3f1689=a38_0x5602,_0x4c61ec=_0x3240e5();while(!![]){try{const _0x90ac7d=parseInt(_0x3f1689(0x11f))/0x1+parseInt(_0x3f1689(0x12b))/0x2*(-parseInt(_0x3f1689(0x12a))/0x3)+-parseInt(_0x3f1689(0x124))/0x4*(parseInt(_0x3f1689(0x11d))/0x5)+parseInt(_0x3f1689(0x11e))/0x6+-parseInt(_0x3f1689(0x126))/0x7+parseInt(_0x3f1689(0x128))/0x8*(parseInt(_0x3f1689(0x122))/0x9)+parseInt(_0x3f1689(0x11c))/0xa*(parseInt(_0x3f1689(0x12f))/0xb);if(_0x90ac7d===_0x3df6c5)break;else _0x4c61ec['push'](_0x4c61ec['shift']());}catch(_0x2d1f12){_0x4c61ec['push'](_0x4c61ec['shift']());}}}(a38_0x1cdb,0xf0a71));import{getSqlQueryInfo}from'../../core/api-client.js';function a38_0x5602(_0x4e827f,_0x2467bc){_0x4e827f=_0x4e827f-0x11c;const _0x1cdb48=a38_0x1cdb();let _0x5602a4=_0x1cdb48[_0x4e827f];return _0x5602a4;}import{getDbName}from'../../core/db-resolver.js';import{SQLCODE_FLAG,VERBOSE_FLAG}from'../../commands/common/flags.js';export const sqlDetail={'service':a38_0x577cda(0x125),'command':a38_0x577cda(0x12c),'description':a38_0x577cda(0x121),'risk':'read','flags':[SQLCODE_FLAG,VERBOSE_FLAG],async 'execute'(_0x188967){const _0x259adc=a38_0x577cda,_0x41dc22=await getSqlQueryInfo(_0x188967[_0x259adc(0x123)],_0x188967[_0x259adc(0x12d)]('sqlcode')),_0x1d96b7=_0x188967['bool'](_0x259adc(0x12e));if(_0x1d96b7)return{'ok':!![],'data':_0x41dc22};const _0x5f4bc5=_0x41dc22['dbId']?await getDbName(_0x188967[_0x259adc(0x123)],_0x41dc22[_0x259adc(0x129)]):undefined;return{'ok':!![],'data':{'sqlCode':_0x41dc22['sqlCode'],'sqlName':_0x41dc22[_0x259adc(0x120)],'db':_0x5f4bc5?_0x5f4bc5+'\x20('+_0x41dc22[_0x259adc(0x129)]+')':_0x41dc22[_0x259adc(0x129)]??'','description':_0x41dc22[_0x259adc(0x127)]??'','sqlContent':_0x41dc22['sqlContent']??''}};}};
|
package/lib/commands/sql/exec.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a39_0x53042d=a39_0x4db1;(function(_0x2e2176,_0x2f9510){const _0x52e05e=a39_0x4db1,_0x192e1a=_0x2e2176();while(!![]){try{const _0x1381dd=-parseInt(_0x52e05e(0x187))/0x1*(parseInt(_0x52e05e(0x196))/0x2)+-parseInt(_0x52e05e(0x182))/0x3*(parseInt(_0x52e05e(0x191))/0x4)+parseInt(_0x52e05e(0x197))/0x5+parseInt(_0x52e05e(0x193))/0x6*(parseInt(_0x52e05e(0x184))/0x7)+parseInt(_0x52e05e(0x188))/0x8*(-parseInt(_0x52e05e(0x192))/0x9)+-parseInt(_0x52e05e(0x194))/0xa*(parseInt(_0x52e05e(0x180))/0xb)+parseInt(_0x52e05e(0x18b))/0xc;if(_0x1381dd===_0x2f9510)break;else _0x192e1a['push'](_0x192e1a['shift']());}catch(_0x32eebf){_0x192e1a['push'](_0x192e1a['shift']());}}}(a39_0x1fba,0xbd47a));function a39_0x1fba(){const _0x5b9733=['3004640SPlqHx','exec','1107183rlLgUH','read','39SPirTe','\x20row(s)\x20in\x20','7rHnsXj','isArray','Execute\x20a\x20custom\x20SQL\x20query\x20by\x20sqlCode','37613HkPeeX','3884232nbLBah','execResult','Returned\x20','22260672DUmNVi','length','now','execSuccess','sqlcode','str','415816ffxhwc','9pyURpa','8324340BsscFb','70iFGLwI','params','28Rzzawl'];a39_0x1fba=function(){return _0x5b9733;};return a39_0x1fba();}function a39_0x4db1(_0x52ea93,_0x344875){_0x52ea93=_0x52ea93-0x180;const _0x1fbadb=a39_0x1fba();let _0x4db16f=_0x1fbadb[_0x52ea93];return _0x4db16f;}import{executeSdkSql}from'../../core/sdk-client.js';import{SQLCODE_FLAG,PARAMS_FLAG}from'../../commands/common/flags.js';import{parseJsonParams}from'../../utils/params.js';export const sqlExec={'service':'sql','command':a39_0x53042d(0x198),'description':a39_0x53042d(0x186),'risk':a39_0x53042d(0x181),'flags':[SQLCODE_FLAG,PARAMS_FLAG],async 'execute'(_0x35f79a){const _0x160857=a39_0x53042d,_0x5f93a5=parseJsonParams(_0x35f79a[_0x160857(0x190)](_0x160857(0x195))),_0x56649f=Date[_0x160857(0x18d)](),_0x5331c7=await executeSdkSql(_0x35f79a['str'](_0x160857(0x18f)),_0x5f93a5),_0x10a49e=Date[_0x160857(0x18d)]()-_0x56649f,_0xaf16be=_0x5331c7?.[_0x160857(0x189)]??_0x5331c7,_0x55424f=_0x5331c7?.[_0x160857(0x18e)]??!![];if(!_0x55424f)return{'ok':![],'data':{'error':_0x5331c7?.['execError']||'SQL\x20execution\x20failed','elapsed':_0x10a49e},'message':'SQL\x20execution\x20failed'};const _0x56bbd5=Array[_0x160857(0x185)](_0xaf16be)?_0xaf16be:[];return{'ok':!![],'data':{'rows':_0x56bbd5,'rowCount':_0x56bbd5[_0x160857(0x18c)],'elapsed':_0x10a49e},'message':_0x160857(0x18a)+_0x56bbd5[_0x160857(0x18c)]+_0x160857(0x183)+_0x10a49e+'ms'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x122b70,_0x1ffd66){const _0x4ec0b0=a40_0x5944,_0x118e12=_0x122b70();while(!![]){try{const _0x2cadda=parseInt(_0x4ec0b0(0xcc))/0x1*(-parseInt(_0x4ec0b0(0xc8))/0x2)+-parseInt(_0x4ec0b0(0xc7))/0x3*(-parseInt(_0x4ec0b0(0xca))/0x4)+parseInt(_0x4ec0b0(0xc9))/0x5+-parseInt(_0x4ec0b0(0xc6))/0x6+-parseInt(_0x4ec0b0(0xcb))/0x7+-parseInt(_0x4ec0b0(0xce))/0x8*(-parseInt(_0x4ec0b0(0xcf))/0x9)+-parseInt(_0x4ec0b0(0xcd))/0xa;if(_0x2cadda===_0x1ffd66)break;else _0x118e12['push'](_0x118e12['shift']());}catch(_0x1c3fe4){_0x118e12['push'](_0x118e12['shift']());}}}(a40_0x9caa,0x92bbf));import{sqlDetail}from'../../commands/sql/detail.js';function a40_0x5944(_0x3d95d5,_0x2f7348){_0x3d95d5=_0x3d95d5-0xc6;const _0x9caa2d=a40_0x9caa();let _0x59443b=_0x9caa2d[_0x3d95d5];return _0x59443b;}import{sqlExec}from'../../commands/sql/exec.js';function a40_0x9caa(){const _0x2663d5=['1340592EMVqJd','78Csfxwd','153094RoLdTJ','4735510lUPwBc','142124rYTgcT','1483174ZNKyfO','2lRBmmf','14402970XHIShj','40aweeoS','1365876FPDSyG'];a40_0x9caa=function(){return _0x2663d5;};return a40_0x9caa();}export const sqlDefinitions=[sqlDetail,sqlExec];
|
package/lib/commands/update.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a41_0x2455fd=a41_0x4356;(function(_0x3cc018,_0x25f0c9){const _0x21d1ea=a41_0x4356,_0x50614c=_0x3cc018();while(!![]){try{const _0x35d35a=parseInt(_0x21d1ea(0xad))/0x1+parseInt(_0x21d1ea(0x96))/0x2*(parseInt(_0x21d1ea(0x86))/0x3)+parseInt(_0x21d1ea(0xc7))/0x4*(-parseInt(_0x21d1ea(0xc1))/0x5)+parseInt(_0x21d1ea(0x89))/0x6+-parseInt(_0x21d1ea(0x8c))/0x7+parseInt(_0x21d1ea(0xb0))/0x8+-parseInt(_0x21d1ea(0x95))/0x9;if(_0x35d35a===_0x25f0c9)break;else _0x50614c['push'](_0x50614c['shift']());}catch(_0xa269b1){_0x50614c['push'](_0x50614c['shift']());}}}(a41_0x5efb,0xc67db));import{spawnSync}from'node:child_process';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';function a41_0x4356(_0x3c1c1b,_0xf215be){_0x3c1c1b=_0x3c1c1b-0x80;const _0x5efbe2=a41_0x5efb();let _0x4356f2=_0x5efbe2[_0x3c1c1b];return _0x4356f2;}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':a41_0x2455fd(0x9e),'type':a41_0x2455fd(0xa8),'description':a41_0x2455fd(0x9c),'default':![]},{'name':a41_0x2455fd(0xb1),'type':a41_0x2455fd(0xa8),'description':a41_0x2455fd(0x9b),'default':![]},{'name':a41_0x2455fd(0xa9),'type':a41_0x2455fd(0xc6),'description':'Install\x20a\x20specific\x20CLI\x20version'},{'name':a41_0x2455fd(0xc5),'type':a41_0x2455fd(0xa8),'description':a41_0x2455fd(0x88),'default':![]},{'name':a41_0x2455fd(0x8f),'type':a41_0x2455fd(0xa8),'description':a41_0x2455fd(0xc3),'default':!![],'hidden':!![]}];function a41_0x5efb(){const _0x4f31d9=['stderr','bool','prerelease','trim','str','install','Update\x20','Already\x20up\x20to\x20date\x20(v','20IzETuQ','skipped','Refresh\x20CLI\x20Built-in\x20Skill\x20after\x20updating','major','no-skills','string','394232iLMYNc','\x20\x20Run\x20manually:\x20npm\x20install\x20-g\x20','minor','Checking\x20CLI\x20Built-in\x20Skill...','Use\x20full\x20semver\x20versions\x20such\x20as\x202.0.6\x20or\x202.0.7-beta.1.','entries','=1).','warn','exit\x20','npm','\x20\x20Run\x20manually:\x20lovrabet\x20cli-skill\x20install','3qHOUsp','source','Skip\x20CLI\x20Built-in\x20Skill\x20refresh\x20after\x20updating','7378806kgezeO','log','Unable\x20to\x20resolve\x20','5588933uwNQFM','Checking\x20npm\x20dist-tags...','unknown','skills','Update\x20failed:\x20','\x20->\x20','pipe','patch','join','4243833SVXEgN','408046XNzjih','\x20CLI\x20from\x20npm','nonInteractive','Updated\x20to\x20v','toString','Install\x20the\x20version\x20from\x20npm\x20beta\x20dist-tag','Install\x20the\x20version\x20from\x20npm\x20latest\x20dist-tag','status','latest','\x20version\x20from\x20npm.','validation','Current\x20version:\x20','run','Use\x20a\x20full\x20semver\x20such\x20as\x202.0.6\x20or\x202.0.7-beta.1.','message','cwd','\x20\x20CLI\x20Built-in\x20Skill\x20update\x20failed:\x20','args','boolean','version','inherit','/-/package/','stdout','515242YujnnE','filter','error','4225128ChcNCg','beta','match','object','fromEntries','Already\x20on\x20requested\x20version\x20(v','--latest,\x20--beta,\x20and\x20version\x20cannot\x20be\x20used\x20together.','\x20\x20Try\x20manually:\x20npm\x20install\x20-g\x20','Invalid\x20version:\x20'];a41_0x5efb=function(){return _0x4f31d9;};return a41_0x5efb();}function parseSemver(_0x652787){const _0x145094=a41_0x2455fd,_0x42e77d=_0x652787[_0x145094(0xbc)]()[_0x145094(0xb2)](/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z.-]+))?$/);if(!_0x42e77d)return null;return{'major':Number(_0x42e77d[0x1]),'minor':Number(_0x42e77d[0x2]),'patch':Number(_0x42e77d[0x3]),'prerelease':_0x42e77d[0x4]};}function compareSemver(_0x3e1f17,_0x24061c){const _0x5f3946=a41_0x2455fd,_0x173930=parseSemver(_0x3e1f17),_0x4b0b06=parseSemver(_0x24061c);if(!_0x173930||!_0x4b0b06)throw CliErrors[_0x5f3946(0xa0)]('Version\x20comparison\x20failed.',_0x5f3946(0xcb));for(const _0x1407c9 of[_0x5f3946(0xc4),_0x5f3946(0xc9),_0x5f3946(0x93)]){if(_0x173930[_0x1407c9]<_0x4b0b06[_0x1407c9])return-0x1;if(_0x173930[_0x1407c9]>_0x4b0b06[_0x1407c9])return 0x1;}if(!_0x173930[_0x5f3946(0xbb)]&&!_0x4b0b06[_0x5f3946(0xbb)])return 0x0;if(!_0x173930[_0x5f3946(0xbb)])return 0x1;if(!_0x4b0b06[_0x5f3946(0xbb)])return-0x1;if(_0x173930['prerelease']===_0x4b0b06[_0x5f3946(0xbb)])return 0x0;return _0x173930[_0x5f3946(0xbb)]<_0x4b0b06[_0x5f3946(0xbb)]?-0x1:0x1;}function getRequestedVersion(_0xece600){const _0x48861d=a41_0x2455fd,_0x53f3fa=_0xece600[_0x48861d(0xbd)]('version')[_0x48861d(0xbc)]();if(_0x53f3fa)return _0x53f3fa;return String(_0xece600[_0x48861d(0xa7)]?.[0x0]??'')[_0x48861d(0xbc)]();}function shouldSkipCliBuiltInSkill(_0x16374c){const _0x5d9a09=a41_0x2455fd;return _0x16374c[_0x5d9a09(0xba)](_0x5d9a09(0xc5))||_0x16374c['flag'](_0x5d9a09(0x8f))===![];}async function validateUpdateFlags(_0xd0d49){const _0x4d666e=a41_0x2455fd,_0x5b1381=getRequestedVersion(_0xd0d49),_0x3e7c48=[_0xd0d49[_0x4d666e(0xba)](_0x4d666e(0x9e))?'latest':'',_0xd0d49[_0x4d666e(0xba)](_0x4d666e(0xb1))?_0x4d666e(0xb1):'',_0x5b1381?_0x4d666e(0xa9):''][_0x4d666e(0xae)](Boolean);if(_0x3e7c48['length']>0x1)throw CliErrors[_0x4d666e(0xa0)](_0x4d666e(0xb6),'Choose\x20exactly\x20one\x20target:\x20--latest,\x20--beta,\x20or\x20--version\x20<version>.');if(_0x5b1381&&!parseSemver(_0x5b1381))throw CliErrors[_0x4d666e(0xa0)](_0x4d666e(0xb8)+_0x5b1381,_0x4d666e(0xa3));}async function fetchNpmDistTags(){const _0x4c4fe9=a41_0x2455fd;try{const _0x21d4c8=NPM_REGISTRY_BASE_URL+_0x4c4fe9(0xab)+encodeURIComponent(LOVRABET_NPM_PACKAGE_NAME)+'/dist-tags',_0x19efab=await fetch(_0x21d4c8,{'signal':AbortSignal['timeout'](0x2710)});if(!_0x19efab['ok'])return null;const _0x349537=await _0x19efab['json']();if(!_0x349537||typeof _0x349537!==_0x4c4fe9(0xb3))return null;return Object[_0x4c4fe9(0xb4)](Object[_0x4c4fe9(0x80)](_0x349537)[_0x4c4fe9(0xae)](([,_0x76337e])=>typeof _0x76337e===_0x4c4fe9(0xc6)&&_0x76337e['trim']())['map'](([_0x1ed416,_0x42ab63])=>[_0x1ed416,String(_0x42ab63)[_0x4c4fe9(0xbc)]()]));}catch{return null;}}async function resolveTargetVersion(_0x4fadbb){const _0x35f480=a41_0x2455fd,_0xf4dbb6=getRequestedVersion(_0x4fadbb);if(_0xf4dbb6)return{'version':_0xf4dbb6,'source':_0x35f480(0xa9)};const _0x339b5f=_0x4fadbb[_0x35f480(0xba)](_0x35f480(0xb1))?_0x35f480(0xb1):_0x35f480(0x9e),_0x3bfa8b=await fetchNpmDistTags(),_0x2cd849=_0x3bfa8b?.[_0x339b5f];if(!_0x2cd849)return null;return{'version':_0x2cd849,'source':_0x339b5f};}function shouldInstallTarget(_0x3966a2,_0x162564){const _0x3d8c26=a41_0x2455fd,_0x24575c=compareSemver(_0x3966a2,_0x162564[_0x3d8c26(0xa9)]);if(_0x162564[_0x3d8c26(0x87)]==='version')return _0x24575c!==0x0;return _0x24575c<0x0;}function installCliPackage(_0x3e92d5,_0x23a848){const _0x3ca519=a41_0x2455fd,_0x5541c1=resolveNpmBin(_0x3ca519(0x84)),_0x5d00aa=[_0x3ca519(0xbe),'-g',LOVRABET_NPM_PACKAGE_NAME+'@'+_0x3e92d5];console[_0x3ca519(0x8a)]('*\x20'+[_0x5541c1,..._0x5d00aa][_0x3ca519(0x94)]('\x20'));const _0x2e41ea=spawnSync(_0x5541c1,_0x5d00aa,{'cwd':process[_0x3ca519(0xa5)](),'stdio':_0x23a848?_0x3ca519(0x92):_0x3ca519(0xaa),'env':process.env,'shell':![]});if(_0x2e41ea[_0x3ca519(0x9d)]===0x0)return{'ok':!![]};let _0x312b7e=_0x2e41ea[_0x3ca519(0xaf)]?.[_0x3ca519(0xa4)]||_0x3ca519(0x83)+(_0x2e41ea['status']??_0x3ca519(0x8e));if(_0x23a848){const _0x4fe864=_0x2e41ea[_0x3ca519(0xb9)]?_0x2e41ea[_0x3ca519(0xb9)][_0x3ca519(0x9a)]()[_0x3ca519(0xbc)]():'',_0x5e2fa7=_0x2e41ea['stdout']?_0x2e41ea[_0x3ca519(0xac)][_0x3ca519(0x9a)]()[_0x3ca519(0xbc)]():'';if(_0x4fe864)_0x312b7e=_0x4fe864;else{if(_0x5e2fa7)_0x312b7e=_0x5e2fa7;}}return{'ok':![],'error':_0x312b7e};}async function installCliBuiltInSkill(_0xc0b2c4){const _0x358c11=a41_0x2455fd;console[_0x358c11(0x8a)](_0x358c11(0xca));const _0x1c76ab=runNpxSkillsAddGlobal(process[_0x358c11(0xa5)](),LOVRABET_SKILL_SOURCE,{'stdio':_0xc0b2c4?_0x358c11(0x92):_0x358c11(0xaa)});if(_0x1c76ab[_0x358c11(0xc2)]){console[_0x358c11(0x8a)]('\x20\x20Skipped\x20CLI\x20Built-in\x20Skill\x20install\x20('+LOVRABET_SKIP_NPX_SKILLS_ENV+_0x358c11(0x81));return;}if(_0x1c76ab['ok']){console[_0x358c11(0x8a)]('\x20\x20CLI\x20Built-in\x20Skill\x20is\x20up\x20to\x20date.');return;}console[_0x358c11(0x82)](_0x358c11(0xa6)+(_0x1c76ab[_0x358c11(0xaf)]||'unknown')),console[_0x358c11(0x8a)](_0x358c11(0x85));}async function execute(_0x218e85){const _0x5cf920=a41_0x2455fd;await validateUpdateFlags(_0x218e85);const _0x50462a=getCliVersion();console[_0x5cf920(0x8a)](_0x5cf920(0xa1)+_0x50462a),console[_0x5cf920(0x8a)](_0x5cf920(0x8d));const _0x34d643=await resolveTargetVersion(_0x218e85);if(!_0x34d643){const _0x5831b2=_0x218e85[_0x5cf920(0xba)](_0x5cf920(0xb1))?'beta':_0x5cf920(0x9e),_0x43a871=_0x5cf920(0x8b)+_0x5831b2+_0x5cf920(0x9f);return console[_0x5cf920(0x82)](_0x43a871),console[_0x5cf920(0x8a)](_0x5cf920(0xc8)+LOVRABET_NPM_PACKAGE_NAME+'@'+_0x5831b2),{'ok':![]};}if(!shouldInstallTarget(_0x50462a,_0x34d643)){const _0x18b6ff=_0x34d643[_0x5cf920(0x87)]===_0x5cf920(0xa9)?_0x5cf920(0xb5)+_0x34d643[_0x5cf920(0xa9)]+').':_0x5cf920(0xc0)+_0x34d643[_0x5cf920(0xa9)]+').';return console[_0x5cf920(0x8a)](_0x18b6ff),shouldSkipCliBuiltInSkill(_0x218e85)?console['log']('Skipping\x20CLI\x20Built-in\x20Skill\x20refresh\x20(--no-skills).'):await installCliBuiltInSkill(_0x218e85[_0x5cf920(0x98)]),{'ok':!![]};}console[_0x5cf920(0x8a)]('Updating\x20'+LOVRABET_NPM_PACKAGE_NAME+':\x20'+_0x50462a+_0x5cf920(0x91)+_0x34d643['version']);const _0x2a186d=installCliPackage(_0x34d643[_0x5cf920(0xa9)],_0x218e85['nonInteractive']);if(!_0x2a186d['ok']){const _0x3f9efc=_0x5cf920(0x90)+(_0x2a186d['error']||'unknown');return console[_0x5cf920(0xaf)](_0x3f9efc),console[_0x5cf920(0x8a)](_0x5cf920(0xb7)+LOVRABET_NPM_PACKAGE_NAME+'@'+_0x34d643[_0x5cf920(0xa9)]),{'ok':![]};}return console[_0x5cf920(0x8a)](_0x5cf920(0x99)+_0x34d643[_0x5cf920(0xa9)]+'.'),console['log']('\x20\x20Restart\x20your\x20terminal\x20to\x20use\x20the\x20new\x20version.'),shouldSkipCliBuiltInSkill(_0x218e85)?console[_0x5cf920(0x8a)]('Skipping\x20CLI\x20Built-in\x20Skill\x20refresh\x20(--no-skills).'):await installCliBuiltInSkill(_0x218e85[_0x5cf920(0x98)]),{'ok':!![]};}export const updateDefinition={'service':'update','command':a41_0x2455fd(0xa2),'description':a41_0x2455fd(0xbf)+CLI_BIN_NAME+a41_0x2455fd(0x97),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':updateFlags,'validate':validateUpdateFlags,'execute':execute};
|
|
1
|
+
const a41_0x1cc029=a41_0xe912;(function(_0x487897,_0x4c1bb2){const _0x259ff3=a41_0xe912,_0xd2c569=_0x487897();while(!![]){try{const _0x55b9ae=parseInt(_0x259ff3(0x19a))/0x1+-parseInt(_0x259ff3(0x186))/0x2+-parseInt(_0x259ff3(0x1aa))/0x3*(-parseInt(_0x259ff3(0x195))/0x4)+-parseInt(_0x259ff3(0x184))/0x5*(parseInt(_0x259ff3(0x1b8))/0x6)+-parseInt(_0x259ff3(0x18a))/0x7*(-parseInt(_0x259ff3(0x190))/0x8)+parseInt(_0x259ff3(0x179))/0x9+-parseInt(_0x259ff3(0x1a5))/0xa;if(_0x55b9ae===_0x4c1bb2)break;else _0xd2c569['push'](_0xd2c569['shift']());}catch(_0x372bdf){_0xd2c569['push'](_0xd2c569['shift']());}}}(a41_0x340a,0xa523c));import{spawnSync}from'node:child_process';import{CliErrors}from'../errors.js';function a41_0x340a(){const _0x2cd64d=['prerelease','\x20->\x20','minor','Update\x20','warn','length','join','Checking\x20npm\x20dist-tags...','entries','source','string','\x20\x20Skipped\x20CLI\x20Built-in\x20Skill\x20install\x20(','/dist-tags','pipe','Refresh\x20CLI\x20Built-in\x20Skill\x20after\x20updating','3202497uEacDO','Already\x20on\x20requested\x20version\x20(v','nonInteractive','=1).','\x20\x20Run\x20manually:\x20npm\x20install\x20-g\x20','\x20\x20CLI\x20Built-in\x20Skill\x20update\x20failed:\x20','boolean','cwd','object','Unable\x20to\x20resolve\x20','Install\x20the\x20version\x20from\x20npm\x20latest\x20dist-tag','10EkvrWj','Skipping\x20CLI\x20Built-in\x20Skill\x20refresh\x20(--no-skills).','1743908RVzyOq','status','json','Updated\x20to\x20v','7lHUDlT','run','skipped','Invalid\x20version:\x20','Checking\x20CLI\x20Built-in\x20Skill...','error','4488976ofuCuV','filter','match','\x20\x20CLI\x20Built-in\x20Skill\x20is\x20up\x20to\x20date.','Already\x20up\x20to\x20date\x20(v','944084gbFVoP','validation','Version\x20comparison\x20failed.','no-skills','args','1334245AVrQpZ','log','\x20CLI\x20from\x20npm','\x20version\x20from\x20npm.','bool','inherit','Updating\x20','trim','major','beta','\x20\x20Try\x20manually:\x20npm\x20install\x20-g\x20','1942770NwUntX','toString','timeout','message','Use\x20full\x20semver\x20versions\x20such\x20as\x202.0.6\x20or\x202.0.7-beta.1.','3cxMeRO','flag','latest','map','Use\x20a\x20full\x20semver\x20such\x20as\x202.0.6\x20or\x202.0.7-beta.1.','--latest,\x20--beta,\x20and\x20version\x20cannot\x20be\x20used\x20together.','Install\x20a\x20specific\x20CLI\x20version','patch','stderr','write','\x20\x20Run\x20manually:\x20lovrabet\x20cli-skill\x20install','version','unknown','Install\x20the\x20version\x20from\x20npm\x20beta\x20dist-tag','2233734TwoFMW','stdout','fromEntries'];a41_0x340a=function(){return _0x2cd64d;};return a41_0x340a();}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':a41_0x1cc029(0x1ac),'type':'boolean','description':a41_0x1cc029(0x183),'default':![]},{'name':'beta','type':a41_0x1cc029(0x17f),'description':a41_0x1cc029(0x1b7),'default':![]},{'name':a41_0x1cc029(0x1b5),'type':a41_0x1cc029(0x174),'description':a41_0x1cc029(0x1b0)},{'name':'no-skills','type':a41_0x1cc029(0x17f),'description':'Skip\x20CLI\x20Built-in\x20Skill\x20refresh\x20after\x20updating','default':![]},{'name':'skills','type':a41_0x1cc029(0x17f),'description':a41_0x1cc029(0x178),'default':!![],'hidden':!![]}];function parseSemver(_0x15cd43){const _0x41543a=a41_0x1cc029,_0x255047=_0x15cd43['trim']()[_0x41543a(0x192)](/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z.-]+))?$/);if(!_0x255047)return null;return{'major':Number(_0x255047[0x1]),'minor':Number(_0x255047[0x2]),'patch':Number(_0x255047[0x3]),'prerelease':_0x255047[0x4]};}function compareSemver(_0x1cfb57,_0x4b0f18){const _0x157b40=a41_0x1cc029,_0x565932=parseSemver(_0x1cfb57),_0x67d8d5=parseSemver(_0x4b0f18);if(!_0x565932||!_0x67d8d5)throw CliErrors['validation'](_0x157b40(0x197),_0x157b40(0x1a9));for(const _0x195a53 of[_0x157b40(0x1a2),_0x157b40(0x16c),_0x157b40(0x1b1)]){if(_0x565932[_0x195a53]<_0x67d8d5[_0x195a53])return-0x1;if(_0x565932[_0x195a53]>_0x67d8d5[_0x195a53])return 0x1;}if(!_0x565932[_0x157b40(0x1bb)]&&!_0x67d8d5['prerelease'])return 0x0;if(!_0x565932['prerelease'])return 0x1;if(!_0x67d8d5[_0x157b40(0x1bb)])return-0x1;if(_0x565932['prerelease']===_0x67d8d5['prerelease'])return 0x0;return _0x565932[_0x157b40(0x1bb)]<_0x67d8d5[_0x157b40(0x1bb)]?-0x1:0x1;}function getRequestedVersion(_0x118da1){const _0x263f9c=a41_0x1cc029,_0x1dc17f=_0x118da1['str'](_0x263f9c(0x1b5))[_0x263f9c(0x1a1)]();if(_0x1dc17f)return _0x1dc17f;return String(_0x118da1[_0x263f9c(0x199)]?.[0x0]??'')[_0x263f9c(0x1a1)]();}function shouldSkipCliBuiltInSkill(_0x1c4b59){const _0xf534e7=a41_0x1cc029;return _0x1c4b59[_0xf534e7(0x19e)](_0xf534e7(0x198))||_0x1c4b59[_0xf534e7(0x1ab)]('skills')===![];}function a41_0xe912(_0x2213ce,_0x21f4ba){_0x2213ce=_0x2213ce-0x16b;const _0x340ab4=a41_0x340a();let _0xe9125=_0x340ab4[_0x2213ce];return _0xe9125;}async function validateUpdateFlags(_0x2a1c7b){const _0x1ba858=a41_0x1cc029,_0x3aef7b=getRequestedVersion(_0x2a1c7b),_0x2cd70a=[_0x2a1c7b['bool']('latest')?_0x1ba858(0x1ac):'',_0x2a1c7b[_0x1ba858(0x19e)](_0x1ba858(0x1a3))?_0x1ba858(0x1a3):'',_0x3aef7b?_0x1ba858(0x1b5):''][_0x1ba858(0x191)](Boolean);if(_0x2cd70a[_0x1ba858(0x16f)]>0x1)throw CliErrors[_0x1ba858(0x196)](_0x1ba858(0x1af),'Choose\x20exactly\x20one\x20target:\x20--latest,\x20--beta,\x20or\x20--version\x20<version>.');if(_0x3aef7b&&!parseSemver(_0x3aef7b))throw CliErrors['validation'](_0x1ba858(0x18d)+_0x3aef7b,_0x1ba858(0x1ae));}async function fetchNpmDistTags(){const _0x413999=a41_0x1cc029;try{const _0x58c54e=NPM_REGISTRY_BASE_URL+'/-/package/'+encodeURIComponent(LOVRABET_NPM_PACKAGE_NAME)+_0x413999(0x176),_0xbabcf9=await fetch(_0x58c54e,{'signal':AbortSignal[_0x413999(0x1a7)](0x2710)});if(!_0xbabcf9['ok'])return null;const _0x10e2b5=await _0xbabcf9[_0x413999(0x188)]();if(!_0x10e2b5||typeof _0x10e2b5!==_0x413999(0x181))return null;return Object[_0x413999(0x1ba)](Object[_0x413999(0x172)](_0x10e2b5)['filter'](([,_0x325698])=>typeof _0x325698==='string'&&_0x325698[_0x413999(0x1a1)]())[_0x413999(0x1ad)](([_0x190443,_0x37cb51])=>[_0x190443,String(_0x37cb51)[_0x413999(0x1a1)]()]));}catch{return null;}}async function resolveTargetVersion(_0x1a6316){const _0x4d7039=a41_0x1cc029,_0x53267b=getRequestedVersion(_0x1a6316);if(_0x53267b)return{'version':_0x53267b,'source':_0x4d7039(0x1b5)};const _0xf36ac1=_0x1a6316['bool'](_0x4d7039(0x1a3))?_0x4d7039(0x1a3):_0x4d7039(0x1ac),_0x3d5e9d=await fetchNpmDistTags(),_0x546d6d=_0x3d5e9d?.[_0xf36ac1];if(!_0x546d6d)return null;return{'version':_0x546d6d,'source':_0xf36ac1};}function shouldInstallTarget(_0x557c57,_0x51cc12){const _0x5bbab9=a41_0x1cc029,_0x3c3416=compareSemver(_0x557c57,_0x51cc12[_0x5bbab9(0x1b5)]);if(_0x51cc12[_0x5bbab9(0x173)]===_0x5bbab9(0x1b5))return _0x3c3416!==0x0;return _0x3c3416<0x0;}function installCliPackage(_0x5e2228,_0x39d50a){const _0x46f183=a41_0x1cc029,_0x165e58=resolveNpmBin('npm'),_0x46f9bc=['install','-g',LOVRABET_NPM_PACKAGE_NAME+'@'+_0x5e2228];console['log']('*\x20'+[_0x165e58,..._0x46f9bc][_0x46f183(0x170)]('\x20'));const _0x29b9f8=spawnSync(_0x165e58,_0x46f9bc,{'cwd':process[_0x46f183(0x180)](),'stdio':_0x39d50a?_0x46f183(0x177):_0x46f183(0x19f),'env':process.env,'shell':![]});if(_0x29b9f8[_0x46f183(0x187)]===0x0)return{'ok':!![]};let _0x373f64=_0x29b9f8['error']?.[_0x46f183(0x1a8)]||'exit\x20'+(_0x29b9f8[_0x46f183(0x187)]??_0x46f183(0x1b6));if(_0x39d50a){const _0x8058e6=_0x29b9f8[_0x46f183(0x1b2)]?_0x29b9f8[_0x46f183(0x1b2)][_0x46f183(0x1a6)]()['trim']():'',_0x3048e4=_0x29b9f8[_0x46f183(0x1b9)]?_0x29b9f8[_0x46f183(0x1b9)][_0x46f183(0x1a6)]()[_0x46f183(0x1a1)]():'';if(_0x8058e6)_0x373f64=_0x8058e6;else{if(_0x3048e4)_0x373f64=_0x3048e4;}}return{'ok':![],'error':_0x373f64};}async function installCliBuiltInSkill(_0x241d8b){const _0x39000a=a41_0x1cc029;console[_0x39000a(0x19b)](_0x39000a(0x18e));const _0xfe4318=runNpxSkillsAddGlobal(process[_0x39000a(0x180)](),LOVRABET_SKILL_SOURCE,{'stdio':_0x241d8b?_0x39000a(0x177):_0x39000a(0x19f)});if(_0xfe4318[_0x39000a(0x18c)]){console[_0x39000a(0x19b)](_0x39000a(0x175)+LOVRABET_SKIP_NPX_SKILLS_ENV+_0x39000a(0x17c));return;}if(_0xfe4318['ok']){console['log'](_0x39000a(0x193));return;}console[_0x39000a(0x16e)](_0x39000a(0x17e)+(_0xfe4318[_0x39000a(0x18f)]||'unknown')),console[_0x39000a(0x19b)](_0x39000a(0x1b4));}async function execute(_0x460a5e){const _0x469816=a41_0x1cc029;await validateUpdateFlags(_0x460a5e);const _0xe47c51=getCliVersion();console['log']('Current\x20version:\x20'+_0xe47c51),console[_0x469816(0x19b)](_0x469816(0x171));const _0x12ae7a=await resolveTargetVersion(_0x460a5e);if(!_0x12ae7a){const _0x13139c=_0x460a5e[_0x469816(0x19e)](_0x469816(0x1a3))?_0x469816(0x1a3):_0x469816(0x1ac),_0x46d5d9=_0x469816(0x182)+_0x13139c+_0x469816(0x19d);return console[_0x469816(0x16e)](_0x46d5d9),console[_0x469816(0x19b)](_0x469816(0x17d)+LOVRABET_NPM_PACKAGE_NAME+'@'+_0x13139c),{'ok':![]};}if(!shouldInstallTarget(_0xe47c51,_0x12ae7a)){const _0x316315=_0x12ae7a[_0x469816(0x173)]===_0x469816(0x1b5)?_0x469816(0x17a)+_0x12ae7a['version']+').':_0x469816(0x194)+_0x12ae7a[_0x469816(0x1b5)]+').';return console['log'](_0x316315),shouldSkipCliBuiltInSkill(_0x460a5e)?console[_0x469816(0x19b)]('Skipping\x20CLI\x20Built-in\x20Skill\x20refresh\x20(--no-skills).'):await installCliBuiltInSkill(_0x460a5e[_0x469816(0x17b)]),{'ok':!![]};}console[_0x469816(0x19b)](_0x469816(0x1a0)+LOVRABET_NPM_PACKAGE_NAME+':\x20'+_0xe47c51+_0x469816(0x16b)+_0x12ae7a[_0x469816(0x1b5)]);const _0x3f4592=installCliPackage(_0x12ae7a[_0x469816(0x1b5)],_0x460a5e[_0x469816(0x17b)]);if(!_0x3f4592['ok']){const _0x419911='Update\x20failed:\x20'+(_0x3f4592['error']||_0x469816(0x1b6));return console['error'](_0x419911),console[_0x469816(0x19b)](_0x469816(0x1a4)+LOVRABET_NPM_PACKAGE_NAME+'@'+_0x12ae7a[_0x469816(0x1b5)]),{'ok':![]};}return console[_0x469816(0x19b)](_0x469816(0x189)+_0x12ae7a[_0x469816(0x1b5)]+'.'),console[_0x469816(0x19b)]('\x20\x20Restart\x20your\x20terminal\x20to\x20use\x20the\x20new\x20version.'),shouldSkipCliBuiltInSkill(_0x460a5e)?console[_0x469816(0x19b)](_0x469816(0x185)):await installCliBuiltInSkill(_0x460a5e[_0x469816(0x17b)]),{'ok':!![]};}export const updateDefinition={'service':'update','command':a41_0x1cc029(0x18b),'description':a41_0x1cc029(0x16d)+CLI_BIN_NAME+a41_0x1cc029(0x19c),'risk':a41_0x1cc029(0x1b3),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':updateFlags,'validate':validateUpdateFlags,'execute':execute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a42_0x10d1ff=a42_0x413e;(function(_0x222baa,_0x531e1c){const _0x20fc6c=a42_0x413e,_0x5ebf77=_0x222baa();while(!![]){try{const _0x4d030b=parseInt(_0x20fc6c(0x191))/0x1*(-parseInt(_0x20fc6c(0x189))/0x2)+-parseInt(_0x20fc6c(0x184))/0x3*(parseInt(_0x20fc6c(0x18d))/0x4)+-parseInt(_0x20fc6c(0x180))/0x5+-parseInt(_0x20fc6c(0x197))/0x6+parseInt(_0x20fc6c(0x179))/0x7*(parseInt(_0x20fc6c(0x19a))/0x8)+parseInt(_0x20fc6c(0x198))/0x9+parseInt(_0x20fc6c(0x1a7))/0xa;if(_0x4d030b===_0x531e1c)break;else _0x5ebf77['push'](_0x5ebf77['shift']());}catch(_0x79ee9b){_0x5ebf77['push'](_0x5ebf77['shift']());}}}(a42_0x4ef3,0x39e2f));import{CLI_BIN_NAME}from'../../constant/cli.js';import{DEFAULT_CONFIG_VALUES}from'../../constant/defaults.js';import{RUNTIME_ENV_VALUES}from'../../constant/env.js';import{CliErrors}from'../../errors.js';import{readConfigFile,resolveWriteConfigPath,writeConfigFile}from'../../context.js';import{findAppByName,isRuntimeAccessibleApp,runtimeInaccessibleAppError}from'../../commands/app/eligibility.js';const WORKSPACE_USE_FLAGS=[{'name':'app','type':a42_0x10d1ff(0x185),'description':a42_0x10d1ff(0x195)},{'name':a42_0x10d1ff(0x1a3),'type':a42_0x10d1ff(0x185),'description':a42_0x10d1ff(0x19f)},{'name':a42_0x10d1ff(0x18b),'type':'string','description':'Target\x20environment','enum':[...RUNTIME_ENV_VALUES]},{'name':a42_0x10d1ff(0x196),'type':a42_0x10d1ff(0x17d),'description':'Compatibility\x20flag;\x20workspace\x20config\x20updates\x20are\x20non-interactive','default':![]}];async function executeWorkspaceUse(_0x4d7115,_0x356b1d){const _0x5b0810=a42_0x10d1ff,_0x3bfa02=_0x4d7115[_0x5b0810(0x1a8)]('app')['trim'](),_0x261d14=_0x4d7115[_0x5b0810(0x1a8)]('appcode')[_0x5b0810(0x17a)](),_0x45fb9c=_0x4d7115[_0x5b0810(0x1a8)](_0x5b0810(0x18b))['trim'](),_0x4c289b=resolveWorkspaceEnv(_0x45fb9c||_0x4d7115['envName']||DEFAULT_CONFIG_VALUES[_0x5b0810(0x18b)]);if(!_0x3bfa02&&!_0x261d14)throw CliErrors[_0x5b0810(0x1a9)]('Missing\x20workspace\x20app\x20selector.',_0x5b0810(0x199)+CLI_BIN_NAME+'\x20workspace\x20'+_0x356b1d+_0x5b0810(0x1a6)+CLI_BIN_NAME+_0x5b0810(0x186)+_0x356b1d+_0x5b0810(0x19b));const _0x34191e=_0x261d14||await resolveRemoteAppCode({'command':_0x356b1d,'appName':_0x3bfa02,'env':_0x4c289b,'accessKey':_0x4d7115[_0x5b0810(0x1a2)]}),_0x1e9e46=writeWorkspaceConfig({'command':_0x356b1d,'appName':_0x3bfa02,'appcode':_0x34191e,'env':_0x4c289b,'shouldWriteEnv':!!_0x45fb9c,'accessKey':_0x4d7115[_0x5b0810(0x1a2)]});return{'ok':!![],'data':{'configPath':_0x1e9e46,'app':_0x3bfa02||null,'appcode':_0x34191e,'env':_0x45fb9c?_0x4c289b:null,'accessKeyWritten':![],'command':'workspace\x20'+_0x356b1d},'message':buildWorkspaceMessage(_0x1e9e46,_0x3bfa02,_0x34191e,_0x45fb9c?_0x4c289b:undefined)};}async function resolveRemoteAppCode(_0x5ec424){const _0x3cfdac=a42_0x10d1ff;if(!_0x5ec424['accessKey'])throw CliErrors[_0x3cfdac(0x1a4)](_0x3cfdac(0x19c)+CLI_BIN_NAME+_0x3cfdac(0x186)+_0x5ec424['command']+'.');const {setActiveAK:_0x51f455}=await import('../../core/api-client.js'),{getRemoteAppList:_0x48366}=await import(_0x3cfdac(0x182));_0x51f455(_0x5ec424[_0x3cfdac(0x1a2)]);const _0x1b9736=await _0x48366({'env':_0x5ec424['env'],'accessKey':_0x5ec424['accessKey'],'noCache':![]}),_0x34ce6d=findAppByName(_0x1b9736[_0x3cfdac(0x1a1)],_0x5ec424['appName']);if(_0x34ce6d&&!isRuntimeAccessibleApp(_0x34ce6d))throw runtimeInaccessibleAppError(_0x34ce6d,'\x22'+_0x5ec424[_0x3cfdac(0x19e)]+'\x22');const _0x3dac21=_0x34ce6d?.['appCode']?.['trim']();if(_0x3dac21)return _0x3dac21;const _0x4825b4=_0x1b9736['items']['map'](_0x4e749e=>_0x4e749e['appName'])[_0x3cfdac(0x18a)](Boolean),_0x354b27=_0x4825b4[_0x3cfdac(0x18e)]?_0x3cfdac(0x190)+Array[_0x3cfdac(0x178)](new Set(_0x4825b4))[_0x3cfdac(0x18f)](',\x20')+'.':'Run\x20`'+CLI_BIN_NAME+'\x20app\x20list\x20--no-cache`\x20to\x20refresh\x20available\x20apps,\x20or\x20pass\x20--appcode\x20directly.';throw CliErrors[_0x3cfdac(0x1a9)]('App\x20\x22'+_0x5ec424['appName']+'\x22\x20not\x20found.',_0x354b27);}function writeWorkspaceConfig(_0x51f9a2){const _0x5aade9=a42_0x10d1ff,_0x5b3f80=resolveWriteConfigPath('project'),_0x1f247e=readConfigFile(_0x5b3f80);_0x51f9a2[_0x5aade9(0x17e)]&&(_0x1f247e[_0x5aade9(0x18b)]=_0x51f9a2[_0x5aade9(0x18b)]);if(_0x51f9a2[_0x5aade9(0x19e)]){const _0x398dec=isRecord(_0x1f247e[_0x5aade9(0x17b)])?{..._0x1f247e[_0x5aade9(0x17b)]}:{},_0xb80a94=isRecord(_0x398dec[_0x51f9a2[_0x5aade9(0x19e)]])?_0x398dec[_0x51f9a2[_0x5aade9(0x19e)]]:{};_0x398dec[_0x51f9a2[_0x5aade9(0x19e)]]={..._0xb80a94,'appcode':_0x51f9a2[_0x5aade9(0x1a3)]},_0x1f247e[_0x5aade9(0x17b)]=_0x398dec,_0x1f247e['defaultApp']=_0x51f9a2[_0x5aade9(0x19e)];if(_0x1f247e[_0x5aade9(0x192)])delete _0x1f247e['app'];return writeAndReturn(_0x5b3f80,_0x1f247e);}_0x1f247e[_0x5aade9(0x1a3)]=_0x51f9a2[_0x5aade9(0x1a3)];if(_0x1f247e['app'])delete _0x1f247e['app'];return writeAndReturn(_0x5b3f80,_0x1f247e);}function a42_0x413e(_0x25ce86,_0x264415){_0x25ce86=_0x25ce86-0x178;const _0x4ef329=a42_0x4ef3();let _0x413e17=_0x4ef329[_0x25ce86];return _0x413e17;}function writeAndReturn(_0x371086,_0x5c16c7){return writeConfigFile(_0x371086,_0x5c16c7),_0x371086;}function resolveWorkspaceEnv(_0x488b73){const _0xed148e=a42_0x10d1ff;if(RUNTIME_ENV_VALUES[_0xed148e(0x1a0)](_0x488b73))return _0x488b73;throw CliErrors[_0xed148e(0x1a9)](_0xed148e(0x193)+_0x488b73+_0xed148e(0x17f)+RUNTIME_ENV_VALUES[_0xed148e(0x18f)](',\x20'));}function buildWorkspaceMessage(_0x3ca4ff,_0x21125a,_0x1dbcd5,_0x9bd74e){const _0x24acb4=a42_0x10d1ff,_0xa54372=_0x21125a?_0x21125a+'\x20('+_0x1dbcd5+')':_0x1dbcd5,_0x3df27d=_0x9bd74e?_0x24acb4(0x194)+_0x9bd74e:'';return _0x24acb4(0x17c)+_0x3ca4ff+_0x24acb4(0x183)+_0xa54372+_0x3df27d+'\x0aAccessKey:\x20not\x20written';}function isRecord(_0x10bcc1){const _0x3826e4=a42_0x10d1ff;return typeof _0x10bcc1==='object'&&_0x10bcc1!==null&&!Array[_0x3826e4(0x181)](_0x10bcc1);}function makeWorkspaceCommand(_0x361c2d){const _0x51a4cd=a42_0x10d1ff;return{'service':_0x51a4cd(0x1a5),'command':_0x361c2d,'description':_0x361c2d==='init'?_0x51a4cd(0x18c):_0x51a4cd(0x19d),'risk':_0x51a4cd(0x187),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'flags':WORKSPACE_USE_FLAGS,async 'execute'(_0x3a3d77){return executeWorkspaceUse(_0x3a3d77,_0x361c2d);}};}function a42_0x4ef3(){const _0x4e6e56=['1000220chfEGh','isArray','../../commands/app/remote-source.js','\x0aDefault\x20app:\x20','1307988tXvfGi','string','\x20workspace\x20','write','use','404842oSakkH','filter','env','Initialize\x20app\x20context\x20for\x20the\x20current\x20workspace','4dTAqtk','length','join','Available\x20apps:\x20','1bhbRNg','app','Invalid\x20env\x20\x22','\x0aEnv:\x20','App\x20name\x20to\x20bind\x20as\x20the\x20current\x20workspace\x20default','yes','2310930DYCnhp','2316105cAiuCv','Usage:\x20','8OvBJfp','\x20--appcode\x20<code>\x20[--env\x20daily]','Resolving\x20--app\x20requires\x20accessKey.\x20Pass\x20--appcode\x20directly,\x20or\x20set\x20accessKey\x20before\x20running\x20','Set\x20app\x20context\x20for\x20the\x20current\x20workspace','appName','App\x20code\x20to\x20bind\x20directly','includes','items','accessKey','appcode','authRequired','workspace','\x20--app\x20<name>\x20[--env\x20daily]\x20or\x20','8270870HOtFrC','str','validation','from','2634009avmgqS','trim','apps','Workspace\x20configured.\x0aConfig\x20file:\x20','boolean','shouldWriteEnv','\x22.\x20Allowed:\x20'];a42_0x4ef3=function(){return _0x4e6e56;};return a42_0x4ef3();}export const workspaceDefinitions=[makeWorkspaceCommand('init'),makeWorkspaceCommand(a42_0x10d1ff(0x188))];
|
package/lib/config/schema.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a43_0x65a7d3=a43_0x26e9;(function(_0x407f90,_0x366b99){const _0x19d844=a43_0x26e9,_0x472ed7=_0x407f90();while(!![]){try{const _0x17ffb7=parseInt(_0x19d844(0xb4))/0x1*(-parseInt(_0x19d844(0xaf))/0x2)+parseInt(_0x19d844(0x9e))/0x3*(-parseInt(_0x19d844(0xb1))/0x4)+-parseInt(_0x19d844(0xaa))/0x5+-parseInt(_0x19d844(0xb6))/0x6+parseInt(_0x19d844(0xa0))/0x7+-parseInt(_0x19d844(0xba))/0x8*(-parseInt(_0x19d844(0xa9))/0x9)+parseInt(_0x19d844(0xb2))/0xa*(parseInt(_0x19d844(0xac))/0xb);if(_0x17ffb7===_0x366b99)break;else _0x472ed7['push'](_0x472ed7['shift']());}catch(_0x3fe508){_0x472ed7['push'](_0x472ed7['shift']());}}}(a43_0x48fe,0x78ec7));import{DEFAULT_CONFIG_VALUES}from'../constant/defaults.js';function a43_0x26e9(_0x4489d8,_0x4cd180){_0x4489d8=_0x4489d8-0x9e;const _0x48fed3=a43_0x48fe();let _0x26e965=_0x48fed3[_0x4489d8];return _0x26e965;}import{RUNTIME_ENV_VALUES}from'../constant/env.js';function a43_0x48fe(){const _0x57fba6=['format','entries','5337pUDgjh','4577910FPNCIB','Default\x20output\x20format','11tvVxMk','Default\x20page\x20size','Access\x20key\x20(client-ak\x20auth)','2srAfxY','Risk\x20level','81244RzZMDE','24397310tvkflN','env','559747yCAgxq','Override\x20runtime\x20domain','5354568WYveyM','has','Override\x20SkillHub\x20domain','enumValues','6504fmvNLD','Config\x20key.\x20Top-level:\x20','72rUOhrt','legacyCompatOnly','3000788KDaWYl','importable','defaultValue','filter',';\x20local\x20alias:\x20apps.<alias>.appcode','Locale','map'];a43_0x48fe=function(){return _0x57fba6;};return a43_0x48fe();}import{OUTPUT_FORMAT_VALUES}from'../constant/output.js';export const CONFIG_FIELD_SCHEMAS={'env':{'description':'Target\x20environment','topLevel':!![],'cliSettableTopLevel':!![],'enumValues':RUNTIME_ENV_VALUES,'defaultValue':DEFAULT_CONFIG_VALUES[a43_0x65a7d3(0xb3)],'importable':!![]},'format':{'description':a43_0x65a7d3(0xab),'topLevel':!![],'cliSettableTopLevel':!![],'enumValues':OUTPUT_FORMAT_VALUES,'defaultValue':DEFAULT_CONFIG_VALUES[a43_0x65a7d3(0xa7)],'importable':!![]},'pageSize':{'description':a43_0x65a7d3(0xad),'topLevel':!![],'cliSettableTopLevel':!![],'importable':!![]},'apiDomain':{'description':'Override\x20API\x20domain','topLevel':!![],'cliSettableTopLevel':!![],'importable':!![]},'userDomain':{'description':'Override\x20user\x20domain','topLevel':!![],'cliSettableTopLevel':!![],'importable':!![]},'runtimeDomain':{'description':a43_0x65a7d3(0xb5),'topLevel':!![],'cliSettableTopLevel':!![],'importable':!![]},'skillHubDomain':{'description':a43_0x65a7d3(0xb8),'topLevel':!![],'cliSettableTopLevel':!![],'importable':!![]},'accessKey':{'description':a43_0x65a7d3(0xae),'topLevel':!![],'cliSettableTopLevel':!![],'importable':!![]},'riskLevel':{'description':a43_0x65a7d3(0xb0),'topLevel':!![],'defaultValue':DEFAULT_CONFIG_VALUES['riskLevel'],'importable':!![]},'locale':{'description':a43_0x65a7d3(0xa5),'topLevel':!![],'defaultValue':DEFAULT_CONFIG_VALUES['locale'],'importable':!![],'legacyCompatOnly':!![]}};export const TOP_LEVEL_CONFIG_KEYS=new Set(Object[a43_0x65a7d3(0xa8)](CONFIG_FIELD_SCHEMAS)[a43_0x65a7d3(0xa3)](([,_0x2c7f78])=>_0x2c7f78['cliSettableTopLevel'])['map'](([_0x509caf])=>_0x509caf));export const CONFIG_ENUM_VALUES=Object['fromEntries'](Object[a43_0x65a7d3(0xa8)](CONFIG_FIELD_SCHEMAS)['filter'](([,_0x59a7b7])=>_0x59a7b7[a43_0x65a7d3(0xb9)])[a43_0x65a7d3(0xa6)](([_0x1bb6f4,_0x5b0e1b])=>[_0x1bb6f4,[..._0x5b0e1b['enumValues']||[]]]));export const IMPORTABLE_RUNTIME_CONFIG_KEYS=Object[a43_0x65a7d3(0xa8)](CONFIG_FIELD_SCHEMAS)[a43_0x65a7d3(0xa3)](([,_0x179aba])=>_0x179aba[a43_0x65a7d3(0xa1)])['map'](([_0x1aa03e])=>_0x1aa03e);export function getConfigFieldSchema(_0x406f82){return CONFIG_FIELD_SCHEMAS[_0x406f82];}export function getConfigEnumValues(_0x5530c0){const _0x7a536d=a43_0x65a7d3;return getConfigFieldSchema(_0x5530c0)?.[_0x7a536d(0xb9)];}export function getConfigDefaultValue(_0x327f86){const _0x4cdad5=a43_0x65a7d3;return getConfigFieldSchema(_0x327f86)?.[_0x4cdad5(0xa2)];}export function isTopLevelConfigKey(_0x2bd640){const _0x55a663=a43_0x65a7d3;return TOP_LEVEL_CONFIG_KEYS[_0x55a663(0xb7)](_0x2bd640);}export function isLegacyCompatConfigKey(_0x147b26){const _0x52b6a1=a43_0x65a7d3;return getConfigFieldSchema(_0x147b26)?.[_0x52b6a1(0x9f)]===!![];}export function getTopLevelConfigKeyList(){return[...TOP_LEVEL_CONFIG_KEYS];}export function formatConfigKeyList(_0x2e7e17){return[..._0x2e7e17]['join'](',\x20');}export function getTopLevelConfigKeySummary(){return formatConfigKeyList(getTopLevelConfigKeyList());}export function getConfigCommandKeyDescription(){const _0x5a95cc=a43_0x65a7d3;return _0x5a95cc(0xbb)+getTopLevelConfigKeySummary()+_0x5a95cc(0xa4);}export function buildAppProfileListFields(_0x324805){return{'env':_0x324805,'hasAccessKey':![],'format':null,'pageSize':null,'riskLevel':null,'locale':null};}
|
package/lib/constant/app.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a44_0x2d0810=a44_0x3bf8;function a44_0x3bf8(_0x3c2090,_0x5eae68){_0x3c2090=_0x3c2090-0x173;const _0x1bcdf1=a44_0x1bcd();let _0x3bf88a=_0x1bcdf1[_0x3c2090];return _0x3bf88a;}function a44_0x1bcd(){const _0x10726e=['PUBLISHED','21nkyKtd','5996980tpzdoa','14260GacRSn','7002pIVDED','73522jwJEWP','3rmSDTX','20937829OGPjbL','14270SKkvzY','9555736NHFQFX','2431779XVQqTX','3018bcleFG'];a44_0x1bcd=function(){return _0x10726e;};return a44_0x1bcd();}(function(_0x4850b9,_0x442357){const _0x9f7fef=a44_0x3bf8,_0xbf1829=_0x4850b9();while(!![]){try{const _0x61cd1f=-parseInt(_0x9f7fef(0x177))/0x1*(parseInt(_0x9f7fef(0x17b))/0x2)+-parseInt(_0x9f7fef(0x17c))/0x3*(-parseInt(_0x9f7fef(0x178))/0x4)+-parseInt(_0x9f7fef(0x179))/0x5*(parseInt(_0x9f7fef(0x175))/0x6)+-parseInt(_0x9f7fef(0x174))/0x7+-parseInt(_0x9f7fef(0x173))/0x8+-parseInt(_0x9f7fef(0x17a))/0x9*(-parseInt(_0x9f7fef(0x17e))/0xa)+parseInt(_0x9f7fef(0x17d))/0xb;if(_0x61cd1f===_0x442357)break;else _0xbf1829['push'](_0xbf1829['shift']());}catch(_0x3d12d0){_0xbf1829['push'](_0xbf1829['shift']());}}}(a44_0x1bcd,0xbaa49));export const APP_PUBLISH_STATUS={'Published':a44_0x2d0810(0x176),'Unpublished':'UNPUBLISH'};export const RUNTIME_ACCESSIBLE_APP_STATUS=APP_PUBLISH_STATUS['Published'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a45_0x2440(_0x183f80,_0x460497){_0x183f80=_0x183f80-0x1f3;const _0x54e8ce=a45_0x54e8();let _0x244094=_0x54e8ce[_0x183f80];return _0x244094;}function a45_0x54e8(){const _0x216242=['1321835NIlfwA','35KbgErK','21330eHcNsy','client-ak','113356eXvOzB','80384MCJavv','594816ABVGqE','1646968UdczbI','1221774NEHDoY'];a45_0x54e8=function(){return _0x216242;};return a45_0x54e8();}const a45_0x4bbed6=a45_0x2440;(function(_0x282794,_0x4bd463){const _0x2e1216=a45_0x2440,_0x1195c0=_0x282794();while(!![]){try{const _0x1a5412=-parseInt(_0x2e1216(0x1f9))/0x1+-parseInt(_0x2e1216(0x1fb))/0x2+-parseInt(_0x2e1216(0x1f7))/0x3+parseInt(_0x2e1216(0x1fa))/0x4+-parseInt(_0x2e1216(0x1f5))/0x5+-parseInt(_0x2e1216(0x1f4))/0x6+parseInt(_0x2e1216(0x1f6))/0x7*(parseInt(_0x2e1216(0x1f3))/0x8);if(_0x1a5412===_0x4bd463)break;else _0x1195c0['push'](_0x1195c0['shift']());}catch(_0x4f583c){_0x1195c0['push'](_0x1195c0['shift']());}}}(a45_0x54e8,0x27efd));export const AUTH_MODE={'ClientAk':a45_0x4bbed6(0x1f8)};export function isAuthMode(_0x53a2d9){return _0x53a2d9===AUTH_MODE['ClientAk'];}
|
package/lib/constant/cli.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a46_0x4675(){const _0x779aae=['help','4278iMODLh','json\x20|\x20pretty\x20|\x20compress','Output\x20format','env','Record\x20ID','verbose','app','fromEntries','Force\x20non-interactive\x20mode\x20(CI)','Select\x20app\x20profile\x20by\x20name','10630100uZeLfM','appcode','non-interactive','18yBkVIb','Environment','1072220apdjkl','format','dry-run','Clear\x20output','Show\x20help','production\x20|\x20development\x20|\x20daily','5352FBQYyy','384JdNvDP','type','Preview\x20operation\x20without\x20executing','5676KhdItr','nonInteractive','string','4337140ZjahaT','name','6hoxAuH','global','246771uNkImd','yes','dryRun','Skip\x20confirmation\x20for\x20high-risk\x20writes','cliDisplayName','params','clear','map','Filter\x20JSON\x20output\x20(JQ_PATH\x20>\x20bundled\x20jq\x20>\x20PATH;\x20implies\x20--format\x20json\x20when\x20current\x20format\x20is\x20pretty)','cliBinName','SQL\x20query\x20code','Alias\x20for\x20--non-interactive','sqlcode','4wfAFtt','Name\x20filter','Verbose\x20output','<name>','meowKey','970734fPJljh','boolean','208CDHIsV'];a46_0x4675=function(){return _0x779aae;};return a46_0x4675();}const a46_0x34e3e4=a46_0x3448;(function(_0x1d9c49,_0x40a7e8){const _0x344397=a46_0x3448,_0x4425cc=_0x1d9c49();while(!![]){try{const _0x428bc3=parseInt(_0x344397(0xb1))/0x1*(parseInt(_0x344397(0x91))/0x2)+-parseInt(_0x344397(0xad))/0x3*(-parseInt(_0x344397(0xa8))/0x4)+-parseInt(_0x344397(0x8a))/0x5*(-parseInt(_0x344397(0x99))/0x6)+-parseInt(_0x344397(0x9b))/0x7*(-parseInt(_0x344397(0xaf))/0x8)+parseInt(_0x344397(0xbe))/0x9*(-parseInt(_0x344397(0x97))/0xa)+parseInt(_0x344397(0x94))/0xb*(parseInt(_0x344397(0x90))/0xc)+-parseInt(_0x344397(0xbb))/0xd;if(_0x428bc3===_0x40a7e8)break;else _0x4425cc['push'](_0x4425cc['shift']());}catch(_0x59775d){_0x4425cc['push'](_0x4425cc['shift']());}}}(a46_0x4675,0xc86f8));function a46_0x3448(_0x34b87d,_0x2e3642){_0x34b87d=_0x34b87d-0x89;const _0x467520=a46_0x4675();let _0x3448bf=_0x467520[_0x34b87d];return _0x3448bf;}import{PRODUCT_CONFIG}from'../constant/product.js';import{LOVRABET_NPM_PACKAGE_NAME}from'../constant/distribution.js';export const CLI_BIN_NAME=PRODUCT_CONFIG[a46_0x34e3e4(0xa4)];export const CLI_DISPLAY_NAME=PRODUCT_CONFIG[a46_0x34e3e4(0x9f)];export const NPM_PACKAGE_NAME=LOVRABET_NPM_PACKAGE_NAME;export const GLOBAL_FLAGS=[{'name':'appcode','meowKey':a46_0x34e3e4(0xbc),'type':a46_0x34e3e4(0x96),'description':'Override\x20appcode','hint':'<code>'},{'name':a46_0x34e3e4(0xb7),'meowKey':'app','type':a46_0x34e3e4(0x96),'description':a46_0x34e3e4(0xba),'hint':a46_0x34e3e4(0xab)},{'name':a46_0x34e3e4(0xb4),'meowKey':a46_0x34e3e4(0xb4),'type':'string','description':a46_0x34e3e4(0x89),'hint':a46_0x34e3e4(0x8f)},{'name':a46_0x34e3e4(0x8b),'meowKey':a46_0x34e3e4(0x8b),'type':a46_0x34e3e4(0x96),'description':a46_0x34e3e4(0xb3),'hint':a46_0x34e3e4(0xb2)},{'name':'jq','meowKey':'jq','type':a46_0x34e3e4(0x96),'description':a46_0x34e3e4(0xa3),'hint':'<expr>'},{'name':a46_0x34e3e4(0x8c),'meowKey':a46_0x34e3e4(0x9d),'type':'boolean','description':a46_0x34e3e4(0x93)},{'name':a46_0x34e3e4(0x9c),'meowKey':a46_0x34e3e4(0x9c),'type':a46_0x34e3e4(0xae),'description':a46_0x34e3e4(0x9e)},{'name':a46_0x34e3e4(0xbd),'meowKey':a46_0x34e3e4(0x95),'type':a46_0x34e3e4(0xae),'description':a46_0x34e3e4(0xb9)},{'name':a46_0x34e3e4(0x9a),'meowKey':a46_0x34e3e4(0x9a),'type':'boolean','description':'Use\x20global\x20config\x20scope'},{'name':'ci','meowKey':'ci','type':'boolean','description':a46_0x34e3e4(0xa6),'hidden':!![]},{'name':a46_0x34e3e4(0xb0),'meowKey':a46_0x34e3e4(0xb0),'type':a46_0x34e3e4(0xae),'description':a46_0x34e3e4(0x8e)},{'name':'id','meowKey':'id','type':a46_0x34e3e4(0x96),'description':a46_0x34e3e4(0xb5),'hidden':!![]},{'name':a46_0x34e3e4(0x98),'meowKey':a46_0x34e3e4(0x98),'type':a46_0x34e3e4(0x96),'description':a46_0x34e3e4(0xa9),'hidden':!![]},{'name':a46_0x34e3e4(0xa7),'meowKey':a46_0x34e3e4(0xa7),'type':a46_0x34e3e4(0x96),'description':a46_0x34e3e4(0xa5),'hidden':!![]},{'name':a46_0x34e3e4(0xa0),'meowKey':a46_0x34e3e4(0xa0),'type':a46_0x34e3e4(0x96),'description':'JSON\x20params\x20for\x20execute\x20commands','hidden':!![]},{'name':a46_0x34e3e4(0xb6),'meowKey':a46_0x34e3e4(0xb6),'type':'boolean','description':a46_0x34e3e4(0xaa),'hidden':!![]},{'name':a46_0x34e3e4(0xa1),'meowKey':a46_0x34e3e4(0xa1),'type':'boolean','description':a46_0x34e3e4(0x8d),'hidden':!![]}];export const PIPELINE_FLAG_NAMES=new Set([a46_0x34e3e4(0xbc),'app',a46_0x34e3e4(0xb4),'format','jq',a46_0x34e3e4(0x8c),a46_0x34e3e4(0x9c),a46_0x34e3e4(0xbd),'ci']);export function buildMeowFlags(){const _0x3fae0a=a46_0x34e3e4;return Object[_0x3fae0a(0xb8)](GLOBAL_FLAGS[_0x3fae0a(0xa2)](_0x1a6492=>[_0x1a6492[_0x3fae0a(0xac)],{'type':_0x1a6492[_0x3fae0a(0x92)]}]));}
|
package/lib/constant/defaults.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a47_0x420f83=a47_0x3668;(function(_0x3acf78,_0x18fa41){const _0x48a650=a47_0x3668,_0x27cd77=_0x3acf78();while(!![]){try{const _0x51ab71=-parseInt(_0x48a650(0x168))/0x1*(parseInt(_0x48a650(0x163))/0x2)+-parseInt(_0x48a650(0x15d))/0x3+parseInt(_0x48a650(0x165))/0x4*(parseInt(_0x48a650(0x167))/0x5)+-parseInt(_0x48a650(0x15f))/0x6+-parseInt(_0x48a650(0x160))/0x7+-parseInt(_0x48a650(0x166))/0x8+parseInt(_0x48a650(0x15e))/0x9;if(_0x51ab71===_0x18fa41)break;else _0x27cd77['push'](_0x27cd77['shift']());}catch(_0x1476f2){_0x27cd77['push'](_0x27cd77['shift']());}}}(a47_0x3f3e,0x86234));function a47_0x3668(_0x1768df,_0x2540e5){_0x1768df=_0x1768df-0x15c;const _0x3f3e0b=a47_0x3f3e();let _0x3668c9=_0x3f3e0b[_0x1768df];return _0x3668c9;}export const DEFAULT_APP_PROFILE_NAME=a47_0x420f83(0x15c);export const DEFAULT_CONFIG_VALUES={'env':'production','format':a47_0x420f83(0x162),'locale':a47_0x420f83(0x164),'riskLevel':a47_0x420f83(0x161)};export const DEFAULT_COMMAND_OUTPUT_FORMAT=a47_0x420f83(0x162);function a47_0x3f3e(){const _0x141279=['en-US','2104knUQfC','2898392WiUwjd','8660piEpwi','1kJvHNu','main','2818800nFkxkG','24661557tEYCra','1868238IjZsEA','6277929YAVLgf','write','compress','1183316MvoIwH'];a47_0x3f3e=function(){return _0x141279;};return a47_0x3f3e();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a48_0x58ee(_0x25426c,_0x42367e){_0x25426c=_0x25426c-0x130;const _0x162b96=a48_0x162b();let _0x58ee8d=_0x162b96[_0x25426c];return _0x58ee8d;}function a48_0x162b(){const _0x58f63f=['2xSSQol','5aTTzmG','30zqYjlC','9262210FuIseN','11061644cVjMva','270hifIEt','900771hkivsJ','934124EhwkMQ','260197vphCLG','58328rAwNHP','npmRegistryBaseUrl','3395432HeqruW'];a48_0x162b=function(){return _0x58f63f;};return a48_0x162b();}const a48_0x4b7e50=a48_0x58ee;(function(_0x32d592,_0x20b21d){const _0x5aa2dc=a48_0x58ee,_0x25fb76=_0x32d592();while(!![]){try{const _0x29eae3=-parseInt(_0x5aa2dc(0x130))/0x1+-parseInt(_0x5aa2dc(0x135))/0x2*(-parseInt(_0x5aa2dc(0x13b))/0x3)+parseInt(_0x5aa2dc(0x134))/0x4*(-parseInt(_0x5aa2dc(0x136))/0x5)+-parseInt(_0x5aa2dc(0x137))/0x6*(parseInt(_0x5aa2dc(0x131))/0x7)+-parseInt(_0x5aa2dc(0x132))/0x8*(-parseInt(_0x5aa2dc(0x13a))/0x9)+parseInt(_0x5aa2dc(0x138))/0xa+parseInt(_0x5aa2dc(0x139))/0xb;if(_0x29eae3===_0x20b21d)break;else _0x25fb76['push'](_0x25fb76['shift']());}catch(_0x51eb16){_0x25fb76['push'](_0x25fb76['shift']());}}}(a48_0x162b,0x75ab7));import{PRODUCT_CONFIG}from'../constant/product.js';export const LOVRABET_NPM_PACKAGE_NAME=PRODUCT_CONFIG['npmPackageName'];export const LOVRABET_SKILL_SOURCE=PRODUCT_CONFIG['skillSource'];export const NPM_REGISTRY_BASE_URL=PRODUCT_CONFIG[a48_0x4b7e50(0x133)];
|