@lovrabet/lovrabet-cli 2.1.9-beta.3 → 2.1.9-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/lib/cli.js +1 -1
  2. package/lib/commands/api-doc/index.js +1 -1
  3. package/lib/commands/app/cache.js +1 -1
  4. package/lib/commands/app/definitions.js +1 -1
  5. package/lib/commands/app/eligibility.js +1 -1
  6. package/lib/commands/app/mock-loader.js +1 -1
  7. package/lib/commands/app/remote-source.js +1 -1
  8. package/lib/commands/app/shared.js +1 -1
  9. package/lib/commands/app-config/get.js +1 -1
  10. package/lib/commands/app-config/index.js +1 -1
  11. package/lib/commands/app-config/shared.js +1 -1
  12. package/lib/commands/artifact/index.js +1 -1
  13. package/lib/commands/auth/index.js +1 -1
  14. package/lib/commands/auth/prompt.js +1 -1
  15. package/lib/commands/bff/detail.js +1 -1
  16. package/lib/commands/bff/exec.js +1 -1
  17. package/lib/commands/bff/index.js +1 -1
  18. package/lib/commands/cli-skill/index.js +1 -1
  19. package/lib/commands/common/config-policy.js +1 -1
  20. package/lib/commands/common/constraints.js +1 -1
  21. package/lib/commands/common/flags.js +1 -1
  22. package/lib/commands/common/local-file.js +1 -1
  23. package/lib/commands/config/definitions.js +1 -1
  24. package/lib/commands/config/shared.js +1 -1
  25. package/lib/commands/data/index.js +1 -1
  26. package/lib/commands/dataset/detail.js +1 -1
  27. package/lib/commands/dataset/index.js +1 -1
  28. package/lib/commands/dataset/list.js +1 -1
  29. package/lib/commands/dataset/sdk-doc.js +1 -1
  30. package/lib/commands/doctor.js +1 -1
  31. package/lib/commands/file/index.js +1 -1
  32. package/lib/commands/init.js +1 -1
  33. package/lib/commands/kb/index.js +1 -1
  34. package/lib/commands/logs/index.js +1 -1
  35. package/lib/commands/ocr/index.js +1 -1
  36. package/lib/commands/personal-bff/index.js +1 -1
  37. package/lib/commands/registry.js +1 -1
  38. package/lib/commands/schema.js +1 -1
  39. package/lib/commands/service/dynamic.js +1 -1
  40. package/lib/commands/service/index.js +1 -1
  41. package/lib/commands/service/registry.js +1 -1
  42. package/lib/commands/skill/commands/create.js +1 -1
  43. package/lib/commands/skill/commands/install.js +1 -1
  44. package/lib/commands/skill/commands/list.js +1 -1
  45. package/lib/commands/skill/commands/push.js +1 -1
  46. package/lib/commands/skill/commands/validate.js +1 -1
  47. package/lib/commands/skill/flags.js +1 -1
  48. package/lib/commands/skill/index.js +1 -1
  49. package/lib/commands/skill/manifest-helpers.js +1 -1
  50. package/lib/commands/skill/push-execute.js +1 -1
  51. package/lib/commands/skill/push-flow-helpers.js +1 -1
  52. package/lib/commands/skill/push-retarget.js +1 -1
  53. package/lib/commands/skill/scopes.js +1 -1
  54. package/lib/commands/skill/summary.js +1 -1
  55. package/lib/commands/skill/templates.js +1 -1
  56. package/lib/commands/skill/validate.js +1 -1
  57. package/lib/commands/sql/detail.js +1 -1
  58. package/lib/commands/sql/exec.js +1 -1
  59. package/lib/commands/sql/index.js +1 -1
  60. package/lib/commands/update.js +1 -1
  61. package/lib/commands/workspace/index.js +1 -1
  62. package/lib/config/schema.js +1 -1
  63. package/lib/constant/app.js +1 -1
  64. package/lib/constant/auth-mode.js +1 -1
  65. package/lib/constant/cli.js +1 -1
  66. package/lib/constant/defaults.js +1 -1
  67. package/lib/constant/distribution.js +1 -1
  68. package/lib/constant/domain.js +1 -1
  69. package/lib/constant/env.js +1 -1
  70. package/lib/constant/output.js +1 -1
  71. package/lib/constant/product.js +1 -1
  72. package/lib/constant/risk.js +1 -1
  73. package/lib/constant/url.js +1 -1
  74. package/lib/context.js +1 -1
  75. package/lib/core/api-client.js +1 -1
  76. package/lib/core/db-resolver.js +1 -1
  77. package/lib/core/sdk-client.js +1 -1
  78. package/lib/errors.js +1 -1
  79. package/lib/framework/build-all-flags.js +1 -1
  80. package/lib/framework/dryrun.js +1 -1
  81. package/lib/framework/flags.js +1 -1
  82. package/lib/framework/help.js +1 -1
  83. package/lib/framework/index.js +1 -1
  84. package/lib/framework/output.js +1 -1
  85. package/lib/framework/preparse.js +1 -1
  86. package/lib/framework/response.js +1 -1
  87. package/lib/framework/runner-confirmation.js +1 -1
  88. package/lib/framework/runner-error.js +1 -1
  89. package/lib/framework/runner.js +1 -1
  90. package/lib/framework/schema-export.js +1 -1
  91. package/lib/framework/service-order.js +1 -1
  92. package/lib/framework/types.js +1 -1
  93. package/lib/generated/build-info.js +1 -1
  94. package/lib/help.js +1 -1
  95. package/lib/skills/npx-skills-add.js +1 -1
  96. package/lib/skills/runtime-skill-sync/constants.js +1 -1
  97. package/lib/skills/runtime-skill-sync/fs-utils.js +1 -1
  98. package/lib/skills/runtime-skill-sync/hashing.js +1 -1
  99. package/lib/skills/runtime-skill-sync/links.js +1 -1
  100. package/lib/skills/runtime-skill-sync/list-local.js +1 -1
  101. package/lib/skills/runtime-skill-sync/local-files.js +1 -1
  102. package/lib/skills/runtime-skill-sync/materialize.js +1 -1
  103. package/lib/skills/runtime-skill-sync/metadata.js +1 -1
  104. package/lib/skills/runtime-skill-sync/paths.js +1 -1
  105. package/lib/skills/runtime-skill-sync/push.js +1 -1
  106. package/lib/skills/runtime-skill-sync/scopes.js +1 -1
  107. package/lib/skills/runtime-skill-sync/zip-codec.js +1 -1
  108. package/lib/skills/runtime-skill-sync/zip-package.js +1 -1
  109. package/lib/skills/runtime-skill-sync.js +1 -1
  110. package/lib/utils/apply-jq-filter.js +1 -1
  111. package/lib/utils/logger.js +1 -1
  112. package/lib/utils/params.js +1 -1
  113. package/lib/utils/platform.js +1 -1
  114. package/lib/utils/update-notice.js +1 -1
  115. package/lib/utils/version.js +1 -1
  116. package/lib/utils/write-cli-side-channel.js +1 -1
  117. package/package.json +1 -1
