@botconnector/bccli 0.4.16 → 0.4.17

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 (50) hide show
  1. package/dist/{acp-JZW3XHE5.js → acp-HWHF25KU.js} +3 -3
  2. package/dist/agent.d.ts +11 -0
  3. package/dist/{args-XVO7TB4C.js → args-XA77XUMD.js} +4 -4
  4. package/dist/{chunk-INMSTUB2.js → chunk-2IP5F3EK.js} +4 -4
  5. package/dist/{chunk-S3QEZDKB.js → chunk-5CVHTYBQ.js} +3 -3
  6. package/dist/{chunk-KEKDRROL.js → chunk-6LO6YRDY.js} +1 -1
  7. package/dist/{chunk-JUC3ZOCV.js → chunk-6PJRWKVI.js} +2 -2
  8. package/dist/{chunk-KJIXA6MP.js → chunk-7OTFZK4B.js} +7 -7
  9. package/dist/{chunk-KDVL2NP6.js → chunk-7U7CMKKI.js} +1 -1
  10. package/dist/{chunk-ZJRZTMJF.js → chunk-A3NBWIEQ.js} +52 -15
  11. package/dist/{chunk-6SDRWEPN.js → chunk-FY543EQW.js} +1 -1
  12. package/dist/{chunk-R754XIBJ.js → chunk-IDZLHEVL.js} +2 -1
  13. package/dist/{chunk-7GM6NN5E.js → chunk-IF5RNXBI.js} +1 -1
  14. package/dist/{chunk-ISOKH5WB.js → chunk-M5T4AM4I.js} +3 -3
  15. package/dist/{chunk-7XD47KN5.js → chunk-NGFWBVHD.js} +1 -1
  16. package/dist/{chunk-6JK4IBGK.js → chunk-OCEQ2TRJ.js} +2 -2
  17. package/dist/{chunk-SWNRA3EW.js → chunk-RLSQAZBT.js} +4 -4
  18. package/dist/{chunk-Q42ZGVAQ.js → chunk-VPFCIUC6.js} +2 -2
  19. package/dist/{chunk-V5D6PJQN.js → chunk-XP5MTJN2.js} +1 -1
  20. package/dist/{chunk-3CYQYHPK.js → chunk-YGBTNDPK.js} +1 -1
  21. package/dist/{chunk-TLCL6DC7.js → chunk-ZXWRLN7E.js} +1 -1
  22. package/dist/cli.js +38 -38
  23. package/dist/{completion-Q7VHOPPV.js → completion-IRVEVW6H.js} +1 -1
  24. package/dist/{config-YYEAEN2C.js → config-OVWCUVY7.js} +3 -3
  25. package/dist/{config-T7MKGJVG.js → config-S3CZUIBB.js} +2 -2
  26. package/dist/{ghBotCli-7VUGI63S.js → ghBotCli-FYKJDJOD.js} +14 -14
  27. package/dist/{integrationCli-FBRSTF5F.js → integrationCli-GY73S2K7.js} +2 -2
  28. package/dist/{login-BSMUGW7L.js → login-KSN63EM4.js} +4 -4
  29. package/dist/{mcpCli-ZT7CRYMP.js → mcpCli-VWSCCDWT.js} +6 -6
  30. package/dist/{modelsCli-2ZRW4CC4.js → modelsCli-4Q6KFWV2.js} +6 -6
  31. package/dist/{oauthLogin-THSM6FE7.js → oauthLogin-JWXQZTMZ.js} +1 -1
  32. package/dist/{pluginsCli-EKQI4CJW.js → pluginsCli-7XWDLJEL.js} +2 -2
  33. package/dist/{prCli-FMQTOBIV.js → prCli-FH7N26D4.js} +1 -1
  34. package/dist/providerCli-YMG4G56R.js +15 -0
  35. package/dist/sdk.js +43 -5
  36. package/dist/{serve-V6YVZTNR.js → serve-HSFF6MGB.js} +3 -3
  37. package/dist/{serve-3BODPEPR.js → serve-HUQNVOSP.js} +15 -15
  38. package/dist/session-YM36TGU7.js +12 -0
  39. package/dist/setup-3YB6EKYX.js +24 -0
  40. package/dist/{statsCli-7MIQHLVW.js → statsCli-I4TSDU3X.js} +1 -1
  41. package/dist/{transferCli-SRSYQLSJ.js → transferCli-3B4LMOYI.js} +4 -4
  42. package/dist/ui/StatusBar.d.ts +6 -1
  43. package/dist/ui/liveCap.d.ts +21 -1
  44. package/dist/ui/markdownLayout.d.ts +23 -0
  45. package/dist/{ui-LZ4JGF2V.js → ui-TAZMRXRI.js} +187 -56
  46. package/dist/{update-P7MU4ZM7.js → update-5V425FIK.js} +2 -2
  47. package/package.json +1 -1
  48. package/dist/providerCli-3TFEKV4C.js +0 -15
  49. package/dist/session-LX4UNPCD.js +0 -12
  50. package/dist/setup-MFG3BWEU.js +0 -24
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  t
4
- } from "./chunk-R754XIBJ.js";
4
+ } from "./chunk-IDZLHEVL.js";
5
5
 
