@botconnector/bccli 0.4.0-beta.46 → 0.4.0-beta.47

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.
Files changed (45) hide show
  1. package/dist/{acp-YXBMSWYP.js → acp-QMD7IKKI.js} +2 -2
  2. package/dist/{args-6MWRODGH.js → args-6T55MFPG.js} +4 -4
  3. package/dist/{chunk-IHYNME3G.js → chunk-226R2FBX.js} +1 -1
  4. package/dist/{chunk-2QNYWBDG.js → chunk-3ETD6HSV.js} +31 -18
  5. package/dist/{chunk-OZPSNMUD.js → chunk-5D35DOMD.js} +3 -3
  6. package/dist/{chunk-PBBD37E7.js → chunk-5YTZXUGU.js} +4 -4
  7. package/dist/{chunk-7PRH5NDO.js → chunk-DAFJ7VOQ.js} +1 -1
  8. package/dist/{chunk-ASJRO2WF.js → chunk-EC67VAZX.js} +2 -2
  9. package/dist/{chunk-K3SWFB5S.js → chunk-FNECQ433.js} +2 -2
  10. package/dist/{chunk-IA5PRX4Z.js → chunk-HBR62GF2.js} +1 -1
  11. package/dist/{chunk-GI5GVU2L.js → chunk-JRUQQRP6.js} +1 -4
  12. package/dist/{chunk-KDVKD3QA.js → chunk-KVXONGYT.js} +4 -4
  13. package/dist/{chunk-6RML6SN7.js → chunk-QGTAINBU.js} +6 -6
  14. package/dist/{chunk-GF6CRNT3.js → chunk-R72DRWZ6.js} +1 -1
  15. package/dist/{chunk-PQB4CGSL.js → chunk-SJTJHATK.js} +2 -2
  16. package/dist/{chunk-33OBF43H.js → chunk-SVGARF5B.js} +3 -3
  17. package/dist/{chunk-NGHOZRIM.js → chunk-TSZFE2RV.js} +1 -1
  18. package/dist/{chunk-65OGHOGS.js → chunk-Y7F5CZ4D.js} +1 -1
  19. package/dist/{chunk-FIY424O5.js → chunk-YGITX6JU.js} +1 -1
  20. package/dist/cli.js +37 -37
  21. package/dist/{completion-D3HXSAQY.js → completion-QO5B6N4R.js} +1 -1
  22. package/dist/{config-BAAESXVB.js → config-67RNJLDR.js} +3 -3
  23. package/dist/{config-CJGPM5MJ.js → config-TBRDIB7O.js} +2 -2
  24. package/dist/{ghBotCli-DCCFACAA.js → ghBotCli-4SXXJQGT.js} +13 -13
  25. package/dist/{integrationCli-EYAHT6VL.js → integrationCli-KTHSQC4Y.js} +2 -2
  26. package/dist/{login-FXTMDCCC.js → login-7T6M25XB.js} +3 -3
  27. package/dist/{mcpCli-57JTECJY.js → mcpCli-7RR5N7SX.js} +5 -5
  28. package/dist/{modelsCli-NH7W6MAZ.js → modelsCli-GDE5RVD4.js} +6 -6
  29. package/dist/{oauthLogin-FTOPZW7X.js → oauthLogin-ZVKAVGJH.js} +1 -1
  30. package/dist/{pluginsCli-UUPFG2CF.js → pluginsCli-UKMRWPVT.js} +2 -2
  31. package/dist/{prCli-6OQ5ZUBO.js → prCli-26OUBDFO.js} +1 -1
  32. package/dist/providerCli-QVYG6PFQ.js +15 -0
  33. package/dist/sdk.js +22 -12
  34. package/dist/{serve-HZZYEI3J.js → serve-PAXJYBVI.js} +3 -3
  35. package/dist/{serve-HPQ2K7UE.js → serve-SEGKQ5DM.js} +14 -14
  36. package/dist/session-GDPYDGOX.js +12 -0
  37. package/dist/setup-HRZW73ZW.js +24 -0
  38. package/dist/{statsCli-G7GYLCPM.js → statsCli-ZHURTHK7.js} +1 -1
  39. package/dist/{transferCli-7FW2SJY4.js → transferCli-PQCFSIVT.js} +4 -4
  40. package/dist/{ui-KHNDA2RT.js → ui-52SWT2AL.js} +66 -59
  41. package/dist/{update-UG7GWBXT.js → update-URVV6UXT.js} +2 -2
  42. package/package.json +1 -1
  43. package/dist/providerCli-L6SQHIRK.js +0 -15
  44. package/dist/session-QIZKAZK3.js +0 -12
  45. package/dist/setup-4I5FXW37.js +0 -24
