jinzd-ai-cli 0.4.25 → 0.4.27

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.
@@ -6,7 +6,7 @@ import { platform } from "os";
6
6
  import chalk from "chalk";
7
7
 
8
8
  // src/core/constants.ts
9
- var VERSION = "0.4.25";
9
+ var VERSION = "0.4.27";
10
10
  var APP_NAME = "ai-cli";
11
11
  var CONFIG_DIR_NAME = ".aicli";
12
12
  var CONFIG_FILE_NAME = "config.json";
@@ -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.4.25";
11
+ var VERSION = "0.4.27";
12
12
  var APP_NAME = "ai-cli";
13
13
  var CONFIG_DIR_NAME = ".aicli";
14
14
  var CONFIG_FILE_NAME = "config.json";
@@ -7,7 +7,7 @@ import {
7
7
  ProviderNotFoundError,
8
8
  RateLimitError,
9
9
  schemaToJsonSchema
10
- } from "./chunk-5GZQLJAY.js";
10
+ } from "./chunk-22KSHJZJ.js";
11
11
  import {
12
12
  APP_NAME,
13
13
  CONFIG_DIR_NAME,
@@ -20,7 +20,7 @@ import {
20
20
  MCP_TOOL_PREFIX,
21
21
  PLUGINS_DIR_NAME,
22
22
  VERSION
23
- } from "./chunk-AHH5I2U6.js";
23
+ } from "./chunk-LVEJKGIN.js";
24
24
 
25
25
  // src/config/config-manager.ts
26
26
  import { readFileSync, writeFileSync, existsSync, mkdirSync } from "fs";
@@ -387,7 +387,7 @@ ${content}`);
387
387
  }
388
388
  }
389
389
  async function runTaskMode(config, providers, configManager, topic) {
390
- const { TaskOrchestrator } = await import("./task-orchestrator-4N5UUA6L.js");
390
+ const { TaskOrchestrator } = await import("./task-orchestrator-42RXTDZD.js");
391
391
  const orchestrator = new TaskOrchestrator(config, providers, configManager);
392
392
  let interrupted = false;
393
393
  const onSigint = () => {
package/dist/index.js CHANGED
@@ -20,7 +20,7 @@ import {
20
20
  saveDevState,
21
21
  sessionHasMeaningfulContent,
22
22
  setupProxy
23
- } from "./chunk-SS7BQZ5R.js";
23
+ } from "./chunk-MONMUTCS.js";
24
24
  import {
25
25
  ToolExecutor,
26
26
  ToolRegistry,
@@ -33,7 +33,7 @@ import {
33
33
  spawnAgentContext,
34
34
  theme,
35
35
  undoStack
36
- } from "./chunk-5GZQLJAY.js";
36
+ } from "./chunk-22KSHJZJ.js";
37
37
  import {
38
38
  fileCheckpoints
39
39
  } from "./chunk-4BKXL7SM.js";
@@ -57,7 +57,7 @@ import {
57
57
  SKILLS_DIR_NAME,
58
58
  VERSION,
59
59
  buildUserIdentityPrompt
60
- } from "./chunk-AHH5I2U6.js";
60
+ } from "./chunk-LVEJKGIN.js";
61
61
 
62
62
  // src/index.ts
63
63
  import { program } from "commander";
@@ -195,7 +195,7 @@ var Renderer = class {
195
195
  console.log(theme.dim(" Gemini (Google) \xB7 Zhipu (GLM) \xB7 Custom OpenAI-compatible"));
196
196
  console.log(HR);
197
197
  const mcpToolCount = mcpInfo?.tools ?? 0;
198
- const toolTotal = 16 + pluginCount + mcpToolCount;
198
+ const toolTotal = 19 + pluginCount + mcpToolCount;
199
199
  const extras = [];
200
200
  if (pluginCount > 0) extras.push(`${pluginCount} plugin(s)`);
201
201
  if (mcpToolCount > 0) extras.push(`${mcpToolCount} MCP`);
@@ -217,13 +217,17 @@ var Renderer = class {
217
217
  console.log(tool("write_todos", "Break tasks into subtask list with real-time progress display"));
218
218
  console.log(tool("spawn_agent", "Delegate to independent sub-agent (isolated dialog + auto tool-call loop)"));
219
219
  console.log(tool("run_tests", "Run project tests and return structured report (auto-detect Maven/npm/pytest etc.)"));
220
+ console.log(tool("task_create", "Start a command running in the background"));
221
+ console.log(tool("task_list", "List background tasks and their status/output"));
222
+ console.log(tool("task_stop", "Stop a running background task"));
220
223
  console.log(HR);
221
- console.log(theme.dim(" REPL Commands (38):"));
224
+ console.log(theme.dim(" REPL Commands (40):"));
222
225
  console.log(theme.dim(" /help /about /provider /model /clear /compact /plan /session"));
223
226
  console.log(theme.dim(" /system /context /status /search /undo /export /copy /paste"));
224
227
  console.log(theme.dim(" /cost /init /skill /tools /plugins /mcp /config /checkpoint"));
225
- console.log(theme.dim(" /review /commands /test /scaffold /add-dir /memory /profile"));
226
- console.log(theme.dim(" /doctor /bug /think /diff /fork /yolo /exit"));
228
+ console.log(theme.dim(" /review /security-review /rewind /commands /test /scaffold"));
229
+ console.log(theme.dim(" /add-dir /memory /profile /doctor /bug /think /diff /fork"));
230
+ console.log(theme.dim(" /yolo /exit"));
227
231
  console.log(HR);
228
232
  console.log(theme.dim(" Key Features:"));
229
233
  console.log(feat("Agentic loop (up to 25 tool-call rounds, final answer streamed)"));
@@ -2079,7 +2083,7 @@ ${hint}` : "")
2079
2083
  usage: "/test [command|filter]",
