ai-agent-test 0.8.4 → 0.8.5

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/README.md CHANGED
@@ -4,6 +4,8 @@
4
4
 
5
5
  A lightweight, extensible agentic workflow system built with TypeScript and the AI SDK. This project serves as a testbed for implementing mini agentic flows with support for small-sized local LLMs (30B-80B parameters) and few tool integrations.
6
6
 
7
+ It works well with highend models like MiniMax (OpenRouter). The agent sends minimum context which means less money spent 💰.
8
+
7
9
  ## 🌟 Features
8
10
 
9
11
  - **Agentic Architecture**: Multi-iteration agent loop with tool calling capabilities
@@ -54,6 +56,12 @@ Create a JSON configuration file at `~/.ai/models.json` with an array of model c
54
56
  "apiBaseUrl": "http://localhost:1234/v1",
55
57
  "apiKey": "dummy"
56
58
  },
59
+ {
60
+ "modelApiType": "openai",
61
+ "modelName": "minimax/minimax-m2.7",
62
+ "apiBaseUrl": "https://openrouter.ai/api/v1",
63
+ "apiKey": "your_openrouter_api_key_here"
64
+ },
57
65
  {
58
66
  "modelApiType": "google",
59
67
  "modelName": "gemini-2.5-flash",
package/bin/ai CHANGED
@@ -1,44 +1,44 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- // Pass command-line arguments to the main module first
4
3
  import { argv } from "process"
4
+ import { execSync } from "child_process"
5
+ import { readFileSync } from "fs"
6
+ import { homedir } from "os"
7
+ import { join } from "path"
8
+
9
+ import { loadConfig } from "../dist/config.js"
10
+ import {
11
+ listSessions,
12
+ loadSession,
13
+ getSessionFileByIndex,
14
+ } from "../dist/utils/system.js"
5
15
 
6
16
  // Handle models command
7
17
  if (argv[2] === "models") {
8
18
  const subCommand = argv[3]
9
19
 
10
20
  if (subCommand === "ls") {
11
- // List all models
12
- import("fs").then(({ readFileSync }) => {
13
- import("os").then(({ homedir }) => {
14
- import("path").then(({ join }) => {
15
- try {
16
- const modelsFile = join(homedir(), ".ai", "models.json")
17
- const fileContent = readFileSync(modelsFile, "utf-8")
18
- const models = JSON.parse(fileContent)
19
-
20
- if (!Array.isArray(models) || models.length === 0) {
21
- console.log("No models found in ~/.ai/models.json")
22
- process.exit(1)
23
- }
24
-
25
- const displayPath = modelsFile.replace(homedir(), "~")
26
- console.log(`Available models (${displayPath}):`)
27
- models.forEach((model, index) => {
28
- console.log(
29
- `${index}. ${model.modelName} (${model.modelApiType})`,
30
- )
31
- })
32
- process.exit(0)
33
- } catch (error) {
34
- console.error(`Failed to load models: ${error.message}`)
35
- process.exit(1)
36
- }
37
- })
21
+ try {
22
+ const modelsFile = join(homedir(), ".ai", "models.json")
23
+ const fileContent = readFileSync(modelsFile, "utf-8")
24
+ const models = JSON.parse(fileContent)
25
+
26
+ if (!Array.isArray(models) || models.length === 0) {
27
+ console.log("No models found in ~/.ai/models.json")
28
+ process.exit(1)
29
+ }
30
+
31
+ const displayPath = modelsFile.replace(homedir(), "~")
32
+ console.log(`Available models (${displayPath}):`)
33
+ models.forEach((model, index) => {
34
+ console.log(`${index}. ${model.modelName} (${model.modelApiType})`)
38
35
  })
39
- })
36
+ process.exit(0)
37
+ } catch (error) {
38
+ console.error(`Failed to load models: ${error.message}`)
39
+ process.exit(1)
40
+ }
40
41
  } else if (subCommand) {
41
- // Set AI_MODEL_INDEX environment variable
42
42
  process.env.AI_MODEL_INDEX = subCommand
43
43
  } else {
44
44
  console.log("Usage: ai models <index> or ai models ls")
@@ -47,7 +47,6 @@ if (argv[2] === "models") {
47
47
  }
48
48
 
49
49
  // Load config after setting model index
50
- import { loadConfig } from "../dist/config.js"
51
50
  const config = loadConfig()
52
51
  process.env.AI_MODEL_APITYPE = config.modelApiType
53
52
  process.env.AI_MODEL_NAME = config.modelName
@@ -56,22 +55,19 @@ process.env.AI_API_KEY = config.apiKey
56
55
 
57
56
  // Handle --version command
58
57
  if (argv[2] === "--version") {
59
- import("fs").then(({ readFileSync }) => {
60
- const packageJson = JSON.parse(
61
- readFileSync(new URL("../package.json", import.meta.url), "utf-8"),
62
- )
63
- console.log(packageJson.version)
64
- process.exit(0)
65
- })
58
+ const packageJson = JSON.parse(
59
+ readFileSync(new URL("../package.json", import.meta.url), "utf-8"),
60
+ )
61
+ console.log(packageJson.version)
62
+ process.exit(0)
66
63
  }
67
64
 
68
65
  // Handle --help command
69
66
  if (argv[2] === "--help") {
70
- import("fs").then(({ readFileSync }) => {
71
- const packageJson = JSON.parse(
72
- readFileSync(new URL("../package.json", import.meta.url), "utf-8"),
73
- )
74
- console.log(`ai-agent-test v${packageJson.version}
67
+ const packageJson = JSON.parse(
68
+ readFileSync(new URL("../package.json", import.meta.url), "utf-8"),
69
+ )
70
+ console.log(`ai-agent-test v${packageJson.version}
75
71
 
76
72
  Usage: ai [options] [model-index]
77
73
 
@@ -97,69 +93,58 @@ Examples:
97
93
  ai --version # Show version
98
94
  ai --help # Show help
99
95
  `)
100
- process.exit(0)
101
- })
96
+ process.exit(0)
102
97
  }
103
98
 
104
99
  // Handle update command
105
100
  if (argv[2] === "update") {
106
- import("child_process").then(({ execSync }) => {
107
- execSync("npm install -g ai-agent-test", { stdio: "inherit" })
108
- process.exit(0)
109
- })
101
+ execSync("npm install -g ai-agent-test", { stdio: "inherit" })
102
+ process.exit(0)
110
103
  }
111
104
 
112
105
  // Handle sessions command
113
106
  if (argv[2] === "sessions") {
114
107
  const subCommand = argv[3]
115
108
 
116
- import("../dist/utils/system.js").then(
117
- ({ listSessions, loadSession, getSessionFileByIndex }) => {
118
- if (subCommand === "ls") {
119
- // List sessions
120
- const sessions = listSessions(20)
121
- if (sessions.length === 0) {
122
- console.log("No sessions found.")
123
- } else {
124
- console.log(`Last ${sessions.length} sessions:`)
125
- sessions.forEach((session, index) => {
126
- let line = `${index}. ${session.timestamp}`
127
- if (session.summary) {
128
- line += ` - ${session.summary}`
129
- }
130
- console.log(line)
131
- })
132
- }
133
- process.exit(0)
134
- } else {
135
- // Load a specific session by index
136
- const sessionIndex = subCommand ? parseInt(subCommand, 10) : undefined
137
- if (sessionIndex !== undefined && !isNaN(sessionIndex)) {
138
- const sessionFile = getSessionFileByIndex(sessionIndex)
139
- if (!sessionFile) {
140
- console.log(`Session ${sessionIndex} not found.`)
141
- process.exit(1)
142
- }
143
-
144
- const messages = loadSession(sessionFile)
145
- if (!messages) {
146
- console.log(`Could not load session ${sessionIndex}.`)
147
- process.exit(1)
148
- }
149
-
150
- // Set env var to tell index.ts to load this session
151
- process.env.AI_SESSION_INDEX = sessionIndex.toString()
152
- process.env.AI_SESSION_FILE = sessionFile
153
-
154
- console.log(`Loaded session ${sessionIndex} from ${sessionFile}`)
155
- // Don't exit here - let the app continue to index.js
156
- } else {
157
- console.log("Usage: ai sessions <index> or ai sessions ls")
158
- process.exit(1)
109
+ if (subCommand === "ls") {
110
+ const sessions = listSessions(20)
111
+ if (sessions.length === 0) {
112
+ console.log("No sessions found.")
113
+ } else {
114
+ console.log(`Last ${sessions.length} sessions:`)
115
+ sessions.forEach((session, index) => {
116
+ let line = `${index}. ${session.timestamp}`
117
+ if (session.summary) {
118
+ line += ` - ${session.summary}`
159
119
  }
120
+ console.log(line)
121
+ })
122
+ }
123
+ process.exit(0)
124
+ } else {
125
+ const sessionIndex = subCommand ? parseInt(subCommand, 10) : undefined
126
+ if (sessionIndex !== undefined && !isNaN(sessionIndex)) {
127
+ const sessionFile = getSessionFileByIndex(sessionIndex)
128
+ if (!sessionFile) {
129
+ console.log(`Session ${sessionIndex} not found.`)
130
+ process.exit(1)
160
131
  }
161
- },
162
- )
132
+
133
+ const messages = loadSession(sessionFile)
134
+ if (!messages) {
135
+ console.log(`Could not load session ${sessionIndex}.`)
136
+ process.exit(1)
137
+ }
138
+
139
+ process.env.AI_SESSION_INDEX = sessionIndex.toString()
140
+ process.env.AI_SESSION_FILE = sessionFile
141
+
142
+ console.log(`Loaded session ${sessionIndex} from ${sessionFile}`)
143
+ } else {
144
+ console.log("Usage: ai sessions <index> or ai sessions ls")
145
+ process.exit(1)
146
+ }
147
+ }
163
148
  }
164
149
 
165
150
  import("../dist/index.js")
@@ -202,8 +202,8 @@ export async function checkNpmUpdate() {
202
202
  }
203
203
  return needsUpdate ? { show: true, currentVersion, latestVersion } : null;
204
204
  }
205
- catch (error) {
206
- console.log(`Error checking for npm updates: ${error.message}`);
205
+ catch (_error) {
206
+ // Silently ignore update check failures
207
207
  return null;
208
208
  }
209
209
  }
@@ -1 +1 @@
1
- {"version":3,"file":"system.js","sourceRoot":"","sources":["../../src/utils/system.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AACxB,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAA;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAExD,kEAAkE;AAClE,MAAM,UAAU,UAAU,CAAC,CAAS;IAClC,MAAM,WAAW,GAAG,OAAO,EAAE,CAAA;IAC7B,IAAI,CAAC,KAAK,WAAW,EAAE,CAAC;QACtB,OAAO,GAAG,CAAA;IACZ,CAAC;IACD,IAAI,CAAC,CAAC,UAAU,CAAC,WAAW,GAAG,GAAG,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAA;IACpC,CAAC;IACD,OAAO,CAAC,CAAA;AACV,CAAC;AAED,qBAAqB;AACrB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,CAAA;AAC1D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;IAC/B,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;AAC/C,CAAC;AAED,iFAAiF;AACjF,IAAI,kBAAsC,CAAA;AAC1C,MAAM,UAAU,cAAc;IAC5B,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;IAC3D,CAAC;IACD,wEAAwE;IACxE,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAA;QACvB,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QACpC,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAC3C,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;QAC9D,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,QAAQ,IAAI,QAAQ,OAAO,CAAC,CAAA;IAC5E,CAAC;IACD,OAAO,kBAAkB,CAAA;AAC3B,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAqB;IACtD,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;SACtD,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;SAC1B,IAAI,CAAC,IAAI,CAAC,CAAA;IAEb,IAAI,EAAsB,CAAA;IAC1B,IAAI,CAAC;QACH,8EAA8E;QAC9E,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,cAAc,EAAE,EAAE,IAAI,CAAC,CAAA;QACxC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAEjC,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;YACf,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,gBAAgB,OAAO,CAAC,CAAA;YAC/C,OAAM;QACR,CAAC;QAED,mDAAmD;QACnD,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;YACd,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,IAAI,GAAG,CAAC,CAAC,CAAA;YAC9B,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,gBAAgB,OAAO,CAAC,CAAA;YAC/C,OAAM;QACR,CAAC;QAED,gDAAgD;QAChD,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;QACvB,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,gBAAgB,OAAO,CAAC,CAAA;IACjD,CAAC;IAAC,MAAM,CAAC;QACP,iDAAiD;QACjD,EAAE,CAAC,aAAa,CAAC,cAAc,EAAE,EAAE,MAAM,gBAAgB,OAAO,CAAC,CAAA;IACnE,CAAC;YAAS,CAAC;QACT,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACrB,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAClB,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,QAAgB,EAAE;IAElB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAE,CAAA;IACX,CAAC;IAED,MAAM,KAAK,GAAG,EAAE;SACb,WAAW,CAAC,UAAU,CAAC;SACvB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;SACxC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACb,iFAAiF;QACjF,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;IAC3B,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IAElB,MAAM,MAAM,GACV,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACjB,wHAAwH;QACxH,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;QAC5C,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAA;QACpD,MAAM,SAAS,GAAG,WAAW,CAAA;QAE7B,uDAAuD;QACvD,IAAI,OAAO,GAAuB,SAAS,CAAA;QAC3C,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAA;YACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAEpC,0CAA0C;YAC1C,MAAM,YAAY,GAAa,EAAE,CAAA;YACjC,QAAQ,CAAC,OAAO,CAAC,CAAC,GAAiB,EAAE,EAAE;gBACrC,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;oBAC3D,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;gBAChC,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,qCAAqC;gBACrC,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gBACvC,gDAAgD;gBAChD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;gBAC/C,sCAAsC;gBACtC,OAAO;oBACL,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAA;YACpE,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,iDAAiD;YACjD,OAAO,CAAC,GAAG,CACT,8BAA8B,IAAI,iBAAkB,KAAe,CAAC,OAAO,EAAE,CAC9E,CAAA;QACH,CAAC;QAED,MAAM,OAAO,GAA0D;YACrE,IAAI;YACJ,SAAS;SACV,CAAA;QAED,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO,CAAC,OAAO,GAAG,OAAO,CAAA;QAC3B,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC,CAAC,CAAA;IAEJ,OAAO,MAAM,CAAA;AACf,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;QAC5C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAA;QACb,CAAC;QACD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAClD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC5B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,yBAAyB,IAAI,KAAM,KAAe,CAAC,OAAO,EAAE,CAAC,CAAA;QAC3E,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAa;IACjD,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAA;IAC/B,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC/B,OAAO,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;AACtC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAc;IAC9C,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,aAAa,CAAC,EAAE,EAAE;QAC7C,MAAM,EAAE;YACN,OAAO,EAAE,EAAE,EAAE,gBAAgB;YAC7B,SAAS,EAAE,IAAI,EAAE,mBAAmB;YACpC,SAAS,EAAE,IAAI,EAAE,+CAA+C;YAChE,KAAK,EAAE,IAAI;SACZ;QACD,UAAU,EAAE,EAAE;QACd,YAAY,EAAE,MAAM;QACpB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CACd,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,SAAS;QACvE,UAAU,EAAE,KAAK;QACjB,KAAK,EAAE;YACL,YAAY,EAAE,UAAU;YACxB,MAAM,EAAE;gBACN,OAAO,EAAE,MAAM;gBACf,SAAS,EAAE,OAAO;gBAClB,SAAS,EAAE,KAAK;gBAChB,KAAK,EAAE,KAAK;aACb;SACF;KACF,CAAC,CAAA;IACF,IAAI,KAAK,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO,MAAM,CAAA;IACf,CAAC;IACD,OAAO,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;AAC1E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc;IAKlC,IAAI,CAAC;QACH,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAA;QAElD,MAAM,MAAM,GAAG,QAAQ,CAAC,8BAA8B,EAAE;YACtD,QAAQ,EAAE,OAAO;SAClB,CAAC,CAAA;QACF,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAE/B,MAAM,WAAW,GAAG,IAAI,EAAE,YAAY,EAAE,CAAC,eAAe,CAAC,CAAA;QACzD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,IAAI,CAAA;QACb,CAAC;QAED,MAAM,cAAc,GAAG,WAAW,CAAC,OAAO,CAAA;QAE1C,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,iDAAiD,CAClD,CAAA;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,OAAO,IAAI,CAAA;QACb,CAAC;QAED,MAAM,UAAU,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAwB,CAAA;QACjE,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,CAAA;QACxC,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAC1D,MAAM,WAAW,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAExD,IAAI,WAAW,GAAG,KAAK,CAAA;QACvB,KACE,IAAI,CAAC,GAAG,CAAC,EACT,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,EACrD,CAAC,EAAE,EACH,CAAC;YACD,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YACpC,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YAClC,IAAI,MAAM,GAAG,OAAO,EAAE,CAAC;gBACrB,WAAW,GAAG,IAAI,CAAA;gBAClB,MAAK;YACP,CAAC;QACH,CAAC;QAED,OAAO,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;IAC3E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,mCAAoC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAA;QAC1E,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"system.js","sourceRoot":"","sources":["../../src/utils/system.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ai-agent-test",
3
- "version": "0.8.4",
3
+ "version": "0.8.5",
4
4
  "main": "dist/index.js",
5
5
  "bin": {
6
6
  "ai": "./bin/ai"
@@ -18,7 +18,7 @@
18
18
  "build": "tsc",
19
19
  "test": "echo \"Error: no test specified\" && exit 1",
20
20
  "prepare": "husky",
21
- "lint": "oxlint . --ignore-pattern dist/",
21
+ "lint": "oxlint . -c .oxlintrc.json --ignore-pattern dist/",
22
22
  "prepack": "rm -rf dist && npm run build"
23
23
  },
24
24
  "author": "Bright Lee <benevbright@gmail.com>",