@lovrabet/lovrabet-cli 2.2.3 → 2.2.4-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (184) 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/artifact/index.js +1 -1
  12. package/lib/commands/auth/device.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/notification/config-list.d.ts +2 -0
  36. package/lib/commands/notification/config-list.js +1 -0
  37. package/lib/commands/notification/index.d.ts +2 -0
  38. package/lib/commands/notification/index.js +1 -0
  39. package/lib/commands/notification/shared.d.ts +13 -0
  40. package/lib/commands/notification/shared.js +1 -0
  41. package/lib/commands/ocr/index.js +1 -1
  42. package/lib/commands/permit/dataset-get.d.ts +2 -0
  43. package/lib/commands/permit/dataset-get.js +1 -0
  44. package/lib/commands/permit/dataset-set.d.ts +2 -0
  45. package/lib/commands/permit/dataset-set.js +1 -0
  46. package/lib/commands/permit/index.d.ts +2 -0
  47. package/lib/commands/permit/index.js +1 -0
  48. package/lib/commands/permit/page-get.d.ts +2 -0
  49. package/lib/commands/permit/page-get.js +1 -0
  50. package/lib/commands/permit/page-set.d.ts +2 -0
  51. package/lib/commands/permit/page-set.js +1 -0
  52. package/lib/commands/permit/role-menus-set.d.ts +2 -0
  53. package/lib/commands/permit/role-menus-set.js +1 -0
  54. package/lib/commands/permit/role-menus.d.ts +2 -0
  55. package/lib/commands/permit/role-menus.js +1 -0
  56. package/lib/commands/permit/shared.d.ts +52 -0
  57. package/lib/commands/permit/shared.js +1 -0
  58. package/lib/commands/personal-bff/index.js +1 -1
  59. package/lib/commands/registry.js +1 -1
  60. package/lib/commands/role/create.d.ts +2 -0
  61. package/lib/commands/role/create.js +1 -0
  62. package/lib/commands/role/delete.d.ts +2 -0
  63. package/lib/commands/role/delete.js +1 -0
  64. package/lib/commands/role/detail.d.ts +2 -0
  65. package/lib/commands/role/detail.js +1 -0
  66. package/lib/commands/role/index.d.ts +2 -0
  67. package/lib/commands/role/index.js +1 -0
  68. package/lib/commands/role/list.d.ts +2 -0
  69. package/lib/commands/role/list.js +1 -0
  70. package/lib/commands/role/shared.d.ts +33 -0
  71. package/lib/commands/role/shared.js +1 -0
  72. package/lib/commands/role/update.d.ts +2 -0
  73. package/lib/commands/role/update.js +1 -0
  74. package/lib/commands/role/user-add.d.ts +2 -0
  75. package/lib/commands/role/user-add.js +1 -0
  76. package/lib/commands/role/user-remove.d.ts +2 -0
  77. package/lib/commands/role/user-remove.js +1 -0
  78. package/lib/commands/schedule/index.js +1 -1
  79. package/lib/commands/schema.js +1 -1
  80. package/lib/commands/service/dynamic.js +1 -1
  81. package/lib/commands/service/function-name-adapter.js +1 -1
  82. package/lib/commands/service/index.js +1 -1
  83. package/lib/commands/service/registry.js +1 -1
  84. package/lib/commands/skill/commands/create.js +1 -1
  85. package/lib/commands/skill/commands/diagram.js +1 -1
  86. package/lib/commands/skill/commands/install.js +1 -1
  87. package/lib/commands/skill/commands/list.js +1 -1
  88. package/lib/commands/skill/commands/push.js +1 -1
  89. package/lib/commands/skill/commands/validate.js +1 -1
  90. package/lib/commands/skill/diagram.js +1 -1
  91. package/lib/commands/skill/flags.js +1 -1
  92. package/lib/commands/skill/index.js +1 -1
  93. package/lib/commands/skill/manifest-helpers.js +1 -1
  94. package/lib/commands/skill/push-execute.js +1 -1
  95. package/lib/commands/skill/push-flow-helpers.js +1 -1
  96. package/lib/commands/skill/push-retarget.js +1 -1
  97. package/lib/commands/skill/scopes.js +1 -1
  98. package/lib/commands/skill/summary.js +1 -1
  99. package/lib/commands/skill/templates.js +1 -1
  100. package/lib/commands/skill/validate.js +1 -1
  101. package/lib/commands/sql/detail.js +1 -1
  102. package/lib/commands/sql/exec.js +1 -1
  103. package/lib/commands/sql/index.js +1 -1
  104. package/lib/commands/update.js +1 -1
  105. package/lib/commands/user-account/bind.js +1 -1
  106. package/lib/commands/user-account/index.js +1 -1
  107. package/lib/commands/workspace/index.js +1 -1
  108. package/lib/config/schema.js +1 -1
  109. package/lib/constant/app.js +1 -1
  110. package/lib/constant/auth-mode.js +1 -1
  111. package/lib/constant/cli.js +1 -1
  112. package/lib/constant/defaults.js +1 -1
  113. package/lib/constant/distribution.js +1 -1
  114. package/lib/constant/domain.js +1 -1
  115. package/lib/constant/env.js +1 -1
  116. package/lib/constant/output.js +1 -1
  117. package/lib/constant/product.js +1 -1
  118. package/lib/constant/risk.js +1 -1
  119. package/lib/constant/url.js +1 -1
  120. package/lib/context.js +1 -1
  121. package/lib/core/api-client.d.ts +161 -0
  122. package/lib/core/api-client.js +1 -1
  123. package/lib/core/db-resolver.js +1 -1
  124. package/lib/core/sdk-client.js +1 -1
  125. package/lib/errors.js +1 -1
  126. package/lib/framework/build-all-flags.js +1 -1
  127. package/lib/framework/dryrun.js +1 -1
  128. package/lib/framework/flags.js +1 -1
  129. package/lib/framework/help.js +1 -1
  130. package/lib/framework/index.js +1 -1
  131. package/lib/framework/output.js +1 -1
  132. package/lib/framework/preparse.js +1 -1
  133. package/lib/framework/rate-limit.js +1 -1
  134. package/lib/framework/raw-flags.js +1 -1
  135. package/lib/framework/response.js +1 -1
  136. package/lib/framework/runner-confirmation.js +1 -1
  137. package/lib/framework/runner-error.js +1 -1
  138. package/lib/framework/runner.js +1 -1
  139. package/lib/framework/schema-export.js +1 -1
  140. package/lib/framework/service-order.js +1 -1
  141. package/lib/framework/types.js +1 -1
  142. package/lib/generated/build-info.d.ts +4 -4
  143. package/lib/generated/build-info.js +1 -1
  144. package/lib/help.js +1 -1
  145. package/lib/postinstall.js +1 -1
  146. package/lib/runtime/confirmation.js +1 -1
  147. package/lib/runtime/event.js +1 -1
  148. package/lib/runtime/index.js +1 -1
  149. package/lib/runtime/queue.js +1 -1
  150. package/lib/runtime/resolve.js +1 -1
  151. package/lib/skills/builtin-skill.js +1 -1
  152. package/lib/skills/npx-skills-add.js +1 -1
  153. package/lib/skills/runtime-skill-sync/constants.js +1 -1
  154. package/lib/skills/runtime-skill-sync/fs-utils.js +1 -1
  155. package/lib/skills/runtime-skill-sync/hashing.js +1 -1
  156. package/lib/skills/runtime-skill-sync/install-target.js +1 -1
  157. package/lib/skills/runtime-skill-sync/links.js +1 -1
  158. package/lib/skills/runtime-skill-sync/list-local.js +1 -1
  159. package/lib/skills/runtime-skill-sync/local-files.js +1 -1
  160. package/lib/skills/runtime-skill-sync/materialize.js +1 -1
  161. package/lib/skills/runtime-skill-sync/metadata.js +1 -1
  162. package/lib/skills/runtime-skill-sync/paths.js +1 -1
  163. package/lib/skills/runtime-skill-sync/push.js +1 -1
  164. package/lib/skills/runtime-skill-sync/scopes.js +1 -1
  165. package/lib/skills/runtime-skill-sync/types.d.ts +1 -0
  166. package/lib/skills/runtime-skill-sync/zip-codec.js +1 -1
  167. package/lib/skills/runtime-skill-sync/zip-package.js +1 -1
  168. package/lib/skills/runtime-skill-sync.js +1 -1
  169. package/lib/skills/skill-presence.js +1 -1
  170. package/lib/utils/apply-jq-filter.js +1 -1
  171. package/lib/utils/logger.js +1 -1
  172. package/lib/utils/lossless-json.js +1 -1
  173. package/lib/utils/params.js +1 -1
  174. package/lib/utils/platform.js +1 -1
  175. package/lib/utils/update-notice.js +1 -1
  176. package/lib/utils/version.js +1 -1
  177. package/lib/utils/write-cli-side-channel.js +1 -1
  178. package/package.json +1 -1
  179. package/skills/lovrabet/SKILL.md +20 -7
  180. package/skills/lovrabet/guides/role-and-permission-workflow.md +139 -0
  181. package/skills/lovrabet/references/lovrabet-auth.md +1 -5
  182. package/skills/lovrabet/references/lovrabet-notification-config-list.md +81 -0
  183. package/skills/lovrabet/references/lovrabet-skill-authoring.md +5 -4
  184. package/skills/lovrabet.manifest.json +5 -3