@@ -1,32 +1,32 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  createRuntime
4
- } from "./chunk-2QNYWBDG.js";
4
+ } from "./chunk-3ETD6HSV.js";
5
5
  import "./chunk-QZKLZELZ.js";
6
- import "./chunk-7PRH5NDO.js";
7
- import "./chunk-GF6CRNT3.js";
6
+ import "./chunk-DAFJ7VOQ.js";
7
+ import "./chunk-R72DRWZ6.js";
8
8
  import "./chunk-PSO7R5AD.js";
9
9
  import {
10
10
  LOOPBACK_BIND,
11
11
  parseCliArgs
12
- } from "./chunk-OZPSNMUD.js";
12
+ } from "./chunk-5D35DOMD.js";
13
13
  import "./chunk-GAFJEQTJ.js";
14
- import "./chunk-KDVKD3QA.js";
15
- import "./chunk-PBBD37E7.js";
16
- import "./chunk-65OGHOGS.js";
14
+ import "./chunk-KVXONGYT.js";
15
+ import "./chunk-5YTZXUGU.js";
16
+ import "./chunk-Y7F5CZ4D.js";
17
17
  import "./chunk-7F3IWBPQ.js";
18
- import "./chunk-IA5PRX4Z.js";
19
- import "./chunk-ASJRO2WF.js";
20
- import "./chunk-FIY424O5.js";
21
- import "./chunk-PQB4CGSL.js";
18
+ import "./chunk-HBR62GF2.js";
19
+ import "./chunk-EC67VAZX.js";
20
+ import "./chunk-YGITX6JU.js";
21
+ import "./chunk-SJTJHATK.js";
22
22
  import {
23
23
  ConfigError,
24
24
  globalConfigPath,
25
25
  readJsonConfig
26
- } from "./chunk-NGHOZRIM.js";
26
+ } from "./chunk-TSZFE2RV.js";
27
27
  import {
28
28
  t
29
- } from "./chunk-GI5GVU2L.js";
29
+ } from "./chunk-JRUQQRP6.js";
30
30
 
31
31
  // src/ghBotWebhook.ts
32
32
  import { createHmac, timingSafeEqual } from "crypto";
@@ -5,10 +5,10 @@ import {
5
5
  loadConfig,
6
6
  readCredentials,
7
7
  resolveModel
8
- } from "./chunk-NGHOZRIM.js";
8
+ } from "./chunk-TSZFE2RV.js";
9
9
  import {
10
10
  t
11
- } from "./chunk-GI5GVU2L.js";
11
+ } from "./chunk-JRUQQRP6.js";
12
12
 
13
13
  // src/integrationCli.ts
14
14
  import { chmodSync, copyFileSync, existsSync, mkdirSync, readFileSync, rmSync, writeFileSync } from "fs";
@@ -4,10 +4,10 @@ import {
4
4
  readLine,
5
5
  readSecret,
6
6
  runLogin
7
- } from "./chunk-6RML6SN7.js";
7
+ } from "./chunk-QGTAINBU.js";
8
8
  import "./chunk-7F3IWBPQ.js";
