jinzd-ai-cli 0.2.22 → 0.2.24

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.
@@ -16,7 +16,7 @@ import {
16
16
  SUBAGENT_MAX_ROUNDS_LIMIT,
17
17
  VERSION,
18
18
  runTestsTool
19
- } from "./chunk-TYZVSHVJ.js";
19
+ } from "./chunk-I5PCIFFK.js";
20
20
 
21
21
  // src/config/config-manager.ts
22
22
  import { readFileSync, writeFileSync, existsSync, mkdirSync } from "fs";
@@ -8,7 +8,7 @@ import { platform } from "os";
8
8
  import chalk from "chalk";
9
9
 
10
10
  // src/core/constants.ts
11
- var VERSION = "0.2.22";
11
+ var VERSION = "0.2.24";
12
12
  var APP_NAME = "ai-cli";
13
13
  var CONFIG_DIR_NAME = ".aicli";
14
14
  var CONFIG_FILE_NAME = "config.json";
package/dist/index.js CHANGED
@@ -36,7 +36,7 @@ import {
36
36
  theme,
37
37
  truncateOutput,
38
38
  undoStack
39
- } from "./chunk-FUR3Z67Z.js";
39
+ } from "./chunk-FGZU7XNQ.js";
40
40
  import {
41
41
  AGENTIC_BEHAVIOR_GUIDELINE,
42
42
  AUTHOR,
@@ -56,7 +56,7 @@ import {
56
56
  REPO_URL,
57
57
  SKILLS_DIR_NAME,
58
58
  VERSION
59
- } from "./chunk-TYZVSHVJ.js";
59
+ } from "./chunk-I5PCIFFK.js";
60
60
 
61
61
  // src/index.ts
62
62
  import { program } from "commander";
