sino-bc-cli 1.0.2 → 1.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -0
- package/dist/SKILL.md +12 -1
- package/dist/commands/index.d.ts +1 -0
- package/dist/commands/index.js +5 -1
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/init.command.d.ts +30 -0
- package/dist/commands/init.command.js +130 -0
- package/dist/commands/init.command.js.map +1 -0
- package/dist/constants/index.d.ts +1 -0
- package/dist/constants/index.js +1 -0
- package/dist/constants/index.js.map +1 -1
- package/dist/core/cli-app.js +2 -0
- package/dist/core/cli-app.js.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +7 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/skill-install.d.ts +74 -0
- package/dist/utils/skill-install.js +131 -0
- package/dist/utils/skill-install.js.map +1 -0
- package/package.json +5 -2
- package/scripts/postinstall.cjs +28 -0
package/README.md
CHANGED
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
BeyondClick 命令行工具集合 - 提供快捷访问 BeyondClick 平台的命令行接口。
|
|
4
4
|
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm i sino-bc-cli -g
|
|
9
|
+
```
|
|
10
|
+
|
|
5
11
|
---
|
|
6
12
|
|
|
7
13
|
## 📚 技术栈说明
|
|
@@ -165,6 +171,12 @@ sino-bc-cli --help
|
|
|
165
171
|
sino-bc-cli /homepage
|
|
166
172
|
```
|
|
167
173
|
|
|
174
|
+
`npm i sino-bc-cli -g` 完成后会自动执行 `/init`,把 `SKILL.md` 写到用户主目录的 Agent 技能目录(`~/.agents/skills/sino-bc-cli` 等)。飞书豆包工作:技能·连接器 → 管理 → **本地** → 刷新。若未出现,手动执行:
|
|
175
|
+
|
|
176
|
+
```bash
|
|
177
|
+
sino-bc-cli /init
|
|
178
|
+
```
|
|
179
|
+
|
|
168
180
|
> 卸载全局链接:`npm unlink` 或 `npm uninstall -g sino-bc-cli`
|
|
169
181
|
|
|
170
182
|
---
|
package/dist/SKILL.md
CHANGED
|
@@ -2,9 +2,13 @@
|
|
|
2
2
|
name: sino-bc-cli
|
|
3
3
|
description: >
|
|
4
4
|
BeyondClick CLI 项目说明、命令用法、扩展新命令与 npm 发布/回滚步骤。
|
|
5
|
-
Use when 开发或使用 sino-bc-cli、执行 /homepage /nexus-swagger /bc-mcp
|
|
5
|
+
Use when 开发或使用 sino-bc-cli、执行 /init /homepage /nexus-swagger /bc-mcp、
|
|
6
|
+
把技能注册到飞书豆包工作 / Cursor / Claude / Codex、扩展命令、
|
|
6
7
|
npm publish、release:patch/minor/major、切 registry、排查 ENEEDAUTH/E403/EPUBLISHCONFLICT,
|
|
7
8
|
或发布到私有 Nexus / 企业私服。
|
|
9
|
+
metadata:
|
|
10
|
+
requires:
|
|
11
|
+
bins: ["sino-bc-cli"]
|
|
8
12
|
---
|
|
9
13
|
|
|
10
14
|
# sino-bc-cli
|
|
@@ -129,8 +133,11 @@ npm i sino-bc-cli -g
|
|
|
129
133
|
```bash
|
|
130
134
|
sino-bc-cli --help
|
|
131
135
|
sino-bc-cli /homepage
|
|
136
|
+
sino-bc-cli /init
|
|
132
137
|
```
|
|
133
138
|
|
|
139
|
+
`npm i -g` / `npm link` 后的 postinstall 会自动执行 `/init`,把 `SKILL.md` 写到 `~/.agents/skills/sino-bc-cli/`(以及 Codex / Cursor / Claude 目录)。飞书豆包工作:技能·连接器 → 管理 → **本地** → 刷新。未出现时再手动跑一遍 `/init`。
|
|
140
|
+
|
|
134
141
|
卸载:`npm unlink` 或 `npm uninstall -g sino-bc-cli`
|
|
135
142
|
|
|
136
143
|
### NPM 脚本
|
|
@@ -151,6 +158,7 @@ npm run rebuild # clean + tsc
|
|
|
151
158
|
|
|
152
159
|
| 命令 | 说明 |
|
|
153
160
|
| :--------------- | :----------------------------------------------------------------------------------------------------------------- |
|
|
161
|
+
| `/init` | 将本包 `SKILL.md` 复制到用户主目录下的 Agent 技能目录,供飞书豆包工作 / Cursor / Claude / Codex 自动识别 |
|
|
154
162
|
| `/homepage` | 使用默认浏览器打开 BeyondClick 业务平台主页 (`https://business.beyondclick.com/`) |
|
|
155
163
|
| `/nexus-swagger` | 使用默认浏览器打开 BeyondClick Nexus Swagger 文档页 (`https://o-test-sino-bc-nexus.meetsocial.com/doc.html#/home`) |
|
|
156
164
|
| `/bc-mcp` | 交互选择并调用 iCenter MCP 接口;`ENV` 默认 `prod`,`API_KEY` 默认使用网关常量 |
|
|
@@ -168,6 +176,7 @@ npm run rebuild # clean + tsc
|
|
|
168
176
|
```bash
|
|
169
177
|
sino-bc-cli --version
|
|
170
178
|
sino-bc-cli --help
|
|
179
|
+
sino-bc-cli /init
|
|
171
180
|
sino-bc-cli /homepage
|
|
172
181
|
sino-bc-cli /nexus-swagger
|
|
173
182
|
sino-bc-cli /bc-mcp
|
|
@@ -176,6 +185,8 @@ sino-bc-cli --debug /homepage
|
|
|
176
185
|
sino-bc-cli -d /nexus-swagger
|
|
177
186
|
```
|
|
178
187
|
|
|
188
|
+
- `/init`:把 `SKILL.md` 写到 `~/.agents/skills/sino-bc-cli/`(以及 Codex / Cursor / Claude 对应目录)。`npm i sino-bc-cli -g` 的 postinstall 会自动跑一遍;飞书豆包工作请到「技能·连接器 → 管理 → 本地」刷新。Windows 使用 `%USERPROFILE%`,macOS / Linux 使用 `$HOME`。
|
|
189
|
+
|
|
179
190
|
- `/homepage`:打开 `https://business.beyondclick.com/`
|
|
180
191
|
- `/nexus-swagger`:打开 Nexus Swagger 文档页
|
|
181
192
|
- Debug 会输出参数解析、命令注册、URL 打开过程
|
package/dist/commands/index.d.ts
CHANGED
package/dist/commands/index.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BcMcpCommand = exports.NexusSwaggerCommand = exports.HomepageCommand = exports.commands = void 0;
|
|
3
|
+
exports.InitCommand = exports.BcMcpCommand = exports.NexusSwaggerCommand = exports.HomepageCommand = exports.commands = void 0;
|
|
4
4
|
const homepage_command_1 = require("./homepage.command");
|
|
5
5
|
const nexus_swagger_command_1 = require("./nexus-swagger.command");
|
|
6
6
|
const bc_mcp_command_1 = require("./bc-mcp.command");
|
|
7
|
+
const init_command_1 = require("./init.command");
|
|
7
8
|
/**
|
|
8
9
|
* 命令导出统一入口
|
|
9
10
|
* 集中导出所有命令实例,便于批量注册
|
|
@@ -13,6 +14,7 @@ exports.commands = [
|
|
|
13
14
|
new homepage_command_1.HomepageCommand(),
|
|
14
15
|
new nexus_swagger_command_1.NexusSwaggerCommand(),
|
|
15
16
|
new bc_mcp_command_1.BcMcpCommand(),
|
|
17
|
+
new init_command_1.InitCommand(),
|
|
16
18
|
];
|
|
17
19
|
var homepage_command_2 = require("./homepage.command");
|
|
18
20
|
Object.defineProperty(exports, "HomepageCommand", { enumerable: true, get: function () { return homepage_command_2.HomepageCommand; } });
|
|
@@ -20,4 +22,6 @@ var nexus_swagger_command_2 = require("./nexus-swagger.command");
|
|
|
20
22
|
Object.defineProperty(exports, "NexusSwaggerCommand", { enumerable: true, get: function () { return nexus_swagger_command_2.NexusSwaggerCommand; } });
|
|
21
23
|
var bc_mcp_command_2 = require("./bc-mcp.command");
|
|
22
24
|
Object.defineProperty(exports, "BcMcpCommand", { enumerable: true, get: function () { return bc_mcp_command_2.BcMcpCommand; } });
|
|
25
|
+
var init_command_2 = require("./init.command");
|
|
26
|
+
Object.defineProperty(exports, "InitCommand", { enumerable: true, get: function () { return init_command_2.InitCommand; } });
|
|
23
27
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":";;;AAAA,yDAAqD;AACrD,mEAA8D;AAC9D,qDAAgD;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":";;;AAAA,yDAAqD;AACrD,mEAA8D;AAC9D,qDAAgD;AAChD,iDAA6C;AAG7C;;;;GAIG;AACU,QAAA,QAAQ,GAAe;IAClC,IAAI,kCAAe,EAAE;IACrB,IAAI,2CAAmB,EAAE;IACzB,IAAI,6BAAY,EAAE;IAClB,IAAI,0BAAW,EAAE;CAClB,CAAC;AAEF,uDAAqD;AAA5C,mHAAA,eAAe,OAAA;AACxB,iEAA8D;AAArD,4HAAA,mBAAmB,OAAA;AAC5B,mDAAgD;AAAvC,8GAAA,YAAY,OAAA;AACrB,+CAA6C;AAApC,2GAAA,WAAW,OAAA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { ICommand, ICommandOption } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* 将 SKILL.md 注册到本机 Agent 技能目录
|
|
4
|
+
* 命令名称: /init
|
|
5
|
+
* 功能: 复制技能文件,供飞书豆包工作、Cursor、Claude Code、Codex 自动发现
|
|
6
|
+
*/
|
|
7
|
+
export declare class InitCommand implements ICommand {
|
|
8
|
+
/** 命令名称 */
|
|
9
|
+
readonly name: string;
|
|
10
|
+
/** 命令描述 */
|
|
11
|
+
readonly description: string;
|
|
12
|
+
/** 命令使用示例 */
|
|
13
|
+
readonly usage: string;
|
|
14
|
+
/** 命令选项 */
|
|
15
|
+
readonly options: ICommandOption[];
|
|
16
|
+
/**
|
|
17
|
+
* 命令执行函数
|
|
18
|
+
* @param args 命令行参数
|
|
19
|
+
* @param options 解析后的选项,支持 --quiet / -q
|
|
20
|
+
*/
|
|
21
|
+
execute(args: string[], options?: Record<string, unknown>): Promise<void>;
|
|
22
|
+
/**
|
|
23
|
+
* 是否安静模式:--quiet 或 -q
|
|
24
|
+
*/
|
|
25
|
+
private isQuiet;
|
|
26
|
+
/**
|
|
27
|
+
* 将写入动作转为中文说明
|
|
28
|
+
*/
|
|
29
|
+
private formatAction;
|
|
30
|
+
}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.InitCommand = void 0;
|
|
40
|
+
const _ = __importStar(require("lodash"));
|
|
41
|
+
const dayjs_1 = __importDefault(require("dayjs"));
|
|
42
|
+
const utils_1 = require("../utils");
|
|
43
|
+
const constants_1 = require("../constants");
|
|
44
|
+
/**
|
|
45
|
+
* 将 SKILL.md 注册到本机 Agent 技能目录
|
|
46
|
+
* 命令名称: /init
|
|
47
|
+
* 功能: 复制技能文件,供飞书豆包工作、Cursor、Claude Code、Codex 自动发现
|
|
48
|
+
*/
|
|
49
|
+
class InitCommand {
|
|
50
|
+
/** 命令名称 */
|
|
51
|
+
name = constants_1.COMMAND_NAMES.INIT;
|
|
52
|
+
/** 命令描述 */
|
|
53
|
+
description = '将 SKILL.md 注册到本机 Agent 目录,供飞书豆包 / Cursor / Claude / Codex 自动识别';
|
|
54
|
+
/** 命令使用示例 */
|
|
55
|
+
usage = `
|
|
56
|
+
/${constants_1.COMMAND_NAMES.INIT}
|
|
57
|
+
sino-bc-cli /${constants_1.COMMAND_NAMES.INIT}
|
|
58
|
+
sino-bc-cli /${constants_1.COMMAND_NAMES.INIT} --quiet
|
|
59
|
+
`;
|
|
60
|
+
/** 命令选项 */
|
|
61
|
+
options = [
|
|
62
|
+
{
|
|
63
|
+
short: 'q',
|
|
64
|
+
long: 'quiet',
|
|
65
|
+
description: '安静模式,仅输出摘要(npm postinstall 使用)',
|
|
66
|
+
},
|
|
67
|
+
];
|
|
68
|
+
/**
|
|
69
|
+
* 命令执行函数
|
|
70
|
+
* @param args 命令行参数
|
|
71
|
+
* @param options 解析后的选项,支持 --quiet / -q
|
|
72
|
+
*/
|
|
73
|
+
async execute(args, options) {
|
|
74
|
+
utils_1.logger.debug(`[InitCommand] 命令执行开始,参数: ${JSON.stringify(args)}`);
|
|
75
|
+
const startTime = (0, dayjs_1.default)();
|
|
76
|
+
const quiet = this.isQuiet(options);
|
|
77
|
+
if (!quiet) {
|
|
78
|
+
utils_1.logger.info(`[${utils_1.CommonUtils.formatDate(startTime)}] 正在向本机 Agent 目录注册 sino-bc-cli 技能...`);
|
|
79
|
+
}
|
|
80
|
+
const result = (0, utils_1.installSkillToAgents)();
|
|
81
|
+
_.forEach(result.written, (item) => {
|
|
82
|
+
const actionLabel = this.formatAction(item.action);
|
|
83
|
+
if (quiet) {
|
|
84
|
+
utils_1.logger.debug(`[InitCommand] ${actionLabel} ${item.label}: ${item.path}`);
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
if (item.action === 'unchanged') {
|
|
88
|
+
utils_1.logger.tip(`${item.label} 已是最新: ${item.path}`);
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
utils_1.logger.success(`${item.label} ${actionLabel}: ${item.path}`);
|
|
92
|
+
});
|
|
93
|
+
_.forEach(result.failed, (item) => {
|
|
94
|
+
utils_1.logger.warn(`${item.label} 写入失败: ${item.path}(${item.error})`);
|
|
95
|
+
});
|
|
96
|
+
if (_.isEmpty(result.written) && !_.isEmpty(result.failed)) {
|
|
97
|
+
throw new Error('技能注册全部失败,请检查对用户主目录的写权限后重试 sino-bc-cli /init');
|
|
98
|
+
}
|
|
99
|
+
const successCount = result.written.length;
|
|
100
|
+
const failCount = result.failed.length;
|
|
101
|
+
utils_1.logger.success(`技能已注册到 ${successCount} 个目录` + (failCount > 0 ? `,${failCount} 个失败` : ''));
|
|
102
|
+
if (!quiet) {
|
|
103
|
+
utils_1.logger.tip('飞书:豆包工作 → 技能·连接器 → 管理 →「本地」→ 刷新;若仍没有,请完全退出飞书后再打开');
|
|
104
|
+
}
|
|
105
|
+
const durationSec = _.round((0, dayjs_1.default)().diff(startTime) / 1000, 2);
|
|
106
|
+
utils_1.logger.debug(`[InitCommand] 命令执行完成,耗时: ${durationSec} 秒,源文件: ${result.source}`);
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* 是否安静模式:--quiet 或 -q
|
|
110
|
+
*/
|
|
111
|
+
isQuiet(options) {
|
|
112
|
+
if (_.isNil(options)) {
|
|
113
|
+
return false;
|
|
114
|
+
}
|
|
115
|
+
return options.quiet === true || options.q === true;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* 将写入动作转为中文说明
|
|
119
|
+
*/
|
|
120
|
+
formatAction(action) {
|
|
121
|
+
const labels = {
|
|
122
|
+
created: '已写入',
|
|
123
|
+
updated: '已更新',
|
|
124
|
+
unchanged: '无需更新',
|
|
125
|
+
};
|
|
126
|
+
return labels[action];
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
exports.InitCommand = InitCommand;
|
|
130
|
+
//# sourceMappingURL=init.command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.command.js","sourceRoot":"","sources":["../../src/commands/init.command.ts"],"names":[],"mappings":"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"}
|
package/dist/constants/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":";;;AAEA,qCAOmB;AANjB,yGAAA,cAAc,OAAA;AACd,0GAAA,eAAe,OAAA;AACf,2GAAA,gBAAgB,OAAA;AAChB,4GAAA,iBAAiB,OAAA;AACjB,oGAAA,SAAS,OAAA;AACT,yGAAA,cAAc,OAAA;AAEhB,qCAA6C;AAApC,2GAAA,gBAAgB,OAAA;AAEzB;;;GAGG;AACU,QAAA,UAAU,GAAe;IACpC,IAAI,EAAE,aAAa;IACnB,OAAO,EAAE,OAAO;IAChB,WAAW,EAAE,mDAAmD;CACjE,CAAC;AAEF;;;GAGG;AACU,QAAA,aAAa,GAAG;IAC3B,yBAAyB;IACzB,QAAQ,EAAE,mCAAmC;IAC7C,oCAAoC;IACpC,aAAa,EAAE,4DAA4D;CACnE,CAAC;AAEX;;;GAGG;AACU,QAAA,aAAa,GAAG;IAC3B,QAAQ,EAAE,UAAU;IACpB,aAAa,EAAE,eAAe;IAC9B,MAAM,EAAE,QAAQ;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":";;;AAEA,qCAOmB;AANjB,yGAAA,cAAc,OAAA;AACd,0GAAA,eAAe,OAAA;AACf,2GAAA,gBAAgB,OAAA;AAChB,4GAAA,iBAAiB,OAAA;AACjB,oGAAA,SAAS,OAAA;AACT,yGAAA,cAAc,OAAA;AAEhB,qCAA6C;AAApC,2GAAA,gBAAgB,OAAA;AAEzB;;;GAGG;AACU,QAAA,UAAU,GAAe;IACpC,IAAI,EAAE,aAAa;IACnB,OAAO,EAAE,OAAO;IAChB,WAAW,EAAE,mDAAmD;CACjE,CAAC;AAEF;;;GAGG;AACU,QAAA,aAAa,GAAG;IAC3B,yBAAyB;IACzB,QAAQ,EAAE,mCAAmC;IAC7C,oCAAoC;IACpC,aAAa,EAAE,4DAA4D;CACnE,CAAC;AAEX;;;GAGG;AACU,QAAA,aAAa,GAAG;IAC3B,QAAQ,EAAE,UAAU;IACpB,aAAa,EAAE,eAAe;IAC9B,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;CACJ,CAAC;AAEX;;GAEG;AACU,QAAA,cAAc,GAAG;IAC5B,cAAc;IACd,OAAO,EAAE,SAAS;IAClB,aAAa;IACb,QAAQ,EAAE,MAAM;IAChB,mBAAmB;IACnB,OAAO,EAAE,KAAK;CACN,CAAC"}
|
package/dist/core/cli-app.js
CHANGED
|
@@ -249,6 +249,8 @@ class CLIApplication {
|
|
|
249
249
|
}
|
|
250
250
|
process.stdout.write('\n');
|
|
251
251
|
process.stdout.write(chalk_1.default.bold('💡 使用示例') + '\n');
|
|
252
|
+
process.stdout.write(chalk_1.default.gray(' # 将技能注册到飞书豆包 / Cursor / Claude / Codex(npm 安装后也会自动执行)') + '\n' +
|
|
253
|
+
chalk_1.default.cyan(` ${constants_1.CLI_CONFIG.name} /init`) + '\n\n');
|
|
252
254
|
process.stdout.write(chalk_1.default.gray(' # 打开 BeyondClick 业务平台主页') + '\n' +
|
|
253
255
|
chalk_1.default.cyan(` ${constants_1.CLI_CONFIG.name} /homepage`) + '\n\n');
|
|
254
256
|
process.stdout.write(chalk_1.default.gray(' # 打开 BeyondClick Nexus Swagger 文档页') + '\n' +
|
package/dist/core/cli-app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-app.js","sourceRoot":"","sources":["../../src/core/cli-app.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"cli-app.js","sourceRoot":"","sources":["../../src/core/cli-app.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -4,3 +4,4 @@ export { CryptoUtils } from './crypto';
|
|
|
4
4
|
export { HttpUtils } from './http';
|
|
5
5
|
export { CommonUtils } from './common';
|
|
6
6
|
export { PromptUtils } from './prompt';
|
|
7
|
+
export { installSkillToAgents, resolveSkillSourcePath, getAgentSkillPaths, SKILL_FOLDER_NAME, AGENT_SKILL_TARGETS, } from './skill-install';
|
package/dist/utils/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PromptUtils = exports.CommonUtils = exports.HttpUtils = exports.CryptoUtils = exports.BrowserUtils = exports.logger = void 0;
|
|
3
|
+
exports.AGENT_SKILL_TARGETS = exports.SKILL_FOLDER_NAME = exports.getAgentSkillPaths = exports.resolveSkillSourcePath = exports.installSkillToAgents = exports.PromptUtils = exports.CommonUtils = exports.HttpUtils = exports.CryptoUtils = exports.BrowserUtils = exports.logger = void 0;
|
|
4
4
|
var logger_1 = require("./logger");
|
|
5
5
|
Object.defineProperty(exports, "logger", { enumerable: true, get: function () { return logger_1.logger; } });
|
|
6
6
|
var browser_1 = require("./browser");
|
|
@@ -13,4 +13,10 @@ var common_1 = require("./common");
|
|
|
13
13
|
Object.defineProperty(exports, "CommonUtils", { enumerable: true, get: function () { return common_1.CommonUtils; } });
|
|
14
14
|
var prompt_1 = require("./prompt");
|
|
15
15
|
Object.defineProperty(exports, "PromptUtils", { enumerable: true, get: function () { return prompt_1.PromptUtils; } });
|
|
16
|
+
var skill_install_1 = require("./skill-install");
|
|
17
|
+
Object.defineProperty(exports, "installSkillToAgents", { enumerable: true, get: function () { return skill_install_1.installSkillToAgents; } });
|
|
18
|
+
Object.defineProperty(exports, "resolveSkillSourcePath", { enumerable: true, get: function () { return skill_install_1.resolveSkillSourcePath; } });
|
|
19
|
+
Object.defineProperty(exports, "getAgentSkillPaths", { enumerable: true, get: function () { return skill_install_1.getAgentSkillPaths; } });
|
|
20
|
+
Object.defineProperty(exports, "SKILL_FOLDER_NAME", { enumerable: true, get: function () { return skill_install_1.SKILL_FOLDER_NAME; } });
|
|
21
|
+
Object.defineProperty(exports, "AGENT_SKILL_TARGETS", { enumerable: true, get: function () { return skill_install_1.AGENT_SKILL_TARGETS; } });
|
|
16
22
|
//# sourceMappingURL=index.js.map
|
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;AAAA,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AACf,qCAAyC;AAAhC,uGAAA,YAAY,OAAA;AACrB,mCAAuC;AAA9B,qGAAA,WAAW,OAAA;AACpB,+BAAmC;AAA1B,iGAAA,SAAS,OAAA;AAClB,mCAAuC;AAA9B,qGAAA,WAAW,OAAA;AACpB,mCAAuC;AAA9B,qGAAA,WAAW,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;AAAA,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AACf,qCAAyC;AAAhC,uGAAA,YAAY,OAAA;AACrB,mCAAuC;AAA9B,qGAAA,WAAW,OAAA;AACpB,+BAAmC;AAA1B,iGAAA,SAAS,OAAA;AAClB,mCAAuC;AAA9B,qGAAA,WAAW,OAAA;AACpB,mCAAuC;AAA9B,qGAAA,WAAW,OAAA;AACpB,iDAMyB;AALvB,qHAAA,oBAAoB,OAAA;AACpB,uHAAA,sBAAsB,OAAA;AACtB,mHAAA,kBAAkB,OAAA;AAClB,kHAAA,iBAAiB,OAAA;AACjB,oHAAA,mBAAmB,OAAA"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 写入各 Agent 技能目录时使用的文件夹名,需与 SKILL.md frontmatter 的 name 一致
|
|
3
|
+
*/
|
|
4
|
+
export declare const SKILL_FOLDER_NAME = "sino-bc-cli";
|
|
5
|
+
/**
|
|
6
|
+
* 用户级技能扫描目录(相对 os.homedir())
|
|
7
|
+
* 飞书豆包工作会聚合 ~/.agents/skills 与 ~/.codex/skills;其余为常见 Agent
|
|
8
|
+
*/
|
|
9
|
+
export declare const AGENT_SKILL_TARGETS: readonly [{
|
|
10
|
+
readonly id: "agents";
|
|
11
|
+
readonly segments: readonly [".agents", "skills"];
|
|
12
|
+
readonly label: "通用 / 飞书豆包工作";
|
|
13
|
+
}, {
|
|
14
|
+
readonly id: "codex";
|
|
15
|
+
readonly segments: readonly [".codex", "skills"];
|
|
16
|
+
readonly label: "Codex";
|
|
17
|
+
}, {
|
|
18
|
+
readonly id: "cursor";
|
|
19
|
+
readonly segments: readonly [".cursor", "skills"];
|
|
20
|
+
readonly label: "Cursor";
|
|
21
|
+
}, {
|
|
22
|
+
readonly id: "claude";
|
|
23
|
+
readonly segments: readonly [".claude", "skills"];
|
|
24
|
+
readonly label: "Claude Code";
|
|
25
|
+
}];
|
|
26
|
+
/** 单个目标目录的写入结果 */
|
|
27
|
+
export type SkillWriteAction = 'created' | 'updated' | 'unchanged';
|
|
28
|
+
export interface ISkillWriteItem {
|
|
29
|
+
/** 完整 SKILL.md 路径 */
|
|
30
|
+
path: string;
|
|
31
|
+
/** Agent 说明 */
|
|
32
|
+
label: string;
|
|
33
|
+
/** 写入动作 */
|
|
34
|
+
action: SkillWriteAction;
|
|
35
|
+
}
|
|
36
|
+
export interface ISkillWriteFailure {
|
|
37
|
+
path: string;
|
|
38
|
+
label: string;
|
|
39
|
+
error: string;
|
|
40
|
+
}
|
|
41
|
+
export interface ISkillInstallResult {
|
|
42
|
+
/** 作为源的 SKILL.md 绝对路径 */
|
|
43
|
+
source: string;
|
|
44
|
+
/** 用户主目录 */
|
|
45
|
+
home: string;
|
|
46
|
+
written: ISkillWriteItem[];
|
|
47
|
+
failed: ISkillWriteFailure[];
|
|
48
|
+
}
|
|
49
|
+
export interface ISkillInstallOptions {
|
|
50
|
+
/** SKILL.md 源路径;缺省时从编译产物 / 仓库根解析 */
|
|
51
|
+
source?: string;
|
|
52
|
+
/** 解析 SKILL.md 时的起点目录,默认为本模块所在目录 */
|
|
53
|
+
fromDir?: string;
|
|
54
|
+
/** 目标主目录,默认 os.homedir(),便于测试注入 */
|
|
55
|
+
home?: string;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* 从 CLI 产物或源码目录解析 SKILL.md
|
|
59
|
+
* 构建后位于 dist/SKILL.md;ts-node 开发时位于仓库根目录
|
|
60
|
+
*/
|
|
61
|
+
export declare function resolveSkillSourcePath(fromDir?: string): string | undefined;
|
|
62
|
+
/**
|
|
63
|
+
* 计算各 Agent 的技能安装路径(跨 Windows / macOS / Linux)
|
|
64
|
+
*/
|
|
65
|
+
export declare function getAgentSkillPaths(home?: string): Array<{
|
|
66
|
+
dir: string;
|
|
67
|
+
file: string;
|
|
68
|
+
label: string;
|
|
69
|
+
}>;
|
|
70
|
+
/**
|
|
71
|
+
* 将 SKILL.md 复制到各 Agent 会扫描的用户级技能目录
|
|
72
|
+
* 使用复制而非符号链接,避免 Windows 未提权时 symlink 失败
|
|
73
|
+
*/
|
|
74
|
+
export declare function installSkillToAgents(options?: ISkillInstallOptions): ISkillInstallResult;
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.AGENT_SKILL_TARGETS = exports.SKILL_FOLDER_NAME = void 0;
|
|
37
|
+
exports.resolveSkillSourcePath = resolveSkillSourcePath;
|
|
38
|
+
exports.getAgentSkillPaths = getAgentSkillPaths;
|
|
39
|
+
exports.installSkillToAgents = installSkillToAgents;
|
|
40
|
+
const _ = __importStar(require("lodash"));
|
|
41
|
+
const fs_1 = require("fs");
|
|
42
|
+
const os_1 = require("os");
|
|
43
|
+
const path_1 = require("path");
|
|
44
|
+
/**
|
|
45
|
+
* 写入各 Agent 技能目录时使用的文件夹名,需与 SKILL.md frontmatter 的 name 一致
|
|
46
|
+
*/
|
|
47
|
+
exports.SKILL_FOLDER_NAME = 'sino-bc-cli';
|
|
48
|
+
/**
|
|
49
|
+
* 用户级技能扫描目录(相对 os.homedir())
|
|
50
|
+
* 飞书豆包工作会聚合 ~/.agents/skills 与 ~/.codex/skills;其余为常见 Agent
|
|
51
|
+
*/
|
|
52
|
+
exports.AGENT_SKILL_TARGETS = [
|
|
53
|
+
{ id: 'agents', segments: ['.agents', 'skills'], label: '通用 / 飞书豆包工作' },
|
|
54
|
+
{ id: 'codex', segments: ['.codex', 'skills'], label: 'Codex' },
|
|
55
|
+
{ id: 'cursor', segments: ['.cursor', 'skills'], label: 'Cursor' },
|
|
56
|
+
{ id: 'claude', segments: ['.claude', 'skills'], label: 'Claude Code' },
|
|
57
|
+
];
|
|
58
|
+
/**
|
|
59
|
+
* 从 CLI 产物或源码目录解析 SKILL.md
|
|
60
|
+
* 构建后位于 dist/SKILL.md;ts-node 开发时位于仓库根目录
|
|
61
|
+
*/
|
|
62
|
+
function resolveSkillSourcePath(fromDir = __dirname) {
|
|
63
|
+
const candidates = [
|
|
64
|
+
(0, path_1.join)(fromDir, 'SKILL.md'),
|
|
65
|
+
(0, path_1.join)(fromDir, '..', 'SKILL.md'),
|
|
66
|
+
(0, path_1.join)(fromDir, '..', '..', 'SKILL.md'),
|
|
67
|
+
];
|
|
68
|
+
return _.find(candidates, (filePath) => (0, fs_1.existsSync)(filePath));
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* 计算各 Agent 的技能安装路径(跨 Windows / macOS / Linux)
|
|
72
|
+
*/
|
|
73
|
+
function getAgentSkillPaths(home = (0, os_1.homedir)()) {
|
|
74
|
+
return _.map([...exports.AGENT_SKILL_TARGETS], (target) => {
|
|
75
|
+
const dir = (0, path_1.join)(home, ...target.segments, exports.SKILL_FOLDER_NAME);
|
|
76
|
+
return {
|
|
77
|
+
dir,
|
|
78
|
+
file: (0, path_1.join)(dir, 'SKILL.md'),
|
|
79
|
+
label: target.label,
|
|
80
|
+
};
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* 将 SKILL.md 复制到各 Agent 会扫描的用户级技能目录
|
|
85
|
+
* 使用复制而非符号链接,避免 Windows 未提权时 symlink 失败
|
|
86
|
+
*/
|
|
87
|
+
function installSkillToAgents(options = {}) {
|
|
88
|
+
const source = options.source || resolveSkillSourcePath(options.fromDir);
|
|
89
|
+
if (_.isNil(source) || _.isEmpty(source) || !(0, fs_1.existsSync)(source)) {
|
|
90
|
+
throw new Error('未找到 SKILL.md,请先执行 npm run build,或确认安装包含 dist/SKILL.md');
|
|
91
|
+
}
|
|
92
|
+
const home = options.home || (0, os_1.homedir)();
|
|
93
|
+
if (_.isEmpty(home)) {
|
|
94
|
+
throw new Error('无法解析用户主目录(os.homedir 为空),请检查 HOME / USERPROFILE');
|
|
95
|
+
}
|
|
96
|
+
const result = {
|
|
97
|
+
source,
|
|
98
|
+
home,
|
|
99
|
+
written: [],
|
|
100
|
+
failed: [],
|
|
101
|
+
};
|
|
102
|
+
const sourceContent = (0, fs_1.readFileSync)(source);
|
|
103
|
+
const targets = getAgentSkillPaths(home);
|
|
104
|
+
_.forEach(targets, (target) => {
|
|
105
|
+
try {
|
|
106
|
+
(0, fs_1.mkdirSync)(target.dir, { recursive: true });
|
|
107
|
+
let action = 'created';
|
|
108
|
+
if ((0, fs_1.existsSync)(target.file)) {
|
|
109
|
+
const current = (0, fs_1.readFileSync)(target.file);
|
|
110
|
+
action = current.equals(sourceContent) ? 'unchanged' : 'updated';
|
|
111
|
+
}
|
|
112
|
+
if (action !== 'unchanged') {
|
|
113
|
+
(0, fs_1.copyFileSync)(source, target.file);
|
|
114
|
+
}
|
|
115
|
+
result.written.push({
|
|
116
|
+
path: target.file,
|
|
117
|
+
label: target.label,
|
|
118
|
+
action,
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
catch (error) {
|
|
122
|
+
result.failed.push({
|
|
123
|
+
path: target.file,
|
|
124
|
+
label: target.label,
|
|
125
|
+
error: error instanceof Error ? error.message : String(error),
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
});
|
|
129
|
+
return result;
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=skill-install.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-install.js","sourceRoot":"","sources":["../../src/utils/skill-install.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sino-bc-cli",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.4",
|
|
4
4
|
"description": "BeyondClick CLI - 命令行工具集合,提供快捷访问 BeyondClick 平台的命令行接口",
|
|
5
|
+
"preferGlobal": true,
|
|
5
6
|
"bin": {
|
|
6
7
|
"sino-bc-cli": "dist/index.js"
|
|
7
8
|
},
|
|
@@ -10,7 +11,8 @@
|
|
|
10
11
|
"files": [
|
|
11
12
|
"dist/",
|
|
12
13
|
"README.md",
|
|
13
|
-
"LICENSE"
|
|
14
|
+
"LICENSE",
|
|
15
|
+
"scripts/postinstall.cjs"
|
|
14
16
|
],
|
|
15
17
|
"publishConfig": {
|
|
16
18
|
"access": "public",
|
|
@@ -22,6 +24,7 @@
|
|
|
22
24
|
"start": "node dist/index.js",
|
|
23
25
|
"clean": "rimraf dist",
|
|
24
26
|
"rebuild": "npm run clean && npm run build",
|
|
27
|
+
"postinstall": "node scripts/postinstall.cjs",
|
|
25
28
|
"prepublishOnly": "npm run rebuild",
|
|
26
29
|
"prepack": "npm run build",
|
|
27
30
|
"release:patch": "npm version patch && npm publish",
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* npm 安装后自动注册 Agent 技能
|
|
3
|
+
* 使用 .cjs:scripts/package.json 为 "type": "module",.js 无法使用 require
|
|
4
|
+
* dist 不存在时(本地尚未 build)静默跳过,避免打断 npm install
|
|
5
|
+
* 注册失败也不让安装失败,用户可随后执行 sino-bc-cli /init
|
|
6
|
+
*/
|
|
7
|
+
'use strict';
|
|
8
|
+
|
|
9
|
+
const { existsSync } = require('fs');
|
|
10
|
+
const { join } = require('path');
|
|
11
|
+
const { spawnSync } = require('child_process');
|
|
12
|
+
|
|
13
|
+
const cliEntry = join(__dirname, '..', 'dist', 'index.js');
|
|
14
|
+
|
|
15
|
+
if (!existsSync(cliEntry)) {
|
|
16
|
+
process.exit(0);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
const result = spawnSync(process.execPath, [cliEntry, '/init', '--quiet'], {
|
|
20
|
+
stdio: 'inherit',
|
|
21
|
+
windowsHide: true,
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
if (result.error || (typeof result.status === 'number' && result.status !== 0)) {
|
|
25
|
+
console.warn('[sino-bc-cli] 技能自动注册未完成,请手动执行: sino-bc-cli /init');
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
process.exit(0);
|