@aigne/cli 1.54.1 → 1.55.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/CHANGELOG.md CHANGED
@@ -1,5 +1,53 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.55.0](https://github.com/AIGNE-io/aigne-framework/compare/cli-v1.55.0-beta...cli-v1.55.0) (2025-11-14)
4
+
5
+
6
+ ### Dependencies
7
+
8
+ * The following workspace dependencies were updated
9
+ * dependencies
10
+ * @aigne/afs bumped to 1.2.0
11
+ * @aigne/afs-history bumped to 1.0.1
12
+ * @aigne/afs-local-fs bumped to 1.1.0
13
+ * @aigne/agent-library bumped to 1.21.53
14
+ * @aigne/agentic-memory bumped to 1.0.53
15
+ * @aigne/aigne-hub bumped to 0.10.7
16
+ * @aigne/core bumped to 1.68.0
17
+ * @aigne/default-memory bumped to 1.2.16
18
+ * @aigne/openai bumped to 0.16.7
19
+ * devDependencies
20
+ * @aigne/test-utils bumped to 0.5.60
21
+
22
+ ## [1.55.0-beta](https://github.com/AIGNE-io/aigne-framework/compare/cli-v1.54.1...cli-v1.55.0-beta) (2025-11-14)
23
+
24
+
25
+ ### Features
26
+
27
+ * support mount mcp agent into AFS ([#740](https://github.com/AIGNE-io/aigne-framework/issues/740)) ([6d474fc](https://github.com/AIGNE-io/aigne-framework/commit/6d474fc05845a15e2c3e8fa97727b409bdd70945))
28
+
29
+
30
+ ### Bug Fixes
31
+
32
+ * properly handle SIGINT to flush observability data before exit ([#739](https://github.com/AIGNE-io/aigne-framework/issues/739)) ([99b4503](https://github.com/AIGNE-io/aigne-framework/commit/99b45033d5f3bcc1f830b583f9cca7258b00606f))
33
+
34
+
35
+ ### Dependencies
36
+
37
+ * The following workspace dependencies were updated
38
+ * dependencies
39
+ * @aigne/afs bumped to 1.2.0-beta
40
+ * @aigne/afs-history bumped to 1.0.0
41
+ * @aigne/afs-local-fs bumped to 1.1.0-beta
42
+ * @aigne/agent-library bumped to 1.21.53-beta
43
+ * @aigne/agentic-memory bumped to 1.0.53-beta
44
+ * @aigne/aigne-hub bumped to 0.10.7-beta
45
+ * @aigne/core bumped to 1.68.0-beta
46
+ * @aigne/default-memory bumped to 1.2.16-beta
47
+ * @aigne/openai bumped to 0.16.7-beta
48
+ * devDependencies
49
+ * @aigne/test-utils bumped to 0.5.60-beta
50
+
3
51
  ## [1.54.1](https://github.com/AIGNE-io/aigne-framework/compare/cli-v1.54.1-beta.4...cli-v1.54.1) (2025-11-12)
4
52
 
5
53
 
@@ -32,7 +32,7 @@ export class TerminalTracer {
32
32
  const listr = new AIGNEListr({
33
33
  formatRequest: (options) => this.formatRequest(agent, context, input, options),
34
34
  formatResult: (result, options) => this.formatResult(agent, context, result, options),
35
- }, [], { concurrent: true, exitOnError: false });
35
+ }, [], { concurrent: true, exitOnError: false, registerSignalListeners: false });
36
36
  this.listr = listr;
37
37
  const collapsedMap = new Map();
38
38
  const hideContextIds = new Set();
@@ -38,7 +38,9 @@ export async function runEvaluationPipeline(params) {
38
38
  ctx.items = await dataset.loadWithOptions();
39
39
  },
40
40
  },
41
- ]);
41
+ ], {
42
+ registerSignalListeners: false,
43
+ });
42
44
  const { items } = await task1.run();