6
6
  // src/acp.ts
7
7
  var ACP_PROTOCOL_VERSION = 1;
@@ -190,8 +190,8 @@ function runtimeAgent(cwd, allowAll = false, deps = {}) {
190
190
  if (!rt) {
191
191
  if (deps.createRuntime) rt = deps.createRuntime({ cwd, allowAll });
192
192
  else {
193
- const { parseCliArgs } = await import("./args-XVO7TB4C.js");
194
- const { createRuntime } = await import("./setup-MFG3BWEU.js");
193
+ const { parseCliArgs } = await import("./args-XA77XUMD.js");
194
+ const { createRuntime } = await import("./setup-3YB6EKYX.js");
195
195
  rt = createRuntime({ cwd, args: { ...parseCliArgs([]), allowAll } });
196
196
  }
197
197
  }
package/dist/agent.d.ts CHANGED
@@ -31,6 +31,12 @@ export type AgentEvent = {
31
31
  outputTokens: number;
32
32
  cachedInputTokens?: number;
33
33
  cacheWriteTokens?: number;
34
+ /** Prompt tokens of the most recent model call: the size of the context, not the session total. */
35
+ lastInputTokens?: number;
36
+ /** Cache reads for the most recent model call, rather than the session total. */
37
+ lastCachedInputTokens?: number;
38
+ /** True when the provider omitted usage and token counts use the local chars/4 estimate. */
39
+ estimated?: boolean;
34
40
  } | {
35
41
  type: 'compacted';
36
42
  } | {
@@ -102,6 +108,7 @@ export declare class Agent {
102
108
  messages: ChatMessage[];
103
109
  totalUsage: Usage;
104
110
  lastInputTokens: number;
111
+ lastInputEstimated: boolean;
105
112
  onEvent: (event: AgentEvent) => void;
106
113
  reasoning: ReasoningLevel;
107
114
  askPermission: AskPermission;
@@ -124,6 +131,10 @@ export declare class Agent {
124
131
  setTools(tools: Tool[]): void;
125
132
  private isParallelSafe;
126
133
  private push;
134
+ private estimateCurrentInputTokens;
135
+ private seedEstimatedContext;
136
+ /** Publish the latest context after prompt/history changes, without changing session usage totals. */
137
+ private publishContextMetadata;
127
138
  /** Swaps in another conversation (resume, new session) without writing to the session log. */
128
139
  load(messages: ChatMessage[]): void;
129
140
  clear(): void;
@@ -2,11 +2,11 @@
2
2
  import {
3
3
  helpText,
4
4
  parseCliArgs
5
- } from "./chunk-ISOKH5WB.js";
5
+ } from "./chunk-M5T4AM4I.js";
6
6
  import "./chunk-YYTFJUO2.js";
7
- import "./chunk-7XD47KN5.js";
8
- import "./chunk-TLCL6DC7.js";
9
- import "./chunk-R754XIBJ.js";
7
+ import "./chunk-NGFWBVHD.js";
8
+ import "./chunk-ZXWRLN7E.js";
9
+ import "./chunk-IDZLHEVL.js";
10
10
  export {
11
11
  helpText,
12
12
  parseCliArgs
@@ -2,17 +2,17 @@
2
2
  import {
3
3
  hasKey,
4
4
  providerName
5
- } from "./chunk-6SDRWEPN.js";
5
+ } from "./chunk-FY543EQW.js";
6
6
  import {
7
7
  createProvider
8
- } from "./chunk-6JK4IBGK.js";
8
+ } from "./chunk-OCEQ2TRJ.js";
9
9
  import {
10
10
  PRESETS,
11
11
  readCredentials
12
- } from "./chunk-TLCL6DC7.js";
12
+ } from "./chunk-ZXWRLN7E.js";
13
13
  import {
14
14
  t
15
- } from "./chunk-R754XIBJ.js";
15
+ } from "./chunk-IDZLHEVL.js";
16
16
 
