@66rpg/cgmaker-create 0.1.21 → 0.1.22
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/dist/index.js +13 -13
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import u from"node:fs";import p from"node:path";import Ce from"node:readline";import{fileURLToPath as Et}from"node:url";import{spawnSync as wt}from"node:child_process";import{spawnSync as De}from"node:child_process";var se={_comment:"cgmaker-create \u7528\u6237\u53EF\u89C1\u6587\u6848\u3002\u5360\u4F4D\u7B26 {name}\u3002",help:{body:{code:"",text:`cgmaker-create \u2014 \u4ECE\u6258\u7BA1\u6A21\u677F\u521B\u5EFA\u5E26\u5B8C\u6574\u6E90\u7801\u7684\u6E38\u620F\u5DE5\u7A0B
|
|
2
2
|
|
|
3
3
|
\u7528\u6CD5:
|
|
4
4
|
npx @66rpg/cgmaker-create@latest <template_id> [\u76EE\u5F55] [data_id]
|
|
@@ -12,17 +12,17 @@ data_id \u4E3A\u8BE5\u6A21\u677F\u4E0B\u7684\u8D44\u6E90\u5305 ID\uFF08data_id\u
|
|
|
12
12
|
\u672A\u6307\u5B9A skill \u65F6\uFF1A\u4EA4\u4E92\u7EC8\u7AEF\u4F1A\u8BE2\u95EE\u8981\u628A AI \u8BF4\u660E\u5B89\u88C5\u5230\u54EA\u4E2A\u7F16\u8F91\u5668\uFF08\u56DE\u8F66\u65E0\u6548\uFF0C\u8DF3\u8FC7\u987B\u8F93\u5165 s\uFF1B\u4E4B\u540E\u53EF\u5728\u5DE5\u7A0B\u76EE\u5F55\u6267\u884C cgmaker skill\uFF09\uFF1B\u811A\u672C\u73AF\u5883\u9ED8\u8BA4\u4E0D\u5B89\u88C5\u3002\u672A\u6307\u5B9A\u76EE\u5F55\u65F6\uFF1A\u4EA4\u4E92\u4F1A\u95EE\u5DE5\u7A0B\u5EFA\u5728\u54EA\u4E2A\u6587\u4EF6\u5939\uFF08\u56DE\u8F66\u53EF\u7528\u62EC\u53F7\u91CC\u7684\u5EFA\u8BAE\u540D\uFF09\uFF1B\u811A\u672C\u5FC5\u987B\u5E26\u76EE\u5F55\u3002Agent \u8BF7\u52A0 --agent --json\uFF1A\u7F3A\u76EE\u5F55/\u7F3A\u53C2/\u65B0\u7248\u672C\u4F1A\u505C\u4E0B\u8BA9\u5BF9\u8BDD\u8BE2\u95EE\u7528\u6237\uFF0C\u4E0D\u8981\u81EA\u52A8\u8D77\u6587\u4EF6\u5939\u540D\u3002
|
|
13
13
|
--skill-platform \u53EA\u5B89\u88C5\u5230\u8BE5\u7F16\u8F91\u5668\uFF08\u5982 cursor\uFF09\uFF1B--skill-all \u5B89\u88C5\u5230\u5168\u90E8\u7F16\u8F91\u5668\u3002\u5DF2\u6709\u5DE5\u7A0B\u8865\u88C5\u7528 npx cgmaker skill --platform cursor \u6216 --all\u3002
|
|
14
14
|
\u6682\u65E0\u4E91\u7AEF\u6A21\u677F\u79CD\u5B50\u65F6\uFF0C\u7528 --from-dir\u3002\u53D1\u73B0\u65B0\u7248\uFF1A\u4F60\u5728\u5C4F\u5E55\u524D\u64CD\u4F5C\u65F6\u4F1A\u95EE\u662F\u5426\u66F4\u65B0\uFF1BAgent \u4F1A\u505C\u4E0B\u6765\u95EE\u4F60\u8981\u4E0D\u8981\u66F4\u65B0\uFF0C\u540C\u610F\u540E --apply-update\uFF0C\u62D2\u7EDD --skip-update\u3002
|
|
15
|
-
`,comment:"\u6574\u6BB5 --help"}},err:{from_dir_need_path:{code:"",text:"--from-dir \u9700\u8981\u6A21\u677F\u76EE\u5F55\u8DEF\u5F84",comment:"\u53C2\u6570\u9519\u8BEF"},data_id_need:{code:"",text:"--data-id \u9700\u8981\u8D44\u6E90\u5305 ID\uFF08data_id\uFF09",comment:"\u53C2\u6570\u9519\u8BEF"},skill_platform_need:{code:"",text:"--skill-platform \u9700\u8981\u7F16\u8F91\u5668\u540D\uFF08\u5982 cursor\uFF09",comment:"\u53C2\u6570\u9519\u8BEF"},skill_conflict:{code:"",text:"--skill-platform \u4E0E --skill-all \u4E0D\u80FD\u540C\u65F6\u4F7F\u7528",comment:"\u53C2\u6570\u9519\u8BEF"},cleared:{code:"",text:"\u5DF2\u6E05\u7A7A {dir}",comment:"\u5931\u8D25\u56DE\u6EDA"},clear_failed:{code:"",text:"\u65E0\u6CD5\u6E05\u7A7A {dir}\uFF1A{e}",comment:"\u5931\u8D25\u56DE\u6EDA\uFF1B{e} \u4E3A\u4E2D\u6587\u539F\u56E0\uFF0C\u4E0D\u8981\u586B\u7CFB\u7EDF Error.message"},sys_denied:{code:"",text:"\u6CA1\u6709\u6743\u9650\uFF0C\u6216\u6587\u4EF6\u88AB\u5360\u7528",comment:"EPERM / EACCES\uFF0C\u4E0D\u6253\u5370\u7CFB\u7EDF\u8DEF\u5F84"},sys_missing:{code:"",text:"\u8DEF\u5F84\u4E0D\u5B58\u5728",comment:"ENOENT"},sys_busy:{code:"",text:"\u76EE\u5F55\u975E\u7A7A\u6216\u6587\u4EF6\u6B63\u5728\u4F7F\u7528",comment:"EBUSY / ENOTEMPTY"},sys_type:{code:"",text:"\u8DEF\u5F84\u7C7B\u578B\u4E0D\u6B63\u786E",comment:"ENOTDIR / EISDIR"},sys_invalid:{code:"",text:"\u8DEF\u5F84\u65E0\u6548",comment:"EINVAL"},sys_too_many:{code:"",text:"\u6253\u5F00\u7684\u6587\u4EF6\u8FC7\u591A",comment:"EMFILE / ENFILE"},sys_unknown:{code:"",text:"\u7CFB\u7EDF\u62D2\u7EDD\u4E86\u8FD9\u6B21\u64CD\u4F5C",comment:"\u5176\u5B83\u7CFB\u7EDF\u9519\u8BEF\uFF0C\u4E0D\u6253\u5370 Error.message \u4EE5\u514D\u4E71\u7801"},owner_slug:{code:"",text:"\u4E0D\u8981\u5199\u6210 \u7528\u6237\u540D/\u6A21\u677F\u540D\u3002\u8BF7\u4F7F\u7528\u5E73\u53F0\u6A21\u677F ID\uFF08template_id\uFF0C\u5B57\u6BCD\u6570\u5B57\uFF09\uFF0C\u4F8B\u5982 k8n2x4m7q1w5",comment:"\u53C2\u6570\u9519\u8BEF"},data_id_from_dir:{code:"",text:"--data-id \u4E0D\u80FD\u4E0E --from-dir \u540C\u65F6\u4F7F\u7528",comment:"\u53C2\u6570\u9519\u8BEF"},invalid_data_id:{code:"",text:"\u65E0\u6548\u7684\u8D44\u6E90\u5305 ID\uFF08data_id\uFF09: {id}",comment:"\u53C2\u6570\u9519\u8BEF"},from_dir_not_template:{code:"",text:"--from-dir \u4E0D\u662F\u6A21\u677F\u76EE\u5F55: {dir}",comment:"\u53C2\u6570\u9519\u8BEF"},need_dest_no_tty:{code:"",text:"\u8BF7\u6307\u5B9A\u8981\u628A\u5DE5\u7A0B\u5EFA\u5728\u54EA\u4E2A\u6587\u4EF6\u5939\u3002",comment:"\u53C2\u6570\u9519\u8BEF"},dest_exists:{code:"",text:"\u8FD9\u4E2A\u6587\u4EF6\u5939\u5DF2\u7ECF\u6709\u4E1C\u897F\u4E86\uFF0C\u6362\u4E2A\u540D\u5B57\u6216\u8DEF\u5F84\u518D\u521B\u5EFA\uFF1A{dir}",comment:"\u53C2\u6570\u9519\u8BEF"},npm_install:{code:"",text:"npm install \u5931\u8D25",comment:"\u843D\u5730\u5931\u8D25"},bin_missing:{code:"",text:"\u627E\u4E0D\u5230 {js}",comment:"\u843D\u5730\u5931\u8D25"},run_js:{code:"",text:"\u65E0\u6CD5\u8FD0\u884C {js}: {e}",comment:"\u843D\u5730\u5931\u8D25"},init_failed:{code:"",text:"cgmaker init \u5931\u8D25",comment:"\u843D\u5730\u5931\u8D25"},npm_install_again:{code:"",text:"init \u540E npm install \u5931\u8D25",comment:"\u843D\u5730\u5931\u8D25"},run_npm:{code:"",text:"\u65E0\u6CD5\u8FD0\u884C {cmd}: {e}",comment:"npm \u542F\u52A8\u5931\u8D25"},need_input:{code:"11",text:"\u7F3A\u5C11\u9700\u8981\u5411\u7528\u6237\u786E\u8BA4\u7684\u53C2\u6570\u3002\u8BF7\u8BE2\u95EE\u7528\u6237\u540E\uFF0C\u628A\u7B54\u6848\u53D8\u6210\u547D\u4EE4\u884C\u65D7\u6807\u518D\u91CD\u8DD1\u3002",comment:"Agent \u9000\u51FA\u7801 11"},update_available:{code:"10",text:"\u68C0\u6D4B\u5230 cgmaker \u65B0\u7248\u672C\uFF0C\u63A8\u8350\u66F4\u65B0\u3002\u8BF7\u8BE2\u95EE\u7528\u6237\u662F\u5426\u73B0\u5728\u66F4\u65B0\u3002",comment:"Agent \u9000\u51FA\u7801 10"},update_use_latest:{code:"",text:"\u5F53\u524D\u76EE\u5F55\u6CA1\u6709 package.json\uFF0C\u65E0\u6CD5\u5199\u5165\u5DE5\u7A0B\u4F9D\u8D56\u3002\u8BF7\u6539\u7528 npx @66rpg/cgmaker-create@latest \u518D\u6267\u884C\u3002",comment:"create --apply-update \u65E0\u5DE5\u7A0B"},update_failed:{code:"",text:"\u66F4\u65B0\u5931\u8D25\uFF0C\u5DF2\u8DF3\u8FC7\uFF0C\u7EE7\u7EED\u6267\u884C\u539F\u547D\u4EE4\u3002",comment:"npm install \u5931\u8D25"}},prompt:{dest_dir:{code:"",text:"\u5DE5\u7A0B\u8981\u5EFA\u5728\u54EA\u4E2A\u6587\u4EF6\u5939\uFF1F\u8BF7\u8BF4\u4E00\u4E2A\u65B0\u6587\u4EF6\u5939\u7684\u540D\u5B57\uFF0C\u6216\u5B8C\u6574\u8DEF\u5F84\u3002",comment:"\u8BE2\u95EE\u843D\u5730\u76EE\u5F55"},skill:{code:"",text:"\u8981\u628A AI \u8BF4\u660E\u5B89\u88C5\u5230\u54EA\u4E2A\u7F16\u8F91\u5668\uFF1F",comment:"Agent / TTY \u9009\u5E73\u53F0"},skill_detected:{code:"",text:"\u68C0\u6D4B\u5230\u5F53\u524D\u4F7F\u7528\u7684\u7F16\u8F91\u5668\u662F {id}\u3002\u8981\u628A AI \u8BF4\u660E\u5B89\u88C5\u5230\u54EA\u4E2A\u7F16\u8F91\u5668\uFF1F",comment:"Agent \u9009\u5E73\u53F0\uFF0C\u5DF2\u63A2\u6D4B\u5230\u5BBF\u4E3B"},skill_current_suffix:{code:"",text:"\uFF08\u5F53\u524D\uFF09",comment:"\u63A2\u6D4B\u5230\u7684\u7F16\u8F91\u5668\u9009\u9879\u540E\u7F00"},ask:{code:"",text:"{question} ({fallback}): ",comment:"readline \u63D0\u95EE\u683C\u5F0F"},update_ask:{code:"",text:"\u68C0\u6D4B\u5230\u65B0\u7248\u672C\uFF0C\u63A8\u8350\u66F4\u65B0\uFF0C\u662F\u5426\u73B0\u5728\u66F4\u65B0\uFF1F\uFF08\u56DE\u8F66=\u662F\uFF0Cn=\u5426\uFF09",comment:"TTY \u66F4\u65B0\u786E\u8BA4"}},ok:{written:{code:"",text:"\u5DF2\u5199\u5165\u5DE5\u7A0B {dir}",comment:"\u843D\u5730\u6210\u529F"},installed:{code:"",text:"\u5DF2\u5B89\u88C5 @66rpg/cgmaker \u5E76\u6267\u884C cgmaker init\u3002",comment:"\u843D\u5730\u6210\u529F"},local_origin:{code:"",text:"\u672C\u5730 --from-dir \u7684\u6A21\u677F ID\uFF08origin.template_id\uFF09\u4E3A local\uFF0C\u4E0D\u80FD\u76F4\u63A5 publish-template \u5230\u5E73\u53F0\u3002",comment:"\u672C\u5730\u6A21\u677F\u63D0\u9192"},next:{code:"",text:"\u63A5\u7740: cd \u8BE5\u76EE\u5F55 && npm run dev",comment:"\u843D\u5730\u6210\u529F\u4E0B\u4E00\u6B65"},update_installing:{code:"",text:"\u6B63\u5728\u628A cgmaker \u76F8\u5173\u5305\u66F4\u65B0\u5230\u6700\u65B0\u2026",comment:"npm install \u524D"},update_done:{code:"",text:"\u5DF2\u66F4\u65B0\u3002\u5F53\u524D\u8FDB\u7A0B\u4ECD\u662F\u65E7\u4EE3\u7801\uFF0C\u8BF7\u91CD\u65B0\u6267\u884C\u521A\u624D\u7684\u547D\u4EE4\u3002",comment:"\u66F4\u65B0\u6210\u529F\u540E\u9000\u51FA"}}};function
|
|
16
|
-
`)}function
|
|
17
|
-
`)[0]?.trim();r.status===0&&s&&(t[n]=s)}catch{}return t}function
|
|
18
|
-
`)}function
|
|
19
|
-
`),
|
|
20
|
-
${
|
|
21
|
-
`,{encoding:"utf8",flag:"wx"}),
|
|
22
|
-
`)}function
|
|
23
|
-
`),
|
|
15
|
+
`,comment:"\u6574\u6BB5 --help"}},err:{from_dir_need_path:{code:"",text:"--from-dir \u9700\u8981\u6A21\u677F\u76EE\u5F55\u8DEF\u5F84",comment:"\u53C2\u6570\u9519\u8BEF"},data_id_need:{code:"",text:"--data-id \u9700\u8981\u8D44\u6E90\u5305 ID\uFF08data_id\uFF09",comment:"\u53C2\u6570\u9519\u8BEF"},skill_platform_need:{code:"",text:"--skill-platform \u9700\u8981\u7F16\u8F91\u5668\u540D\uFF08\u5982 cursor\uFF09",comment:"\u53C2\u6570\u9519\u8BEF"},skill_conflict:{code:"",text:"--skill-platform \u4E0E --skill-all \u4E0D\u80FD\u540C\u65F6\u4F7F\u7528",comment:"\u53C2\u6570\u9519\u8BEF"},cleared:{code:"",text:"\u5DF2\u6E05\u7A7A {dir}",comment:"\u5931\u8D25\u56DE\u6EDA"},clear_failed:{code:"",text:"\u65E0\u6CD5\u6E05\u7A7A {dir}\uFF1A{e}",comment:"\u5931\u8D25\u56DE\u6EDA\uFF1B{e} \u4E3A\u4E2D\u6587\u539F\u56E0\uFF0C\u4E0D\u8981\u586B\u7CFB\u7EDF Error.message"},sys_denied:{code:"",text:"\u6CA1\u6709\u6743\u9650\uFF0C\u6216\u6587\u4EF6\u88AB\u5360\u7528",comment:"EPERM / EACCES\uFF0C\u4E0D\u6253\u5370\u7CFB\u7EDF\u8DEF\u5F84"},sys_missing:{code:"",text:"\u8DEF\u5F84\u4E0D\u5B58\u5728",comment:"ENOENT"},sys_busy:{code:"",text:"\u76EE\u5F55\u975E\u7A7A\u6216\u6587\u4EF6\u6B63\u5728\u4F7F\u7528",comment:"EBUSY / ENOTEMPTY"},sys_type:{code:"",text:"\u8DEF\u5F84\u7C7B\u578B\u4E0D\u6B63\u786E",comment:"ENOTDIR / EISDIR"},sys_invalid:{code:"",text:"\u8DEF\u5F84\u65E0\u6548",comment:"EINVAL"},sys_too_many:{code:"",text:"\u6253\u5F00\u7684\u6587\u4EF6\u8FC7\u591A",comment:"EMFILE / ENFILE"},sys_unknown:{code:"",text:"\u7CFB\u7EDF\u62D2\u7EDD\u4E86\u8FD9\u6B21\u64CD\u4F5C",comment:"\u5176\u5B83\u7CFB\u7EDF\u9519\u8BEF\uFF0C\u4E0D\u6253\u5370 Error.message \u4EE5\u514D\u4E71\u7801"},owner_slug:{code:"",text:"\u4E0D\u8981\u5199\u6210 \u7528\u6237\u540D/\u6A21\u677F\u540D\u3002\u8BF7\u4F7F\u7528\u5E73\u53F0\u6A21\u677F ID\uFF08template_id\uFF0C\u5B57\u6BCD\u6570\u5B57\uFF09\uFF0C\u4F8B\u5982 k8n2x4m7q1w5",comment:"\u53C2\u6570\u9519\u8BEF"},data_id_from_dir:{code:"",text:"--data-id \u4E0D\u80FD\u4E0E --from-dir \u540C\u65F6\u4F7F\u7528",comment:"\u53C2\u6570\u9519\u8BEF"},invalid_data_id:{code:"",text:"\u65E0\u6548\u7684\u8D44\u6E90\u5305 ID\uFF08data_id\uFF09: {id}",comment:"\u53C2\u6570\u9519\u8BEF"},from_dir_not_template:{code:"",text:"--from-dir \u4E0D\u662F\u6A21\u677F\u76EE\u5F55: {dir}",comment:"\u53C2\u6570\u9519\u8BEF"},need_dest_no_tty:{code:"",text:"\u8BF7\u6307\u5B9A\u8981\u628A\u5DE5\u7A0B\u5EFA\u5728\u54EA\u4E2A\u6587\u4EF6\u5939\u3002",comment:"\u53C2\u6570\u9519\u8BEF"},dest_exists:{code:"",text:"\u8FD9\u4E2A\u6587\u4EF6\u5939\u5DF2\u7ECF\u6709\u4E1C\u897F\u4E86\uFF0C\u6362\u4E2A\u540D\u5B57\u6216\u8DEF\u5F84\u518D\u521B\u5EFA\uFF1A{dir}",comment:"\u53C2\u6570\u9519\u8BEF"},npm_install:{code:"",text:"npm install \u5931\u8D25",comment:"\u843D\u5730\u5931\u8D25"},bin_missing:{code:"",text:"\u627E\u4E0D\u5230 {js}",comment:"\u843D\u5730\u5931\u8D25"},run_js:{code:"",text:"\u65E0\u6CD5\u8FD0\u884C {js}: {e}",comment:"\u843D\u5730\u5931\u8D25"},init_failed:{code:"",text:"cgmaker init \u5931\u8D25",comment:"\u843D\u5730\u5931\u8D25"},npm_install_again:{code:"",text:"init \u540E npm install \u5931\u8D25",comment:"\u843D\u5730\u5931\u8D25"},run_npm:{code:"",text:"\u65E0\u6CD5\u8FD0\u884C {cmd}: {e}",comment:"npm \u542F\u52A8\u5931\u8D25"},need_input:{code:"11",text:"\u7F3A\u5C11\u9700\u8981\u5411\u7528\u6237\u786E\u8BA4\u7684\u53C2\u6570\u3002\u8BF7\u8BE2\u95EE\u7528\u6237\u540E\uFF0C\u628A\u7B54\u6848\u53D8\u6210\u547D\u4EE4\u884C\u65D7\u6807\u518D\u91CD\u8DD1\u3002",comment:"Agent \u9000\u51FA\u7801 11"},update_available:{code:"10",text:"\u68C0\u6D4B\u5230 cgmaker \u65B0\u7248\u672C\uFF0C\u63A8\u8350\u66F4\u65B0\u3002\u8BF7\u8BE2\u95EE\u7528\u6237\u662F\u5426\u73B0\u5728\u66F4\u65B0\u3002",comment:"Agent \u9000\u51FA\u7801 10"},update_use_latest:{code:"",text:"\u5F53\u524D\u76EE\u5F55\u6CA1\u6709 package.json\uFF0C\u65E0\u6CD5\u5199\u5165\u5DE5\u7A0B\u4F9D\u8D56\u3002\u8BF7\u6539\u7528 npx @66rpg/cgmaker-create@latest \u518D\u6267\u884C\u3002",comment:"create --apply-update \u65E0\u5DE5\u7A0B"},update_failed:{code:"",text:"\u66F4\u65B0\u5931\u8D25\uFF0C\u5DF2\u8DF3\u8FC7\uFF0C\u7EE7\u7EED\u6267\u884C\u539F\u547D\u4EE4\u3002",comment:"npm install \u5931\u8D25"}},prompt:{dest_dir:{code:"",text:"\u5DE5\u7A0B\u8981\u5EFA\u5728\u54EA\u4E2A\u6587\u4EF6\u5939\uFF1F\u8BF7\u8BF4\u4E00\u4E2A\u65B0\u6587\u4EF6\u5939\u7684\u540D\u5B57\uFF0C\u6216\u5B8C\u6574\u8DEF\u5F84\u3002",comment:"\u8BE2\u95EE\u843D\u5730\u76EE\u5F55"},skill:{code:"",text:"\u8981\u628A AI \u8BF4\u660E\u5B89\u88C5\u5230\u54EA\u4E2A\u7F16\u8F91\u5668\uFF1F",comment:"Agent / TTY \u9009\u5E73\u53F0"},skill_detected:{code:"",text:"\u68C0\u6D4B\u5230\u5F53\u524D\u4F7F\u7528\u7684\u7F16\u8F91\u5668\u662F {id}\u3002\u8981\u628A AI \u8BF4\u660E\u5B89\u88C5\u5230\u54EA\u4E2A\u7F16\u8F91\u5668\uFF1F",comment:"Agent \u9009\u5E73\u53F0\uFF0C\u5DF2\u63A2\u6D4B\u5230\u5BBF\u4E3B"},skill_current_suffix:{code:"",text:"\uFF08\u5F53\u524D\uFF09",comment:"\u63A2\u6D4B\u5230\u7684\u7F16\u8F91\u5668\u9009\u9879\u540E\u7F00"},skill_item:{code:"",text:" {n}) {id}",comment:"TTY skill \u9009\u9879"},skill_item_current:{code:"",text:" {n}) {id}{mark}",comment:"TTY skill \u5F53\u524D\u7F16\u8F91\u5668\u9009\u9879"},skill_all:{code:"",text:" 0) \u5168\u90E8\u7F16\u8F91\u5668",comment:"TTY skill \u5168\u90E8"},skill_skip:{code:"",text:" s) \u8DF3\u8FC7\uFF08\u4E4B\u540E\u53EF\u5728\u5DE5\u7A0B\u76EE\u5F55\u6267\u884C cgmaker skill \u518D\u5B89\u88C5\uFF09",comment:"TTY skill \u8DF3\u8FC7"},skill_ask:{code:"",text:"\u8BF7\u8F93\u5165\u5E8F\u53F7\u3001\u7F16\u8F91\u5668\u540D\u30010\uFF08\u5168\u90E8\uFF09\u6216 s\uFF08\u8DF3\u8FC7\uFF09\u3002\u76F4\u63A5\u56DE\u8F66\u65E0\u6548\uFF1A",comment:"TTY skill \u8F93\u5165\u63D0\u793A"},skill_empty:{code:"",text:"\u56DE\u8F66\u4E0D\u4F1A\u8DF3\u8FC7\u3002\u8BF7\u8F93\u5165\u5E8F\u53F7\u3001\u7F16\u8F91\u5668\u540D\u30010 \u6216 s\u3002",comment:"TTY skill \u7A7A\u56DE\u8F66"},skill_invalid:{code:"",text:"\u65E0\u6548\u9009\u62E9\u3002\u8BF7\u8F93\u5165\u5217\u8868\u4E2D\u7684\u5E8F\u53F7\u3001\u7F16\u8F91\u5668\u540D\u30010 \u6216 s\u3002",comment:"TTY skill \u65E0\u6548\u8F93\u5165"},ask:{code:"",text:"{question} ({fallback}): ",comment:"readline \u63D0\u95EE\u683C\u5F0F"},update_ask:{code:"",text:"\u68C0\u6D4B\u5230\u65B0\u7248\u672C\uFF0C\u63A8\u8350\u66F4\u65B0\uFF0C\u662F\u5426\u73B0\u5728\u66F4\u65B0\uFF1F\uFF08\u56DE\u8F66=\u662F\uFF0Cn=\u5426\uFF09",comment:"TTY \u66F4\u65B0\u786E\u8BA4"}},ok:{written:{code:"",text:"\u5DF2\u5199\u5165\u5DE5\u7A0B {dir}",comment:"\u843D\u5730\u6210\u529F"},installed:{code:"",text:"\u5DF2\u5B89\u88C5 @66rpg/cgmaker \u5E76\u6267\u884C cgmaker init\u3002",comment:"\u843D\u5730\u6210\u529F"},local_origin:{code:"",text:"\u672C\u5730 --from-dir \u7684\u6A21\u677F ID\uFF08origin.template_id\uFF09\u4E3A local\uFF0C\u4E0D\u80FD\u76F4\u63A5 publish-template \u5230\u5E73\u53F0\u3002",comment:"\u672C\u5730\u6A21\u677F\u63D0\u9192"},next:{code:"",text:"\u63A5\u7740: cd \u8BE5\u76EE\u5F55 && npm run dev",comment:"\u843D\u5730\u6210\u529F\u4E0B\u4E00\u6B65"},update_installing:{code:"",text:"\u6B63\u5728\u628A cgmaker \u76F8\u5173\u5305\u66F4\u65B0\u5230\u6700\u65B0\u2026",comment:"npm install \u524D"},update_done:{code:"",text:"\u5DF2\u66F4\u65B0\u3002\u5F53\u524D\u8FDB\u7A0B\u4ECD\u662F\u65E7\u4EE3\u7801\uFF0C\u8BF7\u91CD\u65B0\u6267\u884C\u521A\u624D\u7684\u547D\u4EE4\u3002",comment:"\u66F4\u65B0\u6210\u529F\u540E\u9000\u51FA"}}};function Te(){let e={...se};return delete e._comment,e}var Pe=Te();function o(e,t,n){let r=Pe[e]?.[t];if(!r?.text)throw new Error(`missing create message ${e}.${t}`);let s=r.text;if(n)for(let[i,a]of Object.entries(n))s=s.split(`{${i}}`).join(String(a));return s}function Oe(e){return e&&typeof e=="object"&&"code"in e&&typeof e.code=="string"?e.code:(e instanceof Error?e.message:String(e)).match(/\b(EPERM|EACCES|ENOENT|EBUSY|ENOTEMPTY|ENOTDIR|EISDIR|EINVAL|EMFILE|ENFILE)\b/)?.[1]??""}function je(e){return e?e.includes("\uFFFD")||e.includes("\\\\?\\"):!1}function C(e){switch(Oe(e)){case"EPERM":case"EACCES":return o("err","sys_denied");case"ENOENT":return o("err","sys_missing");case"EBUSY":case"ENOTEMPTY":return o("err","sys_busy");case"ENOTDIR":case"EISDIR":return o("err","sys_type");case"EINVAL":return o("err","sys_invalid");case"EMFILE":case"ENFILE":return o("err","sys_too_many");default:return o("err","sys_unknown")}}function ie(e){let t=e instanceof Error?e.message:String(e??"");return je(t)?C(e):t}function oe(){return process.platform==="win32"?"npm.cmd":"npm"}function R(e,t={}){let n=process.platform==="win32",r=De(oe(),e,{windowsHide:n,...t,shell:n});if(r.error)throw new Error(o("err","run_npm",{cmd:oe(),e:C(r.error)}));return r}import N from"node:fs";import Fe from"node:os";import A from"node:path";import Me from"node:readline";import{fileURLToPath as Le}from"node:url";var le=["@66rpg/cgmaker","@66rpg/cgmaker-create","@66rpg/cgmaker-win32-x64"],Ue=1440*60*1e3;function $e(e,t){let n=e.split(".").map(i=>Number.parseInt(i,10)||0),r=t.split(".").map(i=>Number.parseInt(i,10)||0),s=Math.max(n.length,r.length);for(let i=0;i<s;i++){let a=n[i]??0,f=r[i]??0;if(a>f)return!0;if(a<f)return!1}return!1}function V(e=Fe.homedir()){return A.join(e,".cgmaker","update-check.json")}function Ge(e=V()){try{let t=JSON.parse(N.readFileSync(e,"utf8"));return!t||typeof t.checkedAt!="number"||typeof t.latest!="object"?null:t}catch{return null}}function M(e,t=V()){N.mkdirSync(A.dirname(t),{recursive:!0}),N.writeFileSync(t,`${JSON.stringify(e,null,2)}
|
|
16
|
+
`)}function Je(){return A.resolve(A.dirname(Le(import.meta.url)),"..")}function Ke(e,t=process.cwd()){if(e==="@66rpg/cgmaker-create")try{let n=JSON.parse(N.readFileSync(A.join(Je(),"package.json"),"utf8"));if(n.version)return n.version}catch{}try{return JSON.parse(N.readFileSync(A.join(t,"node_modules",e,"package.json"),"utf8")).version||null}catch{return null}}function ce(e,t=process.cwd(),n={}){let r=[];for(let s of le){let i=e[s];if(!i||n[s]===i)continue;let a=Ke(s,t);a&&$e(i,a)&&r.push({name:s,current:a,latest:i})}return r}function Ye(e=process.cwd()){let t={};for(let n of le)try{let r=R(["view",n,"version"],{cwd:e,encoding:"utf8",timeout:2e3}),s=(r.stdout??"").toString().trim().split(`
|
|
17
|
+
`)[0]?.trim();r.status===0&&s&&(t[n]=s)}catch{}return t}function Be(){return process.env.CI==="true"||process.env.CGMAKER_NO_INTERACTIVE==="1"||process.env.CGMAKER_SKIP_UPDATE==="1"}function qe(){return process.platform==="win32"?["@66rpg/cgmaker-win32-x64"]:[]}function Ve(e){process.stdout.write(`${JSON.stringify({success:!1,code:10,command:"update-available",message:o("err","update_available"),data:{packages:e,apply:"npx @66rpg/cgmaker-create@latest --apply-update",skip:"npx @66rpg/cgmaker-create@latest --skip-update <\u539F\u547D\u4EE4\u4E0E\u53C2\u6570>"}},null,2)}
|
|
18
|
+
`)}function ze(e,t){let n=Me.createInterface({input:process.stdin,output:process.stdout});return new Promise(r=>{n.question(`${e} [${t}]: `,s=>{n.close(),r(s.trim()||t)})})}async function de(e){if(Be())return"continue";let t=e.cwd??process.cwd(),n=e.now??Date.now(),r=e.ppid??process.ppid,s=e.cacheFile??V(),i=Ge(s)??{checkedAt:0,latest:{}};if(n-i.checkedAt>=Ue){let d={};try{d=e.fetch?e.fetch():Ye(t)}catch{d={}}i={...i,checkedAt:n,latest:{...i.latest,...d}},M(i,s)}if(e.apply)return ae(i.latest,t);if(e.skip){let d={...i.declined};for(let g of ce(i.latest,t))d[g.name]=g.latest;return M({...i,declined:d,promptedPpid:r},s),"continue"}let a=ce(i.latest,t,i.declined??{});if(a.length===0)return"continue";if(e.agent)return Ve(a),"agent-block";if(!e.tty||i.promptedPpid===r)return"continue";let f=a.map(d=>`${d.name} ${d.current} \u2192 ${d.latest}`).join(`
|
|
19
|
+
`),y=await ze(`${o("prompt","update_ask")}
|
|
20
|
+
${f}`,"Y");if(M({...i,promptedPpid:r},s),/^(n|no|否)$/i.test(y)){let d={...i.declined};for(let g of a)d[g.name]=g.latest;return M({...i,declined:d,promptedPpid:r},s),"continue"}return ae(i.latest,t)}function ae(e,t){let n=A.join(t,"package.json");if(!N.existsSync(n))return console.error(o("err","update_use_latest")),"updated-exit";let r=[];for(let s of["@66rpg/cgmaker","@66rpg/cgmaker-create",...qe()]){let i=e[s];r.push(i?`${s}@${i}`:`${s}@latest`)}console.error(o("ok","update_installing"));try{if(R(["install","-D",...r],{cwd:t,stdio:"inherit"}).status!==0)return console.error(o("err","update_failed")),"continue"}catch{return console.error(o("err","update_failed")),"continue"}return console.error(o("ok","update_done")),"updated-exit"}var He=[{id:"workbuddy",tokens:["workbuddy"]},{id:"codebuddy",tokens:["codebuddy"]},{id:"cursor",tokens:["cursor"]},{id:"opencode",tokens:["opencode"]},{id:"claude",tokens:["claudecode","claude"]},{id:"codex",tokens:["codex"]},{id:"trae",tokens:["trae"]},{id:"kimi",tokens:["kimi"]},{id:"qwen",tokens:["qwen"]}],z=["agents","cursor","claude","codex","opencode","codebuddy","workbuddy","trae","kimi","qwen"];function We(e){let t=[" "];for(let n of e){let r="";for(let s of n.toLowerCase())s>="a"&&s<="z"||s>="0"&&s<="9"?r+=s:r?(t.push(r," "),r=""):t[t.length-1]!==" "&&t.push(" ");r&&t.push(r," ")}return t.join("")}function Xe(e){let t=[];for(let[n,r]of Object.entries(e))n&&t.push(n),typeof r=="string"&&r&&t.push(r);return t}function H(e=process.env){let t=We(Xe(e));for(let{id:n,tokens:r}of He)if(r.some(s=>t.includes(` ${s} `)))return n}function W(e,t){return!t||!e.includes(t)?[...e]:[t,...e.filter(n=>n!==t)]}function ue(e,t){let n=e.trim();if(!n)return{kind:"empty"};if(n.toLowerCase()==="s")return{kind:"skip"};if(n==="0")return{kind:"all"};if(/^\d+$/.test(n)){let s=Number(n);if(s>=1&&s<=t.length){let i=t[s-1];if(i)return{kind:"platform",id:i}}return{kind:"invalid"}}let r=n.replace(/^[.\\/]+/,"").split(/[\\/]/)[0]?.toLowerCase()??"";return t.includes(r)?{kind:"platform",id:r}:{kind:"invalid"}}import j from"node:fs";import X from"node:path";function pe(e){if(!j.existsSync(e)||!j.statSync(e).isDirectory()||j.existsSync(X.join(e,".cgmaker","origin.json")))return!1;let t=X.join(e,"package.json");if(!j.existsSync(t))return!1;try{let n=JSON.parse(j.readFileSync(t,"utf8"));return!!(n.devDependencies?.["@66rpg/cgmaker"]||n.dependencies?.["@66rpg/cgmaker"])}catch{return!1}}function fe(e){return X.join(e,"node_modules/@66rpg/cgmaker/bin/cgmaker.js")}var Z={CliCreateResult:"CliCreateResult"},Ze=new Set(["usage","need_input","update","dest_exists","from_dir_invalid","npm_install","bin_missing","init_failed","fail"]);function me(e){if(e)return Ze.has(e)?e:void 0}function Q(e){return e===0?"ok":e===10?"update":e===11?"need_input":e===12?"login_required":e===2?"usage":"fail"}import I from"node:fs";import ut from"node:os";import ye from"node:path";import U from"node:fs";import Qe from"node:os";import D from"node:path";import{fileURLToPath as et}from"node:url";var $="huanguang",ge="cgmaker_npm",_e="cgmaker_create",tt=`https://fx-it.66rpg.com:8206/sa?project=${$}`;function ee(e,t=$){try{let n=new URL(e);return n.protocol==="https:"&&n.hostname==="fx-it.66rpg.com"&&n.port==="8206"&&n.pathname==="/sa"&&n.searchParams.get("project")===t&&!n.username&&!n.password}catch{return!1}}function L(e,t){return String(e[t]??"").trim().toLowerCase()}function nt(e){let t=L(e,"CGMAKER_NO_ANALYTICS");if(t==="1"||t==="true")return!0;let n=L(e,"CGMAKER_ANALYTICS");if(n==="0"||n==="false")return!0;let r=L(e,"CI");return!!(r==="true"||r==="1"||e.NODE_TEST_CONTEXT)}function rt(){let e=D.dirname(et(import.meta.url));for(;;){if(U.existsSync(D.join(e,"package.json")))return e;let t=D.dirname(e);if(t===e)return e;e=t}}function st(){try{let e=JSON.parse(U.readFileSync(D.join(rt(),"package.json"),"utf8"));return typeof e.version=="string"?e.version:""}catch{return""}}function it(e){try{let t=D.join(e,".cgmaker","config.json");if(!U.existsSync(t))return;let n=JSON.parse(U.readFileSync(t,"utf8"));return n&&typeof n=="object"?n:void 0}catch{return}}function ot(e){let t=e?.web_config,n=typeof t?.type=="string"?t.type:"",r=typeof t?.base_cg=="string"?t.base_cg:"";return n&&n!=="1"||r.toLowerCase().includes("test")?"test":"release"}function ct(e){let t=e?.env??process.env,n=e?.homeDir??Qe.homedir(),r=e?.fileConfig??(e?.skipFile?void 0:it(n)),s=ot(r),i=r?.sensorsAnalytics,a=!0;typeof i?.enabled=="boolean"&&(a=i.enabled),nt(t)&&(a=!1);let f=tt,y=typeof i?.serverUrl=="string"?i.serverUrl.trim():"";y&&ee(y)&&(f=y);let d=typeof t.CGMAKER_SENSORS_URL=="string"?t.CGMAKER_SENSORS_URL.trim():"";d&&ee(d)&&(f=d),ee(f)||(a=!1);let g=L(t,"CGMAKER_ANALYTICS_LOG"),h=s!=="release"&&(i?.showLog===!0||g==="1"||g==="true");return{enabled:a,serverUrl:f,showLog:h,deployEnv:s,releaseId:e?.releaseId??st()}}var te;function G(){return te||(te=ct()),te}var at=/^\$?[A-Za-z][A-Za-z0-9_]{0,99}$/,lt=new Set(["access_token","token","cookie","authorization","phone","mobile","wechat","qq","content","body","draft_title","search","query","error","message","stack","order_no","password","refresh_token","nick_name","nickname","username","lumi_username","dest","dest_dir","cwd","argv","from_dir","path","filepath"]);function dt(e){if(e!=null){if(typeof e=="string")return e.slice(0,256);if(typeof e=="number")return Number.isFinite(e)?e:void 0;if(typeof e=="boolean"||e instanceof Date)return e;if(Array.isArray(e))return e.slice(0,20).map(t=>t.slice(0,256))}}function ke(e){let t={};for(let[n,r]of Object.entries(e)){if(!at.test(n)||lt.has(n.toLowerCase()))continue;let s=dt(r);s!==void 0&&(t[n]=s)}return t}var pt=100,ft=600,mt=700,gt="analytics-device-id",J=[],K=new Set,b,ne=!1;function he(e){try{return`${e}-${crypto.randomUUID()}`}catch{return`${e}-${Date.now()}-${Math.random().toString(36).slice(2,12)}`}}function Se(e=ut.homedir()){if(b)return b;let t=ye.join(e,".cgmaker"),n=ye.join(t,gt);try{if(I.existsSync(n)){let s=I.readFileSync(n,"utf8").trim();if(s)return b=s,s}let r=he("cli");return I.mkdirSync(t,{recursive:!0}),I.writeFileSync(n,`${r}
|
|
21
|
+
`,{encoding:"utf8",flag:"wx"}),b=r,r}catch{try{if(I.existsSync(n)){let r=I.readFileSync(n,"utf8").trim();if(r)return b=r,r}}catch{}return b=he("session"),b}}function _t(){let e=Number.parseInt(process.versions.node,10);return Number.isFinite(e)?e:void 0}function kt(){let e=G();return{product:ge,app_id:_e,deploy_env:e.deployEnv,env:e.deployEnv==="release"?"production":"development",release_id:e.releaseId,surface:"cli",device_type:"desktop",device_code:Se(),event_schema_version:1,os_platform:process.platform,os_arch:process.arch,node_major:_t()}}function yt(e){K.add(e),e.finally(()=>K.delete(e))}async function ht(e,t){let n=G();if(!n.enabled)return;let r={distinct_id:Se(),time:Date.now(),type:"track",event:e,project:$,properties:{$lib:"Node",$lib_version:n.releaseId||"0",$lib_method:"code",...ke({...kt(),...t})}};n.showLog&&console.error(`[cgmaker analytics] ${e}`);let s=Buffer.from(JSON.stringify(r),"utf8").toString("base64"),i=`data=${encodeURIComponent(s)}&gzip=0`,a=await fetch(n.serverUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:i,redirect:"error",signal:AbortSignal.timeout(ft)});n.showLog&&console.error(`[cgmaker analytics] ${e} ${a.status}`)}function xe(){if(ne)return;ne=!0;let e=J.splice(0);for(let t of e)yt(ht(t.name,t.properties).catch(()=>{}));ne=!1}function Ee(e,t={}){try{if(!G().enabled)return;J.length>=pt&&J.shift(),J.push({name:e,properties:t}),xe()}catch{}}async function we(e=mt){try{if(xe(),K.size===0)return;await Promise.race([Promise.allSettled([...K]),new Promise(t=>{setTimeout(t,e).unref?.()})])}catch{}}function St(e){return!!(e&&/^[a-zA-Z0-9]+$/.test(e))}function xt(e,t={}){let n=t.outcome??Q(e),r=t.success??(e===0&&n==="ok");Ee(Z.CliCreateResult,{package:"cgmaker-create",success:r,outcome:n,reason:me(t.reason)??(n==="ok"?void 0:n),source:t.source,has_data_id:t.has_data_id,skill:t.skill,agent:!!t.agent,content_id:St(t.content_id)?t.content_id:void 0})}async function Y(e,t={}){try{t.skip||xt(e,t),await we()}catch{}process.exit(e)}function T(){return o("help","body")}function vt(){return p.resolve(p.dirname(Et(import.meta.url)),"..")}function Re(e=process.cwd()){let t=e;for(;;){let n=p.join(t,"templates"),r=p.join(t,"package.json");if(u.existsSync(n)&&u.existsSync(r))try{if(JSON.parse(u.readFileSync(r,"utf8")).workspaces?.some(a=>a.includes("templates")))return t}catch{}let s=p.dirname(t);if(s===t)return null;t=s}}function At(){return JSON.parse(u.readFileSync(p.join(vt(),"package.json"),"utf8"))}function Ne(){let e=Re();if(e){let t=p.join(e,"packages/cgmaker");if(u.existsSync(t))return`file:${t.replace(/\\/g,"/")}`}return`^${At().version}`}function bt(e){let t=e.split("@")[0]??e;return((t.includes("/")?t.split("/").pop():t)||"game").replace(/^tmpl_/,"tmpl-")}function ve(e){return/^[a-zA-Z0-9]+$/.test(e)}function Ct(e){let t=e.filter(h=>h!=="--"),n,r,s,i=!1,a=!1,f=!1,y=!1,d=!1,g=[];for(let h=0;h<t.length;h++){let c=t[h];if(c==="--from-dir"){let m=t[++h];if(!m||m.startsWith("-"))throw new Error(o("err","from_dir_need_path"));n=m;continue}if(c.startsWith("--from-dir=")){if(n=c.slice(11),!n)throw new Error(o("err","from_dir_need_path"));continue}if(c==="--data-id"||c==="--data-ver-id"){let m=t[++h];if(!m||m.startsWith("-"))throw new Error(o("err","data_id_need"));r=m;continue}if(c.startsWith("--data-id=")){if(r=c.slice(10),!r)throw new Error(o("err","data_id_need"));continue}if(c.startsWith("--data-ver-id=")){if(r=c.slice(14),!r)throw new Error(o("err","data_id_need"));continue}if(c==="--skill-all"){i=!0;continue}if(c==="--skill-skip"||c==="--skip-skill"){a=!0;continue}if(c==="--agent"){f=!0;continue}if(c==="--apply-update"){y=!0;continue}if(c==="--skip-update"){d=!0;continue}if(c!=="--json"){if(c==="--skill-platform"){let m=t[++h];if(!m||m.startsWith("-"))throw new Error(o("err","skill_platform_need"));s=m;continue}if(c.startsWith("--skill-platform=")){if(s=c.slice(17),!s)throw new Error(o("err","skill_platform_need"));continue}g.push(c)}}if(i&&s)throw new Error(o("err","skill_conflict"));if(a&&(i||s))throw new Error(o("err","skill_conflict"));return{rest:g,fromDir:n,dataId:r,skillPlatform:s,skillAll:i,skillSkip:a,agent:f,applyUpdate:y,skipUpdateFlag:d}}function Rt(e,t){process.stdout.write(`${JSON.stringify({success:!1,code:11,command:"need-input",message:e,data:{questions:t}},null,2)}
|
|
22
|
+
`)}function Nt(e){return process.env.CI==="true"||process.env.CGMAKER_NO_INTERACTIVE==="1"?!1:e||process.env.CGMAKER_AGENT==="1"}function Ae(e,t){try{if(!u.existsSync(e))return;if(!t)u.rmSync(e,{recursive:!0,force:!0});else for(let n of u.readdirSync(e))u.rmSync(p.join(e,n),{recursive:!0,force:!0});console.error(o("err","cleared",{dir:e}))}catch(n){console.error(o("err","clear_failed",{dir:e,e:C(n)}))}}function It(e,t){let n=Ce.createInterface({input:process.stdin,output:process.stdout});return new Promise(r=>{n.question(o("prompt","ask",{question:e,fallback:t}),s=>{n.close(),r(s.trim()||t)})})}function Tt(e,t){return new Promise(n=>{t.question(e,r=>n(r))})}async function Pt(){let e=H(),t=W([...z],e),n=e&&t.includes(e)?e:void 0,r=o("prompt","skill_current_suffix");console.log(n?o("prompt","skill_detected",{id:n}):o("prompt","skill"));for(let i=0;i<t.length;i++){let a=t[i];console.log(a===n?o("prompt","skill_item_current",{n:String(i+1),id:a,mark:r}):o("prompt","skill_item",{n:String(i+1),id:a}))}console.log(o("prompt","skill_all")),console.log(o("prompt","skill_skip"));let s=Ce.createInterface({input:process.stdin,output:process.stdout});try{for(;;){let i=ue(await Tt(o("prompt","skill_ask"),s),t);if(i.kind==="empty"){console.log(o("prompt","skill_empty"));continue}if(i.kind==="invalid"){console.log(o("prompt","skill_invalid"));continue}return i.kind==="skip"?"skip":i.kind==="all"?"all":i.id}}finally{s.close()}}function B(){return!!(process.stdin.isTTY&&process.stdout.isTTY)}function Ot(e,t){u.mkdirSync(e,{recursive:!0});let n={name:t,private:!0,type:"module",engines:{node:">=20"},devDependencies:{"@66rpg/cgmaker":Ne()}};u.writeFileSync(p.join(e,"package.json"),`${JSON.stringify(n,null,2)}
|
|
23
|
+
`),u.writeFileSync(p.join(e,".gitignore"),`node_modules/
|
|
24
24
|
dist/
|
|
25
25
|
.DS_Store
|
|
26
|
-
`);let r=n.devDependencies["@66rpg/cgmaker"],s=process.env.CGMAKER_NPM_SCOPE_REGISTRY?.trim();s&&typeof r=="string"&&!r.startsWith("file:")&&
|
|
27
|
-
`)}function
|
|
28
|
-
`)}function
|
|
26
|
+
`);let r=n.devDependencies["@66rpg/cgmaker"],s=process.env.CGMAKER_NPM_SCOPE_REGISTRY?.trim();s&&typeof r=="string"&&!r.startsWith("file:")&&u.writeFileSync(p.join(e,".npmrc"),`@66rpg:registry=${s}
|
|
27
|
+
`)}function be(e,t){let n=p.join(e,"package.json"),r=JSON.parse(u.readFileSync(n,"utf8"));r.name=t,r.devDependencies=r.devDependencies??{},r.devDependencies["@66rpg/cgmaker"]||(r.devDependencies["@66rpg/cgmaker"]=Ne()),u.writeFileSync(n,`${JSON.stringify(r,null,2)}
|
|
28
|
+
`)}function jt(){return process.platform==="win32"?"cgmaker.exe":"cgmaker"}function Dt(){let e=process.platform,t=process.arch;return e==="darwin"&&t==="arm64"?["aarch64-apple-darwin"]:e==="darwin"&&t==="x64"?["x86_64-apple-darwin"]:e==="win32"&&t==="x64"?["x86_64-pc-windows-gnu","x86_64-pc-windows-msvc"]:e==="linux"&&t==="x64"?["x86_64-unknown-linux-gnu","x86_64-unknown-linux-musl"]:e==="linux"&&t==="arm64"?["aarch64-unknown-linux-gnu","aarch64-unknown-linux-musl"]:[]}function Ft(e){let t=jt(),n=[];for(let r of["release","debug"]){for(let s of Dt())n.push(p.join(e,s,r,t));n.push(p.join(e,r,t))}return n}function Mt(){if(process.env.CG_MAKER_CLI_BIN&&u.existsSync(process.env.CG_MAKER_CLI_BIN))return process.env.CG_MAKER_CLI_BIN;if(process.env.CGMAKER_BIN&&u.existsSync(process.env.CGMAKER_BIN))return process.env.CGMAKER_BIN;let e=[];process.env.CARGO_TARGET_DIR&&e.push(process.env.CARGO_TARGET_DIR);let t=Re();t&&e.push(p.join(t,"target"));for(let n of e)for(let r of Ft(n))if(u.existsSync(r))return r}async function Lt(){let e=Ct(process.argv.slice(2)),{rest:t,fromDir:n,dataId:r,agent:s,applyUpdate:i,skipUpdateFlag:a}=e,{skillPlatform:f,skillAll:y,skillSkip:d}=e;if(t.includes("-h")||t.includes("--help")){process.stdout.write(T());return}let g=Nt(s);g&&(process.env.CGMAKER_AGENT="1");let h={agent:g,source:n?"from_dir":"template_id",has_data_id:!!r,skill:y?"all":d?"skip":f?"platform":"none",content_id:void 0},c=(l,k={})=>Y(l,{...h,...k});if(i||a||t.length>0){let l=await de({apply:i,skip:a,agent:g,tty:B()});if(l==="updated-exit")return c(0,{reason:"update",outcome:"update"});if(l==="agent-block")return c(10,{reason:"update"})}if(t.length===0)return process.stdout.write(T()),c(1,{reason:"usage"});let m=t[0],P=t[1],w=r??t[2];if(ve(m)&&!n&&(h.content_id=m),h.has_data_id=!!w,t.length>3)return process.stderr.write(T()),c(1,{reason:"usage"});if(!m||m.startsWith("-"))return process.stderr.write(T()),c(1,{reason:"usage"});if(m.includes("/"))return console.error(o("err","owner_slug")),c(1,{reason:"usage"});if(P?.startsWith("-"))return process.stderr.write(T()),c(1,{reason:"usage"});if(n&&w)return console.error(o("err","data_id_from_dir")),c(1,{reason:"usage"});if(w&&w!=="0"&&!ve(w))return console.error(o("err","invalid_data_id",{id:w})),c(1,{reason:"usage"});if(g){let l=[];if(P||l.push({id:"create.dest",kind:"text",question:o("prompt","dest_dir")}),!f&&!y&&!d){let k=[...z],v=H(),x=v&&k.includes(v)?v:void 0,S=o("prompt","skill_current_suffix");l.push({id:"create.skill",kind:"select",question:x?o("prompt","skill_detected",{id:x}):o("prompt","skill"),recommended:!0,default:x,options:[...W(k,x).map(E=>({value:E,label:E===x?`${E}${S}`:E,flag:`--skill-platform ${E}`,recommended:E===x})),{value:"__all__",label:"all",flag:"--skill-all"},{value:"skip",label:"skip",flag:"--skill-skip",optional:!0}]})}if(l.some(k=>k.optional!==!0))return Rt(o("err","need_input"),l),c(11,{reason:"need_input"})}if(n){let l=p.resolve(n);if(!u.existsSync(p.join(l,"package.json")))return console.error(o("err","from_dir_not_template",{dir:l})),c(1,{reason:"from_dir_invalid"})}if(!P){let l=bt(m);if(!B())return console.error(o("err","need_dest_no_tty")),process.stderr.write(T()),c(1,{reason:"usage"});P=await It(o("prompt","dest_dir"),l)}let _=p.resolve(P),q=u.existsSync(_),F=pe(_);if(q&&u.readdirSync(_).length&&!F)return console.error(o("err","dest_exists",{dir:_})),c(1,{reason:"dest_exists"});if(!f&&!y&&!d&&B()){let l=await Pt();l==="all"?y=!0:l==="skip"?d=!0:f=l,h.skill=y?"all":d?"skip":"platform"}let O=async(l,k=1,v="fail")=>(F||Ae(_,q),console.error(l),c(k,{reason:v}));try{F?be(_,p.basename(_)):Ot(_,p.basename(_));let l=fe(_);if(!u.existsSync(l)){let re=R(["install"],{cwd:_,stdio:"inherit"});re.status!==0&&await O(o("err","npm_install"),re.status??1,"npm_install")}u.existsSync(l)||await O(o("err","bin_missing",{js:l}),1,"bin_missing");let k=[l,"init",m];n&&k.push("--from-dir",p.resolve(n)),w&&k.push("--data-id",w),y&&k.push("--all"),f&&k.push("--platform",f),d&&k.push("--skip-skill"),g&&k.push("--agent","--json");let v=Mt(),x={...process.env};v&&(x.CGMAKER_BIN=v),g&&(x.CGMAKER_AGENT="1"),x.CGMAKER_SKIP_UPDATE="1";let S=wt(process.execPath,k,{cwd:_,stdio:"inherit",windowsHide:!B(),env:x});if(S.error&&await O(o("err","run_js",{js:l,e:C(S.error)}),1,"init_failed"),S.status===10||S.status===11||S.status===12)return c(S.status,{reason:S.status===10?"update":S.status===11?"need_input":"fail"});S.status!==0&&await O(o("err","init_failed"),S.status??1,"init_failed"),be(_,p.basename(_));let E=R(["install"],{cwd:_,stdio:"inherit"});E.status!==0&&await O(o("err","npm_install_again"),E.status??1,"npm_install")}catch(l){throw F||Ae(_,q),l}return console.log(o("ok","written",{dir:_})),console.log(o("ok","installed")),n&&console.log(o("ok","local_origin")),console.log(o("ok","next")),c(0,{success:!0,outcome:"ok"})}Lt().catch(async e=>{console.error(ie(e)),await Y(1,{reason:"fail"})});
|