@@ -1 +1 @@
1
- const a40_0x4fc44f=a40_0x33ce;function a40_0x3b68(){const _0x260bee=['Local\x20service\x20not\x20found:\x20','.tmp','invalid','serviceCode','reduce','path','Fix\x20the\x20JSON\x20syntax\x20and\x20run\x20service\x20validate\x20again.','Remove\x20or\x20migrate\x20','string','2646231sdUdqr','Service\x20manifest\x20file\x20not\x20found:\x20','Fix\x20the\x20JSON\x20file\x20or\x20move\x20it\x20aside\x20and\x20import\x20services\x20again.','registryIndex','sort','importedAt','errors','440LtEEwW','manifest','flatMap','push','kind','missing','service.json','warnings','606owtcEZ','Invalid\x20service\x20manifest\x20JSON:\x20','toISOString','services','splice','service','hex','validation','homeDirName','Run\x20lovrabet\x20service\x20list\x20to\x20see\x20imported\x20services.','updatedAt','code','].manifest','3722740MDedMt','sourceHash','schemaVersion','331688wojjsN','utf8','ENOENT','empty','slice','parse','cliPath','2848EIHgZi','$.services[','Service\x20manifest\x20validation\x20failed:\x0a','findIndex','commands','registry','commandCount','Cannot\x20write\x20service\x20registry:\x20','trim','Invalid\x20service\x20registry\x20JSON:\x20','target','message','map','digest','46370CKZlXA','4070864CrZOrw','join','source','report','stringify','696708pVLMNM','command','startsWith','normalizedManifest','manifests','description','].manifest.','version','length','homeDir','name','isArray','Service\x20registry\x20has\x20no\x20services\x20to\x20import.','localeCompare','Unsupported\x20schemaVersion:\x20','now','file'];a40_0x3b68=function(){return _0x260bee;};return a40_0x3b68();}(function(_0x56fe06,_0x351722){const _0x52fa59=a40_0x33ce,_0x1d0d72=_0x56fe06();while(!![]){try{const _0x40b89e=-parseInt(_0x52fa59(0x131))/0x1*(parseInt(_0x52fa59(0xfc))/0x2)+-parseInt(_0x52fa59(0x12a))/0x3+parseInt(_0x52fa59(0xf5))/0x4+-parseInt(_0x52fa59(0x10a))/0x5*(-parseInt(_0x52fa59(0x139))/0x6)+parseInt(_0x52fa59(0xf2))/0x7+parseInt(_0x52fa59(0x10b))/0x8+parseInt(_0x52fa59(0x110))/0x9;if(_0x40b89e===_0x351722)break;else _0x1d0d72['push'](_0x1d0d72['shift']());}catch(_0x143624){_0x1d0d72['push'](_0x1d0d72['shift']());}}}(a40_0x3b68,0x99939));import{createHash}from'node:crypto';import{existsSync,mkdirSync,readFileSync,renameSync,unlinkSync,writeFileSync}from'node:fs';import{homedir}from'node:os';import{dirname,resolve}from'node:path';import{normalizeServiceTreeManifest,validateServiceTreeManifest}from'@lovrabet/cli-framework';import{PRODUCT_CONFIG}from'../../constant/product.js';import{CliErrors}from'../../errors.js';export const SERVICE_REGISTRY_SCHEMA_VERSION=0x1;export const SERVICE_REGISTRY_FILE_NAME=a40_0x4fc44f(0x137);export function getServiceRegistryPath(_0x3d0c7b={}){const _0x2b8274=a40_0x4fc44f;return resolve(_0x3d0c7b[_0x2b8274(0x119)]??homedir(),PRODUCT_CONFIG[_0x2b8274(0x141)],SERVICE_REGISTRY_FILE_NAME);}export function emptyServiceRegistry(){return{'schemaVersion':SERVICE_REGISTRY_SCHEMA_VERSION,'services':[]};}export function readServiceRegistry(_0x1bfc33={}){const _0x22c0a1=a40_0x4fc44f,_0x222864=getServiceRegistryPath(_0x1bfc33);if(!existsSync(_0x222864))return emptyServiceRegistry();try{const _0x82188c=readFileSync(_0x222864,_0x22c0a1(0xf6));if(!_0x82188c['trim']())return emptyServiceRegistry();const _0x375937=JSON[_0x22c0a1(0xfa)](_0x82188c);if(_0x375937[_0x22c0a1(0xf4)]!==SERVICE_REGISTRY_SCHEMA_VERSION)throw CliErrors[_0x22c0a1(0x140)]('Unsupported\x20service\x20registry\x20schemaVersion:\x20'+String(_0x375937[_0x22c0a1(0xf4)]),_0x22c0a1(0x128)+_0x222864+'.');if(!Array['isArray'](_0x375937[_0x22c0a1(0x13c)]))return emptyServiceRegistry();return{'schemaVersion':SERVICE_REGISTRY_SCHEMA_VERSION,'updatedAt':_0x375937['updatedAt'],'services':_0x375937[_0x22c0a1(0x13c)]};}catch(_0xf7efe9){if(_0xf7efe9 instanceof Error&&_0xf7efe9[_0x22c0a1(0x11a)]==='CliError')throw _0xf7efe9;throw CliErrors[_0x22c0a1(0x140)](_0x22c0a1(0x105)+_0x222864,_0x22c0a1(0x12c));}}function a40_0x33ce(_0x25e38e,_0x56b7b1){_0x25e38e=_0x25e38e-0xf1;const _0x3b6859=a40_0x3b68();let _0x33ceb5=_0x3b6859[_0x25e38e];return _0x33ceb5;}export function writeServiceRegistry(_0x48b20d,_0x3230f5={}){const _0x213d3d=a40_0x4fc44f,_0x4d908f=getServiceRegistryPath(_0x3230f5),_0x499f41=dirname(_0x4d908f);!existsSync(_0x499f41)&&mkdirSync(_0x499f41,{'recursive':!![]});const _0x20d682=_0x4d908f+_0x213d3d(0x122);try{writeFileSync(_0x20d682,JSON[_0x213d3d(0x10f)](_0x48b20d,null,0x2)+'\x0a',{'encoding':_0x213d3d(0xf6),'mode':0x180}),renameSync(_0x20d682,_0x4d908f);}catch(_0x1d4867){try{unlinkSync(_0x20d682);}catch{}if(_0x1d4867?.[_0x213d3d(0x144)]===_0x213d3d(0xf7))throw CliErrors[_0x213d3d(0x140)](_0x213d3d(0x103)+_0x4d908f);throw _0x1d4867;}return _0x4d908f;}export function loadServiceManifestFromFile(_0xc9a279){const _0x19ee04=a40_0x4fc44f,_0x17bfad=resolve(_0xc9a279);if(!existsSync(_0x17bfad))throw CliErrors[_0x19ee04(0x140)](_0x19ee04(0x12b)+_0xc9a279);let _0x5acccf;const _0x2f2d78=readFileSync(_0x17bfad,_0x19ee04(0xf6));try{_0x5acccf=JSON['parse'](_0x2f2d78);}catch{throw CliErrors[_0x19ee04(0x140)](_0x19ee04(0x13a)+_0xc9a279,_0x19ee04(0x127));}const _0x375b3f=sha256(_0x2f2d78),_0x36e99f=extractLoadedServiceManifests(_0x5acccf,_0x375b3f),_0xd57e1f=aggregateValidationReports(_0x36e99f),_0x1f53aa=_0x36e99f[0x0];return{'filePath':_0x17bfad,'hash':_0x375b3f,'kind':isServiceRegistryLike(_0x5acccf)?_0x19ee04(0x101):_0x19ee04(0x132),'manifest':_0x1f53aa?.[_0x19ee04(0x132)]??_0x5acccf,'report':_0xd57e1f,'normalizedManifest':_0x36e99f['length']===0x1?_0x1f53aa?.[_0x19ee04(0x113)]:undefined,'manifests':_0x36e99f};}export function importServiceManifest(_0x2063c3,_0x5edede={}){const _0x4aa9be=a40_0x4fc44f,_0x12bcc4=loadServiceManifestFromFile(_0x2063c3);if(!_0x12bcc4['report']['ok'])throw CliErrors[_0x4aa9be(0x140)](formatValidationFailure(_0x12bcc4[_0x4aa9be(0x10e)]),'Fix\x20the\x20service\x20manifest\x20and\x20run\x20service\x20validate\x20again.');if(_0x12bcc4[_0x4aa9be(0x114)][_0x4aa9be(0x118)]===0x0)throw CliErrors[_0x4aa9be(0x140)](_0x4aa9be(0x11c),'Add\x20at\x20least\x20one\x20service\x20manifest,\x20then\x20run\x20service\x20import\x20again.');const _0x20941b=readServiceRegistry(_0x5edede),_0x5ae758=(_0x5edede[_0x4aa9be(0x11f)]??(()=>new Date()))()[_0x4aa9be(0x13b)](),_0x1f9cfc=[];let _0x5cd725=0x0,_0x610876=0x0;for(const _0x172484 of _0x12bcc4[_0x4aa9be(0x114)]){if(!_0x172484['normalizedManifest'])continue;const _0x1d472e=_0x172484[_0x4aa9be(0x113)][_0x4aa9be(0x13e)][_0x4aa9be(0x144)],_0x17ec08={'serviceCode':_0x1d472e,'version':_0x172484[_0x4aa9be(0x113)][_0x4aa9be(0x117)],'importedAt':_0x5ae758,'source':{'type':_0x4aa9be(0x120),'path':_0x12bcc4['filePath'],'hash':_0x172484[_0x4aa9be(0xf3)]},'manifest':_0x172484[_0x4aa9be(0x132)],'normalizedManifest':_0x172484[_0x4aa9be(0x113)]},_0x35144d=_0x20941b[_0x4aa9be(0x13c)]['findIndex'](_0x212232=>_0x212232[_0x4aa9be(0x124)]===_0x1d472e);_0x35144d>=0x0?(_0x20941b[_0x4aa9be(0x13c)][_0x35144d]=_0x17ec08,_0x610876++):(_0x20941b[_0x4aa9be(0x13c)]['push'](_0x17ec08),_0x5cd725++),_0x1f9cfc[_0x4aa9be(0x134)](_0x17ec08);}_0x20941b[_0x4aa9be(0x13c)][_0x4aa9be(0x12e)]((_0x43dfdb,_0x489da1)=>_0x43dfdb[_0x4aa9be(0x124)][_0x4aa9be(0x11d)](_0x489da1[_0x4aa9be(0x124)])),_0x20941b[_0x4aa9be(0x143)]=_0x5ae758;const _0x467a4a=writeServiceRegistry(_0x20941b,_0x5edede);return{'registryPath':_0x467a4a,'entry':_0x1f9cfc[0x0],'replaced':_0x1f9cfc[_0x4aa9be(0x118)]===0x1?_0x610876===0x1:_0x610876>0x0,'entries':_0x1f9cfc,'imported':_0x5cd725,'updated':_0x610876,'serviceCount':_0x20941b[_0x4aa9be(0x13c)][_0x4aa9be(0x118)]};}export function exportServiceManifest(_0x5ed4ba,_0x4c4b45,_0x1d5ee3={}){const _0x3fa561=a40_0x4fc44f,_0x22b9a1=getServiceRegistryPath(_0x1d5ee3),_0x2123b1=getLocalServiceEntry(_0x5ed4ba,_0x1d5ee3);if(!_0x2123b1)throw CliErrors['validation'](_0x3fa561(0x121)+_0x5ed4ba,_0x3fa561(0x142));const _0x3a8732=resolve(_0x4c4b45),_0x27ebb3=dirname(_0x3a8732);return!existsSync(_0x27ebb3)&&mkdirSync(_0x27ebb3,{'recursive':!![]}),writeFileSync(_0x3a8732,JSON['stringify'](_0x2123b1[_0x3fa561(0x132)],null,0x2)+'\x0a',{'encoding':'utf8','mode':0x180}),{'registryPath':_0x22b9a1,'filePath':_0x3a8732,'entry':_0x2123b1};}export function removeServiceManifest(_0x5671d3,_0x320933={}){const _0x16882c=a40_0x4fc44f,_0x72a048=readServiceRegistry(_0x320933),_0x4b9f17=_0x5671d3[_0x16882c(0x104)](),_0x282940=_0x72a048['services'][_0x16882c(0xff)](_0x3fdce2=>_0x3fdce2[_0x16882c(0x124)]===_0x4b9f17);if(_0x282940<0x0)throw CliErrors[_0x16882c(0x140)](_0x16882c(0x121)+_0x4b9f17,_0x16882c(0x142));const [_0xcf1466]=_0x72a048[_0x16882c(0x13c)][_0x16882c(0x13d)](_0x282940,0x1),_0x2d49ae=(_0x320933['now']??(()=>new Date()))()[_0x16882c(0x13b)]();_0x72a048['updatedAt']=_0x2d49ae;const _0xa75bba=writeServiceRegistry(_0x72a048,_0x320933);return{'registryPath':_0xa75bba,'entry':_0xcf1466,'serviceCount':_0x72a048[_0x16882c(0x13c)]['length']};}export function listLocalServices(_0x25c1cd={}){const _0xdd56a7=a40_0x4fc44f;return readServiceRegistry(_0x25c1cd)[_0xdd56a7(0x13c)];}export function getLocalServiceEntry(_0x38127a,_0x535590={}){const _0x41712f=a40_0x4fc44f;return readServiceRegistry(_0x535590)[_0x41712f(0x13c)]['find'](_0x3f94b2=>_0x3f94b2[_0x41712f(0x124)]===_0x38127a[_0x41712f(0x104)]());}export function listLocalServiceTrees(_0xf2209e={}){const _0x413c7f=a40_0x4fc44f;return readServiceRegistry(_0xf2209e)[_0x413c7f(0x13c)][_0x413c7f(0x108)](_0x4837d0=>_0x4837d0[_0x413c7f(0x113)]);}export function inspectServiceRegistry(_0x10006e={}){const _0x476bd6=a40_0x4fc44f,_0x4a909a=getServiceRegistryPath(_0x10006e);if(!existsSync(_0x4a909a))return emptyServiceRegistryInspection(_0x4a909a,_0x476bd6(0x136),![]);try{const _0x4bf4f4=readFileSync(_0x4a909a,_0x476bd6(0xf6));if(!_0x4bf4f4[_0x476bd6(0x104)]())return emptyServiceRegistryInspection(_0x4a909a,_0x476bd6(0xf8),!![]);const _0x286380=JSON[_0x476bd6(0xfa)](_0x4bf4f4);if(_0x286380[_0x476bd6(0xf4)]!==SERVICE_REGISTRY_SCHEMA_VERSION)return{...emptyServiceRegistryInspection(_0x4a909a,_0x476bd6(0x123),!![]),'schemaVersion':_0x286380[_0x476bd6(0xf4)],'message':_0x476bd6(0x11e)+String(_0x286380[_0x476bd6(0xf4)])};if(!Array['isArray'](_0x286380['services']))return{...emptyServiceRegistryInspection(_0x4a909a,'invalid',!![]),'schemaVersion':SERVICE_REGISTRY_SCHEMA_VERSION,'updatedAt':_0x286380[_0x476bd6(0x143)],'message':'services\x20must\x20be\x20an\x20array'};const _0x4cd738=_0x286380['services'][_0x476bd6(0x108)](summarizeLocalServiceEntry);return{'registryPath':_0x4a909a,'exists':!![],'status':'ok','schemaVersion':SERVICE_REGISTRY_SCHEMA_VERSION,'updatedAt':_0x286380[_0x476bd6(0x143)],'serviceCount':_0x4cd738[_0x476bd6(0x118)],'commandCount':_0x4cd738[_0x476bd6(0x125)]((_0x91ea6e,_0x1d4d97)=>_0x91ea6e+_0x1d4d97[_0x476bd6(0x102)],0x0),'services':_0x4cd738};}catch(_0x54fed7){return{...emptyServiceRegistryInspection(_0x4a909a,_0x476bd6(0x123),!![]),'message':_0x54fed7 instanceof Error?_0x54fed7[_0x476bd6(0x107)]:String(_0x54fed7)};}}export function formatValidationFailure(_0x429709){const _0x19394c=a40_0x4fc44f,_0x6803d4=_0x429709[_0x19394c(0x130)]['map'](_0x3a1dae=>_0x3a1dae[_0x19394c(0x126)]+':\x20'+_0x3a1dae[_0x19394c(0x107)]);return _0x19394c(0xfe)+_0x6803d4[_0x19394c(0x10c)]('\x0a');}function extractLoadedServiceManifests(_0x46312b,_0x147f1d){const _0x3d0bc3=a40_0x4fc44f;if(!isServiceRegistryLike(_0x46312b)){const _0xaf8022=_0x46312b,_0x13e5b6=validateServiceTreeManifest(_0xaf8022);return[{'manifest':_0xaf8022,'report':_0x13e5b6,'normalizedManifest':_0x13e5b6['ok']?normalizeServiceTreeManifest(_0xaf8022):undefined,'sourceHash':_0x147f1d}];}return _0x46312b[_0x3d0bc3(0x13c)][_0x3d0bc3(0x108)]((_0x1f63c4,_0x1c8cdc)=>{const _0xb7f231=_0x3d0bc3,_0x24d714=isObjectRecord(_0x1f63c4)?_0x1f63c4[_0xb7f231(0x132)]:undefined,_0x471e57=validateServiceTreeManifest(_0x24d714),_0x55a1f4=isObjectRecord(_0x1f63c4)&&typeof _0x1f63c4['serviceCode']===_0xb7f231(0x129)?_0x1f63c4[_0xb7f231(0x124)]:undefined;return{'manifest':_0x24d714,'report':_0x471e57,'normalizedManifest':_0x471e57['ok']?normalizeServiceTreeManifest(_0x24d714):undefined,'sourceHash':sha256(JSON['stringify'](_0x24d714,null,0x2)+'\x0a'),'registryIndex':_0x1c8cdc,'registryServiceCode':_0x55a1f4};});}function aggregateValidationReports(_0x266d8a){const _0x4ac253=a40_0x4fc44f,_0x18820b=_0x266d8a[_0x4ac253(0x133)](_0x1dba86=>_0x1dba86[_0x4ac253(0x12d)]===undefined?_0x1dba86[_0x4ac253(0x10e)][_0x4ac253(0x130)]:_0x1dba86[_0x4ac253(0x10e)][_0x4ac253(0x130)][_0x4ac253(0x108)](_0x47c1db=>({..._0x47c1db,'path':prefixRegistryIssuePath(_0x1dba86[_0x4ac253(0x12d)],_0x47c1db[_0x4ac253(0x126)])}))),_0x19cd2b=_0x266d8a[_0x4ac253(0x133)](_0x18c19d=>_0x18c19d['registryIndex']===undefined?_0x18c19d[_0x4ac253(0x10e)][_0x4ac253(0x138)]:_0x18c19d[_0x4ac253(0x10e)][_0x4ac253(0x138)][_0x4ac253(0x108)](_0x2e55b6=>({..._0x2e55b6,'path':prefixRegistryIssuePath(_0x18c19d[_0x4ac253(0x12d)],_0x2e55b6[_0x4ac253(0x126)])})));return{'ok':_0x18820b[_0x4ac253(0x118)]===0x0,'errors':_0x18820b,'warnings':_0x19cd2b};}function prefixRegistryIssuePath(_0x5318e5,_0xeb8bfa){const _0x50b464=a40_0x4fc44f;if(_0xeb8bfa==='$')return _0x50b464(0xfd)+_0x5318e5+_0x50b464(0xf1);if(_0xeb8bfa['startsWith']('$.'))return _0x50b464(0xfd)+_0x5318e5+'].manifest'+_0xeb8bfa['slice'](0x1);if(_0xeb8bfa[_0x50b464(0x112)]('$['))return _0x50b464(0xfd)+_0x5318e5+_0x50b464(0xf1)+_0xeb8bfa[_0x50b464(0xf9)](0x1);return _0x50b464(0xfd)+_0x5318e5+_0x50b464(0x116)+_0xeb8bfa;}function isServiceRegistryLike(_0x1ffaaf){const _0x159648=a40_0x4fc44f;return isObjectRecord(_0x1ffaaf)&&_0x1ffaaf[_0x159648(0xf4)]===SERVICE_REGISTRY_SCHEMA_VERSION&&Array['isArray'](_0x1ffaaf[_0x159648(0x13c)]);}function isObjectRecord(_0x46a9a1){const _0x250000=a40_0x4fc44f;return Boolean(_0x46a9a1)&&typeof _0x46a9a1==='object'&&!Array[_0x250000(0x11b)](_0x46a9a1);}function emptyServiceRegistryInspection(_0x1a1d82,_0x30cd1b,_0x14398c){return{'registryPath':_0x1a1d82,'exists':_0x14398c,'status':_0x30cd1b,'serviceCount':0x0,'commandCount':0x0,'services':[]};}function summarizeLocalServiceEntry(_0x53ecff){const _0x1acb2b=a40_0x4fc44f,_0x42e8ee=_0x53ecff[_0x1acb2b(0x113)],_0x555abf=_0x42e8ee[_0x1acb2b(0x100)][_0x1acb2b(0x108)](_0x220153=>({'path':_0x220153[_0x1acb2b(0xfb)],'description':_0x220153[_0x1acb2b(0x115)],'risk':_0x220153['risk'],'targetKind':_0x220153[_0x1acb2b(0x106)][_0x1acb2b(0x135)],'targetCommand':_0x220153[_0x1acb2b(0x106)][_0x1acb2b(0x111)]}));return{'serviceCode':_0x53ecff[_0x1acb2b(0x124)],'name':_0x42e8ee[_0x1acb2b(0x13e)][_0x1acb2b(0x11a)],'description':_0x42e8ee[_0x1acb2b(0x13e)][_0x1acb2b(0x115)],'version':_0x53ecff['version'],'importedAt':_0x53ecff[_0x1acb2b(0x12f)],'source':_0x53ecff[_0x1acb2b(0x10d)],'commandCount':_0x555abf[_0x1acb2b(0x118)],'commands':_0x555abf};}function sha256(_0x5bb494){const _0x5bac6b=a40_0x4fc44f;return createHash('sha256')['update'](_0x5bb494)[_0x5bac6b(0x109)](_0x5bac6b(0x13f));}
1
+ const a40_0x35eed1=a40_0x667d;(function(_0x675ec4,_0x20f9a3){const _0x287ae2=a40_0x667d,_0xd1ef56=_0x675ec4();while(!![]){try{const _0x30084f=parseInt(_0x287ae2(0x9b))/0x1+-parseInt(_0x287ae2(0xbf))/0x2*(-parseInt(_0x287ae2(0xc2))/0x3)+parseInt(_0x287ae2(0x9c))/0x4*(-parseInt(_0x287ae2(0x84))/0x5)+parseInt(_0x287ae2(0xa4))/0x6+parseInt(_0x287ae2(0xbd))/0x7+-parseInt(_0x287ae2(0x7b))/0x8*(-parseInt(_0x287ae2(0x7e))/0x9)+-parseInt(_0x287ae2(0xc8))/0xa*(parseInt(_0x287ae2(0xb8))/0xb);if(_0x30084f===_0x20f9a3)break;else _0xd1ef56['push'](_0xd1ef56['shift']());}catch(_0x4a44ff){_0xd1ef56['push'](_0xd1ef56['shift']());}}}(a40_0xe65e,0x5020c));import{createHash}from'node:crypto';import{existsSync,mkdirSync,readFileSync,renameSync,unlinkSync,writeFileSync}from'node:fs';import{homedir}from'node:os';import{dirname,resolve}from'node:path';import{normalizeServiceTreeManifest,validateServiceTreeManifest}from'@lovrabet/cli-framework';import{PRODUCT_CONFIG}from'../../constant/product.js';import{CliErrors}from'../../errors.js';export const SERVICE_REGISTRY_SCHEMA_VERSION=0x1;export const SERVICE_REGISTRY_FILE_NAME=a40_0x35eed1(0xca);export function getServiceRegistryPath(_0x3e6931={}){const _0x5c8b38=a40_0x35eed1;return resolve(_0x3e6931[_0x5c8b38(0x86)]??homedir(),PRODUCT_CONFIG['homeDirName'],SERVICE_REGISTRY_FILE_NAME);}export function emptyServiceRegistry(){return{'schemaVersion':SERVICE_REGISTRY_SCHEMA_VERSION,'services':[]};}export function readServiceRegistry(_0x3ee74c={}){const _0xb6ba05=a40_0x35eed1,_0x36dc73=getServiceRegistryPath(_0x3ee74c);if(!existsSync(_0x36dc73))return emptyServiceRegistry();try{const _0x442a05=readFileSync(_0x36dc73,'utf8');if(!_0x442a05[_0xb6ba05(0x9f)]())return emptyServiceRegistry();const _0x17eb3c=JSON['parse'](_0x442a05);if(_0x17eb3c[_0xb6ba05(0x7c)]!==SERVICE_REGISTRY_SCHEMA_VERSION)throw CliErrors[_0xb6ba05(0xa8)](_0xb6ba05(0x94)+String(_0x17eb3c['schemaVersion']),'Remove\x20or\x20migrate\x20'+_0x36dc73+'.');if(!Array[_0xb6ba05(0xce)](_0x17eb3c[_0xb6ba05(0xc1)]))return emptyServiceRegistry();return{'schemaVersion':SERVICE_REGISTRY_SCHEMA_VERSION,'updatedAt':_0x17eb3c[_0xb6ba05(0x92)],'services':_0x17eb3c[_0xb6ba05(0xc1)]};}catch(_0x20296c){if(_0x20296c instanceof Error&&_0x20296c[_0xb6ba05(0xc3)]===_0xb6ba05(0xb5))throw _0x20296c;throw CliErrors[_0xb6ba05(0xa8)]('Invalid\x20service\x20registry\x20JSON:\x20'+_0x36dc73,'Fix\x20the\x20JSON\x20file\x20or\x20move\x20it\x20aside\x20and\x20import\x20services\x20again.');}}export function writeServiceRegistry(_0x17704b,_0x31abe9={}){const _0x21a455=a40_0x35eed1,_0x539eed=getServiceRegistryPath(_0x31abe9),_0x268f07=dirname(_0x539eed);!existsSync(_0x268f07)&&mkdirSync(_0x268f07,{'recursive':!![]});const _0x592c44=_0x539eed+_0x21a455(0x7d);try{writeFileSync(_0x592c44,JSON['stringify'](_0x17704b,null,0x2)+'\x0a',{'encoding':_0x21a455(0xbb),'mode':0x180}),renameSync(_0x592c44,_0x539eed);}catch(_0x485b92){try{unlinkSync(_0x592c44);}catch{}if(_0x485b92?.[_0x21a455(0x93)]===_0x21a455(0xa1))throw CliErrors[_0x21a455(0xa8)](_0x21a455(0xbc)+_0x539eed);throw _0x485b92;}return _0x539eed;}export function loadServiceManifestFromFile(_0x6d35fa){const _0x55e545=a40_0x35eed1,_0x309dca=resolve(_0x6d35fa);if(!existsSync(_0x309dca))throw CliErrors[_0x55e545(0xa8)](_0x55e545(0xaa)+_0x6d35fa);let _0x2ea326;const _0x555cf9=readFileSync(_0x309dca,_0x55e545(0xbb));try{_0x2ea326=JSON[_0x55e545(0x9a)](_0x555cf9);}catch{throw CliErrors[_0x55e545(0xa8)](_0x55e545(0xa0)+_0x6d35fa,_0x55e545(0xb9));}const _0x3242c9=sha256(_0x555cf9),_0x22416b=extractLoadedServiceManifests(_0x2ea326,_0x3242c9),_0x23f103=aggregateValidationReports(_0x22416b),_0x4e69a1=_0x22416b[0x0];return{'filePath':_0x309dca,'hash':_0x3242c9,'kind':isServiceRegistryLike(_0x2ea326)?_0x55e545(0x8a):'manifest','manifest':_0x4e69a1?.[_0x55e545(0xae)]??_0x2ea326,'report':_0x23f103,'normalizedManifest':_0x22416b[_0x55e545(0xbe)]===0x1?_0x4e69a1?.[_0x55e545(0xc4)]:undefined,'manifests':_0x22416b};}export function importServiceManifest(_0x537672,_0x2568d2={}){const _0x2e082e=a40_0x35eed1,_0x1ce341=loadServiceManifestFromFile(_0x537672);if(!_0x1ce341[_0x2e082e(0xc0)]['ok'])throw CliErrors['validation'](formatValidationFailure(_0x1ce341['report']),_0x2e082e(0xc7));if(_0x1ce341[_0x2e082e(0x95)][_0x2e082e(0xbe)]===0x0)throw CliErrors[_0x2e082e(0xa8)](_0x2e082e(0x96),_0x2e082e(0xa6));const _0x1e276a=readServiceRegistry(_0x2568d2),_0x2d871b=(_0x2568d2[_0x2e082e(0xb6)]??(()=>new Date()))()['toISOString'](),_0x3ea7f0=[];let _0x5939fd=0x0,_0x2d7787=0x0;for(const _0x38bd1b of _0x1ce341[_0x2e082e(0x95)]){if(!_0x38bd1b[_0x2e082e(0xc4)])continue;const _0x3da609=_0x38bd1b['normalizedManifest'][_0x2e082e(0xaf)]['code'],_0x343530={'serviceCode':_0x3da609,'version':_0x38bd1b['normalizedManifest']['version'],'importedAt':_0x2d871b,'source':{'type':_0x2e082e(0xb4),'path':_0x1ce341[_0x2e082e(0x88)],'hash':_0x38bd1b['sourceHash']},'manifest':_0x38bd1b[_0x2e082e(0xae)],'normalizedManifest':_0x38bd1b[_0x2e082e(0xc4)]},_0x530c93=_0x1e276a['services']['findIndex'](_0x20052e=>_0x20052e[_0x2e082e(0x8b)]===_0x3da609);_0x530c93>=0x0?(_0x1e276a[_0x2e082e(0xc1)][_0x530c93]=_0x343530,_0x2d7787++):(_0x1e276a[_0x2e082e(0xc1)][_0x2e082e(0x90)](_0x343530),_0x5939fd++),_0x3ea7f0[_0x2e082e(0x90)](_0x343530);}_0x1e276a[_0x2e082e(0xc1)][_0x2e082e(0x8c)]((_0x50f93b,_0x231aec)=>_0x50f93b[_0x2e082e(0x8b)][_0x2e082e(0x81)](_0x231aec[_0x2e082e(0x8b)])),_0x1e276a[_0x2e082e(0x92)]=_0x2d871b;const _0x5dc981=writeServiceRegistry(_0x1e276a,_0x2568d2);return{'registryPath':_0x5dc981,'entry':_0x3ea7f0[0x0],'replaced':_0x3ea7f0[_0x2e082e(0xbe)]===0x1?_0x2d7787===0x1:_0x2d7787>0x0,'entries':_0x3ea7f0,'imported':_0x5939fd,'updated':_0x2d7787,'serviceCount':_0x1e276a['services'][_0x2e082e(0xbe)]};}export function exportServiceManifest(_0x632c7c,_0x14968c,_0x496c42={}){const _0x24fc03=a40_0x35eed1,_0xb0bc00=getServiceRegistryPath(_0x496c42),_0x525206=getLocalServiceEntry(_0x632c7c,_0x496c42);if(!_0x525206)throw CliErrors[_0x24fc03(0xa8)](_0x24fc03(0xa9)+_0x632c7c,_0x24fc03(0xba));const _0x39920c=resolve(_0x14968c),_0x37ba1d=dirname(_0x39920c);return!existsSync(_0x37ba1d)&&mkdirSync(_0x37ba1d,{'recursive':!![]}),writeFileSync(_0x39920c,JSON[_0x24fc03(0xab)](_0x525206['manifest'],null,0x2)+'\x0a',{'encoding':_0x24fc03(0xbb),'mode':0x180}),{'registryPath':_0xb0bc00,'filePath':_0x39920c,'entry':_0x525206};}function a40_0x667d(_0x5d30d9,_0xd33cfb){_0x5d30d9=_0x5d30d9-0x7b;const _0xe65e49=a40_0xe65e();let _0x667d15=_0xe65e49[_0x5d30d9];return _0x667d15;}export function removeServiceManifest(_0x4eb6de,_0x593fd8={}){const _0x1927c9=a40_0x35eed1,_0x361154=readServiceRegistry(_0x593fd8),_0x42f6d7=_0x4eb6de['trim'](),_0x5af1fb=_0x361154[_0x1927c9(0xc1)][_0x1927c9(0x9d)](_0x55361d=>_0x55361d[_0x1927c9(0x8b)]===_0x42f6d7);if(_0x5af1fb<0x0)throw CliErrors['validation'](_0x1927c9(0xa9)+_0x42f6d7,_0x1927c9(0xba));const [_0x592228]=_0x361154[_0x1927c9(0xc1)][_0x1927c9(0xa3)](_0x5af1fb,0x1),_0x4728f8=(_0x593fd8[_0x1927c9(0xb6)]??(()=>new Date()))()['toISOString']();_0x361154[_0x1927c9(0x92)]=_0x4728f8;const _0x571a14=writeServiceRegistry(_0x361154,_0x593fd8);return{'registryPath':_0x571a14,'entry':_0x592228,'serviceCount':_0x361154[_0x1927c9(0xc1)][_0x1927c9(0xbe)]};}function a40_0xe65e(){const _0x4923e9=['registry','serviceCode','sort','missing','reduce','map','push','digest','updatedAt','code','Unsupported\x20service\x20registry\x20schemaVersion:\x20','manifests','Service\x20registry\x20has\x20no\x20services\x20to\x20import.','commandCount','message','slice','parse','574694oDrQYe','44tFxfne','findIndex','startsWith','trim','Invalid\x20service\x20manifest\x20JSON:\x20','ENOENT','Unsupported\x20schemaVersion:\x20','splice','3535728xMZqSV','].manifest.','Add\x20at\x20least\x20one\x20service\x20manifest,\x20then\x20run\x20service\x20import\x20again.','target','validation','Local\x20service\x20not\x20found:\x20','Service\x20manifest\x20file\x20not\x20found:\x20','stringify','importedAt','update','manifest','service','command','hex','string','flatMap','file','CliError','now','$.services[','6446zbpGgs','Fix\x20the\x20JSON\x20syntax\x20and\x20run\x20service\x20validate\x20again.','Run\x20lovrabet\x20service\x20list\x20to\x20see\x20imported\x20services.','utf8','Cannot\x20write\x20service\x20registry:\x20','2232027SDtvJR','length','6PxiLHy','report','services','607938APxVBt','name','normalizedManifest','version','join','Fix\x20the\x20service\x20manifest\x20and\x20run\x20service\x20validate\x20again.','35780KrQkfN','find','service.json','source','registryIndex','path','isArray','542728uovQBz','schemaVersion','.tmp','63RAiugo','kind','sha256','localeCompare','description','errors','63980TLukqQ','commands','homeDir','].manifest','filePath','empty'];a40_0xe65e=function(){return _0x4923e9;};return a40_0xe65e();}export function listLocalServices(_0x42c25e={}){return readServiceRegistry(_0x42c25e)['services'];}export function getLocalServiceEntry(_0x1379f3,_0x389a35={}){const _0x310eea=a40_0x35eed1;return readServiceRegistry(_0x389a35)[_0x310eea(0xc1)][_0x310eea(0xc9)](_0x2ad072=>_0x2ad072[_0x310eea(0x8b)]===_0x1379f3[_0x310eea(0x9f)]());}export function listLocalServiceTrees(_0x4ab414={}){const _0xc13850=a40_0x35eed1;return readServiceRegistry(_0x4ab414)[_0xc13850(0xc1)][_0xc13850(0x8f)](_0xfa8584=>_0xfa8584[_0xc13850(0xc4)]);}export function inspectServiceRegistry(_0x26cc0d={}){const _0x2b145e=a40_0x35eed1,_0xc964d4=getServiceRegistryPath(_0x26cc0d);if(!existsSync(_0xc964d4))return emptyServiceRegistryInspection(_0xc964d4,_0x2b145e(0x8d),![]);try{const _0xcd88d5=readFileSync(_0xc964d4,_0x2b145e(0xbb));if(!_0xcd88d5[_0x2b145e(0x9f)]())return emptyServiceRegistryInspection(_0xc964d4,_0x2b145e(0x89),!![]);const _0x3121c2=JSON[_0x2b145e(0x9a)](_0xcd88d5);if(_0x3121c2['schemaVersion']!==SERVICE_REGISTRY_SCHEMA_VERSION)return{...emptyServiceRegistryInspection(_0xc964d4,'invalid',!![]),'schemaVersion':_0x3121c2['schemaVersion'],'message':_0x2b145e(0xa2)+String(_0x3121c2[_0x2b145e(0x7c)])};if(!Array[_0x2b145e(0xce)](_0x3121c2['services']))return{...emptyServiceRegistryInspection(_0xc964d4,'invalid',!![]),'schemaVersion':SERVICE_REGISTRY_SCHEMA_VERSION,'updatedAt':_0x3121c2['updatedAt'],'message':'services\x20must\x20be\x20an\x20array'};const _0x4aefea=_0x3121c2[_0x2b145e(0xc1)][_0x2b145e(0x8f)](summarizeLocalServiceEntry);return{'registryPath':_0xc964d4,'exists':!![],'status':'ok','schemaVersion':SERVICE_REGISTRY_SCHEMA_VERSION,'updatedAt':_0x3121c2[_0x2b145e(0x92)],'serviceCount':_0x4aefea[_0x2b145e(0xbe)],'commandCount':_0x4aefea[_0x2b145e(0x8e)]((_0x31a73b,_0x57272a)=>_0x31a73b+_0x57272a[_0x2b145e(0x97)],0x0),'services':_0x4aefea};}catch(_0x4e71ac){return{...emptyServiceRegistryInspection(_0xc964d4,'invalid',!![]),'message':_0x4e71ac instanceof Error?_0x4e71ac[_0x2b145e(0x98)]:String(_0x4e71ac)};}}export function formatValidationFailure(_0x11cdf5){const _0x5a9b58=a40_0x35eed1,_0x23a6a3=_0x11cdf5[_0x5a9b58(0x83)][_0x5a9b58(0x8f)](_0x2c311f=>_0x2c311f[_0x5a9b58(0xcd)]+':\x20'+_0x2c311f[_0x5a9b58(0x98)]);return'Service\x20manifest\x20validation\x20failed:\x0a'+_0x23a6a3[_0x5a9b58(0xc6)]('\x0a');}function extractLoadedServiceManifests(_0x4f921d,_0x5e4a31){const _0x5dbed1=a40_0x35eed1;if(!isServiceRegistryLike(_0x4f921d)){const _0x3514df=_0x4f921d,_0x445427=validateServiceTreeManifest(_0x3514df);return[{'manifest':_0x3514df,'report':_0x445427,'normalizedManifest':_0x445427['ok']?normalizeServiceTreeManifest(_0x3514df):undefined,'sourceHash':_0x5e4a31}];}return _0x4f921d[_0x5dbed1(0xc1)][_0x5dbed1(0x8f)]((_0x206046,_0x4b6c08)=>{const _0x35ebe1=_0x5dbed1,_0xf260a2=isObjectRecord(_0x206046)?_0x206046[_0x35ebe1(0xae)]:undefined,_0x5e6f57=validateServiceTreeManifest(_0xf260a2),_0x287ba7=isObjectRecord(_0x206046)&&typeof _0x206046[_0x35ebe1(0x8b)]===_0x35ebe1(0xb2)?_0x206046[_0x35ebe1(0x8b)]:undefined;return{'manifest':_0xf260a2,'report':_0x5e6f57,'normalizedManifest':_0x5e6f57['ok']?normalizeServiceTreeManifest(_0xf260a2):undefined,'sourceHash':sha256(JSON[_0x35ebe1(0xab)](_0xf260a2,null,0x2)+'\x0a'),'registryIndex':_0x4b6c08,'registryServiceCode':_0x287ba7};});}function aggregateValidationReports(_0xad4155){const _0x4bf3be=a40_0x35eed1,_0x160f49=_0xad4155[_0x4bf3be(0xb3)](_0x523f70=>_0x523f70[_0x4bf3be(0xcc)]===undefined?_0x523f70[_0x4bf3be(0xc0)][_0x4bf3be(0x83)]:_0x523f70[_0x4bf3be(0xc0)][_0x4bf3be(0x83)][_0x4bf3be(0x8f)](_0xcf4c70=>({..._0xcf4c70,'path':prefixRegistryIssuePath(_0x523f70[_0x4bf3be(0xcc)],_0xcf4c70[_0x4bf3be(0xcd)])}))),_0x2e7dcc=_0xad4155[_0x4bf3be(0xb3)](_0x2650e9=>_0x2650e9['registryIndex']===undefined?_0x2650e9[_0x4bf3be(0xc0)]['warnings']:_0x2650e9[_0x4bf3be(0xc0)]['warnings'][_0x4bf3be(0x8f)](_0x4dbc26=>({..._0x4dbc26,'path':prefixRegistryIssuePath(_0x2650e9[_0x4bf3be(0xcc)],_0x4dbc26[_0x4bf3be(0xcd)])})));return{'ok':_0x160f49[_0x4bf3be(0xbe)]===0x0,'errors':_0x160f49,'warnings':_0x2e7dcc};}function prefixRegistryIssuePath(_0x4bd04e,_0x24355a){const _0x1dd251=a40_0x35eed1;if(_0x24355a==='$')return _0x1dd251(0xb7)+_0x4bd04e+_0x1dd251(0x87);if(_0x24355a[_0x1dd251(0x9e)]('$.'))return'$.services['+_0x4bd04e+_0x1dd251(0x87)+_0x24355a[_0x1dd251(0x99)](0x1);if(_0x24355a[_0x1dd251(0x9e)]('$['))return'$.services['+_0x4bd04e+_0x1dd251(0x87)+_0x24355a[_0x1dd251(0x99)](0x1);return _0x1dd251(0xb7)+_0x4bd04e+_0x1dd251(0xa5)+_0x24355a;}function isServiceRegistryLike(_0xd2dcad){const _0x119dd4=a40_0x35eed1;return isObjectRecord(_0xd2dcad)&&_0xd2dcad[_0x119dd4(0x7c)]===SERVICE_REGISTRY_SCHEMA_VERSION&&Array['isArray'](_0xd2dcad[_0x119dd4(0xc1)]);}function isObjectRecord(_0x515719){const _0x28e9c8=a40_0x35eed1;return Boolean(_0x515719)&&typeof _0x515719==='object'&&!Array[_0x28e9c8(0xce)](_0x515719);}function emptyServiceRegistryInspection(_0x40771c,_0x24739f,_0x29afa6){return{'registryPath':_0x40771c,'exists':_0x29afa6,'status':_0x24739f,'serviceCount':0x0,'commandCount':0x0,'services':[]};}function summarizeLocalServiceEntry(_0x5840d3){const _0x398df2=a40_0x35eed1,_0x272776=_0x5840d3['normalizedManifest'],_0x4ddfe6=_0x272776[_0x398df2(0x85)][_0x398df2(0x8f)](_0xb11e30=>({'path':_0xb11e30['cliPath'],'description':_0xb11e30[_0x398df2(0x82)],'risk':_0xb11e30['risk'],'targetKind':_0xb11e30['target'][_0x398df2(0x7f)],'targetCommand':_0xb11e30[_0x398df2(0xa7)][_0x398df2(0xb0)]}));return{'serviceCode':_0x5840d3[_0x398df2(0x8b)],'name':_0x272776['service']['name'],'description':_0x272776[_0x398df2(0xaf)][_0x398df2(0x82)],'version':_0x5840d3[_0x398df2(0xc5)],'importedAt':_0x5840d3[_0x398df2(0xac)],'source':_0x5840d3[_0x398df2(0xcb)],'commandCount':_0x4ddfe6[_0x398df2(0xbe)],'commands':_0x4ddfe6};}function sha256(_0x29c0e7){const _0x3a1df5=a40_0x35eed1;return createHash(_0x3a1df5(0x80))[_0x3a1df5(0xad)](_0x29c0e7)[_0x3a1df5(0x91)](_0x3a1df5(0xb1));}
@@ -1 +1 @@
1
- const a41_0x3905cc=a41_0x1f54;function a41_0x1f54(_0x417ef2,_0x24d54a){_0x417ef2=_0x417ef2-0xeb;const _0x21f9d1=a41_0x21f9();let _0x1f54ce=_0x21f9d1[_0x417ef2];return _0x1f54ce;}(function(_0x5a3240,_0xb0d166){const _0x2cc69e=a41_0x1f54,_0x5de04a=_0x5a3240();while(!![]){try{const _0x1a4937=parseInt(_0x2cc69e(0xf6))/0x1+parseInt(_0x2cc69e(0xfe))/0x2*(-parseInt(_0x2cc69e(0x108))/0x3)+parseInt(_0x2cc69e(0xec))/0x4*(-parseInt(_0x2cc69e(0xff))/0x5)+parseInt(_0x2cc69e(0xeb))/0x6*(-parseInt(_0x2cc69e(0x106))/0x7)+-parseInt(_0x2cc69e(0xfb))/0x8+-parseInt(_0x2cc69e(0x107))/0x9*(parseInt(_0x2cc69e(0x10b))/0xa)+parseInt(_0x2cc69e(0x10d))/0xb*(parseInt(_0x2cc69e(0x103))/0xc);if(_0x1a4937===_0xb0d166)break;else _0x5de04a['push'](_0x5de04a['shift']());}catch(_0x3b293e){_0x5de04a['push'](_0x5de04a['shift']());}}}(a41_0x21f9,0xea75b));import{existsSync,lstatSync,mkdirSync,writeFileSync}from'node:fs';import{dirname,resolve}from'node:path';import{CliErrors}from'../../../errors.js';function a41_0x21f9(){const _0x2ae71d=['map','84OZfEIr','Create\x20a\x20local\x20self-contained\x20runtime\x20Skill\x20draft','Create\x20a\x20local\x20runtime\x20Skill\x20draft\x20without\x20uploading\x20or\x20publishing\x20it.','2475907IJGfNd','117pxBvTa','1306077yZPabJ','target','skillDir','1119390qNAyAK','path','3805043tVypPG','6FXetSx','4Ywkczj','name','utf8','skillName','str','validation','WRITE','Pass\x20--force\x20to\x20overwrite\x20generated\x20template\x20files.','content','skill','1727839tCSbBn','files','type','Skill\x20directory\x20already\x20exists:\x20','force','4014352CFkDUh','rendered','Skill\x20path\x20already\x20exists\x20and\x20is\x20not\x20a\x20writable\x20directory:\x20','4dzyLqT','37315YKyQjk','isSymbolicLink','bool'];a41_0x21f9=function(){return _0x2ae71d;};return a41_0x21f9();}import{CREATE_NAME_FLAG,FORCE_FLAG,TARGET_FLAG,TYPE_FLAG}from'../flags.js';import{DEFAULT_SKILL_TARGET,renderSkillTemplate}from'../templates.js';export const createCommand={'service':a41_0x3905cc(0xf5),'command':'create','description':a41_0x3905cc(0x104),'risk':'write','requiresAuth':![],'requiresAppCode':![],'flags':[CREATE_NAME_FLAG,TYPE_FLAG,TARGET_FLAG,FORCE_FLAG],async 'dryRun'(_0x5e2993){const _0x272c7c=a41_0x3905cc,_0x368a41=buildSkillCreatePlan(_0x5e2993[_0x272c7c(0xf0)]('name'),_0x5e2993[_0x272c7c(0xf0)](_0x272c7c(0xf8)),_0x5e2993['str']('target'));return{'method':_0x272c7c(0xf2),'url':_0x368a41[_0x272c7c(0x10a)],'body':{'skillName':_0x368a41[_0x272c7c(0xfc)][_0x272c7c(0xef)],'type':_0x368a41[_0x272c7c(0xfc)]['type'],'selfContained':!![],'files':_0x368a41['rendered'][_0x272c7c(0xf7)][_0x272c7c(0x102)](_0x41730a=>_0x41730a[_0x272c7c(0x10c)])},'description':_0x272c7c(0x105)};},async 'execute'(_0x2e4cac){const _0x1e6e71=a41_0x3905cc,_0x4f7c99=buildSkillCreatePlan(_0x2e4cac[_0x1e6e71(0xf0)](_0x1e6e71(0xed)),_0x2e4cac[_0x1e6e71(0xf0)](_0x1e6e71(0xf8)),_0x2e4cac[_0x1e6e71(0xf0)](_0x1e6e71(0x109)));return writeSkillDraft(_0x4f7c99,_0x2e4cac[_0x1e6e71(0x101)](_0x1e6e71(0xfa))),{'ok':!![],'data':{'skillName':_0x4f7c99[_0x1e6e71(0xfc)]['skillName'],'type':_0x4f7c99[_0x1e6e71(0xfc)][_0x1e6e71(0xf8)],'dir':_0x4f7c99['skillDir'],'files':_0x4f7c99[_0x1e6e71(0xfc)][_0x1e6e71(0xf7)][_0x1e6e71(0x102)](_0x47758e=>_0x47758e['path'])},'message':'Created\x20local\x20Skill\x20draft\x20'+_0x4f7c99[_0x1e6e71(0xfc)]['skillName']};}};function buildSkillCreatePlan(_0x36f4d6,_0x51ecf6,_0x159500){const _0xda4832=a41_0x3905cc,_0x2c6ed9=renderSkillTemplate({'skillName':_0x36f4d6,'type':_0x51ecf6}),_0x29ca08=resolve(normalizeSkillTarget(_0x159500));return{'rendered':_0x2c6ed9,'targetRoot':_0x29ca08,'skillDir':resolve(_0x29ca08,_0x2c6ed9[_0xda4832(0xef)])};}function normalizeSkillTarget(_0x2a9dab){return(_0x2a9dab||DEFAULT_SKILL_TARGET)['trim']()||DEFAULT_SKILL_TARGET;}function writeSkillDraft(_0x71ec12,_0x31d719){const _0x5fb64c=a41_0x3905cc;if(existsSync(_0x71ec12['skillDir'])){const _0x329203=lstatSync(_0x71ec12[_0x5fb64c(0x10a)]);if(!_0x329203['isDirectory']()||_0x329203['isSymbolicLink']())throw CliErrors[_0x5fb64c(0xf1)](_0x5fb64c(0xfd)+_0x71ec12[_0x5fb64c(0x10a)]);if(!_0x31d719)throw CliErrors['validation'](_0x5fb64c(0xf9)+_0x71ec12['skillDir'],_0x5fb64c(0xf3));}for(const _0x3c1728 of _0x71ec12[_0x5fb64c(0xfc)][_0x5fb64c(0xf7)]){const _0x307f16=resolve(_0x71ec12['skillDir'],_0x3c1728[_0x5fb64c(0x10c)]),_0x76f9da=dirname(_0x307f16);mkdirSync(_0x76f9da,{'recursive':!![]});if(existsSync(_0x307f16)&&lstatSync(_0x307f16)[_0x5fb64c(0x100)]())throw CliErrors[_0x5fb64c(0xf1)]('Refusing\x20to\x20overwrite\x20symlink:\x20'+_0x307f16);writeFileSync(_0x307f16,_0x3c1728[_0x5fb64c(0xf4)],_0x5fb64c(0xee));}}
1
+ const a41_0x345ac6=a41_0x12a1;(function(_0x46a63e,_0x2dd647){const _0x3de1cd=a41_0x12a1,_0xca5f58=_0x46a63e();while(!![]){try{const _0x388770=-parseInt(_0x3de1cd(0xf4))/0x1*(parseInt(_0x3de1cd(0x107))/0x2)+-parseInt(_0x3de1cd(0x108))/0x3*(parseInt(_0x3de1cd(0x10a))/0x4)+parseInt(_0x3de1cd(0x102))/0x5+parseInt(_0x3de1cd(0x115))/0x6+parseInt(_0x3de1cd(0x100))/0x7*(-parseInt(_0x3de1cd(0xf6))/0x8)+-parseInt(_0x3de1cd(0x113))/0x9*(parseInt(_0x3de1cd(0x103))/0xa)+-parseInt(_0x3de1cd(0x119))/0xb*(-parseInt(_0x3de1cd(0x101))/0xc);if(_0x388770===_0x2dd647)break;else _0xca5f58['push'](_0xca5f58['shift']());}catch(_0x38cc14){_0xca5f58['push'](_0xca5f58['shift']());}}}(a41_0xad88,0x748f9));import{existsSync,lstatSync,mkdirSync,writeFileSync}from'node:fs';import{dirname,resolve}from'node:path';import{CliErrors}from'../../../errors.js';import{CREATE_NAME_FLAG,FORCE_FLAG,TARGET_FLAG,TYPE_FLAG}from'../flags.js';import{DEFAULT_SKILL_TARGET,renderSkillTemplate}from'../templates.js';export const createCommand={'service':a41_0x345ac6(0x105),'command':a41_0x345ac6(0x10f),'description':a41_0x345ac6(0xf3),'risk':a41_0x345ac6(0x10e),'requiresAuth':![],'requiresAppCode':![],'flags':[CREATE_NAME_FLAG,TYPE_FLAG,TARGET_FLAG,FORCE_FLAG],async 'dryRun'(_0x427a23){const _0x2b2a37=a41_0x345ac6,_0x3ae1c5=buildSkillCreatePlan(_0x427a23[_0x2b2a37(0xfc)](_0x2b2a37(0xfb)),_0x427a23[_0x2b2a37(0xfc)](_0x2b2a37(0xf8)),_0x427a23['str'](_0x2b2a37(0x10d)));return{'method':_0x2b2a37(0xfa),'url':_0x3ae1c5[_0x2b2a37(0x118)],'body':{'skillName':_0x3ae1c5[_0x2b2a37(0x116)]['skillName'],'type':_0x3ae1c5[_0x2b2a37(0x116)]['type'],'selfContained':!![],'files':_0x3ae1c5[_0x2b2a37(0x116)][_0x2b2a37(0x111)]['map'](_0x4dff8d=>_0x4dff8d[_0x2b2a37(0xff)])},'description':_0x2b2a37(0x112)};},async 'execute'(_0x54519a){const _0x4fc1b2=a41_0x345ac6,_0x57e6b2=buildSkillCreatePlan(_0x54519a['str'](_0x4fc1b2(0xfb)),_0x54519a[_0x4fc1b2(0xfc)](_0x4fc1b2(0xf8)),_0x54519a[_0x4fc1b2(0xfc)](_0x4fc1b2(0x10d)));return writeSkillDraft(_0x57e6b2,_0x54519a[_0x4fc1b2(0x117)](_0x4fc1b2(0xf7))),{'ok':!![],'data':{'skillName':_0x57e6b2[_0x4fc1b2(0x116)][_0x4fc1b2(0x106)],'type':_0x57e6b2[_0x4fc1b2(0x116)][_0x4fc1b2(0xf8)],'dir':_0x57e6b2[_0x4fc1b2(0x118)],'files':_0x57e6b2[_0x4fc1b2(0x116)][_0x4fc1b2(0x111)]['map'](_0x36f506=>_0x36f506[_0x4fc1b2(0xff)])},'message':_0x4fc1b2(0x10b)+_0x57e6b2['rendered']['skillName']};}};function buildSkillCreatePlan(_0x74aa79,_0x21f4dd,_0x3bdd41){const _0x3a7bdc=renderSkillTemplate({'skillName':_0x74aa79,'type':_0x21f4dd}),_0xd66ee9=resolve(normalizeSkillTarget(_0x3bdd41));return{'rendered':_0x3a7bdc,'targetRoot':_0xd66ee9,'skillDir':resolve(_0xd66ee9,_0x3a7bdc['skillName'])};}function a41_0xad88(){const _0x4c054a=['force','type','Skill\x20directory\x20already\x20exists:\x20','WRITE','name','str','content','Pass\x20--force\x20to\x20overwrite\x20generated\x20template\x20files.','path','7nEOuYa','545268UrktsL','2919365pWPRuU','4793340eldJgZ','Refusing\x20to\x20overwrite\x20symlink:\x20','skill','skillName','2IdceDh','40671HtMiYT','trim','36mufJWe','Created\x20local\x20Skill\x20draft\x20','utf8','target','write','create','validation','files','Create\x20a\x20local\x20runtime\x20Skill\x20draft\x20without\x20uploading\x20or\x20publishing\x20it.','9irDRnx','isSymbolicLink','418086wWIrTG','rendered','bool','skillDir','297uQUkbb','Create\x20a\x20local\x20self-contained\x20runtime\x20Skill\x20draft','756554coQQTp','isDirectory','360584VWyzNR'];a41_0xad88=function(){return _0x4c054a;};return a41_0xad88();}function a41_0x12a1(_0x39b7a9,_0xaa448a){_0x39b7a9=_0x39b7a9-0xf3;const _0xad883c=a41_0xad88();let _0x12a14e=_0xad883c[_0x39b7a9];return _0x12a14e;}function normalizeSkillTarget(_0x40ba90){const _0x10499e=a41_0x345ac6;return(_0x40ba90||DEFAULT_SKILL_TARGET)[_0x10499e(0x109)]()||DEFAULT_SKILL_TARGET;}function writeSkillDraft(_0x296f00,_0x1baba9){const _0x53a338=a41_0x345ac6;if(existsSync(_0x296f00[_0x53a338(0x118)])){const _0xe7155e=lstatSync(_0x296f00['skillDir']);if(!_0xe7155e[_0x53a338(0xf5)]()||_0xe7155e[_0x53a338(0x114)]())throw CliErrors[_0x53a338(0x110)]('Skill\x20path\x20already\x20exists\x20and\x20is\x20not\x20a\x20writable\x20directory:\x20'+_0x296f00['skillDir']);if(!_0x1baba9)throw CliErrors['validation'](_0x53a338(0xf9)+_0x296f00[_0x53a338(0x118)],_0x53a338(0xfe));}for(const _0x132806 of _0x296f00[_0x53a338(0x116)]['files']){const _0x542853=resolve(_0x296f00[_0x53a338(0x118)],_0x132806[_0x53a338(0xff)]),_0x16dafa=dirname(_0x542853);mkdirSync(_0x16dafa,{'recursive':!![]});if(existsSync(_0x542853)&&lstatSync(_0x542853)[_0x53a338(0x114)]())throw CliErrors[_0x53a338(0x110)](_0x53a338(0x104)+_0x542853);writeFileSync(_0x542853,_0x132806[_0x53a338(0xfd)],_0x53a338(0x10c));}}
@@ -1 +1 @@
1
- function a42_0xae0e(){const _0xa2d667=['99qxwCia','envName','../../../core/api-client.js','scope','updated','accessKey','18WTCzcX','skipped','map','skillCode','length','push','30VwmMhT','write','action','Business\x20Skill\x20installation\x20requires\x20authentication.\x20Run\x20`lovrabet\x20auth\x20login`,\x20or\x20use\x20`lovrabet\x20cli-skill\x20install`\x20for\x20CLI\x20Built-in\x20Skill\x20setup.','290892FBHiKY','446035YkytpG','removed','3755904BdDdBc','trim','created','skill','104ZhZlWc','unchanged','7313702LICOef','\x20personal\x20and\x20','version','includes','733740uFzqWB','Install\x20current-app\x20business\x20Skills\x20into\x20user-level\x20Agent\x20skill\x20directories','authRequired','5436044ZmEdmA','personal','flatMap','company','code','filter','../../../skills/runtime-skill-sync.js','appCode','production','reduce','Installed\x20','all','145434Ziadff'];a42_0xae0e=function(){return _0xa2d667;};return a42_0xae0e();}const a42_0x4df4f0=a42_0x2e5a;(function(_0x55bc5c,_0x349152){const _0x1e73d0=a42_0x2e5a,_0x122501=_0x55bc5c();while(!![]){try{const _0x544ef9=parseInt(_0x1e73d0(0x130))/0x1*(parseInt(_0x1e73d0(0x156))/0x2)+parseInt(_0x1e73d0(0x13d))/0x3+-parseInt(_0x1e73d0(0x14a))/0x4+-parseInt(_0x1e73d0(0x13b))/0x5*(-parseInt(_0x1e73d0(0x136))/0x6)+parseInt(_0x1e73d0(0x13a))/0x7*(parseInt(_0x1e73d0(0x141))/0x8)+-parseInt(_0x1e73d0(0x157))/0x9*(parseInt(_0x1e73d0(0x147))/0xa)+-parseInt(_0x1e73d0(0x143))/0xb;if(_0x544ef9===_0x349152)break;else _0x122501['push'](_0x122501['shift']());}catch(_0x1e848e){_0x122501['push'](_0x122501['shift']());}}}(a42_0xae0e,0xaed62));import{CliErrors}from'../../../errors.js';import{CODE_FLAG,SCOPE_FLAG}from'../flags.js';import{normalizeSyncScopes}from'../scopes.js';import{summarizeRuntimeSkill}from'../summary.js';export const installCommand={'service':a42_0x4df4f0(0x140),'command':'install','description':a42_0x4df4f0(0x148),'risk':a42_0x4df4f0(0x137),'requiresAuth':!![],'requiresAppCode':!![],'hasFormat':![],'flags':[CODE_FLAG,SCOPE_FLAG],async 'execute'(_0x54142c){return syncRuntimeSkills(_0x54142c);}};async function syncRuntimeSkills(_0x539f9b){const _0x52bdfc=a42_0x4df4f0,{downloadRuntimeSkillPackage:_0x251d82,listRuntimeSkills:_0x13cb7b}=await import(_0x52bdfc(0x159)),{linkEffectiveRuntimeSkills:_0x2abea6,materializeRuntimeSkill:_0x5de274,pruneStaleRuntimeSkillCache:_0x206825,pruneStaleRuntimeSkillLinks:_0x4a42e2}=await import(_0x52bdfc(0x150)),_0x116985=_0x539f9b['str'](_0x52bdfc(0x14e)),_0x3edcfd=normalizeSyncScopes(_0x539f9b['str'](_0x52bdfc(0x12d))),_0x53b05e=_0x539f9b[_0x52bdfc(0x158)]??_0x52bdfc(0x152),_0x387e50=_0x539f9b[_0x52bdfc(0x12f)];if(!_0x387e50)throw CliErrors[_0x52bdfc(0x149)](_0x52bdfc(0x139));const _0x87b67b=await Promise[_0x52bdfc(0x155)](_0x3edcfd[_0x52bdfc(0x132)](_0x37fc7a=>_0x13cb7b({'appCode':_0x539f9b[_0x52bdfc(0x151)],'scope':_0x37fc7a,'code':_0x116985[_0x52bdfc(0x13e)]()||undefined}))),_0x3fb3f5=_0x3edcfd[_0x52bdfc(0x146)](_0x52bdfc(0x14b))?_0x87b67b[_0x52bdfc(0x14c)]((_0x3c7099,_0x57dfe8)=>_0x3edcfd[_0x57dfe8]===_0x52bdfc(0x14b)?_0x3c7099[_0x52bdfc(0x14b)]:[]):[],_0x5e10f6=_0x3edcfd[_0x52bdfc(0x146)]('company')?_0x87b67b[_0x52bdfc(0x14c)]((_0x12b1cd,_0x55a5c2)=>_0x3edcfd[_0x55a5c2]===_0x52bdfc(0x14d)?_0x12b1cd[_0x52bdfc(0x14d)]:[]):[],_0x44c066=new Set([..._0x3fb3f5[_0x52bdfc(0x132)](_0x28e062=>_0x28e062[_0x52bdfc(0x133)]?.[_0x52bdfc(0x13e)]())[_0x52bdfc(0x14f)](_0x4a5eda=>Boolean(_0x4a5eda)),..._0x5e10f6[_0x52bdfc(0x132)](_0x316e63=>_0x316e63[_0x52bdfc(0x133)]?.[_0x52bdfc(0x13e)]())['filter'](_0x59bc9a=>Boolean(_0x59bc9a))]),_0x3b1fad=_0x116985[_0x52bdfc(0x13e)]()?[_0x116985[_0x52bdfc(0x13e)]()]:undefined,_0x2fbaea=_0x3edcfd[_0x52bdfc(0x134)]===0x2&&_0x3edcfd[_0x52bdfc(0x146)](_0x52bdfc(0x14b))&&_0x3edcfd[_0x52bdfc(0x146)](_0x52bdfc(0x14d)),_0x1f1f9b=_0x2fbaea?_0x4a42e2(_0x539f9b[_0x52bdfc(0x151)],_0x44c066,{},_0x3b1fad):[],_0x444c94=_0x206825({'env':_0x53b05e,'accessKey':_0x387e50,'appCode':_0x539f9b[_0x52bdfc(0x151)],'activeSkillCodes':_0x44c066,'pruneSkillCodes':_0x3b1fad,'scopes':_0x3edcfd}),_0x482385=[];for(const _0x310dfd of _0x3fb3f5){_0x482385['push'](_0x5de274(_0x310dfd,'personal',{'env':_0x53b05e,'accessKey':_0x387e50,'appCode':_0x539f9b[_0x52bdfc(0x151)],'packageBytes':await downloadSkillPackage(_0x310dfd,_0x52bdfc(0x14b),_0x539f9b[_0x52bdfc(0x151)],_0x251d82)}));}for(const _0x127865 of _0x5e10f6){_0x482385[_0x52bdfc(0x135)](_0x5de274(_0x127865,_0x52bdfc(0x14d),{'env':_0x53b05e,'accessKey':_0x387e50,'appCode':_0x539f9b[_0x52bdfc(0x151)],'packageBytes':await downloadSkillPackage(_0x127865,_0x52bdfc(0x14d),_0x539f9b[_0x52bdfc(0x151)],_0x251d82)}));}const _0x301c9f=_0x2abea6(_0x482385,_0x539f9b[_0x52bdfc(0x151)]),_0x18ebe=countLinkActions(_0x301c9f);return{'ok':!![],'data':{'appCode':_0x539f9b['appCode'],'personal':_0x3fb3f5[_0x52bdfc(0x134)],'company':_0x5e10f6['length'],'materialized':_0x482385[_0x52bdfc(0x134)],'links':{'total':_0x301c9f[_0x52bdfc(0x134)],'created':_0x18ebe[_0x52bdfc(0x13f)]??0x0,'updated':_0x18ebe[_0x52bdfc(0x12e)]??0x0,'unchanged':_0x18ebe[_0x52bdfc(0x142)]??0x0,'skipped':0x0,'conflicted':0x0},'pruned':{'links':_0x1f1f9b[_0x52bdfc(0x14f)](_0x5d5b1e=>_0x5d5b1e['action']==='removed')['length'],'cacheDirs':_0x444c94[_0x52bdfc(0x14f)](_0x44b2ce=>_0x44b2ce[_0x52bdfc(0x138)]===_0x52bdfc(0x13c))[_0x52bdfc(0x134)],'skipped':[..._0x1f1f9b,..._0x444c94][_0x52bdfc(0x14f)](_0x1f37fc=>_0x1f37fc[_0x52bdfc(0x138)]===_0x52bdfc(0x131))[_0x52bdfc(0x134)]},'skills':{'personal':_0x3fb3f5[_0x52bdfc(0x132)](summarizeRuntimeSkill),'company':_0x5e10f6[_0x52bdfc(0x132)](summarizeRuntimeSkill)}},'message':_0x52bdfc(0x154)+_0x3fb3f5['length']+_0x52bdfc(0x144)+_0x5e10f6[_0x52bdfc(0x134)]+'\x20company\x20Skill(s).'};}async function downloadSkillPackage(_0x4660b0,_0x187926,_0x16e30f,_0x558082){const _0x455a0e=a42_0x4df4f0,_0x2fb0af=_0x4660b0[_0x455a0e(0x145)]?.[_0x455a0e(0x13e)]();return _0x2fb0af?_0x558082(_0x187926,_0x4660b0[_0x455a0e(0x133)],_0x16e30f,_0x2fb0af):_0x558082(_0x187926,_0x4660b0[_0x455a0e(0x133)],_0x16e30f);}function a42_0x2e5a(_0x41528a,_0x376a45){_0x41528a=_0x41528a-0x12d;const _0xae0ecd=a42_0xae0e();let _0x2e5a62=_0xae0ecd[_0x41528a];return _0x2e5a62;}function countLinkActions(_0x2382f6){const _0x47d909=a42_0x4df4f0;return _0x2382f6[_0x47d909(0x153)]((_0x10fb56,_0x121889)=>{const _0x2a9ac7=_0x47d909;return _0x10fb56[_0x121889[_0x2a9ac7(0x138)]]=(_0x10fb56[_0x121889[_0x2a9ac7(0x138)]]??0x0)+0x1,_0x10fb56;},{});}
1
+ const a42_0x2064d3=a42_0x2af4;(function(_0x34a8e3,_0x58e9f4){const _0x3aa589=a42_0x2af4,_0x198fef=_0x34a8e3();while(!![]){try{const _0x3fa793=parseInt(_0x3aa589(0xc1))/0x1+parseInt(_0x3aa589(0xb1))/0x2+parseInt(_0x3aa589(0xb4))/0x3*(parseInt(_0x3aa589(0xce))/0x4)+-parseInt(_0x3aa589(0xd1))/0x5*(-parseInt(_0x3aa589(0xb3))/0x6)+parseInt(_0x3aa589(0xcf))/0x7*(-parseInt(_0x3aa589(0xb2))/0x8)+parseInt(_0x3aa589(0xa9))/0x9*(parseInt(_0x3aa589(0xab))/0xa)+parseInt(_0x3aa589(0xc7))/0xb*(-parseInt(_0x3aa589(0xa5))/0xc);if(_0x3fa793===_0x58e9f4)break;else _0x198fef['push'](_0x198fef['shift']());}catch(_0x1634a5){_0x198fef['push'](_0x198fef['shift']());}}}(a42_0x2e0b,0x5a168));import{CliErrors}from'../../../errors.js';import{CODE_FLAG,SCOPE_FLAG}from'../flags.js';function a42_0x2af4(_0x27be11,_0x44832d){_0x27be11=_0x27be11-0xa3;const _0x2e0b9=a42_0x2e0b();let _0x2af4e2=_0x2e0b9[_0x27be11];return _0x2af4e2;}import{normalizeSyncScopes}from'../scopes.js';import{summarizeRuntimeSkill}from'../summary.js';export const installCommand={'service':a42_0x2064d3(0xc8),'command':a42_0x2064d3(0xbf),'description':a42_0x2064d3(0xba),'risk':a42_0x2064d3(0xbe),'requiresAuth':!![],'requiresAppCode':!![],'hasFormat':![],'flags':[CODE_FLAG,SCOPE_FLAG],async 'execute'(_0x5eeae0){return syncRuntimeSkills(_0x5eeae0);}};async function syncRuntimeSkills(_0x302e58){const _0x9b4b78=a42_0x2064d3,{downloadRuntimeSkillPackage:_0x20dc70,listRuntimeSkills:_0x15b836}=await import(_0x9b4b78(0xa7)),{linkEffectiveRuntimeSkills:_0x55def4,materializeRuntimeSkill:_0x31fb19,pruneStaleRuntimeSkillCache:_0x1ff1cc,pruneStaleRuntimeSkillLinks:_0x341b37}=await import(_0x9b4b78(0xb6)),_0x34b335=_0x302e58[_0x9b4b78(0xad)](_0x9b4b78(0xcb)),_0xb33d2d=normalizeSyncScopes(_0x302e58[_0x9b4b78(0xad)]('scope')),_0x4d2c30=_0x302e58[_0x9b4b78(0xa4)]??_0x9b4b78(0xae),_0x15f227=_0x302e58[_0x9b4b78(0xa6)];if(!_0x15f227)throw CliErrors[_0x9b4b78(0xcc)]('Business\x20Skill\x20installation\x20requires\x20authentication.\x20Run\x20`lovrabet\x20auth\x20login`,\x20or\x20use\x20`lovrabet\x20cli-skill\x20install`\x20for\x20CLI\x20Built-in\x20Skill\x20setup.');const _0x383b3f=await Promise[_0x9b4b78(0xb8)](_0xb33d2d[_0x9b4b78(0xc5)](_0x3b1d16=>_0x15b836({'appCode':_0x302e58[_0x9b4b78(0xc2)],'scope':_0x3b1d16,'code':_0x34b335['trim']()||undefined}))),_0x461049=_0xb33d2d[_0x9b4b78(0xaf)](_0x9b4b78(0xc0))?_0x383b3f[_0x9b4b78(0xd0)]((_0x3d846e,_0x6b6017)=>_0xb33d2d[_0x6b6017]===_0x9b4b78(0xc0)?_0x3d846e[_0x9b4b78(0xc0)]:[]):[],_0x39527b=_0xb33d2d[_0x9b4b78(0xaf)]('company')?_0x383b3f['flatMap']((_0x3e6620,_0x1e6876)=>_0xb33d2d[_0x1e6876]===_0x9b4b78(0xca)?_0x3e6620[_0x9b4b78(0xca)]:[]):[],_0x5d00ba=new Set([..._0x461049[_0x9b4b78(0xc5)](_0x4c7b28=>_0x4c7b28['skillCode']?.[_0x9b4b78(0xc6)]())[_0x9b4b78(0xa3)](_0x1870ab=>Boolean(_0x1870ab)),..._0x39527b[_0x9b4b78(0xc5)](_0x5f0fc4=>_0x5f0fc4[_0x9b4b78(0xc4)]?.[_0x9b4b78(0xc6)]())[_0x9b4b78(0xa3)](_0x1ada6c=>Boolean(_0x1ada6c))]),_0x28f079=_0x34b335[_0x9b4b78(0xc6)]()?[_0x34b335[_0x9b4b78(0xc6)]()]:undefined,_0x1827bb=_0xb33d2d['length']===0x2&&_0xb33d2d[_0x9b4b78(0xaf)](_0x9b4b78(0xc0))&&_0xb33d2d[_0x9b4b78(0xaf)](_0x9b4b78(0xca)),_0x3ebb60=_0x1827bb?_0x341b37(_0x302e58[_0x9b4b78(0xc2)],_0x5d00ba,{},_0x28f079):[],_0xa4afb7=_0x1ff1cc({'env':_0x4d2c30,'accessKey':_0x15f227,'appCode':_0x302e58[_0x9b4b78(0xc2)],'activeSkillCodes':_0x5d00ba,'pruneSkillCodes':_0x28f079,'scopes':_0xb33d2d}),_0x1c9ae0=[];for(const _0x111cfb of _0x461049){_0x1c9ae0[_0x9b4b78(0xa8)](_0x31fb19(_0x111cfb,_0x9b4b78(0xc0),{'env':_0x4d2c30,'accessKey':_0x15f227,'appCode':_0x302e58[_0x9b4b78(0xc2)],'packageBytes':await downloadSkillPackage(_0x111cfb,_0x9b4b78(0xc0),_0x302e58[_0x9b4b78(0xc2)],_0x20dc70)}));}for(const _0x5c09d3 of _0x39527b){_0x1c9ae0[_0x9b4b78(0xa8)](_0x31fb19(_0x5c09d3,'company',{'env':_0x4d2c30,'accessKey':_0x15f227,'appCode':_0x302e58[_0x9b4b78(0xc2)],'packageBytes':await downloadSkillPackage(_0x5c09d3,_0x9b4b78(0xca),_0x302e58[_0x9b4b78(0xc2)],_0x20dc70)}));}const _0x1606b7=_0x55def4(_0x1c9ae0,_0x302e58[_0x9b4b78(0xc2)]),_0x23e825=countLinkActions(_0x1606b7);return{'ok':!![],'data':{'appCode':_0x302e58[_0x9b4b78(0xc2)],'personal':_0x461049[_0x9b4b78(0xcd)],'company':_0x39527b['length'],'materialized':_0x1c9ae0[_0x9b4b78(0xcd)],'links':{'total':_0x1606b7[_0x9b4b78(0xcd)],'created':_0x23e825[_0x9b4b78(0xbc)]??0x0,'updated':_0x23e825[_0x9b4b78(0xb9)]??0x0,'unchanged':_0x23e825[_0x9b4b78(0xc9)]??0x0,'skipped':0x0,'conflicted':0x0},'pruned':{'links':_0x3ebb60[_0x9b4b78(0xa3)](_0x2e6512=>_0x2e6512['action']===_0x9b4b78(0xb5))['length'],'cacheDirs':_0xa4afb7['filter'](_0x1a2f90=>_0x1a2f90[_0x9b4b78(0xb7)]==='removed')[_0x9b4b78(0xcd)],'skipped':[..._0x3ebb60,..._0xa4afb7]['filter'](_0x4f4cfb=>_0x4f4cfb[_0x9b4b78(0xb7)]===_0x9b4b78(0xb0))['length']},'skills':{'personal':_0x461049['map'](summarizeRuntimeSkill),'company':_0x39527b[_0x9b4b78(0xc5)](summarizeRuntimeSkill)}},'message':_0x9b4b78(0xac)+_0x461049['length']+_0x9b4b78(0xaa)+_0x39527b[_0x9b4b78(0xcd)]+_0x9b4b78(0xbb)};}async function downloadSkillPackage(_0x412efa,_0x33b5a3,_0x563762,_0x2f38cc){const _0xb4a6c4=a42_0x2064d3,_0x88339a=_0x412efa[_0xb4a6c4(0xbd)]?.[_0xb4a6c4(0xc6)]();return _0x88339a?_0x2f38cc(_0x33b5a3,_0x412efa[_0xb4a6c4(0xc4)],_0x563762,_0x88339a):_0x2f38cc(_0x33b5a3,_0x412efa[_0xb4a6c4(0xc4)],_0x563762);}function countLinkActions(_0x3ce518){const _0x4888ea=a42_0x2064d3;return _0x3ce518[_0x4888ea(0xc3)]((_0x1e3396,_0x3aac14)=>{const _0x4f5904=_0x4888ea;return _0x1e3396[_0x3aac14['action']]=(_0x1e3396[_0x3aac14[_0x4f5904(0xb7)]]??0x0)+0x1,_0x1e3396;},{});}function a42_0x2e0b(){const _0x228cf1=['write','install','personal','482316LVaElh','appCode','reduce','skillCode','map','trim','627649zOJKJx','skill','unchanged','company','code','authRequired','length','2308CYqYvq','3800398wjpnzw','flatMap','5LRbkuR','filter','envName','228VAcUqp','accessKey','../../../core/api-client.js','push','179649DSlykX','\x20personal\x20and\x20','20HXqyzp','Installed\x20','str','production','includes','skipped','590610Oghteb','8AIsVud','3075804BInbGP','3462jgYbUo','removed','../../../skills/runtime-skill-sync.js','action','all','updated','Install\x20current-app\x20business\x20Skills\x20into\x20user-level\x20Agent\x20skill\x20directories','\x20company\x20Skill(s).','created','version'];a42_0x2e0b=function(){return _0x228cf1;};return a42_0x2e0b();}
@@ -1 +1 @@
1
- const a43_0x5dbb69=a43_0x5208;function a43_0x5208(_0x47d05e,_0x133947){_0x47d05e=_0x47d05e-0xa1;const _0x355cd3=a43_0x355c();let _0x520871=_0x355cd3[_0x47d05e];return _0x520871;}(function(_0x39b395,_0x36d402){const _0x143b0a=a43_0x5208,_0x5c4db4=_0x39b395();while(!![]){try{const _0x3029e1=parseInt(_0x143b0a(0xa5))/0x1+-parseInt(_0x143b0a(0xa1))/0x2+parseInt(_0x143b0a(0xa7))/0x3+-parseInt(_0x143b0a(0xb6))/0x4+parseInt(_0x143b0a(0xa4))/0x5*(parseInt(_0x143b0a(0xb5))/0x6)+parseInt(_0x143b0a(0xbc))/0x7+-parseInt(_0x143b0a(0xb9))/0x8*(parseInt(_0x143b0a(0xa9))/0x9);if(_0x3029e1===_0x36d402)break;else _0x5c4db4['push'](_0x5c4db4['shift']());}catch(_0x566e43){_0x5c4db4['push'](_0x5c4db4['shift']());}}}(a43_0x355c,0xcff7e));function a43_0x355c(){const _0x585e6a=['length','read','32HXrWDR','../../../core/api-client.js','scope','5739174VrRDgU','321286kFpEPX','personal','list','25tcQFAF','511395IvgyKT','company','4187754nsdxIm','skill','2753532UodAht','map','filter','accessKey','../../../skills/runtime-skill-sync.js','\x20local\x20Skill(s).','appCode','Listed\x20','str','remote','builtin','List\x20runtime\x20Skills\x20from\x20remote\x20or\x20CLI-managed\x20local\x20cache','17328gVTFov','2021448npFxMp'];a43_0x355c=function(){return _0x585e6a;};return a43_0x355c();}import{CliErrors}from'../../../errors.js';import{CODE_FLAG,LIST_SCOPE_FLAG,LOCAL_FLAG}from'../flags.js';import{listScopeToRemoteScope,listScopeToRuntimeScopes,normalizeListScope,shouldListScope}from'../scopes.js';import{summarizeLocalRuntimeSkill,summarizeRuntimeSkill}from'../summary.js';export const listCommand={'service':a43_0x5dbb69(0xa8),'command':a43_0x5dbb69(0xa3),'description':a43_0x5dbb69(0xb4),'risk':a43_0x5dbb69(0xb8),'flags':[CODE_FLAG,LIST_SCOPE_FLAG,LOCAL_FLAG],async 'execute'(_0x1af5c9){const _0x404296=a43_0x5dbb69,_0x1e775c=_0x1af5c9[_0x404296(0xb1)]('code'),_0x532287=normalizeListScope(_0x1af5c9['str']('scope'));if(_0x1af5c9['bool']('local')){const _0x38f9bf=_0x1af5c9[_0x404296(0xac)];if(!_0x38f9bf)throw CliErrors['authRequired']();const {listLocalRuntimeSkills:_0x154f2c}=await import(_0x404296(0xad)),_0x198ad3=_0x154f2c({'env':_0x1af5c9['envName']??'production','accessKey':_0x38f9bf,'appCode':_0x1af5c9[_0x404296(0xaf)],'scopes':listScopeToRuntimeScopes(_0x532287),'code':_0x1e775c['trim']()||undefined}),_0x383699=groupLocalRuntimeSkills(_0x198ad3);return{'ok':!![],'data':{'appCode':_0x1af5c9[_0x404296(0xaf)],'source':'local','scope':_0x532287,'total':_0x198ad3[_0x404296(0xb7)],'personal':_0x383699[_0x404296(0xa2)]['length'],'company':_0x383699[_0x404296(0xa6)][_0x404296(0xb7)],'items':_0x198ad3['map'](summarizeLocalRuntimeSkill),'skills':{'personal':_0x383699['personal'][_0x404296(0xaa)](summarizeLocalRuntimeSkill),'company':_0x383699[_0x404296(0xa6)]['map'](summarizeLocalRuntimeSkill)}},'message':'Listed\x20'+_0x198ad3[_0x404296(0xb7)]+_0x404296(0xae)};}const {listRuntimeSkills:_0x207631}=await import(_0x404296(0xba)),_0x3a2aee=await _0x207631({'appCode':_0x1af5c9[_0x404296(0xaf)],'scope':listScopeToRemoteScope(_0x532287),'code':_0x1e775c['trim']()||undefined}),_0x580ac8=shouldListScope(_0x532287,_0x404296(0xa2))?_0x3a2aee[_0x404296(0xa2)]??[]:[],_0x24f26a=shouldListScope(_0x532287,'company')?_0x3a2aee[_0x404296(0xa6)]??[]:[],_0x3bcf2c=[..._0x580ac8,..._0x24f26a];return{'ok':!![],'data':{'appCode':_0x1af5c9[_0x404296(0xaf)],'source':_0x404296(0xb2),'scope':_0x532287,'total':_0x3bcf2c[_0x404296(0xb7)],'personal':_0x580ac8[_0x404296(0xb7)],'company':_0x24f26a[_0x404296(0xb7)],'items':_0x3bcf2c[_0x404296(0xaa)](summarizeRuntimeSkill),'skills':{'personal':_0x580ac8[_0x404296(0xaa)](summarizeRuntimeSkill),'company':_0x24f26a[_0x404296(0xaa)](summarizeRuntimeSkill)}},'message':_0x404296(0xb0)+_0x3bcf2c['length']+'\x20remote\x20Skill(s).'};}};function groupLocalRuntimeSkills(_0x1046ab){const _0x23b0e5=a43_0x5dbb69;return{'personal':_0x1046ab['filter'](_0x11213e=>_0x11213e[_0x23b0e5(0xbb)]===_0x23b0e5(0xa2)),'company':_0x1046ab[_0x23b0e5(0xab)](_0xc2ec2c=>_0xc2ec2c['scope']===_0x23b0e5(0xa6)),'builtin':_0x1046ab['filter'](_0x430213=>_0x430213[_0x23b0e5(0xbb)]===_0x23b0e5(0xb3))};}
1
+ function a43_0x3790(){const _0x3fa2eb=['242067GRbrFT','bool','accessKey','length','remote','3316890dWJePK','list','trim','1465VdDERT','3070864qUoxmM','filter','envName','12jdTaiY','scope','company','code','2035460pzbsBG','9nUfTpz','local','production','appCode','str','3918IeGwsY','skill','6264eGEoof','builtin','List\x20runtime\x20Skills\x20from\x20remote\x20or\x20CLI-managed\x20local\x20cache','map','451SBSnnm','\x20local\x20Skill(s).','../../../skills/runtime-skill-sync.js','Listed\x20','742cYBXLx','personal','read','\x20remote\x20Skill(s).','707uwnfAa'];a43_0x3790=function(){return _0x3fa2eb;};return a43_0x3790();}const a43_0xb28c1c=a43_0x353e;function a43_0x353e(_0x33d781,_0x24a932){_0x33d781=_0x33d781-0xb4;const _0x3790ff=a43_0x3790();let _0x353ed7=_0x3790ff[_0x33d781];return _0x353ed7;}(function(_0x4bb6c2,_0x28db8a){const _0x48d429=a43_0x353e,_0x42345c=_0x4bb6c2();while(!![]){try{const _0x210d97=-parseInt(_0x48d429(0xce))/0x1*(-parseInt(_0x48d429(0xca))/0x2)+-parseInt(_0x48d429(0xcf))/0x3*(parseInt(_0x48d429(0xb6))/0x4)+parseInt(_0x48d429(0xd7))/0x5*(-parseInt(_0x48d429(0xc0))/0x6)+-parseInt(_0x48d429(0xba))/0x7+parseInt(_0x48d429(0xd8))/0x8*(parseInt(_0x48d429(0xbb))/0x9)+parseInt(_0x48d429(0xd4))/0xa+parseInt(_0x48d429(0xc6))/0xb*(parseInt(_0x48d429(0xc2))/0xc);if(_0x210d97===_0x28db8a)break;else _0x42345c['push'](_0x42345c['shift']());}catch(_0x356503){_0x42345c['push'](_0x42345c['shift']());}}}(a43_0x3790,0x4327e));import{CliErrors}from'../../../errors.js';import{CODE_FLAG,LIST_SCOPE_FLAG,LOCAL_FLAG}from'../flags.js';import{listScopeToRemoteScope,listScopeToRuntimeScopes,normalizeListScope,shouldListScope}from'../scopes.js';import{summarizeLocalRuntimeSkill,summarizeRuntimeSkill}from'../summary.js';export const listCommand={'service':a43_0xb28c1c(0xc1),'command':a43_0xb28c1c(0xd5),'description':a43_0xb28c1c(0xc4),'risk':a43_0xb28c1c(0xcc),'flags':[CODE_FLAG,LIST_SCOPE_FLAG,LOCAL_FLAG],async 'execute'(_0x499421){const _0x32a558=a43_0xb28c1c,_0x55056f=_0x499421[_0x32a558(0xbf)](_0x32a558(0xb9)),_0x38fde8=normalizeListScope(_0x499421[_0x32a558(0xbf)](_0x32a558(0xb7)));if(_0x499421[_0x32a558(0xd0)](_0x32a558(0xbc))){const _0x52a5dc=_0x499421[_0x32a558(0xd1)];if(!_0x52a5dc)throw CliErrors['authRequired']();const {listLocalRuntimeSkills:_0x240a65}=await import(_0x32a558(0xc8)),_0x12372f=_0x240a65({'env':_0x499421[_0x32a558(0xb5)]??_0x32a558(0xbd),'accessKey':_0x52a5dc,'appCode':_0x499421[_0x32a558(0xbe)],'scopes':listScopeToRuntimeScopes(_0x38fde8),'code':_0x55056f[_0x32a558(0xd6)]()||undefined}),_0x5c95c5=groupLocalRuntimeSkills(_0x12372f);return{'ok':!![],'data':{'appCode':_0x499421[_0x32a558(0xbe)],'source':_0x32a558(0xbc),'scope':_0x38fde8,'total':_0x12372f[_0x32a558(0xd2)],'personal':_0x5c95c5['personal'][_0x32a558(0xd2)],'company':_0x5c95c5[_0x32a558(0xb8)][_0x32a558(0xd2)],'items':_0x12372f[_0x32a558(0xc5)](summarizeLocalRuntimeSkill),'skills':{'personal':_0x5c95c5[_0x32a558(0xcb)][_0x32a558(0xc5)](summarizeLocalRuntimeSkill),'company':_0x5c95c5[_0x32a558(0xb8)]['map'](summarizeLocalRuntimeSkill)}},'message':_0x32a558(0xc9)+_0x12372f['length']+_0x32a558(0xc7)};}const {listRuntimeSkills:_0x121825}=await import('../../../core/api-client.js'),_0x4b3ec0=await _0x121825({'appCode':_0x499421[_0x32a558(0xbe)],'scope':listScopeToRemoteScope(_0x38fde8),'code':_0x55056f[_0x32a558(0xd6)]()||undefined}),_0x3d7d3d=shouldListScope(_0x38fde8,_0x32a558(0xcb))?_0x4b3ec0[_0x32a558(0xcb)]??[]:[],_0x2b7b64=shouldListScope(_0x38fde8,_0x32a558(0xb8))?_0x4b3ec0[_0x32a558(0xb8)]??[]:[],_0x57a791=[..._0x3d7d3d,..._0x2b7b64];return{'ok':!![],'data':{'appCode':_0x499421[_0x32a558(0xbe)],'source':_0x32a558(0xd3),'scope':_0x38fde8,'total':_0x57a791['length'],'personal':_0x3d7d3d[_0x32a558(0xd2)],'company':_0x2b7b64[_0x32a558(0xd2)],'items':_0x57a791[_0x32a558(0xc5)](summarizeRuntimeSkill),'skills':{'personal':_0x3d7d3d[_0x32a558(0xc5)](summarizeRuntimeSkill),'company':_0x2b7b64[_0x32a558(0xc5)](summarizeRuntimeSkill)}},'message':_0x32a558(0xc9)+_0x57a791['length']+_0x32a558(0xcd)};}};function groupLocalRuntimeSkills(_0x1040ae){const _0x806b73=a43_0xb28c1c;return{'personal':_0x1040ae[_0x806b73(0xb4)](_0xed3113=>_0xed3113[_0x806b73(0xb7)]==='personal'),'company':_0x1040ae[_0x806b73(0xb4)](_0x5759a2=>_0x5759a2['scope']===_0x806b73(0xb8)),'builtin':_0x1040ae[_0x806b73(0xb4)](_0x504aa1=>_0x504aa1['scope']===_0x806b73(0xc3))};}
@@ -1 +1 @@
1
- function a44_0x58aa(){const _0x1b7ac5=['skill','4BxOpfz','7095768aiAoPB','Push\x20a\x20local\x20Skill\x20directory\x20to\x20personal\x20scope\x20or\x20submit\x20company\x20scope\x20for\x20review','1213799FDZqDF','414579USjDge','5iFnKwX','4914664xSupBf','123036XPfTJs','push','9pNWtsI','6873027RXeZMC','47267890wORkRx'];a44_0x58aa=function(){return _0x1b7ac5;};return a44_0x58aa();}const a44_0x1a6396=a44_0x4b0e;(function(_0x56a42d,_0xe563a7){const _0x315eda=a44_0x4b0e,_0x51b429=_0x56a42d();while(!![]){try{const _0x5a2a83=-parseInt(_0x315eda(0xee))/0x1+parseInt(_0x315eda(0xe5))/0x2+parseInt(_0x315eda(0xef))/0x3*(-parseInt(_0x315eda(0xeb))/0x4)+-parseInt(_0x315eda(0xf0))/0x5*(parseInt(_0x315eda(0xec))/0x6)+-parseInt(_0x315eda(0xe8))/0x7+-parseInt(_0x315eda(0xf1))/0x8*(parseInt(_0x315eda(0xe7))/0x9)+parseInt(_0x315eda(0xe9))/0xa;if(_0x5a2a83===_0xe563a7)break;else _0x51b429['push'](_0x51b429['shift']());}catch(_0x4aaf24){_0x51b429['push'](_0x51b429['shift']());}}}(a44_0x58aa,0xa0855));function a44_0x4b0e(_0x4243f4,_0x2cd256){_0x4243f4=_0x4243f4-0xe5;const _0x58aad5=a44_0x58aa();let _0x4b0e1f=_0x58aad5[_0x4243f4];return _0x4b0e1f;}import{CONFIRM_WARNINGS_FLAG,DIR_FLAG,PUSH_SCOPE_FLAG}from'../flags.js';import{skillPushDryRun,skillPushExecute}from'../push-execute.js';export const pushCommand={'service':a44_0x1a6396(0xea),'command':a44_0x1a6396(0xe6),'description':a44_0x1a6396(0xed),'risk':'write','flags':[DIR_FLAG,PUSH_SCOPE_FLAG,CONFIRM_WARNINGS_FLAG],'dryRun':skillPushDryRun,'execute':skillPushExecute};
1
+ const a44_0xdb0f06=a44_0x5060;(function(_0x172227,_0x4b4c79){const _0x5d62e9=a44_0x5060,_0x314dde=_0x172227();while(!![]){try{const _0x2faf9c=-parseInt(_0x5d62e9(0x80))/0x1+-parseInt(_0x5d62e9(0x7b))/0x2*(-parseInt(_0x5d62e9(0x7e))/0x3)+parseInt(_0x5d62e9(0x86))/0x4+parseInt(_0x5d62e9(0x84))/0x5+parseInt(_0x5d62e9(0x83))/0x6*(parseInt(_0x5d62e9(0x7f))/0x7)+-parseInt(_0x5d62e9(0x7a))/0x8*(-parseInt(_0x5d62e9(0x85))/0x9)+-parseInt(_0x5d62e9(0x81))/0xa*(parseInt(_0x5d62e9(0x82))/0xb);if(_0x2faf9c===_0x4b4c79)break;else _0x314dde['push'](_0x314dde['shift']());}catch(_0x10b029){_0x314dde['push'](_0x314dde['shift']());}}}(a44_0x3aa7,0x3a678));import{CONFIRM_WARNINGS_FLAG,DIR_FLAG,PUSH_SCOPE_FLAG}from'../flags.js';import{skillPushDryRun,skillPushExecute}from'../push-execute.js';function a44_0x5060(_0x1e9112,_0x3cc696){_0x1e9112=_0x1e9112-0x79;const _0x3aa7d9=a44_0x3aa7();let _0x50606d=_0x3aa7d9[_0x1e9112];return _0x50606d;}function a44_0x3aa7(){const _0xa8bdca=['232TYqImf','10AlKrhV','write','push','238389jFjsPK','7NcGAUG','443DWzAiU','20zNOePz','3960836dqxIAU','907422aPZLhi','699610BFIhrW','49185mndhkD','451440nudSBq','Push\x20a\x20local\x20Skill\x20directory\x20to\x20personal\x20scope\x20or\x20submit\x20company\x20scope\x20for\x20review','skill'];a44_0x3aa7=function(){return _0xa8bdca;};return a44_0x3aa7();}export const pushCommand={'service':a44_0xdb0f06(0x79),'command':a44_0xdb0f06(0x7d),'description':a44_0xdb0f06(0x87),'risk':a44_0xdb0f06(0x7c),'flags':[DIR_FLAG,PUSH_SCOPE_FLAG,CONFIRM_WARNINGS_FLAG],'dryRun':skillPushDryRun,'execute':skillPushExecute};
@@ -1 +1 @@
1
- const a45_0xa46ccb=a45_0x434d;(function(_0x341224,_0x15abdf){const _0x2065ed=a45_0x434d,_0x45d480=_0x341224();while(!![]){try{const _0x5dc0c5=-parseInt(_0x2065ed(0x6d))/0x1*(-parseInt(_0x2065ed(0x6f))/0x2)+parseInt(_0x2065ed(0x72))/0x3*(-parseInt(_0x2065ed(0x75))/0x4)+parseInt(_0x2065ed(0x73))/0x5+-parseInt(_0x2065ed(0x7c))/0x6+-parseInt(_0x2065ed(0x7a))/0x7*(parseInt(_0x2065ed(0x81))/0x8)+-parseInt(_0x2065ed(0x71))/0x9*(-parseInt(_0x2065ed(0x7e))/0xa)+parseInt(_0x2065ed(0x78))/0xb*(parseInt(_0x2065ed(0x7f))/0xc);if(_0x5dc0c5===_0x15abdf)break;else _0x45d480['push'](_0x45d480['shift']());}catch(_0x19366d){_0x45d480['push'](_0x45d480['shift']());}}}(a45_0x5c5b,0x91dc1));import{DIR_FLAG,STRICT_FLAG}from'../flags.js';function a45_0x434d(_0x5b4b5c,_0x58984d){_0x5b4b5c=_0x5b4b5c-0x6d;const _0x5c5b61=a45_0x5c5b();let _0x434df8=_0x5c5b61[_0x5b4b5c];return _0x434df8;}import{throwIfSkillValidationFailed,validateSkillDirectory}from'../validate.js';function a45_0x5c5b(){const _0x20cfe7=['51VpYCFu','4900305xtFZEg','skill','126832LnPwUy','dir','strict','3111097DBkqDw','str','84lGsDpq','read','3749796FvPxwg','Validate\x20a\x20local\x20Skill\x20directory\x20as\x20a\x20self-contained\x20delivery\x20package','9422170wUFKXa','12BHXeLS','errors','359432AWnXbC','2zSDEcq','type','95486UYRkon','bool','9sVNVgX'];a45_0x5c5b=function(){return _0x20cfe7;};return a45_0x5c5b();}export const validateCommand={'service':a45_0xa46ccb(0x74),'command':'validate','description':a45_0xa46ccb(0x7d),'risk':a45_0xa46ccb(0x7b),'requiresAuth':![],'requiresAppCode':![],'flags':[DIR_FLAG,STRICT_FLAG],async 'execute'(_0x3d4e6f){const _0x438ee4=a45_0xa46ccb,_0x4d8335=_0x3d4e6f[_0x438ee4(0x70)](_0x438ee4(0x77)),_0x48969f=validateSkillDirectory(_0x3d4e6f[_0x438ee4(0x79)](_0x438ee4(0x76)),{'strict':_0x4d8335});return throwIfSkillValidationFailed(_0x48969f,_0x4d8335),{'ok':!![],'data':{'dir':_0x48969f[_0x438ee4(0x76)],'type':_0x48969f[_0x438ee4(0x6e)],'errors':_0x48969f[_0x438ee4(0x80)],'warnings':_0x48969f['warnings']},'message':'Skill\x20validation\x20passed.'};}};
1
+ function a45_0x2233(){const _0x551d93=['Skill\x20validation\x20passed.','1227mANoRC','56555ZpuoiX','str','4500770fkdtPE','read','1433583HpjpYP','3988XZIpTA','3548qUawsQ','skill','Validate\x20a\x20local\x20Skill\x20directory\x20as\x20a\x20self-contained\x20delivery\x20package','validate','104SXGFxA','11496szQytg','11diUlYy','dir','53522zhtuVh','warnings','366rHanBT','errors','25909JuTVuF','type','752JycMXI'];a45_0x2233=function(){return _0x551d93;};return a45_0x2233();}const a45_0x2c9a93=a45_0x5a33;(function(_0xeee50c,_0x238646){const _0x1432e4=a45_0x5a33,_0x53c5ee=_0xeee50c();while(!![]){try{const _0x17bc6b=parseInt(_0x1432e4(0xe6))/0x1*(-parseInt(_0x1432e4(0xe2))/0x2)+parseInt(_0x1432e4(0xdb))/0x3*(-parseInt(_0x1432e4(0xe1))/0x4)+-parseInt(_0x1432e4(0xdc))/0x5*(parseInt(_0x1432e4(0xd5))/0x6)+-parseInt(_0x1432e4(0xd3))/0x7*(-parseInt(_0x1432e4(0xd9))/0x8)+-parseInt(_0x1432e4(0xe0))/0x9+-parseInt(_0x1432e4(0xde))/0xa*(parseInt(_0x1432e4(0xd1))/0xb)+-parseInt(_0x1432e4(0xd0))/0xc*(-parseInt(_0x1432e4(0xd7))/0xd);if(_0x17bc6b===_0x238646)break;else _0x53c5ee['push'](_0x53c5ee['shift']());}catch(_0x54f116){_0x53c5ee['push'](_0x53c5ee['shift']());}}}(a45_0x2233,0xb3c9e));import{DIR_FLAG,STRICT_FLAG}from'../flags.js';function a45_0x5a33(_0x212211,_0x2c8944){_0x212211=_0x212211-0xd0;const _0x2233a1=a45_0x2233();let _0x5a336d=_0x2233a1[_0x212211];return _0x5a336d;}import{throwIfSkillValidationFailed,validateSkillDirectory}from'../validate.js';export const validateCommand={'service':a45_0x2c9a93(0xe3),'command':a45_0x2c9a93(0xe5),'description':a45_0x2c9a93(0xe4),'risk':a45_0x2c9a93(0xdf),'requiresAuth':![],'requiresAppCode':![],'flags':[DIR_FLAG,STRICT_FLAG],async 'execute'(_0x4c2a4a){const _0x1a2243=a45_0x2c9a93,_0x188cdc=_0x4c2a4a['bool']('strict'),_0xe8e464=validateSkillDirectory(_0x4c2a4a[_0x1a2243(0xdd)](_0x1a2243(0xd2)),{'strict':_0x188cdc});return throwIfSkillValidationFailed(_0xe8e464,_0x188cdc),{'ok':!![],'data':{'dir':_0xe8e464[_0x1a2243(0xd2)],'type':_0xe8e464[_0x1a2243(0xd8)],'errors':_0xe8e464[_0x1a2243(0xd6)],'warnings':_0xe8e464[_0x1a2243(0xd4)]},'message':_0x1a2243(0xda)};}};
@@ -1 +1 @@
1
- const a46_0x2cd615=a46_0x364a;(function(_0x33b754,_0x35d6e2){const _0x43df3e=a46_0x364a,_0x51ed71=_0x33b754();while(!![]){try{const _0x343443=parseInt(_0x43df3e(0xe3))/0x1*(-parseInt(_0x43df3e(0xec))/0x2)+parseInt(_0x43df3e(0xe0))/0x3*(-parseInt(_0x43df3e(0xea))/0x4)+-parseInt(_0x43df3e(0xd2))/0x5+-parseInt(_0x43df3e(0xe4))/0x6*(parseInt(_0x43df3e(0xe8))/0x7)+-parseInt(_0x43df3e(0xe5))/0x8+parseInt(_0x43df3e(0xd7))/0x9+parseInt(_0x43df3e(0xed))/0xa;if(_0x343443===_0x35d6e2)break;else _0x51ed71['push'](_0x51ed71['shift']());}catch(_0x54cfb6){_0x51ed71['push'](_0x51ed71['shift']());}}}(a46_0x4351,0x21890));import{DEFAULT_SKILL_TARGET,SKILL_NAME_PATTERN,SKILL_TYPES}from'./templates.js';export const CODE_FLAG={'name':'code','type':'string','description':a46_0x2cd615(0xde)};export const SCOPE_FLAG={'name':a46_0x2cd615(0xd1),'type':a46_0x2cd615(0xdf),'description':'Skill\x20sync\x20scope:\x20all\x20(personal/company),\x20personal,\x20or\x20company','enum':[a46_0x2cd615(0xeb),a46_0x2cd615(0xd8),a46_0x2cd615(0xd3)]};export const PUSH_SCOPE_FLAG={'name':a46_0x2cd615(0xd1),'type':a46_0x2cd615(0xdf),'description':'Skill\x20push\x20target\x20scope:\x20personal\x20saves\x20immediately,\x20company\x20submits\x20a\x20new\x20version\x20for\x20review','default':a46_0x2cd615(0xd8),'enum':['personal',a46_0x2cd615(0xd3)]};function a46_0x4351(){const _0x2b4ffe=['Directory\x20that\x20will\x20contain\x20the\x20generated\x20Skill\x20directory','type','Skill\x20template\x20type','strict','Only\x20target\x20a\x20specific\x20runtime\x20Skill\x20code','string','84wqhbHE','Skill\x20name\x20using\x20lowercase\x20letters,\x20numbers,\x20and\x20hyphens','Compatibility\x20flag;\x20no\x20extra\x20checks\x20are\x20enabled','148029bjRJjr','28794VyUdDp','8960jrmnAf','write','Read\x20CLI-managed\x20local\x20Skill\x20cache\x20and\x20links\x20instead\x20of\x20remote\x20lists','399kgJLOB','force','8404HHBKzP','all','2ZGMEUy','5971230sWWVmk','scope','83125ZgZOoG','company','target','Skill\x20list\x20scope:\x20all,\x20personal,\x20or\x20company','confirm-warnings','345438uFngBB','personal','boolean'];a46_0x4351=function(){return _0x2b4ffe;};return a46_0x4351();}export const LIST_SCOPE_FLAG={'name':a46_0x2cd615(0xd1),'type':a46_0x2cd615(0xdf),'description':a46_0x2cd615(0xd5),'enum':[a46_0x2cd615(0xeb),a46_0x2cd615(0xd8),a46_0x2cd615(0xd3)]};function a46_0x364a(_0x15dec8,_0x15b56f){_0x15dec8=_0x15dec8-0xd1;const _0x435107=a46_0x4351();let _0x364a9a=_0x435107[_0x15dec8];return _0x364a9a;}export const LOCAL_FLAG={'name':'local','type':a46_0x2cd615(0xd9),'description':a46_0x2cd615(0xe7)};export const DIR_FLAG={'name':'dir','type':'string','required':!![],'description':'Local\x20Skill\x20directory\x20containing\x20SKILL.md'};export const CREATE_NAME_FLAG={'name':'name','type':a46_0x2cd615(0xdf),'required':!![],'description':a46_0x2cd615(0xe1),'pattern':{'regex':SKILL_NAME_PATTERN,'description':'lowercase\x20letters,\x20numbers,\x20and\x20single\x20hyphens'}};export const TYPE_FLAG={'name':a46_0x2cd615(0xdb),'type':a46_0x2cd615(0xdf),'description':a46_0x2cd615(0xdc),'default':a46_0x2cd615(0xe6),'enum':[...SKILL_TYPES]};export const TARGET_FLAG={'name':a46_0x2cd615(0xd4),'type':a46_0x2cd615(0xdf),'description':a46_0x2cd615(0xda),'default':DEFAULT_SKILL_TARGET};export const FORCE_FLAG={'name':a46_0x2cd615(0xe9),'type':a46_0x2cd615(0xd9),'description':'Overwrite\x20generated\x20files\x20when\x20the\x20Skill\x20directory\x20already\x20exists'};export const CONFIRM_WARNINGS_FLAG={'name':a46_0x2cd615(0xd6),'type':a46_0x2cd615(0xd9),'description':'Continue\x20company\x20Skill\x20push\x20when\x20SkillHub\x20validation\x20reports\x20warnings'};export const STRICT_FLAG={'name':a46_0x2cd615(0xdd),'type':a46_0x2cd615(0xd9),'description':a46_0x2cd615(0xe2)};
1
+ const a46_0x595877=a46_0x4870;function a46_0x4870(_0x3a1346,_0x18ec50){_0x3a1346=_0x3a1346-0x18c;const _0x1727f8=a46_0x1727();let _0x48701e=_0x1727f8[_0x3a1346];return _0x48701e;}(function(_0x2b6964,_0x56da8f){const _0x4b6f02=a46_0x4870,_0x488e3c=_0x2b6964();while(!![]){try{const _0x359d3c=parseInt(_0x4b6f02(0x19f))/0x1+-parseInt(_0x4b6f02(0x1a7))/0x2*(-parseInt(_0x4b6f02(0x1ab))/0x3)+parseInt(_0x4b6f02(0x191))/0x4+-parseInt(_0x4b6f02(0x1a4))/0x5+-parseInt(_0x4b6f02(0x198))/0x6+-parseInt(_0x4b6f02(0x1a3))/0x7*(parseInt(_0x4b6f02(0x1a1))/0x8)+-parseInt(_0x4b6f02(0x18e))/0x9;if(_0x359d3c===_0x56da8f)break;else _0x488e3c['push'](_0x488e3c['shift']());}catch(_0x57b952){_0x488e3c['push'](_0x488e3c['shift']());}}}(a46_0x1727,0xdde27));import{DEFAULT_SKILL_TARGET,SKILL_NAME_PATTERN,SKILL_TYPES}from'./templates.js';export const CODE_FLAG={'name':a46_0x595877(0x18f),'type':a46_0x595877(0x1aa),'description':a46_0x595877(0x1a6)};export const SCOPE_FLAG={'name':'scope','type':'string','description':a46_0x595877(0x1ae),'enum':['all',a46_0x595877(0x193),'company']};export const PUSH_SCOPE_FLAG={'name':a46_0x595877(0x197),'type':a46_0x595877(0x1aa),'description':a46_0x595877(0x190),'default':a46_0x595877(0x193),'enum':['personal','company']};export const LIST_SCOPE_FLAG={'name':a46_0x595877(0x197),'type':'string','description':a46_0x595877(0x18d),'enum':[a46_0x595877(0x1a2),a46_0x595877(0x193),a46_0x595877(0x192)]};export const LOCAL_FLAG={'name':a46_0x595877(0x18c),'type':'boolean','description':a46_0x595877(0x199)};export const DIR_FLAG={'name':'dir','type':'string','required':!![],'description':a46_0x595877(0x19e)};export const CREATE_NAME_FLAG={'name':a46_0x595877(0x196),'type':a46_0x595877(0x1aa),'required':!![],'description':a46_0x595877(0x1ac),'pattern':{'regex':SKILL_NAME_PATTERN,'description':a46_0x595877(0x1a8)}};function a46_0x1727(){const _0x261eb2=['Read\x20CLI-managed\x20local\x20Skill\x20cache\x20and\x20links\x20instead\x20of\x20remote\x20lists','force','strict','Compatibility\x20flag;\x20no\x20extra\x20checks\x20are\x20enabled','Directory\x20that\x20will\x20contain\x20the\x20generated\x20Skill\x20directory','Local\x20Skill\x20directory\x20containing\x20SKILL.md','932114cwZfyW','Skill\x20template\x20type','88sBZHIr','all','230083IisngT','4978795ohpUBe','Overwrite\x20generated\x20files\x20when\x20the\x20Skill\x20directory\x20already\x20exists','Only\x20target\x20a\x20specific\x20runtime\x20Skill\x20code','2558324UxsNGO','lowercase\x20letters,\x20numbers,\x20and\x20single\x20hyphens','confirm-warnings','string','3PFKYaO','Skill\x20name\x20using\x20lowercase\x20letters,\x20numbers,\x20and\x20hyphens','target','Skill\x20sync\x20scope:\x20all\x20(personal/company),\x20personal,\x20or\x20company','Continue\x20company\x20Skill\x20push\x20when\x20SkillHub\x20validation\x20reports\x20warnings','local','Skill\x20list\x20scope:\x20all,\x20personal,\x20or\x20company','11637576YcAgUm','code','Skill\x20push\x20target\x20scope:\x20personal\x20saves\x20immediately,\x20company\x20submits\x20a\x20new\x20version\x20for\x20review','6362072PzQsQu','company','personal','write','boolean','name','scope','1455438YOBNmP'];a46_0x1727=function(){return _0x261eb2;};return a46_0x1727();}export const TYPE_FLAG={'name':'type','type':a46_0x595877(0x1aa),'description':a46_0x595877(0x1a0),'default':a46_0x595877(0x194),'enum':[...SKILL_TYPES]};export const TARGET_FLAG={'name':a46_0x595877(0x1ad),'type':a46_0x595877(0x1aa),'description':a46_0x595877(0x19d),'default':DEFAULT_SKILL_TARGET};export const FORCE_FLAG={'name':a46_0x595877(0x19a),'type':a46_0x595877(0x195),'description':a46_0x595877(0x1a5)};export const CONFIRM_WARNINGS_FLAG={'name':a46_0x595877(0x1a9),'type':'boolean','description':a46_0x595877(0x1af)};export const STRICT_FLAG={'name':a46_0x595877(0x19b),'type':a46_0x595877(0x195),'description':a46_0x595877(0x19c)};
@@ -1 +1 @@
1
- (function(_0x11d5a7,_0x470e7b){const _0x2ab8e8=a47_0x3754,_0x574fc4=_0x11d5a7();while(!![]){try{const _0x1013df=parseInt(_0x2ab8e8(0x1ed))/0x1*(-parseInt(_0x2ab8e8(0x1ea))/0x2)+parseInt(_0x2ab8e8(0x1e7))/0x3+-parseInt(_0x2ab8e8(0x1eb))/0x4+-parseInt(_0x2ab8e8(0x1ee))/0x5*(parseInt(_0x2ab8e8(0x1ec))/0x6)+parseInt(_0x2ab8e8(0x1ef))/0x7+-parseInt(_0x2ab8e8(0x1f0))/0x8+-parseInt(_0x2ab8e8(0x1e9))/0x9*(-parseInt(_0x2ab8e8(0x1e8))/0xa);if(_0x1013df===_0x470e7b)break;else _0x574fc4['push'](_0x574fc4['shift']());}catch(_0x121a86){_0x574fc4['push'](_0x574fc4['shift']());}}}(a47_0xb997,0x9f247));function a47_0x3754(_0x21725e,_0x3be437){_0x21725e=_0x21725e-0x1e7;const _0xb997ed=a47_0xb997();let _0x375477=_0xb997ed[_0x21725e];return _0x375477;}import{createCommand}from'./commands/create.js';import{installCommand}from'./commands/install.js';function a47_0xb997(){const _0x21b82a=['3741915XcbhBu','27840CtrMkD','1908uIsdOw','464dzjkHb','275792HQTZco','276384fJqxAV','1238siyYmT','60TQsmqc','605472vMPxom','2905840mKTybm'];a47_0xb997=function(){return _0x21b82a;};return a47_0xb997();}import{listCommand}from'./commands/list.js';import{pushCommand}from'./commands/push.js';import{validateCommand}from'./commands/validate.js';export const skillDefinitions=[installCommand,createCommand,validateCommand,listCommand,pushCommand];
1
+ function a47_0x5ae5(_0x4b5428,_0x44b206){_0x4b5428=_0x4b5428-0x1ce;const _0x120d1d=a47_0x120d();let _0x5ae5dc=_0x120d1d[_0x4b5428];return _0x5ae5dc;}(function(_0x3e8193,_0x17395a){const _0x3c13c2=a47_0x5ae5,_0x36c1a=_0x3e8193();while(!![]){try{const _0x42377c=-parseInt(_0x3c13c2(0x1d2))/0x1+-parseInt(_0x3c13c2(0x1d5))/0x2*(-parseInt(_0x3c13c2(0x1d3))/0x3)+-parseInt(_0x3c13c2(0x1d1))/0x4+-parseInt(_0x3c13c2(0x1d4))/0x5+-parseInt(_0x3c13c2(0x1cf))/0x6*(parseInt(_0x3c13c2(0x1ce))/0x7)+parseInt(_0x3c13c2(0x1d6))/0x8+parseInt(_0x3c13c2(0x1d0))/0x9;if(_0x42377c===_0x17395a)break;else _0x36c1a['push'](_0x36c1a['shift']());}catch(_0x1c7c6e){_0x36c1a['push'](_0x36c1a['shift']());}}}(a47_0x120d,0xc5fdc));function a47_0x120d(){const _0x753223=['4PsYnRn','7405096QiAGoc','168WtOIJt','279864mQxKWC','40442931RABmIe','4182208Tudyfq','1390669ymcANe','390183IRktRg','6563845hXNQbm'];a47_0x120d=function(){return _0x753223;};return a47_0x120d();}import{createCommand}from'./commands/create.js';import{installCommand}from'./commands/install.js';import{listCommand}from'./commands/list.js';import{pushCommand}from'./commands/push.js';import{validateCommand}from'./commands/validate.js';export const skillDefinitions=[installCommand,createCommand,validateCommand,listCommand,pushCommand];
@@ -1 +1 @@
1
- (function(_0x2f7cf8,_0x8e3918){var _0x5cb32f=a48_0x2a23,_0x366ad9=_0x2f7cf8();while(!![]){try{var _0x1277b9=-parseInt(_0x5cb32f(0xdf))/0x1+-parseInt(_0x5cb32f(0xdc))/0x2*(parseInt(_0x5cb32f(0xe1))/0x3)+parseInt(_0x5cb32f(0xe3))/0x4*(-parseInt(_0x5cb32f(0xd9))/0x5)+parseInt(_0x5cb32f(0xd8))/0x6+parseInt(_0x5cb32f(0xdd))/0x7+-parseInt(_0x5cb32f(0xda))/0x8*(-parseInt(_0x5cb32f(0xd6))/0x9)+parseInt(_0x5cb32f(0xde))/0xa*(parseInt(_0x5cb32f(0xd4))/0xb);if(_0x1277b9===_0x8e3918)break;else _0x366ad9['push'](_0x366ad9['shift']());}catch(_0x3ec611){_0x366ad9['push'](_0x366ad9['shift']());}}}(a48_0x49c5,0xad067));export function isPackageBackedManifest(_0x3de6c1){var _0x25d05a=a48_0x2a23;return!!_0x3de6c1&&typeof _0x3de6c1===_0x25d05a(0xd3)&&!Array['isArray'](_0x3de6c1)&&typeof _0x3de6c1[_0x25d05a(0xe0)]===_0x25d05a(0xdb)&&_0x3de6c1[_0x25d05a(0xe0)]['length']>0x0&&Array[_0x25d05a(0xe2)](_0x3de6c1['files']);}function a48_0x2a23(_0x40a987,_0x5276d8){_0x40a987=_0x40a987-0xd2;var _0x49c5b2=a48_0x49c5();var _0x2a233f=_0x49c5b2[_0x40a987];return _0x2a233f;}function a48_0x49c5(){var _0x3f27bf=['831181aKpXNR','ossPath','336666SSwZfj','isArray','724BkxDGX','path','object','21725913HDzOHh','some','9AQdYsr','files','669432RZeBMH','30455fEeLIc','5452712jjJaEx','string','14ghFDZr','4617711aPGplt','10cMCMcb'];a48_0x49c5=function(){return _0x3f27bf;};return a48_0x49c5();}export function isMultiFileManifest(_0x61d503){var _0x3ca33f=a48_0x2a23;return!!_0x61d503&&typeof _0x61d503===_0x3ca33f(0xd3)&&!Array['isArray'](_0x61d503)&&Array['isArray'](_0x61d503[_0x3ca33f(0xd7)])&&_0x61d503['files'][_0x3ca33f(0xd5)](_0x1fd081=>_0x1fd081[_0x3ca33f(0xd2)]!=='SKILL.md');}
1
+ function a48_0x3373(){var _0x3854f8=['252842jVsULr','684830QPKsvl','isArray','373077hcNCmi','object','29315ZGDkeP','45kCqYsj','77tjhxsZ','path','files','369wsDBfg','length','2984mDmApD','string','660JLnfok','4ZLNCSV','406413eyUEEg','66RuVcwC','615208TRQiCs','ossPath','SKILL.md'];a48_0x3373=function(){return _0x3854f8;};return a48_0x3373();}function a48_0x5d53(_0x29cc49,_0xb26ad9){_0x29cc49=_0x29cc49-0x70;var _0x33739a=a48_0x3373();var _0x5d53d7=_0x33739a[_0x29cc49];return _0x5d53d7;}(function(_0x38dda2,_0x1a4df5){var _0x52a484=a48_0x5d53,_0x16079c=_0x38dda2();while(!![]){try{var _0x1da60e=parseInt(_0x52a484(0x76))/0x1*(parseInt(_0x52a484(0x7c))/0x2)+parseInt(_0x52a484(0x7f))/0x3+parseInt(_0x52a484(0x79))/0x4*(parseInt(_0x52a484(0x82))/0x5)+parseInt(_0x52a484(0x78))/0x6*(-parseInt(_0x52a484(0x77))/0x7)+parseInt(_0x52a484(0x73))/0x8*(parseInt(_0x52a484(0x71))/0x9)+-parseInt(_0x52a484(0x7d))/0xa*(parseInt(_0x52a484(0x83))/0xb)+-parseInt(_0x52a484(0x75))/0xc*(parseInt(_0x52a484(0x81))/0xd);if(_0x1da60e===_0x1a4df5)break;else _0x16079c['push'](_0x16079c['shift']());}catch(_0x5de4df){_0x16079c['push'](_0x16079c['shift']());}}}(a48_0x3373,0xc042b));export function isPackageBackedManifest(_0x5858be){var _0x4130f7=a48_0x5d53;return!!_0x5858be&&typeof _0x5858be===_0x4130f7(0x80)&&!Array[_0x4130f7(0x7e)](_0x5858be)&&typeof _0x5858be[_0x4130f7(0x7a)]===_0x4130f7(0x74)&&_0x5858be[_0x4130f7(0x7a)][_0x4130f7(0x72)]>0x0&&Array[_0x4130f7(0x7e)](_0x5858be['files']);}export function isMultiFileManifest(_0x14a5e7){var _0x29418c=a48_0x5d53;return!!_0x14a5e7&&typeof _0x14a5e7===_0x29418c(0x80)&&!Array[_0x29418c(0x7e)](_0x14a5e7)&&Array['isArray'](_0x14a5e7[_0x29418c(0x70)])&&_0x14a5e7[_0x29418c(0x70)]['some'](_0x3807ce=>_0x3807ce[_0x29418c(0x84)]!==_0x29418c(0x7b));}
@@ -1 +1 @@
1
- (function(_0x5e5dd0,_0x1d04cb){const _0x49f968=a49_0x3a3d,_0x5a3833=_0x5e5dd0();while(!![]){try{const _0x219c26=parseInt(_0x49f968(0x129))/0x1*(-parseInt(_0x49f968(0x128))/0x2)+parseInt(_0x49f968(0x12a))/0x3+parseInt(_0x49f968(0x104))/0x4*(-parseInt(_0x49f968(0x11d))/0x5)+-parseInt(_0x49f968(0x132))/0x6*(parseInt(_0x49f968(0x102))/0x7)+parseInt(_0x49f968(0x12e))/0x8*(-parseInt(_0x49f968(0x10f))/0x9)+-parseInt(_0x49f968(0x11b))/0xa+parseInt(_0x49f968(0x101))/0xb;if(_0x219c26===_0x1d04cb)break;else _0x5a3833['push'](_0x5a3833['shift']());}catch(_0x5d913a){_0x5a3833['push'](_0x5a3833['shift']());}}}(a49_0x3147,0x643ad));import{CliErrors}from'../../errors.js';function a49_0x3147(){const _0x5aff47=['(unknown)','6357980EEmVrf','frontmatterDisplayName','935gAKGVW','resolvedVersion','skillCode','bool','join','../../core/api-client.js','company','Company\x20Skill\x20push\x20validation\x20reported\x20warning(s)\x20for\x20','version','/api/cli/v1/skills/','valid','1312708LwhAMY','1nSVcQo','31470IVJbYQ','/publish/validate','/publish','appcode','8ZpNTGH','input','confirm-warnings','scope','3180kpDJQd','confirmWarnings','\x20for\x20review','POST','Updated\x20personal\x20Skill\x20','submitted','30953780xKTAkj','252VDcyAf','warnings','16636VDcDMG','files','\x20has\x20scope=\x22','personal','errors','dir','length','../../skills/runtime-skill-sync.js','str','NAMESPACE_ONLY','metadata','2924676TOEIvh','validation','Review\x20the\x20warnings\x20and\x20rerun\x20with\x20--confirm-warnings\x20to\x20submit:\x20','\x20version\x20','Only\x20personal\x20Skills\x20can\x20be\x20pushed;\x20remote\x20Skill\x20','authRequired','appCode','unknown','accessKey','path','Preview\x20a\x20personal\x20Skill\x20push\x20without\x20creating\x20or\x20updating\x20a\x20remote\x20Skill.'];a49_0x3147=function(){return _0x5aff47;};return a49_0x3147();}import{isMultiFileManifest,isPackageBackedManifest}from'./manifest-helpers.js';function a49_0x3a3d(_0x32729f,_0x3f7f27){_0x32729f=_0x32729f-0x100;const _0x3147e2=a49_0x3147();let _0x3a3dac=_0x3147e2[_0x32729f];return _0x3a3dac;}import{remotePersonalReadOptions,remoteMissingCompanyReadOptions,remoteMissingPersonalReadOptions}from'./push-flow-helpers.js';import{allowRetargetArgs,buildRetargetWarning,remoteFirstMetadataOptions,resolvePushScope,throwIfBuiltinPushTarget,throwIfPublishValidationFailed}from'./push-flow-helpers.js';import{withRetargetExistingMetadata}from'./push-retarget.js';import{summarizeRuntimeSkill}from'./summary.js';import{throwIfSkillValidationFailed,validateSkillDirectory}from'./validate.js';export async function skillPushDryRun(_0x5d391d){const _0x93d264=a49_0x3a3d,{getRuntimeSkillByCode:_0x3b1710,validateRuntimeSkillPublish:_0x21540e}=await import('../../core/api-client.js'),{readPushDirectory:_0x1e01c1,resolvePushDirectoryIdentity:_0x36dd64}=await import(_0x93d264(0x10b));if(!_0x5d391d[_0x93d264(0x117)])throw CliErrors[_0x93d264(0x114)]();const _0x555d4b=resolvePushScope(_0x5d391d),_0x20245f=validateSkillDirectory(_0x5d391d[_0x93d264(0x10c)](_0x93d264(0x109)));throwIfSkillValidationFailed(_0x20245f);const _0x4242e9=_0x36dd64(_0x20245f['dir'],_0x5d391d[_0x93d264(0x115)],remoteFirstMetadataOptions()),_0x2b7fe7=await _0x3b1710(_0x5d391d[_0x93d264(0x115)],_0x4242e9[_0x93d264(0x11f)]);throwIfBuiltinPushTarget(_0x2b7fe7);if(_0x555d4b===_0x93d264(0x123)){const _0x12395d=_0x1e01c1(_0x20245f['dir'],_0x5d391d[_0x93d264(0x115)],remoteMissingCompanyReadOptions()),_0x16ec14=await _0x21540e(_0x5d391d[_0x93d264(0x115)],_0x12395d[_0x93d264(0x12f)],{'visibility':_0x93d264(0x10d)});return{'method':_0x93d264(0x135),'url':'/api/cli/v1/skills/'+_0x5d391d[_0x93d264(0x115)]+_0x93d264(0x12b),'body':{'skillCode':_0x12395d['skillCode'],'visibility':_0x93d264(0x10d),'valid':_0x16ec14[_0x93d264(0x127)],'errors':_0x16ec14[_0x93d264(0x108)],'warnings':_0x16ec14['warnings'],'resolvedSlug':_0x16ec14['resolvedSlug'],'resolvedVersion':_0x16ec14[_0x93d264(0x11e)]},'description':'Validate\x20a\x20company\x20Skill\x20push\x20package\x20without\x20creating\x20a\x20version\x20or\x20review\x20task.'};}if(_0x2b7fe7&&_0x2b7fe7[_0x93d264(0x131)]!==_0x93d264(0x107))throw CliErrors['validation'](_0x93d264(0x113)+_0x4242e9[_0x93d264(0x11f)]+_0x93d264(0x106)+(_0x2b7fe7[_0x93d264(0x131)]??'unknown')+'\x22.');const _0x28f685=_0x1e01c1(_0x20245f[_0x93d264(0x109)],_0x5d391d['appCode'],_0x2b7fe7?remotePersonalReadOptions(!![]):remoteMissingPersonalReadOptions());return{'method':_0x93d264(0x135),'url':_0x93d264(0x126)+_0x5d391d[_0x93d264(0x115)]+_0x93d264(0x12c),'body':{'skillCode':_0x28f685[_0x93d264(0x11f)],'visibility':'PRIVATE','files':_0x28f685['input'][_0x93d264(0x105)]?.[_0x93d264(0x105)]['map'](_0xd9ce96=>_0xd9ce96[_0x93d264(0x118)])??[]},'description':_0x93d264(0x119)};}export async function skillPushExecute(_0x3dccd5){const _0x4b8b4a=a49_0x3a3d,{createPersonalRuntimeSkill:_0x1eaf85,downloadRuntimeSkillPackage:_0xc82ee,getRuntimeSkillByCode:_0x17a2fa,publishCompanyRuntimeSkill:_0x4f45ce,updatePersonalRuntimeSkill:_0x26ba91,validateRuntimeSkillPublish:_0x23782e}=await import(_0x4b8b4a(0x122)),{verifyRuntimeSkillPackage:_0x3b2f2d,verifyRuntimeSkillBundle:_0x4a7e47,readPushDirectory:_0x2a0e38,refreshPushDirectoryMetadataFromRemote:_0x36c953,recordPushedRuntimeSkill:_0x15c851,resolvePushDirectoryIdentity:_0x5b9146}=await import(_0x4b8b4a(0x10b));if(!_0x3dccd5['accessKey'])throw CliErrors[_0x4b8b4a(0x114)]();const _0x5b4782=resolvePushScope(_0x3dccd5),_0x124799=validateSkillDirectory(_0x3dccd5['str'](_0x4b8b4a(0x109)));throwIfSkillValidationFailed(_0x124799);const _0x35253d=_0x124799[_0x4b8b4a(0x109)];if(_0x5b4782==='company'){const _0x54124c=_0x5b9146(_0x35253d,_0x3dccd5['appCode'],remoteFirstMetadataOptions()),_0x82056=await _0x17a2fa(_0x3dccd5[_0x4b8b4a(0x115)],_0x54124c[_0x4b8b4a(0x11f)]);throwIfBuiltinPushTarget(_0x82056);if(_0x82056)_0x36c953(_0x35253d,_0x82056,_0x3dccd5[_0x4b8b4a(0x115)]);const _0x33965e=_0x2a0e38(_0x35253d,_0x3dccd5[_0x4b8b4a(0x115)],_0x82056?{'targetScope':_0x4b8b4a(0x123),'ignoreInvalidMetadata':!![]}:remoteMissingCompanyReadOptions()),_0x222d57=await _0x23782e(_0x3dccd5[_0x4b8b4a(0x115)],_0x33965e[_0x4b8b4a(0x12f)],{'visibility':_0x4b8b4a(0x10d)});throwIfPublishValidationFailed(_0x33965e[_0x4b8b4a(0x11f)],_0x222d57);const _0xe009ad=_0x3dccd5[_0x4b8b4a(0x120)](_0x4b8b4a(0x130))||_0x3dccd5[_0x4b8b4a(0x120)](_0x4b8b4a(0x133));if(_0x222d57[_0x4b8b4a(0x103)][_0x4b8b4a(0x10a)]>0x0&&!_0xe009ad)throw CliErrors['validation'](_0x4b8b4a(0x124)+_0x33965e[_0x4b8b4a(0x11f)]+'.',_0x4b8b4a(0x111)+_0x222d57[_0x4b8b4a(0x103)][_0x4b8b4a(0x121)](';\x20'));const _0x367a2a=await _0x4f45ce(_0x3dccd5[_0x4b8b4a(0x115)],_0x33965e[_0x4b8b4a(0x12f)],{'confirmWarnings':_0xe009ad});return _0x15c851(_0x35253d,{..._0x367a2a,'files':_0x33965e[_0x4b8b4a(0x12f)][_0x4b8b4a(0x105)]},_0x3dccd5[_0x4b8b4a(0x115)],{'scope':_0x4b8b4a(0x123)}),{'ok':!![],'data':{...summarizeRuntimeSkill(_0x367a2a),'scope':_0x4b8b4a(0x123),'reviewState':_0x4b8b4a(0x100),'submittedForReview':!![],'validation':{'warnings':_0x222d57['warnings']}},'message':'Submitted\x20company\x20Skill\x20'+_0x33965e[_0x4b8b4a(0x11f)]+_0x4b8b4a(0x112)+(_0x367a2a[_0x4b8b4a(0x125)]??_0x4b8b4a(0x11a))+_0x4b8b4a(0x134)};}const _0x4f74a3=_0x3dccd5['str'](_0x4b8b4a(0x12d))['trim'](),_0x1f7ff0=Boolean(_0x4f74a3),_0x4b878e=allowRetargetArgs(_0x1f7ff0),_0x47d365=_0x5b9146(_0x35253d,_0x3dccd5[_0x4b8b4a(0x115)],{...remoteFirstMetadataOptions(),..._0x4b878e[0x0]}),_0x3eda55=await _0x17a2fa(_0x3dccd5[_0x4b8b4a(0x115)],_0x47d365['skillCode']);throwIfBuiltinPushTarget(_0x3eda55);if(_0x3eda55){if(_0x3eda55[_0x4b8b4a(0x131)]!==_0x4b8b4a(0x107)){if(_0x1f7ff0)throw CliErrors[_0x4b8b4a(0x110)]('Only\x20personal\x20Skills\x20can\x20be\x20pushed;\x20remote\x20Skill\x20'+_0x47d365[_0x4b8b4a(0x11f)]+'\x20has\x20scope=\x22'+(_0x3eda55['scope']??_0x4b8b4a(0x116))+'\x22.');_0x36c953(_0x35253d,_0x3eda55,_0x3dccd5['appCode']);}else!_0x1f7ff0&&_0x36c953(_0x35253d,_0x3eda55,_0x3dccd5[_0x4b8b4a(0x115)]);}const _0x325531=_0x2a0e38(_0x35253d,_0x3dccd5['appCode'],_0x3eda55?remotePersonalReadOptions(_0x1f7ff0,_0x4b878e[0x0]):remoteMissingPersonalReadOptions(_0x4b878e[0x0])),_0x3c72d7=_0x3eda55?.[_0x4b8b4a(0x131)]===_0x4b8b4a(0x107)&&_0x3eda55[_0x4b8b4a(0x11f)]===_0x325531[_0x4b8b4a(0x11f)]?_0x3eda55:undefined,_0x2d4808=_0x1f7ff0&&_0x3c72d7?withRetargetExistingMetadata(_0x325531['input'],_0x3c72d7,{'preferInputSkillName':Boolean(_0x325531[_0x4b8b4a(0x11c)])}):_0x325531[_0x4b8b4a(0x12f)],_0x9433d5=_0x3c72d7?await _0x26ba91(_0x325531[_0x4b8b4a(0x11f)],_0x3dccd5[_0x4b8b4a(0x115)],_0x2d4808):await _0x1eaf85(_0x3dccd5[_0x4b8b4a(0x115)],_0x2d4808);let _0x289f4b=_0x9433d5;if(isMultiFileManifest(_0x325531[_0x4b8b4a(0x12f)][_0x4b8b4a(0x105)])){const _0x5fd68c=await _0xc82ee(_0x4b8b4a(0x107),_0x9433d5[_0x4b8b4a(0x11f)]||_0x325531[_0x4b8b4a(0x11f)],_0x3dccd5[_0x4b8b4a(0x115)]);_0x4a7e47(_0x325531['input'][_0x4b8b4a(0x105)],_0x5fd68c),_0x289f4b={..._0x9433d5,'files':_0x325531[_0x4b8b4a(0x12f)][_0x4b8b4a(0x105)]};}else{if(isPackageBackedManifest(_0x9433d5[_0x4b8b4a(0x105)])){const _0x238bae=await _0xc82ee(_0x4b8b4a(0x107),_0x9433d5['skillCode']||_0x325531[_0x4b8b4a(0x11f)],_0x3dccd5[_0x4b8b4a(0x115)]);_0x3b2f2d(_0x9433d5[_0x4b8b4a(0x105)],_0x238bae);}}_0x15c851(_0x35253d,_0x289f4b,_0x3dccd5[_0x4b8b4a(0x115)]);const _0x1c6d6a=_0x1f7ff0?buildRetargetWarning(_0x47d365[_0x4b8b4a(0x10e)],_0x3dccd5[_0x4b8b4a(0x115)]):[];return{'ok':!![],'data':{...summarizeRuntimeSkill(_0x9433d5),'warnings':[..._0x124799[_0x4b8b4a(0x103)],..._0x1c6d6a]},'message':_0x3c72d7?_0x4b8b4a(0x136)+_0x325531[_0x4b8b4a(0x11f)]:'Created\x20personal\x20Skill\x20'+_0x325531[_0x4b8b4a(0x11f)]};}
1
+ (function(_0x3b3f14,_0xc221ee){const _0x16eb30=a49_0x9692,_0x34538b=_0x3b3f14();while(!![]){try{const _0xc50afa=-parseInt(_0x16eb30(0x16e))/0x1+-parseInt(_0x16eb30(0x13a))/0x2+parseInt(_0x16eb30(0x14e))/0x3*(parseInt(_0x16eb30(0x150))/0x4)+parseInt(_0x16eb30(0x13e))/0x5+parseInt(_0x16eb30(0x155))/0x6*(-parseInt(_0x16eb30(0x13d))/0x7)+parseInt(_0x16eb30(0x167))/0x8*(-parseInt(_0x16eb30(0x147))/0x9)+parseInt(_0x16eb30(0x161))/0xa;if(_0xc50afa===_0xc221ee)break;else _0x34538b['push'](_0x34538b['shift']());}catch(_0xc84680){_0x34538b['push'](_0x34538b['shift']());}}}(a49_0x5e1b,0x994f3));import{CliErrors}from'../../errors.js';import{isMultiFileManifest,isPackageBackedManifest}from'./manifest-helpers.js';import{remotePersonalReadOptions,remoteMissingCompanyReadOptions,remoteMissingPersonalReadOptions}from'./push-flow-helpers.js';import{allowRetargetArgs,buildRetargetWarning,remoteFirstMetadataOptions,resolvePushScope,runRemoteContentPreflight,throwIfBuiltinPushTarget,throwIfPublishValidationFailed}from'./push-flow-helpers.js';import{withRetargetExistingMetadata}from'./push-retarget.js';import{summarizeRuntimeSkill}from'./summary.js';import{throwIfSkillValidationFailed,validateSkillDirectory}from'./validate.js';function a49_0x9692(_0x5d8cce,_0x75da1a){_0x5d8cce=_0x5d8cce-0x13a;const _0x5e1bc1=a49_0x5e1b();let _0x9692a8=_0x5e1bc1[_0x5d8cce];return _0x9692a8;}function a49_0x5e1b(){const _0xa99e09=['Personal','str','POST','\x20for\x20review','545816UPZGvQ','accessKey','version','\x20Skill\x20','skillCode','savedSkill','Created\x20personal\x20Skill\x20','437959WfvqCo','confirmWarnings','Validate\x20a\x20company\x20Skill\x20push\x20package\x20without\x20creating\x20a\x20version\x20or\x20review\x20task.','path','/publish','warnings','status','2459012GZTnxp','bool','validation','133jIsLAA','1526615DFVOSD','remoteForPreflight','join','payload','PRIVATE','/api/cli/v1/skills/','company','../../core/api-client.js','Preview\x20a\x20personal\x20Skill\x20push\x20without\x20creating\x20or\x20updating\x20a\x20remote\x20Skill.','27nGTbFD','input','resolvedSlug','\x20has\x20scope=\x22','Submitted\x20company\x20Skill\x20','files','(unknown)','1592583NjNYaD','/publish/validate','4QsPyPw','trim','appCode','frontmatterDisplayName','authRequired','47442paLtkg','personal','NAMESPACE_ONLY','\x20version\x20','Updated\x20personal\x20Skill\x20','publishInput','../../skills/runtime-skill-sync.js','scope','Only\x20personal\x20Skills\x20can\x20be\x20pushed;\x20remote\x20Skill\x20','map','existing','Company\x20Skill\x20push\x20validation\x20reported\x20warning(s)\x20for\x20','18141500bumZFM','dir'];a49_0x5e1b=function(){return _0xa99e09;};return a49_0x5e1b();}export async function skillPushDryRun(_0x56c2ac){const _0x32439a=a49_0x9692,{getRuntimeSkillByCode:_0x1c6e0c,validateRuntimeSkillPublish:_0x143fe6}=await import(_0x32439a(0x145)),{readPushDirectory:_0x14c7b5,resolvePushDirectoryIdentity:_0x57c51f}=await import(_0x32439a(0x15b));if(!_0x56c2ac[_0x32439a(0x168)])throw CliErrors[_0x32439a(0x154)]();const _0x52975a=resolvePushScope(_0x56c2ac),_0x143170=validateSkillDirectory(_0x56c2ac[_0x32439a(0x164)](_0x32439a(0x162)));throwIfSkillValidationFailed(_0x143170);const _0x22d4d3=_0x57c51f(_0x143170['dir'],_0x56c2ac[_0x32439a(0x152)],remoteFirstMetadataOptions()),_0x4489bc=await _0x1c6e0c(_0x56c2ac[_0x32439a(0x152)],_0x22d4d3[_0x32439a(0x16b)]);throwIfBuiltinPushTarget(_0x4489bc);if(_0x52975a===_0x32439a(0x144)){const _0xaf2571=_0x14c7b5(_0x143170[_0x32439a(0x162)],_0x56c2ac['appCode'],remoteMissingCompanyReadOptions()),_0x3e2c01=await _0x143fe6(_0x56c2ac[_0x32439a(0x152)],_0xaf2571[_0x32439a(0x148)],{'visibility':_0x32439a(0x157)});return{'method':_0x32439a(0x165),'url':_0x32439a(0x143)+_0x56c2ac[_0x32439a(0x152)]+_0x32439a(0x14f),'body':{'skillCode':_0xaf2571['skillCode'],'visibility':_0x32439a(0x157),'valid':_0x3e2c01['valid'],'errors':_0x3e2c01['errors'],'warnings':_0x3e2c01[_0x32439a(0x173)],'resolvedSlug':_0x3e2c01[_0x32439a(0x149)],'resolvedVersion':_0x3e2c01['resolvedVersion']},'description':_0x32439a(0x170)};}if(_0x4489bc&&_0x4489bc['scope']!==_0x32439a(0x156))throw CliErrors[_0x32439a(0x13c)]('Only\x20personal\x20Skills\x20can\x20be\x20pushed;\x20remote\x20Skill\x20'+_0x22d4d3[_0x32439a(0x16b)]+_0x32439a(0x14a)+(_0x4489bc[_0x32439a(0x15c)]??'unknown')+'\x22.');const _0x506fa8=_0x14c7b5(_0x143170['dir'],_0x56c2ac[_0x32439a(0x152)],_0x4489bc?remotePersonalReadOptions(!![]):remoteMissingPersonalReadOptions());return{'method':_0x32439a(0x165),'url':'/api/cli/v1/skills/'+_0x56c2ac[_0x32439a(0x152)]+_0x32439a(0x172),'body':{'skillCode':_0x506fa8[_0x32439a(0x16b)],'visibility':_0x32439a(0x142),'files':_0x506fa8[_0x32439a(0x148)][_0x32439a(0x14c)]?.[_0x32439a(0x14c)][_0x32439a(0x15e)](_0x2c713f=>_0x2c713f[_0x32439a(0x171)])??[]},'description':_0x32439a(0x146)};}export async function skillPushExecute(_0x431642){const _0x3863c2=a49_0x9692,{createPersonalRuntimeSkill:_0x3a3995,downloadRuntimeSkillPackage:_0x4a95fb,getRuntimeSkillByCode:_0x98db4c,publishCompanyRuntimeSkill:_0x52f1f1,updatePersonalRuntimeSkill:_0x2bf3cf,validateRuntimeSkillPublish:_0x54ee1a}=await import(_0x3863c2(0x145)),{verifyRuntimeSkillPackage:_0x2a090e,verifyRuntimeSkillBundle:_0x5692cb,readPushDirectory:_0x5c9b66,refreshPushDirectoryMetadataFromRemote:_0x1f24ab,recordPushedRuntimeSkill:_0xaa28,resolvePushDirectoryIdentity:_0x43f3bc}=await import(_0x3863c2(0x15b));if(!_0x431642[_0x3863c2(0x168)])throw CliErrors[_0x3863c2(0x154)]();const _0x1575a0=resolvePushScope(_0x431642),_0x3e4066=validateSkillDirectory(_0x431642[_0x3863c2(0x164)]('dir'));throwIfSkillValidationFailed(_0x3e4066);const _0x291ed8=_0x3e4066[_0x3863c2(0x162)];let _0x170a45;if(_0x1575a0===_0x3863c2(0x144)){const _0x15e612=_0x43f3bc(_0x291ed8,_0x431642[_0x3863c2(0x152)],remoteFirstMetadataOptions()),_0x4c15e5=await _0x98db4c(_0x431642['appCode'],_0x15e612[_0x3863c2(0x16b)]);throwIfBuiltinPushTarget(_0x4c15e5);if(_0x4c15e5)_0x1f24ab(_0x291ed8,_0x4c15e5,_0x431642[_0x3863c2(0x152)]);const _0x8a7c04=_0x5c9b66(_0x291ed8,_0x431642[_0x3863c2(0x152)],_0x4c15e5?{'targetScope':_0x3863c2(0x144),'ignoreInvalidMetadata':!![]}:remoteMissingCompanyReadOptions());_0x170a45={'scope':_0x3863c2(0x144),'payload':_0x8a7c04,'publishInput':_0x8a7c04[_0x3863c2(0x148)],'remoteForPreflight':_0x4c15e5,'warnings':[]};}else{const _0x20981a=_0x431642[_0x3863c2(0x164)]('appcode')[_0x3863c2(0x151)](),_0x9a45fe=Boolean(_0x20981a),_0x3b3c69=allowRetargetArgs(_0x9a45fe),_0x2a9cd9=_0x43f3bc(_0x291ed8,_0x431642[_0x3863c2(0x152)],{...remoteFirstMetadataOptions(),..._0x3b3c69[0x0]}),_0xf4a870=await _0x98db4c(_0x431642['appCode'],_0x2a9cd9[_0x3863c2(0x16b)]);throwIfBuiltinPushTarget(_0xf4a870);if(_0xf4a870){if(_0xf4a870[_0x3863c2(0x15c)]!==_0x3863c2(0x156)){if(_0x9a45fe)throw CliErrors[_0x3863c2(0x13c)](_0x3863c2(0x15d)+_0x2a9cd9['skillCode']+_0x3863c2(0x14a)+(_0xf4a870[_0x3863c2(0x15c)]??'unknown')+'\x22.');_0x1f24ab(_0x291ed8,_0xf4a870,_0x431642[_0x3863c2(0x152)]);}else!_0x9a45fe&&_0x1f24ab(_0x291ed8,_0xf4a870,_0x431642[_0x3863c2(0x152)]);}const _0x320925=_0x5c9b66(_0x291ed8,_0x431642[_0x3863c2(0x152)],_0xf4a870?remotePersonalReadOptions(_0x9a45fe,_0x3b3c69[0x0]):remoteMissingPersonalReadOptions(_0x3b3c69[0x0])),_0x1965fa=_0xf4a870?.[_0x3863c2(0x15c)]===_0x3863c2(0x156)&&_0xf4a870[_0x3863c2(0x16b)]===_0x320925[_0x3863c2(0x16b)]?_0xf4a870:undefined,_0x401990=_0x9a45fe&&_0x1965fa?withRetargetExistingMetadata(_0x320925['input'],_0x1965fa,{'preferInputSkillName':Boolean(_0x320925[_0x3863c2(0x153)])}):_0x320925[_0x3863c2(0x148)],_0x369587=_0x9a45fe?buildRetargetWarning(_0x2a9cd9['metadata'],_0x431642['appCode']):[];_0x170a45={'scope':_0x3863c2(0x156),'payload':_0x320925,'publishInput':_0x401990,'remoteForPreflight':_0x1965fa,'existing':_0x1965fa,'warnings':[..._0x3e4066['warnings'],..._0x369587]};}const _0x323858=await runRemoteContentPreflight({'scope':_0x170a45['scope'],'remote':_0x170a45[_0x3863c2(0x13f)],'publishInput':_0x170a45[_0x3863c2(0x15a)],'skillCode':_0x170a45[_0x3863c2(0x141)][_0x3863c2(0x16b)],'appCode':_0x431642[_0x3863c2(0x152)],'downloadRuntimeSkillPackage':_0x4a95fb,'verifyRuntimeSkillBundle':_0x5692cb});if(_0x323858[_0x3863c2(0x174)]==='identical')return _0x170a45[_0x3863c2(0x15c)]===_0x3863c2(0x144)?_0xaa28(_0x291ed8,_0x323858[_0x3863c2(0x16c)],_0x431642['appCode'],{'scope':_0x3863c2(0x144)}):_0xaa28(_0x291ed8,_0x323858[_0x3863c2(0x16c)],_0x431642[_0x3863c2(0x152)]),{'ok':!![],'data':{...summarizeRuntimeSkill(_0x323858[_0x3863c2(0x16c)]),'scope':_0x170a45[_0x3863c2(0x15c)],..._0x170a45[_0x3863c2(0x15c)]==='personal'?{'warnings':_0x170a45['warnings']}:{},'alreadyPublished':!![],'contentIdentical':!![]},'message':scopeLabel(_0x170a45[_0x3863c2(0x15c)])+_0x3863c2(0x16a)+_0x170a45[_0x3863c2(0x141)][_0x3863c2(0x16b)]+'\x20is\x20already\x20published\x20and\x20content\x20is\x20identical'};if(_0x170a45['scope']===_0x3863c2(0x144)){const _0x5ec70c=await _0x54ee1a(_0x431642['appCode'],_0x170a45[_0x3863c2(0x15a)],{'visibility':_0x3863c2(0x157)});throwIfPublishValidationFailed(_0x170a45[_0x3863c2(0x141)]['skillCode'],_0x5ec70c);const _0x319adc=_0x431642[_0x3863c2(0x13b)]('confirm-warnings')||_0x431642[_0x3863c2(0x13b)](_0x3863c2(0x16f));if(_0x5ec70c[_0x3863c2(0x173)]['length']>0x0&&!_0x319adc)throw CliErrors[_0x3863c2(0x13c)](_0x3863c2(0x160)+_0x170a45[_0x3863c2(0x141)][_0x3863c2(0x16b)]+'.','Review\x20the\x20warnings\x20and\x20rerun\x20with\x20--confirm-warnings\x20to\x20submit:\x20'+_0x5ec70c[_0x3863c2(0x173)][_0x3863c2(0x140)](';\x20'));const _0x4262a3=await _0x52f1f1(_0x431642[_0x3863c2(0x152)],_0x170a45['publishInput'],{'confirmWarnings':_0x319adc});return _0xaa28(_0x291ed8,{..._0x4262a3,'files':_0x170a45[_0x3863c2(0x15a)]['files']},_0x431642[_0x3863c2(0x152)],{'scope':_0x3863c2(0x144)}),{'ok':!![],'data':{...summarizeRuntimeSkill(_0x4262a3),'scope':_0x3863c2(0x144),'reviewState':'submitted','submittedForReview':!![],'validation':{'warnings':_0x5ec70c[_0x3863c2(0x173)]}},'message':_0x3863c2(0x14b)+_0x170a45[_0x3863c2(0x141)][_0x3863c2(0x16b)]+_0x3863c2(0x158)+(_0x4262a3[_0x3863c2(0x169)]??_0x3863c2(0x14d))+_0x3863c2(0x166)};}const _0x59f6e4=_0x170a45['existing']?await _0x2bf3cf(_0x170a45['payload'][_0x3863c2(0x16b)],_0x431642[_0x3863c2(0x152)],_0x170a45['publishInput']):await _0x3a3995(_0x431642['appCode'],_0x170a45[_0x3863c2(0x15a)]);let _0x1f1063=_0x59f6e4;if(isMultiFileManifest(_0x170a45[_0x3863c2(0x15a)]['files'])){const _0xedef4c=await _0x4a95fb(_0x3863c2(0x156),_0x59f6e4[_0x3863c2(0x16b)]||_0x170a45[_0x3863c2(0x141)]['skillCode'],_0x431642['appCode']);_0x5692cb(_0x170a45[_0x3863c2(0x15a)][_0x3863c2(0x14c)],_0xedef4c),_0x1f1063={..._0x59f6e4,'files':_0x170a45[_0x3863c2(0x15a)][_0x3863c2(0x14c)]};}else{if(isPackageBackedManifest(_0x59f6e4[_0x3863c2(0x14c)])){const _0x69344b=await _0x4a95fb(_0x3863c2(0x156),_0x59f6e4['skillCode']||_0x170a45[_0x3863c2(0x141)][_0x3863c2(0x16b)],_0x431642[_0x3863c2(0x152)]);_0x2a090e(_0x59f6e4[_0x3863c2(0x14c)],_0x69344b);}}return _0xaa28(_0x291ed8,_0x1f1063,_0x431642[_0x3863c2(0x152)]),{'ok':!![],'data':{...summarizeRuntimeSkill(_0x59f6e4),'warnings':_0x170a45[_0x3863c2(0x173)]},'message':_0x170a45[_0x3863c2(0x15f)]?_0x3863c2(0x159)+_0x170a45[_0x3863c2(0x141)][_0x3863c2(0x16b)]:_0x3863c2(0x16d)+_0x170a45[_0x3863c2(0x141)][_0x3863c2(0x16b)]};}function scopeLabel(_0x3c5ad3){const _0x35ade2=a49_0x9692;return _0x3c5ad3===_0x35ade2(0x144)?'Company':_0x35ade2(0x163);}
@@ -1 +1 @@
1
- (function(_0x515955,_0x4b4b04){const _0x2390f9=a50_0x2ea0,_0x3a3390=_0x515955();while(!![]){try{const _0x5b767a=-parseInt(_0x2390f9(0x1cd))/0x1*(-parseInt(_0x2390f9(0x1c0))/0x2)+parseInt(_0x2390f9(0x1ce))/0x3*(-parseInt(_0x2390f9(0x1c2))/0x4)+-parseInt(_0x2390f9(0x1c1))/0x5*(parseInt(_0x2390f9(0x1b8))/0x6)+parseInt(_0x2390f9(0x1b5))/0x7*(-parseInt(_0x2390f9(0x1bb))/0x8)+parseInt(_0x2390f9(0x1d1))/0x9*(-parseInt(_0x2390f9(0x1b6))/0xa)+-parseInt(_0x2390f9(0x1b7))/0xb+parseInt(_0x2390f9(0x1c7))/0xc;if(_0x5b767a===_0x4b4b04)break;else _0x3a3390['push'](_0x3a3390['shift']());}catch(_0x2e1e3a){_0x3a3390['push'](_0x3a3390['shift']());}}}(a50_0x4f6d,0xe6dec));import{CliErrors}from'../../errors.js';export function resolvePushScope(_0xad9d6f){const _0x19df71=a50_0x2ea0,_0x3685a9=_0xad9d6f[_0x19df71(0x1bd)](_0x19df71(0x1ba))||'personal';if(_0x3685a9===_0x19df71(0x1bf)||_0x3685a9==='company')return _0x3685a9;throw CliErrors[_0x19df71(0x1b9)](_0x19df71(0x1c4)+_0x3685a9+'\x22.');}function a50_0x4f6d(){const _0x9f2d5d=['errors','skill\x20push\x20supports\x20--scope\x20personal\x20or\x20--scope\x20company;\x20received\x20\x22','(unknown)','Company\x20Skill\x20push\x20validation\x20failed\x20for\x20','32188380FhATxd','company','\x20cannot\x20be\x20pushed.','\x20after\x20successful\x20push.','SkillHub\x20validation\x20returned\x20invalid.','Use\x20a\x20different\x20skillCode\x20when\x20submitting\x20a\x20personal\x20or\x20company\x20Skill.','190qvHPvL','3pJPjxB','Local\x20Skill\x20metadata\x20appCode\x20','Review\x20the\x20updated\x20local\x20Skill\x20metadata\x20before\x20the\x20next\x20push.','117900wCcIFV','appCode','4861822dKcEkd','240dlzkeU','11174658aUGgiW','12vxMpIB','validation','scope','8wHDiVj','skillCode','str','lovrabet.skill.json','personal','6972MxQrpH','19585cTJDNx','1465612neoobl'];a50_0x4f6d=function(){return _0x9f2d5d;};return a50_0x4f6d();}export function allowRetargetArgs(_0x5affcd){return _0x5affcd?[{'allowAppCodeRetarget':!![]}]:[];}export function remoteFirstMetadataOptions(){return{'ignoreInvalidMetadata':!![],'ignoreMetadataAppCodeMismatch':!![],'ignoreMetadataSkillCode':!![]};}export function remoteMissingPayloadOptions(){return{'ignoreMetadataForPayload':!![],'ignoreMetadataScope':!![],'ignoreMetadataSkillCode':!![]};}export function remoteMissingCompanyReadOptions(){const _0x276609=a50_0x2ea0;return{'targetScope':_0x276609(0x1c8),...remoteFirstMetadataOptions(),...remoteMissingPayloadOptions()};}export function remoteMissingPersonalReadOptions(_0x4465c0={}){return{...remoteFirstMetadataOptions(),...remoteMissingPayloadOptions(),..._0x4465c0};}function a50_0x2ea0(_0x5d50b4,_0x4c3ca5){_0x5d50b4=_0x5d50b4-0x1b4;const _0x4f6d12=a50_0x4f6d();let _0x2ea019=_0x4f6d12[_0x5d50b4];return _0x2ea019;}export function remotePersonalReadOptions(_0x223662,_0x29fe0d={}){return{'ignoreInvalidMetadata':!![],..._0x223662?{'ignoreMetadataAppCodeMismatch':!![],'ignoreMetadataScope':!![]}:{},..._0x29fe0d};}export function throwIfBuiltinPushTarget(_0x38bb87){const _0x25e303=a50_0x2ea0;if(_0x38bb87?.[_0x25e303(0x1ba)]!=='builtin')return;throw CliErrors[_0x25e303(0x1b9)]('Builtin\x20Skill\x20'+(_0x38bb87[_0x25e303(0x1bc)]??_0x25e303(0x1c5))+_0x25e303(0x1c9),_0x25e303(0x1cc));}export function throwIfPublishValidationFailed(_0x37ec49,_0x25e14d){const _0x1cd563=a50_0x2ea0;if(_0x25e14d['valid']&&_0x25e14d[_0x1cd563(0x1c3)]['length']===0x0)return;const _0x26b36d=_0x25e14d[_0x1cd563(0x1c3)]['length']>0x0?_0x25e14d['errors']['join'](';\x20'):_0x1cd563(0x1cb);throw CliErrors['validation'](_0x1cd563(0x1c6)+_0x37ec49+'.',_0x26b36d);}export function buildRetargetWarning(_0x3096c3,_0x71a3e){const _0x2168ab=a50_0x2ea0;if(!_0x3096c3?.[_0x2168ab(0x1b4)]||_0x3096c3[_0x2168ab(0x1b4)]===_0x71a3e)return[];return[{'level':'warning','ruleId':'skill-metadata-appcode-retargeted','file':_0x2168ab(0x1be),'message':_0x2168ab(0x1cf)+_0x3096c3[_0x2168ab(0x1b4)]+'\x20was\x20retargeted\x20to\x20explicit\x20appCode\x20'+_0x71a3e+_0x2168ab(0x1ca),'suggestion':_0x2168ab(0x1d0)}];}
1
+ function a50_0x22de(){const _0x172667=['Local\x20Skill\x20metadata\x20appCode\x20','identical','\x20was\x20retargeted\x20to\x20explicit\x20appCode\x20','100461tQnhku','personal','join','warning','not-applicable','verifyRuntimeSkillBundle','validation','80310kHsPfE','valid','7529jRiEYx','version','995208CppcWu','scope','lovrabet.skill.json','Builtin\x20Skill\x20','176qGdsmQ','publishInput','SkillHub\x20validation\x20returned\x20invalid.','Review\x20the\x20updated\x20local\x20Skill\x20metadata\x20before\x20the\x20next\x20push.','17991oNMohY','appCode','736212nhyVYY','skill\x20push\x20supports\x20--scope\x20personal\x20or\x20--scope\x20company;\x20received\x20\x22','builtin','errors','skill-metadata-appcode-retargeted','12KmPERE','Company\x20Skill\x20push\x20validation\x20failed\x20for\x20','skillCode','files','content','remote','length','554645kjImBt','str'];a50_0x22de=function(){return _0x172667;};return a50_0x22de();}(function(_0xd6fb0f,_0x2f4d30){const _0x563d1f=a50_0x41dd,_0x55987b=_0xd6fb0f();while(!![]){try{const _0x585421=parseInt(_0x563d1f(0xb9))/0x1*(-parseInt(_0x563d1f(0xa4))/0x2)+parseInt(_0x563d1f(0xb0))/0x3+-parseInt(_0x563d1f(0x9f))/0x4+parseInt(_0x563d1f(0xb7))/0x5+parseInt(_0x563d1f(0xbb))/0x6+parseInt(_0x563d1f(0xab))/0x7+parseInt(_0x563d1f(0xbf))/0x8*(parseInt(_0x563d1f(0x9d))/0x9);if(_0x585421===_0x2f4d30)break;else _0x55987b['push'](_0x55987b['shift']());}catch(_0x4017f9){_0x55987b['push'](_0x55987b['shift']());}}}(a50_0x22de,0x1ab5b));import{CliErrors}from'../../errors.js';export function resolvePushScope(_0x3df402){const _0x3e91db=a50_0x41dd,_0x18f726=_0x3df402[_0x3e91db(0xac)](_0x3e91db(0xbc))||_0x3e91db(0xb1);if(_0x18f726===_0x3e91db(0xb1)||_0x18f726==='company')return _0x18f726;throw CliErrors['validation'](_0x3e91db(0xa0)+_0x18f726+'\x22.');}export function allowRetargetArgs(_0x3c58ff){return _0x3c58ff?[{'allowAppCodeRetarget':!![]}]:[];}export function remoteFirstMetadataOptions(){return{'ignoreInvalidMetadata':!![],'ignoreMetadataAppCodeMismatch':!![],'ignoreMetadataSkillCode':!![]};}export function remoteMissingPayloadOptions(){return{'ignoreMetadataForPayload':!![],'ignoreMetadataScope':!![],'ignoreMetadataSkillCode':!![]};}export function remoteMissingCompanyReadOptions(){return{'targetScope':'company',...remoteFirstMetadataOptions(),...remoteMissingPayloadOptions()};}export function remoteMissingPersonalReadOptions(_0x2bc110={}){return{...remoteFirstMetadataOptions(),...remoteMissingPayloadOptions(),..._0x2bc110};}export function remotePersonalReadOptions(_0x54ae7a,_0x39a4ff={}){return{'ignoreInvalidMetadata':!![],..._0x54ae7a?{'ignoreMetadataAppCodeMismatch':!![],'ignoreMetadataScope':!![]}:{},..._0x39a4ff};}function a50_0x41dd(_0x6220a5,_0x2e2bf1){_0x6220a5=_0x6220a5-0x9a;const _0x22deb6=a50_0x22de();let _0x41ddd8=_0x22deb6[_0x6220a5];return _0x41ddd8;}export function throwIfBuiltinPushTarget(_0x1339c4){const _0x3543a3=a50_0x41dd;if(_0x1339c4?.[_0x3543a3(0xbc)]!==_0x3543a3(0xa1))return;throw CliErrors['validation'](_0x3543a3(0xbe)+(_0x1339c4[_0x3543a3(0xa6)]??'(unknown)')+'\x20cannot\x20be\x20pushed.','Use\x20a\x20different\x20skillCode\x20when\x20submitting\x20a\x20personal\x20or\x20company\x20Skill.');}export function throwIfPublishValidationFailed(_0x1cdc53,_0x524999){const _0xf55922=a50_0x41dd;if(_0x524999[_0xf55922(0xb8)]&&_0x524999[_0xf55922(0xa2)][_0xf55922(0xaa)]===0x0)return;const _0x514392=_0x524999[_0xf55922(0xa2)][_0xf55922(0xaa)]>0x0?_0x524999[_0xf55922(0xa2)][_0xf55922(0xb2)](';\x20'):_0xf55922(0x9b);throw CliErrors[_0xf55922(0xb6)](_0xf55922(0xa5)+_0x1cdc53+'.',_0x514392);}export function buildRetargetWarning(_0x22b55a,_0xe12d75){const _0xe3994f=a50_0x41dd;if(!_0x22b55a?.[_0xe3994f(0x9e)]||_0x22b55a[_0xe3994f(0x9e)]===_0xe12d75)return[];return[{'level':_0xe3994f(0xb3),'ruleId':_0xe3994f(0xa3),'file':_0xe3994f(0xbd),'message':_0xe3994f(0xad)+_0x22b55a['appCode']+_0xe3994f(0xaf)+_0xe12d75+'\x20after\x20successful\x20push.','suggestion':_0xe3994f(0x9c)}];}export async function runRemoteContentPreflight(_0xdd1762){const _0x7735e7=a50_0x41dd;if(!_0xdd1762[_0x7735e7(0xa9)]||_0xdd1762[_0x7735e7(0xa9)][_0x7735e7(0xbc)]!==_0xdd1762['scope']||!_0xdd1762[_0x7735e7(0x9a)]['files'])return{'status':_0x7735e7(0xb4)};const _0x3dd1d6=_0xdd1762['remote'][_0x7735e7(0xa6)]||_0xdd1762[_0x7735e7(0xa6)];if(!_0x3dd1d6)return{'status':'not-applicable'};const _0xd5a566=await _0xdd1762['downloadRuntimeSkillPackage'](_0xdd1762['scope'],_0x3dd1d6,_0xdd1762[_0x7735e7(0x9e)],_0xdd1762[_0x7735e7(0xa9)][_0x7735e7(0xba)]);try{_0xdd1762[_0x7735e7(0xb5)](_0xdd1762[_0x7735e7(0x9a)][_0x7735e7(0xa7)],_0xd5a566);}catch{return{'status':'different'};}return{'status':_0x7735e7(0xae),'savedSkill':{..._0xdd1762[_0x7735e7(0xa9)],'content':_0xdd1762[_0x7735e7(0x9a)][_0x7735e7(0xa8)],'files':_0xdd1762[_0x7735e7(0x9a)][_0x7735e7(0xa7)]}};}
@@ -1 +1 @@
1
- (function(_0x2469ca,_0x2279de){const _0x544493=a51_0x5315,_0x2e75fd=_0x2469ca();while(!![]){try{const _0x509588=-parseInt(_0x544493(0x153))/0x1*(parseInt(_0x544493(0x159))/0x2)+-parseInt(_0x544493(0x15f))/0x3+-parseInt(_0x544493(0x15c))/0x4*(parseInt(_0x544493(0x151))/0x5)+-parseInt(_0x544493(0x162))/0x6+parseInt(_0x544493(0x14d))/0x7*(-parseInt(_0x544493(0x164))/0x8)+-parseInt(_0x544493(0x154))/0x9*(parseInt(_0x544493(0x166))/0xa)+parseInt(_0x544493(0x155))/0xb;if(_0x509588===_0x2279de)break;else _0x2e75fd['push'](_0x2e75fd['shift']());}catch(_0x1832f6){_0x2e75fd['push'](_0x2e75fd['shift']());}}}(a51_0x512d,0x5a1ec));function a51_0x5315(_0x5dc807,_0x3d0e99){_0x5dc807=_0x5dc807-0x14d;const _0x512d5a=a51_0x512d();let _0x5315e9=_0x512d5a[_0x5dc807];return _0x5315e9;}export function withRetargetExistingMetadata(_0x14e703,_0x19fb40,_0x2589fc={}){const _0x2866aa=a51_0x5315,_0x68d78f=_0x2589fc[_0x2866aa(0x14e)]?_0x14e703['skillName']??_0x19fb40[_0x2866aa(0x165)]:_0x19fb40[_0x2866aa(0x165)]??_0x14e703[_0x2866aa(0x165)];return{..._0x14e703,'skillName':_0x68d78f,'description':_0x19fb40[_0x2866aa(0x15d)]??_0x14e703[_0x2866aa(0x15d)],'tags':Array[_0x2866aa(0x152)](_0x19fb40[_0x2866aa(0x15a)])?_0x19fb40[_0x2866aa(0x15a)]:_0x14e703[_0x2866aa(0x15a)],'version':_0x19fb40[_0x2866aa(0x157)]??_0x14e703[_0x2866aa(0x157)],'sourceSessionId':_0x19fb40[_0x2866aa(0x15b)]??_0x14e703[_0x2866aa(0x15b)]};}function a51_0x512d(){const _0x4675fd=['\x20was\x20retargeted\x20to\x20explicit\x20appCode\x20','1380885opvtky','lovrabet.skill.json','Review\x20the\x20updated\x20local\x20Skill\x20metadata\x20before\x20the\x20next\x20push.','3937338PBIYSd','Local\x20Skill\x20metadata\x20appCode\x20','3768pSIHAw','skillName','1990LrPSBZ','4291VWHjSt','preferInputSkillName','\x20after\x20successful\x20push.','appCode','5nSjaaM','isArray','1014lRfVsZ','33228qxSnIr','35226499nFzXwi','skill-metadata-appcode-retargeted','version','warning','1086kkcRGO','tags','sourceSessionId','570904lICfez','description'];a51_0x512d=function(){return _0x4675fd;};return a51_0x512d();}export function buildRetargetWarning(_0xc23a5e,_0x268fe5){const _0x51a811=a51_0x5315;if(!_0xc23a5e?.[_0x51a811(0x150)]||_0xc23a5e[_0x51a811(0x150)]===_0x268fe5)return[];return[{'level':_0x51a811(0x158),'ruleId':_0x51a811(0x156),'file':_0x51a811(0x160),'message':_0x51a811(0x163)+_0xc23a5e[_0x51a811(0x150)]+_0x51a811(0x15e)+_0x268fe5+_0x51a811(0x14f),'suggestion':_0x51a811(0x161)}];}
1
+ function a51_0x243d(){const _0x1cbc78=['416384nwFMAK','appCode','721zQUDgJ','version','warning','tags','618025EuqrSX','37476xAOTBH','4mhrupb','\x20was\x20retargeted\x20to\x20explicit\x20appCode\x20','1961728ArcTnk','15306rtqHhs','10wRlDAN','54951lkNvRV','preferInputSkillName','sourceSessionId','isArray','483471Ljizsl','lovrabet.skill.json','\x20after\x20successful\x20push.','skillName'];a51_0x243d=function(){return _0x1cbc78;};return a51_0x243d();}(function(_0x13a42b,_0x40e784){const _0x38ed66=a51_0x1297,_0x198ac4=_0x13a42b();while(!![]){try{const _0x42c546=-parseInt(_0x38ed66(0x192))/0x1+-parseInt(_0x38ed66(0x193))/0x2*(parseInt(_0x38ed66(0x198))/0x3)+parseInt(_0x38ed66(0x1a0))/0x4+parseInt(_0x38ed66(0x1a6))/0x5+-parseInt(_0x38ed66(0x196))/0x6*(-parseInt(_0x38ed66(0x1a2))/0x7)+-parseInt(_0x38ed66(0x195))/0x8+-parseInt(_0x38ed66(0x19c))/0x9*(-parseInt(_0x38ed66(0x197))/0xa);if(_0x42c546===_0x40e784)break;else _0x198ac4['push'](_0x198ac4['shift']());}catch(_0xb67700){_0x198ac4['push'](_0x198ac4['shift']());}}}(a51_0x243d,0x36e4f));export function withRetargetExistingMetadata(_0x34f128,_0x23fba9,_0x4fd96a={}){const _0x2fdec4=a51_0x1297,_0x4c14e5=_0x4fd96a[_0x2fdec4(0x199)]?_0x34f128[_0x2fdec4(0x19f)]??_0x23fba9[_0x2fdec4(0x19f)]:_0x23fba9[_0x2fdec4(0x19f)]??_0x34f128[_0x2fdec4(0x19f)];return{..._0x34f128,'skillName':_0x4c14e5,'description':_0x23fba9['description']??_0x34f128['description'],'tags':Array[_0x2fdec4(0x19b)](_0x23fba9[_0x2fdec4(0x1a5)])?_0x23fba9[_0x2fdec4(0x1a5)]:_0x34f128[_0x2fdec4(0x1a5)],'version':_0x23fba9[_0x2fdec4(0x1a3)]??_0x34f128[_0x2fdec4(0x1a3)],'sourceSessionId':_0x23fba9[_0x2fdec4(0x19a)]??_0x34f128[_0x2fdec4(0x19a)]};}function a51_0x1297(_0x33a7d8,_0x3b5153){_0x33a7d8=_0x33a7d8-0x192;const _0x243de9=a51_0x243d();let _0x1297e8=_0x243de9[_0x33a7d8];return _0x1297e8;}export function buildRetargetWarning(_0x29d6b8,_0x333d68){const _0x538958=a51_0x1297;if(!_0x29d6b8?.[_0x538958(0x1a1)]||_0x29d6b8[_0x538958(0x1a1)]===_0x333d68)return[];return[{'level':_0x538958(0x1a4),'ruleId':'skill-metadata-appcode-retargeted','file':_0x538958(0x19d),'message':'Local\x20Skill\x20metadata\x20appCode\x20'+_0x29d6b8[_0x538958(0x1a1)]+_0x538958(0x194)+_0x333d68+_0x538958(0x19e),'suggestion':'Review\x20the\x20updated\x20local\x20Skill\x20metadata\x20before\x20the\x20next\x20push.'}];}
@@ -1 +1 @@
1
- function a52_0x1652(){const _0x305bcc=['3EVifLt','4143616WIKENN','10jtpcSq','582549pdZEYa','9822RbhJsv','all','Unsupported\x20Skill\x20sync\x20scope:\x20','7674867PybpgK','personal','2330lrGJAP','8YGjPJK','904284BjGGRW','1072188kpdOGw','5371548uVXoMT','validation','company','Unsupported\x20Skill\x20list\x20scope:\x20','732heMsMe','trim'];a52_0x1652=function(){return _0x305bcc;};return a52_0x1652();}(function(_0x2aba51,_0x46a182){const _0x5f1282=a52_0x491a,_0x200d87=_0x2aba51();while(!![]){try{const _0x1c21ec=-parseInt(_0x5f1282(0xe4))/0x1+-parseInt(_0x5f1282(0xe5))/0x2*(-parseInt(_0x5f1282(0xec))/0x3)+-parseInt(_0x5f1282(0xed))/0x4+-parseInt(_0x5f1282(0xe2))/0x5*(-parseInt(_0x5f1282(0xf0))/0x6)+-parseInt(_0x5f1282(0xe6))/0x7*(parseInt(_0x5f1282(0xe3))/0x8)+parseInt(_0x5f1282(0xe0))/0x9*(-parseInt(_0x5f1282(0xee))/0xa)+parseInt(_0x5f1282(0xef))/0xb*(parseInt(_0x5f1282(0xea))/0xc);if(_0x1c21ec===_0x46a182)break;else _0x200d87['push'](_0x200d87['shift']());}catch(_0x2c7fcf){_0x200d87['push'](_0x200d87['shift']());}}}(a52_0x1652,0xec9a0));import{CliErrors}from'../../errors.js';export function normalizeSyncScopes(_0x4fe2d3){const _0x2a4856=a52_0x491a,_0x426c6c=_0x4fe2d3['trim']();if(!_0x426c6c||_0x426c6c===_0x2a4856(0xf1))return[_0x2a4856(0xe1),_0x2a4856(0xe8)];if(_0x426c6c===_0x2a4856(0xe1)||_0x426c6c===_0x2a4856(0xe8))return[_0x426c6c];throw CliErrors[_0x2a4856(0xe7)](_0x2a4856(0xdf)+_0x4fe2d3);}function a52_0x491a(_0x3b1700,_0x31d142){_0x3b1700=_0x3b1700-0xdf;const _0x16522a=a52_0x1652();let _0x491a99=_0x16522a[_0x3b1700];return _0x491a99;}export function normalizeListScope(_0x216ecd){const _0x3952a7=a52_0x491a,_0x1062c6=_0x216ecd[_0x3952a7(0xeb)]();if(!_0x1062c6)return _0x3952a7(0xf1);if(_0x1062c6==='personal'||_0x1062c6===_0x3952a7(0xe8)||_0x1062c6===_0x3952a7(0xf1))return _0x1062c6;throw CliErrors['validation'](_0x3952a7(0xe9)+_0x216ecd);}export function shouldListScope(_0x46a65c,_0x4f70ad){const _0x4ef255=a52_0x491a;if(_0x46a65c===_0x4ef255(0xf1))return!![];return _0x46a65c===_0x4f70ad;}export function listScopeToRuntimeScopes(_0xca2912){const _0x1b0dee=a52_0x491a;if(_0xca2912==='all')return['personal',_0x1b0dee(0xe8)];return[_0xca2912==='company'?'company':_0xca2912];}export function listScopeToRemoteScope(_0x12d7ea){return _0x12d7ea;}
1
+ (function(_0x27d56e,_0x1231ad){const _0x4a5b00=a52_0x19eb,_0x59857f=_0x27d56e();while(!![]){try{const _0x313974=-parseInt(_0x4a5b00(0x157))/0x1+parseInt(_0x4a5b00(0x158))/0x2+-parseInt(_0x4a5b00(0x15b))/0x3*(parseInt(_0x4a5b00(0x151))/0x4)+parseInt(_0x4a5b00(0x154))/0x5+parseInt(_0x4a5b00(0x153))/0x6+parseInt(_0x4a5b00(0x155))/0x7*(parseInt(_0x4a5b00(0x15a))/0x8)+-parseInt(_0x4a5b00(0x15d))/0x9;if(_0x313974===_0x1231ad)break;else _0x59857f['push'](_0x59857f['shift']());}catch(_0x6e8472){_0x59857f['push'](_0x59857f['shift']());}}}(a52_0x2777,0x4bc2f));import{CliErrors}from'../../errors.js';function a52_0x19eb(_0x5492a1,_0x1015ab){_0x5492a1=_0x5492a1-0x14f;const _0x277788=a52_0x2777();let _0x19eb07=_0x277788[_0x5492a1];return _0x19eb07;}export function normalizeSyncScopes(_0x36eb50){const _0x52dcaf=a52_0x19eb,_0x548979=_0x36eb50['trim']();if(!_0x548979||_0x548979===_0x52dcaf(0x156))return[_0x52dcaf(0x15c),'company'];if(_0x548979===_0x52dcaf(0x15c)||_0x548979===_0x52dcaf(0x14f))return[_0x548979];throw CliErrors[_0x52dcaf(0x152)](_0x52dcaf(0x150)+_0x36eb50);}export function normalizeListScope(_0x3e0b90){const _0x3d7b85=a52_0x19eb,_0x36e012=_0x3e0b90['trim']();if(!_0x36e012)return _0x3d7b85(0x156);if(_0x36e012==='personal'||_0x36e012==='company'||_0x36e012===_0x3d7b85(0x156))return _0x36e012;throw CliErrors[_0x3d7b85(0x152)](_0x3d7b85(0x159)+_0x3e0b90);}export function shouldListScope(_0x567bce,_0x38cc4d){const _0x3cd41b=a52_0x19eb;if(_0x567bce===_0x3cd41b(0x156))return!![];return _0x567bce===_0x38cc4d;}export function listScopeToRuntimeScopes(_0x5e1a5b){const _0x4c8294=a52_0x19eb;if(_0x5e1a5b===_0x4c8294(0x156))return[_0x4c8294(0x15c),'company'];return[_0x5e1a5b==='company'?_0x4c8294(0x14f):_0x5e1a5b];}function a52_0x2777(){const _0x640b57=['1557725sZHUdF','2066603lMFulS','all','609235nDOuGH','1072350EgTYji','Unsupported\x20Skill\x20list\x20scope:\x20','16qbectz','1536693ptukEV','personal','4342671xMXfPx','company','Unsupported\x20Skill\x20sync\x20scope:\x20','4rEGYKm','validation','2856756AoRASA'];a52_0x2777=function(){return _0x640b57;};return a52_0x2777();}export function listScopeToRemoteScope(_0x591430){return _0x591430;}
@@ -1 +1 @@
1
- (function(_0x15fb35,_0x5771a1){var _0x222f9b=a53_0x5a8e,_0x56722f=_0x15fb35();while(!![]){try{var _0x439026=parseInt(_0x222f9b(0xe6))/0x1*(-parseInt(_0x222f9b(0xf0))/0x2)+parseInt(_0x222f9b(0xed))/0x3+parseInt(_0x222f9b(0xf4))/0x4*(parseInt(_0x222f9b(0xf3))/0x5)+parseInt(_0x222f9b(0xf2))/0x6+parseInt(_0x222f9b(0xf1))/0x7+parseInt(_0x222f9b(0xeb))/0x8+-parseInt(_0x222f9b(0xf8))/0x9;if(_0x439026===_0x5771a1)break;else _0x56722f['push'](_0x56722f['shift']());}catch(_0x2ae5f7){_0x56722f['push'](_0x56722f['shift']());}}}(a53_0xd3a5,0xbc279));export function summarizeRuntimeSkill(_0x22bea5){var _0xcac0b=a53_0x5a8e;return{'id':_0x22bea5['id'],'skillCode':_0x22bea5[_0xcac0b(0xee)],'skillName':_0x22bea5[_0xcac0b(0xe5)],'scope':_0x22bea5['scope'],'version':_0x22bea5['version'],'readonly':_0x22bea5[_0xcac0b(0xe8)]};}export function summarizeLocalRuntimeSkill(_0x20ec1b){var _0x553654=a53_0x5a8e;return{'id':_0x20ec1b['id'],'skillCode':_0x20ec1b[_0x553654(0xee)],'skillName':_0x20ec1b['skillName'],'scope':_0x20ec1b[_0x553654(0xef)],'appCode':_0x20ec1b['appCode'],'version':_0x20ec1b[_0x553654(0xf5)],'status':_0x20ec1b['status'],'readonly':_0x20ec1b[_0x553654(0xe8)],'tags':_0x20ec1b['tags'],'dir':_0x20ec1b[_0x553654(0xec)],'cacheDir':_0x20ec1b[_0x553654(0xe7)],'skillMdPath':_0x20ec1b[_0x553654(0xea)],'metadataPath':_0x20ec1b[_0x553654(0xe4)],'linkedPaths':_0x20ec1b[_0x553654(0xf6)],'contentHash':_0x20ec1b['contentHash'],'treeHash':_0x20ec1b[_0x553654(0xe9)],'pulledAt':_0x20ec1b[_0x553654(0xf7)]};}function a53_0x5a8e(_0x499cdc,_0x2d7351){_0x499cdc=_0x499cdc-0xe4;var _0xd3a5ba=a53_0xd3a5();var _0x5a8e68=_0xd3a5ba[_0x499cdc];return _0x5a8e68;}function a53_0xd3a5(){var _0x222b9b=['6450913aEVopI','2517312yBHmZK','15ULWrkZ','533548fAMGYN','version','linkedPaths','pulledAt','3073878tNlteZ','metadataPath','skillName','1IOWNPh','cacheDir','readonly','treeHash','skillMdPath','3742792vAfRlp','dir','341280HLnIMT','skillCode','scope','2421316EWOZQf'];a53_0xd3a5=function(){return _0x222b9b;};return a53_0xd3a5();}
1
+ (function(_0x3ae55e,_0x462487){var _0x2ba786=a53_0x46c1,_0x42d368=_0x3ae55e();while(!![]){try{var _0x1d9ec7=parseInt(_0x2ba786(0x161))/0x1+-parseInt(_0x2ba786(0x15c))/0x2+-parseInt(_0x2ba786(0x156))/0x3*(-parseInt(_0x2ba786(0x155))/0x4)+parseInt(_0x2ba786(0x157))/0x5*(parseInt(_0x2ba786(0x159))/0x6)+-parseInt(_0x2ba786(0x15e))/0x7*(-parseInt(_0x2ba786(0x158))/0x8)+-parseInt(_0x2ba786(0x153))/0x9+-parseInt(_0x2ba786(0x150))/0xa;if(_0x1d9ec7===_0x462487)break;else _0x42d368['push'](_0x42d368['shift']());}catch(_0x345c8a){_0x42d368['push'](_0x42d368['shift']());}}}(a53_0xfcf5,0xd19d1));export function summarizeRuntimeSkill(_0x593ca6){var _0x1bc185=a53_0x46c1;return{'id':_0x593ca6['id'],'skillCode':_0x593ca6[_0x1bc185(0x15a)],'skillName':_0x593ca6['skillName'],'scope':_0x593ca6[_0x1bc185(0x14d)],'version':_0x593ca6[_0x1bc185(0x14f)],'readonly':_0x593ca6[_0x1bc185(0x162)]};}function a53_0x46c1(_0x322e52,_0x444334){_0x322e52=_0x322e52-0x14d;var _0xfcf566=a53_0xfcf5();var _0x46c1cd=_0xfcf566[_0x322e52];return _0x46c1cd;}export function summarizeLocalRuntimeSkill(_0x115831){var _0x5c0231=a53_0x46c1;return{'id':_0x115831['id'],'skillCode':_0x115831[_0x5c0231(0x15a)],'skillName':_0x115831[_0x5c0231(0x154)],'scope':_0x115831[_0x5c0231(0x14d)],'appCode':_0x115831[_0x5c0231(0x151)],'version':_0x115831['version'],'status':_0x115831[_0x5c0231(0x15d)],'readonly':_0x115831[_0x5c0231(0x162)],'tags':_0x115831['tags'],'dir':_0x115831['dir'],'cacheDir':_0x115831['cacheDir'],'skillMdPath':_0x115831[_0x5c0231(0x14e)],'metadataPath':_0x115831['metadataPath'],'linkedPaths':_0x115831[_0x5c0231(0x160)],'contentHash':_0x115831[_0x5c0231(0x15b)],'treeHash':_0x115831[_0x5c0231(0x15f)],'pulledAt':_0x115831[_0x5c0231(0x152)]};}function a53_0xfcf5(){var _0x261490=['35ALRtks','treeHash','linkedPaths','939868dNRsgw','readonly','scope','skillMdPath','version','14639280xHYvgL','appCode','pulledAt','14347674IZochv','skillName','38684weWCUW','303EwuDcc','3971155IWHUJN','2351688mciPNK','6NXInWv','skillCode','contentHash','527968NOALBu','status'];a53_0xfcf5=function(){return _0x261490;};return a53_0xfcf5();}
@@ -1 +1 @@
1
- const a54_0x528f32=a54_0x4e4b;(function(_0x573708,_0x17ff49){const _0x234187=a54_0x4e4b,_0x5f37c2=_0x573708();while(!![]){try{const _0x506a7c=-parseInt(_0x234187(0x12e))/0x1+-parseInt(_0x234187(0x131))/0x2*(parseInt(_0x234187(0x147))/0x3)+parseInt(_0x234187(0x159))/0x4*(-parseInt(_0x234187(0x143))/0x5)+parseInt(_0x234187(0x136))/0x6*(-parseInt(_0x234187(0x138))/0x7)+parseInt(_0x234187(0x14f))/0x8*(-parseInt(_0x234187(0x12b))/0x9)+parseInt(_0x234187(0x133))/0xa+-parseInt(_0x234187(0x148))/0xb*(-parseInt(_0x234187(0x12d))/0xc);if(_0x506a7c===_0x17ff49)break;else _0x5f37c2['push'](_0x5f37c2['shift']());}catch(_0x8b55d4){_0x5f37c2['push'](_0x5f37c2['shift']());}}}(a54_0x2efe,0x5e101));import{CliErrors}from'../../errors.js';export const SKILL_TYPES=[a54_0x528f32(0x132),a54_0x528f32(0x140),a54_0x528f32(0x14b)];function a54_0x4e4b(_0x4c3894,_0x233574){_0x4c3894=_0x4c3894-0x12b;const _0x2efeab=a54_0x2efe();let _0x4e4b85=_0x2efeab[_0x4c3894];return _0x4e4b85;}export const DEFAULT_SKILL_TARGET=a54_0x528f32(0x152);export const SKILL_NAME_PATTERN=/^[a-z0-9]+(?:-[a-z0-9]+)*$/;export const RUNTIME_CONTRACT_FILE=a54_0x528f32(0x156);export const OUTPUT_CONTRACT_FILE=a54_0x528f32(0x154);export function validateSkillName(_0x4f872b){const _0x4f5d85=a54_0x528f32,_0x32c9de=_0x4f872b['trim']();if(!SKILL_NAME_PATTERN[_0x4f5d85(0x13e)](_0x32c9de))throw CliErrors[_0x4f5d85(0x149)](_0x4f5d85(0x13a)+_0x4f872b+_0x4f5d85(0x141),_0x4f5d85(0x155));return _0x32c9de;}export function normalizeSkillTemplateType(_0x1737ae){const _0x48da94=a54_0x528f32,_0x465aee=(_0x1737ae||_0x48da94(0x132))[_0x48da94(0x144)]()||_0x48da94(0x132);if(SKILL_TYPES[_0x48da94(0x137)](_0x465aee))return _0x465aee;throw CliErrors['validation'](_0x48da94(0x146)+_0x1737ae,_0x48da94(0x13f)+SKILL_TYPES[_0x48da94(0x14d)](',\x20')+'.');}export function renderSkillTemplate(_0x44c72e){const _0x131985=a54_0x528f32,_0x457e17=validateSkillName(_0x44c72e['skillName']),_0x4ead51=normalizeSkillTemplateType(_0x44c72e[_0x131985(0x139)]),_0x140dca=_0x44c72e[_0x131985(0x13c)]??new Date()['toISOString']();return{'skillName':_0x457e17,'type':_0x4ead51,'files':[{'path':'SKILL.md','content':renderSkillMd(_0x457e17,_0x4ead51,_0x140dca)},{'path':RUNTIME_CONTRACT_FILE,'content':renderRuntimeContract(_0x457e17,_0x4ead51)},{'path':OUTPUT_CONTRACT_FILE,'content':renderOutputContract(_0x457e17,_0x4ead51)}]};}function renderSkillMd(_0x176742,_0xd7609e,_0x4b6189){const _0x4e6695=a54_0x528f32,_0x29fe24=typeWorkflow(_0xd7609e);return _0x4e6695(0x13b)+_0x176742+_0x4e6695(0x14e)+_0xd7609e+'\x0a\x20\x20created:\x20\x22'+_0x4b6189+_0x4e6695(0x153)+_0x176742+'\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'+_0x29fe24+'\x0a\x0a'+businessStateSection(_0xd7609e)+_0x4e6695(0x158);}function a54_0x2efe(){const _0x54f9c4=['#\x20Runtime\x20Contract\x0a\x0aSkill\x20push\x20后的\x20zip\x20包就是完整交付产物。','trainer','\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.mdwikidocs、脚本或个人路径作为运行时必读依赖。\x0a-\x20禁止把说明性的缓存路径、安装路径、示例路径或排障路径包装成运行时必读依赖。\x0a-\x20禁止在未确认影响范围时执行写入。\x0a-\x20禁止隐藏失败或把未知状态描述为成功。\x0a','join','\x0adescription:\x20\x22【填写模型触发语义:用户在什么场景应使用本\x20Skill、不要使用的边界和关键词】\x22\x0ametadata:\x0a\x20\x20type:\x20','177920fCLXhe','1.\x20只读查询:【填写查询入口、过滤条件和权限边界】\x0a2.\x20业务汇总:【填写统计口径、字段解释和异常提示】\x0a3.\x20查看链接:【填写可供运营人员复核的记录、页面或报告链接】\x0a4.\x20禁止写入:不得创建、更新、删除或触发会改变业务状态的动作。','\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','.agents/skills','\x22\x0a\x20\x20generator:\x20\x22lovrabet\x20skill\x20create\x22\x0a---\x0a\x0a#\x20','references/output-contract.md','Use\x20lowercase\x20letters,\x20numbers,\x20and\x20single\x20hyphens,\x20for\x20example\x20invoice-export.','references/runtime-contract.md','##\x20业务状态流转\x0a\x0a【填写本\x20Skill\x20的前置业务状态、允许动作、目标业务状态、fromStatus\x20->\x20toStatus\x20预览、写入后读回核对,以及\x20unknown\x20/\x20needs_manual_check\x20处理。状态迁移合法性必须由业务\x20BFF、Lovrabet\x20平台命令或服务端接口判断,Skill\x20不作为状态事实源。】','\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','39884AssMcW','198RLYQpq','\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=','420qFsAxo','92564QFcGph','#\x20Output\x20Contract\x0a\x0a','1.\x20受控模板预览:【填写待维护内容、影响范围和预览方式】\x0a2.\x20用户确认:【填写确认信息和不可省略的人工判断点】\x0a3.\x20受控维护:【填写确认后的维护步骤和记录方式】\x0a4.\x20只读核对:【填写维护后的核对入口、差异和回滚/修正方式】','23814fGLBRM','write','832500jaNChN','\x20类型默认不执行业务写入;如流程包含受控维护或人工确认,也必须用\x20mode\x20标明执行阶段并暴露核对结果。','1.\x20dry-run:【填写预览入口、影响范围和差异摘要;不得写入业务数据】\x0a2.\x20用户确认:【填写确认语义、目标对象、数量、风险和操作者责任】\x0a3.\x20confirmed\x20写入:【填写确认后的写入入口和幂等/防重复要求】\x0a4.\x20只读核对:【填写写入后的查询核对、差异展示和结果链接】\x0a5.\x20checkpoint:【填写失败恢复、重试条件和人工接管方式】','6bxVhOi','includes','4693703YYyyJO','type','Invalid\x20Skill\x20name:\x20','---\x0aname:\x20','timestamp','write\x20类型在\x20dry_run\x20下只展示预览、影响范围和差异,不写入业务数据。\x0aconfirmed\x20写入后必须执行读回核对,并把核对结果写入\x20verification。\x0a读回异常、业务状态未知或结果不一致时,status\x20必须为\x20partial_success、failed\x20或\x20needs_manual_check。','test','Use\x20one\x20of:\x20','read','.\x20Use\x20lowercase\x20letters,\x20numbers,\x20and\x20single\x20hyphens.','\x0a\x0a##\x20错误与人工接管\x0a\x0aerrors\x20必须包含失败阶段、错误原因和可复核对象。\x0anextActions\x20必须给出重试、补充输入、人工接管或停止处理的动作。\x0a','15ceWWJs','trim','##\x20状态读回与未知状态处理\x0a\x0a【填写业务状态事实源、fromStatus\x20->\x20toStatus\x20预览、写入后读回核对方式,以及\x20unknown\x20/\x20needs_manual_check\x20的处理边界】\x0a\x0a','Unsupported\x20Skill\x20type:\x20','12KtBLBX','512897jQRzJW','validation'];a54_0x2efe=function(){return _0x54f9c4;};return a54_0x2efe();}function renderRuntimeContract(_0x49ed32,_0x2b5d4e){const _0x1430ef=a54_0x528f32,_0x3e4965=_0x2b5d4e===_0x1430ef(0x132)?_0x1430ef(0x145):'';return _0x1430ef(0x14a)+_0x49ed32+_0x1430ef(0x12c)+_0x2b5d4e+_0x1430ef(0x151)+_0x3e4965+_0x1430ef(0x14c);}function renderOutputContract(_0x63d89d,_0x10e9b4){const _0x459bfe=a54_0x528f32,_0xadb869=_0x10e9b4===_0x459bfe(0x132)?_0x459bfe(0x13d):_0x10e9b4+_0x459bfe(0x134);return _0x459bfe(0x12f)+_0x63d89d+'\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'+_0xadb869+_0x459bfe(0x142);}function typeWorkflow(_0x5ee80c){const _0x2f89cd=a54_0x528f32;if(_0x5ee80c===_0x2f89cd(0x140))return _0x2f89cd(0x150);if(_0x5ee80c===_0x2f89cd(0x14b))return _0x2f89cd(0x130);return _0x2f89cd(0x135);}function businessStateSection(_0x254241){const _0x5c3790=a54_0x528f32;if(_0x254241!==_0x5c3790(0x132))return'';return _0x5c3790(0x157);}
1
+ function a54_0x4a05(_0x408f55,_0x50077a){_0x408f55=_0x408f55-0x11a;const _0x35ea6e=a54_0x35ea();let _0x4a0559=_0x35ea6e[_0x408f55];return _0x4a0559;}function a54_0x35ea(){const _0x4a3a09=['3909HhVkBm','references/runtime-contract.md','##\x20业务状态流转\x0a\x0a【填写本\x20Skill\x20的前置业务状态、允许动作、目标业务状态、fromStatus\x20->\x20toStatus\x20预览、写入后读回核对,以及\x20unknown\x20/\x20needs_manual_check\x20处理。状态迁移合法性必须由业务\x20BFF、Lovrabet\x20平台命令或服务端接口判断,Skill\x20不作为状态事实源。】','1.\x20受控模板预览:【填写待维护内容、影响范围和预览方式】\x0a2.\x20用户确认:【填写确认信息和不可省略的人工判断点】\x0a3.\x20受控维护:【填写确认后的维护步骤和记录方式】\x0a4.\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=','Unsupported\x20Skill\x20type:\x20','\x0a\x0a##\x20错误与人工接管\x0a\x0aerrors\x20必须包含失败阶段、错误原因和可复核对象。\x0anextActions\x20必须给出重试、补充输入、人工接管或停止处理的动作。\x0a','references/output-contract.md','\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','403489AhPhLa','Use\x20one\x20of:\x20','write','Invalid\x20Skill\x20name:\x20','\x22\x0a\x20\x20generator:\x20\x22lovrabet\x20skill\x20create\x22\x0a---\x0a\x0a#\x20','90TJFOnT','358YpHJkF','36PQkxZv','\x20类型默认不执行业务写入;如流程包含受控维护或人工确认,也必须用\x20mode\x20标明执行阶段并暴露核对结果。','read','402010YABcas','join','timestamp','##\x20状态读回与未知状态处理\x0a\x0a【填写业务状态事实源、fromStatus\x20->\x20toStatus\x20预览、写入后读回核对方式,以及\x20unknown\x20/\x20needs_manual_check\x20的处理边界】\x0a\x0a','\x0adescription:\x20\x22【填写模型触发语义:用户在什么场景应使用本\x20Skill、不要使用的边界和关键词】\x22\x0ametadata:\x0a\x20\x20type:\x20','99324zPNKcE','test','trainer','4276pNdEKP','\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','484QqTZZv','\x0a\x0a##\x20展示规范\x0a\x0a【填写面向运营人员的展示字段、差异摘要、成功/失败状态和人工处理项;最终输出必须按\x20references/output-contract.md\x20的\x20status\x20/\x20mode\x20/\x20summary\x20/\x20errors\x20/\x20nextActions\x20返回,不能把\x20unknownpartial_successfailed\x20或\x20needs_manual_check\x20包装为\x20success。】\x0a\x0a##\x20失败恢复\x0a\x0a【填写失败后的\x20checkpoint、重试条件、人工接管方式和避免重复写入的核对步骤】\x0a','trim','665924NAZukE','#\x20Runtime\x20Contract\x0a\x0aSkill\x20push\x20后的\x20zip\x20包就是完整交付产物。','6HoNGWG','SKILL.md','\x0a\x20\x20created:\x20\x22','.\x20Use\x20lowercase\x20letters,\x20numbers,\x20and\x20single\x20hyphens.','\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','type','4755192DIgZbG','validation'];a54_0x35ea=function(){return _0x4a3a09;};return a54_0x35ea();}const a54_0x5e70e2=a54_0x4a05;(function(_0x137622,_0x369e3f){const _0x184dea=a54_0x4a05,_0x4e0340=_0x137622();while(!![]){try{const _0x29868b=parseInt(_0x184dea(0x143))/0x1+parseInt(_0x184dea(0x11f))/0x2*(parseInt(_0x184dea(0x13a))/0x3)+-parseInt(_0x184dea(0x12b))/0x4*(-parseInt(_0x184dea(0x11e))/0x5)+-parseInt(_0x184dea(0x132))/0x6*(-parseInt(_0x184dea(0x130))/0x7)+-parseInt(_0x184dea(0x138))/0x8+-parseInt(_0x184dea(0x120))/0x9*(parseInt(_0x184dea(0x123))/0xa)+parseInt(_0x184dea(0x12d))/0xb*(parseInt(_0x184dea(0x128))/0xc);if(_0x29868b===_0x369e3f)break;else _0x4e0340['push'](_0x4e0340['shift']());}catch(_0x10fd8a){_0x4e0340['push'](_0x4e0340['shift']());}}}(a54_0x35ea,0x57e95));import{CliErrors}from'../../errors.js';export const SKILL_TYPES=[a54_0x5e70e2(0x11b),'read',a54_0x5e70e2(0x12a)];export const DEFAULT_SKILL_TARGET='.agents/skills';export const SKILL_NAME_PATTERN=/^[a-z0-9]+(?:-[a-z0-9]+)*$/;export const RUNTIME_CONTRACT_FILE=a54_0x5e70e2(0x13b);export const OUTPUT_CONTRACT_FILE=a54_0x5e70e2(0x141);export function validateSkillName(_0x511982){const _0x1b5c1c=a54_0x5e70e2,_0x17161d=_0x511982[_0x1b5c1c(0x12f)]();if(!SKILL_NAME_PATTERN[_0x1b5c1c(0x129)](_0x17161d))throw CliErrors[_0x1b5c1c(0x139)](_0x1b5c1c(0x11c)+_0x511982+_0x1b5c1c(0x135),'Use\x20lowercase\x20letters,\x20numbers,\x20and\x20single\x20hyphens,\x20for\x20example\x20invoice-export.');return _0x17161d;}export function normalizeSkillTemplateType(_0x36c62a){const _0x12ed8e=a54_0x5e70e2,_0x40e83e=(_0x36c62a||_0x12ed8e(0x11b))[_0x12ed8e(0x12f)]()||_0x12ed8e(0x11b);if(SKILL_TYPES['includes'](_0x40e83e))return _0x40e83e;throw CliErrors[_0x12ed8e(0x139)](_0x12ed8e(0x13f)+_0x36c62a,_0x12ed8e(0x11a)+SKILL_TYPES[_0x12ed8e(0x124)](',\x20')+'.');}export function renderSkillTemplate(_0x216c60){const _0x50a79e=a54_0x5e70e2,_0xa85406=validateSkillName(_0x216c60['skillName']),_0x430c15=normalizeSkillTemplateType(_0x216c60[_0x50a79e(0x137)]),_0xde9a45=_0x216c60[_0x50a79e(0x125)]??new Date()['toISOString']();return{'skillName':_0xa85406,'type':_0x430c15,'files':[{'path':_0x50a79e(0x133),'content':renderSkillMd(_0xa85406,_0x430c15,_0xde9a45)},{'path':RUNTIME_CONTRACT_FILE,'content':renderRuntimeContract(_0xa85406,_0x430c15)},{'path':OUTPUT_CONTRACT_FILE,'content':renderOutputContract(_0xa85406,_0x430c15)}]};}function renderSkillMd(_0x286f46,_0x1cb8ed,_0x14ce32){const _0x1bbb94=a54_0x5e70e2,_0xff397e=typeWorkflow(_0x1cb8ed);return'---\x0aname:\x20'+_0x286f46+_0x1bbb94(0x127)+_0x1cb8ed+_0x1bbb94(0x134)+_0x14ce32+_0x1bbb94(0x11d)+_0x286f46+_0x1bbb94(0x12c)+_0xff397e+'\x0a\x0a'+businessStateSection(_0x1cb8ed)+_0x1bbb94(0x12e);}function renderRuntimeContract(_0x377d56,_0x482a19){const _0x161a81=a54_0x5e70e2,_0x239192=_0x482a19===_0x161a81(0x11b)?_0x161a81(0x126):'';return _0x161a81(0x131)+_0x377d56+_0x161a81(0x13e)+_0x482a19+_0x161a81(0x136)+_0x239192+_0x161a81(0x142);}function renderOutputContract(_0x582025,_0x4c2d13){const _0x3b4e95=a54_0x5e70e2,_0xfb515f=_0x4c2d13===_0x3b4e95(0x11b)?'write\x20类型在\x20dry_run\x20下只展示预览、影响范围和差异,不写入业务数据。\x0aconfirmed\x20写入后必须执行读回核对,并把核对结果写入\x20verification。\x0a读回异常、业务状态未知或结果不一致时,status\x20必须为\x20partial_success、failed\x20或\x20needs_manual_check。':_0x4c2d13+_0x3b4e95(0x121);return'#\x20Output\x20Contract\x0a\x0a'+_0x582025+'\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'+_0xfb515f+_0x3b4e95(0x140);}function typeWorkflow(_0x1f899f){const _0x59a207=a54_0x5e70e2;if(_0x1f899f===_0x59a207(0x122))return'1.\x20只读查询:【填写查询入口、过滤条件和权限边界】\x0a2.\x20业务汇总:【填写统计口径、字段解释和异常提示】\x0a3.\x20查看链接:【填写可供运营人员复核的记录、页面或报告链接】\x0a4.\x20禁止写入:不得创建、更新、删除或触发会改变业务状态的动作。';if(_0x1f899f===_0x59a207(0x12a))return _0x59a207(0x13d);return'1.\x20dry-run:【填写预览入口、影响范围和差异摘要;不得写入业务数据】\x0a2.\x20用户确认:【填写确认语义、目标对象、数量、风险和操作者责任】\x0a3.\x20confirmed\x20写入:【填写确认后的写入入口和幂等/防重复要求】\x0a4.\x20只读核对:【填写写入后的查询核对、差异展示和结果链接】\x0a5.\x20checkpoint:【填写失败恢复、重试条件和人工接管方式】';}function businessStateSection(_0x5b1353){const _0x22cd30=a54_0x5e70e2;if(_0x5b1353!==_0x22cd30(0x11b))return'';return _0x22cd30(0x13c);}