@bgicli/bgicli 2.4.9 → 2.5.0
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 +6 -17
- package/dist/bgi.js +23 -3
- package/dist/bio.js +19209 -0
- package/dist/mbp.js +19209 -0
- package/package.json +6 -2
package/README.md
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
# BGI CLI
|
|
2
2
|
|
|
3
|
+
[](https://www.npmjs.com/package/@bgicli/bgicli)
|
|
4
|
+
[](https://www.npmjs.com/package/@bgicli/bgicli)
|
|
5
|
+
|
|
3
6
|
**BGI CLI** 是面向中国生物学研究者的 AI 终端工具,开箱即用,无需额外配置。
|
|
4
7
|
|
|
5
|
-
- ✅
|
|
8
|
+
- ✅ **一行安装** — `npm install -g @bgicli/bgicli`,无需克隆仓库
|
|
6
9
|
- ✅ **内置 1001 个技能** — 涵盖生信分析、结构生物学、药物发现、临床等全领域,自动安装
|
|
7
10
|
- ✅ **智能技能路由** — 描述任务自动激活对应技能,无需手动搜索
|
|
8
11
|
- ✅ **中国 AI 服务商** — 百炼(DashScope)聚合:Qwen、DeepSeek、Kimi、MiniMax 等 20+ 模型
|
|
@@ -16,22 +19,9 @@
|
|
|
16
19
|
**环境要求:** Node.js 18+
|
|
17
20
|
|
|
18
21
|
```bash
|
|
19
|
-
|
|
20
|
-
cd bgi-cli
|
|
21
|
-
npm install
|
|
22
|
-
npm run build
|
|
23
|
-
sudo npm link
|
|
22
|
+
npm install -g @bgicli/bgicli
|
|
24
23
|
```
|
|
25
24
|
|
|
26
|
-
> **macOS / Linux 无 root 权限时**,`npm link` 可能报 EACCES 权限错误,需先配置 npm 用户目录:
|
|
27
|
-
> ```bash
|
|
28
|
-
> mkdir -p ~/.npm-global
|
|
29
|
-
> npm config set prefix '~/.npm-global'
|
|
30
|
-
> echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc # zsh 用户改为 ~/.zshrc
|
|
31
|
-
> source ~/.bashrc
|
|
32
|
-
> npm link # 再次执行
|
|
33
|
-
> ```
|
|
34
|
-
|
|
35
25
|
安装完成后直接运行:
|
|
36
26
|
|
|
37
27
|
```bash
|
|
@@ -46,8 +36,7 @@ bgi
|
|
|
46
36
|
|
|
47
37
|
```bash
|
|
48
38
|
# 卸载命令行工具
|
|
49
|
-
|
|
50
|
-
npm unlink
|
|
39
|
+
npm uninstall -g @bgicli/bgicli
|
|
51
40
|
|
|
52
41
|
# 删除本地数据(配置、技能库)
|
|
53
42
|
# Linux / macOS
|
package/dist/bgi.js
CHANGED
|
@@ -14267,6 +14267,7 @@ ${shortSummary}`);
|
|
|
14267
14267
|
}
|
|
14268
14268
|
|
|
14269
14269
|
// src/chat.ts
|
|
14270
|
+
var BRAND = "bgi".toUpperCase();
|
|
14270
14271
|
async function chat(messages, config, systemPrompt2, stats, signal) {
|
|
14271
14272
|
const prov = PROVIDERS[config.provider];
|
|
14272
14273
|
if (!prov) throw new Error(`Unknown provider: ${config.provider}`);
|
|
@@ -14461,7 +14462,7 @@ async function streamOnce(client, messages, model, signal) {
|
|
|
14461
14462
|
let finishReason = null;
|
|
14462
14463
|
let inputTokens = 0;
|
|
14463
14464
|
let outputTokens = 0;
|
|
14464
|
-
process.stdout.write(source_default.green(
|
|
14465
|
+
process.stdout.write(source_default.green(`${BRAND} \u203A `));
|
|
14465
14466
|
for await (const chunk of stream) {
|
|
14466
14467
|
if (chunk.usage) {
|
|
14467
14468
|
inputTokens = chunk.usage.prompt_tokens ?? 0;
|
|
@@ -17192,7 +17193,8 @@ function clearCheckpoints(sessionId) {
|
|
|
17192
17193
|
|
|
17193
17194
|
// src/index.ts
|
|
17194
17195
|
var import_fs7 = require("fs");
|
|
17195
|
-
var VERSION2 = "2.
|
|
17196
|
+
var VERSION2 = "2.5.0";
|
|
17197
|
+
var BRAND2 = "bgi".toLowerCase();
|
|
17196
17198
|
var SKILLHUB_HUBS = {
|
|
17197
17199
|
bgi: { label: "BGI\u5185\u7F51", apiBase: "https://clawhub.ai", backend: "clawhub" },
|
|
17198
17200
|
clawhub: { label: "clawhub.ai", apiBase: "https://clawhub.ai", backend: "clawhub" },
|
|
@@ -17383,13 +17385,31 @@ function installBundledData() {
|
|
|
17383
17385
|
}
|
|
17384
17386
|
}
|
|
17385
17387
|
function printBanner() {
|
|
17386
|
-
|
|
17388
|
+
if (BRAND2 === "bio") {
|
|
17389
|
+
console.log(source_default.cyan.bold(`
|
|
17390
|
+
\u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2557 \u2588\u2588\u2557
|
|
17391
|
+
\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2551 \u2588\u2588\u2554\u2550\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2551 \u2588\u2588\u2551
|
|
17392
|
+
\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2551 \u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2551 \u2588\u2588\u2551 \u2588\u2588\u2551
|
|
17393
|
+
\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2551 \u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2551 \u2588\u2588\u2551 \u2588\u2588\u2551
|
|
17394
|
+
\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2551 \u255A\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u255A\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2551
|
|
17395
|
+
\u255A\u2550\u2550\u2550\u2550\u2550\u255D \u255A\u2550\u255D \u255A\u2550\u2550\u2550\u2550\u2550\u255D \u255A\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u255D v${VERSION2}`));
|
|
17396
|
+
} else if (BRAND2 === "mbp") {
|
|
17397
|
+
console.log(source_default.cyan.bold(`
|
|
17398
|
+
\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2557 \u2588\u2588\u2557
|
|
17399
|
+
\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2551\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2551 \u2588\u2588\u2551
|
|
17400
|
+
\u2588\u2588\u2554\u2588\u2588\u2588\u2588\u2554\u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2551 \u2588\u2588\u2551 \u2588\u2588\u2551
|
|
17401
|
+
\u2588\u2588\u2551\u255A\u2588\u2588\u2554\u255D\u2588\u2588\u2551\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u2550\u255D \u2588\u2588\u2551 \u2588\u2588\u2551 \u2588\u2588\u2551
|
|
17402
|
+
\u2588\u2588\u2551 \u255A\u2550\u255D \u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2551 \u255A\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2551
|
|
17403
|
+
\u255A\u2550\u255D \u255A\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u255D \u255A\u2550\u255D \u255A\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u255D v${VERSION2}`));
|
|
17404
|
+
} else {
|
|
17405
|
+
console.log(source_default.cyan.bold(`
|
|
17387
17406
|
\u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2557 \u2588\u2588\u2557
|
|
17388
17407
|
\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D \u2588\u2588\u2551 \u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2551 \u2588\u2588\u2551
|
|
17389
17408
|
\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2551 \u2588\u2588\u2588\u2557\u2588\u2588\u2551 \u2588\u2588\u2551 \u2588\u2588\u2551 \u2588\u2588\u2551
|
|
17390
17409
|
\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2551 \u2588\u2588\u2551 \u2588\u2588\u2551 \u2588\u2588\u2551
|
|
17391
17410
|
\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u255A\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2551 \u255A\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2551
|
|
17392
17411
|
\u255A\u2550\u2550\u2550\u2550\u2550\u255D \u255A\u2550\u2550\u2550\u2550\u2550\u255D \u255A\u2550\u255D \u255A\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u255D v${VERSION2}`));
|
|
17412
|
+
}
|
|
17393
17413
|
console.log(source_default.dim(" \u751F\u7269\u4FE1\u606F\u5B66 AI \u7EC8\u7AEF\u52A9\u624B \u2014 Bioinformatics AI Terminal"));
|
|
17394
17414
|
console.log();
|
|
17395
17415
|
}
|