9
- import "./chunk-NGHOZRIM.js";
10
- import "./chunk-GI5GVU2L.js";
9
+ import "./chunk-TSZFE2RV.js";
10
+ import "./chunk-JRUQQRP6.js";
11
11
  export {
12
12
  defaultLoginDeps,
13
13
  readLine,
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  CATALOG,
4
4
  fillTemplate
5
- } from "./chunk-K3SWFB5S.js";
5
+ } from "./chunk-FNECQ433.js";
6
6
  import {
7
7
  authorizeMcpServer,
8
8
  clearTokens
@@ -12,20 +12,20 @@ import {
12
12
  globalMcpPath,
13
13
  readMcpFile,
14
14
  removeGlobalServer
15
- } from "./chunk-PQB4CGSL.js";
15
+ } from "./chunk-SJTJHATK.js";
16
16
  import {
17
17
  bccliHome
18
- } from "./chunk-NGHOZRIM.js";
18
+ } from "./chunk-TSZFE2RV.js";
19
19
  import {
20
20
  t
21
- } from "./chunk-GI5GVU2L.js";
21
+ } from "./chunk-JRUQQRP6.js";
22
22
 
23
23
  // src/mcpCli.ts
24
24
  async function runMcpCommand(args, deps) {
25
25
  const home = bccliHome(deps.env);
26
26
  const [action = "list", name] = args.subArgs;
27
27
  if (action === "serve") {
28
- const { runMcpServe } = await import("./serve-HZZYEI3J.js");
28
+ const { runMcpServe } = await import("./serve-PAXJYBVI.js");
29
29
  return runMcpServe(args, deps);
30
30
  }
31
31
  const installed = readMcpFile(globalMcpPath(home));
@@ -1,17 +1,17 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  listAllModels
4
- } from "./chunk-PBBD37E7.js";
5
- import "./chunk-65OGHOGS.js";
6
- import "./chunk-ASJRO2WF.js";
7
- import "./chunk-FIY424O5.js";
4
+ } from "./chunk-5YTZXUGU.js";
5
+ import "./chunk-Y7F5CZ4D.js";
6
+ import "./chunk-EC67VAZX.js";
7
+ import "./chunk-YGITX6JU.js";
8
8
  import {
9
9
  loadConfig,
10
10
  resolveModel
11
- } from "./chunk-NGHOZRIM.js";
11
+ } from "./chunk-TSZFE2RV.js";
12
12
  import {
13
13
  t
14
- } from "./chunk-GI5GVU2L.js";
14
+ } from "./chunk-JRUQQRP6.js";
15
15
 
16
16
  // src/modelsCli.ts
17
17
  async function runModelsCommand(args, deps) {
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  t
4
- } from "./chunk-GI5GVU2L.js";
4
+ } from "./chunk-JRUQQRP6.js";
5
5
 
6
6
  // src/oauthLogin.ts
7
7
  import { createHash, randomBytes } from "crypto";
@@ -2,10 +2,10 @@
2
2
  import {
3
3
  bccliHome,
4
4
  globalConfigPath
5
- } from "./chunk-NGHOZRIM.js";
5
+ } from "./chunk-TSZFE2RV.js";
6
6
  import {
7
7
  t
8
- } from "./chunk-GI5GVU2L.js";
8
+ } from "./chunk-JRUQQRP6.js";
9
9
 
10
10
  // src/pluginsCli.ts
11
11
  import { existsSync, mkdirSync, readFileSync, statSync, writeFileSync } from "fs";
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  t
4
- } from "./chunk-GI5GVU2L.js";
4
+ } from "./chunk-JRUQQRP6.js";
5
5
 
6
6
  // src/prCli.ts
7
7
  import { spawn } from "child_process";