@@ -1905,7 +1905,7 @@ ${hint}` : "")
1905
1905
  description: "Run project tests and show structured report",
1906
1906
  usage: "/test [command|filter]",
1907
1907
  async execute(args, _ctx) {
1908
- const { executeTests } = await import("./run-tests-HCONBTQL.js");
1908
+ const { executeTests } = await import("./run-tests-MIUBHRXG.js");
1909
1909
  const argStr = args.join(" ").trim();
1910
1910
  let testArgs = {};
1911
1911
  if (argStr) {
@@ -3394,11 +3394,7 @@ var Repl = class {
3394
3394
  _escHandler = null;
3395
3395
  /** User interjection: completed line queued for injection into agentic loop */
3396
3396
  _userInterjection = null;
3397
- /** User interjection: character accumulator (typed but not yet Enter'd) */
3398
- _interjectionBuf = "";
3399
- /** User interjection: stdin data handler reference (echo-only) */
3400
- _interjectionHandler = null;
3401
- /** Whether interjection listener is active (agentic loop) */
3397
+ /** Whether interjection system is active (agentic loop) currently disabled */
3402
3398
  _interjectionActive = false;
3403
3399
  /** Multi-line input buffer: accumulates lines ending with \ */
3404
3400
  _multilineBuf = [];
@@ -4184,18 +4180,6 @@ Session '${this.resumeSessionId}' not found.
4184
4180
  if (this.toolExecutor.confirming) return;
4185
4181
  if (this.selecting) return;
4186
4182
  if (askUserContext.prompting) return;
4187
- if (processing && this._interjectionActive) {
4188
- const trimmed = line.trim();
4189
- if (trimmed.length === 0) return;
4190
- if (trimmed.startsWith("/")) {
4191
- this.toolExecutor.pendingSlashCommand = trimmed;
4192
- process.stdout.write(theme.dim(` (command "${trimmed}" queued)
4193
- `));
4194
- } else {
4195
- this._userInterjection = trimmed;
4196
- }
4197
- return;
4198
- }
4199
4183
  if (processing) return;
4200
4184
  const rawTrimmed = line.trimEnd();
4201
4185
  if (rawTrimmed.endsWith("\\")) {
@@ -4558,45 +4542,13 @@ Session '${this.resumeSessionId}' not found.
4558
4542
  */
4559
4543
  setupInterjectionListener() {
4560
4544
  this._userInterjection = null;
4561
- this._interjectionBuf = "";
4562
4545
  this._interjectionActive = true;
4563
- this.rl.resume();
4564
- const handler = (data) => {
4565
- if (this.toolExecutor.confirming || askUserContext.prompting) return;
4566
- const str = data.toString("utf-8");
4567
- for (const ch of str) {
4568
- const code = ch.codePointAt(0);
4569
- if (code === 13 || code === 10) {
4570
- this._interjectionBuf = "";
4571
- } else if (code === 127 || code === 8) {
4572
- if (this._interjectionBuf.length > 0) {
4573
- const chars = Array.from(this._interjectionBuf);
4574
- const removed = chars.pop();
4575
- this._interjectionBuf = chars.join("");
4576
- const width = removed.codePointAt(0) > 255 ? 2 : 1;
4577
- for (let w = 0; w < width; w++) process.stdout.write("\b \b");
4578
- }
4579
- } else if (code === 3 || code === 27) {
4580
- } else if (code >= 32) {
4581
- this._interjectionBuf += ch;
4582
- process.stdout.write(ch);
4583
- }
4584
- }
4585
- };
4586
- this._interjectionHandler = handler;
4587
- process.stdin.on("data", handler);
4588
4546
  }
4589
4547
  /**
4590
4548
  * Remove the interjection listener, clean up state.
4591
4549
  */
4592
4550
  teardownInterjectionListener() {
4593
- if (this._interjectionHandler) {
4594
- process.stdin.removeListener("data", this._interjectionHandler);
4595
- this._interjectionHandler = null;
4596
- }
4597
- this._interjectionBuf = "";
4598
4551
  this._interjectionActive = false;
4599
- this.rl.pause();
4600
4552
  }
4601
4553
  /**
4602
4554
  * 注册 Ctrl+V 剪贴板图片粘贴快捷键。
@@ -4858,7 +4810,6 @@ You have a maximum of ${MAX_TOOL_ROUNDS} tool call rounds for this task. Plan ef
4858
4810
  let repeatedToolCallCount = 0;
4859
4811
  const roundToolHistory = [];
4860
4812
  this.setupInterjectionListener();
4861
- process.stdout.write(theme.dim(" (Type a message + Enter to redirect AI at any time)\n"));
4862
4813
  try {
4863
4814
  for (let round = 0; round < MAX_TOOL_ROUNDS; round++) {
4864
4815
  this.toolExecutor.setRoundInfo(round + 1, MAX_TOOL_ROUNDS);
@@ -5102,9 +5053,7 @@ You have a maximum of ${MAX_TOOL_ROUNDS} tool call rounds for this task. Plan ef
5102
5053
  }
5103
5054
  }
5104
5055
  }
5105
- if (this._interjectionActive) {
5106
- this.rl.resume();
5107
- }
5056
+ process.stdin.resume();
5108
5057
  const reasoningContent = "reasoningContent" in result ? result.reasoningContent : void 0;
5109
5058
  const newMsgs = provider.buildToolResultMessages(result.toolCalls, toolResults, reasoningContent);
5110
5059
  extraMessages.push(...newMsgs);
@@ -5521,7 +5470,7 @@ program.command("web").description("Start Web UI server with browser-based chat
5521
5470
  console.error("Error: Invalid port number. Must be between 1 and 65535.");
5522
5471
  process.exit(1);
5523
5472
  }
5524
- const { startWebServer } = await import("./server-LC5U6FSV.js");
5473
+ const { startWebServer } = await import("./server-E2TJNNYH.js");
5525
5474
  await startWebServer({ port, host: options.host });
5526
5475
  });
5527
5476
  program.command("user [action] [username]").description("Manage Web UI users (list | create <name> | delete <name> | reset-password <name> | migrate <name>)").action(async (action, username) => {
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  executeTests,
4
4
  runTestsTool
5
- } from "./chunk-TYZVSHVJ.js";
5
+ } from "./chunk-I5PCIFFK.js";
6
6
  export {
7
7
  executeTests,
8
8
  runTestsTool
@@ -24,7 +24,7 @@ import {
24
24
  setupProxy,
25
25
  spawnAgentContext,
26
26
  truncateOutput
27
- } from "./chunk-FUR3Z67Z.js";
27
+ } from "./chunk-FGZU7XNQ.js";
28
28
  import {
29
29
  AGENTIC_BEHAVIOR_GUIDELINE,
30
30
  CONTEXT_FILE_CANDIDATES,
@@ -36,7 +36,7 @@ import {
36
36
  PLAN_MODE_SYSTEM_ADDON,
37
37
  SKILLS_DIR_NAME,
38
38
  VERSION
39
- } from "./chunk-TYZVSHVJ.js";
39
+ } from "./chunk-I5PCIFFK.js";
40
40
  import {
41
41
  AuthManager
42
42
  } from "./chunk-CPLT6CD3.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jinzd-ai-cli",
3
- "version": "0.2.22",
3
+ "version": "0.2.24",
4
4
  "description": "Cross-platform REPL-style AI CLI with multi-provider support",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",