17
17
  // src/models.ts
18
18
  function order(ids) {
@@ -2,13 +2,13 @@
2
2
  import {
3
3
  runCommand,
4
4
  runHooks
5
- } from "./chunk-KDVL2NP6.js";
5
+ } from "./chunk-7U7CMKKI.js";
6
6
  import {
7
7
  ConfigError
8
- } from "./chunk-TLCL6DC7.js";
8
+ } from "./chunk-ZXWRLN7E.js";
9
9
  import {
10
10
  t
11
- } from "./chunk-R754XIBJ.js";
11
+ } from "./chunk-IDZLHEVL.js";
12
12
 
13
13
  // src/verify.ts
14
14
  var MAX_VERIFY_ROUNDS = 2;
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  contentText
4
- } from "./chunk-6JK4IBGK.js";
4
+ } from "./chunk-OCEQ2TRJ.js";
5
5
 
6
6
  // src/session.ts
7
7
  import { randomBytes } from "crypto";
@@ -1,10 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  ConfigError
4
- } from "./chunk-TLCL6DC7.js";
4
+ } from "./chunk-ZXWRLN7E.js";
5
5
  import {
6
6
  t
7
- } from "./chunk-R754XIBJ.js";
7
+ } from "./chunk-IDZLHEVL.js";
8
8
 
9
9
  // src/mcp/catalog.ts
10
10
  var CATALOG = [
@@ -1,14 +1,14 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  defaultOpen
4
- } from "./chunk-3CYQYHPK.js";
4
+ } from "./chunk-YGBTNDPK.js";
5
5
  import {
6
6
  removeCredential,
7
7
  saveCredential
8
- } from "./chunk-TLCL6DC7.js";
8
+ } from "./chunk-ZXWRLN7E.js";
9
9
  import {
10
10
  t
11
- } from "./chunk-R754XIBJ.js";
11
+ } from "./chunk-IDZLHEVL.js";
12
12
 
13
13
  // src/login.ts