@@ -0,0 +1,15 @@
1
+ #!/usr/bin/env node
2
+ import {
3
+ addProviderKey,
4
+ runProviderCommand
5
+ } from "./chunk-KVXONGYT.js";
6
+ import "./chunk-5YTZXUGU.js";
7
+ import "./chunk-Y7F5CZ4D.js";
8
+ import "./chunk-EC67VAZX.js";
9
+ import "./chunk-YGITX6JU.js";
10
+ import "./chunk-TSZFE2RV.js";
11
+ import "./chunk-JRUQQRP6.js";
12
+ export {
13
+ addProviderKey,
14
+ runProviderCommand
15
+ };
package/dist/sdk.js CHANGED
@@ -68,6 +68,7 @@ var ID = {
68
68
  " enter save \xB7 esc cancel": " enter simpan \xB7 esc batal",
69
69
  "shift+tab switch mode": "shift+tab ganti mode",
70
70
  "{n} tokens": "{n} token",
71
+ "\u273B Thinking": "\u273B Berpikir",
71
72
  "click to toggle": "klik untuk buka/tutup",
72
73
  "Model: {model} \xB7 reasoning: {level}": "Model: {model} \xB7 penalaran: {level}",
73
74
  "No reasoning summary received yet; tool activity remains visible above.": "Belum ada ringkasan penalaran dari model; aktivitas tool tetap terlihat di atas.",
@@ -452,15 +453,11 @@ Opsi:
452
453
  "Unknown command: /{name}. Type /help.": "Perintah tidak dikenal: /{name}. Ketik /help.",
453
454
  "Skill {name} cannot be read: {error}": "Skill {name} tidak bisa dibaca: {error}",
454
455
  "{n} queued messages cancelled.": "{n} pesan antrian dibatalkan.",
455
- "Thinking shown ({bind} to hide).": "Thinking ditampilkan ({bind} untuk menutup).",
456
- "Thinking hidden ({bind} to show).": "Thinking disembunyikan ({bind} untuk membuka).",
457
456
  "MCP {name} removed.": "MCP {name} dihapus.",
458
457
  "MCP {name} installed, connecting\u2026": "MCP {name} dipasang, menghubungkan\u2026",
459
458
  "MCP {name} active \xB7 {n} tools.": "MCP {name} aktif \xB7 {n} alat.",
460
459
  "MCP {name} failed: {error}": "MCP {name} gagal: {error}",
461
460
  "unknown": "tidak diketahui",
462
- "\u273B Thinking \xB7 {n} lines \xB7 {bind} to show": "\u273B Berpikir \xB7 {n} baris \xB7 {bind} buka",
463
- "\u273B Thinking ({bind} to hide)": "\u273B Berpikir ({bind} tutup)",
464
461
  " \u23F3 queued: {q}": " \u23F3 antri: {q}",
465
462
  "Thinking": "Berpikir",
466
463
  "Cancelling": "Membatalkan",
@@ -3439,13 +3436,15 @@ var Agent2 = class {
3439
3436
  const keepTokens = Math.min(15e3, Math.floor(this.contextWindow * 0.1));
3440
3437
  const [older, keep] = splitKeepRecent(this.messages, keepTokens);
3441
3438
  const history = trimToFit(older, Math.floor(this.contextWindow * 0.8));
3442
- const completion = await this.provider.chat({
3439
+ const pending = this.provider.chat({
3443
3440
  messages: [{ role: "system", content: this.systemPrompt }, ...history, { role: "user", content: COMPACT_PROMPT }],
3444
3441
  // Some gateways reject tool_calls in history when no tools are declared.
3445
3442
  tools: this.definitions,
3446
3443
  signal,
3447
3444
  reasoning: this.reasoning
3448
3445
  });
3446
+ const completion = await raceAbort(pending, signal);
3447
+ if (completion === ABORTED) throw new Error("aborted");
3449
3448
  this.clear();
3450
3449
  this.push({ role: "user", content: `Summary of the previous conversation:
3451
3450
  ${completion.text}` });
@@ -3487,15 +3486,26 @@ ${completion.text}` });
3487
3486
  this.onEvent({ type: "budgetExceeded", ...over });
3488
3487
  return;
3489
3488
  }
3490
- let completion = await this.provider.chat({
3489
+ const pendingCompletion = this.provider.chat({
3491
3490
  messages: [{ role: "system", content: this.systemPrompt }, ...this.messages],
3492
3491
  tools: this.turnDefinitions,
3493
3492
  programmaticToolNames: this.turnTools.filter((tool) => tool.programmaticSafe).map((tool) => tool.name),
3494
3493
  signal,
3495
- onText: (delta) => this.onEvent({ type: "text", delta }),
3496
- onThinking: (delta) => this.onEvent({ type: "thinking", delta }),
3494
+ // Late output from a cancelled provider must not leak into the next turn.
3495
+ onText: (delta) => {
3496
+ if (!signal.aborted) this.onEvent({ type: "text", delta });
3497
+ },
3498
+ onThinking: (delta) => {
3499
+ if (!signal.aborted) this.onEvent({ type: "thinking", delta });
3500
+ },
3497
3501
  reasoning: this.reasoning
3498
3502
  });
3503
+ const outcome = await raceAbort(pendingCompletion, signal);
3504
+ if (outcome === ABORTED) {
3505
+ this.onEvent({ type: "aborted" });
3506
+ return;
3507
+ }
3508
+ let completion = outcome;
3499
3509
  if (!completion.toolCalls.length && completion.finishReason !== "repetition") {
3500
3510
  const recovered = recoverTextToolCalls(completion.text, this.turnDefinitions);
3501
3511
  if (recovered) {
@@ -3542,8 +3552,8 @@ ${completion.text}` });
3542
3552
  const batch = calls.slice(i, j);
3543
3553
  const tickets = batch.map(() => ({ abandoned: false, open: false }));
3544
3554
  const running = Promise.all(batch.map((c, k) => this.runTool(c, signal, tickets[k])));
3545
- const outcome = await raceAbort(running, signal);
3546
- if (outcome === ABORTED) {
3555
+ const outcome2 = await raceAbort(running, signal);
3556
+ if (outcome2 === ABORTED) {
3547
3557
  batch.forEach((c, k) => {
3548
3558
  const ticket = tickets[k];
3549
3559
  ticket.abandoned = true;
@@ -3556,11 +3566,11 @@ ${completion.text}` });
3556
3566
  return;
3557
3567
  }
3558
3568
  batch.forEach((c, k) => {
3559
- roundImages.push(...outcome[k].images ?? []);
3569
+ roundImages.push(...outcome2[k].images ?? []);
3560
3570
  this.push({
3561
3571
  role: "tool",
3562
3572
  tool_call_id: c.id,
3563
- content: outcome[k].output,
3573
+ content: outcome2[k].output,
3564
3574
  ...c.caller ? { responses_caller: c.caller } : {}
3565
3575
  });
3566
3576
  });
@@ -3,15 +3,15 @@ import {
3
3
  createFetchTool,
4
4
  createWebSearchTool,
5
5
  isPrivateHost
6
- } from "./chunk-GF6CRNT3.js";
6
+ } from "./chunk-R72DRWZ6.js";
7
7
  import "./chunk-PSO7R5AD.js";
8
8
  import {
9
9
  loadConfig,
10
10
  readCredentials
11
- } from "./chunk-NGHOZRIM.js";
11
+ } from "./chunk-TSZFE2RV.js";
12
12
  import {
13
13
  t
14
- } from "./chunk-GI5GVU2L.js";
14
+ } from "./chunk-JRUQQRP6.js";
15
15
 
16
16
  // src/mcpServer/serve.ts
17
17
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
@@ -1,14 +1,14 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  createRuntime
4
- } from "./chunk-2QNYWBDG.js";
4
+ } from "./chunk-3ETD6HSV.js";
5
5
  import "./chunk-QZKLZELZ.js";
6
- import "./chunk-7PRH5NDO.js";
7
- import "./chunk-GF6CRNT3.js";
6
+ import "./chunk-DAFJ7VOQ.js";
7
+ import "./chunk-R72DRWZ6.js";
8
8
  import "./chunk-PSO7R5AD.js";
9
9
  import {
10
10
  VERSION
11
- } from "./chunk-IHYNME3G.js";
11
+ } from "./chunk-226R2FBX.js";
12
12
  import {
13
13
  LOOPBACK_BIND,
14
14
  MAX_FRAME_BYTES,
@@ -17,25 +17,25 @@ import {
17
17
  parseClientFrame,
18
18
  randomToken,
19
19
  trustFence
20
- } from "./chunk-OZPSNMUD.js";
20
+ } from "./chunk-5D35DOMD.js";
21
21
  import "./chunk-GAFJEQTJ.js";
22
- import "./chunk-KDVKD3QA.js";
22
+ import "./chunk-KVXONGYT.js";
23
23
  import {
24
24
  listAllModels
25
- } from "./chunk-PBBD37E7.js";
26
- import "./chunk-65OGHOGS.js";
25
+ } from "./chunk-5YTZXUGU.js";
26
+ import "./chunk-Y7F5CZ4D.js";
27
27
  import "./chunk-7F3IWBPQ.js";
28
28
  import {
29
29
  Session
30
- } from "./chunk-IA5PRX4Z.js";
31
- import "./chunk-ASJRO2WF.js";
32
- import "./chunk-FIY424O5.js";
33
- import "./chunk-PQB4CGSL.js";
30
+ } from "./chunk-HBR62GF2.js";
31
+ import "./chunk-EC67VAZX.js";
32
+ import "./chunk-YGITX6JU.js";
33
+ import "./chunk-SJTJHATK.js";
34
34
  import {
35
35
  bccliHome,
36
36
  loadConfig
37
- } from "./chunk-NGHOZRIM.js";
38
- import "./chunk-GI5GVU2L.js";
37
+ } from "./chunk-TSZFE2RV.js";
38
+ import "./chunk-JRUQQRP6.js";
39
39
 
40
40
  // src/serve.ts
41
41
  import { randomBytes } from "crypto";
@@ -0,0 +1,12 @@
1
+ #!/usr/bin/env node
2
+ import {
3
+ Session,
4
+ pruneSessions
5
+ } from "./chunk-HBR62GF2.js";
6
+ import "./chunk-EC67VAZX.js";
7
+ import "./chunk-YGITX6JU.js";
8
+ import "./chunk-JRUQQRP6.js";
9
+ export {
10
+ Session,
11
+ pruneSessions
12
+ };
@@ -0,0 +1,24 @@
1
+ #!/usr/bin/env node
2
+ import {
3
+ createRuntime,
4
+ lunaPtcAutoEnabled
5
+ } from "./chunk-3ETD6HSV.js";
6
+ import "./chunk-QZKLZELZ.js";
7
+ import "./chunk-DAFJ7VOQ.js";
8
+ import "./chunk-R72DRWZ6.js";
9
+ import "./chunk-PSO7R5AD.js";
10
+ import "./chunk-GAFJEQTJ.js";
11
+ import "./chunk-KVXONGYT.js";
12
+ import "./chunk-5YTZXUGU.js";
13
+ import "./chunk-Y7F5CZ4D.js";
14
+ import "./chunk-7F3IWBPQ.js";
15
+ import "./chunk-HBR62GF2.js";
16
+ import "./chunk-EC67VAZX.js";
17
+ import "./chunk-YGITX6JU.js";
18
+ import "./chunk-SJTJHATK.js";
19
+ import "./chunk-TSZFE2RV.js";
20
+ import "./chunk-JRUQQRP6.js";
21
+ export {
22
+ createRuntime,
23
+ lunaPtcAutoEnabled
24
+ };
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-QZKLZELZ.js";
5
5
  import {
6
6
  t
7
- } from "./chunk-GI5GVU2L.js";
7
+ } from "./chunk-JRUQQRP6.js";
8
8
 
9
9
  // src/statsCli.ts
10
10
  import { existsSync, readdirSync, readFileSync, statSync } from "fs";
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  Session
4
- } from "./chunk-IA5PRX4Z.js";
5
- import "./chunk-ASJRO2WF.js";
6
- import "./chunk-FIY424O5.js";
4
+ } from "./chunk-HBR62GF2.js";
5
+ import "./chunk-EC67VAZX.js";
6
+ import "./chunk-YGITX6JU.js";
7
7
  import {
8
8
  t
9
- } from "./chunk-GI5GVU2L.js";
9
+ } from "./chunk-JRUQQRP6.js";
10
10
 
11
11
  // src/transferCli.ts
12
12
  import { copyFileSync, existsSync, mkdirSync, readdirSync, readFileSync, statSync, writeFileSync } from "fs";