@alipay/alipay-aipay 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/alipay-aipay.js +6 -0
- package/dist/commands/install.d.ts +11 -0
- package/dist/commands/install.d.ts.map +1 -0
- package/dist/commands/install.js +182 -0
- package/dist/commands/install.js.map +1 -0
- package/dist/commands/prepare-tools.d.ts +5 -0
- package/dist/commands/prepare-tools.d.ts.map +1 -0
- package/dist/commands/prepare-tools.js +29 -0
- package/dist/commands/prepare-tools.js.map +1 -0
- package/dist/commands/uninstall.d.ts +10 -0
- package/dist/commands/uninstall.d.ts.map +1 -0
- package/dist/commands/uninstall.js +82 -0
- package/dist/commands/uninstall.js.map +1 -0
- package/dist/commands/update.d.ts +10 -0
- package/dist/commands/update.d.ts.map +1 -0
- package/dist/commands/update.js +155 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +65 -0
- package/dist/index.js.map +1 -0
- package/dist/types.d.ts +43 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/alipay-cli.d.ts +15 -0
- package/dist/utils/alipay-cli.d.ts.map +1 -0
- package/dist/utils/alipay-cli.js +221 -0
- package/dist/utils/alipay-cli.js.map +1 -0
- package/dist/utils/config.d.ts +48 -0
- package/dist/utils/config.d.ts.map +1 -0
- package/dist/utils/config.js +207 -0
- package/dist/utils/config.js.map +1 -0
- package/dist/utils/file.d.ts +55 -0
- package/dist/utils/file.d.ts.map +1 -0
- package/dist/utils/file.js +154 -0
- package/dist/utils/file.js.map +1 -0
- package/dist/utils/gpg.d.ts +14 -0
- package/dist/utils/gpg.d.ts.map +1 -0
- package/dist/utils/gpg.js +247 -0
- package/dist/utils/gpg.js.map +1 -0
- package/dist/utils/jq.d.ts +14 -0
- package/dist/utils/jq.d.ts.map +1 -0
- package/dist/utils/jq.js +221 -0
- package/dist/utils/jq.js.map +1 -0
- package/dist/utils/npm.d.ts +17 -0
- package/dist/utils/npm.d.ts.map +1 -0
- package/dist/utils/npm.js +42 -0
- package/dist/utils/npm.js.map +1 -0
- package/dist/utils/shell.d.ts +11 -0
- package/dist/utils/shell.d.ts.map +1 -0
- package/dist/utils/shell.js +54 -0
- package/dist/utils/shell.js.map +1 -0
- package/package.json +48 -7
- package/skill/SKILL.md +118 -0
- package/skill/references/integration/flow.md +487 -0
- package/skill/references/integration/modules/alipay-sdk-reminder.md +256 -0
- package/skill/references/integration/modules/checklist.md +122 -0
- package/skill/references/integration/modules/code-examples/csharp/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/345/205/263/351/227/255/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +68 -0
- package/skill/references/integration/modules/code-examples/csharp/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +77 -0
- package/skill/references/integration/modules/code-examples/csharp/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +74 -0
- package/skill/references/integration/modules/code-examples/csharp/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +73 -0
- package/skill/references/integration/modules/code-examples/csharp/2-/347/275/221/347/253/231/346/224/257/344/273/230//347/273/237/344/270/200/346/224/266/345/215/225/344/270/213/345/215/225/345/271/266/346/224/257/344/273/230/351/241/265/351/235/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +58 -0
- package/skill/references/integration/modules/code-examples/csharp/3-APP/346/224/257/344/273/230/APP/346/224/257/344/273/230/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +128 -0
- package/skill/references/integration/modules/code-examples/csharp/4-/346/214/211/351/207/217/344/273/230/350/264/271/A2MPaymentDemo.cs +500 -0
- package/skill/references/integration/modules/code-examples/java/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/345/205/263/351/227/255/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +72 -0
- package/skill/references/integration/modules/code-examples/java/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +80 -0
- package/skill/references/integration/modules/code-examples/java/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +78 -0
- package/skill/references/integration/modules/code-examples/java/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +77 -0
- package/skill/references/integration/modules/code-examples/java/2-/347/275/221/347/253/231/346/224/257/344/273/230//347/273/237/344/270/200/346/224/266/345/215/225/344/270/213/345/215/225/345/271/266/346/224/257/344/273/230/351/241/265/351/235/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +66 -0
- package/skill/references/integration/modules/code-examples/java/3-APP/346/224/257/344/273/230/APP/346/224/257/344/273/230/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +135 -0
- package/skill/references/integration/modules/code-examples/java/4-/346/214/211/351/207/217/344/273/230/350/264/271/A2MPaymentDemoController.java +610 -0
- package/skill/references/integration/modules/code-examples/nodejs/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/345/205/263/351/227/255/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +51 -0
- package/skill/references/integration/modules/code-examples/nodejs/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +57 -0
- package/skill/references/integration/modules/code-examples/nodejs/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +55 -0
- package/skill/references/integration/modules/code-examples/nodejs/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +54 -0
- package/skill/references/integration/modules/code-examples/nodejs/2-/347/275/221/347/253/231/346/224/257/344/273/230//347/273/237/344/270/200/346/224/266/345/215/225/344/270/213/345/215/225/345/271/266/346/224/257/344/273/230/351/241/265/351/235/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +77 -0
- package/skill/references/integration/modules/code-examples/nodejs/3-APP/346/224/257/344/273/230/APP/346/224/257/344/273/230/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +65 -0
- package/skill/references/integration/modules/code-examples/nodejs/4-/346/214/211/351/207/217/344/273/230/350/264/271/A2MPaymentDemo.js +461 -0
- package/skill/references/integration/modules/code-examples/php/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/345/205/263/351/227/255/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +59 -0
- package/skill/references/integration/modules/code-examples/php/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +67 -0
- package/skill/references/integration/modules/code-examples/php/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +66 -0
- package/skill/references/integration/modules/code-examples/php/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +65 -0
- package/skill/references/integration/modules/code-examples/php/2-/347/275/221/347/253/231/346/224/257/344/273/230//347/273/237/344/270/200/346/224/266/345/215/225/344/270/213/345/215/225/345/271/266/346/224/257/344/273/230/351/241/265/351/235/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +56 -0
- package/skill/references/integration/modules/code-examples/php/3-APP/346/224/257/344/273/230/APP/346/224/257/344/273/230/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +107 -0
- package/skill/references/integration/modules/code-examples/php/4-/346/214/211/351/207/217/344/273/230/350/264/271/A2MPaymentDemo.php +444 -0
- package/skill/references/integration/modules/code-examples/python/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/345/205/263/351/227/255/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +57 -0
- package/skill/references/integration/modules/code-examples/python/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +65 -0
- package/skill/references/integration/modules/code-examples/python/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +63 -0
- package/skill/references/integration/modules/code-examples/python/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +62 -0
- package/skill/references/integration/modules/code-examples/python/2-/347/275/221/347/253/231/346/224/257/344/273/230//347/273/237/344/270/200/346/224/266/345/215/225/344/270/213/345/215/225/345/271/266/346/224/257/344/273/230/351/241/265/351/235/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +48 -0
- package/skill/references/integration/modules/code-examples/python/3-APP/346/224/257/344/273/230/APP/346/224/257/344/273/230/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +43 -0
- package/skill/references/integration/modules/code-examples/python/4-/346/214/211/351/207/217/344/273/230/350/264/271/A2MPaymentDemo.py +465 -0
- package/skill/references/integration/modules/interface-guide.md +90 -0
- package/skill/references/integration/modules/product-decision.md +90 -0
- package/skill/references/integration/modules/sandbox/a2m-sandbox-test.md +270 -0
- package/skill/references/integration/modules/sandbox/alipay-sandbox-tool.md +133 -0
- package/skill/references/integration/modules/sandbox/sandbox-setup-guide.md +218 -0
- package/skill/references/integration/modules/scripts/local_402_sandbox_pay.py +659 -0
- package/skill/references/normal/alipay-cli-env.md +214 -0
- package/skill/references/normal/rejection-guide.md +37 -0
- package/skill/references/normal/scripts/common.sh +32 -0
- package/skill/references/normal/scripts/detect_dev_tool.sh +46 -0
- package/skill/references/onboarding/flow.md +571 -0
- package/skill/references/onboarding/modules/app-release.md +411 -0
- package/skill/references/onboarding/modules/authorization.md +269 -0
- package/skill/references/onboarding/modules/error-handling.md +247 -0
- package/skill/references/onboarding/modules/mcc-reference.md +209 -0
- package/skill/references/onboarding/modules/product-sign.md +304 -0
- package/skill/references/onboarding/modules/scripts/app.sh +705 -0
- package/skill/references/onboarding/modules/scripts/ar_sign_apply.sh +248 -0
- package/skill/references/onboarding/modules/scripts/auth.sh +505 -0
- package/skill/references/onboarding/modules/scripts/error_handler.sh +312 -0
- package/skill/references/onboarding/modules/scripts/query_sign_status.sh +146 -0
- package/skill/references/onboarding/modules/scripts/service.sh +267 -0
- package/skill/references/onboarding/modules/scripts/upload_screenshots.sh +152 -0
- package/skill/references/onboarding/modules/service-registration.md +294 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type InstallTarget } from '../utils/config.js';
|
|
2
|
+
/**
|
|
3
|
+
* install 命令实现 - 安装 Skill 文件并准备 alipay-cli 环境。
|
|
4
|
+
*/
|
|
5
|
+
export interface InstallCommandOptions {
|
|
6
|
+
target?: InstallTarget;
|
|
7
|
+
withJq?: boolean;
|
|
8
|
+
skipTools?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export declare function installCommand(cwd: string, options?: InstallCommandOptions): Promise<void>;
|
|
11
|
+
//# sourceMappingURL=install.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAMA,OAAO,EAML,KAAK,aAAa,EACnB,MAAM,oBAAoB,CAAC;AAW5B;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,wBAAsB,cAAc,CAClC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,IAAI,CAAC,CA4If"}
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import ora from 'ora';
|
|
3
|
+
import { spawn } from 'child_process';
|
|
4
|
+
import fs from 'fs';
|
|
5
|
+
import os from 'os';
|
|
6
|
+
import path from 'path';
|
|
7
|
+
import { SKILLS, getPackageVersion, getCommandContext, getAllCommandContexts, PACKAGE_ROOT, } from '../utils/config.js';
|
|
8
|
+
import { ensureDir, installSkillFiles, writeVersionFile, readVersionRecord, } from '../utils/file.js';
|
|
9
|
+
import { checkGpg } from '../utils/gpg.js';
|
|
10
|
+
import { checkAlipayCli } from '../utils/alipay-cli.js';
|
|
11
|
+
import { checkJq } from '../utils/jq.js';
|
|
12
|
+
export async function installCommand(cwd, options = {}) {
|
|
13
|
+
const target = options.target ?? 'all';
|
|
14
|
+
const withJq = options.withJq ?? false;
|
|
15
|
+
const skipTools = options.skipTools ?? false;
|
|
16
|
+
const contexts = target === 'all'
|
|
17
|
+
? getAllCommandContexts(cwd)
|
|
18
|
+
: [getCommandContext(cwd, target)];
|
|
19
|
+
const version = getPackageVersion();
|
|
20
|
+
console.log(chalk.cyan.bold(`\n🚀 @alipay/alipay-aipay v${version}\n`));
|
|
21
|
+
console.log(chalk.gray('一键安装支付宝AI支付 Skill;GPG、alipay-cli、jq 仅做快速检测,缺失时后台尝试准备\n'));
|
|
22
|
+
console.log(chalk.gray(`安装目标: ${contexts.map((ctx) => `${ctx.targetDirLabel}/alipay-aipay/`).join(', ')}\n`));
|
|
23
|
+
// ========== 阶段 1: 环境检查 ==========
|
|
24
|
+
let gpgOk = false;
|
|
25
|
+
let alipayCliOk = false;
|
|
26
|
+
let jqOk = false;
|
|
27
|
+
if (skipTools) {
|
|
28
|
+
console.log(chalk.cyan('📋 环境检查'));
|
|
29
|
+
console.log(chalk.gray('─'.repeat(40)));
|
|
30
|
+
console.log(chalk.gray(' ○ 已按 --skip-tools 跳过 GPG、alipay-cli、jq 检查与安装'));
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
console.log(chalk.cyan('📋 环境检查'));
|
|
34
|
+
console.log(chalk.gray('─'.repeat(40)));
|
|
35
|
+
// 1a: 先检查 alipay-cli。若已经安装,不再为了 GPG 额外触发系统包管理器下载。
|
|
36
|
+
const alipayCliCheck = await checkAlipayCli();
|
|
37
|
+
alipayCliOk = alipayCliCheck.installed;
|
|
38
|
+
if (alipayCliCheck.installed) {
|
|
39
|
+
console.log(chalk.green(` ✓ alipay-cli 已安装 (${alipayCliCheck.version})`));
|
|
40
|
+
const gpgCheck = await checkGpg();
|
|
41
|
+
gpgOk = gpgCheck.installed;
|
|
42
|
+
if (gpgCheck.installed) {
|
|
43
|
+
console.log(chalk.green(` ✓ GPG 已安装 (${gpgCheck.version})`));
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
console.log(chalk.gray(' ○ GPG 未安装;alipay-cli 已就绪,本次跳过 GPG 自动安装'));
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
console.log(chalk.gray(' ○ alipay-cli 未安装;将后台尝试准备,不阻塞 Skill 安装'));
|
|
51
|
+
const gpgCheck = await checkGpg();
|
|
52
|
+
gpgOk = gpgCheck.installed;
|
|
53
|
+
if (gpgCheck.installed) {
|
|
54
|
+
console.log(chalk.green(` ✓ GPG 已安装 (${gpgCheck.version})`));
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
console.log(chalk.gray(' ○ GPG 未安装;后台准备 alipay-cli 前会先尝试准备 GPG'));
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
// 1b: jq 只影响签约脚本 JSON 解析,默认不阻塞 Skill 安装速度。
|
|
61
|
+
const jqCheck = await checkJq();
|
|
62
|
+
jqOk = jqCheck.installed;
|
|
63
|
+
if (jqCheck.installed) {
|
|
64
|
+
console.log(chalk.green(` ✓ jq 已安装 (${jqCheck.version})`));
|
|
65
|
+
}
|
|
66
|
+
else if (withJq) {
|
|
67
|
+
console.log(chalk.gray(' ○ jq 未安装;将按 --with-jq 在后台尝试准备'));
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
console.log(chalk.gray(' ○ jq 未安装;签约流程需要 jq,使用 --with-jq 可在后台尝试准备'));
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
console.log(''); // 空行分隔
|
|
74
|
+
let backgroundLogPath = null;
|
|
75
|
+
if (!skipTools && (!alipayCliOk || (withJq && !jqOk))) {
|
|
76
|
+
backgroundLogPath = startBackgroundToolPreparation(withJq);
|
|
77
|
+
}
|
|
78
|
+
if (!skipTools && !gpgOk) {
|
|
79
|
+
console.log(chalk.yellow('⚠️ GPG 未就绪,后续如需重新安装 alipay-cli,可能需要先安装 GPG'));
|
|
80
|
+
console.log(chalk.gray(' 手动安装: brew install gnupg (macOS) / sudo apt-get install -y gnupg (Linux)'));
|
|
81
|
+
}
|
|
82
|
+
if (!skipTools && !alipayCliOk) {
|
|
83
|
+
console.log(chalk.yellow('⚠️ alipay-cli 未就绪,签约流程将暂不可用'));
|
|
84
|
+
console.log(chalk.gray(' 你可以稍后手动安装到用户目录(无需 sudo):'));
|
|
85
|
+
console.log(chalk.gray(' mkdir -p ~/.local/bin && export ALIPAY_CLI_BIN="$HOME/.local/bin" && curl -fsSL https://opengw.alipay.com/alipaycli/install | bash'));
|
|
86
|
+
console.log(chalk.gray(' echo \'export PATH="$HOME/.local/bin:$PATH"\' >> ~/.zshrc && source ~/.zshrc'));
|
|
87
|
+
}
|
|
88
|
+
if (!skipTools && !jqOk) {
|
|
89
|
+
console.log(chalk.yellow('⚠️ jq 未就绪,签约流程中的 JSON 解析将无法使用'));
|
|
90
|
+
console.log(chalk.gray(' 手动安装: brew install jq (macOS) / sudo apt-get install -y jq (Linux)'));
|
|
91
|
+
console.log(chalk.gray(' 或重新执行: npx -y @alipay/alipay-aipay@latest install --with-jq'));
|
|
92
|
+
}
|
|
93
|
+
if (backgroundLogPath) {
|
|
94
|
+
console.log(chalk.gray(` 已启动后台环境准备任务,不影响 Skill 安装。日志: ${backgroundLogPath}`));
|
|
95
|
+
}
|
|
96
|
+
console.log('');
|
|
97
|
+
// ========== 阶段 2: 安装 Skill 文件 ==========
|
|
98
|
+
console.log(chalk.cyan('📦 安装 Skill 文件'));
|
|
99
|
+
console.log(chalk.gray('─'.repeat(40)));
|
|
100
|
+
// 直接安装,不询问
|
|
101
|
+
const spinner = ora('正在安装 Skill 文件...').start();
|
|
102
|
+
try {
|
|
103
|
+
for (const ctx of contexts) {
|
|
104
|
+
const existingRecord = await readVersionRecord(ctx);
|
|
105
|
+
if (existingRecord) {
|
|
106
|
+
console.log(chalk.yellow(`检测到已有安装记录,直接覆盖更新: ${ctx.targetDirLabel}/alipay-aipay/`));
|
|
107
|
+
console.log(` 旧版本: ${existingRecord.version} 安装时间: ${existingRecord.installedAt}`);
|
|
108
|
+
console.log('');
|
|
109
|
+
}
|
|
110
|
+
await ensureDir(ctx.targetDir);
|
|
111
|
+
await installSkillFiles(PACKAGE_ROOT, ctx.targetDir);
|
|
112
|
+
// 写入版本记录
|
|
113
|
+
const record = {
|
|
114
|
+
version,
|
|
115
|
+
installedAt: new Date().toISOString(),
|
|
116
|
+
skills: SKILLS.map((s) => s.name),
|
|
117
|
+
gpgInstalled: gpgOk,
|
|
118
|
+
alipayCliInstalled: alipayCliOk,
|
|
119
|
+
jqInstalled: jqOk,
|
|
120
|
+
};
|
|
121
|
+
await writeVersionFile(ctx.versionFile, record);
|
|
122
|
+
}
|
|
123
|
+
spinner.succeed(chalk.green('Skill 文件安装完成!\n'));
|
|
124
|
+
printSummary(gpgOk, alipayCliOk, jqOk, true, version, contexts.map((ctx) => ctx.targetDirLabel), skipTools);
|
|
125
|
+
}
|
|
126
|
+
catch (error) {
|
|
127
|
+
spinner.fail(chalk.red('Skill 文件安装失败'));
|
|
128
|
+
console.error(error);
|
|
129
|
+
process.exit(1);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
function startBackgroundToolPreparation(withJq) {
|
|
133
|
+
const cliPath = process.argv[1];
|
|
134
|
+
if (!cliPath)
|
|
135
|
+
return null;
|
|
136
|
+
const logPath = path.join(os.tmpdir(), `alipay-aipay-tools-${Date.now()}.log`);
|
|
137
|
+
let logFd = null;
|
|
138
|
+
try {
|
|
139
|
+
logFd = fs.openSync(logPath, 'a');
|
|
140
|
+
const args = [cliPath, 'prepare-tools'];
|
|
141
|
+
if (withJq)
|
|
142
|
+
args.push('--with-jq');
|
|
143
|
+
const child = spawn(process.execPath, args, {
|
|
144
|
+
detached: true,
|
|
145
|
+
stdio: ['ignore', logFd, logFd],
|
|
146
|
+
});
|
|
147
|
+
child.unref();
|
|
148
|
+
return logPath;
|
|
149
|
+
}
|
|
150
|
+
catch {
|
|
151
|
+
return null;
|
|
152
|
+
}
|
|
153
|
+
finally {
|
|
154
|
+
if (logFd !== null) {
|
|
155
|
+
try {
|
|
156
|
+
fs.closeSync(logFd);
|
|
157
|
+
}
|
|
158
|
+
catch {
|
|
159
|
+
// ignore
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* 打印安装总结
|
|
166
|
+
*/
|
|
167
|
+
function printSummary(gpgOk, alipayCliOk, jqOk, skillInstalled, version, targetDirLabels, toolsSkipped) {
|
|
168
|
+
console.log(chalk.cyan.bold('📋 安装总结'));
|
|
169
|
+
console.log(chalk.gray('─'.repeat(40)));
|
|
170
|
+
console.log(` GPG: ${toolsSkipped ? chalk.gray('○ 已跳过') : gpgOk ? chalk.green('✓ 已就绪') : chalk.red('✗ 未就绪')}`);
|
|
171
|
+
console.log(` alipay-cli: ${toolsSkipped ? chalk.gray('○ 已跳过') : alipayCliOk ? chalk.green('✓ 已就绪') : chalk.red('✗ 未就绪')}`);
|
|
172
|
+
console.log(` jq: ${toolsSkipped ? chalk.gray('○ 已跳过') : jqOk ? chalk.green('✓ 已就绪') : chalk.red('✗ 未就绪')}`);
|
|
173
|
+
console.log(` Skill 文件: ${skillInstalled ? chalk.green('✓ 已安装') : chalk.gray('○ 未安装')}`);
|
|
174
|
+
console.log(` 版本: ${version}`);
|
|
175
|
+
console.log('');
|
|
176
|
+
console.log(chalk.gray('安装位置:'));
|
|
177
|
+
for (const targetDirLabel of targetDirLabels) {
|
|
178
|
+
console.log(chalk.gray(` ${targetDirLabel}/alipay-aipay/`));
|
|
179
|
+
}
|
|
180
|
+
console.log('');
|
|
181
|
+
}
|
|
182
|
+
//# sourceMappingURL=install.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepare-tools.d.ts","sourceRoot":"","sources":["../../src/commands/prepare-tools.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAsB,mBAAmB,CAAC,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyB1F"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import { checkAlipayCli, ensureAlipayCli } from '../utils/alipay-cli.js';
|
|
3
|
+
import { ensureGpg } from '../utils/gpg.js';
|
|
4
|
+
import { checkJq, ensureJq } from '../utils/jq.js';
|
|
5
|
+
export async function prepareToolsCommand(options = {}) {
|
|
6
|
+
const withJq = options.withJq ?? false;
|
|
7
|
+
console.log(`[${new Date().toISOString()}] alipay-aipay tools preparation started`);
|
|
8
|
+
const alipayCliCheck = await checkAlipayCli();
|
|
9
|
+
if (alipayCliCheck.installed) {
|
|
10
|
+
console.log(chalk.green(`alipay-cli 已安装 (${alipayCliCheck.version})`));
|
|
11
|
+
}
|
|
12
|
+
else {
|
|
13
|
+
console.log(chalk.yellow('alipay-cli 未安装,后台尝试准备 GPG 并安装 alipay-cli'));
|
|
14
|
+
await ensureGpg();
|
|
15
|
+
await ensureAlipayCli();
|
|
16
|
+
}
|
|
17
|
+
if (withJq) {
|
|
18
|
+
const jqCheck = await checkJq();
|
|
19
|
+
if (jqCheck.installed) {
|
|
20
|
+
console.log(chalk.green(`jq 已安装 (${jqCheck.version})`));
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
console.log(chalk.yellow('jq 未安装,后台尝试安装 jq'));
|
|
24
|
+
await ensureJq();
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
console.log(`[${new Date().toISOString()}] alipay-aipay tools preparation finished`);
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=prepare-tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepare-tools.js","sourceRoot":"","sources":["../../src/commands/prepare-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAMnD,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,UAA+B,EAAE;IACzE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC;IAEvC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,0CAA0C,CAAC,CAAC;IAEpF,MAAM,cAAc,GAAG,MAAM,cAAc,EAAE,CAAC;IAC9C,IAAI,cAAc,CAAC,SAAS,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,mBAAmB,cAAc,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;IACzE,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,0CAA0C,CAAC,CAAC,CAAC;QACtE,MAAM,SAAS,EAAE,CAAC;QAClB,MAAM,eAAe,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,OAAO,GAAG,MAAM,OAAO,EAAE,CAAC;QAChC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;YAC9C,MAAM,QAAQ,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,2CAA2C,CAAC,CAAC;AACvF,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type InstallTarget } from '../utils/config.js';
|
|
2
|
+
/**
|
|
3
|
+
* uninstall 命令实现
|
|
4
|
+
* 注意: 卸载只删除 Skill 文件,不卸载 GPG、alipay-cli 和 jq(它们是系统级工具)
|
|
5
|
+
*/
|
|
6
|
+
export interface UninstallCommandOptions {
|
|
7
|
+
target?: InstallTarget;
|
|
8
|
+
}
|
|
9
|
+
export declare function uninstallCommand(cwd: string, options?: UninstallCommandOptions): Promise<void>;
|
|
10
|
+
//# sourceMappingURL=uninstall.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../src/commands/uninstall.ts"],"names":[],"mappings":"AAKA,OAAO,EAAoD,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAI1G;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;AAED,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,IAAI,CAAC,CAWf"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import inquirer from 'inquirer';
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import ora from 'ora';
|
|
4
|
+
import fs from 'fs/promises';
|
|
5
|
+
import path from 'path';
|
|
6
|
+
import { SKILLS, getCommandContext, getAllCommandContexts } from '../utils/config.js';
|
|
7
|
+
import { removeDir, readVersionRecord } from '../utils/file.js';
|
|
8
|
+
export async function uninstallCommand(cwd, options = {}) {
|
|
9
|
+
const target = options.target ?? 'auto';
|
|
10
|
+
if (target === 'all') {
|
|
11
|
+
for (const ctx of getAllCommandContexts(cwd)) {
|
|
12
|
+
await uninstallResolvedContext(ctx);
|
|
13
|
+
}
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
const ctx = getCommandContext(cwd, target);
|
|
17
|
+
await uninstallResolvedContext(ctx);
|
|
18
|
+
}
|
|
19
|
+
async function uninstallResolvedContext(ctx) {
|
|
20
|
+
// 检查是否有安装记录
|
|
21
|
+
const record = await readVersionRecord(ctx);
|
|
22
|
+
if (!record) {
|
|
23
|
+
console.log(chalk.yellow('\n未检测到已安装的支付宝AI支付 Skill。\n'));
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
console.log(chalk.cyan.bold('\n🗑️ 卸载支付宝AI支付 Skill\n'));
|
|
27
|
+
// 显示将要删除的 skills
|
|
28
|
+
console.log('将删除以下 Skill 文件:\n');
|
|
29
|
+
for (const skillName of record.skills) {
|
|
30
|
+
const skill = SKILLS.find((s) => s.name === skillName);
|
|
31
|
+
if (skill) {
|
|
32
|
+
console.log(` • ${chalk.red(skillName)} (${skill.displayName})`);
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
console.log(` • ${chalk.red(skillName)}`);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
console.log('');
|
|
39
|
+
console.log(chalk.gray('注意: GPG、alipay-cli 和 jq 不会被卸载(它们是系统级工具)\n'));
|
|
40
|
+
// 确认卸载
|
|
41
|
+
const { confirm } = await inquirer.prompt([
|
|
42
|
+
{
|
|
43
|
+
type: 'confirm',
|
|
44
|
+
name: 'confirm',
|
|
45
|
+
message: '确认卸载?',
|
|
46
|
+
default: false,
|
|
47
|
+
},
|
|
48
|
+
]);
|
|
49
|
+
if (!confirm) {
|
|
50
|
+
console.log(chalk.gray('\n已取消卸载。\n'));
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
// 开始卸载
|
|
54
|
+
const spinner = ora('正在卸载...').start();
|
|
55
|
+
try {
|
|
56
|
+
// 删除当前记录文件,并兼容清理旧版本曾写入 skill 目录内的隐藏记录文件。
|
|
57
|
+
await fs.unlink(ctx.versionFile).catch(() => { });
|
|
58
|
+
await fs.unlink(ctx.legacyVersionFile).catch(() => { });
|
|
59
|
+
// 删除所有已安装的 skill 目录
|
|
60
|
+
for (const skillName of record.skills) {
|
|
61
|
+
const skillDir = path.join(ctx.targetDir, skillName);
|
|
62
|
+
await removeDir(skillDir);
|
|
63
|
+
}
|
|
64
|
+
// 检查目标目录是否为空,如果为空则删除
|
|
65
|
+
const remaining = await fs.readdir(ctx.targetDir).catch(() => []);
|
|
66
|
+
if (remaining.length === 0) {
|
|
67
|
+
await removeDir(ctx.targetDir);
|
|
68
|
+
spinner.succeed(chalk.green('卸载完成! 目录已清空。\n'));
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
spinner.succeed(chalk.green('卸载完成!\n'));
|
|
72
|
+
console.log(chalk.gray(`注意: ${ctx.targetDirLabel}/ 目录中还有其他文件,已保留。\n`));
|
|
73
|
+
}
|
|
74
|
+
console.log(`已删除 ${record.skills.length} 个 Skill。\n`);
|
|
75
|
+
}
|
|
76
|
+
catch (error) {
|
|
77
|
+
spinner.fail(chalk.red('卸载失败'));
|
|
78
|
+
console.error(error);
|
|
79
|
+
process.exit(1);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=uninstall.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../src/commands/uninstall.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type InstallTarget } from '../utils/config.js';
|
|
2
|
+
/**
|
|
3
|
+
* update 命令实现
|
|
4
|
+
* 更新 Skill 文件,同时检查 alipay-cli、GPG 和 jq 环境状态。
|
|
5
|
+
*/
|
|
6
|
+
export interface UpdateCommandOptions {
|
|
7
|
+
target?: InstallTarget;
|
|
8
|
+
}
|
|
9
|
+
export declare function updateCommand(cwd: string, options?: UpdateCommandOptions): Promise<void>;
|
|
10
|
+
//# sourceMappingURL=update.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAGA,OAAO,EAML,KAAK,aAAa,EACnB,MAAM,oBAAoB,CAAC;AAe5B;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;AAED,wBAAsB,aAAa,CACjC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,IAAI,CAAC,CAWf"}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import inquirer from 'inquirer';
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import ora from 'ora';
|
|
4
|
+
import { SKILLS, getPackageVersion, getCommandContext, getAllCommandContexts, PACKAGE_ROOT, } from '../utils/config.js';
|
|
5
|
+
import { ensureDir, installSkillFiles, writeVersionFile, readVersionFile, readVersionRecord, migrateVersionRecord, } from '../utils/file.js';
|
|
6
|
+
import { checkForUpdates } from '../utils/npm.js';
|
|
7
|
+
import { checkGpg } from '../utils/gpg.js';
|
|
8
|
+
import { checkAlipayCli } from '../utils/alipay-cli.js';
|
|
9
|
+
import { checkJq } from '../utils/jq.js';
|
|
10
|
+
export async function updateCommand(cwd, options = {}) {
|
|
11
|
+
const target = options.target ?? 'auto';
|
|
12
|
+
if (target === 'all') {
|
|
13
|
+
for (const ctx of getAllCommandContexts(cwd)) {
|
|
14
|
+
await updateResolvedContext(ctx);
|
|
15
|
+
}
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
const ctx = getCommandContext(cwd, target);
|
|
19
|
+
await updateResolvedContext(ctx);
|
|
20
|
+
}
|
|
21
|
+
async function updateResolvedContext(ctx) {
|
|
22
|
+
const currentPackageVersion = getPackageVersion();
|
|
23
|
+
// 检查是否有安装记录
|
|
24
|
+
const record = await readVersionRecord(ctx);
|
|
25
|
+
if (!record) {
|
|
26
|
+
console.log(chalk.yellow('\n未检测到已安装的支付宝AI支付 Skill。'));
|
|
27
|
+
console.log(chalk.gray(`请先运行 \`npx -y @alipay/alipay-aipay@latest install\` 安装到 ${ctx.targetDirLabel}/。\n`));
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
console.log(chalk.cyan.bold('\n🔄 检查更新...\n'));
|
|
31
|
+
// 检查 npm 最新版本
|
|
32
|
+
const spinner = ora('正在检查 npm 最新版本...').start();
|
|
33
|
+
try {
|
|
34
|
+
const versionInfo = await checkForUpdates();
|
|
35
|
+
if (versionInfo.needsUpdate) {
|
|
36
|
+
spinner.warn(chalk.yellow('当前执行的 alipay-aipay 包不是 npm latest,未执行更新。\n'));
|
|
37
|
+
console.log(`当前执行版本: ${versionInfo.current}`);
|
|
38
|
+
console.log(`npm latest: ${versionInfo.latest}`);
|
|
39
|
+
console.log(chalk.gray('请运行以下命令安装最新 Skill:'));
|
|
40
|
+
console.log(chalk.cyan(' npx -y @alipay/alipay-aipay@latest install\n'));
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
if (record.version === currentPackageVersion) {
|
|
44
|
+
await migrateVersionRecord(ctx, record);
|
|
45
|
+
spinner.succeed(chalk.green('Skill 文件已是当前执行包版本!\n'));
|
|
46
|
+
console.log(`当前版本: ${currentPackageVersion}`);
|
|
47
|
+
console.log(`安装时间: ${record.installedAt}`);
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
spinner.info(chalk.blue(`发现可安装版本: ${currentPackageVersion} (已安装: ${record.version})\n`));
|
|
51
|
+
// 显示更新信息
|
|
52
|
+
console.log('将更新以下 Skill:\n');
|
|
53
|
+
for (const skillName of record.skills) {
|
|
54
|
+
const skill = SKILLS.find((s) => s.name === skillName);
|
|
55
|
+
if (skill) {
|
|
56
|
+
console.log(` • ${chalk.green(skillName)} (${skill.displayName})`);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
console.log('');
|
|
60
|
+
// 确认更新
|
|
61
|
+
const { confirm } = await inquirer.prompt([
|
|
62
|
+
{
|
|
63
|
+
type: 'confirm',
|
|
64
|
+
name: 'confirm',
|
|
65
|
+
message: '是否更新?',
|
|
66
|
+
default: true,
|
|
67
|
+
},
|
|
68
|
+
]);
|
|
69
|
+
if (!confirm) {
|
|
70
|
+
console.log(chalk.gray('\n已取消更新。\n'));
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
// 开始更新
|
|
74
|
+
const updateSpinner = ora('正在更新 Skill 文件...').start();
|
|
75
|
+
await ensureDir(ctx.targetDir);
|
|
76
|
+
await installSkillFiles(PACKAGE_ROOT, ctx.targetDir);
|
|
77
|
+
// 更新版本记录(用当前包的实际版本,而非 registry 上的最新版本)
|
|
78
|
+
const newRecord = {
|
|
79
|
+
version: currentPackageVersion,
|
|
80
|
+
installedAt: new Date().toISOString(),
|
|
81
|
+
skills: SKILLS.map((s) => s.name),
|
|
82
|
+
gpgInstalled: record.gpgInstalled,
|
|
83
|
+
alipayCliInstalled: record.alipayCliInstalled,
|
|
84
|
+
jqInstalled: record.jqInstalled,
|
|
85
|
+
};
|
|
86
|
+
await writeVersionFile(ctx.versionFile, newRecord);
|
|
87
|
+
updateSpinner.succeed(chalk.green('Skill 文件更新完成!\n'));
|
|
88
|
+
console.log(`版本: ${record.version} → ${currentPackageVersion}`);
|
|
89
|
+
}
|
|
90
|
+
console.log('');
|
|
91
|
+
// 重新检查环境工具
|
|
92
|
+
console.log(chalk.cyan('📋 环境检查'));
|
|
93
|
+
console.log(chalk.gray('─'.repeat(40)));
|
|
94
|
+
const alipayCliCheck = await checkAlipayCli();
|
|
95
|
+
let alipayCliOk = alipayCliCheck.installed;
|
|
96
|
+
let gpgOk = false;
|
|
97
|
+
if (alipayCliCheck.installed) {
|
|
98
|
+
console.log(chalk.green(` ✓ alipay-cli 已安装 (${alipayCliCheck.version})`));
|
|
99
|
+
const gpgCheck = await checkGpg();
|
|
100
|
+
gpgOk = gpgCheck.installed;
|
|
101
|
+
if (gpgCheck.installed) {
|
|
102
|
+
console.log(chalk.green(` ✓ GPG 已安装 (${gpgCheck.version})`));
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
105
|
+
console.log(chalk.gray(' ○ GPG 未安装;alipay-cli 已就绪,本次跳过 GPG 自动安装'));
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
console.log(chalk.gray(' ○ alipay-cli 未安装;更新 Skill 不会阻塞等待系统工具安装'));
|
|
110
|
+
const gpgCheck = await checkGpg();
|
|
111
|
+
gpgOk = gpgCheck.installed;
|
|
112
|
+
if (gpgCheck.installed) {
|
|
113
|
+
console.log(chalk.green(` ✓ GPG 已安装 (${gpgCheck.version})`));
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
console.log(chalk.gray(' ○ GPG 未安装;后续安装 alipay-cli 前可能需要先安装 GPG'));
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
const jqCheck = await checkJq();
|
|
120
|
+
const jqOk = jqCheck.installed;
|
|
121
|
+
if (jqCheck.installed) {
|
|
122
|
+
console.log(chalk.green(` ✓ jq 已安装 (${jqCheck.version})`));
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
console.log(chalk.gray(' ○ jq 未安装;签约流程需要 jq,可手动安装或执行 install --with-jq'));
|
|
126
|
+
}
|
|
127
|
+
console.log('');
|
|
128
|
+
// 更新版本记录中的环境状态
|
|
129
|
+
const updatedRecord = await readVersionFile(ctx.versionFile);
|
|
130
|
+
if (updatedRecord) {
|
|
131
|
+
updatedRecord.gpgInstalled = gpgOk;
|
|
132
|
+
updatedRecord.alipayCliInstalled = alipayCliOk;
|
|
133
|
+
updatedRecord.jqInstalled = jqOk;
|
|
134
|
+
await writeVersionFile(ctx.versionFile, updatedRecord);
|
|
135
|
+
}
|
|
136
|
+
if (!gpgOk || !alipayCliOk || !jqOk) {
|
|
137
|
+
console.log(chalk.yellow('⚠️ 部分环境工具未就绪:'));
|
|
138
|
+
if (!gpgOk)
|
|
139
|
+
console.log(chalk.gray(' GPG: brew install gnupg (macOS) / sudo apt-get install -y gnupg (Linux)'));
|
|
140
|
+
if (!alipayCliOk)
|
|
141
|
+
console.log(chalk.gray(' alipay-cli: mkdir -p ~/.local/bin && export ALIPAY_CLI_BIN="$HOME/.local/bin" && curl -fsSL https://opengw.alipay.com/alipaycli/install | bash'));
|
|
142
|
+
if (!jqOk)
|
|
143
|
+
console.log(chalk.gray(' jq: brew install jq (macOS) / sudo apt-get install -y jq (Linux)'));
|
|
144
|
+
console.log('');
|
|
145
|
+
}
|
|
146
|
+
console.log(chalk.gray(`安装位置: ${ctx.targetDirLabel}/alipay-aipay/`));
|
|
147
|
+
console.log('');
|
|
148
|
+
}
|
|
149
|
+
catch (error) {
|
|
150
|
+
spinner.fail(chalk.red('检查更新失败'));
|
|
151
|
+
console.error(error);
|
|
152
|
+
process.exit(1);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
//# sourceMappingURL=update.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { Command } from 'commander';
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import { getPackageVersion } from './utils/config.js';
|
|
4
|
+
import { installCommand } from './commands/install.js';
|
|
5
|
+
import { uninstallCommand } from './commands/uninstall.js';
|
|
6
|
+
import { updateCommand } from './commands/update.js';
|
|
7
|
+
import { prepareToolsCommand } from './commands/prepare-tools.js';
|
|
8
|
+
const program = new Command();
|
|
9
|
+
function parseTarget(value) {
|
|
10
|
+
if (value === 'agents' || value === 'codex' || value === 'claude' || value === 'auto' || value === 'all') {
|
|
11
|
+
return value;
|
|
12
|
+
}
|
|
13
|
+
console.error(chalk.red(`无效的 --target: ${String(value)}`));
|
|
14
|
+
console.error(chalk.gray('可选值: all | agents | codex | claude | auto'));
|
|
15
|
+
process.exit(1);
|
|
16
|
+
}
|
|
17
|
+
program
|
|
18
|
+
.name('alipay-aipay')
|
|
19
|
+
.description('支付宝 AI 支付技能包 - 一键安装 Agent Skill,并后台准备 alipay-cli 环境')
|
|
20
|
+
.version(getPackageVersion());
|
|
21
|
+
// install 命令
|
|
22
|
+
program
|
|
23
|
+
.command('install')
|
|
24
|
+
.description('安装支付宝 AI 支付 Skill(快速检测环境,缺失工具后台尝试准备)')
|
|
25
|
+
.option('--target <target>', '安装目标: all | agents | codex | claude | auto', 'all')
|
|
26
|
+
.option('--with-jq', '安装时同时在后台尝试准备 jq(签约流程依赖,默认只检测并提示)')
|
|
27
|
+
.option('--skip-tools', '只安装 Skill 文件,跳过 GPG、alipay-cli、jq 检查与安装')
|
|
28
|
+
.action(async (options) => {
|
|
29
|
+
await installCommand(process.cwd(), {
|
|
30
|
+
target: parseTarget(options.target),
|
|
31
|
+
withJq: Boolean(options.withJq),
|
|
32
|
+
skipTools: Boolean(options.skipTools),
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
// uninstall 命令
|
|
36
|
+
program
|
|
37
|
+
.command('uninstall')
|
|
38
|
+
.description('卸载已安装的支付宝 AI 支付 Skill')
|
|
39
|
+
.option('--target <target>', '卸载目标: all | agents | codex | claude | auto', 'auto')
|
|
40
|
+
.action(async (options) => {
|
|
41
|
+
await uninstallCommand(process.cwd(), { target: parseTarget(options.target) });
|
|
42
|
+
});
|
|
43
|
+
// update 命令
|
|
44
|
+
program
|
|
45
|
+
.command('update')
|
|
46
|
+
.description('检查并更新支付宝 AI 支付 Skill')
|
|
47
|
+
.option('--target <target>', '更新目标: all | agents | codex | claude | auto', 'auto')
|
|
48
|
+
.action(async (options) => {
|
|
49
|
+
await updateCommand(process.cwd(), { target: parseTarget(options.target) });
|
|
50
|
+
});
|
|
51
|
+
program
|
|
52
|
+
.command('prepare-tools', { hidden: true })
|
|
53
|
+
.description('后台准备 GPG、alipay-cli 和 jq')
|
|
54
|
+
.option('--with-jq', '同时准备 jq')
|
|
55
|
+
.action(async (options) => {
|
|
56
|
+
await prepareToolsCommand({ withJq: Boolean(options.withJq) });
|
|
57
|
+
});
|
|
58
|
+
// 默认行为:无参数时直接执行安装流程
|
|
59
|
+
if (process.argv.length === 2) {
|
|
60
|
+
installCommand(process.cwd(), { target: 'all', withJq: false, skipTools: false });
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
program.parse();
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|