14
14
  function readSecret(prompt) {
@@ -104,8 +104,8 @@ function defaultLoginDeps() {
104
104
  fetch: globalThis.fetch,
105
105
  // Wiring NYATA jalur lama: persis runLogin lama (provider add + prompt key).
106
106
  legacyAdd: async (providerId, targetCwd) => {
107
- const { runProviderCommand } = await import("./providerCli-3TFEKV4C.js");
108
- const { parseCliArgs: parse } = await import("./args-XVO7TB4C.js");
107
+ const { runProviderCommand } = await import("./providerCli-YMG4G56R.js");
108
+ const { parseCliArgs: parse } = await import("./args-XA77XUMD.js");
109
109
  return runProviderCommand(parse(["provider", "add", providerId]), {
110
110
  env: process.env,
111
111
  cwd: targetCwd,
@@ -130,12 +130,12 @@ async function runLogin(providerId, cwd, args, deps) {
130
130
  );
131
131
  return 1;
132
132
  }
133
- const { runOauthLogout } = await import("./oauthLogin-THSM6FE7.js");
133
+ const { runOauthLogout } = await import("./oauthLogin-JWXQZTMZ.js");
134
134
  return runOauthLogout({ out: deps.out, err: deps.err, env: deps.env, removeCredential: deps.removeCredential });
135
135
  }
136
136
  if (args.key) return deps.legacyAdd(providerId, cwd);
137
137
  if (providerId === "openrouter") {
138
- const { runOauthLogin } = await import("./oauthLogin-THSM6FE7.js");
138
+ const { runOauthLogin } = await import("./oauthLogin-JWXQZTMZ.js");
139
139
  return runOauthLogin({
140
140
  out: deps.out,
141
141
  err: deps.err,
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-PSO7R5AD.js";
5
5
  import {
6
6
  t
7
- } from "./chunk-R754XIBJ.js";
7
+ } from "./chunk-IDZLHEVL.js";
8
8
 
9
9
  // src/tools/bash.ts
10
10
  import { spawn } from "child_process";
@@ -24,11 +24,11 @@ import {
24
24
  resolvePath,
25
25
  runHooks,
26
26
  validateGlobPattern
27
- } from "./chunk-KDVL2NP6.js";
27
+ } from "./chunk-7U7CMKKI.js";
28
28
  import {
29
29
  createWebSearchTool,
30
30
  fetchTool
31
- } from "./chunk-7GM6NN5E.js";
31
+ } from "./chunk-IF5RNXBI.js";
32
32
  import {
33
33
  defineTool
34
34
  } from "./chunk-PSO7R5AD.js";
@@ -37,39 +37,39 @@ import {
37
37
  } from "./chunk-YYTFJUO2.js";
38
38
  import {
39
39
  addProviderKey
40
- } from "./chunk-SWNRA3EW.js";
40
+ } from "./chunk-RLSQAZBT.js";
41
41
  import {
42
42
  listAllModels
43
- } from "./chunk-INMSTUB2.js";
43
+ } from "./chunk-2IP5F3EK.js";
44
44
  import {
45
45
  providerName
46
- } from "./chunk-6SDRWEPN.js";
46
+ } from "./chunk-FY543EQW.js";
47
47
  import {
48
48
  FileOAuthProvider,
49
49
  hasStoredTokens
50
- } from "./chunk-3CYQYHPK.js";
50
+ } from "./chunk-YGBTNDPK.js";
51
51
  import {
52
52
  Session
53
- } from "./chunk-KEKDRROL.js";
53
+ } from "./chunk-6LO6YRDY.js";
54
54
  import {
55
55
  completionAssistantMessage,
56
56
  createProvider,
57
57
  hasPendingProgrammaticReplay,
58
58
  imageUserMessage,
59
59
  withFallbackProvider
60
- } from "./chunk-6JK4IBGK.js";
60
+ } from "./chunk-OCEQ2TRJ.js";
61
61
  import {
62
62
  expandEnvVars
63
- } from "./chunk-Q42ZGVAQ.js";
63
+ } from "./chunk-VPFCIUC6.js";
64
64
  import {
65
65
  ConfigError,
66
66
  bccliHome,
67
67
  loadConfig,
68
68
  resolveModel
69
- } from "./chunk-TLCL6DC7.js";
69
+ } from "./chunk-ZXWRLN7E.js";
70
70
  import {
71
71
  t
72
- } from "./chunk-R754XIBJ.js";
72
+ } from "./chunk-IDZLHEVL.js";
73
73
 
