cdspec 0.1.4 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +40 -66
- package/dist/cli.js +1 -1
- package/dist/config/default.js +1 -1
- package/dist/config/loader.js +1 -1
- package/dist/config/path.js +1 -1
- package/dist/skill-core/adapters/claudecode-adapter.js +1 -1
- package/dist/skill-core/adapters/codex-adapter.js +1 -1
- package/dist/skill-core/adapters/iflow-adapter.js +1 -1
- package/dist/skill-core/adapters/index.js +1 -1
- package/dist/skill-core/adapters/shared.js +1 -1
- package/dist/skill-core/manifest-loader.js +1 -1
- package/dist/skill-core/scaffold.js +1 -1
- package/dist/skill-core/service.js +1 -1
- package/dist/skill-core/tool-interactions.js +1 -1
- package/dist/skill-core/validator.js +1 -1
- package/dist/utils/frontmatter.js +1 -1
- package/dist/utils/fs.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,18 +1,17 @@
|
|
|
1
|
-
# CDSpec
|
|
1
|
+
# CDSpec
|
|
2
2
|
|
|
3
|
-
`cdspec`
|
|
3
|
+
`cdspec` 是一个用于规范项目开发、提高开发效率的 Skill 初始化 CLI。
|
|
4
|
+
它会把项目内 `templates/` 的技能模板一键安装到不同编程智能体(Codex / ClaudeCode / iFlow)可识别的目录,并自动生成对应命令文件。
|
|
4
5
|
|
|
5
6
|
## 功能
|
|
6
7
|
|
|
7
|
-
-
|
|
8
|
-
- 自动为每个 skill
|
|
9
|
-
-
|
|
10
|
-
-
|
|
8
|
+
- 基于 `templates/` 一键生成并安装 skills
|
|
9
|
+
- 自动为每个 skill 生成可调用命令(`cd-<skill-name>`)
|
|
10
|
+
- 支持选择生成路径:默认路径(用户目录)或当前项目路径
|
|
11
|
+
- 支持目标智能体:`codex`、`claudecode`、`iflow`
|
|
11
12
|
|
|
12
13
|
## 安装
|
|
13
14
|
|
|
14
|
-
全局安装(已发布到 npm):
|
|
15
|
-
|
|
16
15
|
```bash
|
|
17
16
|
npm i -g cdspec
|
|
18
17
|
```
|
|
@@ -23,17 +22,28 @@ npm i -g cdspec
|
|
|
23
22
|
cdspec --help
|
|
24
23
|
```
|
|
25
24
|
|
|
26
|
-
|
|
25
|
+
## 使用
|
|
26
|
+
|
|
27
|
+
执行初始化(交互选择智能体 + 路径模式):
|
|
27
28
|
|
|
28
29
|
```bash
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
cdspec init
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
非交互方式:
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
cdspec init --agents codex,claudecode,iflow --path-mode default
|
|
32
37
|
```
|
|
33
38
|
|
|
34
|
-
|
|
39
|
+
可选参数:
|
|
35
40
|
|
|
36
|
-
|
|
41
|
+
- `--agents <agents>`: `codex|claudecode|iflow`,支持逗号分隔
|
|
42
|
+
- `--path-mode <mode>`: `default|project`
|
|
43
|
+
|
|
44
|
+
## 模板约定
|
|
45
|
+
|
|
46
|
+
在项目根目录准备 `templates/`,每个技能一个目录,且至少包含 `SKILL.md`。
|
|
37
47
|
|
|
38
48
|
示例:
|
|
39
49
|
|
|
@@ -43,66 +53,30 @@ templates/
|
|
|
43
53
|
SKILL.md
|
|
44
54
|
agents/openai.yaml
|
|
45
55
|
references/*
|
|
46
|
-
frontend-
|
|
56
|
+
frontend-standard/
|
|
57
|
+
SKILL.md
|
|
58
|
+
backend-standard/
|
|
47
59
|
SKILL.md
|
|
48
60
|
```
|
|
49
61
|
|
|
50
|
-
执行初始化:
|
|
51
|
-
|
|
52
|
-
```bash
|
|
53
|
-
cdspec init
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
或指定智能体:
|
|
57
|
-
|
|
58
|
-
```bash
|
|
59
|
-
cdspec init --agents codex,claudecode,iflow
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
## 生成规则(当前版本)
|
|
63
|
-
|
|
64
|
-
1. `templates/*` 下每个 skill 目录会被安装到目标智能体的 `skills/`。
|
|
65
|
-
2. 每个 skill 自动生成一个命令文件,命令名规则为:
|
|
66
|
-
`cd-<skill-name>`
|
|
67
|
-
3. `init` 默认覆盖旧文件(不需要 `--force`)。
|
|
68
|
-
|
|
69
|
-
示例:
|
|
70
|
-
|
|
71
|
-
- skill: `frontend-develop-standard`
|
|
72
|
-
- 命令文件:`cd-frontend-develop-standard.md`
|
|
73
|
-
|
|
74
62
|
## 输出目录
|
|
75
63
|
|
|
76
|
-
|
|
64
|
+
`--path-mode default`(默认,用户目录):
|
|
77
65
|
|
|
78
66
|
- Codex: `~/.codex/skills/*` 和 `~/.codex/prompts/*`
|
|
79
|
-
- ClaudeCode:
|
|
80
|
-
- iFlow:
|
|
81
|
-
|
|
82
|
-
附加说明文件:
|
|
67
|
+
- ClaudeCode: `~/.claude/skills/*` 和 `~/.claude/commands/opsx/*`
|
|
68
|
+
- iFlow: `~/.iflow/skills/*` 和 `~/.iflow/commands/*`
|
|
83
69
|
|
|
84
|
-
-
|
|
85
|
-
- 项目根 `AGENTS.md`
|
|
86
|
-
- 项目根 `CLAUDE.md`(当启用 claudecode)
|
|
87
|
-
- `.iflow/IFLOW.md`(当启用 iflow)
|
|
70
|
+
`--path-mode project`(当前项目目录):
|
|
88
71
|
|
|
89
|
-
|
|
72
|
+
- Codex: `./.codex/skills/*` 和 `./.codex/prompts/*`
|
|
73
|
+
- ClaudeCode: `./.claude/skills/*` 和 `./.claude/commands/opsx/*`
|
|
74
|
+
- iFlow: `./.iflow/skills/*` 和 `./.iflow/commands/*`
|
|
90
75
|
|
|
91
|
-
|
|
76
|
+
## 开发
|
|
92
77
|
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
## 常见问题
|
|
100
|
-
|
|
101
|
-
1. `init` 后看不到新命令
|
|
102
|
-
重启 Codex 会话;部分客户端启动时才扫描 prompt 列表。
|
|
103
|
-
|
|
104
|
-
2. 命令重复(Team/个人各一份)
|
|
105
|
-
这是不同来源同时存在,清理个人或团队同名 skill 即可。
|
|
106
|
-
|
|
107
|
-
3. 发布 npm 报 401/404
|
|
108
|
-
先 `npm login`,再检查包名与权限后发布。
|
|
78
|
+
```bash
|
|
79
|
+
npm install
|
|
80
|
+
npm run build
|
|
81
|
+
npm run dev
|
|
82
|
+
```
|
package/dist/cli.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
const
|
|
2
|
+
const _0x841b17=_0x1077;(function(_0x2e70e1,_0x1d7965){const _0x46472a=_0x1077,_0x1730ff=_0x2e70e1();while(!![]){try{const _0xfee2df=-parseInt(_0x46472a(0x1d9))/(-0x1ec*0x1+-0x1*-0x1ff9+0x783*-0x4)+parseInt(_0x46472a(0x1c5))/(0x54f+-0x994+0x447)*(-parseInt(_0x46472a(0x1d2))/(-0x17*0x79+-0x2e*0x8b+-0x1cb*-0x14))+-parseInt(_0x46472a(0x1c7))/(0x861+-0x1*0x137d+0x1*0xb20)*(-parseInt(_0x46472a(0x1e8))/(-0x13c9+0x43*-0x7c+0x3442))+-parseInt(_0x46472a(0x1ce))/(0x1de1+0x3b*-0x7d+-0x10c)*(-parseInt(_0x46472a(0x1ea))/(-0x26be*-0x1+-0x1a9a+-0xc1d))+-parseInt(_0x46472a(0x1c8))/(0x41*-0x2d+-0x1*0x20ad+0x2c22)+-parseInt(_0x46472a(0x1db))/(0x1*0x1636+-0x1d07*0x1+0x6da)*(parseInt(_0x46472a(0x1ba))/(0x1*-0x2487+-0x1*0xfc5+0x3456))+parseInt(_0x46472a(0x1dd))/(-0x169*-0x3+0x14a5+-0x18d5);if(_0xfee2df===_0x1d7965)break;else _0x1730ff['push'](_0x1730ff['shift']());}catch(_0x4b7979){_0x1730ff['push'](_0x1730ff['shift']());}}}(_0x23e5,-0x6*0x12d8b+-0x2212c+-0x2a5c9*-0x5));function _0x1077(_0x9d0223,_0x2dfca1){_0x9d0223=_0x9d0223-(-0x25a0+0x2055+0x5*0x167);const _0x46e8b5=_0x23e5();let _0x4a05ad=_0x46e8b5[_0x9d0223];return _0x4a05ad;}import _0x5339ae from'@inquirer/checkbox';import _0x311401 from'@inquirer/select';import{Command}from'commander';import _0x59cab6 from'node:path';import _0x557c1c from'node:process';import{initSkills}from'./skill-core/service.js';const program=new Command();program[_0x841b17(0x1df)](_0x841b17(0x1d4))['description'](_0x841b17(0x1dc))[_0x841b17(0x1e4)](_0x841b17(0x1c1)),program['command'](_0x841b17(0x1e0))['description'](_0x841b17(0x1bf))[_0x841b17(0x1da)](_0x841b17(0x1c9),_0x841b17(0x1c6))[_0x841b17(0x1da)](_0x841b17(0x1cb),_0x841b17(0x1b9))[_0x841b17(0x1e5)](async _0x4f2019=>{const _0x127ac6=_0x841b17,_0x484f82=_0x4f2019[_0x127ac6(0x1e2)]??await askAgentsSelection(),_0x157fc3=normalizePathMode(_0x4f2019[_0x127ac6(0x1be)])??await askPathModeSelection(),_0x5f7cab=await initSkills(_0x557c1c[_0x127ac6(0x1c4)](),_0x484f82,!![],_0x157fc3);console[_0x127ac6(0x1d6)]('已完成初始化:'+_0x484f82),console[_0x127ac6(0x1d6)](_0x127ac6(0x1b8)+(_0x157fc3==='project'?'当前项目路径':_0x127ac6(0x1d5))),console[_0x127ac6(0x1d6)](_0x127ac6(0x1bb));for(const _0x1a46e3 of _0x5f7cab){console[_0x127ac6(0x1d6)](_0x59cab6[_0x127ac6(0x1e1)](_0x1a46e3));}}),program[_0x841b17(0x1cf)](_0x557c1c[_0x841b17(0x1cd)])['catch'](_0x505d48=>{const _0x101888=_0x841b17,_0x2134bc=_0x505d48 instanceof Error?_0x505d48[_0x101888(0x1bd)]:String(_0x505d48);console[_0x101888(0x1cc)](_0x2134bc),_0x557c1c[_0x101888(0x1eb)]=0x4*0x2c8+-0x24e2*0x1+0x19c3*0x1;});async function askAgentsSelection(){const _0x496c6b=_0x841b17;if(!_0x557c1c[_0x496c6b(0x1e7)][_0x496c6b(0x1d3)])return _0x496c6b(0x1c3);const _0x2dd262=await _0x5339ae({'message':_0x496c6b(0x1e6),'required':!![],'theme':{'icon':{'checked':'[✓]','unchecked':'[\x20]','cursor':'>'}},'choices':[{'name':_0x496c6b(0x1c3),'value':'codex','checked':!![]},{'name':'claudecode','value':'claudecode'},{'name':_0x496c6b(0x1e3),'value':_0x496c6b(0x1e3)}]});if(_0x2dd262['length']===0x12d7*-0x1+0x14fc+0x9*-0x3d)return _0x496c6b(0x1c3);return _0x2dd262[_0x496c6b(0x1d7)](',');}async function askPathModeSelection(){const _0x4fd82d=_0x841b17;if(!_0x557c1c[_0x4fd82d(0x1e7)]['isTTY'])return'default';return _0x311401({'message':_0x4fd82d(0x1de),'choices':[{'name':_0x4fd82d(0x1d5),'value':'default'},{'name':_0x4fd82d(0x1c0),'value':_0x4fd82d(0x1d1)}],'default':_0x4fd82d(0x1c2)});}function normalizePathMode(_0x2eec64){const _0x2936c2=_0x841b17;if(typeof _0x2eec64!==_0x2936c2(0x1ca))return undefined;const _0x190fdd=_0x2eec64[_0x2936c2(0x1e9)]()[_0x2936c2(0x1bc)]();if(_0x190fdd===_0x2936c2(0x1c2)||_0x190fdd===_0x2936c2(0x1d1))return _0x190fdd;throw new Error(_0x2936c2(0x1d8)+_0x2eec64+_0x2936c2(0x1d0));}function _0x23e5(){const _0x18b293=['action','请选择编程智能体','stdin','55fOIqvR','trim','686672buCHoC','exitCode','生成路径模式:','default|project','622780zLDjPF','已生成技能包:','toLowerCase','message','pathMode','为所选编程智能体初始化技能','当前项目路径','0.1.0','default','codex','cwd','4scEFhR','codex|claudecode|iflow|all\x20or\x20comma-separated','164692bEZCkE','2852992AkuoxI','--agents\x20<agents>','string','--path-mode\x20<mode>','error','argv','24QiMbmY','parseAsync',',可选值:\x20default\x20|\x20project','project','330363xKedtW','isTTY','cdspec','默认路径(按配置)','log','join','未知路径模式:\x20','286911ykcpAM','option','9qJMBLm','Skill\x20init\x20CLI','3801589NSUflp','请选择生成路径','name','init','resolve','agents','iflow','version'];_0x23e5=function(){return _0x18b293;};return _0x23e5();}
|
package/dist/config/default.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x4ac092=_0xdb95;function _0xe1a1(){const _0x49997b=['commands','{id}.md','IFLOW.md','Archive\x20completed\x20changes\x20and\x20update\x20baseline\x20specs.','/opsx:{id}','2711107eYjDdq','/opsx-{id}','~/.claude','68UURftD','233625EpCTqG','610827vcHEhY','opsx-{id}.md','1695eIQUgE','8000469yCrxYa','21342CCPidR','~/.iflow','8yBtkjV','openspec-core','.codex','3138286OOOnKp','archive','CLAUDE.md','764390YlbcbF','propose'];_0xe1a1=function(){return _0x49997b;};return _0xe1a1();}(function(_0x5d579d,_0x557ad4){const _0x19973d=_0xdb95,_0x36f088=_0x5d579d();while(!![]){try{const _0x1a7c03=-parseInt(_0x19973d(0xe1))/(0x1*0x1803+0x564+-0x1d66)+-parseInt(_0x19973d(0xea))/(0x708+-0x1709*0x1+0x1003)+-parseInt(_0x19973d(0xe0))/(-0xaa9+-0x190b+-0x29*-0xdf)*(-parseInt(_0x19973d(0xdf))/(0x25b5+-0x117a*0x1+0x73*-0x2d))+parseInt(_0x19973d(0xe3))/(-0x1ad*-0xd+-0x89*0x1+-0x153b)*(parseInt(_0x19973d(0xe5))/(-0x9*0x1cb+-0x135*0x11+0x24ae))+parseInt(_0x19973d(0xdc))/(-0x133*0x8+0xf39+0x1de*-0x3)*(-parseInt(_0x19973d(0xe7))/(0x1037*-0x1+0x6a6+0x15f*0x7))+parseInt(_0x19973d(0xe4))/(-0x1*0x120e+0x80*0x20+0x5*0x6b)+parseInt(_0x19973d(0xed))/(-0x1fda+0x2244+-0x260);if(_0x1a7c03===_0x557ad4)break;else _0x36f088['push'](_0x36f088['shift']());}catch(_0x53209a){_0x36f088['push'](_0x36f088['shift']());}}}(_0xe1a1,-0x19*0x37c9+0x3*-0x6d883+0x282469));function _0xdb95(_0x2612cf,_0x341d31){_0x2612cf=_0x2612cf-(-0xffc+0x13ba+-0xf7*0x3);const _0x40fc15=_0xe1a1();let _0x4f84a5=_0x40fc15[_0x2612cf];return _0x4f84a5;}export const defaultConfig={'commandBindings':[{'id':_0x4ac092(0xee),'skill':_0x4ac092(0xe8),'description':'Create\x20a\x20change\x20proposal\x20with\x20scope\x20and\x20impacted\x20specs.'},{'id':'explore','skill':'openspec-core','description':'Analyze\x20existing\x20specs\x20and\x20produce\x20planned\x20deltas.'},{'id':'apply','skill':_0x4ac092(0xe8),'description':'Implement\x20approved\x20tasks\x20and\x20keep\x20spec\x20updates\x20in\x20sync.'},{'id':_0x4ac092(0xeb),'skill':'openspec-core','description':_0x4ac092(0xda)}],'agents':{'codex':{'rootDir':_0x4ac092(0xe9),'commandsDir':'prompts','commandFilePattern':_0x4ac092(0xe2),'slashPattern':'/opsx-{id}','guideFile':'AGENTS.md'},'claudecode':{'rootDir':_0x4ac092(0xde),'commandsDir':'commands/opsx','commandFilePattern':_0x4ac092(0xf0),'slashPattern':_0x4ac092(0xdb),'guideFile':_0x4ac092(0xec),'guideAtProjectRoot':!![]},'iflow':{'rootDir':_0x4ac092(0xe6),'commandsDir':_0x4ac092(0xef),'commandFilePattern':'opsx-{id}.md','slashPattern':_0x4ac092(0xdd),'guideFile':_0x4ac092(0xd9)}}};
|
package/dist/config/loader.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x409c25=_0x2606;(function(_0x22f0ae,_0x5f1089){const _0x248e8d=_0x2606,_0x463ccf=_0x22f0ae();while(!![]){try{const _0x32c6b9=-parseInt(_0x248e8d(0x124))/(-0x5*-0x361+0x248b+-0x356f)+-parseInt(_0x248e8d(0x11a))/(-0x3a4*-0x1+0x1*-0x1563+0x5*0x38d)+-parseInt(_0x248e8d(0x128))/(0x2163+-0x19c4+0x79c*-0x1)+-parseInt(_0x248e8d(0x11f))/(0x1255+-0x2c7*0xe+-0x27*-0x87)*(-parseInt(_0x248e8d(0x120))/(-0x1147+0x155*-0x2+-0xa*-0x1ff))+-parseInt(_0x248e8d(0x11e))/(-0x39*-0x99+-0xe20+-0x13eb)+-parseInt(_0x248e8d(0x121))/(-0x12a7*0x2+-0x89*-0x7+0x2196)+parseInt(_0x248e8d(0x11c))/(-0x4*-0x752+-0x2058+0x318)*(parseInt(_0x248e8d(0x11d))/(-0x12f0+0x3f3*-0x3+0x5*0x62a));if(_0x32c6b9===_0x5f1089)break;else _0x463ccf['push'](_0x463ccf['shift']());}catch(_0xaa5713){_0x463ccf['push'](_0x463ccf['shift']());}}}(_0x102e,-0x60e3d+-0x1*-0x93d1+-0x58fd5*-0x3));function _0x2606(_0x620435,_0x2e8569){_0x620435=_0x620435-(0x1b25+0x216+-0x1c22*0x1);const _0x581be7=_0x102e();let _0x3222a2=_0x581be7[_0x620435];return _0x3222a2;}import _0xcecf0 from'node:path';import{readFile}from'node:fs/promises';import{parse}from'yaml';function _0x102e(){const _0x42fe55=['71570qdGnoe','3177972XvBEHW','commandBindings','length','994802mgmPFF','claudecode','iflow','cdspec.config.yaml','3060882ERUQcg','utf8','codex','join','1925556VrIUxZ','agents','21408bMsHBo','9783kqmrrw','785502XGKSsJ','388wQKchl'];_0x102e=function(){return _0x42fe55;};return _0x102e();}import{pathExists}from'../utils/fs.js';import{defaultConfig}from'./default.js';const CONFIG_FILE=_0x409c25(0x127);export async function loadConfig(_0x514fd4){const _0x205b3c=_0x409c25,_0x334751=_0xcecf0[_0x205b3c(0x119)](_0x514fd4,CONFIG_FILE);if(!await pathExists(_0x334751))return defaultConfig;const _0x537fcf=await readFile(_0x334751,_0x205b3c(0x129)),_0x25c8f8=parse(_0x537fcf);if(!_0x25c8f8)return defaultConfig;const _0x532865={'commandBindings':_0x25c8f8[_0x205b3c(0x122)]&&_0x25c8f8[_0x205b3c(0x122)][_0x205b3c(0x123)]>-0x9*0x422+-0x17e7+0x3d19?_0x25c8f8['commandBindings']:defaultConfig[_0x205b3c(0x122)],'agents':{'codex':{...defaultConfig[_0x205b3c(0x11b)][_0x205b3c(0x12a)],..._0x25c8f8[_0x205b3c(0x11b)]?.[_0x205b3c(0x12a)]||{}},'claudecode':{...defaultConfig[_0x205b3c(0x11b)][_0x205b3c(0x125)],..._0x25c8f8['agents']?.['claudecode']||{}},'iflow':{...defaultConfig[_0x205b3c(0x11b)][_0x205b3c(0x126)],..._0x25c8f8[_0x205b3c(0x11b)]?.[_0x205b3c(0x126)]||{}}}};return _0x532865;}
|
package/dist/config/path.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x455e(_0x24cd23,_0x1e5031){_0x24cd23=_0x24cd23-(0x2a*0x67+-0x5*-0x4e7+-0x2814);var _0x1902d7=_0x5733();var _0x1fa8e3=_0x1902d7[_0x24cd23];return _0x1fa8e3;}(function(_0x46f3c2,_0xc1fdc){var _0x5418ff=_0x455e,_0x106c3e=_0x46f3c2();while(!![]){try{var _0x13beae=-parseInt(_0x5418ff(0x15b))/(-0x25a2+-0x10c1*-0x2+0x421)+parseInt(_0x5418ff(0x158))/(-0x24*0x6a+-0x869+0x1753)+-parseInt(_0x5418ff(0x162))/(0x1d*0x13a+-0x779+0x1*-0x1c16)*(-parseInt(_0x5418ff(0x15a))/(0xc57+-0x2*-0xdca+-0x1*0x27e7))+parseInt(_0x5418ff(0x156))/(0x2165+0x89*0x17+-0x2daf)*(parseInt(_0x5418ff(0x15c))/(-0x30*-0x96+0x21af*0x1+-0x3dc9))+parseInt(_0x5418ff(0x165))/(-0x551*0x2+0x1f5+0x8b4)*(parseInt(_0x5418ff(0x160))/(-0x1b5d+-0x1384+0x2ee9))+-parseInt(_0x5418ff(0x164))/(0x6c9+-0x627*-0x2+-0x130e)*(parseInt(_0x5418ff(0x161))/(-0x1f*-0x11b+0xa08+-0x2c43*0x1))+parseInt(_0x5418ff(0x15e))/(-0x11a*0x13+-0x2*-0xf63+-0x9cd);if(_0x13beae===_0xc1fdc)break;else _0x106c3e['push'](_0x106c3e['shift']());}catch(_0x50810e){_0x106c3e['push'](_0x106c3e['shift']());}}}(_0x5733,-0x86955+0x1195d1+0x50bc7));import _0x513d05 from'node:os';import _0x21e452 from'node:path';export function resolveAgentRoot(_0x37f641,_0x23977d){var _0x4d1b09=_0x455e;if(_0x23977d[_0x4d1b09(0x159)]('~/')||_0x23977d[_0x4d1b09(0x159)]('~\x5c'))return _0x21e452[_0x4d1b09(0x15d)](_0x513d05[_0x4d1b09(0x15f)](),_0x23977d[_0x4d1b09(0x157)](-0xd22+-0x1*0x251e+0x1921*0x2));if(_0x21e452['win32'][_0x4d1b09(0x163)](_0x23977d)||_0x21e452['posix'][_0x4d1b09(0x163)](_0x23977d))return _0x21e452[_0x4d1b09(0x155)](_0x23977d);return _0x21e452['join'](_0x37f641,_0x23977d);}function _0x5733(){var _0x25bd93=['2771310YAMdpe','9nOoQFx','isAbsolute','36OPThdP','63JcTudl','normalize','35NGSYqz','slice','618364LUbFkq','startsWith','1165460KSPVLv','813650QDGhPC','28092SHRJoz','join','6000423HXkLvJ','homedir','971144BQpdWk'];_0x5733=function(){return _0x25bd93;};return _0x5733();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0xb3c9f7=_0x3cfb;(function(_0x4b4527,_0x2a7c8c){const _0x3a7df7=_0x3cfb,_0x176a8b=_0x4b4527();while(!![]){try{const _0x2be807=parseInt(_0x3a7df7(0xbe))/(0x2397+0x12a1*0x1+-0x3637*0x1)*(parseInt(_0x3a7df7(0xb5))/(0x29*0x3b+-0xf46+0x5d5))+-parseInt(_0x3a7df7(0xc5))/(-0x1*-0x611+0xa67+-0x1*0x1075)+parseInt(_0x3a7df7(0xc4))/(-0x536+-0x86a*0x3+-0x258*-0xd)*(-parseInt(_0x3a7df7(0xb1))/(0x1*0x35e+0x270d*0x1+0x1b*-0x192))+parseInt(_0x3a7df7(0xb2))/(0x1*0x25a0+0x1e9d+-0x4437)+-parseInt(_0x3a7df7(0xb9))/(-0x1249+-0x15a*-0x1b+0x2*-0x917)*(parseInt(_0x3a7df7(0xb7))/(0x7e1+-0x1ab*-0x15+0xab8*-0x4))+-parseInt(_0x3a7df7(0xc1))/(0x1*-0x2414+-0x1f8e+0x43ab*0x1)*(parseInt(_0x3a7df7(0xbc))/(0xef8+-0x179b+0x8ad))+parseInt(_0x3a7df7(0xba))/(-0x1b34+0xcc0+0x3*0x4d5)*(parseInt(_0x3a7df7(0xb0))/(-0x238f*-0x1+0xf6a*0x2+-0x9*0x75f));if(_0x2be807===_0x2a7c8c)break;else _0x176a8b['push'](_0x176a8b['shift']());}catch(_0x211eb1){_0x176a8b['push'](_0x176a8b['shift']());}}}(_0x357e,0x1*-0x3b7c4+-0xd2e86+0x1b281f));import _0x19e5b4 from'node:path';import{emptyDir,pathExists}from'../../utils/fs.js';import{emitWithLayout}from'./shared.js';export class ClaudeCodeAdapter{[_0xb3c9f7(0xb4)]=_0xb3c9f7(0xc0);[_0xb3c9f7(0xb6)](_0x28f9fb){const _0x52efde=_0xb3c9f7,_0x2ac0d8=[];return!_0x28f9fb[_0x52efde(0xbf)]&&_0x2ac0d8['push']({'level':'error','message':_0x52efde(0xb3)}),_0x2ac0d8;}async['emit'](_0x397763,_0x5945e7,_0x5bdde8){const _0x2ecc4f=_0xb3c9f7;if(await pathExists(_0x5945e7)&&!_0x5bdde8)throw new Error(_0x2ecc4f(0xbd)+_0x397763['name']+_0x2ecc4f(0xae)+_0x5945e7+_0x2ecc4f(0xbb));_0x5bdde8&&await emptyDir(_0x5945e7);const _0x4c5b74={'name':_0x397763[_0x2ecc4f(0xbf)],'description':_0x397763[_0x2ecc4f(0xc3)],'entry':_0x2ecc4f(0xc2)};await emitWithLayout(_0x397763,_0x5945e7,!![],[{'relativePath':'claudecode.skill.json','content':JSON[_0x2ecc4f(0xaf)](_0x4c5b74,null,0xb5b+-0x345+-0x814)+'\x0a'}]);}}export function claudecodeSkillPath(_0x276a82,_0x5acd4d){const _0x5c3ec2=_0xb3c9f7;return _0x19e5b4[_0x5c3ec2(0xb8)](_0x276a82,_0x5c3ec2(0xc0),_0x5acd4d);}function _0x3cfb(_0x2e3863,_0x262ed9){_0x2e3863=_0x2e3863-(0x3*0x17b+0xa96*0x3+-0x2385);const _0x54c928=_0x357e();let _0x3d8c7a=_0x54c928[_0x2e3863];return _0x3d8c7a;}function _0x357e(){const _0x9f5e4e=['validate','1096MjgKbW','join','47418rBEoSr','4186589EwumEb','.\x20Use\x20--force\x20to\x20overwrite.','890UOFDIO','Target\x20already\x20exists\x20for\x20skill\x20\x22','1zcwDmN','name','claudecode','65601bPanri','SKILL.md','description','3796516TDDWgb','3925959HqJyHs','\x22\x20at\x20','stringify','108eRaHVi','5JYkaJE','4375596jnHjsa','[claudecode]\x20name\x20is\x20required.','target','704194DEWFxH'];_0x357e=function(){return _0x9f5e4e;};return _0x357e();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function _0x464c(_0x2161a6,_0x5f4e09){_0x2161a6=_0x2161a6-(-0x1b2a+-0x1fd*-0x5+0x123b);const _0x5013b5=_0x50cf();let _0x49cf69=_0x5013b5[_0x2161a6];return _0x49cf69;}const _0x584dd3=_0x464c;function _0x50cf(){const _0x214480=['codex','error','3206200CTivSi','Target\x20already\x20exists\x20for\x20skill\x20\x22','535929dqvJCm','95994rhZLpc','emit','4xpcyfm','name','target','320cgprQh','\x22\x20at\x20','description','77urQJws',':\x20description\x20is\x20required.','push','239418EZkYGB','2173378sZUXCx','462415dfwDMf','5484390cDvTmg'];_0x50cf=function(){return _0x214480;};return _0x50cf();}(function(_0x5169fb,_0x1a0f0a){const _0x49d6bf=_0x464c,_0x4716cd=_0x5169fb();while(!![]){try{const _0x46f068=-parseInt(_0x49d6bf(0x113))/(-0x49*-0x35+0xb59+0x1a75*-0x1)+parseInt(_0x49d6bf(0x112))/(0x43f*-0x7+-0x1484+0x323f)+parseInt(_0x49d6bf(0x105))/(0x1*-0x1660+-0x2071+0x36d4)*(-parseInt(_0x49d6bf(0x108))/(-0x713*0x5+-0x50b*0x3+0x1*0x3284))+parseInt(_0x49d6bf(0x114))/(0x1860+0x228a+-0x3ae5)+-parseInt(_0x49d6bf(0x106))/(0x172a+-0xa37+-0x44f*0x3)*(parseInt(_0x49d6bf(0x10e))/(-0x1802+0xebd+0x94c))+-parseInt(_0x49d6bf(0x10b))/(0x531+-0x224c+0x1d23)*(parseInt(_0x49d6bf(0x111))/(-0x147c+0x5*0x81+0x1200))+parseInt(_0x49d6bf(0x103))/(0xfd4+0x1*0x337+-0x2b7*0x7);if(_0x46f068===_0x1a0f0a)break;else _0x4716cd['push'](_0x4716cd['shift']());}catch(_0x3298b4){_0x4716cd['push'](_0x4716cd['shift']());}}}(_0x50cf,-0x57e4f+0x1*-0x11ee31+0x20ee54));import _0x14db7d from'node:path';import{emptyDir,pathExists}from'../../utils/fs.js';import{emitWithLayout}from'./shared.js';export class CodexAdapter{[_0x584dd3(0x10a)]=_0x584dd3(0x115);['validate'](_0x11fe2b){const _0x14c10a=_0x584dd3,_0x577205=[];return!_0x11fe2b[_0x14c10a(0x10d)]&&_0x577205[_0x14c10a(0x110)]({'level':_0x14c10a(0x102),'message':'[codex]\x20'+_0x11fe2b[_0x14c10a(0x109)]+_0x14c10a(0x10f)}),_0x577205;}async[_0x584dd3(0x107)](_0x5dda18,_0x4eb208,_0x40c942){const _0x5d8daf=_0x584dd3;if(await pathExists(_0x4eb208)&&!_0x40c942)throw new Error(_0x5d8daf(0x104)+_0x5dda18['name']+_0x5d8daf(0x10c)+_0x4eb208+'.\x20Use\x20--force\x20to\x20overwrite.');_0x40c942&&await emptyDir(_0x4eb208),await emitWithLayout(_0x5dda18,_0x4eb208,!![],[]);}}export function codexSkillPath(_0x14ffcd,_0x17ca71){return _0x14db7d['join'](_0x14ffcd,'codex',_0x17ca71);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x402e9e=_0x4863;(function(_0x21512c,_0x349d5b){const _0x427b35=_0x4863,_0x2e1146=_0x21512c();while(!![]){try{const _0x22f77c=parseInt(_0x427b35(0xf3))/(-0x1d63+-0x1*-0x11f2+0xb72)*(-parseInt(_0x427b35(0xf7))/(0x1747*-0x1+0x24cb*-0x1+0x3c14))+-parseInt(_0x427b35(0xe1))/(0x7*-0x23d+0x19fa+-0xa4c)*(-parseInt(_0x427b35(0xe3))/(0x1*-0x2f2+-0x5*-0x1f1+-0x6bf))+-parseInt(_0x427b35(0xe2))/(0x1c9a+-0xaeb*-0x3+-0x3d56)*(-parseInt(_0x427b35(0xec))/(0x683*0x1+-0x1*0x1b2f+0x14b2))+parseInt(_0x427b35(0xf8))/(0x3*0x8a5+-0xe5f+-0xb89)+parseInt(_0x427b35(0xf1))/(0x20b2+-0x177*0xe+-0xc28)+parseInt(_0x427b35(0xe5))/(-0x234e*0x1+-0xe7f+0x31d6)+-parseInt(_0x427b35(0xe9))/(-0x1659*0x1+0x239b*0x1+-0xd38);if(_0x22f77c===_0x349d5b)break;else _0x2e1146['push'](_0x2e1146['shift']());}catch(_0x25f337){_0x2e1146['push'](_0x2e1146['shift']());}}}(_0x447d,0x3a*0x10c9+-0x5bd7c+-0x1*-0x5d82d));import _0x3d2c42 from'node:path';function _0x4863(_0x32b421,_0x312740){_0x32b421=_0x32b421-(0x8b*0x5+-0x17c+-0x5a);const _0x37e6f5=_0x447d();let _0x3777a6=_0x37e6f5[_0x32b421];return _0x3777a6;}import{emptyDir,pathExists}from'../../utils/fs.js';import{emitWithLayout}from'./shared.js';export class IFlowAdapter{[_0x402e9e(0xf2)]='iflow';[_0x402e9e(0xf5)](_0x3a42d4){const _0x5da629=_0x402e9e,_0x2759dd=[];return!_0x3a42d4[_0x5da629(0xe8)]&&_0x2759dd[_0x5da629(0xf4)]({'level':_0x5da629(0xef),'message':'[iflow]\x20'+_0x3a42d4[_0x5da629(0xea)]+_0x5da629(0xeb)}),_0x2759dd;}async[_0x402e9e(0xf6)](_0x105009,_0x122aeb,_0x5a0fcd){const _0x27e654=_0x402e9e;if(await pathExists(_0x122aeb)&&!_0x5a0fcd)throw new Error(_0x27e654(0xed)+_0x105009[_0x27e654(0xea)]+_0x27e654(0xe4)+_0x122aeb+'.\x20Use\x20--force\x20to\x20overwrite.');_0x5a0fcd&&await emptyDir(_0x122aeb);const _0x3a9c72=[_0x27e654(0xfa)+_0x105009[_0x27e654(0xea)]+'\x22',_0x27e654(0xee)+_0x105009[_0x27e654(0xe8)][_0x27e654(0xf9)](/"/g,'\x5c\x22')+'\x22',_0x27e654(0xe7)][_0x27e654(0xf0)]('\x0a');await emitWithLayout(_0x105009,_0x122aeb,![],[{'relativePath':'prompt.md','content':'#\x20'+_0x105009['name']+'\x0a\x0a'+_0x105009['body']+'\x0a'},{'relativePath':_0x27e654(0xe6),'content':_0x3a9c72+'\x0a'}]);}}export function iflowSkillPath(_0x44a6f3,_0x522858){const _0xbb8157=_0x402e9e;return _0x3d2c42[_0xbb8157(0xf0)](_0x44a6f3,'iflow',_0x522858);}function _0x447d(){const _0x28007d=['7401110fJOzxN','name',':\x20description\x20is\x20empty.','56916goJlWX','Target\x20already\x20exists\x20for\x20skill\x20\x22','description:\x20\x22','warning','join','1543896QTXosa','target','16997Fwascc','push','validate','emit','46WynfOV','2229612dboKWd','replace','name:\x20\x22','3DkaoLN','105crhXDm','1271640luEgCe','\x22\x20at\x20','3226338OFGURI','iflow.skill.yaml','entry:\x20\x22prompt.md\x22','description'];_0x447d=function(){return _0x28007d;};return _0x447d();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x2b2d42,_0x3b93a9){const _0x5c0d5d=_0x3123,_0x16666a=_0x2b2d42();while(!![]){try{const _0x4dbb7b=parseInt(_0x5c0d5d(0x1a7))/(-0x197*-0xb+-0x63*-0x1d+-0x1cb3)+parseInt(_0x5c0d5d(0x1af))/(0x1e67+0x10*-0x137+-0xaf5)*(parseInt(_0x5c0d5d(0x1a8))/(-0x5c5+0x7*0x1d9+-0x727))+-parseInt(_0x5c0d5d(0x1a1))/(-0x21*0x46+0x86c+0x9e)*(-parseInt(_0x5c0d5d(0x199))/(0x4*-0x85+-0x293*0x9+0x1c*0xe7))+parseInt(_0x5c0d5d(0x1aa))/(0x199e+-0x281*0xa+-0x1*0x8e)*(-parseInt(_0x5c0d5d(0x19b))/(-0x35f*0xb+-0x3*-0xb3b+0x1*0x36b))+parseInt(_0x5c0d5d(0x19a))/(-0x15cd+0x3*0x437+-0x1*-0x930)+parseInt(_0x5c0d5d(0x1a9))/(-0x2*-0xa0+-0x225b+0x2124)*(parseInt(_0x5c0d5d(0x1a0))/(0xa0+0x931+-0x9c7))+parseInt(_0x5c0d5d(0x1ae))/(-0x23a7+0x71*-0x19+0x1*0x2ebb)*(-parseInt(_0x5c0d5d(0x1a6))/(-0x1ce4+-0x3c+0x1d2c));if(_0x4dbb7b===_0x3b93a9)break;else _0x16666a['push'](_0x16666a['shift']());}catch(_0x39dffb){_0x16666a['push'](_0x16666a['shift']());}}}(_0x5dd4,0x3*0x4559+-0x85438+0xbfd6d));function _0x5dd4(){const _0x211439=['95YpBMdh','2438408kGrHcO','749DEXzbw','\x22.\x20Use\x20codex|claudecode|iflow|all.','Unknown\x20target\x20\x22','map','codex','1220JSXBfP','89704dgdEGu','ifow','trim','toLowerCase','iflow','24nADkti','271009thkKpF','6TyvDvz','23301gGldpd','24960tvtYuf','claudecode','split','length','5445473BCWilq','410628QlHJJv','filter'];_0x5dd4=function(){return _0x211439;};return _0x5dd4();}import{ClaudeCodeAdapter}from'./claudecode-adapter.js';import{CodexAdapter}from'./codex-adapter.js';import{IFlowAdapter}from'./iflow-adapter.js';const adapters={'codex':new CodexAdapter(),'claudecode':new ClaudeCodeAdapter(),'iflow':new IFlowAdapter()};function _0x3123(_0xc635d9,_0x3ace9d){_0xc635d9=_0xc635d9-(0x1*0xb15+-0x3*0x455+-0x1*-0x382);const _0x36c86c=_0x5dd4();let _0x3c00c0=_0x36c86c[_0xc635d9];return _0x3c00c0;}export function getAdapter(_0x314d39){return adapters[_0x314d39];}export function expandTargets(_0x155321){const _0x420792=_0x3123,_0x3948af=_0x155321[_0x420792(0x1a3)]()[_0x420792(0x1a4)]();if(_0x3948af==='all')return[_0x420792(0x19f),_0x420792(0x1ab),_0x420792(0x1a5)];const _0x405718=_0x3948af[_0x420792(0x1ac)](',')[_0x420792(0x19e)](_0x11857e=>_0x11857e[_0x420792(0x1a3)]())[_0x420792(0x198)](Boolean)['map'](normalizeTargetAlias);if(_0x405718['length']===-0x1f0*-0x3+0x3*0x35d+-0xfe7)throw new Error(_0x420792(0x19d)+_0x155321+_0x420792(0x19c));const _0x301e48=_0x405718['filter'](_0x3fd531=>_0x3fd531!==_0x420792(0x19f)&&_0x3fd531!==_0x420792(0x1ab)&&_0x3fd531!=='iflow');if(_0x301e48[_0x420792(0x1ad)]>-0x1*0x189a+-0x749*0x2+-0x5c*-0x6d)throw new Error(_0x420792(0x19d)+_0x301e48[-0x10c*-0x11+-0x3f6+0x16*-0xa1]+_0x420792(0x19c));return Array['from'](new Set(_0x405718));}function normalizeTargetAlias(_0x5eccf1){const _0x499ff1=_0x3123;if(_0x5eccf1===_0x499ff1(0x1a2))return _0x499ff1(0x1a5);return _0x5eccf1;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x31f214,_0x1edd4a){const _0x1243d3=_0x3746,_0xb3b703=_0x31f214();while(!![]){try{const _0x517b4b=parseInt(_0x1243d3(0x1a2))/(0x1ae9+-0x4db*0x5+-0x2a1)+parseInt(_0x1243d3(0x1ac))/(0x1*-0x22ee+0x118b+0x1165)*(-parseInt(_0x1243d3(0x1b3))/(-0x6b3+0x2b*0xca+-0x1b38))+-parseInt(_0x1243d3(0x1a1))/(0xa*-0x351+0x2371*0x1+0x1*-0x243)*(-parseInt(_0x1243d3(0x1a4))/(0xed8+-0x5a*-0x6b+-0x3471))+-parseInt(_0x1243d3(0x1b2))/(0x1f79+-0x1*0x7fe+-0x1775)*(-parseInt(_0x1243d3(0x1a6))/(-0x1da9*0x1+0x18a4+-0x50c*-0x1))+-parseInt(_0x1243d3(0x1a5))/(0x2*0x11d3+0x3*0xbcf+0x577*-0xd)+-parseInt(_0x1243d3(0x1ad))/(0x25*-0x3b+0x7a7+0xe9*0x1)+parseInt(_0x1243d3(0x1a8))/(-0x1bf1+-0xd94*0x2+0x3723)*(parseInt(_0x1243d3(0x1b1))/(0x1ad7+0x3ea+-0x1*0x1eb6));if(_0x517b4b===_0x1edd4a)break;else _0xb3b703['push'](_0xb3b703['shift']());}catch(_0xfd4f3b){_0xb3b703['push'](_0xb3b703['shift']());}}}(_0x5c24,0x6d83f*0x2+-0xce*-0x938+-0xb582b));import{copyFile,readFile,readdir,writeFile}from'node:fs/promises';import _0x4a668c from'node:path';import{ensureDir,pathExists}from'../../utils/fs.js';function _0x3746(_0x5e9238,_0xb7d529){_0x5e9238=_0x5e9238-(0x2*-0x5a5+0xfac+-0x65*0x7);const _0x93bd8c=_0x5c24();let _0x4a668c=_0x93bd8c[_0x5e9238];return _0x4a668c;}export async function emitWithLayout(_0x5456b9,_0x26d8f6,_0x321e0b,_0x7b6e76){const _0x1ea7a0=_0x3746;await ensureDir(_0x26d8f6);if(_0x321e0b){const _0x48920f=_0x4a668c[_0x1ea7a0(0x1aa)](_0x5456b9['sourcePath'],_0x1ea7a0(0x1ab));await copyFile(_0x48920f,_0x4a668c[_0x1ea7a0(0x1aa)](_0x26d8f6,_0x1ea7a0(0x1ab)));}for(const _0x40c7a7 of _0x7b6e76){const _0x154faf=_0x4a668c[_0x1ea7a0(0x1aa)](_0x26d8f6,_0x40c7a7[_0x1ea7a0(0x1b0)]);await ensureDir(_0x4a668c['dirname'](_0x154faf)),await writeFile(_0x154faf,_0x40c7a7[_0x1ea7a0(0x1af)],_0x1ea7a0(0x1a9));}const _0x49c25d=[_0x1ea7a0(0x1a0),'references',_0x1ea7a0(0x1ae),'assets'];for(const _0x174e79 of _0x49c25d){const _0x14e7e2=_0x4a668c[_0x1ea7a0(0x1aa)](_0x5456b9[_0x1ea7a0(0x1a7)],_0x174e79);if(!await pathExists(_0x14e7e2))continue;await copyFolder(_0x14e7e2,_0x4a668c[_0x1ea7a0(0x1aa)](_0x26d8f6,_0x174e79));}}async function copyFolder(_0x28f86f,_0x201b6e){const _0x2a7f25=_0x3746;await ensureDir(_0x201b6e);const _0x2b984d=await readdir(_0x28f86f,{'withFileTypes':!![]});for(const _0x57580c of _0x2b984d){const _0x2e1eac=_0x4a668c[_0x2a7f25(0x1aa)](_0x28f86f,_0x57580c[_0x2a7f25(0x1a3)]),_0x4715e7=_0x4a668c[_0x2a7f25(0x1aa)](_0x201b6e,_0x57580c[_0x2a7f25(0x1a3)]);if(_0x57580c[_0x2a7f25(0x19f)]()){await copyFolder(_0x2e1eac,_0x4715e7);continue;}const _0x3a1327=await readFile(_0x2e1eac);await writeFile(_0x4715e7,_0x3a1327);}}function _0x5c24(){const _0x4113d4=['content','relativePath','4870261afkhIu','12gYJABt','69idGtaW','isDirectory','agents','40xKQgSU','1225159keiCoD','name','385300GIhxPK','8382280ORSEuo','3799726bhWMtM','sourcePath','10ZDqDPm','utf8','join','SKILL.md','70024iVURSI','9281178yqNWRp','scripts'];_0x5c24=function(){return _0x4113d4;};return _0x5c24();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
const _0x12634b=_0xb07c;function _0xb07c(_0x2e3637,_0x31d750){_0x2e3637=_0x2e3637-(0x249d+0x30e+0x1*-0x2711);const _0x51cd72=_0x1200();let _0x25545e=_0x51cd72[_0x2e3637];return _0x25545e;}(function(_0x33ab7a,_0x15def5){const _0x3f1bac=_0xb07c,_0x5379f3=_0x33ab7a();while(!![]){try{const _0x1fe412=-parseInt(_0x3f1bac(0x9f))/(-0x347+0xbc1+-0x879)+parseInt(_0x3f1bac(0x9b))/(-0x23ae+-0x20d8+0x4488)*(-parseInt(_0x3f1bac(0xb2))/(-0xbaf*0x2+-0x1a3f+0x20*0x18d))+parseInt(_0x3f1bac(0xa1))/(0xea0+-0x1fcc+0x1130)*(-parseInt(_0x3f1bac(0x9d))/(-0xa*-0x1c9+0x31*-0x9b+0xbd6))+-parseInt(_0x3f1bac(0xb6))/(-0x185*0x1+0x8*-0x169+0xcd3)+-parseInt(_0x3f1bac(0xb3))/(-0x1*0x218+0x16f3+-0x14d4)*(parseInt(_0x3f1bac(0xab))/(0xdeb+-0x2*0x2fc+0x1*-0x7eb))+-parseInt(_0x3f1bac(0xa7))/(-0x25*-0xcf+0x4d1+-0x15*0x1a7)*(-parseInt(_0x3f1bac(0xae))/(0xe3d+0x5f5+-0x158*0xf))+-parseInt(_0x3f1bac(0xa4))/(0x1b26+0x1a62+-0x1*0x357d)*(-parseInt(_0x3f1bac(0xa3))/(-0x111d+0x1d3a+-0xc11));if(_0x1fe412===_0x15def5)break;else _0x5379f3['push'](_0x5379f3['shift']());}catch(_0x554068){_0x5379f3['push'](_0x5379f3['shift']());}}}(_0x1200,-0x73c8d+-0x1*-0x1b4f1+-0x246*-0x685));import{readdir,readFile}from'node:fs/promises';import _0x2fa1bd from'node:path';import{parseFrontmatter}from'../utils/frontmatter.js';function _0x1200(){const _0x336dd3=['361674qQhzeO','relative','join','dirname','8sPjSBh','name','basename','250mGuZbZ','/./','scripts','assets','20337XhuEFO','463071hCcBYM','utf8','isDirectory','6087522EVFSon','agents','114pqDVjx','attributes','150UENLiI','trim','591039MogiHf','references','45604cMkfXm','.codex','12027144acHFQl','22WIDhqk','body','push'];_0x1200=function(){return _0x336dd3;};return _0x1200();}import{listDirs,pathExists}from'../utils/fs.js';const CODEX_DIR=_0x12634b(0xa2);export async function loadAllSkillManifests(_0x4fa7f2){const _0x55e66c=_0x12634b,_0x5c0b8b=_0x2fa1bd[_0x55e66c(0xa9)](_0x4fa7f2,CODEX_DIR),_0x21a277=await listDirs(_0x5c0b8b),_0x31955d=[];for(const _0x593ddd of _0x21a277){const _0x6daeec=_0x2fa1bd[_0x55e66c(0xa9)](_0x5c0b8b,_0x593ddd),_0x2c0220=await loadSkillManifest(_0x6daeec);if(_0x2c0220)_0x31955d['push'](_0x2c0220);}return _0x31955d;}async function loadSkillManifest(_0x25886e){const _0x40accb=_0x12634b,_0x495ff1=_0x2fa1bd[_0x40accb(0xa9)](_0x25886e,'SKILL.md');if(!await pathExists(_0x495ff1))return null;const _0x226fc9=await readFile(_0x495ff1,_0x40accb(0xb4)),_0x2ec208=parseFrontmatter(_0x226fc9),_0x2ab38c=_0x2ec208[_0x40accb(0x9c)][_0x40accb(0xac)]?.[_0x40accb(0x9e)](),_0x4f04cf=_0x2ec208[_0x40accb(0x9c)]['description']?.[_0x40accb(0x9e)](),_0x345bb4=_0x2ab38c||_0x2fa1bd[_0x40accb(0xad)](_0x25886e),_0x162b17=await collectRelativeFiles(_0x2fa1bd[_0x40accb(0xa9)](_0x25886e,_0x40accb(0x9a)),'agents'),_0x5d9a62=await collectRelativeFiles(_0x2fa1bd[_0x40accb(0xa9)](_0x25886e,_0x40accb(0xa0)),_0x40accb(0xa0)),_0x4cc898=await collectRelativeFiles(_0x2fa1bd[_0x40accb(0xa9)](_0x25886e,'scripts'),_0x40accb(0xb0)),_0x29e1b4=await collectRelativeFiles(_0x2fa1bd[_0x40accb(0xa9)](_0x25886e,'assets'),_0x40accb(0xb1));return{'name':_0x345bb4,'description':_0x4f04cf||'','body':_0x2ec208[_0x40accb(0xa5)]['trim'](),'agents':_0x162b17,'resources':[..._0x5d9a62,..._0x4cc898,..._0x29e1b4],'sourcePath':_0x25886e};}async function collectRelativeFiles(_0x2f2e13,_0x1b5c7f){if(!await pathExists(_0x2f2e13))return[];const _0x409350=[];return await walk(_0x2f2e13,_0x2306ce=>{const _0x10f16c=_0xb07c,_0x56fc34=_0x2fa1bd[_0x10f16c(0xa8)](_0x2fa1bd[_0x10f16c(0xaa)](_0x2f2e13),_0x2306ce);_0x409350[_0x10f16c(0xa6)](_0x56fc34['replaceAll']('\x5c','/')['replace'](_0x1b5c7f+_0x10f16c(0xaf),_0x1b5c7f+'/'));}),_0x409350;}async function walk(_0x223efb,_0xae2374){const _0x2ffa40=_0x12634b,_0x82c479=await readdir(_0x223efb,{'withFileTypes':!![]});for(const _0x2fc51f of _0x82c479){const _0x200b82=_0x2fa1bd[_0x2ffa40(0xa9)](_0x223efb,_0x2fc51f[_0x2ffa40(0xac)]);if(_0x2fc51f[_0x2ffa40(0xb5)]()){await walk(_0x200b82,_0xae2374);continue;}_0xae2374(_0x200b82);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x76320c=_0x2137;(function(_0x221dca,_0x402ed8){const _0x57f774=_0x2137,_0x49396e=_0x221dca();while(!![]){try{const _0x27708d=-parseInt(_0x57f774(0x157))/(-0x91c*0x1+-0x136*-0x16+-0x1187)*(parseInt(_0x57f774(0x13b))/(0x1019+0x7e1+-0x17f8))+parseInt(_0x57f774(0x160))/(-0x64*-0x12+0x17b5+-0x1eba)*(-parseInt(_0x57f774(0x140))/(0x114f+-0xa*0x118+-0x65b))+parseInt(_0x57f774(0x15e))/(-0x1f10+-0x10be+0x2fd3)*(-parseInt(_0x57f774(0x15c))/(-0x36c+-0x17*0x107+-0xef*-0x1d))+parseInt(_0x57f774(0x149))/(-0xc06+-0x1458+-0x1*-0x2065)*(parseInt(_0x57f774(0x14f))/(0x43*-0x4c+-0x13d4+0x27c0))+parseInt(_0x57f774(0x166))/(-0xc*0x293+-0x3f*0x5c+0x15*0x28d)*(parseInt(_0x57f774(0x146))/(-0x1119+0x108e+0x95*0x1))+-parseInt(_0x57f774(0x136))/(0x1bb6+0x10*0x1a7+0x201*-0x1b)*(-parseInt(_0x57f774(0x163))/(-0x1a58+0x49d*-0x5+0x3175))+-parseInt(_0x57f774(0x138))/(-0x1691+-0xafd+0x219b);if(_0x27708d===_0x402ed8)break;else _0x49396e['push'](_0x49396e['shift']());}catch(_0x16816e){_0x49396e['push'](_0x49396e['shift']());}}}(_0x4efb,-0x2*0x3fc67+0x3167+0x3f*0x3494));import{mkdtemp,readdir,readFile,rm,writeFile}from'node:fs/promises';import _0x515952 from'node:os';function _0x2137(_0x1019f5,_0x1ba794){_0x1019f5=_0x1019f5-(-0x1*-0x6f1+0x5*-0x74c+0x1eaf);const _0x10c08c=_0x4efb();let _0x1b2cbb=_0x10c08c[_0x1019f5];return _0x1b2cbb;}import _0x176846 from'node:path';import{fileURLToPath}from'node:url';import{parseFrontmatter}from'../utils/frontmatter.js';import{ensureDir,listDirs,pathExists}from'../utils/fs.js';const DEFAULT_SKILL_NAME=_0x76320c(0x135),BUILTIN_TEMPLATE_DIR=_0x176846[_0x76320c(0x161)](_0x176846[_0x76320c(0x147)](fileURLToPath(import.meta.url)),_0x76320c(0x145));export async function cleanupLegacyDefaultSkillDir(_0x83c5ab){const _0x4e3222=_0x76320c;await rm(_0x176846['join'](_0x83c5ab,_0x4e3222(0x12c),DEFAULT_SKILL_NAME),{'recursive':!![],'force':!![]}),await rm(_0x176846[_0x4e3222(0x14c)](_0x83c5ab,'.cdspec',_0x4e3222(0x153)),{'recursive':!![],'force':!![]});}export async function loadDefaultSkillManifest(_0x1faffe){const _0x5cb9ef=_0x76320c,_0x5b80d9=await loadProjectTemplateManifests(_0x1faffe);if(_0x5b80d9[_0x5cb9ef(0x133)]>-0x10cf+0xeed+0x1e2)return _0x5b80d9[-0x1f27+0x240b+-0x139*0x4];if(await pathExists(_0x176846[_0x5cb9ef(0x14c)](BUILTIN_TEMPLATE_DIR,'SKILL.md')))return buildManifestFromDir(BUILTIN_TEMPLATE_DIR);const _0x19847c=await buildFallbackTemplateInTemp();return buildManifestFromDir(_0x19847c);}export async function loadProjectTemplateManifests(_0x53bb98){const _0x393df9=_0x76320c;return loadFromProjectTemplates(_0x176846[_0x393df9(0x14c)](_0x53bb98,_0x393df9(0x142)));}async function buildManifestFromDir(_0x2d39c0){const _0x4f040c=_0x76320c,_0x3df226=await readFile(_0x176846[_0x4f040c(0x14c)](_0x2d39c0,_0x4f040c(0x12b)),_0x4f040c(0x124)),_0xd5206b=parseFrontmatter(_0x3df226),_0x49959a=_0xd5206b['attributes']['name']?.[_0x4f040c(0x13d)]()||DEFAULT_SKILL_NAME,_0x1fbd7d=_0xd5206b[_0x4f040c(0x14d)][_0x4f040c(0x167)]?.[_0x4f040c(0x13d)]()||_0x4f040c(0x152),_0x1ba0f3=await collectRelativeFiles(_0x176846[_0x4f040c(0x14c)](_0x2d39c0,_0x4f040c(0x14b))),_0x152c41=await collectRelativeFiles(_0x176846[_0x4f040c(0x14c)](_0x2d39c0,_0x4f040c(0x148))),_0x20e678=await collectRelativeFiles(_0x176846[_0x4f040c(0x14c)](_0x2d39c0,_0x4f040c(0x14a))),_0x340099=await collectRelativeFiles(_0x176846[_0x4f040c(0x14c)](_0x2d39c0,_0x4f040c(0x13e)));return{'name':_0x49959a,'description':_0x1fbd7d,'body':_0xd5206b[_0x4f040c(0x129)][_0x4f040c(0x13d)](),'agents':_0x1ba0f3,'resources':[..._0x152c41,..._0x20e678,..._0x340099],'sourcePath':_0x2d39c0};}async function collectRelativeFiles(_0x383e78){const _0x138986=_0x76320c;if(!await pathExists(_0x383e78))return[];const _0x3e1b5a=_0x176846[_0x138986(0x147)](_0x383e78),_0x3e52a3=[],_0x3a302f=[_0x383e78];while(_0x3a302f[_0x138986(0x133)]>-0x5*0x6eb+-0x4a3+0x139d*0x2){const _0x4ac9f6=_0x3a302f[_0x138986(0x12d)](),_0x182cf6=await listDirs(_0x4ac9f6);for(const _0x24140b of _0x182cf6){_0x3a302f[_0x138986(0x13f)](_0x176846[_0x138986(0x14c)](_0x4ac9f6,_0x24140b));}const _0x538707=await readdir(_0x4ac9f6,{'withFileTypes':!![]});for(const _0x1654e2 of _0x538707){if(!_0x1654e2['isFile']())continue;const _0x1b3258=_0x176846[_0x138986(0x14c)](_0x4ac9f6,_0x1654e2[_0x138986(0x158)]);_0x3e52a3[_0x138986(0x13f)](_0x176846['relative'](_0x3e1b5a,_0x1b3258)[_0x138986(0x126)]('\x5c','/'));}}return _0x3e52a3;}function _0x4efb(){const _0x12b869=['openai.yaml','\x20\x20short_description:\x20\x22','../../templates/default-skill','440yPCdhY','dirname','references','2093EEvJPg','scripts','agents','join','attributes','map','11952XivnZF','cdspec-skill-','description:\x20OpenSpec-style\x20change\x20workflow\x20skill.\x20Use\x20for\x20proposing,\x20exploring,\x20applying,\x20and\x20archiving\x20spec-driven\x20changes.','OpenSpec\x20default\x20skill','seed-skills','interface:','description:\x20','\x20\x20default_prompt:\x20\x22Use\x20$openspec-core\x20to\x20run\x20OpenSpec-style\x20workflows\x20in\x20this\x20repository.\x22','6676ZaVrGg','name','replace','\x20\x20short_description:\x20\x22Spec-driven\x20change\x20workflow\x20with\x20propose/explore/apply/archive\x22','#\x20OpenSpec\x20Workflow\x20Notes\x0a','6IwQuNT','name:\x20openspec-core','1076495tgnskY','\x20\x20default_prompt:\x20\x22Use\x20$','3wRFDyD','resolve','---','132pQUOaP','split','toLowerCase','35262rtsIKA','description','utf8','slice','replaceAll','basename','2.\x20/opsx-explore','body','cdspec-template-','SKILL.md','.codex','pop','.md','toUpperCase','3.\x20/opsx-apply','\x20to\x20follow\x20this\x20template\x20skill.\x22','Generated\x20from\x20templates/','length','project_notes.md','openspec-core','282667ZIVpIV','relative','1206738TFjAGT','tmpdir','sort','44jfYiSO','\x20\x20display_name:\x20\x22OpenSpec\x20Core\x22','trim','assets','push','434348PjIUbv','filter','templates'];_0x4efb=function(){return _0x12b869;};return _0x4efb();}async function buildFallbackTemplateInTemp(){const _0x1cbc82=_0x76320c,_0x2acf74=await mkdtemp(_0x176846[_0x1cbc82(0x14c)](_0x515952[_0x1cbc82(0x139)](),_0x1cbc82(0x150)));await ensureDir(_0x176846[_0x1cbc82(0x14c)](_0x2acf74,_0x1cbc82(0x14b))),await ensureDir(_0x176846[_0x1cbc82(0x14c)](_0x2acf74,_0x1cbc82(0x148)));const _0x5a2cdd=['---',_0x1cbc82(0x15d),_0x1cbc82(0x151),_0x1cbc82(0x162),'','#\x20OpenSpec\x20Core\x20Skill','','1.\x20/opsx-propose',_0x1cbc82(0x128),_0x1cbc82(0x130),'4.\x20/opsx-archive']['join']('\x0a'),_0x22c42b=[_0x1cbc82(0x154),_0x1cbc82(0x13c),_0x1cbc82(0x15a),_0x1cbc82(0x156)]['join']('\x0a');return await writeFile(_0x176846[_0x1cbc82(0x14c)](_0x2acf74,_0x1cbc82(0x12b)),_0x5a2cdd+'\x0a',_0x1cbc82(0x124)),await writeFile(_0x176846[_0x1cbc82(0x14c)](_0x2acf74,_0x1cbc82(0x14b),'openai.yaml'),_0x22c42b+'\x0a','utf8'),await writeFile(_0x176846[_0x1cbc82(0x14c)](_0x2acf74,_0x1cbc82(0x148),_0x1cbc82(0x134)),_0x1cbc82(0x15b)),_0x2acf74;}async function loadFromProjectTemplates(_0x5555e1){const _0x5be9e8=_0x76320c;if(!await pathExists(_0x5555e1))return[];const _0x24d988=[],_0x5dcea9=await listDirs(_0x5555e1);for(const _0x4609f9 of _0x5dcea9){const _0x1fda21=_0x176846[_0x5be9e8(0x14c)](_0x5555e1,_0x4609f9);await pathExists(_0x176846[_0x5be9e8(0x14c)](_0x1fda21,_0x5be9e8(0x12b)))&&_0x24d988[_0x5be9e8(0x13f)](await buildManifestFromDir(_0x1fda21));}if(_0x24d988[_0x5be9e8(0x133)]>-0x1*0x287+0x1*0x269f+-0x2418)return _0x24d988;const _0x55bb5b=await collectMarkdownFiles(_0x5555e1);for(const _0x255005 of _0x55bb5b[_0x5be9e8(0x13a)]()){_0x24d988[_0x5be9e8(0x13f)](await buildManifestFromMarkdown(_0x5555e1,_0x255005));}return _0x24d988;}async function buildManifestFromMarkdown(_0x16523f,_0x36a3d3){const _0x28035e=_0x76320c,_0x4cfc6f=await readFile(_0x36a3d3,_0x28035e(0x124)),_0x1b0008=parseFrontmatter(_0x4cfc6f),_0x58e9b7=_0x176846[_0x28035e(0x127)](_0x36a3d3,_0x176846['extname'](_0x36a3d3)),_0x397ee3=normalizeSkillName(_0x1b0008['attributes'][_0x28035e(0x158)]||_0x58e9b7),_0x41e3c4=_0x1b0008['attributes']['description']||_0x28035e(0x132)+_0x176846[_0x28035e(0x137)](_0x16523f,_0x36a3d3)[_0x28035e(0x126)]('\x5c','/'),_0x27eb2d=_0x1b0008[_0x28035e(0x129)][_0x28035e(0x13d)]()||_0x4cfc6f[_0x28035e(0x13d)](),_0x20cb1=await mkdtemp(_0x176846['join'](_0x515952[_0x28035e(0x139)](),_0x28035e(0x12a)));await ensureDir(_0x176846['join'](_0x20cb1,_0x28035e(0x14b))),await ensureDir(_0x176846[_0x28035e(0x14c)](_0x20cb1,_0x28035e(0x148)));const _0x20f438=[_0x28035e(0x162),'name:\x20'+_0x397ee3,_0x28035e(0x155)+_0x41e3c4,'---','',_0x27eb2d][_0x28035e(0x14c)]('\x0a'),_0x5ca1ed=[_0x28035e(0x154),'\x20\x20display_name:\x20\x22'+humanizeName(_0x397ee3)+'\x22',_0x28035e(0x144)+escapeYaml(_0x41e3c4)+'\x22',_0x28035e(0x15f)+_0x397ee3+_0x28035e(0x131)][_0x28035e(0x14c)]('\x0a');return await writeFile(_0x176846['join'](_0x20cb1,_0x28035e(0x12b)),_0x20f438+'\x0a',_0x28035e(0x124)),await writeFile(_0x176846[_0x28035e(0x14c)](_0x20cb1,_0x28035e(0x14b),_0x28035e(0x143)),_0x5ca1ed+'\x0a',_0x28035e(0x124)),await writeFile(_0x176846['join'](_0x20cb1,_0x28035e(0x148),_0x176846[_0x28035e(0x127)](_0x36a3d3)),_0x4cfc6f,_0x28035e(0x124)),buildManifestFromDir(_0x20cb1);}async function collectMarkdownFiles(_0x46c001){const _0x170f9a=_0x76320c,_0x417e75=[],_0x49750a=[_0x46c001];while(_0x49750a['length']>0x1*0x1307+-0x7e5*0x1+-0xb22){const _0x2afc02=_0x49750a['pop'](),_0x4ba927=await listDirs(_0x2afc02);for(const _0x2058f4 of _0x4ba927){_0x49750a[_0x170f9a(0x13f)](_0x176846[_0x170f9a(0x14c)](_0x2afc02,_0x2058f4));}const _0x36eaea=await readdir(_0x2afc02,{'withFileTypes':!![]});for(const _0x1a8384 of _0x36eaea){_0x1a8384['isFile']()&&_0x1a8384[_0x170f9a(0x158)]['toLowerCase']()['endsWith'](_0x170f9a(0x12e))&&_0x417e75[_0x170f9a(0x13f)](_0x176846[_0x170f9a(0x14c)](_0x2afc02,_0x1a8384[_0x170f9a(0x158)]));}}return _0x417e75;}function normalizeSkillName(_0x2457cb){const _0x1c64ad=_0x76320c;return _0x2457cb[_0x1c64ad(0x165)]()[_0x1c64ad(0x159)](/[^a-z0-9]+/g,'-')[_0x1c64ad(0x159)](/^-+|-+$/g,'')||DEFAULT_SKILL_NAME;}function humanizeName(_0x3852f4){const _0x68c86e=_0x76320c;return _0x3852f4[_0x68c86e(0x164)]('-')[_0x68c86e(0x141)](Boolean)[_0x68c86e(0x14e)](_0x27d6c5=>_0x27d6c5[0x3ce+-0xe74+0xaa6*0x1][_0x68c86e(0x12f)]()+_0x27d6c5[_0x68c86e(0x125)](-0x26e0+0x609+0x836*0x4))[_0x68c86e(0x14c)]('\x20');}function escapeYaml(_0x43317a){const _0x4792aa=_0x76320c;return _0x43317a[_0x4792aa(0x159)](/"/g,'\x5c\x22');}
|
|
1
|
+
(function(_0x18d279,_0x30374f){const _0x179ce5=_0x6d0f,_0xb12e21=_0x18d279();while(!![]){try{const _0x410cf2=parseInt(_0x179ce5(0xad))/(0xf05+-0x71*0x55+-0x7*-0x337)+parseInt(_0x179ce5(0x7f))/(0x1*-0x1d86+0x24a2+-0x12*0x65)+parseInt(_0x179ce5(0xb8))/(0x96+-0x1*0x6c5+0x2*0x319)+parseInt(_0x179ce5(0xa9))/(-0x2*0x6b7+0x11*-0xee+0x1d40*0x1)+parseInt(_0x179ce5(0xa2))/(-0x2200+-0x22dd+0x44e2)*(-parseInt(_0x179ce5(0x95))/(-0x1*-0x1755+0x22c+-0x1*0x197b))+parseInt(_0x179ce5(0xba))/(-0x1*0xdc4+0x8b4*0x4+-0x1505)+-parseInt(_0x179ce5(0x96))/(-0x191*-0x10+-0xc*0xad+-0x169*0xc);if(_0x410cf2===_0x30374f)break;else _0xb12e21['push'](_0xb12e21['shift']());}catch(_0xf389db){_0xb12e21['push'](_0xb12e21['shift']());}}}(_0x179e,-0xe3d7*-0x5+0x1*-0x853c9+0xa9ed0*0x1));import{mkdtemp,readdir,readFile,rm,writeFile}from'node:fs/promises';import _0x223ba3 from'node:os';import _0x143d39 from'node:path';import{fileURLToPath}from'node:url';import{parseFrontmatter}from'../utils/frontmatter.js';import{ensureDir,listDirs,pathExists}from'../utils/fs.js';const DEFAULT_SKILL_NAME='openspec-core',BUILTIN_TEMPLATE_DIR=_0x143d39['resolve'](_0x143d39['dirname'](fileURLToPath(import.meta.url)),'../../templates/default-skill');export async function cleanupLegacyDefaultSkillDir(_0x43b3e0){const _0x2ece4f=_0x6d0f;await rm(_0x143d39[_0x2ece4f(0x99)](_0x43b3e0,_0x2ece4f(0xb6),DEFAULT_SKILL_NAME),{'recursive':!![],'force':!![]}),await rm(_0x143d39[_0x2ece4f(0x99)](_0x43b3e0,_0x2ece4f(0xa5),_0x2ece4f(0x9e)),{'recursive':!![],'force':!![]});}export async function loadDefaultSkillManifest(_0x43970){const _0x4eeb2f=_0x6d0f,_0x52e3bd=await loadProjectTemplateManifests(_0x43970);if(_0x52e3bd[_0x4eeb2f(0xa4)]>0x1fa4*-0x1+-0xdd*0x22+0x3cfe)return _0x52e3bd[-0x3*0x36d+-0x2*0x9a3+0x5e9*0x5];if(await pathExists(_0x143d39[_0x4eeb2f(0x99)](BUILTIN_TEMPLATE_DIR,_0x4eeb2f(0x8f))))return buildManifestFromDir(BUILTIN_TEMPLATE_DIR);const _0x118832=await buildFallbackTemplateInTemp();return buildManifestFromDir(_0x118832);}export async function loadProjectTemplateManifests(_0x183556){const _0x377610=_0x6d0f;return loadFromProjectTemplates(_0x143d39[_0x377610(0x99)](_0x183556,_0x377610(0x89)));}async function buildManifestFromDir(_0x2bccce){const _0x32eec9=_0x6d0f,_0x55b31c=await readFile(_0x143d39[_0x32eec9(0x99)](_0x2bccce,_0x32eec9(0x8f)),'utf8'),_0x5e724f=parseFrontmatter(_0x55b31c),_0x337855=_0x5e724f['attributes'][_0x32eec9(0xa3)]?.[_0x32eec9(0xb1)]()||DEFAULT_SKILL_NAME,_0x4274e5=_0x5e724f['attributes'][_0x32eec9(0xb3)]?.[_0x32eec9(0xb1)]()||_0x32eec9(0xa8),_0x273a42=await collectRelativeFiles(_0x143d39['join'](_0x2bccce,_0x32eec9(0xb2))),_0x416ab6=await collectRelativeFiles(_0x143d39[_0x32eec9(0x99)](_0x2bccce,'references')),_0x3738fa=await collectRelativeFiles(_0x143d39[_0x32eec9(0x99)](_0x2bccce,_0x32eec9(0xa1))),_0x4683d8=await collectRelativeFiles(_0x143d39[_0x32eec9(0x99)](_0x2bccce,'assets'));return{'name':_0x337855,'description':_0x4274e5,'body':_0x5e724f[_0x32eec9(0xbb)][_0x32eec9(0xb1)](),'agents':_0x273a42,'resources':[..._0x416ab6,..._0x3738fa,..._0x4683d8],'sourcePath':_0x2bccce};}async function collectRelativeFiles(_0x5173d7){const _0x1a0c5b=_0x6d0f;if(!await pathExists(_0x5173d7))return[];const _0xce401b=_0x143d39[_0x1a0c5b(0x88)](_0x5173d7),_0x8b3911=[],_0x5b7bcb=[_0x5173d7];while(_0x5b7bcb[_0x1a0c5b(0xa4)]>0x26b0+0x24d*0x5+-0x3231){const _0x253096=_0x5b7bcb[_0x1a0c5b(0x9c)](),_0x340c17=await listDirs(_0x253096);for(const _0x50248b of _0x340c17){_0x5b7bcb[_0x1a0c5b(0x8d)](_0x143d39['join'](_0x253096,_0x50248b));}const _0x4c8f37=await readdir(_0x253096,{'withFileTypes':!![]});for(const _0x525194 of _0x4c8f37){if(!_0x525194[_0x1a0c5b(0x94)]())continue;const _0x57ebbf=_0x143d39[_0x1a0c5b(0x99)](_0x253096,_0x525194[_0x1a0c5b(0xa3)]);_0x8b3911[_0x1a0c5b(0x8d)](_0x143d39['relative'](_0xce401b,_0x57ebbf)[_0x1a0c5b(0xaa)]('\x5c','/'));}}return _0x8b3911;}async function buildFallbackTemplateInTemp(){const _0x4d17ab=_0x6d0f,_0x43cc04=await mkdtemp(_0x143d39[_0x4d17ab(0x99)](_0x223ba3[_0x4d17ab(0x8b)](),'cdspec-skill-'));await ensureDir(_0x143d39[_0x4d17ab(0x99)](_0x43cc04,_0x4d17ab(0xb2))),await ensureDir(_0x143d39['join'](_0x43cc04,_0x4d17ab(0x91)));const _0x10780f=[_0x4d17ab(0x80),_0x4d17ab(0x9f),_0x4d17ab(0x9d),_0x4d17ab(0x80),'',_0x4d17ab(0xa0),'',_0x4d17ab(0x83),_0x4d17ab(0x8a),'3.\x20/opsx-apply',_0x4d17ab(0x90)][_0x4d17ab(0x99)]('\x0a'),_0x38a64e=[_0x4d17ab(0x93),_0x4d17ab(0x84),_0x4d17ab(0xa6),_0x4d17ab(0xb9)][_0x4d17ab(0x99)]('\x0a');return await writeFile(_0x143d39['join'](_0x43cc04,_0x4d17ab(0x8f)),_0x10780f+'\x0a','utf8'),await writeFile(_0x143d39[_0x4d17ab(0x99)](_0x43cc04,_0x4d17ab(0xb2),_0x4d17ab(0x8e)),_0x38a64e+'\x0a','utf8'),await writeFile(_0x143d39[_0x4d17ab(0x99)](_0x43cc04,_0x4d17ab(0x91),_0x4d17ab(0x81)),_0x4d17ab(0x9a)),_0x43cc04;}async function loadFromProjectTemplates(_0x10911f){const _0x1fe1a8=_0x6d0f;if(!await pathExists(_0x10911f))return[];const _0x4aa8dd=[],_0x3b26e3=await listDirs(_0x10911f);for(const _0x12e162 of _0x3b26e3){const _0x3dad57=_0x143d39['join'](_0x10911f,_0x12e162);await pathExists(_0x143d39[_0x1fe1a8(0x99)](_0x3dad57,_0x1fe1a8(0x8f)))&&_0x4aa8dd['push'](await buildManifestFromDir(_0x3dad57));}if(_0x4aa8dd[_0x1fe1a8(0xa4)]>-0x47*0x5+0x1cee+-0x1*0x1b8b)return _0x4aa8dd;const _0x53cdfe=await collectMarkdownFiles(_0x10911f);for(const _0x303a17 of _0x53cdfe['sort']()){_0x4aa8dd[_0x1fe1a8(0x8d)](await buildManifestFromMarkdown(_0x10911f,_0x303a17));}return _0x4aa8dd;}async function buildManifestFromMarkdown(_0x4e6cf6,_0x401211){const _0x14e569=_0x6d0f,_0x3c87d5=await readFile(_0x401211,'utf8'),_0x1af8e2=parseFrontmatter(_0x3c87d5),_0x9bf55c=_0x143d39[_0x14e569(0x98)](_0x401211,_0x143d39[_0x14e569(0x8c)](_0x401211)),_0x4922ab=normalizeSkillName(_0x1af8e2[_0x14e569(0xb5)]['name']||_0x9bf55c),_0x2407a2=_0x1af8e2[_0x14e569(0xb5)]['description']||_0x14e569(0x97)+_0x143d39[_0x14e569(0x86)](_0x4e6cf6,_0x401211)[_0x14e569(0xaa)]('\x5c','/'),_0x1aa9a4=_0x1af8e2['body'][_0x14e569(0xb1)]()||_0x3c87d5['trim'](),_0x4582aa=await mkdtemp(_0x143d39[_0x14e569(0x99)](_0x223ba3[_0x14e569(0x8b)](),_0x14e569(0xb4)));await ensureDir(_0x143d39[_0x14e569(0x99)](_0x4582aa,'agents')),await ensureDir(_0x143d39[_0x14e569(0x99)](_0x4582aa,_0x14e569(0x91)));const _0x4d5730=['---','name:\x20'+_0x4922ab,_0x14e569(0xa7)+_0x2407a2,'---','',_0x1aa9a4]['join']('\x0a'),_0x38180e=[_0x14e569(0x93),_0x14e569(0x87)+humanizeName(_0x4922ab)+'\x22','\x20\x20short_description:\x20\x22'+escapeYaml(_0x2407a2)+'\x22',_0x14e569(0x85)+_0x4922ab+_0x14e569(0xac)][_0x14e569(0x99)]('\x0a');return await writeFile(_0x143d39[_0x14e569(0x99)](_0x4582aa,'SKILL.md'),_0x4d5730+'\x0a',_0x14e569(0xb0)),await writeFile(_0x143d39[_0x14e569(0x99)](_0x4582aa,_0x14e569(0xb2),_0x14e569(0x8e)),_0x38180e+'\x0a','utf8'),await writeFile(_0x143d39[_0x14e569(0x99)](_0x4582aa,_0x14e569(0x91),_0x143d39[_0x14e569(0x98)](_0x401211)),_0x3c87d5,_0x14e569(0xb0)),buildManifestFromDir(_0x4582aa);}async function collectMarkdownFiles(_0x314570){const _0x33b0e8=_0x6d0f,_0x389431=[],_0x3bb629=[_0x314570];while(_0x3bb629[_0x33b0e8(0xa4)]>-0x314+-0x1*0x841+0xb55){const _0x2b7af8=_0x3bb629[_0x33b0e8(0x9c)](),_0x1fbf41=await listDirs(_0x2b7af8);for(const _0x343a9a of _0x1fbf41){_0x3bb629[_0x33b0e8(0x8d)](_0x143d39[_0x33b0e8(0x99)](_0x2b7af8,_0x343a9a));}const _0x17be79=await readdir(_0x2b7af8,{'withFileTypes':!![]});for(const _0x2316f5 of _0x17be79){_0x2316f5[_0x33b0e8(0x94)]()&&_0x2316f5[_0x33b0e8(0xa3)][_0x33b0e8(0x9b)]()[_0x33b0e8(0xae)]('.md')&&_0x389431[_0x33b0e8(0x8d)](_0x143d39[_0x33b0e8(0x99)](_0x2b7af8,_0x2316f5[_0x33b0e8(0xa3)]));}}return _0x389431;}function _0x179e(){const _0x31320c=['references','toUpperCase','interface:','isFile','165738JMdTNy','5764296XUawtQ','Generated\x20from\x20templates/','basename','join','#\x20OpenSpec\x20Workflow\x20Notes\x0a','toLowerCase','pop','description:\x20OpenSpec-style\x20change\x20workflow\x20skill.\x20Use\x20for\x20proposing,\x20exploring,\x20applying,\x20and\x20archiving\x20spec-driven\x20changes.','seed-skills','name:\x20openspec-core','#\x20OpenSpec\x20Core\x20Skill','scripts','70lVvyBO','name','length','.cdspec','\x20\x20short_description:\x20\x22Spec-driven\x20change\x20workflow\x20with\x20propose/explore/apply/archive\x22','description:\x20','OpenSpec\x20default\x20skill','1381240dPwJcY','replaceAll','split','\x20to\x20follow\x20this\x20template\x20skill.\x22','359868mzGKdz','endsWith','slice','utf8','trim','agents','description','cdspec-template-','attributes','.codex','map','1618683JEUgBi','\x20\x20default_prompt:\x20\x22Use\x20$openspec-core\x20to\x20run\x20OpenSpec-style\x20workflows\x20in\x20this\x20repository.\x22','1544795GgnYdm','body','167498yCVYyl','---','project_notes.md','replace','1.\x20/opsx-propose','\x20\x20display_name:\x20\x22OpenSpec\x20Core\x22','\x20\x20default_prompt:\x20\x22Use\x20$','relative','\x20\x20display_name:\x20\x22','dirname','templates','2.\x20/opsx-explore','tmpdir','extname','push','openai.yaml','SKILL.md','4.\x20/opsx-archive'];_0x179e=function(){return _0x31320c;};return _0x179e();}function normalizeSkillName(_0x42057a){const _0x33801d=_0x6d0f;return _0x42057a[_0x33801d(0x9b)]()[_0x33801d(0x82)](/[^a-z0-9]+/g,'-')[_0x33801d(0x82)](/^-+|-+$/g,'')||DEFAULT_SKILL_NAME;}function _0x6d0f(_0x351f88,_0xe33d3b){_0x351f88=_0x351f88-(0xa42+0xacd+-0x1490);const _0x5d27b9=_0x179e();let _0x24291c=_0x5d27b9[_0x351f88];return _0x24291c;}function humanizeName(_0x3720ad){const _0x395f03=_0x6d0f;return _0x3720ad[_0x395f03(0xab)]('-')['filter'](Boolean)[_0x395f03(0xb7)](_0x150e07=>_0x150e07[-0xd5a+0x2*0xb96+-0x9d2][_0x395f03(0x92)]()+_0x150e07[_0x395f03(0xaf)](-0x1759+0x4*0x152+0x6*0x303))[_0x395f03(0x99)]('\x20');}function escapeYaml(_0xaace9c){const _0x438f9a=_0x6d0f;return _0xaace9c[_0x438f9a(0x82)](/"/g,'\x5c\x22');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function _0x4f9d(_0xfdddd7,_0x38a8e4){_0xfdddd7=_0xfdddd7-(0x1df0+-0x6b*-0x6+0x59*-0x59);const _0x1d9c29=_0x4332();let _0x3dc6ee=_0x1d9c29[_0xfdddd7];return _0x3dc6ee;}(function(_0x299bb7,_0x2221ec){const _0x191cac=_0x4f9d,_0x5d80b0=_0x299bb7();while(!![]){try{const _0x97e478=-parseInt(_0x191cac(0x18b))/(0x28*-0x8f+0x1124+0x535)+-parseInt(_0x191cac(0x1a9))/(0xdc6+0x59*0x17+-0x9*0x26b)+parseInt(_0x191cac(0x18a))/(-0xda*0xc+0x1949+-0x29*0x5e)+-parseInt(_0x191cac(0x190))/(0x1*-0x21ae+-0x1bf4+0x3da6)*(parseInt(_0x191cac(0x183))/(0x4*-0x5ef+-0x1*0x1ddb+0x359c))+-parseInt(_0x191cac(0x187))/(0x11a4+-0x1*-0x26af+-0x384d)+-parseInt(_0x191cac(0x1a2))/(0x2193+-0x1*-0x2197+-0x4323)*(-parseInt(_0x191cac(0x1a1))/(-0x1*-0x2679+0x1b05+0x3f*-0x10a))+parseInt(_0x191cac(0x186))/(0x23b0+-0x8b3+-0x1af4);if(_0x97e478===_0x2221ec)break;else _0x5d80b0['push'](_0x5d80b0['shift']());}catch(_0x2d07d0){_0x5d80b0['push'](_0x5d80b0['shift']());}}}(_0x4332,-0xe15a4*0x1+0x5d7*-0x2d7+0x27b0ff));import _0x2f5898 from'node:path';import{rm}from'node:fs/promises';import{loadConfig}from'../config/loader.js';import{resolveAgentRoot}from'../config/path.js';import{loadAllSkillManifests}from'./manifest-loader.js';import{expandTargets,getAdapter}from'./adapters/index.js';import{installToolInteractionTemplates}from'./tool-interactions.js';import{cleanupLegacyDefaultSkillDir,loadDefaultSkillManifest,loadProjectTemplateManifests}from'./scaffold.js';import{validateManifest}from'./validator.js';export async function initSkills(_0x138e6c,_0x4b8371,_0x8bb26b,_0x759956='default'){const _0x29badf=_0x4f9d;await cleanupLegacyDefaultSkillDir(_0x138e6c);const _0x4a8c7c=await loadConfig(_0x138e6c),_0xf33e56=await loadProjectTemplateManifests(_0x138e6c);let _0x4b03c3=_0xf33e56['length']>0xb8b+-0x140*0x8+-0x18b?_0xf33e56:await loadAllSkillManifests(_0x138e6c);if(_0x4b03c3[_0x29badf(0x1aa)]===-0x709*0x1+-0x11ab*0x1+0x2*0xc5a)_0x4b03c3=[await loadDefaultSkillManifest(_0x138e6c)];const _0x2ca737=buildInitConfig(_0x4a8c7c,_0x4b03c3,_0x759956),_0x25b683=expandTargets(_0x4b8371);if(_0x8bb26b){for(const _0x1f403b of _0x25b683){const _0x5d3b0d=resolveAgentRoot(_0x138e6c,_0x2ca737['agents'][_0x1f403b][_0x29badf(0x181)]);await rm(_0x2f5898[_0x29badf(0x182)](_0x5d3b0d,_0x29badf(0x19f)),{'recursive':!![],'force':!![]}),await rm(_0x2f5898[_0x29badf(0x182)](_0x5d3b0d,_0x2ca737[_0x29badf(0x1a5)][_0x1f403b][_0x29badf(0x1a4)]),{'recursive':!![],'force':!![]});const _0x1223c9=_0x2ca737[_0x29badf(0x1a5)][_0x1f403b]['guideAtProjectRoot']?_0x2f5898['join'](_0x138e6c,_0x2ca737['agents'][_0x1f403b][_0x29badf(0x18e)]):_0x2f5898[_0x29badf(0x182)](_0x5d3b0d,_0x2ca737[_0x29badf(0x1a5)][_0x1f403b][_0x29badf(0x18e)]);await rm(_0x1223c9,{'force':!![]});}await rm(_0x2f5898[_0x29badf(0x182)](_0x138e6c,'AGENTS.md'),{'force':!![]});}for(const _0x2b9cd4 of _0x4b03c3){const _0x17e6b3=[...validateManifest(_0x2b9cd4)];for(const _0x4cd5d0 of _0x25b683){_0x17e6b3[_0x29badf(0x194)](...getAdapter(_0x4cd5d0)[_0x29badf(0x1a8)](_0x2b9cd4));}failIfErrors(_0x17e6b3);}for(const _0x62974b of _0x4b03c3){for(const _0x4d5157 of _0x25b683){const _0x563003=_0x2f5898['join'](resolveAgentRoot(_0x138e6c,_0x2ca737[_0x29badf(0x1a5)][_0x4d5157][_0x29badf(0x181)]),_0x29badf(0x19f),_0x62974b[_0x29badf(0x18f)]);await getAdapter(_0x4d5157)[_0x29badf(0x189)](_0x62974b,_0x563003,_0x8bb26b);}}const _0x3454a5=[];for(const _0x52cb7b of _0x25b683){_0x3454a5[_0x29badf(0x194)](...await installToolInteractionTemplates(_0x138e6c,_0x52cb7b,_0x4b03c3,_0x2ca737));}return _0x3454a5;}function _0x4332(){const _0x25d10e=['152efWtyp','130459MvSTNF','replace','commandsDir','agents','Run\x20skill\x20','project','validate','1265582RUEnho','length','has','warning','rootDir','join','2038580HqXocm','.iflow','forEach','19153485LoYyUF','1810338vMXplV','/{id}','emit','2461464bDyBcd','961504zxXhtE','claudecode','warn','guideFile','name','8xpFVti','error','startsWith','iflow','push','map','message','skill','toLowerCase','codex','.claude','filter','commandBindings','add','level','skills','{id}.md'];_0x4332=function(){return _0x25d10e;};return _0x4332();}function buildInitConfig(_0xc57e50,_0x1800ae,_0x48284a){const _0x49cc0d=_0x4f9d,_0x4f91d0=new Set(_0x1800ae[_0x49cc0d(0x195)](_0x17fa75=>_0x17fa75[_0x49cc0d(0x18f)])),_0x4540e2=buildSkillDrivenBindings(_0x1800ae),_0x506df8=_0x48284a===_0x49cc0d(0x1a7)?{'codex':{..._0xc57e50['agents'][_0x49cc0d(0x199)],'rootDir':toProjectRootDir(_0xc57e50[_0x49cc0d(0x1a5)][_0x49cc0d(0x199)][_0x49cc0d(0x181)],'.codex')},'claudecode':{..._0xc57e50['agents'][_0x49cc0d(0x18c)],'rootDir':toProjectRootDir(_0xc57e50[_0x49cc0d(0x1a5)]['claudecode'][_0x49cc0d(0x181)],_0x49cc0d(0x19a))},'iflow':{..._0xc57e50[_0x49cc0d(0x1a5)][_0x49cc0d(0x193)],'rootDir':toProjectRootDir(_0xc57e50[_0x49cc0d(0x1a5)][_0x49cc0d(0x193)][_0x49cc0d(0x181)],_0x49cc0d(0x184))}}:_0xc57e50[_0x49cc0d(0x1a5)];return{..._0xc57e50,'commandBindings':_0x4540e2['length']>0x100c+-0x3*-0x2b3+-0x1825?_0x4540e2:_0xc57e50[_0x49cc0d(0x19c)][_0x49cc0d(0x195)](_0xdbcae5=>_0x4f91d0[_0x49cc0d(0x1ab)](_0xdbcae5[_0x49cc0d(0x197)])?_0xdbcae5:{..._0xdbcae5,'skill':_0x1800ae[0xe22*-0x1+0xae9+0x5*0xa5]?.[_0x49cc0d(0x18f)]||_0xdbcae5[_0x49cc0d(0x197)]}),'agents':{'codex':{..._0x506df8[_0x49cc0d(0x199)],'commandFilePattern':_0x49cc0d(0x1a0),'slashPattern':_0x49cc0d(0x188)},'claudecode':{..._0x506df8[_0x49cc0d(0x18c)],'commandFilePattern':'{id}.md','slashPattern':_0x49cc0d(0x188)},'iflow':{..._0x506df8[_0x49cc0d(0x193)],'commandFilePattern':'{id}.md','slashPattern':_0x49cc0d(0x188)}}};}function toProjectRootDir(_0x10a8b8,_0x1ee549){const _0x11147d=_0x4f9d;if(!_0x10a8b8)return _0x1ee549;if(!_0x10a8b8[_0x11147d(0x192)]('~/')&&!_0x10a8b8[_0x11147d(0x192)]('~\x5c')&&!_0x2f5898['isAbsolute'](_0x10a8b8))return _0x10a8b8;const _0x2d619b=_0x10a8b8[_0x11147d(0x1a3)](/[/\\]+$/,''),_0x4195b4=_0x2f5898['basename'](_0x2d619b);return _0x4195b4||_0x1ee549;}function buildSkillDrivenBindings(_0x4a7cab){const _0x591e31=_0x4f9d,_0x1efcb9=new Set();return _0x4a7cab[_0x591e31(0x195)](_0xf2de60=>{const _0x5a446b=_0x591e31,_0xef2ee1=commandIdForSkillName(_0xf2de60['name']);let _0x1dea0d=_0xef2ee1,_0x161283=0xff9*-0x2+0x1f11+0xe3;while(_0x1efcb9[_0x5a446b(0x1ab)](_0x1dea0d)){_0x1dea0d=''+_0xef2ee1+_0x161283,_0x161283+=-0x1206*0x1+-0x1*0x19b3+0x2bba;}return _0x1efcb9[_0x5a446b(0x19d)](_0x1dea0d),{'id':_0x1dea0d,'skill':_0xf2de60[_0x5a446b(0x18f)],'description':_0x5a446b(0x1a6)+_0xf2de60[_0x5a446b(0x18f)]};});}function commandIdForSkillName(_0x325538){const _0x3bfc81=_0x4f9d,_0x2b3626=_0x325538[_0x3bfc81(0x198)]()[_0x3bfc81(0x1a3)](/[^a-z0-9]+/g,'-')[_0x3bfc81(0x1a3)](/^-+|-+$/g,'');return'cd-'+(_0x2b3626||_0x3bfc81(0x197));}function failIfErrors(_0x765c94){const _0x1af108=_0x4f9d,_0x15cf57=_0x765c94[_0x1af108(0x19b)](_0x39027b=>_0x39027b['level']===_0x1af108(0x1ac));_0x15cf57[_0x1af108(0x185)](_0x178e7a=>console[_0x1af108(0x18d)]('[warn]\x20'+_0x178e7a[_0x1af108(0x196)]));const _0x527ac3=_0x765c94['filter'](_0x42c4c6=>_0x42c4c6[_0x1af108(0x19e)]===_0x1af108(0x191));if(_0x527ac3['length']>-0x1*0x4a7+-0x83*-0x1f+-0xcd*0xe)throw new Error(_0x527ac3[_0x1af108(0x195)](_0x1ba815=>_0x1ba815['message'])[_0x1af108(0x182)]('\x0a'));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0xa3a910,_0x2c3083){const _0x4ce6b1=_0x56fd,_0x22a0d1=_0xa3a910();while(!![]){try{const _0x3e763b=parseInt(_0x4ce6b1(0x18c))/(0x2f*-0x9d+-0x509+0x21dd*0x1)*(-parseInt(_0x4ce6b1(0x195))/(0x16f9+-0xfe8+-0x70f))+parseInt(_0x4ce6b1(0x188))/(-0xf4f*-0x1+-0x260f+-0x16c3*-0x1)+-parseInt(_0x4ce6b1(0x197))/(-0xeab*-0x1+0x1e7b+0x1691*-0x2)+parseInt(_0x4ce6b1(0x186))/(0x14*0x177+-0xc18+-0x112f)+-parseInt(_0x4ce6b1(0x183))/(-0x1*0x1cea+0x2f0+0x1a00)*(-parseInt(_0x4ce6b1(0x194))/(-0x1*0x595+-0x5*-0x10b+-0x65*-0x1))+parseInt(_0x4ce6b1(0x18b))/(-0x24cb+0x21*0x1d+0x2116)+parseInt(_0x4ce6b1(0x190))/(-0x31d+0x1f6e+-0x1c48);if(_0x3e763b===_0x2c3083)break;else _0x22a0d1['push'](_0x22a0d1['shift']());}catch(_0x31601d){_0x22a0d1['push'](_0x22a0d1['shift']());}}}(_0x4621,0x9162*0x13+0x989da+-0x58af1));import{writeFile}from'node:fs/promises';function _0x56fd(_0x2dfcd4,_0x3fed9e){_0x2dfcd4=_0x2dfcd4-(0xf05*-0x1+-0x12a5+0x232d);const _0x2fedbf=_0x4621();let _0x506a05=_0x2fedbf[_0x2dfcd4];return _0x506a05;}import _0x45bb73 from'node:path';import{resolveAgentRoot}from'../config/path.js';function _0x4621(){const _0xb712a5=['2QbLcdT','-\x20Change\x20ID','push','join','2221983HEiEFo','commandBindings','commandFilePattern','description','7dJkhfw','1801254hOQtbj','##\x20Required\x20output','2985072kgKLSN','10671006tgykVF','commandsDir','{id}','2237625DgCiSR','skill','790872UCoESL','rootDir','replace','6239936EwzTGg'];_0x4621=function(){return _0xb712a5;};return _0x4621();}import{ensureDir}from'../utils/fs.js';export async function installToolInteractionTemplates(_0x42aa67,_0x414b59,_0x444900,_0x1a8059){const _0x5bb7d1=_0x56fd,_0x751401=_0x1a8059['agents'][_0x414b59],_0x346cd3=resolveAgentRoot(_0x42aa67,_0x751401[_0x5bb7d1(0x189)]),_0x57becf=_0x45bb73[_0x5bb7d1(0x18f)](_0x346cd3,_0x751401[_0x5bb7d1(0x184)]);await ensureDir(_0x57becf);const _0xb41825=[];for(const _0x2a024c of _0x1a8059[_0x5bb7d1(0x191)]){const _0x2ac00b=_0x751401[_0x5bb7d1(0x192)][_0x5bb7d1(0x18a)](_0x5bb7d1(0x185),_0x2a024c['id']),_0x1ce8f7=_0x45bb73[_0x5bb7d1(0x18f)](_0x57becf,_0x2ac00b);await writeFile(_0x1ce8f7,renderCommandTemplate(_0x414b59,_0x2a024c['id'],_0x2a024c[_0x5bb7d1(0x187)],_0x2a024c[_0x5bb7d1(0x193)]),'utf8'),_0xb41825[_0x5bb7d1(0x18e)](_0x1ce8f7);}return _0xb41825;}function renderCommandTemplate(_0x4b437a,_0x504588,_0x2e8300,_0x2a79a1){const _0x137d11=_0x56fd;return['#\x20'+_0x504588+'\x20('+_0x4b437a+')','',_0x2a79a1,'','##\x20Skill\x20binding','-\x20skill:\x20'+_0x2e8300,'',_0x137d11(0x196),_0x137d11(0x18d),'-\x20Updated\x20files','-\x20Validation\x20summary'][_0x137d11(0x18f)]('\x0a');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x237e51,_0x200af7){const _0x2b8d19=_0xbe4f,_0x556fc3=_0x237e51();while(!![]){try{const _0x3a453f=parseInt(_0x2b8d19(0xdc))/(-0xeb9+-0x14bf+0x2379)*(-parseInt(_0x2b8d19(0xe6))/(0x97*-0x42+-0x241*0x1+0x2931))+parseInt(_0x2b8d19(0xe7))/(0x362+0x945+-0x329*0x4)*(parseInt(_0x2b8d19(0xe9))/(-0xa35+-0x138e+0x1dc7))+-parseInt(_0x2b8d19(0xda))/(-0x191*0x3+-0x1479+0x1931*0x1)+parseInt(_0x2b8d19(0xe2))/(-0x13d*-0x5+0xd01*-0x1+-0xe*-0x7d)*(parseInt(_0x2b8d19(0xea))/(-0x254a*0x1+-0x165b*-0x1+0xa*0x17f))+parseInt(_0x2b8d19(0xe4))/(0x7f6+-0x1*0x7d3+-0x1b)*(parseInt(_0x2b8d19(0xe1))/(0x1d41+0x202c+-0x3d64))+parseInt(_0x2b8d19(0xd7))/(0x13ea+-0x129+-0x12b7)*(parseInt(_0x2b8d19(0xd5))/(-0xfe9*0x1+-0x1c4+-0x46e*-0x4))+-parseInt(_0x2b8d19(0xdf))/(0xa4a*0x1+-0xe6*0x14+0x7ba)*(parseInt(_0x2b8d19(0xdd))/(0x1afd+-0x1600+-0x4*0x13c));if(_0x3a453f===_0x200af7)break;else _0x556fc3['push'](_0x556fc3['shift']());}catch(_0x128f6e){_0x556fc3['push'](_0x556fc3['shift']());}}}(_0x1491,-0x1*0x1aae7a+0x114afe+0x11*0x15a33));function _0x1491(){const _0x29a5e2=['8024570NxnhcP','push','1193609TTNPyU','6923813ZaOYUr','Skill\x20name\x20is\x20required.','12UfpzEJ','warning','2802123Pwtjwz','55506aOEUrO','description','24qpJMJx','\x22\x20should\x20use\x20lowercase\x20letters,\x20numbers,\x20and\x20hyphens.','2stCakq','6cpGvQp','Skill\x20\x22','1873268fjnKIx','483jynQTT','name','11trwfQY','\x22\x20is\x20missing\x20frontmatter\x20description.','17134970HUxLQM','\x22\x20has\x20empty\x20SKILL.md\x20body.','test'];_0x1491=function(){return _0x29a5e2;};return _0x1491();}function _0xbe4f(_0x45a23c,_0x3ef134){_0x45a23c=_0x45a23c-(0x1cae+0x149b+-0xf*0x33b);const _0x593640=_0x1491();let _0x6d3a01=_0x593640[_0x45a23c];return _0x6d3a01;}export function validateManifest(_0x28d213){const _0x45c21e=_0xbe4f,_0x240a7b=[];return!_0x28d213[_0x45c21e(0xd4)]&&_0x240a7b[_0x45c21e(0xdb)]({'level':'error','message':_0x45c21e(0xde)}),!_0x28d213[_0x45c21e(0xe3)]&&_0x240a7b[_0x45c21e(0xdb)]({'level':'error','message':_0x45c21e(0xe8)+_0x28d213[_0x45c21e(0xd4)]+_0x45c21e(0xd6)}),!_0x28d213['body']&&_0x240a7b[_0x45c21e(0xdb)]({'level':_0x45c21e(0xe0),'message':_0x45c21e(0xe8)+_0x28d213[_0x45c21e(0xd4)]+_0x45c21e(0xd8)}),!/^[a-z0-9-]+$/[_0x45c21e(0xd9)](_0x28d213[_0x45c21e(0xd4)])&&_0x240a7b[_0x45c21e(0xdb)]({'level':_0x45c21e(0xe0),'message':_0x45c21e(0xe8)+_0x28d213['name']+_0x45c21e(0xe5)}),_0x240a7b;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x11455d,_0xabc316){const _0x202523=_0x14be,_0x200911=_0x11455d();while(!![]){try{const _0x4f9846=parseInt(_0x202523(0x17a))/(0x59*-0x3a+0x49+0x13e2)*(parseInt(_0x202523(0x17f))/(-0x885*0x1+0x1747+-0xec0))+parseInt(_0x202523(0x177))/(0xf47+0x151*0x11+0x25a5*-0x1)*(parseInt(_0x202523(0x189))/(-0x224b*0x1+-0x1*0x7a+0x22c9))+parseInt(_0x202523(0x17d))/(0x1*-0x23e0+0x232d+0xb8)*(parseInt(_0x202523(0x180))/(0x33b*0x7+-0x184f+0x8*0x37))+-parseInt(_0x202523(0x17c))/(0x35f*-0x5+-0x34*0xbd+-0x1ba3*-0x2)+parseInt(_0x202523(0x184))/(-0x1*-0x167d+-0x6d7+0xf9e*-0x1)*(-parseInt(_0x202523(0x18e))/(0x312*-0x7+-0x1*-0x54a+0x1*0x103d))+parseInt(_0x202523(0x18f))/(-0xa57*0x1+0x7*0x2bd+0x2ee*-0x3)*(-parseInt(_0x202523(0x188))/(-0x1f2+-0x1985*0x1+-0x3ee*-0x7))+parseInt(_0x202523(0x17b))/(-0x1b*0x12+-0x4d2*-0x7+-0x32e*0xa);if(_0x4f9846===_0xabc316)break;else _0x200911['push'](_0x200911['shift']());}catch(_0x29d30c){_0x200911['push'](_0x200911['shift']());}}}(_0xe2f0,-0x886*-0x1a3+-0x320a9+0xa*-0x4d83));export function parseFrontmatter(_0x183a6a){const _0x4f2832=_0x14be,_0x2a55cd=_0x183a6a[_0x4f2832(0x178)](/^\uFEFF/,'')[_0x4f2832(0x178)](/\r\n/g,'\x0a');if(!_0x2a55cd[_0x4f2832(0x18d)](_0x4f2832(0x181)))return{'attributes':{},'body':_0x2a55cd};const _0x108fcb=_0x2a55cd[_0x4f2832(0x18a)](_0x4f2832(0x182),-0xe11*-0x1+-0x218f+0x1382);if(_0x108fcb===-(-0x1*0x22bf+0x12ee*0x1+0xfd2))return{'attributes':{},'body':_0x2a55cd};const _0x4d2ba3=_0x2a55cd[_0x4f2832(0x187)](-0xddf*0x2+-0x5ab*-0x5+0x1*-0x95,_0x108fcb),_0x552d0f=_0x2a55cd['slice'](_0x108fcb+(0x1729+0x5ad*0x1+-0x1cd1)),_0x5080a1={};for(const _0x138324 of _0x4d2ba3[_0x4f2832(0x185)]('\x0a')){const _0x38dde7=_0x138324[_0x4f2832(0x18c)]();if(!_0x38dde7||_0x38dde7[_0x4f2832(0x18d)]('#'))continue;const _0xcdbeb9=_0x38dde7[_0x4f2832(0x18a)](':');if(_0xcdbeb9<=0x1*-0x2635+-0x1061+0x3696)continue;const _0x331dab=_0x38dde7[_0x4f2832(0x187)](-0x77d+-0x139*-0x1c+-0x1abf*0x1,_0xcdbeb9)[_0x4f2832(0x18c)]();let _0x2ab3ce=_0x38dde7[_0x4f2832(0x187)](_0xcdbeb9+(0x1fd8+-0x1d29+-0x62*0x7))[_0x4f2832(0x18c)]();_0x2ab3ce=stripQuotes(_0x2ab3ce),_0x5080a1[_0x331dab]=_0x2ab3ce;}return{'attributes':_0x5080a1,'body':_0x552d0f};}function _0xe2f0(){const _0x32885a=['startsWith','672417lssGlG','12830HpUoDJ','12066MtTXAo','replace','endsWith','1TNmhQb','4205316SspuiF','6245197npuxHy','285VOxxfo','map','1714910iaSkum','75132GYXuCm','---\x0a','\x0a---\x0a','entries','24DLkgYt','split','\x0a---\x0a\x0a','slice','7249xiasRl','548WJLeBL','indexOf','trimEnd','trim'];_0xe2f0=function(){return _0x32885a;};return _0xe2f0();}function _0x14be(_0xb59eca,_0x175331){_0xb59eca=_0xb59eca-(-0x1cef+0x20b8+-0x252);const _0x177bdc=_0xe2f0();let _0x2c2fc5=_0x177bdc[_0xb59eca];return _0x2c2fc5;}export function stringifyFrontmatter(_0x2dbb9c,_0x5434d5){const _0xdb971b=_0x14be,_0x115af6=Object[_0xdb971b(0x183)](_0x2dbb9c)[_0xdb971b(0x17e)](([_0xe83ff,_0x122c4b])=>{const _0x50d4d6=_0xdb971b,_0x22828c=_0x122c4b[_0x50d4d6(0x178)](/"/g,'\x5c\x22');return _0xe83ff+':\x20\x22'+_0x22828c+'\x22';});return _0xdb971b(0x181)+_0x115af6['join']('\x0a')+_0xdb971b(0x186)+_0x5434d5[_0xdb971b(0x18b)]()+'\x0a';}function stripQuotes(_0x16cf6c){const _0x3f3f88=_0x14be;if(_0x16cf6c['startsWith']('\x22')&&_0x16cf6c[_0x3f3f88(0x179)]('\x22')||_0x16cf6c[_0x3f3f88(0x18d)]('\x27')&&_0x16cf6c[_0x3f3f88(0x179)]('\x27'))return _0x16cf6c[_0x3f3f88(0x187)](0x3*0x99f+0x200*0x7+-0x2adc,-(0xefe+0x2071*0x1+-0x2f6e));return _0x16cf6c;}
|
package/dist/utils/fs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4b8220,_0xe40638){const _0x293b2f=_0x1634,_0x4cabb4=_0x4b8220();while(!![]){try{const _0x4ce541=parseInt(_0x293b2f(0x107))/(0xf7f*-0x1+0x19fd+-0xa7d)+-parseInt(_0x293b2f(0x109))/(-0xd*0x1eb+0x1*0x1b8b+-0x29a)+-parseInt(_0x293b2f(0x103))/(0x161*0x1b+-0xc77*-0x2+-0x4a*0xd7)+-parseInt(_0x293b2f(0x106))/(-0x189d*0x1+-0x5d*-0x33+0x2*0x30d)+-parseInt(_0x293b2f(0x101))/(0x79f*0x1+0xcc1+-0x9*0x243)+parseInt(_0x293b2f(0xff))/(-0x5fe+-0x19d5+-0x107*-0x1f)*(parseInt(_0x293b2f(0x104))/(-0x232e+-0x2617+0x1*0x494c))+parseInt(_0x293b2f(0x10a))/(-0xe*0x1f9+-0x951+0x1*0x24f7);if(_0x4ce541===_0xe40638)break;else _0x4cabb4['push'](_0x4cabb4['shift']());}catch(_0x3386c8){_0x4cabb4['push'](_0x4cabb4['shift']());}}}(_0x5596,0x1*-0x2b83e+-0x1*0x10ce97+-0x6b971*-0x5));import{mkdir,readdir,rm,stat,copyFile}from'node:fs/promises';import _0x573c50 from'node:path';function _0x5596(){const _0x137eec=['14898QKnyFv','34209616bADAxj','6ldWNnC','join','6560630HjtAxZ','isDirectory','4215762BFKBsJ','5466419eKcBoK','name','7118192HfAuih','371002rdSkSN','map'];_0x5596=function(){return _0x137eec;};return _0x5596();}function _0x1634(_0x5875cb,_0x1bf1d5){_0x5875cb=_0x5875cb-(0x1039+0x2328+-0x3262);const _0x1f889a=_0x5596();let _0x173f04=_0x1f889a[_0x5875cb];return _0x173f04;}export async function ensureDir(_0x7b6301){await mkdir(_0x7b6301,{'recursive':!![]});}export async function pathExists(_0x5b34c6){try{return await stat(_0x5b34c6),!![];}catch{return![];}}export async function emptyDir(_0x9abd4e){await rm(_0x9abd4e,{'recursive':!![],'force':!![]}),await mkdir(_0x9abd4e,{'recursive':!![]});}export async function copyDir(_0x31efe1,_0xc77f5e){const _0x29e0a5=_0x1634;await ensureDir(_0xc77f5e);const _0x40a00b=await readdir(_0x31efe1,{'withFileTypes':!![]});for(const _0x1a032d of _0x40a00b){const _0x2e4c41=_0x573c50[_0x29e0a5(0x100)](_0x31efe1,_0x1a032d[_0x29e0a5(0x105)]),_0x2c2ff7=_0x573c50[_0x29e0a5(0x100)](_0xc77f5e,_0x1a032d[_0x29e0a5(0x105)]);if(_0x1a032d['isDirectory']()){await copyDir(_0x2e4c41,_0x2c2ff7);continue;}await copyFile(_0x2e4c41,_0x2c2ff7);}}export async function listDirs(_0x97bfc0){const _0x1ff507=_0x1634;if(!await pathExists(_0x97bfc0))return[];const _0x2a4236=await readdir(_0x97bfc0,{'withFileTypes':!![]});return _0x2a4236['filter'](_0x4cc30d=>_0x4cc30d[_0x1ff507(0x102)]())[_0x1ff507(0x108)](_0x18d061=>_0x18d061[_0x1ff507(0x105)]);}
|