@@ -1 +1 @@
1
- const a115_0x165f3d=a115_0x2048;(function(_0x344a4d,_0x2b5d0b){const _0x367bff=a115_0x2048,_0x1be392=_0x344a4d();while(!![]){try{const _0x429d14=-parseInt(_0x367bff(0x129))/0x1+-parseInt(_0x367bff(0x14b))/0x2*(-parseInt(_0x367bff(0x140))/0x3)+-parseInt(_0x367bff(0x11c))/0x4*(parseInt(_0x367bff(0x123))/0x5)+parseInt(_0x367bff(0x122))/0x6+-parseInt(_0x367bff(0x13b))/0x7+parseInt(_0x367bff(0x144))/0x8*(-parseInt(_0x367bff(0x143))/0x9)+-parseInt(_0x367bff(0x124))/0xa*(-parseInt(_0x367bff(0x138))/0xb);if(_0x429d14===_0x2b5d0b)break;else _0x1be392['push'](_0x1be392['shift']());}catch(_0x2df638){_0x1be392['push'](_0x1be392['shift']());}}}(a115_0x427c,0xafa6b));import{existsSync,lstatSync,mkdirSync,readdirSync,symlinkSync,unlinkSync}from'node:fs';import{basename,dirname,resolve}from'node:path';import a115_0x3a2a52 from'fs-extra';import{CliErrors}from'../../errors.js';function a115_0x427c(){const _0xcb3756=['name','builtin','1123886uNzXpc','validation','slice','removed','Refusing\x20to\x20shadow\x20reserved\x20Agent\x20Skill\x20in\x20project\x20scope:\x20','personal','created','trim','contentHash','Refusing\x20to\x20overwrite\x20global\x20Skill\x20path:\x20','isDirectory','project','metadata-mismatch','filter','company','17842mqZeFi','scopes','metadataPath','9324028tzGKtf','Refusing\x20to\x20copy\x20Skill\x20symlink:\x20','pruneSkillCodes','linked-from-protected-root','activeSkillCodes','3570807daMSDd','Refusing\x20to\x20link\x20Skill\x20metadata\x20outside\x20target\x20','skill','9KravtR','3979848MrJUZl','Refusing\x20to\x20overwrite\x20managed\x20Skill\x20link\x20owned\x20by\x20another\x20app\x20or\x20code:\x20','isSymbolicLink','secret-retriever','env','push','length','2hVrFAk','has','scope','map','external-symlink','skillCode','dir','managedRoot','updated','Refusing\x20to\x20overwrite\x20unmanaged\x20symlink:\x20','skipped','lovrabet','260pcSzKy','unchanged','agentsSkillsDir','Refusing\x20to\x20overwrite\x20unmanaged\x20global\x20Skill\x20directory:\x20','appCode','not-managed-symlink','445044jlgYdx','8755LxwMIe','15550JAFEgO','skillRoots','accessKey'];a115_0x427c=function(){return _0xcb3756;};return a115_0x427c();}import{METADATA_FILE}from'./constants.js';import{isDanglingSymlink,isPathInside,lstatIfPresent,realOrResolved,resolveSymlinkTarget}from'./fs-utils.js';import{readMetadataIfPresent,requireSkillCode}from'./metadata.js';import{getRuntimeSkillCacheRoot,resolveSkillSyncPaths,safePathSegment}from'./paths.js';const {copySync,ensureDirSync,removeSync}=a115_0x3a2a52,RESERVED_PROJECT_SKILL_CODES=new Set([a115_0x165f3d(0x11b),'runtime-observe',a115_0x165f3d(0x147)]);export function linkEffectiveRuntimeSkills(_0x2a3160,_0x4e329e){const _0x5b35e6=a115_0x165f3d,_0x59ee85=new Map();for(const _0x4581b6 of _0x2a3160){const _0x2a01b0=_0x4581b6[_0x5b35e6(0x142)][_0x5b35e6(0x150)];if(!_0x2a01b0)continue;const _0x823dcb=_0x59ee85['get'](_0x2a01b0);(!_0x823dcb||_0x4581b6[_0x5b35e6(0x14d)]===_0x5b35e6(0x12e))&&_0x59ee85['set'](_0x2a01b0,_0x4581b6);}const _0x292e67=[];for(const _0x13f24a of _0x59ee85['values']()){const _0x22a3e2=requireSkillCode(_0x13f24a['skill']),_0x565898=readMetadataIfPresent(_0x13f24a[_0x5b35e6(0x13a)]);if(_0x565898?.['appCode']!==_0x4e329e[_0x5b35e6(0x120)]||_0x565898[_0x5b35e6(0x150)]!==_0x22a3e2)throw CliErrors[_0x5b35e6(0x12a)](_0x5b35e6(0x141)+_0x4e329e[_0x5b35e6(0x120)]+':\x20'+_0x13f24a[_0x5b35e6(0x13a)]);const _0x2e6f96=runtimeSkillLinkName(_0x4e329e,_0x22a3e2);for(const _0x3cf7f6 of _0x4e329e['skillRoots']){_0x292e67[_0x5b35e6(0x149)](ensureManagedSymlink(resolve(_0x3cf7f6,_0x2e6f96),_0x13f24a[_0x5b35e6(0x151)],_0x4e329e,_0x22a3e2));}}return _0x292e67;}export function pruneStaleRuntimeSkillLinks(_0x3ddd,_0x120b86,_0x1fa315){const _0x5c1847=a115_0x165f3d,_0x464fef=new Set([..._0x120b86][_0x5c1847(0x14e)](_0x3ce639=>_0x3ce639[_0x5c1847(0x130)]())[_0x5c1847(0x136)](Boolean)),_0x170f26=_0x1fa315?new Set([..._0x1fa315][_0x5c1847(0x14e)](_0x47994=>_0x47994[_0x5c1847(0x130)]())['filter'](Boolean)):undefined,_0x3a8503=[];for(const _0x22344f of _0x3ddd[_0x5c1847(0x125)]){for(const _0x204b18 of managedTargetSkillLinkPaths(_0x22344f,_0x3ddd)){const _0x3f84d2=runtimeSkillCodeFromLink(_0x3ddd,_0x204b18);if(_0x170f26&&!_0x170f26[_0x5c1847(0x14c)](_0x3f84d2))continue;if(_0x464fef[_0x5c1847(0x14c)](_0x3f84d2))continue;_0x3a8503[_0x5c1847(0x149)](removeManagedSkillLink(_0x204b18,_0x3ddd,_0x3f84d2));}}return _0x3a8503;}export function pruneStaleRuntimeSkillCache(_0x3d8a78,_0x13b6a0={}){const _0xc34d2d=a115_0x165f3d,_0xc6a111=new Set([..._0x3d8a78[_0xc34d2d(0x13f)]]['map'](_0xe62ab7=>_0xe62ab7[_0xc34d2d(0x130)]())[_0xc34d2d(0x136)](Boolean)),_0x1a7b84=_0x3d8a78[_0xc34d2d(0x13d)]?new Set([..._0x3d8a78[_0xc34d2d(0x13d)]][_0xc34d2d(0x14e)](_0x470120=>_0x470120[_0xc34d2d(0x130)]())[_0xc34d2d(0x136)](Boolean)):undefined,_0x546425=_0x3d8a78[_0xc34d2d(0x139)]??[_0xc34d2d(0x12e),_0xc34d2d(0x137)],_0x383f7a=resolve(getRuntimeSkillCacheRoot(_0x3d8a78[_0xc34d2d(0x148)],_0x3d8a78[_0xc34d2d(0x126)],_0x13b6a0),safePathSegment(_0x3d8a78[_0xc34d2d(0x120)],'appCode')),_0x710301=[];for(const _0x4d5579 of _0x546425){const _0x4acd43=resolve(_0x383f7a,_0x4d5579);if(!existsSync(_0x4acd43))continue;for(const _0xacc9ba of readdirSync(_0x4acd43,{'withFileTypes':!![]})){if(!_0xacc9ba[_0xc34d2d(0x133)]())continue;const _0x3ff977=_0xacc9ba[_0xc34d2d(0x127)];if(_0x1a7b84&&!_0x1a7b84[_0xc34d2d(0x14c)](_0x3ff977))continue;if(_0xc6a111['has'](_0x3ff977))continue;const _0x4324f0=resolve(_0x4acd43,_0x3ff977),_0x22659e=readMetadataIfPresent(resolve(_0x4324f0,METADATA_FILE));if(_0x22659e?.[_0xc34d2d(0x120)]!==_0x3d8a78[_0xc34d2d(0x120)]||_0x22659e[_0xc34d2d(0x14d)]!==_0x4d5579||_0x22659e[_0xc34d2d(0x150)]!==_0x3ff977){_0x710301[_0xc34d2d(0x149)]({'path':_0x4324f0,'action':'skipped','reason':'metadata-mismatch'});continue;}if(isLinkedFromAnyRoot(_0x4324f0,_0x3d8a78['protectedLinkRoots']??[])){_0x710301['push']({'path':_0x4324f0,'action':'skipped','reason':_0xc34d2d(0x13e)});continue;}removeSync(_0x4324f0),_0x710301[_0xc34d2d(0x149)]({'path':_0x4324f0,'action':_0xc34d2d(0x12c)});}}return _0x710301;}function a115_0x2048(_0x2b5aea,_0xf233a6){_0x2b5aea=_0x2b5aea-0x118;const _0x427cd9=a115_0x427c();let _0x2048d3=_0x427cd9[_0x2b5aea];return _0x2048d3;}export function linkGlobalRuntimeSkills(_0x2e49e9,_0x21024b={}){const _0x33c8ee=a115_0x165f3d,_0x231b09=resolveSkillSyncPaths(_0x21024b),_0x600c5d=[];for(const _0x891821 of _0x2e49e9){if(_0x891821['scope']!==_0x33c8ee(0x128))throw CliErrors[_0x33c8ee(0x12a)]('Only\x20builtin\x20Skills\x20can\x20be\x20linked\x20into\x20the\x20global\x20Skill\x20root:\x20'+_0x891821['scope']);const _0x5869fc=requireSkillCode(_0x891821[_0x33c8ee(0x142)]),_0x1b3cf4=copyManagedSkillDirectory(_0x891821[_0x33c8ee(0x151)],resolve(_0x231b09[_0x33c8ee(0x11e)],_0x5869fc));_0x600c5d[_0x33c8ee(0x149)]({..._0x1b3cf4,'contentHash':_0x891821[_0x33c8ee(0x131)]});}return _0x600c5d;}function ensureManagedSymlink(_0x591401,_0x5296d1,_0x3e97ba,_0x4a4ccb){const _0x57e285=a115_0x165f3d;mkdirSync(dirname(_0x591401),{'recursive':!![],'mode':0x1c0});if(existsSync(_0x591401)||isDanglingSymlink(_0x591401)){const _0x325324=lstatSync(_0x591401);if(!_0x325324[_0x57e285(0x146)]())throw CliErrors[_0x57e285(0x12a)]('Refusing\x20to\x20overwrite\x20unmanaged\x20path:\x20'+_0x591401);const _0x58100f=resolveSymlinkTarget(_0x591401);if(!isPathInside(realOrResolved(_0x58100f),realOrResolved(_0x3e97ba[_0x57e285(0x152)])))throw CliErrors[_0x57e285(0x12a)](_0x57e285(0x119)+_0x591401);if(realOrResolved(_0x58100f)===realOrResolved(_0x5296d1))return{'path':_0x591401,'target':_0x5296d1,'action':_0x57e285(0x11d)};const _0x34366c=readMetadataIfPresent(resolve(_0x58100f,METADATA_FILE));if(_0x3e97ba[_0x57e285(0x14d)]==='project'&&(_0x34366c?.[_0x57e285(0x120)]!==_0x3e97ba[_0x57e285(0x120)]||_0x34366c[_0x57e285(0x150)]!==_0x4a4ccb))throw CliErrors['validation'](_0x57e285(0x145)+_0x591401);return unlinkSync(_0x591401),symlinkSync(_0x5296d1,_0x591401,'dir'),{'path':_0x591401,'target':_0x5296d1,'action':_0x57e285(0x118)};}return symlinkSync(_0x5296d1,_0x591401,'dir'),{'path':_0x591401,'target':_0x5296d1,'action':_0x57e285(0x12f)};}function managedTargetSkillLinkPaths(_0xba1359,_0x439609){const _0x4203df=a115_0x165f3d;if(!existsSync(_0xba1359))return[];const _0x487bc9=_0x439609[_0x4203df(0x120)]+'--';return readdirSync(_0xba1359,{'withFileTypes':!![]})['filter'](_0x39d94c=>_0x439609[_0x4203df(0x14d)]===_0x4203df(0x134)||_0x39d94c[_0x4203df(0x127)]['startsWith'](_0x487bc9))[_0x4203df(0x14e)](_0x164d8d=>resolve(_0xba1359,_0x164d8d[_0x4203df(0x127)]));}function removeManagedSkillLink(_0x34c242,_0x4bfe3f,_0x500f30){const _0x334709=a115_0x165f3d,_0x35ddcb=lstatIfPresent(_0x34c242);if(!_0x35ddcb?.[_0x334709(0x146)]())return{'path':_0x34c242,'action':_0x334709(0x11a),'reason':_0x334709(0x121)};const _0x258e9c=resolveSymlinkTarget(_0x34c242);if(!isPathInside(realOrResolved(_0x258e9c),realOrResolved(_0x4bfe3f[_0x334709(0x152)])))return{'path':_0x34c242,'action':'skipped','reason':_0x334709(0x14f)};const _0x560146=readMetadataIfPresent(resolve(_0x258e9c,METADATA_FILE));if(_0x4bfe3f['scope']===_0x334709(0x134)&&(_0x560146?.['appCode']!==_0x4bfe3f[_0x334709(0x120)]||_0x560146[_0x334709(0x150)]!==_0x500f30))return{'path':_0x34c242,'action':_0x334709(0x11a),'reason':_0x334709(0x135)};return unlinkSync(_0x34c242),{'path':_0x34c242,'action':_0x334709(0x12c)};}function isLinkedFromAnyRoot(_0x58d8f8,_0x48daf0){const _0x312bf8=a115_0x165f3d,_0x4f7bbd=realOrResolved(_0x58d8f8);for(const _0x1f906d of _0x48daf0){if(!existsSync(_0x1f906d))continue;for(const _0x415394 of readdirSync(_0x1f906d,{'withFileTypes':!![]})){if(!_0x415394[_0x312bf8(0x146)]())continue;const _0x46c6c1=resolve(_0x1f906d,_0x415394['name']);if(realOrResolved(resolveSymlinkTarget(_0x46c6c1))===_0x4f7bbd)return!![];}}return![];}function runtimeSkillLinkName(_0xfb9772,_0x5e467f){const _0x3f050f=a115_0x165f3d,_0x3b7a17=safePathSegment(_0x5e467f,_0x3f050f(0x150));if(_0xfb9772[_0x3f050f(0x14d)]==='project'&&RESERVED_PROJECT_SKILL_CODES['has'](_0x3b7a17))throw CliErrors['validation'](_0x3f050f(0x12d)+_0x3b7a17);return _0xfb9772[_0x3f050f(0x14d)]===_0x3f050f(0x134)?_0x3b7a17:_0xfb9772[_0x3f050f(0x120)]+'--'+_0x3b7a17;}function runtimeSkillCodeFromLink(_0x360238,_0x25dd22){const _0x32a818=a115_0x165f3d,_0x4b232d=basename(_0x25dd22);return _0x360238['scope']==='project'?_0x4b232d:_0x4b232d[_0x32a818(0x12b)]((_0x360238['appCode']+'--')[_0x32a818(0x14a)]);}export function copyManagedSkillDirectory(_0x2870a1,_0xcaf2ae){const _0x1f15d6=a115_0x165f3d,_0x4da05e=resolve(_0xcaf2ae,METADATA_FILE),_0x1b83c5=existsSync(_0xcaf2ae);if(_0x1b83c5){const _0x5c9dce=lstatSync(_0xcaf2ae);if(_0x5c9dce[_0x1f15d6(0x146)]())throw CliErrors['validation']('Refusing\x20to\x20overwrite\x20global\x20Skill\x20symlink:\x20'+_0xcaf2ae);if(!_0x5c9dce['isDirectory']())throw CliErrors[_0x1f15d6(0x12a)](_0x1f15d6(0x132)+_0xcaf2ae);const _0x1dc1f3=readMetadataIfPresent(_0x4da05e);if(_0x1dc1f3?.[_0x1f15d6(0x14d)]!==_0x1f15d6(0x128))throw CliErrors[_0x1f15d6(0x12a)](_0x1f15d6(0x11f)+_0xcaf2ae);}ensureDirSync(dirname(_0xcaf2ae));const _0x2905f8=_0x1b83c5?readMetadataIfPresent(_0x4da05e)?.['contentHash']:undefined,_0x18cd14=readMetadataIfPresent(resolve(_0x2870a1,METADATA_FILE))?.['contentHash'];return _0x1b83c5&&removeSync(_0xcaf2ae),copySkillDirectory(_0x2870a1,_0xcaf2ae),{'path':_0xcaf2ae,'target':_0x2870a1,'action':!_0x1b83c5?_0x1f15d6(0x12f):_0x2905f8===_0x18cd14?_0x1f15d6(0x11d):_0x1f15d6(0x118)};}function copySkillDirectory(_0x55a640,_0xa1a973){copySync(_0x55a640,_0xa1a973,{'dereference':![],'overwrite':!![],'filter'(_0x1ae5ad){const _0x27ba64=a115_0x2048;if(lstatSync(_0x1ae5ad)[_0x27ba64(0x146)]())throw CliErrors[_0x27ba64(0x12a)](_0x27ba64(0x13c)+_0x1ae5ad);return!![];}});}
1
+ const a135_0x49175c=a135_0x195a;(function(_0x14501c,_0x592623){const _0x3c429e=a135_0x195a,_0xb977e=_0x14501c();while(!![]){try{const _0x4d6469=-parseInt(_0x3c429e(0x144))/0x1*(parseInt(_0x3c429e(0x145))/0x2)+parseInt(_0x3c429e(0x121))/0x3*(-parseInt(_0x3c429e(0x129))/0x4)+parseInt(_0x3c429e(0x140))/0x5+-parseInt(_0x3c429e(0x157))/0x6+-parseInt(_0x3c429e(0x146))/0x7+-parseInt(_0x3c429e(0x12b))/0x8*(-parseInt(_0x3c429e(0x14c))/0x9)+parseInt(_0x3c429e(0x14a))/0xa;if(_0x4d6469===_0x592623)break;else _0xb977e['push'](_0xb977e['shift']());}catch(_0x2f3437){_0xb977e['push'](_0xb977e['shift']());}}}(a135_0x2e4f,0x18e37));import{existsSync,lstatSync,mkdirSync,readdirSync,symlinkSync,unlinkSync}from'node:fs';import{basename,dirname,resolve}from'node:path';import a135_0x549060 from'fs-extra';import{CliErrors}from'../../errors.js';import{METADATA_FILE}from'./constants.js';import{isDanglingSymlink,isPathInside,lstatIfPresent,realOrResolved,resolveSymlinkTarget}from'./fs-utils.js';import{readMetadataIfPresent,requireSkillCode}from'./metadata.js';import{getRuntimeSkillCacheRoot,resolveSkillSyncPaths,safePathSegment}from'./paths.js';const {copySync,ensureDirSync,removeSync}=a135_0x549060,RESERVED_PROJECT_SKILL_CODES=new Set([a135_0x49175c(0x13a),a135_0x49175c(0x152),a135_0x49175c(0x14b)]);export function linkEffectiveRuntimeSkills(_0x1ec0dd,_0x499fe7){const _0x4ba5dc=a135_0x49175c,_0x202a22=new Map();for(const _0x510eac of _0x1ec0dd){const _0x9e834d=_0x510eac[_0x4ba5dc(0x14d)][_0x4ba5dc(0x12a)];if(!_0x9e834d)continue;const _0x43d3b7=_0x202a22[_0x4ba5dc(0x136)](_0x9e834d);(!_0x43d3b7||_0x510eac['scope']===_0x4ba5dc(0x13e))&&_0x202a22[_0x4ba5dc(0x143)](_0x9e834d,_0x510eac);}const _0x6e69b3=[];for(const _0x53e906 of _0x202a22[_0x4ba5dc(0x142)]()){const _0x4a2c21=requireSkillCode(_0x53e906[_0x4ba5dc(0x14d)]),_0x36cf6e=readMetadataIfPresent(_0x53e906[_0x4ba5dc(0x12e)]);if(_0x36cf6e?.[_0x4ba5dc(0x139)]!==_0x499fe7[_0x4ba5dc(0x139)]||_0x36cf6e['skillCode']!==_0x4a2c21)throw CliErrors[_0x4ba5dc(0x13d)]('Refusing\x20to\x20link\x20Skill\x20metadata\x20outside\x20target\x20'+_0x499fe7[_0x4ba5dc(0x139)]+':\x20'+_0x53e906[_0x4ba5dc(0x12e)]);const _0x2a4cb0=runtimeSkillLinkName(_0x499fe7,_0x4a2c21);for(const _0x41fef5 of _0x499fe7[_0x4ba5dc(0x141)]){_0x6e69b3['push'](ensureManagedSymlink(resolve(_0x41fef5,_0x2a4cb0),_0x53e906[_0x4ba5dc(0x122)],_0x499fe7,_0x4a2c21));}}return _0x6e69b3;}export function pruneStaleRuntimeSkillLinks(_0x1fd0ad,_0x191ff3,_0x121df2){const _0x1c8452=a135_0x49175c,_0xda85f2=new Set([..._0x191ff3][_0x1c8452(0x134)](_0x180141=>_0x180141[_0x1c8452(0x12c)]())['filter'](Boolean)),_0x5a3202=_0x121df2?new Set([..._0x121df2][_0x1c8452(0x134)](_0x2f9f8d=>_0x2f9f8d['trim']())[_0x1c8452(0x14e)](Boolean)):undefined,_0x18e74d=[];for(const _0x595cd0 of _0x1fd0ad[_0x1c8452(0x141)]){for(const _0x49d474 of managedTargetSkillLinkPaths(_0x595cd0,_0x1fd0ad)){const _0x13933c=runtimeSkillCodeFromLink(_0x1fd0ad,_0x49d474);if(_0x5a3202&&!_0x5a3202[_0x1c8452(0x151)](_0x13933c))continue;if(_0xda85f2[_0x1c8452(0x151)](_0x13933c))continue;_0x18e74d['push'](removeManagedSkillLink(_0x49d474,_0x1fd0ad,_0x13933c));}}return _0x18e74d;}export function pruneStaleRuntimeSkillCache(_0x2cfaa3,_0x1bb581={}){const _0x5250fb=a135_0x49175c,_0x42507c=new Set([..._0x2cfaa3[_0x5250fb(0x13f)]][_0x5250fb(0x134)](_0x218d9b=>_0x218d9b['trim']())[_0x5250fb(0x14e)](Boolean)),_0x3ddd94=_0x2cfaa3['pruneSkillCodes']?new Set([..._0x2cfaa3['pruneSkillCodes']]['map'](_0x478449=>_0x478449[_0x5250fb(0x12c)]())[_0x5250fb(0x14e)](Boolean)):undefined,_0x57f829=_0x2cfaa3[_0x5250fb(0x133)]??[_0x5250fb(0x13e),'company'],_0xf4ce49=resolve(getRuntimeSkillCacheRoot(_0x2cfaa3[_0x5250fb(0x158)],_0x2cfaa3['accessKey'],_0x1bb581),safePathSegment(_0x2cfaa3[_0x5250fb(0x139)],'appCode')),_0x73d4a5=[];for(const _0x3570ce of _0x57f829){const _0x57a2ea=resolve(_0xf4ce49,_0x3570ce);if(!existsSync(_0x57a2ea))continue;for(const _0x23c0ec of readdirSync(_0x57a2ea,{'withFileTypes':!![]})){if(!_0x23c0ec[_0x5250fb(0x126)]())continue;const _0x4a40fe=_0x23c0ec[_0x5250fb(0x153)];if(_0x3ddd94&&!_0x3ddd94[_0x5250fb(0x151)](_0x4a40fe))continue;if(_0x42507c['has'](_0x4a40fe))continue;const _0x1c484a=resolve(_0x57a2ea,_0x4a40fe),_0x37eeee=readMetadataIfPresent(resolve(_0x1c484a,METADATA_FILE));if(_0x37eeee?.[_0x5250fb(0x139)]!==_0x2cfaa3[_0x5250fb(0x139)]||_0x37eeee['scope']!==_0x3570ce||_0x37eeee['skillCode']!==_0x4a40fe){_0x73d4a5[_0x5250fb(0x135)]({'path':_0x1c484a,'action':'skipped','reason':_0x5250fb(0x124)});continue;}if(isLinkedFromAnyRoot(_0x1c484a,_0x2cfaa3[_0x5250fb(0x147)]??[])){_0x73d4a5[_0x5250fb(0x135)]({'path':_0x1c484a,'action':_0x5250fb(0x12f),'reason':_0x5250fb(0x127)});continue;}removeSync(_0x1c484a),_0x73d4a5[_0x5250fb(0x135)]({'path':_0x1c484a,'action':_0x5250fb(0x13b)});}}return _0x73d4a5;}export function linkGlobalRuntimeSkills(_0x563b69,_0x5cd888={}){const _0xa3d8d9=a135_0x49175c,_0x29c184=resolveSkillSyncPaths(_0x5cd888),_0x313f10=[];for(const _0x2b26e6 of _0x563b69){if(_0x2b26e6[_0xa3d8d9(0x13c)]!==_0xa3d8d9(0x130))throw CliErrors[_0xa3d8d9(0x13d)]('Only\x20builtin\x20Skills\x20can\x20be\x20linked\x20into\x20the\x20global\x20Skill\x20root:\x20'+_0x2b26e6[_0xa3d8d9(0x13c)]);const _0x44823c=requireSkillCode(_0x2b26e6[_0xa3d8d9(0x14d)]),_0x2ddd0f=copyManagedSkillDirectory(_0x2b26e6[_0xa3d8d9(0x122)],resolve(_0x29c184[_0xa3d8d9(0x154)],_0x44823c));_0x313f10[_0xa3d8d9(0x135)]({..._0x2ddd0f,'contentHash':_0x2b26e6[_0xa3d8d9(0x156)]});}return _0x313f10;}function ensureManagedSymlink(_0x158b95,_0xaa8085,_0xf3cd25,_0x4c0591){const _0x1a612f=a135_0x49175c;mkdirSync(dirname(_0x158b95),{'recursive':!![],'mode':0x1c0});if(existsSync(_0x158b95)||isDanglingSymlink(_0x158b95)){const _0x2e2573=lstatSync(_0x158b95);if(!_0x2e2573[_0x1a612f(0x125)]())throw CliErrors['validation'](_0x1a612f(0x149)+_0x158b95);const _0x22d6ae=resolveSymlinkTarget(_0x158b95);if(!isPathInside(realOrResolved(_0x22d6ae),realOrResolved(_0xf3cd25[_0x1a612f(0x132)])))throw CliErrors['validation']('Refusing\x20to\x20overwrite\x20unmanaged\x20symlink:\x20'+_0x158b95);if(realOrResolved(_0x22d6ae)===realOrResolved(_0xaa8085))return{'path':_0x158b95,'target':_0xaa8085,'action':_0x1a612f(0x120)};const _0x5c4294=readMetadataIfPresent(resolve(_0x22d6ae,METADATA_FILE));if(_0xf3cd25[_0x1a612f(0x13c)]==='project'&&(_0x5c4294?.[_0x1a612f(0x139)]!==_0xf3cd25[_0x1a612f(0x139)]||_0x5c4294['skillCode']!==_0x4c0591))throw CliErrors[_0x1a612f(0x13d)](_0x1a612f(0x138)+_0x158b95);return unlinkSync(_0x158b95),symlinkSync(_0xaa8085,_0x158b95,_0x1a612f(0x122)),{'path':_0x158b95,'target':_0xaa8085,'action':_0x1a612f(0x155)};}return symlinkSync(_0xaa8085,_0x158b95,_0x1a612f(0x122)),{'path':_0x158b95,'target':_0xaa8085,'action':_0x1a612f(0x137)};}function a135_0x2e4f(){const _0x26852e=['skillCode','534472vpokSU','trim','length','metadataPath','skipped','builtin','not-managed-symlink','managedRoot','scopes','map','push','get','created','Refusing\x20to\x20overwrite\x20managed\x20Skill\x20link\x20owned\x20by\x20another\x20app\x20or\x20code:\x20','appCode','lovrabet','removed','scope','validation','personal','activeSkillCodes','296180HoSFuu','skillRoots','values','set','31759cZHxXv','2LMXxzj','1118915dOqiUU','protectedLinkRoots','Refusing\x20to\x20shadow\x20reserved\x20Agent\x20Skill\x20in\x20project\x20scope:\x20','Refusing\x20to\x20overwrite\x20unmanaged\x20path:\x20','5223880BkPIVl','secret-retriever','9LUeIca','skill','filter','external-symlink','project','has','runtime-observe','name','agentsSkillsDir','updated','contentHash','1093560AqLbrU','env','unchanged','18MEWPNX','dir','startsWith','metadata-mismatch','isSymbolicLink','isDirectory','linked-from-protected-root','Refusing\x20to\x20overwrite\x20global\x20Skill\x20path:\x20','115084JPPxtj'];a135_0x2e4f=function(){return _0x26852e;};return a135_0x2e4f();}function managedTargetSkillLinkPaths(_0x1dd03b,_0x45a944){const _0xa39148=a135_0x49175c;if(!existsSync(_0x1dd03b))return[];const _0x3e4084=_0x45a944['appCode']+'--';return readdirSync(_0x1dd03b,{'withFileTypes':!![]})[_0xa39148(0x14e)](_0x260b44=>_0x45a944['scope']===_0xa39148(0x150)||_0x260b44[_0xa39148(0x153)][_0xa39148(0x123)](_0x3e4084))[_0xa39148(0x134)](_0x22888f=>resolve(_0x1dd03b,_0x22888f[_0xa39148(0x153)]));}function removeManagedSkillLink(_0x5003c6,_0x3757cc,_0x40d620){const _0xe02d1a=a135_0x49175c,_0x6c78c3=lstatIfPresent(_0x5003c6);if(!_0x6c78c3?.[_0xe02d1a(0x125)]())return{'path':_0x5003c6,'action':'skipped','reason':_0xe02d1a(0x131)};const _0x5b03b8=resolveSymlinkTarget(_0x5003c6);if(!isPathInside(realOrResolved(_0x5b03b8),realOrResolved(_0x3757cc[_0xe02d1a(0x132)])))return{'path':_0x5003c6,'action':_0xe02d1a(0x12f),'reason':_0xe02d1a(0x14f)};const _0x277d7c=readMetadataIfPresent(resolve(_0x5b03b8,METADATA_FILE));if(_0x3757cc[_0xe02d1a(0x13c)]===_0xe02d1a(0x150)&&(_0x277d7c?.[_0xe02d1a(0x139)]!==_0x3757cc[_0xe02d1a(0x139)]||_0x277d7c['skillCode']!==_0x40d620))return{'path':_0x5003c6,'action':_0xe02d1a(0x12f),'reason':_0xe02d1a(0x124)};return unlinkSync(_0x5003c6),{'path':_0x5003c6,'action':_0xe02d1a(0x13b)};}function isLinkedFromAnyRoot(_0x5f6770,_0x465b1d){const _0x134792=a135_0x49175c,_0x251a7d=realOrResolved(_0x5f6770);for(const _0x54b228 of _0x465b1d){if(!existsSync(_0x54b228))continue;for(const _0x5f300f of readdirSync(_0x54b228,{'withFileTypes':!![]})){if(!_0x5f300f[_0x134792(0x125)]())continue;const _0x1c6b15=resolve(_0x54b228,_0x5f300f[_0x134792(0x153)]);if(realOrResolved(resolveSymlinkTarget(_0x1c6b15))===_0x251a7d)return!![];}}return![];}function a135_0x195a(_0x40e7fb,_0x413808){_0x40e7fb=_0x40e7fb-0x120;const _0x2e4f89=a135_0x2e4f();let _0x195a48=_0x2e4f89[_0x40e7fb];return _0x195a48;}function runtimeSkillLinkName(_0x20c1e2,_0x286e){const _0x2fb13e=a135_0x49175c,_0x29dc26=safePathSegment(_0x286e,_0x2fb13e(0x12a));if(_0x20c1e2[_0x2fb13e(0x13c)]===_0x2fb13e(0x150)&&RESERVED_PROJECT_SKILL_CODES['has'](_0x29dc26))throw CliErrors[_0x2fb13e(0x13d)](_0x2fb13e(0x148)+_0x29dc26);return _0x20c1e2[_0x2fb13e(0x13c)]===_0x2fb13e(0x150)?_0x29dc26:_0x20c1e2['appCode']+'--'+_0x29dc26;}function runtimeSkillCodeFromLink(_0x329f48,_0x670ce2){const _0x34df15=a135_0x49175c,_0x3a433f=basename(_0x670ce2);return _0x329f48['scope']==='project'?_0x3a433f:_0x3a433f['slice']((_0x329f48[_0x34df15(0x139)]+'--')[_0x34df15(0x12d)]);}export function copyManagedSkillDirectory(_0x39261e,_0x3b04bc){const _0x2deabc=a135_0x49175c,_0x5dfce2=resolve(_0x3b04bc,METADATA_FILE),_0x28d4a6=existsSync(_0x3b04bc);if(_0x28d4a6){const _0x4e0f96=lstatSync(_0x3b04bc);if(_0x4e0f96[_0x2deabc(0x125)]())throw CliErrors['validation']('Refusing\x20to\x20overwrite\x20global\x20Skill\x20symlink:\x20'+_0x3b04bc);if(!_0x4e0f96[_0x2deabc(0x126)]())throw CliErrors[_0x2deabc(0x13d)](_0x2deabc(0x128)+_0x3b04bc);const _0x56bdc5=readMetadataIfPresent(_0x5dfce2);if(_0x56bdc5?.[_0x2deabc(0x13c)]!==_0x2deabc(0x130))throw CliErrors[_0x2deabc(0x13d)]('Refusing\x20to\x20overwrite\x20unmanaged\x20global\x20Skill\x20directory:\x20'+_0x3b04bc);}ensureDirSync(dirname(_0x3b04bc));const _0x2e1476=_0x28d4a6?readMetadataIfPresent(_0x5dfce2)?.['contentHash']:undefined,_0x31fb44=readMetadataIfPresent(resolve(_0x39261e,METADATA_FILE))?.[_0x2deabc(0x156)];return _0x28d4a6&&removeSync(_0x3b04bc),copySkillDirectory(_0x39261e,_0x3b04bc),{'path':_0x3b04bc,'target':_0x39261e,'action':!_0x28d4a6?'created':_0x2e1476===_0x31fb44?_0x2deabc(0x120):_0x2deabc(0x155)};}function copySkillDirectory(_0x1ee77a,_0x355c0c){copySync(_0x1ee77a,_0x355c0c,{'dereference':![],'overwrite':!![],'filter'(_0x296a7f){const _0x17a58c=a135_0x195a;if(lstatSync(_0x296a7f)[_0x17a58c(0x125)]())throw CliErrors[_0x17a58c(0x13d)]('Refusing\x20to\x20copy\x20Skill\x20symlink:\x20'+_0x296a7f);return!![];}});}
@@ -1 +1 @@
1
- (function(_0x3da454,_0x368081){const _0x5ea129=a116_0x54a5,_0x2186b6=_0x3da454();while(!![]){try{const _0x47d4cd=-parseInt(_0x5ea129(0x12a))/0x1+parseInt(_0x5ea129(0x130))/0x2+parseInt(_0x5ea129(0x116))/0x3*(parseInt(_0x5ea129(0x12b))/0x4)+parseInt(_0x5ea129(0x136))/0x5*(-parseInt(_0x5ea129(0x131))/0x6)+-parseInt(_0x5ea129(0x120))/0x7*(-parseInt(_0x5ea129(0x11c))/0x8)+parseInt(_0x5ea129(0x115))/0x9*(-parseInt(_0x5ea129(0x119))/0xa)+-parseInt(_0x5ea129(0x124))/0xb*(parseInt(_0x5ea129(0x10f))/0xc);if(_0x47d4cd===_0x368081)break;else _0x2186b6['push'](_0x2186b6['shift']());}catch(_0x1d29eb){_0x2186b6['push'](_0x2186b6['shift']());}}}(a116_0x57de,0xbaff3));import{existsSync,readdirSync}from'node:fs';import{resolve}from'node:path';function a116_0x57de(){const _0x29fbc9=['isArray','code','180VyiqSq','isDirectory','appCode','4376FqqDKB','tags','skillRoots','from','12187KGWKPY','get','linkedPath','sort','7462081mtMYQB','cache','values','cacheDir','builtin','env','109622pffzsj','56VDkYpr','scope','source','metadataPath','trim','2105320HMayRH','77208FSxkbY','validation','isSymbolicLink','project','dir','115DbUiUw','skillMdPath','accessKey','localeCompare','name','map','24SLvNhZ','skillCode','local','linkedPaths','set','push','454131VAZtBp','306759FFrLgb'];a116_0x57de=function(){return _0x29fbc9;};return a116_0x57de();}import{CliErrors}from'../../errors.js';import{METADATA_FILE,SKILL_FILE}from'./constants.js';import{readMetadataIfPresent}from'./metadata.js';import{getRuntimeSkillCacheRoot,safePathSegment}from'./paths.js';import{isRuntimeSkillScope,normalizeRuntimeSkillScopes}from'./scopes.js';export function listLocalRuntimeSkills(_0x3e09b5,_0x4d7a66,_0x5471b9={}){const _0x179722=a116_0x54a5,_0x24f8cd=safePathSegment(_0x3e09b5['appCode'],_0x179722(0x11b));if(_0x4d7a66[_0x179722(0x11b)]!==_0x24f8cd)throw CliErrors[_0x179722(0x132)]('Runtime\x20Skill\x20install\x20target\x20app\x20mismatch:\x20'+_0x4d7a66[_0x179722(0x11b)]+'\x20!=\x20'+_0x24f8cd);const _0x92e18d=normalizeRuntimeSkillScopes(_0x3e09b5['scopes']),_0x57d829=new Set(_0x92e18d),_0x4c0aa=_0x3e09b5[_0x179722(0x118)]?.[_0x179722(0x12f)](),_0x1d911=new Map(),_0x5d821b=resolve(getRuntimeSkillCacheRoot(_0x3e09b5[_0x179722(0x129)],_0x3e09b5[_0x179722(0x138)],_0x5471b9),_0x24f8cd);for(const _0x135df0 of _0x92e18d){for(const _0x2540f7 of localSkillEntryDirs(resolve(_0x5d821b,_0x135df0))){collectLocalRuntimeSkill(_0x1d911,_0x2540f7,{'appCode':_0x24f8cd,'scopes':_0x57d829,'code':_0x4c0aa,'source':_0x179722(0x125)});}}for(const _0x269735 of _0x4d7a66[_0x179722(0x11e)]){for(const _0x2d89a5 of localSkillLinkCandidates(_0x269735,_0x4d7a66,_0x57d829)){collectLocalRuntimeSkill(_0x1d911,_0x2d89a5,{'appCode':_0x24f8cd,'scopes':_0x57d829,'code':_0x4c0aa,'source':'link','linkedPath':_0x2d89a5});}}return Array[_0x179722(0x11f)](_0x1d911[_0x179722(0x126)]())[_0x179722(0x123)](compareLocalRuntimeSkills);}function localSkillEntryDirs(_0x114be0){const _0x3f039f=a116_0x54a5;if(!existsSync(_0x114be0))return[];return readdirSync(_0x114be0,{'withFileTypes':!![]})['filter'](_0x91a33=>_0x91a33[_0x3f039f(0x11a)]()||_0x91a33[_0x3f039f(0x133)]())[_0x3f039f(0x10e)](_0x13d723=>resolve(_0x114be0,_0x13d723[_0x3f039f(0x10d)]));}function localSkillLinkCandidates(_0x31705c,_0x3ef009,_0x3adbe9){const _0x21af29=a116_0x54a5;if(!existsSync(_0x31705c))return[];const _0x149ef4=_0x3ef009[_0x21af29(0x11b)]+'--';return readdirSync(_0x31705c,{'withFileTypes':!![]})['filter'](_0x399832=>_0x399832['isDirectory']()||_0x399832[_0x21af29(0x133)]())['filter'](_0x456d9b=>_0x3ef009[_0x21af29(0x12c)]===_0x21af29(0x134)||_0x456d9b[_0x21af29(0x10d)]['startsWith'](_0x149ef4)||_0x3adbe9['has'](_0x21af29(0x128)))['map'](_0x39abe3=>resolve(_0x31705c,_0x39abe3[_0x21af29(0x10d)]));}function collectLocalRuntimeSkill(_0x26da28,_0x518eb3,_0x3f2cd8){const _0x4c1a1a=a116_0x54a5,_0xfa9795=resolve(_0x518eb3,METADATA_FILE),_0x350724=readMetadataIfPresent(_0xfa9795);if(!_0x350724)return;if(_0x350724[_0x4c1a1a(0x11b)]!==_0x3f2cd8[_0x4c1a1a(0x11b)])return;if(!isRuntimeSkillScope(_0x350724[_0x4c1a1a(0x12c)])||!_0x3f2cd8['scopes']['has'](_0x350724[_0x4c1a1a(0x12c)]))return;const _0xf95cab=_0x350724[_0x4c1a1a(0x110)]?.[_0x4c1a1a(0x12f)]();if(!_0xf95cab)return;if(_0x3f2cd8[_0x4c1a1a(0x118)]&&_0xf95cab!==_0x3f2cd8[_0x4c1a1a(0x118)])return;const _0x8b2caa=_0x350724['scope']+':'+_0xf95cab,_0x565a7a=_0x3f2cd8[_0x4c1a1a(0x122)]?[_0x3f2cd8['linkedPath']]:[],_0x4869a7=_0x26da28[_0x4c1a1a(0x121)](_0x8b2caa);if(_0x4869a7){_0x3f2cd8[_0x4c1a1a(0x12d)]===_0x4c1a1a(0x125)&&(_0x4869a7['dir']=_0x518eb3,_0x4869a7[_0x4c1a1a(0x127)]=_0x518eb3,_0x4869a7[_0x4c1a1a(0x137)]=resolve(_0x518eb3,SKILL_FILE),_0x4869a7[_0x4c1a1a(0x12e)]=_0xfa9795);for(const _0x3c5bab of _0x565a7a){!_0x4869a7[_0x4c1a1a(0x112)]['includes'](_0x3c5bab)&&_0x4869a7[_0x4c1a1a(0x112)][_0x4c1a1a(0x114)](_0x3c5bab);}_0x4869a7[_0x4c1a1a(0x112)][_0x4c1a1a(0x123)]();return;}_0x26da28[_0x4c1a1a(0x113)](_0x8b2caa,{..._0x350724,'tags':Array[_0x4c1a1a(0x117)](_0x350724[_0x4c1a1a(0x11d)])?_0x350724[_0x4c1a1a(0x11d)]:[],'scope':_0x350724[_0x4c1a1a(0x12c)],'source':_0x4c1a1a(0x111),'dir':_0x518eb3,'cacheDir':_0x3f2cd8['source']===_0x4c1a1a(0x125)?_0x518eb3:undefined,'skillMdPath':resolve(_0x518eb3,SKILL_FILE),'metadataPath':_0xfa9795,'linkedPaths':_0x565a7a});}function a116_0x54a5(_0x494748,_0x485789){_0x494748=_0x494748-0x10c;const _0x57def1=a116_0x57de();let _0x54a569=_0x57def1[_0x494748];return _0x54a569;}function compareLocalRuntimeSkills(_0x5146ef,_0x34aac8){const _0x3aa1fb=a116_0x54a5,_0x1a93f3={'personal':0x0,'company':0x1,'builtin':0x2};return _0x1a93f3[_0x5146ef[_0x3aa1fb(0x12c)]]-_0x1a93f3[_0x34aac8['scope']]||_0x5146ef[_0x3aa1fb(0x110)]['localeCompare'](_0x34aac8[_0x3aa1fb(0x110)])||_0x5146ef[_0x3aa1fb(0x135)][_0x3aa1fb(0x10c)](_0x34aac8[_0x3aa1fb(0x135)]);}
1
+ function a136_0x4473(){const _0x2faa81=['name','link','skillRoots','2995041tGyZsN','linkedPaths','source','local','set','isSymbolicLink','appCode','1263668YrkdqQ','skillMdPath','365QLkYow','39811280ZeHCNl','sort','tags','cacheDir','dir','linkedPath','push','8qIgbjM','has','cache','2SPudnz','map','code','env','scope','accessKey','3247713OUQdlm','from','\x20!=\x20','localeCompare','project','isArray','6907943yoHIlL','metadataPath','builtin','941938cENvgq','filter','includes','73746nIqTHM','get','skillCode','scopes'];a136_0x4473=function(){return _0x2faa81;};return a136_0x4473();}(function(_0xef3f39,_0x49b5c1){const _0x469c8a=a136_0x22ea,_0x5ad1cd=_0xef3f39();while(!![]){try{const _0x32c840=parseInt(_0x469c8a(0x157))/0x1*(parseInt(_0x469c8a(0x166))/0x2)+parseInt(_0x469c8a(0x170))/0x3+parseInt(_0x469c8a(0x14a))/0x4+parseInt(_0x469c8a(0x14c))/0x5*(parseInt(_0x469c8a(0x169))/0x6)+-parseInt(_0x469c8a(0x163))/0x7*(-parseInt(_0x469c8a(0x154))/0x8)+parseInt(_0x469c8a(0x15d))/0x9+-parseInt(_0x469c8a(0x14d))/0xa;if(_0x32c840===_0x49b5c1)break;else _0x5ad1cd['push'](_0x5ad1cd['shift']());}catch(_0x4f2a24){_0x5ad1cd['push'](_0x5ad1cd['shift']());}}}(a136_0x4473,0x7ef57));import{existsSync,readdirSync}from'node:fs';import{resolve}from'node:path';import{CliErrors}from'../../errors.js';import{METADATA_FILE,SKILL_FILE}from'./constants.js';import{readMetadataIfPresent}from'./metadata.js';import{getRuntimeSkillCacheRoot,safePathSegment}from'./paths.js';import{isRuntimeSkillScope,normalizeRuntimeSkillScopes}from'./scopes.js';export function listLocalRuntimeSkills(_0x324f63,_0x13a80d,_0x2cb12e={}){const _0x1d0e01=a136_0x22ea,_0x377209=safePathSegment(_0x324f63[_0x1d0e01(0x149)],_0x1d0e01(0x149));if(_0x13a80d[_0x1d0e01(0x149)]!==_0x377209)throw CliErrors['validation']('Runtime\x20Skill\x20install\x20target\x20app\x20mismatch:\x20'+_0x13a80d[_0x1d0e01(0x149)]+_0x1d0e01(0x15f)+_0x377209);const _0x10e7dc=normalizeRuntimeSkillScopes(_0x324f63[_0x1d0e01(0x16c)]),_0x3ff87a=new Set(_0x10e7dc),_0x2e2cfa=_0x324f63['code']?.['trim'](),_0x362cdf=new Map(),_0x405935=resolve(getRuntimeSkillCacheRoot(_0x324f63[_0x1d0e01(0x15a)],_0x324f63[_0x1d0e01(0x15c)],_0x2cb12e),_0x377209);for(const _0x11931a of _0x10e7dc){for(const _0x22b34d of localSkillEntryDirs(resolve(_0x405935,_0x11931a))){collectLocalRuntimeSkill(_0x362cdf,_0x22b34d,{'appCode':_0x377209,'scopes':_0x3ff87a,'code':_0x2e2cfa,'source':'cache'});}}for(const _0x4f67d2 of _0x13a80d[_0x1d0e01(0x16f)]){for(const _0x19f8e0 of localSkillLinkCandidates(_0x4f67d2,_0x13a80d,_0x3ff87a)){collectLocalRuntimeSkill(_0x362cdf,_0x19f8e0,{'appCode':_0x377209,'scopes':_0x3ff87a,'code':_0x2e2cfa,'source':_0x1d0e01(0x16e),'linkedPath':_0x19f8e0});}}return Array[_0x1d0e01(0x15e)](_0x362cdf['values']())['sort'](compareLocalRuntimeSkills);}function localSkillEntryDirs(_0x3880e2){const _0x47490f=a136_0x22ea;if(!existsSync(_0x3880e2))return[];return readdirSync(_0x3880e2,{'withFileTypes':!![]})['filter'](_0x382d26=>_0x382d26['isDirectory']()||_0x382d26[_0x47490f(0x148)]())[_0x47490f(0x158)](_0x51a922=>resolve(_0x3880e2,_0x51a922[_0x47490f(0x16d)]));}function a136_0x22ea(_0x50a8a7,_0x3b99a5){_0x50a8a7=_0x50a8a7-0x144;const _0x44731f=a136_0x4473();let _0x22ea85=_0x44731f[_0x50a8a7];return _0x22ea85;}function localSkillLinkCandidates(_0x19094e,_0x25f7c6,_0x4689bc){const _0x15e7be=a136_0x22ea;if(!existsSync(_0x19094e))return[];const _0x20ec99=_0x25f7c6[_0x15e7be(0x149)]+'--';return readdirSync(_0x19094e,{'withFileTypes':!![]})['filter'](_0x27ddac=>_0x27ddac['isDirectory']()||_0x27ddac[_0x15e7be(0x148)]())[_0x15e7be(0x167)](_0x2ddc97=>_0x25f7c6[_0x15e7be(0x15b)]===_0x15e7be(0x161)||_0x2ddc97[_0x15e7be(0x16d)]['startsWith'](_0x20ec99)||_0x4689bc[_0x15e7be(0x155)](_0x15e7be(0x165)))['map'](_0x39256e=>resolve(_0x19094e,_0x39256e[_0x15e7be(0x16d)]));}function collectLocalRuntimeSkill(_0x106e76,_0xb8c588,_0x293184){const _0x43d99f=a136_0x22ea,_0xf7df67=resolve(_0xb8c588,METADATA_FILE),_0x1f40df=readMetadataIfPresent(_0xf7df67);if(!_0x1f40df)return;if(_0x1f40df[_0x43d99f(0x149)]!==_0x293184[_0x43d99f(0x149)])return;if(!isRuntimeSkillScope(_0x1f40df[_0x43d99f(0x15b)])||!_0x293184[_0x43d99f(0x16c)]['has'](_0x1f40df[_0x43d99f(0x15b)]))return;const _0x555252=_0x1f40df['skillCode']?.['trim']();if(!_0x555252)return;if(_0x293184[_0x43d99f(0x159)]&&_0x555252!==_0x293184[_0x43d99f(0x159)])return;const _0x3956de=_0x1f40df[_0x43d99f(0x15b)]+':'+_0x555252,_0x42c051=_0x293184[_0x43d99f(0x152)]?[_0x293184[_0x43d99f(0x152)]]:[],_0x5bf6c7=_0x106e76[_0x43d99f(0x16a)](_0x3956de);if(_0x5bf6c7){_0x293184[_0x43d99f(0x145)]===_0x43d99f(0x156)&&(_0x5bf6c7[_0x43d99f(0x151)]=_0xb8c588,_0x5bf6c7[_0x43d99f(0x150)]=_0xb8c588,_0x5bf6c7[_0x43d99f(0x14b)]=resolve(_0xb8c588,SKILL_FILE),_0x5bf6c7[_0x43d99f(0x164)]=_0xf7df67);for(const _0x55ad7b of _0x42c051){!_0x5bf6c7[_0x43d99f(0x144)][_0x43d99f(0x168)](_0x55ad7b)&&_0x5bf6c7[_0x43d99f(0x144)][_0x43d99f(0x153)](_0x55ad7b);}_0x5bf6c7[_0x43d99f(0x144)][_0x43d99f(0x14e)]();return;}_0x106e76[_0x43d99f(0x147)](_0x3956de,{..._0x1f40df,'tags':Array[_0x43d99f(0x162)](_0x1f40df[_0x43d99f(0x14f)])?_0x1f40df[_0x43d99f(0x14f)]:[],'scope':_0x1f40df['scope'],'source':_0x43d99f(0x146),'dir':_0xb8c588,'cacheDir':_0x293184[_0x43d99f(0x145)]===_0x43d99f(0x156)?_0xb8c588:undefined,'skillMdPath':resolve(_0xb8c588,SKILL_FILE),'metadataPath':_0xf7df67,'linkedPaths':_0x42c051});}function compareLocalRuntimeSkills(_0x243689,_0x356f8b){const _0x125238=a136_0x22ea,_0x4c8ae1={'personal':0x0,'company':0x1,'builtin':0x2};return _0x4c8ae1[_0x243689[_0x125238(0x15b)]]-_0x4c8ae1[_0x356f8b[_0x125238(0x15b)]]||_0x243689['skillCode']['localeCompare'](_0x356f8b[_0x125238(0x16b)])||_0x243689[_0x125238(0x151)][_0x125238(0x160)](_0x356f8b[_0x125238(0x151)]);}
@@ -1 +1 @@
1
- (function(_0x440e2a,_0x4a9513){const _0x4db76f=a117_0x1a9d,_0x28a747=_0x440e2a();while(!![]){try{const _0x3242f9=parseInt(_0x4db76f(0x165))/0x1+-parseInt(_0x4db76f(0x174))/0x2*(parseInt(_0x4db76f(0x16e))/0x3)+-parseInt(_0x4db76f(0x161))/0x4+parseInt(_0x4db76f(0x150))/0x5+-parseInt(_0x4db76f(0x157))/0x6+-parseInt(_0x4db76f(0x167))/0x7*(parseInt(_0x4db76f(0x160))/0x8)+parseInt(_0x4db76f(0x153))/0x9*(parseInt(_0x4db76f(0x14d))/0xa);if(_0x3242f9===_0x4a9513)break;else _0x28a747['push'](_0x28a747['shift']());}catch(_0x1843bd){_0x28a747['push'](_0x28a747['shift']());}}}(a117_0x5073,0xbf140));import{readFileSync,readdirSync,realpathSync}from'node:fs';import{relative,resolve}from'node:path';import{CliErrors}from'../../errors.js';import{IGNORED_DIR_NAMES,IGNORED_FILE_NAMES,SKILL_FILE}from'./constants.js';export function fileContent(_0x5e1cfe){const _0x3bd1cc=a117_0x1a9d;return _0x5e1cfe[_0x3bd1cc(0x164)]??Buffer[_0x3bd1cc(0x16f)](_0x5e1cfe[_0x3bd1cc(0x168)]??'','utf8');}export function fileText(_0x4ee0de){const _0xb0003=a117_0x1a9d;return fileContent(_0x4ee0de)[_0xb0003(0x15c)](_0xb0003(0x156));}export function normalizeLocalFiles(_0x101a30){const _0x1aa80e=a117_0x1a9d;if(!Array[_0x1aa80e(0x14f)](_0x101a30)||_0x101a30[_0x1aa80e(0x172)]===0x0)return[];const _0x10aec1=new Map();for(const _0x451120 of _0x101a30){if(!_0x451120||typeof _0x451120!=='object'||typeof _0x451120[_0x1aa80e(0x173)]!==_0x1aa80e(0x151))throw CliErrors[_0x1aa80e(0x162)]('Skill\x20file\x20path\x20must\x20be\x20text.');const _0x4ce23f=normalizeSkillRelativePath(_0x451120[_0x1aa80e(0x173)]);if(_0x10aec1[_0x1aa80e(0x178)](_0x4ce23f))throw CliErrors[_0x1aa80e(0x162)](_0x1aa80e(0x16c)+_0x4ce23f);if(_0x451120[_0x1aa80e(0x164)]!==undefined&&!Buffer[_0x1aa80e(0x16a)](_0x451120[_0x1aa80e(0x164)]))throw CliErrors[_0x1aa80e(0x162)]('Skill\x20file\x20bytes\x20must\x20be\x20a\x20Buffer:\x20'+_0x4ce23f);if(_0x451120[_0x1aa80e(0x164)]===undefined&&typeof _0x451120['content']!==_0x1aa80e(0x151))throw CliErrors[_0x1aa80e(0x162)](_0x1aa80e(0x171)+_0x4ce23f);const _0x5352c7=fileContent(_0x451120);_0x10aec1['set'](_0x4ce23f,{'path':_0x4ce23f,'bytes':_0x5352c7});}return Array[_0x1aa80e(0x16f)](_0x10aec1[_0x1aa80e(0x158)]())['sort'](compareSkillFiles);}export function normalizeManifestFiles(_0x1fb0a3){const _0x2a3e78=a117_0x1a9d;if(!Array['isArray'](_0x1fb0a3)||_0x1fb0a3[_0x2a3e78(0x172)]===0x0)return[];const _0x108b2f=new Map();for(const _0x47aab7 of _0x1fb0a3){if(!_0x47aab7||typeof _0x47aab7!==_0x2a3e78(0x14b)||typeof _0x47aab7[_0x2a3e78(0x173)]!==_0x2a3e78(0x151))throw CliErrors[_0x2a3e78(0x162)](_0x2a3e78(0x166));const _0x375220=normalizeSkillRelativePath(_0x47aab7[_0x2a3e78(0x173)]);if(_0x108b2f[_0x2a3e78(0x178)](_0x375220))throw CliErrors['validation'](_0x2a3e78(0x16c)+_0x375220);if(!isSha256Hex(_0x47aab7[_0x2a3e78(0x163)]))throw CliErrors[_0x2a3e78(0x162)](_0x2a3e78(0x15a)+_0x375220);if(!Number[_0x2a3e78(0x15d)](_0x47aab7[_0x2a3e78(0x176)])||_0x47aab7['size']<0x0)throw CliErrors[_0x2a3e78(0x162)](_0x2a3e78(0x177)+_0x375220);_0x108b2f['set'](_0x375220,{'path':_0x375220,'sha256':_0x47aab7['sha256']['toLowerCase'](),'size':_0x47aab7[_0x2a3e78(0x176)]});}return Array[_0x2a3e78(0x16f)](_0x108b2f['values']())[_0x2a3e78(0x15b)](compareSkillFiles);}function a117_0x5073(){const _0x564f8a=['toString','isSafeInteger','includes','split','80VTiFxK','377580MJXvwI','validation','sha256','bytes','129032OtgLXN','Skill\x20file\x20path\x20must\x20be\x20text.','375571tuPbMl','content','replace','isBuffer','test','Duplicate\x20Skill\x20file\x20path:\x20','add','1075461NrzCSW','from','startsWith','Skill\x20file\x20content\x20must\x20be\x20text\x20or\x20bytes:\x20','length','path','4xxIlFX','Skill\x20directory\x20contains\x20unsupported\x20symlink:\x20','size','Skill\x20file\x20size\x20is\x20invalid:\x20','has','isFile','object','Unsafe\x20Skill\x20file\x20path:\x20','1712110mWmIZq','push','isArray','4125185FznaSB','string','excludedFilePaths','126kXbftL','localeCompare','isDirectory','utf8','7322808mRLMJg','values','name','Skill\x20file\x20sha256\x20is\x20invalid:\x20','sort'];a117_0x5073=function(){return _0x564f8a;};return a117_0x5073();}export function scanSkillDirectory(_0x534ed9,_0xbfdaca={}){const _0xc112fa=a117_0x1a9d,_0xad3d4d=realpathSync(_0x534ed9),_0x3e35e4=canonicalExcludedFilePaths(_0xbfdaca[_0xc112fa(0x152)]),_0x360ae7=[];function _0x5b9eba(_0x7c9fe){const _0x45b557=_0xc112fa,_0x2a34ab=readdirSync(_0x7c9fe,{'withFileTypes':!![]})[_0x45b557(0x15b)]((_0x9f0e66,_0x2a3b6b)=>_0x9f0e66[_0x45b557(0x159)][_0x45b557(0x154)](_0x2a3b6b[_0x45b557(0x159)]));for(const _0x4d387e of _0x2a34ab){if(_0x4d387e[_0x45b557(0x155)]()&&IGNORED_DIR_NAMES['has'](_0x4d387e['name']))continue;if(IGNORED_FILE_NAMES['has'](_0x4d387e[_0x45b557(0x159)]))continue;const _0x3376fc=resolve(_0x7c9fe,_0x4d387e[_0x45b557(0x159)]);if(isExcludedFilePath(_0x3376fc,_0x3e35e4))continue;if(_0x4d387e['isSymbolicLink']())throw CliErrors[_0x45b557(0x162)](_0x45b557(0x175)+_0x3376fc);const _0x2dd9b2=toPosixPath(relative(_0xad3d4d,_0x3376fc));if(_0x4d387e[_0x45b557(0x155)]()){_0x5b9eba(_0x3376fc);continue;}if(!_0x4d387e[_0x45b557(0x179)]())continue;validateSkillRelativePath(_0x2dd9b2);const _0x5cf690=readFileSync(_0x3376fc);_0x360ae7[_0x45b557(0x14e)]({'path':_0x2dd9b2,'bytes':_0x5cf690});}}return _0x5b9eba(_0xad3d4d),normalizeLocalFiles(_0x360ae7);}function canonicalExcludedFilePaths(_0x121a59){const _0x5d803f=a117_0x1a9d,_0x6dc818=new Set();for(const _0x3bbdc8 of _0x121a59??[]){const _0x34472a=resolve(_0x3bbdc8);_0x6dc818[_0x5d803f(0x16d)](_0x34472a);try{_0x6dc818[_0x5d803f(0x16d)](realpathSync(_0x34472a));}catch{}}return _0x6dc818;}function isExcludedFilePath(_0x29eac9,_0x179590){const _0x573068=a117_0x1a9d;if(_0x179590['has'](_0x29eac9))return!![];if(_0x179590[_0x573068(0x176)]===0x0)return![];try{return _0x179590[_0x573068(0x178)](realpathSync(_0x29eac9));}catch{return![];}}export function compareSkillFiles(_0x52e914,_0x4431d4){const _0x4ad293=a117_0x1a9d;if(_0x52e914[_0x4ad293(0x173)]===SKILL_FILE)return _0x4431d4[_0x4ad293(0x173)]===SKILL_FILE?0x0:-0x1;if(_0x4431d4[_0x4ad293(0x173)]===SKILL_FILE)return 0x1;return Buffer['compare'](Buffer[_0x4ad293(0x16f)](_0x52e914[_0x4ad293(0x173)],_0x4ad293(0x156)),Buffer[_0x4ad293(0x16f)](_0x4431d4[_0x4ad293(0x173)],_0x4ad293(0x156)));}export function normalizeSkillRelativePath(_0x49ad39){const _0x338bdd=toPosixPath(_0x49ad39['trim']());return validateSkillRelativePath(_0x338bdd),_0x338bdd;}export function validateSkillRelativePath(_0x46e817){const _0x2f18d1=a117_0x1a9d;if(!_0x46e817||_0x46e817[_0x2f18d1(0x170)]('/')||_0x46e817[_0x2f18d1(0x15e)]('//'))throw CliErrors[_0x2f18d1(0x162)](_0x2f18d1(0x14c)+_0x46e817);for(const _0x449e0f of _0x46e817[_0x2f18d1(0x15f)]('/')){if(!_0x449e0f||_0x449e0f==='.'||_0x449e0f==='..')throw CliErrors['validation'](_0x2f18d1(0x14c)+_0x46e817);}}function a117_0x1a9d(_0x565ed2,_0x5edc98){_0x565ed2=_0x565ed2-0x14b;const _0x50738d=a117_0x5073();let _0x1a9d6b=_0x50738d[_0x565ed2];return _0x1a9d6b;}export function toPosixPath(_0x2f0c0e){const _0x21a7a5=a117_0x1a9d;return _0x2f0c0e[_0x21a7a5(0x169)](/\\/g,'/');}export function isSha256Hex(_0x17afb4){const _0x5781ed=a117_0x1a9d;return typeof _0x17afb4===_0x5781ed(0x151)&&/^[a-fA-F0-9]{64}$/[_0x5781ed(0x16b)](_0x17afb4);}
1
+ (function(_0x1702d3,_0x1bc7ab){const _0x3dc397=a137_0x312f,_0x56a064=_0x1702d3();while(!![]){try{const _0x41f2f0=-parseInt(_0x3dc397(0x1dd))/0x1+parseInt(_0x3dc397(0x1d3))/0x2+-parseInt(_0x3dc397(0x1df))/0x3+parseInt(_0x3dc397(0x1ea))/0x4+-parseInt(_0x3dc397(0x1ce))/0x5+parseInt(_0x3dc397(0x1e5))/0x6+parseInt(_0x3dc397(0x1cb))/0x7;if(_0x41f2f0===_0x1bc7ab)break;else _0x56a064['push'](_0x56a064['shift']());}catch(_0x3874ac){_0x56a064['push'](_0x56a064['shift']());}}}(a137_0x2049,0x1ba1b));import{readFileSync,readdirSync,realpathSync}from'node:fs';import{relative,resolve}from'node:path';function a137_0x2049(){const _0x2c745e=['string','excludedFilePaths','Duplicate\x20Skill\x20file\x20path:\x20','Skill\x20file\x20content\x20must\x20be\x20text\x20or\x20bytes:\x20','33760QkTRaI','content','validation','test','isDirectory','set','bytes','toLowerCase','localeCompare','Skill\x20directory\x20contains\x20unsupported\x20symlink:\x20','51911QcInPi','Skill\x20file\x20size\x20is\x20invalid:\x20','384105CwmTxI','Skill\x20file\x20path\x20must\x20be\x20text.','isArray','name','Unsafe\x20Skill\x20file\x20path:\x20','compare','479928GsOVIv','has','size','isSafeInteger','values','381628bLZBmT','sort','path','from','push','utf8','object','add','replace','isBuffer','sha256','isFile','isSymbolicLink','length','Skill\x20file\x20bytes\x20must\x20be\x20a\x20Buffer:\x20','1940876CJvyXU','trim','includes','882090HcOxFE'];a137_0x2049=function(){return _0x2c745e;};return a137_0x2049();}import{CliErrors}from'../../errors.js';import{IGNORED_DIR_NAMES,IGNORED_FILE_NAMES,SKILL_FILE}from'./constants.js';export function fileContent(_0x5f5bd7){const _0x109eb1=a137_0x312f;return _0x5f5bd7[_0x109eb1(0x1d9)]??Buffer[_0x109eb1(0x1ed)](_0x5f5bd7[_0x109eb1(0x1d4)]??'',_0x109eb1(0x1ef));}export function fileText(_0x8b8ee1){return fileContent(_0x8b8ee1)['toString']('utf8');}export function normalizeLocalFiles(_0xb8b24f){const _0x50a822=a137_0x312f;if(!Array[_0x50a822(0x1e1)](_0xb8b24f)||_0xb8b24f[_0x50a822(0x1f7)]===0x0)return[];const _0x465181=new Map();for(const _0x58be66 of _0xb8b24f){if(!_0x58be66||typeof _0x58be66!=='object'||typeof _0x58be66[_0x50a822(0x1ec)]!==_0x50a822(0x1cf))throw CliErrors[_0x50a822(0x1d5)](_0x50a822(0x1e0));const _0x3cbfe2=normalizeSkillRelativePath(_0x58be66[_0x50a822(0x1ec)]);if(_0x465181[_0x50a822(0x1e6)](_0x3cbfe2))throw CliErrors['validation'](_0x50a822(0x1d1)+_0x3cbfe2);if(_0x58be66[_0x50a822(0x1d9)]!==undefined&&!Buffer[_0x50a822(0x1f3)](_0x58be66[_0x50a822(0x1d9)]))throw CliErrors[_0x50a822(0x1d5)](_0x50a822(0x1f8)+_0x3cbfe2);if(_0x58be66[_0x50a822(0x1d9)]===undefined&&typeof _0x58be66[_0x50a822(0x1d4)]!==_0x50a822(0x1cf))throw CliErrors[_0x50a822(0x1d5)](_0x50a822(0x1d2)+_0x3cbfe2);const _0x42855e=fileContent(_0x58be66);_0x465181[_0x50a822(0x1d8)](_0x3cbfe2,{'path':_0x3cbfe2,'bytes':_0x42855e});}return Array[_0x50a822(0x1ed)](_0x465181['values']())[_0x50a822(0x1eb)](compareSkillFiles);}export function normalizeManifestFiles(_0x583aa3){const _0x72f2f1=a137_0x312f;if(!Array[_0x72f2f1(0x1e1)](_0x583aa3)||_0x583aa3[_0x72f2f1(0x1f7)]===0x0)return[];const _0x3a02ed=new Map();for(const _0x5471fa of _0x583aa3){if(!_0x5471fa||typeof _0x5471fa!==_0x72f2f1(0x1f0)||typeof _0x5471fa[_0x72f2f1(0x1ec)]!==_0x72f2f1(0x1cf))throw CliErrors['validation']('Skill\x20file\x20path\x20must\x20be\x20text.');const _0x441f61=normalizeSkillRelativePath(_0x5471fa[_0x72f2f1(0x1ec)]);if(_0x3a02ed[_0x72f2f1(0x1e6)](_0x441f61))throw CliErrors[_0x72f2f1(0x1d5)](_0x72f2f1(0x1d1)+_0x441f61);if(!isSha256Hex(_0x5471fa[_0x72f2f1(0x1f4)]))throw CliErrors[_0x72f2f1(0x1d5)]('Skill\x20file\x20sha256\x20is\x20invalid:\x20'+_0x441f61);if(!Number[_0x72f2f1(0x1e8)](_0x5471fa['size'])||_0x5471fa[_0x72f2f1(0x1e7)]<0x0)throw CliErrors[_0x72f2f1(0x1d5)](_0x72f2f1(0x1de)+_0x441f61);_0x3a02ed['set'](_0x441f61,{'path':_0x441f61,'sha256':_0x5471fa[_0x72f2f1(0x1f4)][_0x72f2f1(0x1da)](),'size':_0x5471fa[_0x72f2f1(0x1e7)]});}return Array[_0x72f2f1(0x1ed)](_0x3a02ed[_0x72f2f1(0x1e9)]())[_0x72f2f1(0x1eb)](compareSkillFiles);}export function scanSkillDirectory(_0x36b495,_0x10dd1c={}){const _0x5d9685=a137_0x312f,_0x42f54b=realpathSync(_0x36b495),_0x580c6e=canonicalExcludedFilePaths(_0x10dd1c[_0x5d9685(0x1d0)]),_0x3b2ff7=[];function _0x27ec70(_0x2627d){const _0x3e459b=_0x5d9685,_0x34e4d8=readdirSync(_0x2627d,{'withFileTypes':!![]})[_0x3e459b(0x1eb)]((_0x7136b5,_0x2a3588)=>_0x7136b5[_0x3e459b(0x1e2)][_0x3e459b(0x1db)](_0x2a3588[_0x3e459b(0x1e2)]));for(const _0xe11e3a of _0x34e4d8){if(_0xe11e3a[_0x3e459b(0x1d7)]()&&IGNORED_DIR_NAMES['has'](_0xe11e3a[_0x3e459b(0x1e2)]))continue;if(IGNORED_FILE_NAMES['has'](_0xe11e3a['name']))continue;const _0x40c93a=resolve(_0x2627d,_0xe11e3a['name']);if(isExcludedFilePath(_0x40c93a,_0x580c6e))continue;if(_0xe11e3a[_0x3e459b(0x1f6)]())throw CliErrors[_0x3e459b(0x1d5)](_0x3e459b(0x1dc)+_0x40c93a);const _0x26e98f=toPosixPath(relative(_0x42f54b,_0x40c93a));if(_0xe11e3a[_0x3e459b(0x1d7)]()){_0x27ec70(_0x40c93a);continue;}if(!_0xe11e3a[_0x3e459b(0x1f5)]())continue;validateSkillRelativePath(_0x26e98f);const _0x3c43fd=readFileSync(_0x40c93a);_0x3b2ff7[_0x3e459b(0x1ee)]({'path':_0x26e98f,'bytes':_0x3c43fd});}}return _0x27ec70(_0x42f54b),normalizeLocalFiles(_0x3b2ff7);}function canonicalExcludedFilePaths(_0x6cc483){const _0x1e07aa=a137_0x312f,_0x4073e6=new Set();for(const _0x194106 of _0x6cc483??[]){const _0x45a3ca=resolve(_0x194106);_0x4073e6['add'](_0x45a3ca);try{_0x4073e6[_0x1e07aa(0x1f1)](realpathSync(_0x45a3ca));}catch{}}return _0x4073e6;}function isExcludedFilePath(_0x58d8d7,_0x46ae49){const _0xecbbaf=a137_0x312f;if(_0x46ae49[_0xecbbaf(0x1e6)](_0x58d8d7))return!![];if(_0x46ae49[_0xecbbaf(0x1e7)]===0x0)return![];try{return _0x46ae49[_0xecbbaf(0x1e6)](realpathSync(_0x58d8d7));}catch{return![];}}export function compareSkillFiles(_0x5dd165,_0x5035d9){const _0x383716=a137_0x312f;if(_0x5dd165[_0x383716(0x1ec)]===SKILL_FILE)return _0x5035d9[_0x383716(0x1ec)]===SKILL_FILE?0x0:-0x1;if(_0x5035d9[_0x383716(0x1ec)]===SKILL_FILE)return 0x1;return Buffer[_0x383716(0x1e4)](Buffer[_0x383716(0x1ed)](_0x5dd165[_0x383716(0x1ec)],_0x383716(0x1ef)),Buffer[_0x383716(0x1ed)](_0x5035d9[_0x383716(0x1ec)],'utf8'));}export function normalizeSkillRelativePath(_0x5cfc7f){const _0x39a0aa=a137_0x312f,_0x38bf7f=toPosixPath(_0x5cfc7f[_0x39a0aa(0x1cc)]());return validateSkillRelativePath(_0x38bf7f),_0x38bf7f;}export function validateSkillRelativePath(_0x3e76b4){const _0x307209=a137_0x312f;if(!_0x3e76b4||_0x3e76b4['startsWith']('/')||_0x3e76b4[_0x307209(0x1cd)]('//'))throw CliErrors[_0x307209(0x1d5)](_0x307209(0x1e3)+_0x3e76b4);for(const _0x43bfaa of _0x3e76b4['split']('/')){if(!_0x43bfaa||_0x43bfaa==='.'||_0x43bfaa==='..')throw CliErrors['validation']('Unsafe\x20Skill\x20file\x20path:\x20'+_0x3e76b4);}}export function toPosixPath(_0x1a2676){const _0x3f8b70=a137_0x312f;return _0x1a2676[_0x3f8b70(0x1f2)](/\\/g,'/');}function a137_0x312f(_0x38d7bc,_0x541906){_0x38d7bc=_0x38d7bc-0x1cb;const _0x2049a5=a137_0x2049();let _0x312f0f=_0x2049a5[_0x38d7bc];return _0x312f0f;}export function isSha256Hex(_0x1eabf2){const _0x56ccc3=a137_0x312f;return typeof _0x1eabf2===_0x56ccc3(0x1cf)&&/^[a-fA-F0-9]{64}$/[_0x56ccc3(0x1d6)](_0x1eabf2);}
@@ -1 +1 @@
1
- (function(_0x5ff302,_0x5bbc41){const _0x3fc1c7=a118_0x5ae3,_0xca63e8=_0x5ff302();while(!![]){try{const _0x85b120=parseInt(_0x3fc1c7(0xa2))/0x1+parseInt(_0x3fc1c7(0xb1))/0x2+-parseInt(_0x3fc1c7(0xad))/0x3*(parseInt(_0x3fc1c7(0xa7))/0x4)+-parseInt(_0x3fc1c7(0x7c))/0x5*(-parseInt(_0x3fc1c7(0xac))/0x6)+-parseInt(_0x3fc1c7(0x85))/0x7*(parseInt(_0x3fc1c7(0x93))/0x8)+parseInt(_0x3fc1c7(0x86))/0x9*(parseInt(_0x3fc1c7(0x8b))/0xa)+-parseInt(_0x3fc1c7(0x8a))/0xb;if(_0x85b120===_0x5bbc41)break;else _0xca63e8['push'](_0xca63e8['shift']());}catch(_0x555b0f){_0xca63e8['push'](_0xca63e8['shift']());}}}(a118_0x1386,0x9ae9c));import{existsSync,lstatSync,mkdirSync,readFileSync,rmSync}from'node:fs';import{dirname,resolve}from'node:path';import{isCollection,isMap,isNode,parseDocument,visit}from'yaml';import{CliErrors}from'../../errors.js';import{METADATA_FILE,SKILL_FILE}from'./constants.js';import{resolveManagedFilePath,writeBytesAtomic,writeJsonAtomic}from'./fs-utils.js';import{bufferSha256,contentHash,fileHash}from'./hashing.js';import{fileContent,fileText,normalizeLocalFiles}from'./local-files.js';import{buildMetadata,readMetadataIfPresent,requireSkillCode}from'./metadata.js';import{getRuntimeSkillDir}from'./paths.js';import{extractDownloadedPackage,requirePackageBytes}from'./zip-package.js';export function materializeRuntimeSkill(_0x46a402,_0x144c9b,_0x3c25c7){const _0x12cb0d=a118_0x5ae3,_0x567c1c=requireSkillCode(_0x46a402),_0x33c62d=requirePackageBytes(_0x567c1c,_0x3c25c7[_0x12cb0d(0x7d)]),_0x1d6544=extractDownloadedPackage(_0x33c62d),_0x2fd24a=_0x1d6544[_0x12cb0d(0x83)](_0x393442=>_0x393442['path']===SKILL_FILE);if(!_0x2fd24a)throw CliErrors[_0x12cb0d(0x8c)](_0x12cb0d(0x9f)+SKILL_FILE+':\x20'+_0x567c1c);const _0x288ad7=withMaterializedSkillFrontmatter(_0x1d6544,_0x46a402,_0x567c1c),_0x9c7b54=_0x288ad7['find'](_0x11e7d1=>_0x11e7d1[_0x12cb0d(0x88)]===SKILL_FILE),_0x22b3bb=fileText(_0x9c7b54),_0x114713=getRuntimeSkillDir(_0x3c25c7[_0x12cb0d(0x94)],_0x3c25c7[_0x12cb0d(0x7b)],_0x3c25c7[_0x12cb0d(0xa3)],_0x144c9b,_0x567c1c,_0x3c25c7[_0x12cb0d(0x91)]),_0x19df0d=resolve(_0x114713,SKILL_FILE),_0x1f31b4=resolve(_0x114713,METADATA_FILE),_0x407280=contentHash(_0x22b3bb),_0x95bd26=readMetadataIfPresent(_0x1f31b4)?.['fileHashes'];ensurePulledFilesCanBeOverwritten(_0x114713,_0x1f31b4,_0x288ad7,_0x3c25c7[_0x12cb0d(0x96)]===!![]),mkdirSync(_0x114713,{'recursive':!![],'mode':0x1c0});const _0x4ee84f=existsSync(_0x19df0d)?readFileSync(_0x19df0d,_0x12cb0d(0xa4)):undefined;return materializeFiles(_0x114713,_0x288ad7),removeStaleManagedFiles(_0x114713,_0x95bd26,_0x288ad7),writeJsonAtomic(_0x1f31b4,buildMetadata(_0x46a402,_0x144c9b,_0x3c25c7['appCode'],_0x407280,_0x3c25c7[_0x12cb0d(0xa5)],_0x288ad7,_0x33c62d)),{'skill':_0x46a402,'scope':_0x144c9b,'dir':_0x114713,'skillMdPath':_0x19df0d,'metadataPath':_0x1f31b4,'contentHash':_0x407280,'changed':_0x4ee84f!==_0x22b3bb};}function withMaterializedSkillFrontmatter(_0x2a66c5,_0x1d5932,_0x3b3a0e){const _0x31c109=a118_0x5ae3,_0x233cae=skillDisplayName(_0x1d5932,_0x3b3a0e),_0x20300e=_0x1d5932[_0x31c109(0x95)]?.[_0x31c109(0x84)]()||_0x233cae||_0x3b3a0e;return normalizeLocalFiles(_0x2a66c5)[_0x31c109(0xa8)](_0x177eac=>{const _0x2c158d=_0x31c109,_0x4580b9=fileText(_0x177eac);if(_0x177eac[_0x2c158d(0x88)]!==SKILL_FILE)return _0x177eac;if(hasYamlFrontmatter(_0x4580b9))return{'path':_0x177eac['path'],'content':withSyncedDisplayName(_0x4580b9,_0x233cae)};return{'path':_0x177eac[_0x2c158d(0x88)],'content':prependSkillFrontmatter(_0x4580b9,{'name':_0x3b3a0e,'displayName':_0x233cae,'description':_0x20300e})};});}function hasYamlFrontmatter(_0xefc987){const _0x57374c=a118_0x5ae3;return/^\uFEFF?---\s*\r?\n/[_0x57374c(0x9e)](_0xefc987);}function a118_0x1386(){const _0x334492=['Push\x20the\x20directory\x20first,\x20then\x20rerun\x20skill\x20install.\x20Changed\x20file:\x20','28CtFSXI','map','has','description:\x20','Push\x20the\x20directory\x20first,\x20then\x20rerun\x20skill\x20install.','6617154CUgRTr','381279PDLmvB','displayName','contentHash','Remote\x20Skill\x20would\x20overwrite\x20a\x20local\x20non-file\x20path:\x20','1088886dJVJBE','accessKey','5bSEdzU','packageBytes','displayName:\x20','keys','isFile','contents','name','find','trim','28cHaFmr','7391673gBCjXj','slice','path','fileHashes','11194788mRPYFw','10EoeOWW','validation','filter','flow','---\x0a','replace','paths','Remote\x20Skill\x20would\x20overwrite\x20an\x20unmanaged\x20local\x20file:\x20','765552JCuKfL','env','description','force','match','join','---','length','Local\x20Skill\x20files\x20have\x20unpushed\x20edits:\x20','trimEnd','entries','test','Runtime\x20Skill\x20package\x20is\x20missing\x20','toString','errors','456060fqDTxb','appCode','utf8','pulledAt'];a118_0x1386=function(){return _0x334492;};return a118_0x1386();}function prependSkillFrontmatter(_0x283e9c,_0x537511){const _0x459dee=a118_0x5ae3,_0x500053=_0x283e9c['replace'](/^\uFEFF/,'');return['---','name:\x20'+yamlString(_0x537511[_0x459dee(0x82)]),_0x537511['displayName']?_0x459dee(0x7e)+yamlString(_0x537511[_0x459dee(0xae)]):undefined,_0x459dee(0xaa)+yamlString(_0x537511[_0x459dee(0x95)]),_0x459dee(0x99),'',_0x500053][_0x459dee(0x8d)](_0x56d312=>_0x56d312!==undefined)[_0x459dee(0x98)]('\x0a');}function yamlString(_0x4d007a){const _0xcde279=a118_0x5ae3;return JSON['stringify'](_0x4d007a[_0xcde279(0x90)](/\r/g,'')['trim']());}function skillDisplayName(_0x230a5b,_0xbfafb9){const _0x2a9984=a118_0x5ae3,_0x19ab4f=_0x230a5b['skillName']?.[_0x2a9984(0x84)]();return _0x19ab4f||_0xbfafb9;}function withSyncedDisplayName(_0x34c30e,_0xb04fdc){const _0x1b6d63=a118_0x5ae3,_0x11960f=_0x34c30e[_0x1b6d63(0x97)](/^(\uFEFF?)---\s*\r?\n([\s\S]*?)\r?\n---(?:\r?\n|$)/);if(!_0x11960f)return _0x34c30e;const _0x3b44d7=_0x11960f[0x1]??'',_0x2a0461=_0x11960f[0x2]??'',_0x1c6957=parseDocument(_0x2a0461);if(_0x1c6957[_0x1b6d63(0xa1)][_0x1b6d63(0x9a)]>0x0||!isMap(_0x1c6957[_0x1b6d63(0x81)]))return _0x34c30e;if(_0xb04fdc)_0x1c6957['set'](_0x1b6d63(0xae),_0xb04fdc);else{if(_0x1c6957[_0x1b6d63(0xa9)](_0x1b6d63(0xae)))_0x1c6957['delete']('displayName');else return _0x34c30e;}forceBlockCollections(_0x1c6957[_0x1b6d63(0x81)]);const _0x5b47c2=_0x1c6957[_0x1b6d63(0xa0)]({'lineWidth':0x0})[_0x1b6d63(0x9c)](),_0x21e9d6=_0x34c30e[_0x1b6d63(0x87)](_0x11960f[0x0][_0x1b6d63(0x9a)])[_0x1b6d63(0x90)](/^\r?\n/,'');return _0x3b44d7+_0x1b6d63(0x8f)+_0x5b47c2+'\x0a---\x0a\x0a'+_0x21e9d6;}function a118_0x5ae3(_0x368113,_0x4c75af){_0x368113=_0x368113-0x7b;const _0x13863f=a118_0x1386();let _0x5ae31b=_0x13863f[_0x368113];return _0x5ae31b;}function forceBlockCollections(_0xfc9f07){if(!isNode(_0xfc9f07))return;visit(_0xfc9f07,(_0x1e0446,_0x23ed4a)=>{const _0x10dfdd=a118_0x5ae3;isCollection(_0x23ed4a)&&(_0x23ed4a[_0x10dfdd(0x8e)]=![]);});}function ensurePulledFilesCanBeOverwritten(_0x18c09d,_0x22beef,_0x392ec2,_0x27cee8){const _0x27ba56=a118_0x5ae3;if(_0x27cee8||!existsSync(_0x22beef))return;const _0x53cbc7=readMetadataIfPresent(_0x22beef);if(!_0x53cbc7)return;const _0x2cc91f=_0x53cbc7['fileHashes']&&Object['keys'](_0x53cbc7[_0x27ba56(0x89)])['length']>0x0?_0x53cbc7[_0x27ba56(0x89)]:undefined;if(_0x2cc91f)for(const [_0x48ea5b,_0x107176]of Object[_0x27ba56(0x9d)](_0x2cc91f)){const _0x50bf90=resolveManagedFilePath(_0x18c09d,_0x48ea5b);if(!existsSync(_0x50bf90))throw CliErrors['validation']('Local\x20Skill\x20files\x20have\x20unpushed\x20edits:\x20'+_0x18c09d,'Managed\x20file\x20was\x20removed\x20locally:\x20'+_0x48ea5b);const _0x1848a9=lstatSync(_0x50bf90);if(!_0x1848a9[_0x27ba56(0x80)]())throw CliErrors[_0x27ba56(0x8c)]('Local\x20Skill\x20files\x20have\x20unpushed\x20edits:\x20'+_0x18c09d,'Managed\x20file\x20is\x20no\x20longer\x20a\x20regular\x20file:\x20'+_0x48ea5b);const _0x40e7f2=bufferSha256(readFileSync(_0x50bf90));if(_0x40e7f2!==_0x107176)throw CliErrors['validation'](_0x27ba56(0x9b)+_0x18c09d+'.\x20Changed\x20file:\x20'+_0x48ea5b,_0x27ba56(0xa6)+_0x48ea5b);}else{const _0x5e06df=resolve(_0x18c09d,SKILL_FILE);if(existsSync(_0x5e06df)&&_0x53cbc7[_0x27ba56(0xaf)]){const _0x5b4641=contentHash(readFileSync(_0x5e06df,_0x27ba56(0xa4)));if(_0x5b4641!==_0x53cbc7[_0x27ba56(0xaf)])throw CliErrors[_0x27ba56(0x8c)]('Local\x20SKILL.md\x20has\x20unpushed\x20edits:\x20'+_0x5e06df,_0x27ba56(0xab));}}for(const _0x1a5f4d of normalizeLocalFiles(_0x392ec2)){if(_0x2cc91f?.[_0x1a5f4d[_0x27ba56(0x88)]])continue;if(!_0x2cc91f&&_0x1a5f4d['path']===SKILL_FILE)continue;const _0x24b44a=resolveManagedFilePath(_0x18c09d,_0x1a5f4d['path']);if(!existsSync(_0x24b44a))continue;const _0x272af9=lstatSync(_0x24b44a);if(!_0x272af9[_0x27ba56(0x80)]())throw CliErrors[_0x27ba56(0x8c)](_0x27ba56(0x9b)+_0x18c09d,_0x27ba56(0xb0)+_0x1a5f4d[_0x27ba56(0x88)]);const _0x204b22=bufferSha256(readFileSync(_0x24b44a));if(_0x204b22!==fileHash(_0x1a5f4d))throw CliErrors[_0x27ba56(0x8c)](_0x27ba56(0x9b)+_0x18c09d,_0x27ba56(0x92)+_0x1a5f4d[_0x27ba56(0x88)]);}}function materializeFiles(_0x369e12,_0xda518b){const _0x387b68=a118_0x5ae3;for(const _0x4da3a5 of normalizeLocalFiles(_0xda518b)){const _0x3ebe45=resolveManagedFilePath(_0x369e12,_0x4da3a5[_0x387b68(0x88)]);mkdirSync(dirname(_0x3ebe45),{'recursive':!![],'mode':0x1c0}),writeBytesAtomic(_0x3ebe45,fileContent(_0x4da3a5),0x180);}}function removeStaleManagedFiles(_0x2abdf4,_0x231ef9,_0x2462fe){const _0x958f28=a118_0x5ae3;if(!_0x231ef9)return;const _0x8348ef=new Set(normalizeLocalFiles(_0x2462fe)[_0x958f28(0xa8)](_0xa49b40=>_0xa49b40[_0x958f28(0x88)]));for(const _0x4effe4 of Object[_0x958f28(0x7f)](_0x231ef9)){if(_0x8348ef[_0x958f28(0xa9)](_0x4effe4))continue;const _0x3bf51e=resolveManagedFilePath(_0x2abdf4,_0x4effe4);existsSync(_0x3bf51e)&&lstatSync(_0x3bf51e)[_0x958f28(0x80)]()&&rmSync(_0x3bf51e,{'force':!![]});}}
1
+ (function(_0x5da0a9,_0x4ce7d4){const _0x4caa77=a138_0x2499,_0xf80651=_0x5da0a9();while(!![]){try{const _0x129f1b=-parseInt(_0x4caa77(0x1c1))/0x1*(-parseInt(_0x4caa77(0x1bd))/0x2)+parseInt(_0x4caa77(0x1b6))/0x3*(parseInt(_0x4caa77(0x1c9))/0x4)+-parseInt(_0x4caa77(0x1ae))/0x5*(-parseInt(_0x4caa77(0x1c4))/0x6)+parseInt(_0x4caa77(0x1af))/0x7*(-parseInt(_0x4caa77(0x1cb))/0x8)+parseInt(_0x4caa77(0x1b0))/0x9*(-parseInt(_0x4caa77(0x1d0))/0xa)+parseInt(_0x4caa77(0x1c6))/0xb+-parseInt(_0x4caa77(0x1c7))/0xc;if(_0x129f1b===_0x4ce7d4)break;else _0xf80651['push'](_0xf80651['shift']());}catch(_0x220f31){_0xf80651['push'](_0xf80651['shift']());}}}(a138_0x432d,0x23d2c));import{existsSync,lstatSync,mkdirSync,readFileSync,rmSync}from'node:fs';import{dirname,resolve}from'node:path';import{isCollection,isMap,isNode,parseDocument,visit}from'yaml';function a138_0x2499(_0x47ab75,_0x1bf4bd){_0x47ab75=_0x47ab75-0x1a3;const _0x432d00=a138_0x432d();let _0x2499f6=_0x432d00[_0x47ab75];return _0x2499f6;}import{CliErrors}from'../../errors.js';import{METADATA_FILE,SKILL_FILE}from'./constants.js';import{resolveManagedFilePath,writeBytesAtomic,writeJsonAtomic}from'./fs-utils.js';import{bufferSha256,contentHash,fileHash}from'./hashing.js';import{fileContent,fileText,normalizeLocalFiles}from'./local-files.js';function a138_0x432d(){const _0x3bda41=['keys','set','has','330OkjIfB','appCode','---','find','contentHash','description:\x20','match','entries','stringify','force','errors','contents','utf8','displayName','env','isFile','fileHashes','5MtPvUy','798KLhedE','8163TnRTzo','trimEnd','Managed\x20file\x20was\x20removed\x20locally:\x20','Push\x20the\x20directory\x20first,\x20then\x20rerun\x20skill\x20install.\x20Changed\x20file:\x20','toString','trim','45PSgsBz','name:\x20','Local\x20SKILL.md\x20has\x20unpushed\x20edits:\x20','Push\x20the\x20directory\x20first,\x20then\x20rerun\x20skill\x20install.','description','replace','name','2lndytx','path','displayName:\x20','test','26200FJMmVB','accessKey','Local\x20Skill\x20files\x20have\x20unpushed\x20edits:\x20','52086TplDPs','validation','2478685VZASvD','3278232iEFjVW','skillName','66012uZzfpn','length','4064wfefhW','paths'];a138_0x432d=function(){return _0x3bda41;};return a138_0x432d();}import{buildMetadata,readMetadataIfPresent,requireSkillCode}from'./metadata.js';import{getRuntimeSkillDir}from'./paths.js';import{extractDownloadedPackage,requirePackageBytes}from'./zip-package.js';export function materializeRuntimeSkill(_0x54ecb2,_0x447c68,_0x210c70){const _0x347f32=a138_0x2499,_0x97e46f=requireSkillCode(_0x54ecb2),_0x4bb870=requirePackageBytes(_0x97e46f,_0x210c70['packageBytes']),_0x5ec4fd=extractDownloadedPackage(_0x4bb870),_0x31f354=_0x5ec4fd['find'](_0x26de46=>_0x26de46[_0x347f32(0x1be)]===SKILL_FILE);if(!_0x31f354)throw CliErrors['validation']('Runtime\x20Skill\x20package\x20is\x20missing\x20'+SKILL_FILE+':\x20'+_0x97e46f);const _0xcfd309=withMaterializedSkillFrontmatter(_0x5ec4fd,_0x54ecb2,_0x97e46f),_0x45ed62=_0xcfd309[_0x347f32(0x1d3)](_0x2567a6=>_0x2567a6[_0x347f32(0x1be)]===SKILL_FILE),_0x2e90e5=fileText(_0x45ed62),_0xff1aca=getRuntimeSkillDir(_0x210c70[_0x347f32(0x1ab)],_0x210c70[_0x347f32(0x1c2)],_0x210c70[_0x347f32(0x1d1)],_0x447c68,_0x97e46f,_0x210c70[_0x347f32(0x1cc)]),_0x520aa2=resolve(_0xff1aca,SKILL_FILE),_0x23ba18=resolve(_0xff1aca,METADATA_FILE),_0x3b4a25=contentHash(_0x2e90e5),_0x4ed816=readMetadataIfPresent(_0x23ba18)?.[_0x347f32(0x1ad)];ensurePulledFilesCanBeOverwritten(_0xff1aca,_0x23ba18,_0xcfd309,_0x210c70[_0x347f32(0x1a6)]===!![]),mkdirSync(_0xff1aca,{'recursive':!![],'mode':0x1c0});const _0x15012d=existsSync(_0x520aa2)?readFileSync(_0x520aa2,'utf8'):undefined;return materializeFiles(_0xff1aca,_0xcfd309),removeStaleManagedFiles(_0xff1aca,_0x4ed816,_0xcfd309),writeJsonAtomic(_0x23ba18,buildMetadata(_0x54ecb2,_0x447c68,_0x210c70[_0x347f32(0x1d1)],_0x3b4a25,_0x210c70['pulledAt'],_0xcfd309,_0x4bb870)),{'skill':_0x54ecb2,'scope':_0x447c68,'dir':_0xff1aca,'skillMdPath':_0x520aa2,'metadataPath':_0x23ba18,'contentHash':_0x3b4a25,'changed':_0x15012d!==_0x2e90e5};}function withMaterializedSkillFrontmatter(_0x189317,_0x320384,_0x4b1d53){const _0x3fbc0c=a138_0x2499,_0x1de98a=skillDisplayName(_0x320384,_0x4b1d53),_0x14a055=_0x320384[_0x3fbc0c(0x1ba)]?.['trim']()||_0x1de98a||_0x4b1d53;return normalizeLocalFiles(_0x189317)['map'](_0x2ecfca=>{const _0x515ef8=_0x3fbc0c,_0x5779c3=fileText(_0x2ecfca);if(_0x2ecfca[_0x515ef8(0x1be)]!==SKILL_FILE)return _0x2ecfca;if(hasYamlFrontmatter(_0x5779c3))return{'path':_0x2ecfca['path'],'content':withSyncedDisplayName(_0x5779c3,_0x1de98a)};return{'path':_0x2ecfca[_0x515ef8(0x1be)],'content':prependSkillFrontmatter(_0x5779c3,{'name':_0x4b1d53,'displayName':_0x1de98a,'description':_0x14a055})};});}function hasYamlFrontmatter(_0x447e6e){const _0xe910e9=a138_0x2499;return/^\uFEFF?---\s*\r?\n/[_0xe910e9(0x1c0)](_0x447e6e);}function prependSkillFrontmatter(_0x184380,_0x58704e){const _0x9f9c1d=a138_0x2499,_0x1f68f4=_0x184380['replace'](/^\uFEFF/,'');return[_0x9f9c1d(0x1d2),_0x9f9c1d(0x1b7)+yamlString(_0x58704e[_0x9f9c1d(0x1bc)]),_0x58704e[_0x9f9c1d(0x1aa)]?_0x9f9c1d(0x1bf)+yamlString(_0x58704e['displayName']):undefined,_0x9f9c1d(0x1d5)+yamlString(_0x58704e[_0x9f9c1d(0x1ba)]),'---','',_0x1f68f4]['filter'](_0x4065fc=>_0x4065fc!==undefined)['join']('\x0a');}function yamlString(_0x59d5cf){const _0x5c7ca8=a138_0x2499;return JSON[_0x5c7ca8(0x1a5)](_0x59d5cf[_0x5c7ca8(0x1bb)](/\r/g,'')[_0x5c7ca8(0x1b5)]());}function skillDisplayName(_0x2b4412,_0x2ed0b0){const _0x3f66dc=a138_0x2499,_0x397302=_0x2b4412[_0x3f66dc(0x1c8)]?.[_0x3f66dc(0x1b5)]();return _0x397302||_0x2ed0b0;}function withSyncedDisplayName(_0x22388b,_0x31fa7c){const _0x244773=a138_0x2499,_0x2e7f78=_0x22388b[_0x244773(0x1a3)](/^(\uFEFF?)---\s*\r?\n([\s\S]*?)\r?\n---(?:\r?\n|$)/);if(!_0x2e7f78)return _0x22388b;const _0x19dd6e=_0x2e7f78[0x1]??'',_0x57da9b=_0x2e7f78[0x2]??'',_0x1971fe=parseDocument(_0x57da9b);if(_0x1971fe[_0x244773(0x1a7)]['length']>0x0||!isMap(_0x1971fe[_0x244773(0x1a8)]))return _0x22388b;if(_0x31fa7c)_0x1971fe[_0x244773(0x1ce)]('displayName',_0x31fa7c);else{if(_0x1971fe[_0x244773(0x1cf)]('displayName'))_0x1971fe['delete'](_0x244773(0x1aa));else return _0x22388b;}forceBlockCollections(_0x1971fe[_0x244773(0x1a8)]);const _0x5d3956=_0x1971fe[_0x244773(0x1b4)]({'lineWidth':0x0})[_0x244773(0x1b1)](),_0x5ceb16=_0x22388b['slice'](_0x2e7f78[0x0][_0x244773(0x1ca)])['replace'](/^\r?\n/,'');return _0x19dd6e+'---\x0a'+_0x5d3956+'\x0a---\x0a\x0a'+_0x5ceb16;}function forceBlockCollections(_0x4aaab9){if(!isNode(_0x4aaab9))return;visit(_0x4aaab9,(_0x2423eb,_0x4966c4)=>{isCollection(_0x4966c4)&&(_0x4966c4['flow']=![]);});}function ensurePulledFilesCanBeOverwritten(_0x4d5f08,_0x28b666,_0x5c5d34,_0x58c864){const _0x37e650=a138_0x2499;if(_0x58c864||!existsSync(_0x28b666))return;const _0x5dda3a=readMetadataIfPresent(_0x28b666);if(!_0x5dda3a)return;const _0x59554c=_0x5dda3a[_0x37e650(0x1ad)]&&Object[_0x37e650(0x1cd)](_0x5dda3a['fileHashes'])[_0x37e650(0x1ca)]>0x0?_0x5dda3a['fileHashes']:undefined;if(_0x59554c)for(const [_0x9da2be,_0x524e79]of Object[_0x37e650(0x1a4)](_0x59554c)){const _0x15e572=resolveManagedFilePath(_0x4d5f08,_0x9da2be);if(!existsSync(_0x15e572))throw CliErrors[_0x37e650(0x1c5)](_0x37e650(0x1c3)+_0x4d5f08,_0x37e650(0x1b2)+_0x9da2be);const _0x351b0b=lstatSync(_0x15e572);if(!_0x351b0b['isFile']())throw CliErrors['validation'](_0x37e650(0x1c3)+_0x4d5f08,'Managed\x20file\x20is\x20no\x20longer\x20a\x20regular\x20file:\x20'+_0x9da2be);const _0x4337ea=bufferSha256(readFileSync(_0x15e572));if(_0x4337ea!==_0x524e79)throw CliErrors[_0x37e650(0x1c5)]('Local\x20Skill\x20files\x20have\x20unpushed\x20edits:\x20'+_0x4d5f08+'.\x20Changed\x20file:\x20'+_0x9da2be,_0x37e650(0x1b3)+_0x9da2be);}else{const _0x28b831=resolve(_0x4d5f08,SKILL_FILE);if(existsSync(_0x28b831)&&_0x5dda3a[_0x37e650(0x1d4)]){const _0x438f3f=contentHash(readFileSync(_0x28b831,_0x37e650(0x1a9)));if(_0x438f3f!==_0x5dda3a[_0x37e650(0x1d4)])throw CliErrors[_0x37e650(0x1c5)](_0x37e650(0x1b8)+_0x28b831,_0x37e650(0x1b9));}}for(const _0x41cb7a of normalizeLocalFiles(_0x5c5d34)){if(_0x59554c?.[_0x41cb7a['path']])continue;if(!_0x59554c&&_0x41cb7a[_0x37e650(0x1be)]===SKILL_FILE)continue;const _0x1141c1=resolveManagedFilePath(_0x4d5f08,_0x41cb7a[_0x37e650(0x1be)]);if(!existsSync(_0x1141c1))continue;const _0x2f2a76=lstatSync(_0x1141c1);if(!_0x2f2a76['isFile']())throw CliErrors[_0x37e650(0x1c5)]('Local\x20Skill\x20files\x20have\x20unpushed\x20edits:\x20'+_0x4d5f08,'Remote\x20Skill\x20would\x20overwrite\x20a\x20local\x20non-file\x20path:\x20'+_0x41cb7a[_0x37e650(0x1be)]);const _0x40b0f3=bufferSha256(readFileSync(_0x1141c1));if(_0x40b0f3!==fileHash(_0x41cb7a))throw CliErrors['validation']('Local\x20Skill\x20files\x20have\x20unpushed\x20edits:\x20'+_0x4d5f08,'Remote\x20Skill\x20would\x20overwrite\x20an\x20unmanaged\x20local\x20file:\x20'+_0x41cb7a[_0x37e650(0x1be)]);}}function materializeFiles(_0x42a4e9,_0x4997a0){const _0x4e1492=a138_0x2499;for(const _0x2f7e3d of normalizeLocalFiles(_0x4997a0)){const _0x462c36=resolveManagedFilePath(_0x42a4e9,_0x2f7e3d[_0x4e1492(0x1be)]);mkdirSync(dirname(_0x462c36),{'recursive':!![],'mode':0x1c0}),writeBytesAtomic(_0x462c36,fileContent(_0x2f7e3d),0x180);}}function removeStaleManagedFiles(_0x3ed895,_0x1cfe73,_0x39341f){const _0x68fa9c=a138_0x2499;if(!_0x1cfe73)return;const _0x4a2163=new Set(normalizeLocalFiles(_0x39341f)['map'](_0xbf5321=>_0xbf5321[_0x68fa9c(0x1be)]));for(const _0x3590c4 of Object[_0x68fa9c(0x1cd)](_0x1cfe73)){if(_0x4a2163[_0x68fa9c(0x1cf)](_0x3590c4))continue;const _0x2e9cd5=resolveManagedFilePath(_0x3ed895,_0x3590c4);existsSync(_0x2e9cd5)&&lstatSync(_0x2e9cd5)[_0x68fa9c(0x1ac)]()&&rmSync(_0x2e9cd5,{'force':!![]});}}
@@ -1 +1 @@
1
- (function(_0x4fbe8c,_0x217d62){const _0x42d080=a119_0x55fb,_0x5c6316=_0x4fbe8c();while(!![]){try{const _0x35e982=-parseInt(_0x42d080(0x1f6))/0x1*(-parseInt(_0x42d080(0x1ee))/0x2)+-parseInt(_0x42d080(0x210))/0x3+-parseInt(_0x42d080(0x1fb))/0x4*(-parseInt(_0x42d080(0x1ef))/0x5)+-parseInt(_0x42d080(0x202))/0x6*(parseInt(_0x42d080(0x20c))/0x7)+parseInt(_0x42d080(0x207))/0x8*(-parseInt(_0x42d080(0x1fa))/0x9)+parseInt(_0x42d080(0x206))/0xa*(parseInt(_0x42d080(0x1fc))/0xb)+parseInt(_0x42d080(0x1f1))/0xc*(-parseInt(_0x42d080(0x1fd))/0xd);if(_0x35e982===_0x217d62)break;else _0x5c6316['push'](_0x5c6316['shift']());}catch(_0x51cdc6){_0x5c6316['push'](_0x5c6316['shift']());}}}(a119_0x459b,0x4b68b));import{existsSync,readFileSync}from'node:fs';import{CliErrors}from'../../errors.js';import{METADATA_FILE}from'./constants.js';import{bufferSha256,fileHash,fileTreeHash}from'./hashing.js';import{fileContent,normalizeLocalFiles}from'./local-files.js';import{buildSkillPackage,localFilesToManifestFiles}from'./zip-package.js';function a119_0x55fb(_0x25d42f,_0x53016c){_0x25d42f=_0x25d42f-0x1eb;const _0x459b4e=a119_0x459b();let _0x55fbed=_0x459b4e[_0x25d42f];return _0x55fbed;}export function buildMetadata(_0x21b01a,_0x5bc281,_0x3671c4,_0x2188a2,_0x88100b,_0xc0ac32,_0x39e54f){const _0x44192c=a119_0x55fb,_0x5d3696=_0xc0ac32?normalizeLocalFiles(_0xc0ac32):[],_0x213725=!_0x39e54f&&_0x5d3696['length']>0x0?buildSkillPackage(_0x5d3696):undefined,_0x1d1a11=_0x39e54f?bufferSha256(_0x39e54f):_0x213725?.[_0x44192c(0x20d)][_0x44192c(0x1fe)],_0x5c9250=_0x39e54f?.[_0x44192c(0x1f7)]??_0x213725?.[_0x44192c(0x20d)]['zipSize'],_0x2e65b2=_0x5d3696[_0x44192c(0x1f7)]>0x0?Object[_0x44192c(0x1f9)](_0x5d3696[_0x44192c(0x1f2)](_0xe91236=>[_0xe91236[_0x44192c(0x1ed)],fileHash(_0xe91236)])):undefined;return{'schemaVersion':_0x5d3696[_0x44192c(0x1f7)]>0x0?0x2:0x1,'id':_0x21b01a['id'],'appCode':_0x3671c4,'skillCode':requireSkillCode(_0x21b01a),'skillName':_0x21b01a['skillName'],'description':_0x21b01a[_0x44192c(0x201)],'scope':_0x5bc281,'readonly':_0x5bc281!==_0x44192c(0x212)||_0x21b01a[_0x44192c(0x1f4)]===!![],'tenantCode':_0x21b01a[_0x44192c(0x1ff)],'userId':_0x21b01a[_0x44192c(0x211)],'version':_0x21b01a['version'],'status':_0x21b01a[_0x44192c(0x1f3)],'tags':Array[_0x44192c(0x205)](_0x21b01a[_0x44192c(0x200)])?_0x21b01a[_0x44192c(0x200)]:[],'hasUpstreamUpdate':_0x21b01a[_0x44192c(0x1f5)],'forkedFromSkillId':_0x21b01a[_0x44192c(0x209)],'forkedFromVersion':_0x21b01a[_0x44192c(0x20f)],'sourceSessionId':_0x21b01a['sourceSessionId'],'contentHash':_0x2188a2,'fileHashes':_0x2e65b2,'treeHash':_0x5d3696[_0x44192c(0x1f7)]>0x0?fileTreeHash(localFilesToManifestFiles(_0x5d3696)):undefined,'ossPath':remoteManifestOssPath(_0x21b01a[_0x44192c(0x208)]),'zipSha256':_0x1d1a11,'zipSize':_0x5c9250,'files':_0x5d3696[_0x44192c(0x1f7)]>0x0?_0x5d3696[_0x44192c(0x1f2)](_0x4c98a0=>({'path':_0x4c98a0[_0x44192c(0x1ed)],'hash':fileHash(_0x4c98a0),'size':fileContent(_0x4c98a0)[_0x44192c(0x1f7)]})):undefined,'pulledAt':_0x88100b??new Date()[_0x44192c(0x204)]()};}export function requireSkillCode(_0x2b6b78){const _0x55ba96=a119_0x55fb,_0x5355b7=_0x2b6b78['skillCode']?.[_0x55ba96(0x203)]();if(!_0x5355b7)throw CliErrors[_0x55ba96(0x1ec)](_0x55ba96(0x20b));return _0x5355b7;}function a119_0x459b(){const _0x1f0ed1=['145reSPne','parse','14592JpxvHU','map','status','readonly','hasUpstreamUpdate','159789fmJbpA','length','utf8','fromEntries','748755xtMPlu','29716pHqNrH','77957KrVnec','2353DXAknc','zipSha256','tenantCode','tags','description','6YKdwpu','trim','toISOString','isArray','570HQzVsh','16zRxaPM','files','forkedFromSkillId','string','Runtime\x20Skill\x20is\x20missing\x20skillCode.','2473233oUqxiK','manifest','object','forkedFromVersion','150261OiWwwU','userId','personal','ossPath','Invalid\x20','validation','path','6LPgybo'];a119_0x459b=function(){return _0x1f0ed1;};return a119_0x459b();}export function readMetadataIfPresent(_0x265425){const _0x329d1f=a119_0x55fb;if(!existsSync(_0x265425))return undefined;try{const _0x18a4b=JSON[_0x329d1f(0x1f0)](readFileSync(_0x265425,_0x329d1f(0x1f8)));return _0x18a4b;}catch{throw CliErrors[_0x329d1f(0x1ec)](_0x329d1f(0x1eb)+METADATA_FILE+':\x20'+_0x265425);}}function remoteManifestOssPath(_0x1d8c59){const _0x3efb04=a119_0x55fb;if(!_0x1d8c59||typeof _0x1d8c59!==_0x3efb04(0x20e)||Array['isArray'](_0x1d8c59))return undefined;const _0x29e052=_0x1d8c59[_0x3efb04(0x213)];return typeof _0x29e052===_0x3efb04(0x20a)&&_0x29e052['trim']()?_0x29e052['trim']():undefined;}
1
+ (function(_0x3fa40c,_0x18d10e){const _0x33e5ce=a139_0x35c2,_0x3980b5=_0x3fa40c();while(!![]){try{const _0x185325=parseInt(_0x33e5ce(0x1f5))/0x1*(-parseInt(_0x33e5ce(0x1f3))/0x2)+-parseInt(_0x33e5ce(0x1f9))/0x3*(-parseInt(_0x33e5ce(0x211))/0x4)+parseInt(_0x33e5ce(0x1ef))/0x5+-parseInt(_0x33e5ce(0x1f4))/0x6*(-parseInt(_0x33e5ce(0x1fa))/0x7)+-parseInt(_0x33e5ce(0x20e))/0x8+-parseInt(_0x33e5ce(0x1fe))/0x9+-parseInt(_0x33e5ce(0x202))/0xa*(parseInt(_0x33e5ce(0x206))/0xb);if(_0x185325===_0x18d10e)break;else _0x3980b5['push'](_0x3980b5['shift']());}catch(_0x26b9bd){_0x3980b5['push'](_0x3980b5['shift']());}}}(a139_0x5681,0xbf4fa));import{existsSync,readFileSync}from'node:fs';import{CliErrors}from'../../errors.js';import{METADATA_FILE}from'./constants.js';import{bufferSha256,fileHash,fileTreeHash}from'./hashing.js';import{fileContent,normalizeLocalFiles}from'./local-files.js';import{buildSkillPackage,localFilesToManifestFiles}from'./zip-package.js';export function buildMetadata(_0x49ebd0,_0x31a245,_0x292e9b,_0x413d2c,_0x382fe5,_0x4ed4e0,_0x47511c){const _0x5d0be2=a139_0x35c2,_0x426009=_0x4ed4e0?normalizeLocalFiles(_0x4ed4e0):[],_0x47bc58=!_0x47511c&&_0x426009[_0x5d0be2(0x1f7)]>0x0?buildSkillPackage(_0x426009):undefined,_0x412688=_0x47511c?bufferSha256(_0x47511c):_0x47bc58?.[_0x5d0be2(0x20a)][_0x5d0be2(0x1f8)],_0x7c9109=_0x47511c?.['length']??_0x47bc58?.[_0x5d0be2(0x20a)]['zipSize'],_0x559146=_0x426009['length']>0x0?Object['fromEntries'](_0x426009['map'](_0x245e6f=>[_0x245e6f['path'],fileHash(_0x245e6f)])):undefined;return{'schemaVersion':_0x426009[_0x5d0be2(0x1f7)]>0x0?0x2:0x1,'id':_0x49ebd0['id'],'appCode':_0x292e9b,'skillCode':requireSkillCode(_0x49ebd0),'skillName':_0x49ebd0[_0x5d0be2(0x1f0)],'description':_0x49ebd0['description'],'example':_0x49ebd0['example'],'scope':_0x31a245,'readonly':_0x31a245!=='personal'||_0x49ebd0[_0x5d0be2(0x20f)]===!![],'tenantCode':_0x49ebd0[_0x5d0be2(0x1f2)],'userId':_0x49ebd0[_0x5d0be2(0x200)],'version':_0x49ebd0[_0x5d0be2(0x20c)],'status':_0x49ebd0[_0x5d0be2(0x1fd)],'tags':Array[_0x5d0be2(0x209)](_0x49ebd0[_0x5d0be2(0x203)])?_0x49ebd0[_0x5d0be2(0x203)]:[],'hasUpstreamUpdate':_0x49ebd0['hasUpstreamUpdate'],'forkedFromSkillId':_0x49ebd0[_0x5d0be2(0x208)],'forkedFromVersion':_0x49ebd0[_0x5d0be2(0x205)],'sourceSessionId':_0x49ebd0[_0x5d0be2(0x1f6)],'contentHash':_0x413d2c,'fileHashes':_0x559146,'treeHash':_0x426009['length']>0x0?fileTreeHash(localFilesToManifestFiles(_0x426009)):undefined,'ossPath':remoteManifestOssPath(_0x49ebd0['files']),'zipSha256':_0x412688,'zipSize':_0x7c9109,'files':_0x426009[_0x5d0be2(0x1f7)]>0x0?_0x426009[_0x5d0be2(0x20d)](_0x49d5a3=>({'path':_0x49d5a3[_0x5d0be2(0x207)],'hash':fileHash(_0x49d5a3),'size':fileContent(_0x49d5a3)[_0x5d0be2(0x1f7)]})):undefined,'pulledAt':_0x382fe5??new Date()[_0x5d0be2(0x1fb)]()};}function a139_0x5681(){const _0x3aa80d=['2141808iwnyPF','10605357HeLzfe','toISOString','trim','status','1001016xsLVZG','utf8','userId','Invalid\x20','561510WcJcUk','tags','string','forkedFromVersion','132JBXeCQ','path','forkedFromSkillId','isArray','manifest','Runtime\x20Skill\x20is\x20missing\x20skillCode.','version','map','6349832sFMxtl','readonly','parse','4HJPILH','ossPath','2144450tGWdlU','skillName','validation','tenantCode','2IPmmWu','6qVjpCm','295502DGdpzC','sourceSessionId','length','zipSha256'];a139_0x5681=function(){return _0x3aa80d;};return a139_0x5681();}export function requireSkillCode(_0x3f424e){const _0x195b63=a139_0x35c2,_0x21750b=_0x3f424e['skillCode']?.['trim']();if(!_0x21750b)throw CliErrors[_0x195b63(0x1f1)](_0x195b63(0x20b));return _0x21750b;}export function readMetadataIfPresent(_0x277407){const _0x63b6bf=a139_0x35c2;if(!existsSync(_0x277407))return undefined;try{const _0xaeaa6d=JSON[_0x63b6bf(0x210)](readFileSync(_0x277407,_0x63b6bf(0x1ff)));return _0xaeaa6d;}catch{throw CliErrors[_0x63b6bf(0x1f1)](_0x63b6bf(0x201)+METADATA_FILE+':\x20'+_0x277407);}}function a139_0x35c2(_0x19e260,_0x2952e2){_0x19e260=_0x19e260-0x1ee;const _0x5681d4=a139_0x5681();let _0x35c2a8=_0x5681d4[_0x19e260];return _0x35c2a8;}function remoteManifestOssPath(_0x1c1611){const _0x256a5e=a139_0x35c2;if(!_0x1c1611||typeof _0x1c1611!=='object'||Array[_0x256a5e(0x209)](_0x1c1611))return undefined;const _0x416fab=_0x1c1611[_0x256a5e(0x1ee)];return typeof _0x416fab===_0x256a5e(0x204)&&_0x416fab['trim']()?_0x416fab[_0x256a5e(0x1fc)]():undefined;}
@@ -1 +1 @@
1
- const a120_0x30cf72=a120_0x5631;(function(_0x332c12,_0x245a0a){const _0x1f163e=a120_0x5631,_0x592098=_0x332c12();while(!![]){try{const _0x4c1eb1=parseInt(_0x1f163e(0x1b0))/0x1+-parseInt(_0x1f163e(0x1b2))/0x2*(-parseInt(_0x1f163e(0x1bb))/0x3)+-parseInt(_0x1f163e(0x1ad))/0x4*(parseInt(_0x1f163e(0x1ac))/0x5)+parseInt(_0x1f163e(0x1b5))/0x6+-parseInt(_0x1f163e(0x1ba))/0x7*(parseInt(_0x1f163e(0x1a2))/0x8)+-parseInt(_0x1f163e(0x1bd))/0x9*(-parseInt(_0x1f163e(0x1a9))/0xa)+parseInt(_0x1f163e(0x1b7))/0xb*(-parseInt(_0x1f163e(0x1b8))/0xc);if(_0x4c1eb1===_0x245a0a)break;else _0x592098['push'](_0x592098['shift']());}catch(_0x41e9a1){_0x592098['push'](_0x592098['shift']());}}}(a120_0x3f10,0x6f601));import{existsSync}from'node:fs';import{homedir}from'node:os';import{resolve}from'node:path';import{fingerprintAccessKey}from'../../commands/app/cache.js';import{PRODUCT_CONFIG,productEnv}from'../../constant/product.js';import{CliErrors}from'../../errors.js';function a120_0x5631(_0x19b9f9,_0x58e67c){_0x19b9f9=_0x19b9f9-0x1a0;const _0x3f10a1=a120_0x3f10();let _0x56315e=_0x3f10a1[_0x19b9f9];return _0x56315e;}export function resolveSkillSyncPaths(_0x42a016={}){const _0x17668b=a120_0x5631,_0x226a45=_0x42a016[_0x17668b(0x1a8)]??homedir(),_0x59476e=resolve(_0x226a45,PRODUCT_CONFIG[_0x17668b(0x1b4)],_0x17668b(0x1af)),_0x16bc7d=trimmedEnv(_0x17668b(0x1a3)),_0x5dbb63=trimmedEnv(_0x17668b(0x1a7)),_0x2acc9b=resolve(_0x226a45,_0x17668b(0x1a5)),_0x5178f9=_0x42a016[_0x17668b(0x1b6)]??(existsSync(_0x2acc9b)?resolve(_0x2acc9b,_0x17668b(0x1a0)):undefined);return{'homeDir':_0x226a45,'cacheRoot':_0x59476e,'managedRoot':resolve(_0x226a45,PRODUCT_CONFIG[_0x17668b(0x1b4)]),'agentsSkillsDir':_0x42a016[_0x17668b(0x1aa)]??_0x16bc7d??resolve(_0x226a45,_0x17668b(0x1b1),_0x17668b(0x1a0)),'claudeSkillsDir':_0x42a016[_0x17668b(0x1ab)]??_0x5dbb63??resolve(_0x226a45,_0x17668b(0x1b9),_0x17668b(0x1a0)),'workbuddySkillsDir':_0x5178f9};}export function runtimeAgentSkillRoots(_0x13e598){const _0x201efb=a120_0x5631;return[_0x13e598[_0x201efb(0x1aa)],_0x13e598[_0x201efb(0x1ab)],_0x13e598[_0x201efb(0x1b6)]][_0x201efb(0x1a6)](_0x2a809e=>Boolean(_0x2a809e));}export function getRuntimeSkillCacheRoot(_0x483826,_0x503f60,_0x447eb5={}){const _0x29f46a=a120_0x5631,_0x285579=resolveSkillSyncPaths(_0x447eb5);return resolve(_0x285579['cacheRoot'],_0x483826,fingerprintAccessKey(_0x503f60),_0x29f46a(0x1a0));}export function getRuntimeSkillDir(_0x39ca63,_0x55ad36,_0x5c46f9,_0x1b4c02,_0x3b9b0e,_0x15713a={}){const _0x39cde3=a120_0x5631;return resolve(getRuntimeSkillCacheRoot(_0x39ca63,_0x55ad36,_0x15713a),safePathSegment(_0x5c46f9,_0x39cde3(0x1a4)),_0x1b4c02,safePathSegment(_0x3b9b0e,'skillCode'));}export function safePathSegment(_0x2741ec,_0x484665=a120_0x30cf72(0x1b3)){const _0x2b4c53=a120_0x30cf72;if(!_0x2741ec||_0x2741ec['includes']('/')||_0x2741ec['includes']('\x5c')||_0x2741ec[_0x2b4c53(0x1a1)]('..'))throw CliErrors[_0x2b4c53(0x1bc)](_0x2b4c53(0x1be)+_0x484665+_0x2b4c53(0x1ae)+_0x2741ec);return _0x2741ec;}function trimmedEnv(_0x111f1a){const _0x3897dd=productEnv(_0x111f1a)?.['trim']();return _0x3897dd?_0x3897dd:undefined;}function a120_0x3f10(){const _0x27d6bd=['path\x20segment','homeDirName','3088002wULaAB','workbuddySkillsDir','110ctMcEv','78240ampFPj','.claude','56QhKvyy','39JENAxp','validation','176679uhjjBk','Unsafe\x20','skills','includes','842696lymqNU','SKILL_ROOT','appCode','.workbuddy','filter','CLAUDE_SKILL_ROOT','homeDir','90WLaNsj','agentsSkillsDir','claudeSkillsDir','398165ChvSzd','4bWNZpx','\x20for\x20local\x20path:\x20','cache','455586maeOye','.agents','45660NLzqdf'];a120_0x3f10=function(){return _0x27d6bd;};return a120_0x3f10();}
1
+ const a140_0x3afa6a=a140_0x4fed;(function(_0x262b29,_0x27c832){const _0x6be16c=a140_0x4fed,_0xdb8f40=_0x262b29();while(!![]){try{const _0x3cc519=-parseInt(_0x6be16c(0x1ef))/0x1*(parseInt(_0x6be16c(0x1ee))/0x2)+-parseInt(_0x6be16c(0x1fe))/0x3+parseInt(_0x6be16c(0x1ea))/0x4*(-parseInt(_0x6be16c(0x1f8))/0x5)+-parseInt(_0x6be16c(0x1fb))/0x6+parseInt(_0x6be16c(0x1eb))/0x7*(-parseInt(_0x6be16c(0x1e9))/0x8)+parseInt(_0x6be16c(0x1e8))/0x9*(parseInt(_0x6be16c(0x204))/0xa)+parseInt(_0x6be16c(0x203))/0xb;if(_0x3cc519===_0x27c832)break;else _0xdb8f40['push'](_0xdb8f40['shift']());}catch(_0x3f942c){_0xdb8f40['push'](_0xdb8f40['shift']());}}}(a140_0x234b,0x575b0));import{existsSync}from'node:fs';function a140_0x234b(){const _0x4b8018=['1052yQzIST','3706486yEAjUs','trim','workbuddySkillsDir','12904DHaUMj','23tgqVPh','validation','includes','skillCode','filter','appCode','skills','cacheRoot','path\x20segment','10390HOYnrr','\x20for\x20local\x20path:\x20','homeDir','4105164LeyhKH','claudeSkillsDir','.claude','1971645mggsNc','.agents','cache','agentsSkillsDir','homeDirName','30401272VKBBWD','210vWuEjf','.workbuddy','CLAUDE_SKILL_ROOT','68517JOZlge','8LBjOPO'];a140_0x234b=function(){return _0x4b8018;};return a140_0x234b();}import{homedir}from'node:os';import{resolve}from'node:path';import{fingerprintAccessKey}from'../../commands/app/cache.js';import{PRODUCT_CONFIG,productEnv}from'../../constant/product.js';import{CliErrors}from'../../errors.js';export function resolveSkillSyncPaths(_0x4620e8={}){const _0x55c0ed=a140_0x4fed,_0x5bae3d=_0x4620e8[_0x55c0ed(0x1fa)]??homedir(),_0x13ddb8=resolve(_0x5bae3d,PRODUCT_CONFIG[_0x55c0ed(0x202)],_0x55c0ed(0x200)),_0xded038=trimmedEnv('SKILL_ROOT'),_0x266503=trimmedEnv(_0x55c0ed(0x1e7)),_0x40d697=resolve(_0x5bae3d,_0x55c0ed(0x205)),_0x522f00=_0x4620e8[_0x55c0ed(0x1ed)]??(existsSync(_0x40d697)?resolve(_0x40d697,_0x55c0ed(0x1f5)):undefined);return{'homeDir':_0x5bae3d,'cacheRoot':_0x13ddb8,'managedRoot':resolve(_0x5bae3d,PRODUCT_CONFIG[_0x55c0ed(0x202)]),'agentsSkillsDir':_0x4620e8['agentsSkillsDir']??_0xded038??resolve(_0x5bae3d,_0x55c0ed(0x1ff),_0x55c0ed(0x1f5)),'claudeSkillsDir':_0x4620e8['claudeSkillsDir']??_0x266503??resolve(_0x5bae3d,_0x55c0ed(0x1fd),_0x55c0ed(0x1f5)),'workbuddySkillsDir':_0x522f00};}export function runtimeAgentSkillRoots(_0x2c1676){const _0x1c5caa=a140_0x4fed;return[_0x2c1676[_0x1c5caa(0x201)],_0x2c1676[_0x1c5caa(0x1fc)],_0x2c1676[_0x1c5caa(0x1ed)]][_0x1c5caa(0x1f3)](_0x281b91=>Boolean(_0x281b91));}function a140_0x4fed(_0x489c49,_0x5b5c26){_0x489c49=_0x489c49-0x1e7;const _0x234b5a=a140_0x234b();let _0x4fed31=_0x234b5a[_0x489c49];return _0x4fed31;}export function getRuntimeSkillCacheRoot(_0x2d8ea7,_0x4f119d,_0x2f5352={}){const _0x8b7ac1=a140_0x4fed,_0x5b246e=resolveSkillSyncPaths(_0x2f5352);return resolve(_0x5b246e[_0x8b7ac1(0x1f6)],_0x2d8ea7,fingerprintAccessKey(_0x4f119d),_0x8b7ac1(0x1f5));}export function getRuntimeSkillDir(_0x480687,_0x25a861,_0x33398a,_0x486b43,_0x37c3d3,_0x3e400d={}){const _0xb8966d=a140_0x4fed;return resolve(getRuntimeSkillCacheRoot(_0x480687,_0x25a861,_0x3e400d),safePathSegment(_0x33398a,_0xb8966d(0x1f4)),_0x486b43,safePathSegment(_0x37c3d3,_0xb8966d(0x1f2)));}export function safePathSegment(_0x4febda,_0xc32626=a140_0x3afa6a(0x1f7)){const _0x1e0843=a140_0x3afa6a;if(!_0x4febda||_0x4febda['includes']('/')||_0x4febda[_0x1e0843(0x1f1)]('\x5c')||_0x4febda[_0x1e0843(0x1f1)]('..'))throw CliErrors[_0x1e0843(0x1f0)]('Unsafe\x20'+_0xc32626+_0x1e0843(0x1f9)+_0x4febda);return _0x4febda;}function trimmedEnv(_0x130608){const _0x67b461=a140_0x3afa6a,_0x171508=productEnv(_0x130608)?.[_0x67b461(0x1ec)]();return _0x171508?_0x171508:undefined;}
@@ -1 +1 @@
1
- (function(_0x429535,_0x21dfaf){const _0x2a0534=a121_0x5289,_0x300c23=_0x429535();while(!![]){try{const _0x1d4ec4=-parseInt(_0x2a0534(0x1f4))/0x1+-parseInt(_0x2a0534(0x1f8))/0x2*(-parseInt(_0x2a0534(0x1db))/0x3)+-parseInt(_0x2a0534(0x20f))/0x4+parseInt(_0x2a0534(0x1f0))/0x5+-parseInt(_0x2a0534(0x1f2))/0x6+parseInt(_0x2a0534(0x1df))/0x7*(-parseInt(_0x2a0534(0x1e8))/0x8)+parseInt(_0x2a0534(0x1e9))/0x9*(parseInt(_0x2a0534(0x207))/0xa);if(_0x1d4ec4===_0x21dfaf)break;else _0x300c23['push'](_0x300c23['shift']());}catch(_0xbf4f6a){_0x300c23['push'](_0x300c23['shift']());}}}(a121_0x5ab5,0xeb0df));import{existsSync,lstatSync,readFileSync,realpathSync}from'node:fs';import{basename,resolve}from'node:path';import{parse as a121_0x2b21b7}from'yaml';import{CliErrors}from'../../errors.js';import{METADATA_FILE,SKILL_FILE}from'./constants.js';import{writeJsonAtomic}from'./fs-utils.js';import{contentHash}from'./hashing.js';import{fileText,normalizeLocalFiles,scanSkillDirectory}from'./local-files.js';import{buildMetadata,readMetadataIfPresent}from'./metadata.js';import{buildSkillPackage,tryNormalizePackageManifest}from'./zip-package.js';export function resolvePushDirectoryIdentity(_0xd1835e,_0x55d9f2,_0x5a468a={}){const _0x4509ef=a121_0x5289,_0x18a819=resolvePushDirectoryRoot(_0xd1835e),_0x4e696c=readPushMetadataIfPresent(resolve(_0x18a819,METADATA_FILE),{'ignoreInvalidMetadata':_0x5a468a['ignoreInvalidMetadata']});if(_0x4e696c?.[_0x4509ef(0x1ef)]&&_0x4e696c[_0x4509ef(0x1ef)]!==_0x55d9f2&&!_0x5a468a[_0x4509ef(0x20b)]&&!_0x5a468a[_0x4509ef(0x1fa)])throw CliErrors['validation'](_0x4509ef(0x20a)+_0x4e696c[_0x4509ef(0x1ef)]+_0x4509ef(0x20c)+_0x55d9f2+'\x22.');const _0x46df3d=resolvePushSkillCode(_0x18a819,_0x55d9f2,_0x4e696c,_0x5a468a);if(!_0x46df3d)throw CliErrors[_0x4509ef(0x1f6)](_0x4509ef(0x212)+SKILL_FILE+',\x20'+METADATA_FILE+',\x20or\x20directory\x20name.');return{'dir':_0x18a819,'skillCode':_0x46df3d,'metadata':_0x4e696c};}export function readPushDirectory(_0x23375b,_0xab8f43,_0x5514f2={}){const _0xe1c03d=a121_0x5289,_0x137b15=resolvePushDirectoryIdentity(_0x23375b,_0xab8f43,_0x5514f2),_0x4d6fe8=_0x137b15[_0xe1c03d(0x21a)],_0x4d750b=resolve(_0x4d6fe8,SKILL_FILE);if(!existsSync(_0x4d750b)||!lstatSync(_0x4d750b)[_0xe1c03d(0x204)]())throw CliErrors[_0xe1c03d(0x1f6)]('Missing\x20'+SKILL_FILE+':\x20'+_0x4d750b);const _0x501623=_0x137b15[_0xe1c03d(0x1e7)],_0x210e34=_0x5514f2[_0xe1c03d(0x1ea)]??_0xe1c03d(0x1f3);if(!_0x5514f2[_0xe1c03d(0x202)]&&_0x501623?.[_0xe1c03d(0x1fb)]===_0xe1c03d(0x1f9))throw CliErrors[_0xe1c03d(0x1f6)](_0xe1c03d(0x20d)+METADATA_FILE+'\x20has\x20scope=\x22'+_0x501623[_0xe1c03d(0x1fb)]+'\x22.');if(!_0x5514f2[_0xe1c03d(0x202)]&&_0x210e34===_0xe1c03d(0x1f3)&&_0x501623?.[_0xe1c03d(0x1fb)]&&_0x501623['scope']!=='personal')throw CliErrors[_0xe1c03d(0x1f6)](_0xe1c03d(0x1f5)+METADATA_FILE+_0xe1c03d(0x21b)+_0x501623[_0xe1c03d(0x1fb)]+'\x22.',_0xe1c03d(0x1eb)+_0x4d6fe8+_0xe1c03d(0x215));const _0x59e064=scanSkillDirectory(_0x4d6fe8,{'excludedFilePaths':_0x5514f2[_0xe1c03d(0x214)]}),_0x7a7ac6=buildSkillPackage(_0x59e064),_0x330934=readFileSync(_0x4d750b,_0xe1c03d(0x216)),_0x2cfe3a=_0x137b15[_0xe1c03d(0x200)],_0x534223=_0x5514f2[_0xe1c03d(0x1fd)]?undefined:_0x501623,_0x100679=readSkillDisplayName(_0x330934);return{'skillCode':_0x2cfe3a,'metadata':_0x501623,'frontmatterDisplayName':_0x100679,'input':{'skillCode':_0x2cfe3a,'skillName':_0x100679??_0x534223?.[_0xe1c03d(0x1ee)],'description':_0x534223?.[_0xe1c03d(0x201)],'content':_0x330934,'files':_0x7a7ac6[_0xe1c03d(0x1e2)],'packageBase64':_0x7a7ac6[_0xe1c03d(0x1ff)],'tags':_0x534223?.[_0xe1c03d(0x1d9)],'version':_0x534223?.[_0xe1c03d(0x1ed)],'sourceSessionId':_0x534223?.['sourceSessionId']}};}export function refreshPushDirectoryMetadataFromRemote(_0x3b7cf0,_0x5c5db5,_0x2807c0,_0x4efb66={}){const _0x32bb15=a121_0x5289,_0x558d5a=resolvePushDirectoryRoot(_0x3b7cf0),_0x25c615=readPushMetadataIfPresent(resolve(_0x558d5a,METADATA_FILE),{'ignoreInvalidMetadata':!![]}),_0x1ff005=requireRemoteScope(_0x5c5db5),_0x516edd=readLocalSkillContent(_0x558d5a),_0x34e848={..._0x5c5db5,'appCode':_0x5c5db5[_0x32bb15(0x1ef)]??_0x2807c0,'skillName':_0x5c5db5[_0x32bb15(0x1ee)]??_0x25c615?.[_0x32bb15(0x1ee)],'description':_0x5c5db5[_0x32bb15(0x201)]??_0x25c615?.[_0x32bb15(0x201)],'tags':Array[_0x32bb15(0x1de)](_0x5c5db5['tags'])?_0x5c5db5['tags']:_0x25c615?.[_0x32bb15(0x1d9)],'sourceSessionId':_0x5c5db5[_0x32bb15(0x219)]??_0x25c615?.[_0x32bb15(0x219)],'content':_0x5c5db5[_0x32bb15(0x20e)]??_0x516edd},_0x236b44=buildMetadata(_0x34e848,_0x1ff005,_0x2807c0,contentHash(_0x516edd),_0x4efb66[_0x32bb15(0x1e4)]);writeJsonAtomic(resolve(_0x558d5a,METADATA_FILE),_0x236b44);}function a121_0x5ab5(){const _0x51e1e0=['Skill\x20metadata\x20appCode\x20\x22','allowAppCodeRetarget','\x22\x20does\x20not\x20match\x20current\x20appCode\x20\x22','Builtin\x20Skills\x20cannot\x20be\x20pushed;\x20','content','1034816lAkMpW','toLowerCase','string','Unable\x20to\x20resolve\x20skillCode\x20from\x20','pushedAt','excludedFilePaths','\x20to\x20submit\x20company\x20Skills\x20for\x20review.','utf8','path','displayName','sourceSessionId','dir','\x20has\x20scope=\x22','tags','ignoreMetadataSkillCode','51vkKTWu','find','trim','isArray','185878IMdrJQ','replace','boolean','manifest','Invalid\x20','refreshedAt','\x20has\x20unsupported\x20scope\x20\x22','\x20name\x20for\x20SkillHub\x20slug\x20generation.','metadata','248GaMopv','801TpZqYD','targetScope','Use\x20lovrabet\x20skill\x20push\x20--scope\x20company\x20--dir\x20','Skill\x20directory\x20not\x20found:\x20','version','skillName','appCode','6065545PpvZdo','ignoreInvalidMetadata','10277064PeZNMv','personal','83419scRzPB','Only\x20personal\x20Skills\x20can\x20be\x20pushed;\x20','validation','name','95984vTpIdS','builtin','ignoreMetadataAppCodeMismatch','scope','length','ignoreMetadataForPayload','match','packageBase64','skillCode','description','ignoreMetadataScope','number','isFile','Remote\x20Skill\x20','files','203590tvsvCz','filter','isDirectory'];a121_0x5ab5=function(){return _0x51e1e0;};return a121_0x5ab5();}export function recordPushedRuntimeSkill(_0x3ce4c3,_0x309136,_0x4a7ff3,_0x11e0ba={}){const _0x7d66e2=a121_0x5289,_0xfe1df2=resolvePushDirectoryRoot(_0x3ce4c3),_0x291881=scanSkillDirectory(_0xfe1df2),_0x272ddd=_0x291881[_0x7d66e2(0x1dc)](_0x33aed0=>_0x33aed0['path']===SKILL_FILE),_0x5ed0ca=_0x272ddd?fileText(_0x272ddd):'',_0x413140=tryNormalizePackageManifest(_0x309136['files']),_0x2dc4a0={..._0x309136,'content':_0x309136[_0x7d66e2(0x20e)]??_0x5ed0ca,'files':_0x413140},_0x374f3d=_0x413140?normalizeLocalFiles(_0x291881)[_0x7d66e2(0x208)](_0x18e0cd=>_0x413140[_0x7d66e2(0x206)]['some'](_0x3904b2=>_0x3904b2[_0x7d66e2(0x217)]===_0x18e0cd[_0x7d66e2(0x217)])):undefined,_0x4d2c3f=buildMetadata(_0x2dc4a0,_0x11e0ba[_0x7d66e2(0x1fb)]??_0x7d66e2(0x1f3),_0x4a7ff3,contentHash(_0x2dc4a0[_0x7d66e2(0x20e)]??''),_0x11e0ba[_0x7d66e2(0x213)],_0x374f3d);writeJsonAtomic(resolve(_0xfe1df2,METADATA_FILE),_0x4d2c3f);}export function deriveSkillCodeFromDirectory(_0x123b0d,_0x100152){const _0x3fa93c=a121_0x5289,_0x130829=basename(resolve(_0x123b0d)),_0x35e477=_0x100152+'--';return _0x130829['startsWith'](_0x35e477)?_0x130829['slice'](_0x35e477[_0x3fa93c(0x1fc)]):_0x130829;}function resolvePushSkillCode(_0x53d48c,_0x1abb03,_0x5e8b8c,_0x2b4ef2){const _0x2013b9=a121_0x5289,_0x5cc111=deriveSkillCodeFromSkillFile(_0x53d48c)||deriveSkillCodeFromDirectory(_0x53d48c,_0x1abb03);if(_0x2b4ef2[_0x2013b9(0x1da)])return _0x5cc111;return _0x5e8b8c?.[_0x2013b9(0x200)]?.[_0x2013b9(0x1dd)]()||_0x5cc111;}function deriveSkillCodeFromSkillFile(_0x494482){const _0x192ae8=a121_0x5289,_0x31bdeb=resolve(_0x494482,SKILL_FILE);if(!existsSync(_0x31bdeb)||!lstatSync(_0x31bdeb)[_0x192ae8(0x204)]())return undefined;const _0x2e3b99=readFileSync(_0x31bdeb,_0x192ae8(0x216)),_0x30e798=_0x2e3b99[_0x192ae8(0x1fe)](/^---\r?\n([\s\S]*?)\r?\n---(?:\r?\n|$)/);if(!_0x30e798)return undefined;const _0x593fb4=parseFrontmatterObject(_0x30e798[0x1]??''),_0x36fd1e=scalarToString(_0x593fb4?.[_0x192ae8(0x1f7)]);return _0x36fd1e?slugifySkillName(_0x36fd1e):undefined;}function readSkillDisplayName(_0x4bf35e){const _0x5f3aa9=a121_0x5289,_0xc36a6=_0x4bf35e[_0x5f3aa9(0x1fe)](/^---\r?\n([\s\S]*?)\r?\n---(?:\r?\n|$)/);if(!_0xc36a6)return undefined;const _0x4eec57=parseFrontmatterObject(_0xc36a6[0x1]??'');return scalarToString(_0x4eec57?.[_0x5f3aa9(0x218)]);}function a121_0x5289(_0x3888d6,_0x5f540c){_0x3888d6=_0x3888d6-0x1d9;const _0x5ab58d=a121_0x5ab5();let _0x528954=_0x5ab58d[_0x3888d6];return _0x528954;}function slugifySkillName(_0x219661){const _0x121219=a121_0x5289,_0x13e199=_0x219661[_0x121219(0x1dd)]()[_0x121219(0x210)]()[_0x121219(0x1e0)](/[^\p{L}\p{N}\p{So}]+/gu,'-')[_0x121219(0x1e0)](/^-+/,'')[_0x121219(0x1e0)](/-+$/,'')[_0x121219(0x1e0)](/-{2,}/g,'-');if(!_0x13e199)throw CliErrors['validation'](_0x121219(0x1e3)+SKILL_FILE+_0x121219(0x1e6));return _0x13e199;}function parseFrontmatterObject(_0x5809eb){try{const _0x5f2a8e=a121_0x2b21b7(_0x5809eb);return _0x5f2a8e&&typeof _0x5f2a8e==='object'&&!Array['isArray'](_0x5f2a8e)?_0x5f2a8e:undefined;}catch{return undefined;}}function scalarToString(_0x4846f7){const _0x5ce38d=a121_0x5289;if(typeof _0x4846f7===_0x5ce38d(0x211))return _0x4846f7['trim']();if(typeof _0x4846f7===_0x5ce38d(0x203)||typeof _0x4846f7===_0x5ce38d(0x1e1))return String(_0x4846f7);return undefined;}function resolvePushDirectoryRoot(_0x4e5e5e){const _0x58a056=a121_0x5289,_0x268b11=resolve(_0x4e5e5e);if(!existsSync(_0x268b11))throw CliErrors[_0x58a056(0x1f6)](_0x58a056(0x1ec)+_0x4e5e5e);const _0x56c360=lstatSync(_0x268b11);if(_0x56c360[_0x58a056(0x209)]())return _0x268b11;if(_0x56c360['isSymbolicLink']()){const _0x1a7ef0=realpathSync(_0x268b11);if(lstatSync(_0x1a7ef0)['isDirectory']())return _0x1a7ef0;}throw CliErrors[_0x58a056(0x1f6)](_0x58a056(0x1ec)+_0x4e5e5e);}function requireRemoteScope(_0x37bffa){const _0x549ee1=a121_0x5289;if(_0x37bffa['scope']===_0x549ee1(0x1f3)||_0x37bffa[_0x549ee1(0x1fb)]==='company'||_0x37bffa['scope']===_0x549ee1(0x1f9))return _0x37bffa[_0x549ee1(0x1fb)];throw CliErrors['validation'](_0x549ee1(0x205)+(_0x37bffa['skillCode']||'(unknown)')+_0x549ee1(0x1e5)+(_0x37bffa[_0x549ee1(0x1fb)]??'unknown')+'\x22.');}function readLocalSkillContent(_0x35ed95){const _0x138ffa=a121_0x5289,_0x248175=resolve(_0x35ed95,SKILL_FILE);return existsSync(_0x248175)&&lstatSync(_0x248175)['isFile']()?readFileSync(_0x248175,_0x138ffa(0x216)):'';}function readPushMetadataIfPresent(_0x62ed0d,_0x405405={}){const _0x37d512=a121_0x5289;try{return readMetadataIfPresent(_0x62ed0d);}catch(_0x115401){if(_0x405405[_0x37d512(0x1f1)])return undefined;throw _0x115401;}}
1
+ (function(_0x3cdb9d,_0x5b19d2){const _0x5ba053=a141_0x5cfd,_0x53855e=_0x3cdb9d();while(!![]){try{const _0x4d9734=-parseInt(_0x5ba053(0x79))/0x1+-parseInt(_0x5ba053(0x7d))/0x2+-parseInt(_0x5ba053(0x70))/0x3+-parseInt(_0x5ba053(0xa6))/0x4*(parseInt(_0x5ba053(0x80))/0x5)+parseInt(_0x5ba053(0xa9))/0x6+-parseInt(_0x5ba053(0x73))/0x7+parseInt(_0x5ba053(0x81))/0x8;if(_0x4d9734===_0x5b19d2)break;else _0x53855e['push'](_0x53855e['shift']());}catch(_0x226a0f){_0x53855e['push'](_0x53855e['shift']());}}}(a141_0x5aab,0xee110));import{existsSync,lstatSync,readFileSync,realpathSync}from'node:fs';import{basename,resolve}from'node:path';import{parse as a141_0x5968fc}from'yaml';import{CliErrors}from'../../errors.js';import{METADATA_FILE,SKILL_FILE}from'./constants.js';import{writeJsonAtomic}from'./fs-utils.js';function a141_0x5cfd(_0x404af9,_0x50b568){_0x404af9=_0x404af9-0x6a;const _0x5aabff=a141_0x5aab();let _0x5cfdaa=_0x5aabff[_0x404af9];return _0x5cfdaa;}import{contentHash}from'./hashing.js';import{fileText,normalizeLocalFiles,scanSkillDirectory}from'./local-files.js';function a141_0x5aab(){const _0x449762=['packageBase64','isSymbolicLink','1971104XqbugN','scope','(unknown)','15eQaETx','48319920PescNu','ignoreMetadataForPayload','appCode','description','Missing\x20','number','targetScope','\x20to\x20submit\x20company\x20Skills\x20for\x20review.','Only\x20personal\x20Skills\x20can\x20be\x20pushed;\x20','replace','path','metadata','validation','ignoreMetadataAppCodeMismatch','dir','pushedAt','isFile','\x20name\x20for\x20SkillHub\x20slug\x20generation.','some','isDirectory','ignoreInvalidMetadata','length','ignoreMetadataSkillCode','startsWith','skillCode','allowAppCodeRetarget','\x20has\x20scope=\x22','manifest','Unable\x20to\x20resolve\x20skillCode\x20from\x20','Skill\x20metadata\x20appCode\x20\x22','match','personal','refreshedAt','filter','slice','string','unknown','1197636lvrOWC','skillName','find','2006700CZYatB','ignoreMetadataScope','\x22\x20does\x20not\x20match\x20current\x20appCode\x20\x22','object','utf8','Skill\x20directory\x20not\x20found:\x20','content','1440558HuTrDm','isArray','tags','7619318eBLGgt','builtin','files','displayName','Use\x20lovrabet\x20skill\x20push\x20--scope\x20company\x20--dir\x20','Builtin\x20Skills\x20cannot\x20be\x20pushed;\x20','1946881jnHCul','trim'];a141_0x5aab=function(){return _0x449762;};return a141_0x5aab();}import{buildMetadata,readMetadataIfPresent}from'./metadata.js';import{buildSkillPackage,tryNormalizePackageManifest}from'./zip-package.js';export function resolvePushDirectoryIdentity(_0xac956a,_0x534dbb,_0x28ba3b={}){const _0x20a1ca=a141_0x5cfd,_0x72fa32=resolvePushDirectoryRoot(_0xac956a),_0x13c267=readPushMetadataIfPresent(resolve(_0x72fa32,METADATA_FILE),{'ignoreInvalidMetadata':_0x28ba3b[_0x20a1ca(0x95)]});if(_0x13c267?.[_0x20a1ca(0x83)]&&_0x13c267[_0x20a1ca(0x83)]!==_0x534dbb&&!_0x28ba3b[_0x20a1ca(0x9a)]&&!_0x28ba3b[_0x20a1ca(0x8e)])throw CliErrors[_0x20a1ca(0x8d)](_0x20a1ca(0x9e)+_0x13c267['appCode']+_0x20a1ca(0x6b)+_0x534dbb+'\x22.');const _0x2ab484=resolvePushSkillCode(_0x72fa32,_0x534dbb,_0x13c267,_0x28ba3b);if(!_0x2ab484)throw CliErrors[_0x20a1ca(0x8d)](_0x20a1ca(0x9d)+SKILL_FILE+',\x20'+METADATA_FILE+',\x20or\x20directory\x20name.');return{'dir':_0x72fa32,'skillCode':_0x2ab484,'metadata':_0x13c267};}export function readPushDirectory(_0xebc840,_0x3bde4f,_0xc836c7={}){const _0x20ff16=a141_0x5cfd,_0x118ab2=resolvePushDirectoryIdentity(_0xebc840,_0x3bde4f,_0xc836c7),_0x476f25=_0x118ab2[_0x20ff16(0x8f)],_0x5193e6=resolve(_0x476f25,SKILL_FILE);if(!existsSync(_0x5193e6)||!lstatSync(_0x5193e6)[_0x20ff16(0x91)]())throw CliErrors[_0x20ff16(0x8d)](_0x20ff16(0x85)+SKILL_FILE+':\x20'+_0x5193e6);const _0x2ab20b=_0x118ab2[_0x20ff16(0x8c)],_0x21527a=_0xc836c7[_0x20ff16(0x87)]??_0x20ff16(0xa0);if(!_0xc836c7[_0x20ff16(0x6a)]&&_0x2ab20b?.[_0x20ff16(0x7e)]===_0x20ff16(0x74))throw CliErrors[_0x20ff16(0x8d)](_0x20ff16(0x78)+METADATA_FILE+_0x20ff16(0x9b)+_0x2ab20b[_0x20ff16(0x7e)]+'\x22.');if(!_0xc836c7['ignoreMetadataScope']&&_0x21527a===_0x20ff16(0xa0)&&_0x2ab20b?.[_0x20ff16(0x7e)]&&_0x2ab20b[_0x20ff16(0x7e)]!==_0x20ff16(0xa0))throw CliErrors[_0x20ff16(0x8d)](_0x20ff16(0x89)+METADATA_FILE+_0x20ff16(0x9b)+_0x2ab20b[_0x20ff16(0x7e)]+'\x22.',_0x20ff16(0x77)+_0x476f25+_0x20ff16(0x88));const _0x28ab86=scanSkillDirectory(_0x476f25,{'excludedFilePaths':_0xc836c7['excludedFilePaths']}),_0x89a1e9=buildSkillPackage(_0x28ab86),_0x446add=readFileSync(_0x5193e6,_0x20ff16(0x6d)),_0x19d977=_0x118ab2[_0x20ff16(0x99)],_0x2fc45b=_0xc836c7[_0x20ff16(0x82)]?undefined:_0x2ab20b,_0x2457e1=readSkillDisplayName(_0x446add);return{'skillCode':_0x19d977,'metadata':_0x2ab20b,'frontmatterDisplayName':_0x2457e1,'input':{'skillCode':_0x19d977,'skillName':_0x2457e1??_0x2fc45b?.['skillName'],'description':_0x2fc45b?.[_0x20ff16(0x84)],'content':_0x446add,'files':_0x89a1e9[_0x20ff16(0x9c)],'packageBase64':_0x89a1e9[_0x20ff16(0x7b)],'tags':_0x2fc45b?.[_0x20ff16(0x72)],'version':_0x2fc45b?.['version'],'sourceSessionId':_0x2fc45b?.['sourceSessionId']}};}export function refreshPushDirectoryMetadataFromRemote(_0x262787,_0x48b47a,_0x5395ef,_0x5d69aa={}){const _0x39c553=a141_0x5cfd,_0xdcaabe=resolvePushDirectoryRoot(_0x262787),_0x39b13e=readPushMetadataIfPresent(resolve(_0xdcaabe,METADATA_FILE),{'ignoreInvalidMetadata':!![]}),_0x467c7b=requireRemoteScope(_0x48b47a),_0x232eb1=readLocalSkillContent(_0xdcaabe),_0x35cb2a={..._0x48b47a,'appCode':_0x48b47a[_0x39c553(0x83)]??_0x5395ef,'skillName':_0x48b47a[_0x39c553(0xa7)]??_0x39b13e?.[_0x39c553(0xa7)],'description':_0x48b47a['description']??_0x39b13e?.[_0x39c553(0x84)],'example':_0x48b47a['example']??_0x39b13e?.['example'],'tags':Array[_0x39c553(0x71)](_0x48b47a['tags'])?_0x48b47a[_0x39c553(0x72)]:_0x39b13e?.['tags'],'sourceSessionId':_0x48b47a['sourceSessionId']??_0x39b13e?.['sourceSessionId'],'content':_0x48b47a[_0x39c553(0x6f)]??_0x232eb1},_0x9675b7=buildMetadata(_0x35cb2a,_0x467c7b,_0x5395ef,contentHash(_0x232eb1),_0x5d69aa[_0x39c553(0xa1)]);writeJsonAtomic(resolve(_0xdcaabe,METADATA_FILE),_0x9675b7);}export function recordPushedRuntimeSkill(_0x29a113,_0x4f7d07,_0x47f1f6,_0x85c287={}){const _0x489503=a141_0x5cfd,_0x1fd009=resolvePushDirectoryRoot(_0x29a113),_0x39da1c=scanSkillDirectory(_0x1fd009),_0x960429=_0x39da1c[_0x489503(0xa8)](_0x44165d=>_0x44165d[_0x489503(0x8b)]===SKILL_FILE),_0x1fb0ff=_0x960429?fileText(_0x960429):'',_0xce7890=tryNormalizePackageManifest(_0x4f7d07[_0x489503(0x75)]),_0x5011b0={..._0x4f7d07,'content':_0x4f7d07[_0x489503(0x6f)]??_0x1fb0ff,'files':_0xce7890},_0x5aa584=_0xce7890?normalizeLocalFiles(_0x39da1c)[_0x489503(0xa2)](_0x3d8027=>_0xce7890[_0x489503(0x75)][_0x489503(0x93)](_0x204560=>_0x204560['path']===_0x3d8027[_0x489503(0x8b)])):undefined,_0x140131=buildMetadata(_0x5011b0,_0x85c287['scope']??_0x489503(0xa0),_0x47f1f6,contentHash(_0x5011b0[_0x489503(0x6f)]??''),_0x85c287[_0x489503(0x90)],_0x5aa584);writeJsonAtomic(resolve(_0x1fd009,METADATA_FILE),_0x140131);}export function deriveSkillCodeFromDirectory(_0x1ab9fe,_0x25c232){const _0x404af5=a141_0x5cfd,_0x3f4d5f=basename(resolve(_0x1ab9fe)),_0x80df49=_0x25c232+'--';return _0x3f4d5f[_0x404af5(0x98)](_0x80df49)?_0x3f4d5f[_0x404af5(0xa3)](_0x80df49[_0x404af5(0x96)]):_0x3f4d5f;}function resolvePushSkillCode(_0x38e099,_0x2df201,_0x120834,_0x164ddd){const _0x55335b=a141_0x5cfd,_0x15ef4e=deriveSkillCodeFromSkillFile(_0x38e099)||deriveSkillCodeFromDirectory(_0x38e099,_0x2df201);if(_0x164ddd[_0x55335b(0x97)])return _0x15ef4e;return _0x120834?.[_0x55335b(0x99)]?.[_0x55335b(0x7a)]()||_0x15ef4e;}function deriveSkillCodeFromSkillFile(_0x2d55f2){const _0x148f12=a141_0x5cfd,_0x4228bb=resolve(_0x2d55f2,SKILL_FILE);if(!existsSync(_0x4228bb)||!lstatSync(_0x4228bb)[_0x148f12(0x91)]())return undefined;const _0x1de604=readFileSync(_0x4228bb,_0x148f12(0x6d)),_0x1c5838=_0x1de604[_0x148f12(0x9f)](/^---\r?\n([\s\S]*?)\r?\n---(?:\r?\n|$)/);if(!_0x1c5838)return undefined;const _0x2b04b1=parseFrontmatterObject(_0x1c5838[0x1]??''),_0x2c6f0e=scalarToString(_0x2b04b1?.['name']);return _0x2c6f0e?slugifySkillName(_0x2c6f0e):undefined;}function readSkillDisplayName(_0x544b86){const _0x414520=a141_0x5cfd,_0x1bfb3d=_0x544b86['match'](/^---\r?\n([\s\S]*?)\r?\n---(?:\r?\n|$)/);if(!_0x1bfb3d)return undefined;const _0x12f813=parseFrontmatterObject(_0x1bfb3d[0x1]??'');return scalarToString(_0x12f813?.[_0x414520(0x76)]);}function slugifySkillName(_0x8b8e92){const _0x148609=a141_0x5cfd,_0x34f61d=_0x8b8e92['trim']()['toLowerCase']()[_0x148609(0x8a)](/[^\p{L}\p{N}\p{So}]+/gu,'-')[_0x148609(0x8a)](/^-+/,'')[_0x148609(0x8a)](/-+$/,'')[_0x148609(0x8a)](/-{2,}/g,'-');if(!_0x34f61d)throw CliErrors[_0x148609(0x8d)]('Invalid\x20'+SKILL_FILE+_0x148609(0x92));return _0x34f61d;}function parseFrontmatterObject(_0x364c9d){const _0x2d81cd=a141_0x5cfd;try{const _0x5a2aa1=a141_0x5968fc(_0x364c9d);return _0x5a2aa1&&typeof _0x5a2aa1===_0x2d81cd(0x6c)&&!Array[_0x2d81cd(0x71)](_0x5a2aa1)?_0x5a2aa1:undefined;}catch{return undefined;}}function scalarToString(_0x5ed7c7){const _0x399f2b=a141_0x5cfd;if(typeof _0x5ed7c7===_0x399f2b(0xa4))return _0x5ed7c7[_0x399f2b(0x7a)]();if(typeof _0x5ed7c7===_0x399f2b(0x86)||typeof _0x5ed7c7==='boolean')return String(_0x5ed7c7);return undefined;}function resolvePushDirectoryRoot(_0x1f69de){const _0xaab470=a141_0x5cfd,_0x1004de=resolve(_0x1f69de);if(!existsSync(_0x1004de))throw CliErrors['validation'](_0xaab470(0x6e)+_0x1f69de);const _0x37ba47=lstatSync(_0x1004de);if(_0x37ba47[_0xaab470(0x94)]())return _0x1004de;if(_0x37ba47[_0xaab470(0x7c)]()){const _0x299c3d=realpathSync(_0x1004de);if(lstatSync(_0x299c3d)[_0xaab470(0x94)]())return _0x299c3d;}throw CliErrors[_0xaab470(0x8d)](_0xaab470(0x6e)+_0x1f69de);}function requireRemoteScope(_0x5a1c0e){const _0x48cf03=a141_0x5cfd;if(_0x5a1c0e[_0x48cf03(0x7e)]===_0x48cf03(0xa0)||_0x5a1c0e[_0x48cf03(0x7e)]==='company'||_0x5a1c0e[_0x48cf03(0x7e)]===_0x48cf03(0x74))return _0x5a1c0e[_0x48cf03(0x7e)];throw CliErrors['validation']('Remote\x20Skill\x20'+(_0x5a1c0e['skillCode']||_0x48cf03(0x7f))+'\x20has\x20unsupported\x20scope\x20\x22'+(_0x5a1c0e['scope']??_0x48cf03(0xa5))+'\x22.');}function readLocalSkillContent(_0x20a1a6){const _0x387511=resolve(_0x20a1a6,SKILL_FILE);return existsSync(_0x387511)&&lstatSync(_0x387511)['isFile']()?readFileSync(_0x387511,'utf8'):'';}function readPushMetadataIfPresent(_0x1854f2,_0x43a6a1={}){const _0x2980ab=a141_0x5cfd;try{return readMetadataIfPresent(_0x1854f2);}catch(_0x12563a){if(_0x43a6a1[_0x2980ab(0x95)])return undefined;throw _0x12563a;}}
@@ -1 +1 @@
1
- function a122_0x27fc(){const _0x14fc83=['validation','Unsupported\x20runtime\x20Skill\x20scope:\x20','builtin','186028qVmacV','1pQkjCK','2857866QoBLZc','332582CvDIIN','personal','854352vuFgCr','includes','2399747CCXheC','push','13738599GjklKl','2482225JEpFZH','39xyGcft'];a122_0x27fc=function(){return _0x14fc83;};return a122_0x27fc();}(function(_0x3ea0b9,_0x13ce6c){const _0x3551bb=a122_0x223b,_0x253e5f=_0x3ea0b9();while(!![]){try{const _0x19f8de=-parseInt(_0x3551bb(0x1e7))/0x1*(parseInt(_0x3551bb(0x1e9))/0x2)+parseInt(_0x3551bb(0x1f1))/0x3*(-parseInt(_0x3551bb(0x1e6))/0x4)+parseInt(_0x3551bb(0x1f0))/0x5+-parseInt(_0x3551bb(0x1e8))/0x6+-parseInt(_0x3551bb(0x1ed))/0x7+-parseInt(_0x3551bb(0x1eb))/0x8+parseInt(_0x3551bb(0x1ef))/0x9;if(_0x19f8de===_0x13ce6c)break;else _0x253e5f['push'](_0x253e5f['shift']());}catch(_0xff9687){_0x253e5f['push'](_0x253e5f['shift']());}}}(a122_0x27fc,0x4fa04));import{CliErrors}from'../../errors.js';export function normalizeRuntimeSkillScopes(_0x77c388){const _0x18d9d5=a122_0x223b,_0x446550=_0x77c388&&_0x77c388['length']>0x0?_0x77c388:[_0x18d9d5(0x1ea),'company',_0x18d9d5(0x1f4)],_0x21d83f=[];for(const _0x40e65b of _0x446550){if(!isRuntimeSkillScope(_0x40e65b))throw CliErrors[_0x18d9d5(0x1f2)](_0x18d9d5(0x1f3)+_0x40e65b);!_0x21d83f[_0x18d9d5(0x1ec)](_0x40e65b)&&_0x21d83f[_0x18d9d5(0x1ee)](_0x40e65b);}return _0x21d83f;}function a122_0x223b(_0x11871c,_0x5baa1a){_0x11871c=_0x11871c-0x1e6;const _0x27fcc7=a122_0x27fc();let _0x223b64=_0x27fcc7[_0x11871c];return _0x223b64;}export function isRuntimeSkillScope(_0x3f60f0){const _0x471bcd=a122_0x223b;return _0x3f60f0==='personal'||_0x3f60f0==='company'||_0x3f60f0===_0x471bcd(0x1f4);}
1
+ (function(_0xf86263,_0x4b5998){const _0x49756b=a142_0x29dd,_0x12c2e5=_0xf86263();while(!![]){try{const _0x5cf477=parseInt(_0x49756b(0x105))/0x1+-parseInt(_0x49756b(0xf7))/0x2+parseInt(_0x49756b(0xfe))/0x3+parseInt(_0x49756b(0xfa))/0x4*(-parseInt(_0x49756b(0x106))/0x5)+parseInt(_0x49756b(0xfb))/0x6+-parseInt(_0x49756b(0x100))/0x7+parseInt(_0x49756b(0x103))/0x8;if(_0x5cf477===_0x4b5998)break;else _0x12c2e5['push'](_0x12c2e5['shift']());}catch(_0x2738dd){_0x12c2e5['push'](_0x12c2e5['shift']());}}}(a142_0x43ac,0xe1d6f));import{CliErrors}from'../../errors.js';export function normalizeRuntimeSkillScopes(_0x4b5863){const _0x4da442=a142_0x29dd,_0x4bfaae=_0x4b5863&&_0x4b5863[_0x4da442(0x101)]>0x0?_0x4b5863:[_0x4da442(0xfc),_0x4da442(0xfd),_0x4da442(0xf9)],_0x135a29=[];for(const _0x533ecb of _0x4bfaae){if(!isRuntimeSkillScope(_0x533ecb))throw CliErrors[_0x4da442(0x102)](_0x4da442(0xff)+_0x533ecb);!_0x135a29[_0x4da442(0x104)](_0x533ecb)&&_0x135a29[_0x4da442(0xf8)](_0x533ecb);}return _0x135a29;}function a142_0x29dd(_0x44f135,_0x46a7f3){_0x44f135=_0x44f135-0xf7;const _0x43acbb=a142_0x43ac();let _0x29ddbc=_0x43acbb[_0x44f135];return _0x29ddbc;}function a142_0x43ac(){const _0x55bc3f=['4700811MCaTvZ','Unsupported\x20runtime\x20Skill\x20scope:\x20','10685521lDhXQV','length','validation','5971448uuiNBP','includes','1144658bJHcyr','5772205NAxFRE','1915748quLLDu','push','builtin','4nMiygZ','6634986vpKxST','personal','company'];a142_0x43ac=function(){return _0x55bc3f;};return a142_0x43ac();}export function isRuntimeSkillScope(_0xd3873e){const _0x3b245b=a142_0x29dd;return _0xd3873e===_0x3b245b(0xfc)||_0xd3873e===_0x3b245b(0xfd)||_0xd3873e===_0x3b245b(0xf9);}
@@ -63,6 +63,7 @@ export interface RuntimeSkillMetadata {
63
63
  skillCode: string;
64
64
  skillName?: string;
65
65
  description?: string;
66
+ example?: string;
66
67
  scope: string;
67
68
  readonly: boolean;
68
69
  tenantCode?: string;
@@ -1 +1 @@
1
- (function(_0x158ce9,_0x3c0b84){const _0x3526fb=a124_0x431b,_0x19cb37=_0x158ce9();while(!![]){try{const _0x6c7b44=-parseInt(_0x3526fb(0x115))/0x1+-parseInt(_0x3526fb(0x116))/0x2+parseInt(_0x3526fb(0x11e))/0x3+-parseInt(_0x3526fb(0x112))/0x4+-parseInt(_0x3526fb(0x124))/0x5*(-parseInt(_0x3526fb(0x122))/0x6)+parseInt(_0x3526fb(0x11a))/0x7+parseInt(_0x3526fb(0x119))/0x8;if(_0x6c7b44===_0x3c0b84)break;else _0x19cb37['push'](_0x19cb37['shift']());}catch(_0x439da0){_0x19cb37['push'](_0x19cb37['shift']());}}}(a124_0x84de,0x6fc3c));function a124_0x431b(_0x410569,_0x21751a){_0x410569=_0x410569-0x112;const _0x84de42=a124_0x84de();let _0x431bfd=_0x84de42[_0x410569];return _0x431bfd;}import{unzipSync,zipSync}from'fflate';import{CliErrors}from'../../errors.js';function a124_0x84de(){const _0x300cff=['223592fPIcRz','validation','sort','1719272yAzHeL','1060059mfLqhW','name','entries','endsWith','1503321CFjTQO','Runtime\x20Skill\x20package\x20contains\x20directory\x20entry:\x20','length','code','6SdTgAs','Runtime\x20Skill\x20package\x20is\x20not\x20a\x20valid\x20zip\x20file.','4298200VImKxf','2785240fusWnU','from','validation_error','461199FLceCq'];a124_0x84de=function(){return _0x300cff;};return a124_0x84de();}import{compareSkillFiles,fileContent,normalizeLocalFiles,normalizeSkillRelativePath}from'./local-files.js';const ZIP_MTIME=new Date('1980-01-01T00:00:00.000Z');export function createDeterministicZipPackage(_0x5bfb93){const _0x35069e=a124_0x431b,_0x3012fe={};for(const _0x21d7ac of normalizeLocalFiles(_0x5bfb93)){_0x3012fe[_0x21d7ac['path']]=fileContent(_0x21d7ac);}return Buffer[_0x35069e(0x113)](zipSync(_0x3012fe,{'level':0x0,'mtime':ZIP_MTIME}));}export function parseZipPackage(_0x4a0e08){const _0x29d617=a124_0x431b;if(_0x4a0e08[_0x29d617(0x120)]<0x16)throw CliErrors[_0x29d617(0x117)](_0x29d617(0x123));let _0x266ecf;try{_0x266ecf=unzipSync(_0x4a0e08,{'filter'(_0x5aebc0){const _0x3a93fd=_0x29d617,_0x50bd3a=normalizeSkillRelativePath(_0x5aebc0[_0x3a93fd(0x11b)]);if(_0x50bd3a[_0x3a93fd(0x11d)]('/'))throw CliErrors[_0x3a93fd(0x117)](_0x3a93fd(0x11f)+_0x50bd3a);return!![];}});}catch(_0x4b69c7){if(isRuntimeSkillValidationError(_0x4b69c7))throw _0x4b69c7;throw CliErrors[_0x29d617(0x117)](_0x29d617(0x123));}return Object[_0x29d617(0x11c)](_0x266ecf)['map'](([_0x45cfa8,_0x58894b])=>({'path':normalizeSkillRelativePath(_0x45cfa8),'bytes':Buffer['from'](_0x58894b)}))[_0x29d617(0x118)](compareSkillFiles);}function isRuntimeSkillValidationError(_0x237fcf){const _0x54a173=a124_0x431b;return typeof _0x237fcf==='object'&&_0x237fcf!==null&&_0x54a173(0x121)in _0x237fcf&&_0x237fcf['code']===_0x54a173(0x114);}
1
+ function a144_0x5aa0(){const _0x2aba7e=['endsWith','from','1624332Enzsuj','validation_error','map','entries','1707020StkxeG','code','696716HnHOun','1060878RpoQiS','Runtime\x20Skill\x20package\x20is\x20not\x20a\x20valid\x20zip\x20file.','validation','5119638ZlkowV','length','name','object','path','1801647lDNJAi','1980-01-01T00:00:00.000Z','1750623pvbIZf'];a144_0x5aa0=function(){return _0x2aba7e;};return a144_0x5aa0();}const a144_0x16862d=a144_0x1df0;(function(_0xfc9447,_0xc57534){const _0x575618=a144_0x1df0,_0x1065ca=_0xfc9447();while(!![]){try{const _0xe798f4=parseInt(_0x575618(0xfd))/0x1+-parseInt(_0x575618(0x10a))/0x2+-parseInt(_0x575618(0x105))/0x3+parseInt(_0x575618(0xfc))/0x4+-parseInt(_0x575618(0xfa))/0x5+parseInt(_0x575618(0x100))/0x6+parseInt(_0x575618(0x107))/0x7;if(_0xe798f4===_0xc57534)break;else _0x1065ca['push'](_0x1065ca['shift']());}catch(_0x4f81bd){_0x1065ca['push'](_0x1065ca['shift']());}}}(a144_0x5aa0,0x8ea6c));function a144_0x1df0(_0x5e6e85,_0x1079fd){_0x5e6e85=_0x5e6e85-0xf9;const _0x5aa0b5=a144_0x5aa0();let _0x1df009=_0x5aa0b5[_0x5e6e85];return _0x1df009;}import{unzipSync,zipSync}from'fflate';import{CliErrors}from'../../errors.js';import{compareSkillFiles,fileContent,normalizeLocalFiles,normalizeSkillRelativePath}from'./local-files.js';const ZIP_MTIME=new Date(a144_0x16862d(0x106));export function createDeterministicZipPackage(_0x230301){const _0x5f9cab=a144_0x16862d,_0x120b89={};for(const _0x2c613f of normalizeLocalFiles(_0x230301)){_0x120b89[_0x2c613f[_0x5f9cab(0x104)]]=fileContent(_0x2c613f);}return Buffer['from'](zipSync(_0x120b89,{'level':0x0,'mtime':ZIP_MTIME}));}export function parseZipPackage(_0x2ffe82){const _0x152046=a144_0x16862d;if(_0x2ffe82[_0x152046(0x101)]<0x16)throw CliErrors['validation'](_0x152046(0xfe));let _0x573b43;try{_0x573b43=unzipSync(_0x2ffe82,{'filter'(_0x516e20){const _0x554748=_0x152046,_0x46aa12=normalizeSkillRelativePath(_0x516e20[_0x554748(0x102)]);if(_0x46aa12[_0x554748(0x108)]('/'))throw CliErrors[_0x554748(0xff)]('Runtime\x20Skill\x20package\x20contains\x20directory\x20entry:\x20'+_0x46aa12);return!![];}});}catch(_0x272c89){if(isRuntimeSkillValidationError(_0x272c89))throw _0x272c89;throw CliErrors['validation'](_0x152046(0xfe));}return Object[_0x152046(0xf9)](_0x573b43)[_0x152046(0x10c)](([_0x229afc,_0x4e461f])=>({'path':normalizeSkillRelativePath(_0x229afc),'bytes':Buffer[_0x152046(0x109)](_0x4e461f)}))['sort'](compareSkillFiles);}function isRuntimeSkillValidationError(_0x130bb6){const _0x25ee6d=a144_0x16862d;return typeof _0x130bb6===_0x25ee6d(0x103)&&_0x130bb6!==null&&_0x25ee6d(0xfb)in _0x130bb6&&_0x130bb6[_0x25ee6d(0xfb)]===_0x25ee6d(0x10b);}
@@ -1 +1 @@
1
- (function(_0xf0a75a,_0x5715fc){const _0x7aa151=a125_0xa8dd,_0x40d787=_0xf0a75a();while(!![]){try{const _0x10e966=-parseInt(_0x7aa151(0x195))/0x1+-parseInt(_0x7aa151(0x197))/0x2+parseInt(_0x7aa151(0x18a))/0x3*(parseInt(_0x7aa151(0x1a5))/0x4)+-parseInt(_0x7aa151(0x19c))/0x5*(-parseInt(_0x7aa151(0x196))/0x6)+-parseInt(_0x7aa151(0x1b4))/0x7*(parseInt(_0x7aa151(0x199))/0x8)+-parseInt(_0x7aa151(0x1ad))/0x9+-parseInt(_0x7aa151(0x194))/0xa*(-parseInt(_0x7aa151(0x19d))/0xb);if(_0x10e966===_0x5715fc)break;else _0x40d787['push'](_0x40d787['shift']());}catch(_0x2bd72f){_0x40d787['push'](_0x40d787['shift']());}}}(a125_0x3c17,0x36caf));import{CliErrors}from'../../errors.js';import{SKILL_FILE}from'./constants.js';import{bufferSha256,fileHash,fileTreeHash}from'./hashing.js';import{fileContent,isSha256Hex,normalizeLocalFiles,normalizeManifestFiles}from'./local-files.js';import{createDeterministicZipPackage,parseZipPackage}from'./zip-codec.js';export function buildSkillPackage(_0x2e0c9d){const _0x2c01e0=a125_0xa8dd,_0x35c1e8=normalizeLocalFiles(_0x2e0c9d);if(!_0x35c1e8[_0x2c01e0(0x19a)](_0x5be077=>_0x5be077[_0x2c01e0(0x190)]===SKILL_FILE))throw CliErrors[_0x2c01e0(0x1af)](_0x2c01e0(0x18f)+SKILL_FILE+_0x2c01e0(0x192));const _0x5c9106=localFilesToManifestFiles(_0x35c1e8),_0x24ebd4=createDeterministicZipPackage(_0x35c1e8);return{'manifest':{'schemaVersion':0x2,'treeSha256':fileTreeHash(_0x5c9106),'zipSha256':bufferSha256(_0x24ebd4),'zipSize':_0x24ebd4[_0x2c01e0(0x1aa)],'files':_0x5c9106},'packageBytes':_0x24ebd4,'packageBase64':_0x24ebd4[_0x2c01e0(0x1ac)](_0x2c01e0(0x1ab))};}export function verifyRuntimeSkillPackage(_0x4c22e8,_0x5f441f){const _0x3e7b46=a125_0xa8dd,_0x1e88a6=normalizePackageManifest(_0x4c22e8,{'requireOssPath':![]});if(!_0x1e88a6)throw CliErrors[_0x3e7b46(0x1af)]('Runtime\x20Skill\x20package\x20manifest\x20is\x20missing.');return extractAndVerifyPackage(_0x1e88a6,_0x5f441f);}export function verifyRuntimeSkillBundle(_0x2d32ec,_0x3d3943){const _0x1af549=a125_0xa8dd,_0x2ce04f=normalizePackageManifest(_0x2d32ec,{'requireOssPath':![]});if(!_0x2ce04f)throw CliErrors[_0x1af549(0x1af)](_0x1af549(0x19e));return extractAndVerifyPackageFiles(_0x2ce04f,_0x3d3943);}export function tryNormalizePackageManifest(_0x8015d0){return normalizePackageManifest(_0x8015d0,{'requireOssPath':![]});}function a125_0xa8dd(_0xb6d8f1,_0xd46170){_0xb6d8f1=_0xb6d8f1-0x188;const _0x3c17eb=a125_0x3c17();let _0xa8dd07=_0x3c17eb[_0xb6d8f1];return _0xa8dd07;}export function requirePackageBytes(_0x24dae9,_0x3385d6){const _0x38047e=a125_0xa8dd;if(!_0x3385d6||_0x3385d6['length']===0x0)throw CliErrors[_0x38047e(0x1af)](_0x38047e(0x1a2)+_0x24dae9);return _0x3385d6;}export function extractDownloadedPackage(_0x57ddd2){const _0x582923=a125_0xa8dd,_0x3cd692=parseZipPackage(_0x57ddd2)['map'](_0x39ddd7=>({'path':_0x39ddd7[_0x582923(0x190)],'bytes':_0x39ddd7['bytes']}));if(!_0x3cd692[_0x582923(0x19a)](_0x27a57c=>_0x27a57c['path']===SKILL_FILE))throw CliErrors['validation'](_0x582923(0x1a4)+SKILL_FILE+'.');return normalizeLocalFiles(_0x3cd692);}export function localFilesToManifestFiles(_0x2e2f0c){const _0x1a13b7=a125_0xa8dd;return normalizeLocalFiles(_0x2e2f0c)['map'](_0x4dcfbd=>({'path':_0x4dcfbd[_0x1a13b7(0x190)],'sha256':fileHash(_0x4dcfbd),'size':fileContent(_0x4dcfbd)[_0x1a13b7(0x1aa)]}));}function normalizePackageManifest(_0x289819,_0x56ca9){const _0x4b8898=a125_0xa8dd;if(!_0x289819||typeof _0x289819!==_0x4b8898(0x189)||Array[_0x4b8898(0x18e)](_0x289819))return undefined;const _0x120375=_0x289819,_0x48e6aa=typeof _0x120375[_0x4b8898(0x19f)]==='string'?_0x120375[_0x4b8898(0x19f)]['trim']():undefined;if(_0x56ca9['requireOssPath']&&!_0x48e6aa)return undefined;if(!Array[_0x4b8898(0x18e)](_0x120375[_0x4b8898(0x1a0)])||_0x120375['files'][_0x4b8898(0x1aa)]===0x0)return undefined;if(!isSha256Hex(_0x120375['treeSha256']))throw CliErrors[_0x4b8898(0x1af)](_0x4b8898(0x1b3));if(!isSha256Hex(_0x120375['zipSha256']))throw CliErrors['validation'](_0x4b8898(0x191));if(!Number[_0x4b8898(0x1b2)](_0x120375[_0x4b8898(0x18c)])||_0x120375[_0x4b8898(0x18c)]<0x0)throw CliErrors[_0x4b8898(0x1af)](_0x4b8898(0x188));const _0xd6d8c2=normalizeManifestFiles(_0x120375[_0x4b8898(0x1a0)]);if(!_0xd6d8c2['some'](_0x395817=>_0x395817[_0x4b8898(0x190)]===SKILL_FILE))throw CliErrors[_0x4b8898(0x1af)](_0x4b8898(0x1b0)+SKILL_FILE+'.');const _0x564957=fileTreeHash(_0xd6d8c2);if(_0x564957!==_0x120375[_0x4b8898(0x18d)][_0x4b8898(0x1a8)]())throw CliErrors['validation'](_0x4b8898(0x18b));return{'schemaVersion':Number[_0x4b8898(0x1b2)](_0x120375[_0x4b8898(0x1a3)])?_0x120375[_0x4b8898(0x1a3)]:0x2,'ossPath':_0x48e6aa,'treeSha256':_0x564957,'zipSha256':_0x120375[_0x4b8898(0x193)][_0x4b8898(0x1a8)](),'zipSize':_0x120375[_0x4b8898(0x18c)],'files':_0xd6d8c2};}function a125_0x3c17(){const _0x3a08ab=['files','has','Runtime\x20Skill\x20package\x20is\x20required\x20for\x20Skill\x20install:\x20','schemaVersion','Runtime\x20Skill\x20package\x20is\x20missing\x20','30428ShCoXE','bytes','set','toLowerCase','Runtime\x20Skill\x20package\x20file\x20sha256\x20mismatch:\x20','length','base64','toString','3280788AgohiW','Runtime\x20Skill\x20package\x20file\x20size\x20mismatch:\x20','validation','Runtime\x20Skill\x20manifest\x20is\x20missing\x20','Runtime\x20Skill\x20package\x20sha256\x20mismatch.','isSafeInteger','Runtime\x20Skill\x20file\x20tree\x20sha256\x20is\x20invalid.','224pZYLxv','Runtime\x20Skill\x20package\x20size\x20is\x20invalid.','object','177Dcleav','Runtime\x20Skill\x20file\x20tree\x20sha256\x20mismatch.','zipSize','treeSha256','isArray','Missing\x20','path','Runtime\x20Skill\x20package\x20sha256\x20is\x20invalid.','\x20in\x20Skill\x20file\x20package.','zipSha256','80wLYYSj','377758EMerXa','1770906yiCdSL','449814WztIjb','get','23704FHMDBD','some','Runtime\x20Skill\x20package\x20entry\x20list\x20mismatch.','5ZaqMFw','745910nXDUta','Runtime\x20Skill\x20package\x20manifest\x20is\x20missing.','ossPath'];a125_0x3c17=function(){return _0x3a08ab;};return a125_0x3c17();}function extractAndVerifyPackage(_0x3dd79c,_0xfc1118){const _0x3b89c8=a125_0xa8dd,_0x3a35c0=normalizePackageManifest(_0x3dd79c,{'requireOssPath':![]});if(!_0x3a35c0)throw CliErrors[_0x3b89c8(0x1af)](_0x3b89c8(0x19e));if(_0xfc1118[_0x3b89c8(0x1aa)]!==_0x3a35c0[_0x3b89c8(0x18c)])throw CliErrors['validation']('Runtime\x20Skill\x20package\x20size\x20mismatch.');const _0xd93619=bufferSha256(_0xfc1118);if(_0xd93619!==_0x3a35c0['zipSha256'])throw CliErrors[_0x3b89c8(0x1af)](_0x3b89c8(0x1b1));return extractAndVerifyPackageFiles(_0x3a35c0,_0xfc1118);}function extractAndVerifyPackageFiles(_0x4fed3b,_0x5ba4a0){const _0x35c65c=a125_0xa8dd,_0xf8eaab=parseZipPackage(_0x5ba4a0);if(_0xf8eaab['length']!==_0x4fed3b[_0x35c65c(0x1a0)][_0x35c65c(0x1aa)])throw CliErrors['validation'](_0x35c65c(0x19b));const _0x4d7a6f=new Map();for(const _0x22207f of _0xf8eaab){if(_0x4d7a6f[_0x35c65c(0x1a1)](_0x22207f[_0x35c65c(0x190)]))throw CliErrors['validation']('Duplicate\x20Skill\x20package\x20entry:\x20'+_0x22207f[_0x35c65c(0x190)]);_0x4d7a6f[_0x35c65c(0x1a7)](_0x22207f[_0x35c65c(0x190)],_0x22207f);}const _0x1f2fae=[];for(const _0x2206e8 of _0x4fed3b[_0x35c65c(0x1a0)]){const _0x1ff4de=_0x4d7a6f[_0x35c65c(0x198)](_0x2206e8[_0x35c65c(0x190)]);if(!_0x1ff4de)throw CliErrors['validation']('Runtime\x20Skill\x20package\x20is\x20missing\x20entry:\x20'+_0x2206e8[_0x35c65c(0x190)]);if(_0x1ff4de['bytes'][_0x35c65c(0x1aa)]!==_0x2206e8['size'])throw CliErrors[_0x35c65c(0x1af)](_0x35c65c(0x1ae)+_0x2206e8[_0x35c65c(0x190)]);const _0x46bae8=bufferSha256(_0x1ff4de[_0x35c65c(0x1a6)]);if(_0x46bae8!==_0x2206e8['sha256'])throw CliErrors[_0x35c65c(0x1af)](_0x35c65c(0x1a9)+_0x2206e8['path']);_0x1f2fae['push']({'path':_0x2206e8[_0x35c65c(0x190)],'bytes':_0x1ff4de[_0x35c65c(0x1a6)]});}return normalizeLocalFiles(_0x1f2fae);}
1
+ (function(_0x546b1e,_0x460bbf){const _0x57cab1=a145_0x2f88,_0x29b80e=_0x546b1e();while(!![]){try{const _0x52c835=-parseInt(_0x57cab1(0x1d9))/0x1*(parseInt(_0x57cab1(0x1b6))/0x2)+-parseInt(_0x57cab1(0x1b5))/0x3*(-parseInt(_0x57cab1(0x1d2))/0x4)+parseInt(_0x57cab1(0x1df))/0x5+-parseInt(_0x57cab1(0x1bc))/0x6+-parseInt(_0x57cab1(0x1db))/0x7+parseInt(_0x57cab1(0x1d7))/0x8+parseInt(_0x57cab1(0x1b4))/0x9;if(_0x52c835===_0x460bbf)break;else _0x29b80e['push'](_0x29b80e['shift']());}catch(_0x5c2458){_0x29b80e['push'](_0x29b80e['shift']());}}}(a145_0x4dc4,0xaff55));import{CliErrors}from'../../errors.js';import{SKILL_FILE}from'./constants.js';import{bufferSha256,fileHash,fileTreeHash}from'./hashing.js';function a145_0x2f88(_0x35ef16,_0x363259){_0x35ef16=_0x35ef16-0x1b4;const _0x4dc402=a145_0x4dc4();let _0x2f881c=_0x4dc402[_0x35ef16];return _0x2f881c;}import{fileContent,isSha256Hex,normalizeLocalFiles,normalizeManifestFiles}from'./local-files.js';import{createDeterministicZipPackage,parseZipPackage}from'./zip-codec.js';export function buildSkillPackage(_0x44d718){const _0x4aa71=a145_0x2f88,_0x476a94=normalizeLocalFiles(_0x44d718);if(!_0x476a94[_0x4aa71(0x1c1)](_0x3853af=>_0x3853af[_0x4aa71(0x1de)]===SKILL_FILE))throw CliErrors[_0x4aa71(0x1d5)](_0x4aa71(0x1d6)+SKILL_FILE+'\x20in\x20Skill\x20file\x20package.');const _0x4762b4=localFilesToManifestFiles(_0x476a94),_0x59b655=createDeterministicZipPackage(_0x476a94);return{'manifest':{'schemaVersion':0x2,'treeSha256':fileTreeHash(_0x4762b4),'zipSha256':bufferSha256(_0x59b655),'zipSize':_0x59b655['length'],'files':_0x4762b4},'packageBytes':_0x59b655,'packageBase64':_0x59b655['toString'](_0x4aa71(0x1dd))};}export function verifyRuntimeSkillPackage(_0x3ddd1a,_0x518de7){const _0x216506=a145_0x2f88,_0x5886cb=normalizePackageManifest(_0x3ddd1a,{'requireOssPath':![]});if(!_0x5886cb)throw CliErrors[_0x216506(0x1d5)](_0x216506(0x1b8));return extractAndVerifyPackage(_0x5886cb,_0x518de7);}export function verifyRuntimeSkillBundle(_0x5d5d5f,_0x1ff4ff){const _0x6a9d04=a145_0x2f88,_0x25595b=normalizePackageManifest(_0x5d5d5f,{'requireOssPath':![]});if(!_0x25595b)throw CliErrors[_0x6a9d04(0x1d5)]('Runtime\x20Skill\x20package\x20manifest\x20is\x20missing.');return extractAndVerifyPackageFiles(_0x25595b,_0x1ff4ff);}export function tryNormalizePackageManifest(_0x31a2a2){return normalizePackageManifest(_0x31a2a2,{'requireOssPath':![]});}export function requirePackageBytes(_0x4d6dee,_0x56b873){const _0x257e21=a145_0x2f88;if(!_0x56b873||_0x56b873[_0x257e21(0x1cf)]===0x0)throw CliErrors[_0x257e21(0x1d5)](_0x257e21(0x1da)+_0x4d6dee);return _0x56b873;}export function extractDownloadedPackage(_0x193b01){const _0x385adb=a145_0x2f88,_0x204bdd=parseZipPackage(_0x193b01)[_0x385adb(0x1c4)](_0x1e26c4=>({'path':_0x1e26c4['path'],'bytes':_0x1e26c4['bytes']}));if(!_0x204bdd[_0x385adb(0x1c1)](_0x456275=>_0x456275[_0x385adb(0x1de)]===SKILL_FILE))throw CliErrors['validation'](_0x385adb(0x1ba)+SKILL_FILE+'.');return normalizeLocalFiles(_0x204bdd);}export function localFilesToManifestFiles(_0x1e2bfa){const _0x4b44ec=a145_0x2f88;return normalizeLocalFiles(_0x1e2bfa)[_0x4b44ec(0x1c4)](_0x1a066a=>({'path':_0x1a066a['path'],'sha256':fileHash(_0x1a066a),'size':fileContent(_0x1a066a)[_0x4b44ec(0x1cf)]}));}function normalizePackageManifest(_0x2c6f4b,_0x3da76f){const _0x45a54b=a145_0x2f88;if(!_0x2c6f4b||typeof _0x2c6f4b!=='object'||Array['isArray'](_0x2c6f4b))return undefined;const _0x32b20b=_0x2c6f4b,_0x3f2c41=typeof _0x32b20b['ossPath']===_0x45a54b(0x1c0)?_0x32b20b[_0x45a54b(0x1bd)][_0x45a54b(0x1c7)]():undefined;if(_0x3da76f[_0x45a54b(0x1c8)]&&!_0x3f2c41)return undefined;if(!Array[_0x45a54b(0x1be)](_0x32b20b[_0x45a54b(0x1ca)])||_0x32b20b[_0x45a54b(0x1ca)][_0x45a54b(0x1cf)]===0x0)return undefined;if(!isSha256Hex(_0x32b20b[_0x45a54b(0x1c9)]))throw CliErrors['validation'](_0x45a54b(0x1c6));if(!isSha256Hex(_0x32b20b[_0x45a54b(0x1e0)]))throw CliErrors[_0x45a54b(0x1d5)](_0x45a54b(0x1c3));if(!Number[_0x45a54b(0x1cd)](_0x32b20b[_0x45a54b(0x1cc)])||_0x32b20b[_0x45a54b(0x1cc)]<0x0)throw CliErrors[_0x45a54b(0x1d5)](_0x45a54b(0x1d0));const _0xc2eb63=normalizeManifestFiles(_0x32b20b[_0x45a54b(0x1ca)]);if(!_0xc2eb63[_0x45a54b(0x1c1)](_0x41c973=>_0x41c973['path']===SKILL_FILE))throw CliErrors['validation'](_0x45a54b(0x1c5)+SKILL_FILE+'.');const _0x242e2c=fileTreeHash(_0xc2eb63);if(_0x242e2c!==_0x32b20b[_0x45a54b(0x1c9)][_0x45a54b(0x1b9)]())throw CliErrors[_0x45a54b(0x1d5)]('Runtime\x20Skill\x20file\x20tree\x20sha256\x20mismatch.');return{'schemaVersion':Number[_0x45a54b(0x1cd)](_0x32b20b[_0x45a54b(0x1d3)])?_0x32b20b[_0x45a54b(0x1d3)]:0x2,'ossPath':_0x3f2c41,'treeSha256':_0x242e2c,'zipSha256':_0x32b20b[_0x45a54b(0x1e0)][_0x45a54b(0x1b9)](),'zipSize':_0x32b20b['zipSize'],'files':_0xc2eb63};}function a145_0x4dc4(){const _0x56846d=['validation','Missing\x20','4338576Ipmmzr','get','17sbLkBZ','Runtime\x20Skill\x20package\x20is\x20required\x20for\x20Skill\x20install:\x20','5404749UAvKgf','Runtime\x20Skill\x20package\x20sha256\x20mismatch.','base64','path','6033910XtLlcQ','zipSha256','8621892XDNuRN','3yDnbsO','76306iIPmOC','size','Runtime\x20Skill\x20package\x20manifest\x20is\x20missing.','toLowerCase','Runtime\x20Skill\x20package\x20is\x20missing\x20','Duplicate\x20Skill\x20package\x20entry:\x20','4270416fYQAlr','ossPath','isArray','Runtime\x20Skill\x20package\x20file\x20sha256\x20mismatch:\x20','string','some','bytes','Runtime\x20Skill\x20package\x20sha256\x20is\x20invalid.','map','Runtime\x20Skill\x20manifest\x20is\x20missing\x20','Runtime\x20Skill\x20file\x20tree\x20sha256\x20is\x20invalid.','trim','requireOssPath','treeSha256','files','Runtime\x20Skill\x20package\x20file\x20size\x20mismatch:\x20','zipSize','isSafeInteger','Runtime\x20Skill\x20package\x20entry\x20list\x20mismatch.','length','Runtime\x20Skill\x20package\x20size\x20is\x20invalid.','has','584308ZianTm','schemaVersion','sha256'];a145_0x4dc4=function(){return _0x56846d;};return a145_0x4dc4();}function extractAndVerifyPackage(_0x1fcd90,_0xd43ac9){const _0x1fe1c4=a145_0x2f88,_0x32fbf2=normalizePackageManifest(_0x1fcd90,{'requireOssPath':![]});if(!_0x32fbf2)throw CliErrors[_0x1fe1c4(0x1d5)](_0x1fe1c4(0x1b8));if(_0xd43ac9[_0x1fe1c4(0x1cf)]!==_0x32fbf2[_0x1fe1c4(0x1cc)])throw CliErrors[_0x1fe1c4(0x1d5)]('Runtime\x20Skill\x20package\x20size\x20mismatch.');const _0x3c1eac=bufferSha256(_0xd43ac9);if(_0x3c1eac!==_0x32fbf2[_0x1fe1c4(0x1e0)])throw CliErrors[_0x1fe1c4(0x1d5)](_0x1fe1c4(0x1dc));return extractAndVerifyPackageFiles(_0x32fbf2,_0xd43ac9);}function extractAndVerifyPackageFiles(_0x23c30b,_0x3138a0){const _0x234cd7=a145_0x2f88,_0x48c3c7=parseZipPackage(_0x3138a0);if(_0x48c3c7['length']!==_0x23c30b[_0x234cd7(0x1ca)][_0x234cd7(0x1cf)])throw CliErrors['validation'](_0x234cd7(0x1ce));const _0x43fb40=new Map();for(const _0x42e4bd of _0x48c3c7){if(_0x43fb40[_0x234cd7(0x1d1)](_0x42e4bd['path']))throw CliErrors['validation'](_0x234cd7(0x1bb)+_0x42e4bd[_0x234cd7(0x1de)]);_0x43fb40['set'](_0x42e4bd['path'],_0x42e4bd);}const _0x2df8e4=[];for(const _0x59f478 of _0x23c30b['files']){const _0x3df059=_0x43fb40[_0x234cd7(0x1d8)](_0x59f478[_0x234cd7(0x1de)]);if(!_0x3df059)throw CliErrors[_0x234cd7(0x1d5)]('Runtime\x20Skill\x20package\x20is\x20missing\x20entry:\x20'+_0x59f478['path']);if(_0x3df059[_0x234cd7(0x1c2)][_0x234cd7(0x1cf)]!==_0x59f478[_0x234cd7(0x1b7)])throw CliErrors['validation'](_0x234cd7(0x1cb)+_0x59f478[_0x234cd7(0x1de)]);const _0x2d5560=bufferSha256(_0x3df059[_0x234cd7(0x1c2)]);if(_0x2d5560!==_0x59f478[_0x234cd7(0x1d4)])throw CliErrors['validation'](_0x234cd7(0x1bf)+_0x59f478[_0x234cd7(0x1de)]);_0x2df8e4['push']({'path':_0x59f478[_0x234cd7(0x1de)],'bytes':_0x3df059['bytes']});}return normalizeLocalFiles(_0x2df8e4);}
@@ -1 +1 @@
1
- (function(_0x2696fb,_0x2b6139){var _0x22cfb3=a126_0x4e26,_0x245398=_0x2696fb();while(!![]){try{var _0x1a58c0=parseInt(_0x22cfb3(0xad))/0x1*(-parseInt(_0x22cfb3(0xb9))/0x2)+parseInt(_0x22cfb3(0xae))/0x3*(parseInt(_0x22cfb3(0xb1))/0x4)+-parseInt(_0x22cfb3(0xb5))/0x5+parseInt(_0x22cfb3(0xaf))/0x6*(parseInt(_0x22cfb3(0xb7))/0x7)+parseInt(_0x22cfb3(0xb0))/0x8*(parseInt(_0x22cfb3(0xb8))/0x9)+-parseInt(_0x22cfb3(0xb6))/0xa*(-parseInt(_0x22cfb3(0xb3))/0xb)+parseInt(_0x22cfb3(0xb2))/0xc*(-parseInt(_0x22cfb3(0xb4))/0xd);if(_0x1a58c0===_0x2b6139)break;else _0x245398['push'](_0x245398['shift']());}catch(_0x1c3fa0){_0x245398['push'](_0x245398['shift']());}}}(a126_0x3335,0xc7f8c));export{contentHash,fileTreeHash}from'./runtime-skill-sync/hashing.js';export{linkEffectiveRuntimeSkills,linkGlobalRuntimeSkills,pruneStaleRuntimeSkillCache,pruneStaleRuntimeSkillLinks}from'./runtime-skill-sync/links.js';function a126_0x3335(){var _0x5b6a13=['4yQfEDy','88611BGtDCQ','3ucORgG','9111786exHjLZ','8yXEfch','950956DpHuIc','72veohbp','12098383tkyUUa','3590717rpChKP','3838075wPCNYR','10jPFvre','7jXDddz','5084568yKpuPu'];a126_0x3335=function(){return _0x5b6a13;};return a126_0x3335();}export{resolveRuntimeSkillInstallTarget}from'./runtime-skill-sync/install-target.js';export{listLocalRuntimeSkills}from'./runtime-skill-sync/list-local.js';function a126_0x4e26(_0x1e6855,_0x15101f){_0x1e6855=_0x1e6855-0xad;var _0x333591=a126_0x3335();var _0x4e260f=_0x333591[_0x1e6855];return _0x4e260f;}export{materializeRuntimeSkill}from'./runtime-skill-sync/materialize.js';export{readMetadataIfPresent}from'./runtime-skill-sync/metadata.js';export{getRuntimeSkillCacheRoot,getRuntimeSkillDir,resolveSkillSyncPaths,runtimeAgentSkillRoots}from'./runtime-skill-sync/paths.js';export{deriveSkillCodeFromDirectory,readPushDirectory,refreshPushDirectoryMetadataFromRemote,recordPushedRuntimeSkill,resolvePushDirectoryIdentity}from'./runtime-skill-sync/push.js';export{buildSkillPackage,verifyRuntimeSkillBundle,verifyRuntimeSkillPackage}from'./runtime-skill-sync/zip-package.js';
1
+ (function(_0x3803bf,_0x12647c){var _0x9aa47c=a146_0x2f4f,_0x21c631=_0x3803bf();while(!![]){try{var _0x23f19c=-parseInt(_0x9aa47c(0x1a2))/0x1+-parseInt(_0x9aa47c(0x1a8))/0x2*(-parseInt(_0x9aa47c(0x1a0))/0x3)+parseInt(_0x9aa47c(0x1a4))/0x4*(parseInt(_0x9aa47c(0x1a3))/0x5)+-parseInt(_0x9aa47c(0x1ab))/0x6*(-parseInt(_0x9aa47c(0x1a6))/0x7)+-parseInt(_0x9aa47c(0x1a1))/0x8+parseInt(_0x9aa47c(0x1aa))/0x9*(-parseInt(_0x9aa47c(0x1a5))/0xa)+parseInt(_0x9aa47c(0x1a9))/0xb*(-parseInt(_0x9aa47c(0x1a7))/0xc);if(_0x23f19c===_0x12647c)break;else _0x21c631['push'](_0x21c631['shift']());}catch(_0x37ee17){_0x21c631['push'](_0x21c631['shift']());}}}(a146_0x4e97,0xb316d));export{contentHash,fileTreeHash}from'./runtime-skill-sync/hashing.js';export{linkEffectiveRuntimeSkills,linkGlobalRuntimeSkills,pruneStaleRuntimeSkillCache,pruneStaleRuntimeSkillLinks}from'./runtime-skill-sync/links.js';export{resolveRuntimeSkillInstallTarget}from'./runtime-skill-sync/install-target.js';export{listLocalRuntimeSkills}from'./runtime-skill-sync/list-local.js';function a146_0x2f4f(_0x3887fa,_0x1a0883){_0x3887fa=_0x3887fa-0x1a0;var _0x4e974b=a146_0x4e97();var _0x2f4f4e=_0x4e974b[_0x3887fa];return _0x2f4f4e;}export{materializeRuntimeSkill}from'./runtime-skill-sync/materialize.js';export{readMetadataIfPresent}from'./runtime-skill-sync/metadata.js';export{getRuntimeSkillCacheRoot,getRuntimeSkillDir,resolveSkillSyncPaths,runtimeAgentSkillRoots}from'./runtime-skill-sync/paths.js';function a146_0x4e97(){var _0x5398fc=['10POVjhI','23268XkYgXt','5363412DdmINt','32518fVKsQU','11RFJdUP','11549583eVVlRd','2556ZOLjoi','243SabKtu','9615416yhIqnO','59592reUckP','5YaOBeh','3969212YEbxIi'];a146_0x4e97=function(){return _0x5398fc;};return a146_0x4e97();}export{deriveSkillCodeFromDirectory,readPushDirectory,refreshPushDirectoryMetadataFromRemote,recordPushedRuntimeSkill,resolvePushDirectoryIdentity}from'./runtime-skill-sync/push.js';export{buildSkillPackage,verifyRuntimeSkillBundle,verifyRuntimeSkillPackage}from'./runtime-skill-sync/zip-package.js';
@@ -1 +1 @@
1
- const a127_0x466e70=a127_0x7dee;(function(_0x356880,_0x2e0abe){const _0x26e22c=a127_0x7dee,_0x4a8509=_0x356880();while(!![]){try{const _0x5923d7=-parseInt(_0x26e22c(0x18b))/0x1+-parseInt(_0x26e22c(0x187))/0x2*(parseInt(_0x26e22c(0x17a))/0x3)+-parseInt(_0x26e22c(0x17c))/0x4*(-parseInt(_0x26e22c(0x189))/0x5)+parseInt(_0x26e22c(0x192))/0x6*(-parseInt(_0x26e22c(0x18a))/0x7)+parseInt(_0x26e22c(0x193))/0x8*(parseInt(_0x26e22c(0x17d))/0x9)+-parseInt(_0x26e22c(0x191))/0xa+parseInt(_0x26e22c(0x17e))/0xb;if(_0x5923d7===_0x2e0abe)break;else _0x4a8509['push'](_0x4a8509['shift']());}catch(_0x880533){_0x4a8509['push'](_0x4a8509['shift']());}}}(a127_0x2dda,0xdcbc7));import{existsSync,readFileSync}from'node:fs';import{homedir}from'node:os';function a127_0x2dda(){const _0x3a520e=['utf8','\x20has\x20no\x20skills\x20map','SKILL.md','254986xmqoDy','home','5667695tFsZVM','4193pKyCkD','665574sTIRyj','includes','\x20is\x20unreadable:\x20','\x20records\x20\x22','globalSkillsDirs','skills','6147300tQssAd','5946XiBFth','232UIGesX','recorded','unverifiable','kind','lockFile','unusable','join','.agents','15wSIKiY','map','4VgeYxg','41859eJxyjQ','23618045SrJPeF','.skill-lock.json','number','parse','.claude','version'];a127_0x2dda=function(){return _0x3a520e;};return a127_0x2dda();}function a127_0x7dee(_0x5d2ff7,_0x20bb42){_0x5d2ff7=_0x5d2ff7-0x17a;const _0x2ddafc=a127_0x2dda();let _0x7dee77=_0x2ddafc[_0x5d2ff7];return _0x7dee77;}import{join}from'node:path';export const SKILL_LOCK_RELATIVE_PATH=join(a127_0x466e70(0x19a),a127_0x466e70(0x17f));export const GLOBAL_SKILLS_DIR_RELATIVE_PATHS=[join(a127_0x466e70(0x19a),a127_0x466e70(0x190)),join(a127_0x466e70(0x182),a127_0x466e70(0x190))];const SUPPORTED_LOCK_VERSIONS=[0x3];function readLockLookup(_0xff3d55,_0x1b82df){const _0x4b6bdc=a127_0x466e70;if(!existsSync(_0xff3d55))return{'kind':'not-recorded'};let _0x330e57;try{_0x330e57=JSON[_0x4b6bdc(0x181)](readFileSync(_0xff3d55,_0x4b6bdc(0x184)));}catch(_0x28c9af){return{'kind':_0x4b6bdc(0x198),'reason':_0xff3d55+_0x4b6bdc(0x18d)+_0x28c9af['message']};}const _0x121345=_0x330e57;if(typeof _0x121345?.[_0x4b6bdc(0x183)]!==_0x4b6bdc(0x180)||!SUPPORTED_LOCK_VERSIONS[_0x4b6bdc(0x18c)](_0x121345[_0x4b6bdc(0x183)]))return{'kind':_0x4b6bdc(0x198),'reason':_0xff3d55+'\x20uses\x20unsupported\x20version\x20'+String(_0x121345?.['version'])};if(!_0x121345[_0x4b6bdc(0x190)]||typeof _0x121345[_0x4b6bdc(0x190)]!=='object')return{'kind':_0x4b6bdc(0x198),'reason':_0xff3d55+_0x4b6bdc(0x185)};return _0x121345[_0x4b6bdc(0x190)][_0x1b82df]?{'kind':_0x4b6bdc(0x194)}:{'kind':'not-recorded'};}export function resolveInstalledSkill(_0x2d84a1,_0x183681){const _0x44276b=a127_0x466e70,_0x4861d1=_0x183681?.[_0x44276b(0x188)]??homedir(),_0x2bbaaa=_0x183681?.[_0x44276b(0x18f)]??GLOBAL_SKILLS_DIR_RELATIVE_PATHS[_0x44276b(0x17b)](_0x2a28d2=>join(_0x4861d1,_0x2a28d2)),_0x9d1feb=_0x183681?.[_0x44276b(0x197)]??join(_0x4861d1,SKILL_LOCK_RELATIVE_PATH),_0x126364=_0x2bbaaa[_0x44276b(0x17b)](_0x3c7edb=>join(_0x3c7edb,_0x2d84a1,_0x44276b(0x186))),_0x45b278=_0x126364['find'](_0x3724ff=>existsSync(_0x3724ff));if(_0x45b278)return{'state':'present','path':_0x45b278};const _0xb7ad2=readLockLookup(_0x9d1feb,_0x2d84a1);if(_0xb7ad2[_0x44276b(0x196)]===_0x44276b(0x198))return{'state':_0x44276b(0x195),'reason':_0xb7ad2['reason']};if(_0xb7ad2[_0x44276b(0x196)]===_0x44276b(0x194))return{'state':_0x44276b(0x195),'reason':_0x9d1feb+_0x44276b(0x18e)+_0x2d84a1+'\x22\x20but\x20no\x20SKILL.md\x20was\x20found\x20in\x20known\x20layouts\x20'+('('+_0x126364[_0x44276b(0x199)](',\x20')+')')};return{'state':'absent','checked':_0x126364};}
1
+ const a147_0x56e042=a147_0x194b;(function(_0x2e5923,_0x3b68fb){const _0x2e44be=a147_0x194b,_0x4c1335=_0x2e5923();while(!![]){try{const _0x3cb2cc=-parseInt(_0x2e44be(0x1b7))/0x1+-parseInt(_0x2e44be(0x1ad))/0x2+parseInt(_0x2e44be(0x1aa))/0x3+-parseInt(_0x2e44be(0x1af))/0x4*(parseInt(_0x2e44be(0x1b9))/0x5)+parseInt(_0x2e44be(0x19d))/0x6*(-parseInt(_0x2e44be(0x1a2))/0x7)+parseInt(_0x2e44be(0x199))/0x8*(-parseInt(_0x2e44be(0x19f))/0x9)+-parseInt(_0x2e44be(0x1ab))/0xa*(-parseInt(_0x2e44be(0x1a3))/0xb);if(_0x3cb2cc===_0x3b68fb)break;else _0x4c1335['push'](_0x4c1335['shift']());}catch(_0x495548){_0x4c1335['push'](_0x4c1335['shift']());}}}(a147_0x1510,0x1db8d));function a147_0x194b(_0x4f52e9,_0x53af37){_0x4f52e9=_0x4f52e9-0x199;const _0x151044=a147_0x1510();let _0x194baf=_0x151044[_0x4f52e9];return _0x194baf;}import{existsSync,readFileSync}from'node:fs';import{homedir}from'node:os';import{join}from'node:path';export const SKILL_LOCK_RELATIVE_PATH=join('.agents',a147_0x56e042(0x1a9));export const GLOBAL_SKILLS_DIR_RELATIVE_PATHS=[join(a147_0x56e042(0x1b2),a147_0x56e042(0x19b)),join(a147_0x56e042(0x19c),a147_0x56e042(0x19b))];function a147_0x1510(){const _0x55d184=['find','.agents','includes','unverifiable','\x20uses\x20unsupported\x20version\x20','\x20has\x20no\x20skills\x20map','147433WwLZZT','unusable','1135325gXsKpI','SKILL.md','\x20records\x20\x22','16zxiSTc','map','skills','.claude','318ucviQF','recorded','823302LIdrpz','utf8','join','13069DdRLLN','9164573TiBTtR','globalSkillsDirs','version','kind','not-recorded','\x22\x20but\x20no\x20SKILL.md\x20was\x20found\x20in\x20known\x20layouts\x20','.skill-lock.json','62472sFcEHi','10LstrpS','reason','151642MtvrpN','\x20is\x20unreadable:\x20','4ILdPEe','lockFile'];a147_0x1510=function(){return _0x55d184;};return a147_0x1510();}const SUPPORTED_LOCK_VERSIONS=[0x3];function readLockLookup(_0x5c497e,_0x539f33){const _0x114d5e=a147_0x56e042;if(!existsSync(_0x5c497e))return{'kind':_0x114d5e(0x1a7)};let _0xbfccd;try{_0xbfccd=JSON['parse'](readFileSync(_0x5c497e,_0x114d5e(0x1a0)));}catch(_0x92e936){return{'kind':'unusable','reason':_0x5c497e+_0x114d5e(0x1ae)+_0x92e936['message']};}const _0x27045f=_0xbfccd;if(typeof _0x27045f?.[_0x114d5e(0x1a5)]!=='number'||!SUPPORTED_LOCK_VERSIONS[_0x114d5e(0x1b3)](_0x27045f['version']))return{'kind':'unusable','reason':_0x5c497e+_0x114d5e(0x1b5)+String(_0x27045f?.[_0x114d5e(0x1a5)])};if(!_0x27045f['skills']||typeof _0x27045f[_0x114d5e(0x19b)]!=='object')return{'kind':_0x114d5e(0x1b8),'reason':_0x5c497e+_0x114d5e(0x1b6)};return _0x27045f[_0x114d5e(0x19b)][_0x539f33]?{'kind':_0x114d5e(0x19e)}:{'kind':_0x114d5e(0x1a7)};}export function resolveInstalledSkill(_0x23cba7,_0x484153){const _0x2911ed=a147_0x56e042,_0x1ca34d=_0x484153?.['home']??homedir(),_0xd34b79=_0x484153?.[_0x2911ed(0x1a4)]??GLOBAL_SKILLS_DIR_RELATIVE_PATHS[_0x2911ed(0x19a)](_0x524a47=>join(_0x1ca34d,_0x524a47)),_0x2f3dd6=_0x484153?.[_0x2911ed(0x1b0)]??join(_0x1ca34d,SKILL_LOCK_RELATIVE_PATH),_0x966f62=_0xd34b79[_0x2911ed(0x19a)](_0x3dd14f=>join(_0x3dd14f,_0x23cba7,_0x2911ed(0x1ba))),_0x2884ad=_0x966f62[_0x2911ed(0x1b1)](_0xc559ff=>existsSync(_0xc559ff));if(_0x2884ad)return{'state':'present','path':_0x2884ad};const _0x214ccd=readLockLookup(_0x2f3dd6,_0x23cba7);if(_0x214ccd[_0x2911ed(0x1a6)]===_0x2911ed(0x1b8))return{'state':'unverifiable','reason':_0x214ccd[_0x2911ed(0x1ac)]};if(_0x214ccd[_0x2911ed(0x1a6)]===_0x2911ed(0x19e))return{'state':_0x2911ed(0x1b4),'reason':_0x2f3dd6+_0x2911ed(0x1bb)+_0x23cba7+_0x2911ed(0x1a8)+('('+_0x966f62[_0x2911ed(0x1a1)](',\x20')+')')};return{'state':'absent','checked':_0x966f62};}
@@ -1 +1 @@
1
- (function(_0x429b85,_0x50762f){const _0x1be77a=a128_0x4edd,_0x4debd9=_0x429b85();while(!![]){try{const _0x1b64fa=parseInt(_0x1be77a(0x120))/0x1*(-parseInt(_0x1be77a(0x122))/0x2)+-parseInt(_0x1be77a(0x11e))/0x3+-parseInt(_0x1be77a(0x121))/0x4*(-parseInt(_0x1be77a(0x11f))/0x5)+-parseInt(_0x1be77a(0x126))/0x6+-parseInt(_0x1be77a(0x123))/0x7*(parseInt(_0x1be77a(0x124))/0x8)+parseInt(_0x1be77a(0x11d))/0x9+-parseInt(_0x1be77a(0x125))/0xa;if(_0x1b64fa===_0x50762f)break;else _0x4debd9['push'](_0x4debd9['shift']());}catch(_0x1be70d){_0x4debd9['push'](_0x4debd9['shift']());}}}(a128_0x2903,0xd16de));import{createJqFilter,resolveBundledJqPaths}from'@lovrabet/cli-framework';function a128_0x4edd(_0x50347c,_0x259e63){_0x50347c=_0x50347c-0x11d;const _0x29030f=a128_0x2903();let _0x4eddbc=_0x29030f[_0x50347c];return _0x4eddbc;}import{CliErrors}from'../errors.js';function a128_0x2903(){const _0x575177=['2530280fDJtyu','2592630ZqyATU','14896827vjyGbn','1639785HEavtV','85aSNCmI','217hXEVxh','224996UydAaO','2470BNwmUH','161567HNmGNJ','88HjoDSr'];a128_0x2903=function(){return _0x575177;};return a128_0x2903();}export const applyJqFilter=createJqFilter(CliErrors,{'bundledJqPaths':resolveBundledJqPaths()});
1
+ (function(_0x4997ac,_0x8f788d){const _0xd0d9cc=a148_0x5cea,_0x3953e1=_0x4997ac();while(!![]){try{const _0x2e6810=parseInt(_0xd0d9cc(0x92))/0x1*(-parseInt(_0xd0d9cc(0x91))/0x2)+parseInt(_0xd0d9cc(0x87))/0x3*(parseInt(_0xd0d9cc(0x89))/0x4)+-parseInt(_0xd0d9cc(0x8d))/0x5*(parseInt(_0xd0d9cc(0x8b))/0x6)+-parseInt(_0xd0d9cc(0x8f))/0x7*(-parseInt(_0xd0d9cc(0x90))/0x8)+-parseInt(_0xd0d9cc(0x8c))/0x9*(-parseInt(_0xd0d9cc(0x86))/0xa)+-parseInt(_0xd0d9cc(0x8a))/0xb*(parseInt(_0xd0d9cc(0x88))/0xc)+-parseInt(_0xd0d9cc(0x8e))/0xd;if(_0x2e6810===_0x8f788d)break;else _0x3953e1['push'](_0x3953e1['shift']());}catch(_0xb3da91){_0x3953e1['push'](_0x3953e1['shift']());}}}(a148_0x47fc,0x4d9ec));function a148_0x47fc(){const _0x2e2f9e=['3751MRjlFe','84XSYERI','27yuTNHv','109310qWPSJe','4926194aFcINo','1348403AnVlrZ','24YmRlAn','8YhmLfI','78269begWCp','1934410ipyGyT','3QuTwmO','12228BOGtBD','2021132ZlTOBg'];a148_0x47fc=function(){return _0x2e2f9e;};return a148_0x47fc();}function a148_0x5cea(_0x2cde78,_0x123f1d){_0x2cde78=_0x2cde78-0x86;const _0x47fc8c=a148_0x47fc();let _0x5ceaf6=_0x47fc8c[_0x2cde78];return _0x5ceaf6;}import{createJqFilter,resolveBundledJqPaths}from'@lovrabet/cli-framework';import{CliErrors}from'../errors.js';export const applyJqFilter=createJqFilter(CliErrors,{'bundledJqPaths':resolveBundledJqPaths()});