74
74
  // src/textToolCalls.ts
75
75
  var PAIR = /(?:<arg_key>\s*|`)?([A-Za-z_]\w*)(?:\s*<\/arg_key>)?`?\s*(?:=\s*`|<arg_value>)([\s\S]*?)<\/arg_value>/g;
@@ -862,6 +862,7 @@ var Agent = class {
862
862
  this.budgetModel = opts.budgetModel ?? "";
863
863
  this.systemPrompt = opts.systemPrompt;
864
864
  this.reasoning = opts.reasoning ?? "auto";
865
+ this.seedEstimatedContext();
865
866
  }
866
867
  opts;
867
868
  provider;
@@ -869,6 +870,7 @@ var Agent = class {
869
870
  messages;
870
871
  totalUsage = { inputTokens: 0, outputTokens: 0 };
871
872
  lastInputTokens = 0;
873
+ lastInputEstimated = false;
872
874
  onEvent = () => {
873
875
  };
874
876
  reasoning;
@@ -887,6 +889,7 @@ var Agent = class {
887
889
  systemPrompt;
888
890
  setSystemPrompt(text) {
889
891
  this.systemPrompt = text;
892
+ this.publishContextMetadata();
890
893
  }
891
894
  setContextWindow(window) {
892
895
  this.contextWindow = window;
@@ -903,6 +906,7 @@ var Agent = class {
903
906
  setTools(tools) {
904
907
  this.tools = tools;
905
908
  this.definitions = toolDefinitions(tools);
909
+ this.publishContextMetadata();
906
910
  }
907
911
  isParallelSafe(call) {
908
912
  const tool = this.turnTools.find((t2) => t2.name === call.name);
@@ -918,18 +922,42 @@ var Agent = class {
918
922
  this.messages.push(message);
919
923
  this.opts.onMessage?.(message);
920
924
  }
925
+ estimateCurrentInputTokens() {
926
+ return estimateMessages(this.messages) + estimateTokens(this.systemPrompt) + estimateTokens(JSON.stringify(this.definitions));
927
+ }
928
+ seedEstimatedContext() {
929
+ if (this.messages.length === 0) {
930
+ this.lastInputTokens = 0;
931
+ this.lastInputEstimated = false;
932
+ return;
933
+ }
934
+ this.lastInputTokens = this.estimateCurrentInputTokens();
935
+ this.lastInputEstimated = true;
936
+ }
937
+ /** Publish the latest context after prompt/history changes, without changing session usage totals. */
938
+ publishContextMetadata() {
939
+ this.seedEstimatedContext();
940
+ this.onEvent({
941
+ type: "usage",
942
+ ...this.totalUsage,
943
+ lastInputTokens: this.lastInputTokens,
944
+ lastCachedInputTokens: 0,
945
+ estimated: this.lastInputEstimated
946
+ });
947
+ }
921
948
  /** Swaps in another conversation (resume, new session) without writing to the session log. */
922
949
  load(messages) {
923
950
  this.messages = messages;
924
951
  this.readFiles.clear();
925
952
  this.webBudget.reset();
926
- this.lastInputTokens = estimateMessages(messages) + estimateTokens(this.systemPrompt);
953
+ this.publishContextMetadata();
927
954
  }
928
955
  clear() {
929
956
  this.messages = [];
930
957
  this.readFiles.clear();
931
958
  this.webBudget.reset();
932
959
  this.lastInputTokens = 0;
960
+ this.lastInputEstimated = false;
933
961
  this.opts.onReset?.();
934
962
  }
935
963
  async compact(signal) {
@@ -951,6 +979,7 @@ var Agent = class {
951
979
  ${completion.text}` });
952
980
  this.push({ role: "assistant", content: "OK, I will continue from this summary." });
953
981
  for (const m of keep) this.push(m);