43
45
  const task2 = new Listr(items.map((item) => {
44
46
  const input = JSON.stringify(item.input);
@@ -70,6 +72,7 @@ export async function runEvaluationPipeline(params) {
70
72
  rendererOptions: {
71
73
  collapseSubtasks: false,
72
74
  },
75
+ registerSignalListeners: false,
73
76
  });
74
77
  await task2.run();
75
78
  const summary = aggregateSummary(results, (Date.now() - now) / 1000);
@@ -47,8 +47,13 @@ export async function loadAIGNE({ path, modelOptions, imageModelOptions, skipMod
47
47
  afs: {
48
48
  availableModules: [
49
49
  {
50
- module: "system-fs",
51
- create: (options) => import("@aigne/afs-system-fs").then((m) => new m.SystemFS(options)),
50
+ module: "history",
51
+ create: (options) => import("@aigne/afs-history").then((m) => new m.AFSHistory(options)),
52
+ },
53
+ {
54
+ module: "local-fs",
55
+ alias: ["system-fs"],
56
+ create: (options) => import("@aigne/afs-local-fs").then((m) => new m.LocalFS(options)),
52
57
  },
53
58
  ],
54
59
  },
@@ -7,7 +7,9 @@ export declare function parseAgentInputByCommander(agent: Agent, options?: Agent
7
7
  argv?: string[];
8
8
  defaultInput?: string | Message;
9
9
  }): Promise<Message>;
10
- export declare function runWithAIGNE(agentCreator: ((aigne: AIGNE) => PromiseOrValue<Agent>) | Agent, { argv, chatLoopOptions, modelOptions, outputKey, }?: {
10
+ export declare function loadAIGNEWithCmdOptions(): Promise<AIGNE<import("@aigne/core").UserContext>>;
11
+ export declare function runWithAIGNE(agentCreator: ((aigne: AIGNE) => PromiseOrValue<Agent>) | Agent, { aigne, argv, chatLoopOptions, modelOptions, outputKey, }?: {
12
+ aigne?: AIGNE;
11
13
  argv?: typeof process.argv;
12
14
  chatLoopOptions?: ChatLoopOptions;
13
15
  modelOptions?: ChatModelInputOptions;
@@ -30,13 +30,23 @@ export async function parseAgentInputByCommander(agent, options = {}) {
30
30
  }
31
31
  return input;
32
32
  }
33
- export async function runWithAIGNE(agentCreator, { argv = process.argv, chatLoopOptions, modelOptions, outputKey, } = {}) {
33
+ export async function loadAIGNEWithCmdOptions() {
34
+ const options = await withRunAgentCommonOptions(yargs())
35
+ .strict(false)
36
+ .parseAsync(hideBin(process.argv));
37
+ return await loadAIGNE({
38
+ modelOptions: {
39
+ ...omitBy(pick(options, "model", "temperature", "topP", "presencePenalty", "frequencyPenalty"), (v) => isNil(v)),
40
+ },
41
+ });
42
+ }
43
+ export async function runWithAIGNE(agentCreator, { aigne, argv = process.argv, chatLoopOptions, modelOptions, outputKey, } = {}) {
34
44
  await yargs()
35
45
  .command("$0", "Execute an AI agent using the AIGNE framework with specified configuration", (yargs) => withRunAgentCommonOptions(yargs), async (options) => {
36
46
  if (options.logLevel) {
37
47
  logger.level = options.logLevel;
38
48
  }
39
- const aigne = await loadAIGNE({
49
+ aigne ??= await loadAIGNE({
40
50
  modelOptions: {
41
51
  ...modelOptions,
42
52
  ...omitBy(pick(options, "model", "temperature", "topP", "presencePenalty", "frequencyPenalty"), (v) => isNil(v)),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aigne/cli",
3
- "version": "1.54.1",
3
+ "version": "1.55.0",
4
4
  "description": "Your command center for agent development",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -55,7 +55,7 @@
55
55
  "@inquirer/type": "^3.0.8",
56
56
  "@listr2/prompt-adapter-inquirer": "^3.0.4",
57
57
  "@modelcontextprotocol/sdk": "^1.18.0",
58
- "@ocap/mcrypto": "^1.27.4",
58
+ "@ocap/mcrypto": "^1.27.6",
59
59
  "@smithy/node-http-handler": "^4.2.1",
60
60
  "ansi-escapes": "^7.1.0",
61
61
  "ansi-regex": "^6.2.2",
@@ -89,21 +89,22 @@
89
89
  "yoctocolors-cjs": "^2.1.3",
90
90
  "zod": "^3.25.67",
91
91
  "zod-to-json-schema": "^3.24.6",
92
- "@aigne/afs-system-fs": "^1.0.5",
93
- "@aigne/agentic-memory": "^1.0.52",
94
- "@aigne/aigne-hub": "^0.10.6",
95
- "@aigne/core": "^1.67.0",
96
- "@aigne/agent-library": "^1.21.52",
97
- "@aigne/default-memory": "^1.2.15",
92
+ "@aigne/afs": "^1.2.0",
93
+ "@aigne/afs-history": "^1.0.1",
94
+ "@aigne/agent-library": "^1.21.53",
95
+ "@aigne/afs-local-fs": "^1.1.0",
96
+ "@aigne/agentic-memory": "^1.0.53",
97
+ "@aigne/aigne-hub": "^0.10.7",
98
+ "@aigne/core": "^1.68.0",
99
+ "@aigne/default-memory": "^1.2.16",
98
100
  "@aigne/observability-api": "^0.11.6",
99
- "@aigne/openai": "^0.16.6"
101
+ "@aigne/openai": "^0.16.7"
100
102
  },
101
103
  "devDependencies": {
102
104
  "@inquirer/testing": "^2.1.50",
103
105
  "@types/archiver": "^6.0.3",
104
106
  "@types/bun": "^1.2.22",
105
107
  "@types/express": "^5.0.3",
106
- "@types/glob": "^9.0.0",
107
108
  "@types/gradient-string": "^1.1.6",
108
109
  "@types/node": "^24.5.1",
109
110
  "@types/yargs": "^17.0.33",
@@ -114,7 +115,7 @@
114
115
  "rimraf": "^6.0.1",
115
116
  "typescript": "^5.9.2",
116
117
  "ufo": "^1.6.1",
117
- "@aigne/test-utils": "^0.5.59"
118
+ "@aigne/test-utils": "^0.5.60"
118
119
  },
119
120
  "scripts": {
120
121
  "lint": "tsc --noEmit",