2080
2084
  async execute(args, ctx) {
2081
2085
  try {
2082
- const { executeTests } = await import("./run-tests-L3JNRB6X.js");
2086
+ const { executeTests } = await import("./run-tests-6PMTHGR3.js");
2083
2087
  const argStr = args.join(" ").trim();
2084
2088
  let testArgs = {};
2085
2089
  if (argStr) {
@@ -5361,7 +5365,7 @@ program.command("web").description("Start Web UI server with browser-based chat
5361
5365
  console.error("Error: Invalid port number. Must be between 1 and 65535.");
5362
5366
  process.exit(1);
5363
5367
  }
5364
- const { startWebServer } = await import("./server-V3IZSAMO.js");
5368
+ const { startWebServer } = await import("./server-PVBEJXS6.js");
5365
5369
  await startWebServer({ port, host: options.host });
5366
5370
  });
5367
5371
  program.command("user [action] [username]").description("Manage Web UI users (list | create <name> | delete <name> | reset-password <name> | migrate <name>)").action(async (action, username) => {
@@ -5594,7 +5598,7 @@ program.command("hub [topic]").description("Start multi-agent hub (discuss / bra
5594
5598
  }),
5595
5599
  config.get("customProviders")
5596
5600
  );
5597
- const { startHub } = await import("./hub-JOYPSPR2.js");
5601
+ const { startHub } = await import("./hub-VYCI73QC.js");
5598
5602
  await startHub(
5599
5603
  {
5600
5604
  topic: topic ?? "",
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  executeTests,
4
4
  runTestsTool
5
- } from "./chunk-AHH5I2U6.js";
5
+ } from "./chunk-LVEJKGIN.js";
6
6
  export {
7
7
  executeTests,
8
8
  runTestsTool
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  executeTests,
3
3
  runTestsTool
4
- } from "./chunk-ETMUP3CY.js";
4
+ } from "./chunk-H7OVRCEJ.js";
5
5
  export {
6
6
  executeTests,
7
7
  runTestsTool
@@ -15,7 +15,7 @@ import {
15
15
  hadPreviousWriteToolCalls,
16
16
  loadDevState,
17
17
  setupProxy
18
- } from "./chunk-SS7BQZ5R.js";
18
+ } from "./chunk-MONMUTCS.js";
19
19
  import {
20
20
  AuthManager
21
21
  } from "./chunk-BYNY5JPB.js";
@@ -33,7 +33,7 @@ import {
33
33
  spawnAgentContext,
34
34
  truncateOutput,
35
35
  undoStack
36
- } from "./chunk-5GZQLJAY.js";
36
+ } from "./chunk-22KSHJZJ.js";
37
37
  import "./chunk-4BKXL7SM.js";
38
38
  import {
39
39
  AGENTIC_BEHAVIOR_GUIDELINE,
@@ -52,7 +52,7 @@ import {
52
52
  SKILLS_DIR_NAME,
53
53
  VERSION,
54
54
  buildUserIdentityPrompt
55
- } from "./chunk-AHH5I2U6.js";
55
+ } from "./chunk-LVEJKGIN.js";
56
56
 
57
57
  // src/web/server.ts
58
58
  import express from "express";
@@ -1147,6 +1147,8 @@ Tokens: in=${this.sessionTokenUsage.inputTokens} out=${this.sessionTokenUsage.ou
1147
1147
  " /checkpoint [save|restore|delete] <name> \u2014 Session checkpoints",
1148
1148
  " /fork [checkpoint] \u2014 Fork session from checkpoint or current",
1149
1149
  " /review [--staged] \u2014 AI code review from git diff",
1150
+ " /security-review \u2014 Security vulnerability scan on git diff",
1151
+ " /rewind [list|<n>] \u2014 Rewind conversation & restore files to checkpoint",
1150
1152
  " /test [command] \u2014 Run project tests",
1151
1153
  " /init [--force] \u2014 Generate AICLI.md by scanning project",
1152
1154
  " /scaffold <desc> \u2014 Generate project scaffolding with AI",
@@ -1604,7 +1606,7 @@ ${undoResults.map((r) => ` \u2022 ${r}`).join("\n")}` });
1604
1606
  case "test": {
1605
1607
  this.send({ type: "info", message: "\u{1F9EA} Running tests..." });
1606
1608
  try {
1607
- const { executeTests } = await import("./run-tests-L3JNRB6X.js");
1609
+ const { executeTests } = await import("./run-tests-6PMTHGR3.js");
1608
1610
  const argStr = args.join(" ").trim();
1609
1611
  let testArgs = {};
1610
1612
  if (argStr) {
@@ -4,11 +4,11 @@ import {
4
4
  getDangerLevel,
5
5
  googleSearchContext,
6
6
  truncateOutput
7
- } from "./chunk-5GZQLJAY.js";
7
+ } from "./chunk-22KSHJZJ.js";
8
8
  import "./chunk-4BKXL7SM.js";
9
9
  import {
10
10
  SUBAGENT_ALLOWED_TOOLS
11
- } from "./chunk-AHH5I2U6.js";
11
+ } from "./chunk-LVEJKGIN.js";
12
12
 
13
13
  // src/hub/task-orchestrator.ts
14
14
  import { createInterface } from "readline";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jinzd-ai-cli",
3
- "version": "0.4.25",
3
+ "version": "0.4.27",
4
4
  "description": "Cross-platform REPL-style AI CLI with multi-provider support",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",