982
+ this.publishContextMetadata();
954
983
  this.onEvent({ type: "compacted" });
955
984
  }
956
985
  /**
@@ -1014,8 +1043,9 @@ ${completion.text}` });
1014
1043
  this.onEvent({ type: "textReplace", text: recovered.text });
1015
1044
  }
1016
1045
  }
1046
+ const estimated = completion.usage === void 0;
1017
1047
  const usage = completion.usage ?? {
1018
- inputTokens: estimateTokens(this.systemPrompt) + estimateTokens(JSON.stringify(this.messages)),
1048
+ inputTokens: estimateTokens(this.systemPrompt) + estimateTokens(JSON.stringify(this.messages)) + estimateTokens(JSON.stringify(this.turnDefinitions)),
1019
1049
  outputTokens: estimateTokens(completion.text) + (completion.toolCalls.length ? estimateTokens(JSON.stringify(completion.toolCalls)) : 0)
1020
1050
  };
1021
1051
  this.totalUsage.inputTokens += usage.inputTokens;
@@ -1023,7 +1053,14 @@ ${completion.text}` });
1023
1053
  this.totalUsage.cachedInputTokens = (this.totalUsage.cachedInputTokens ?? 0) + (usage.cachedInputTokens ?? 0);
1024
1054
  this.totalUsage.cacheWriteTokens = (this.totalUsage.cacheWriteTokens ?? 0) + (usage.cacheWriteTokens ?? 0);
1025
1055
  this.lastInputTokens = usage.inputTokens;
1026
- this.onEvent({ type: "usage", ...this.totalUsage });
1056
+ this.lastInputEstimated = estimated;
1057
+ this.onEvent({
1058
+ type: "usage",
1059
+ ...this.totalUsage,
1060
+ lastInputTokens: usage.inputTokens,
1061
+ lastCachedInputTokens: usage.cachedInputTokens ?? 0,
1062
+ estimated
1063
+ });
1027
1064
  this.opts.onUsage?.(usage);
1028
1065
  this.push(completionAssistantMessage(completion));
1029
1066
  if (completion.finishReason === "repetition") {
@@ -1620,7 +1657,7 @@ function createTaskTool(opts) {
1620
1657
  };
1621
1658
  return defineTool({
1622
1659
  name: "task",
1623
- description: `Delegate a self-contained sub-task to a subagent. It starts with an empty context and returns only its final report. Available agents:
1660
+ description: `Delegate a self-contained sub-task. Choose an agent whose listed tools can complete it; a read-only agent cannot run shell/SSH/network commands or edit, and a failed run still spends tokens. Available agents:
1624
1661
  ${list}`,
1625
1662
  schema: z10.object({
1626
1663
  agent: z10.string().describe("Agent name"),
@@ -6,7 +6,7 @@ import {
6
6
  readJsonConfig,
7
7
  removeCredential,
8
8
  writeFileAtomic
9
- } from "./chunk-TLCL6DC7.js";
9
+ } from "./chunk-ZXWRLN7E.js";
10
10
 
11
11
  // src/providers.ts
12
12
  import { join } from "path";
@@ -25,7 +25,8 @@ var ID = {
25
25
  "[n] not yet, revise first": "[n] belum, perbaiki dulu",
26
26
  " enter save \xB7 esc cancel": " enter simpan \xB7 esc batal",
27
27
  "shift+tab switch mode": "shift+tab ganti mode",
28
- "{n} tokens": "{n} token",
28
+ "{n} tokens in context": "{n} token dalam konteks",
29
+ "{n} cached": "{n} dari cache",
29
30
  "\u273B Thinking": "\u273B Berpikir",
30
31
  "\u273B Thinking \xB7 {n} lines": "\u273B Berpikir \xB7 {n} baris",
31
32
  "click to toggle": "klik untuk buka/tutup",
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-PSO7R5AD.js";
5
5
  import {
6
6
  t
7
- } from "./chunk-R754XIBJ.js";
7
+ } from "./chunk-IDZLHEVL.js";
8
8
 
9
9
  // src/tools/websearch.ts
10
10
  import { z } from "zod";
@@ -5,14 +5,14 @@ import {
5
5
  import {
6
6
  REASONING_LEVELS,
7
7
  isReasoningLevel
8
- } from "./chunk-7XD47KN5.js";
8
+ } from "./chunk-NGFWBVHD.js";
9
9
  import {
10
10
  ConfigError
11
- } from "./chunk-TLCL6DC7.js";
11
+ } from "./chunk-ZXWRLN7E.js";
12
12
  import {
13
13
  parseLang,
14
14
  t
15
- } from "./chunk-R754XIBJ.js";
15
+ } from "./chunk-IDZLHEVL.js";
16
16
 
17
17
  // src/args.ts
18
18
  import { parseArgs } from "util";
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  t
4
- } from "./chunk-R754XIBJ.js";
4
+ } from "./chunk-IDZLHEVL.js";
5
5
 
6
6
  // src/reasoning.ts
7
7
  var REASONING_LEVELS = ["auto", "off", "low", "medium", "high", "max"];
@@ -1,10 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  reasoningPayload
4
- } from "./chunk-7XD47KN5.js";
4
+ } from "./chunk-NGFWBVHD.js";
5
5
  import {
6
6
  t
7
- } from "./chunk-R754XIBJ.js";
7
+ } from "./chunk-IDZLHEVL.js";
8
8
 
9
9
  // src/provider.ts
10
10
  import OpenAI from "openai";
@@ -1,21 +1,21 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  listAllModels
4
- } from "./chunk-INMSTUB2.js";
4
+ } from "./chunk-2IP5F3EK.js";
5
5
  import {
6
6
  hasKey,
7
7
  providerName,
8
8
  removeGlobalProvider,
9
9
  writeGlobalConfig
10
- } from "./chunk-6SDRWEPN.js";
10
+ } from "./chunk-FY543EQW.js";
11
11
  import {
12
12
  PRESETS,
13
13
  loadConfig,
14
14
  saveCredential
15
- } from "./chunk-TLCL6DC7.js";
15
+ } from "./chunk-ZXWRLN7E.js";
16
16
  import {
17
17
  t
18
- } from "./chunk-R754XIBJ.js";
18
+ } from "./chunk-IDZLHEVL.js";
19
19
 
20
20
  // src/providerCli.ts
21
21
  async function addProviderKey(providerId, key, deps) {
@@ -2,10 +2,10 @@
2
2
  import {
3
3
  ConfigError,
4
4
  writeFileAtomic
5
- } from "./chunk-TLCL6DC7.js";
5
+ } from "./chunk-ZXWRLN7E.js";
6
6
  import {
7
7
  t
8
- } from "./chunk-R754XIBJ.js";
8
+ } from "./chunk-IDZLHEVL.js";
9
9
 
10
10
  // src/mcp/config.ts
11
11
  import { createHash } from "crypto";
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  // src/version.ts
4
- var VERSION = true ? "0.4.16" : "0.0.0-dev";
4
+ var VERSION = true ? "0.4.17" : "0.0.0-dev";
5
5
 
6
6
  export {
7
7
  VERSION
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  quarantineCorruptFile,
4
4
  writeFileAtomic
5
- } from "./chunk-TLCL6DC7.js";
5
+ } from "./chunk-ZXWRLN7E.js";
6
6
 
7
7
  // src/mcp/oauth.ts
8
8
  import { spawn } from "child_process";
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  t
4
- } from "./chunk-R754XIBJ.js";
4
+ } from "./chunk-IDZLHEVL.js";
5
5
 
6
6
  // src/config.ts
7
7
  import { chmodSync, existsSync, mkdirSync, readFileSync, renameSync, rmSync, writeFileSync } from "fs";