minovative-mind-cli 1.1.1 → 1.1.3
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 +5 -4
- package/dist/services/agent.js +23 -2
- package/oclif.manifest.json +1 -1
- package/package.json +9 -4
package/README.md
CHANGED
|
@@ -15,8 +15,9 @@ Latest Updates: [https://www.minovativemind.dev/updates](https://www.minovativem
|
|
|
15
15
|
|
|
16
16
|
The CLI supports the following advanced reasoning and coding models via Vertex AI Model Garden. You can hot-swap between these models at any time during a chat session by typing `/models` in the CLI:
|
|
17
17
|
|
|
18
|
-
- **Gemini
|
|
19
|
-
- **Gemini
|
|
18
|
+
- **Gemini 3.5 Flash** (Default): Lightning fast, top-tier performance for everyday coding tasks.
|
|
19
|
+
- **Gemini 3.1 Pro**: Best for highly complex architectural reasoning and large context windows.
|
|
20
|
+
- **Gemini 2.5 Pro / Flash**: Legacy high-performance models still fully supported.
|
|
20
21
|
|
|
21
22
|
## TOC
|
|
22
23
|
|
|
@@ -52,10 +53,10 @@ Getting started with Minovative Mind CLI is easy!
|
|
|
52
53
|
```
|
|
53
54
|
|
|
54
55
|
4. **Change Models (Optional):**
|
|
55
|
-
Once in a chat, type `/models` to switch between advanced reasoning models like Gemini
|
|
56
|
+
Once in a chat, type `/models` to switch between advanced reasoning models like Gemini 3.5 Flash and Gemini 3.1 Pro!
|
|
56
57
|
|
|
57
58
|
5. **Update the CLI:**
|
|
58
|
-
To ensure you have the latest features and bug fixes, you can update the CLI at any time by running
|
|
59
|
+
To ensure you have the latest features and bug fixes, you can update the CLI at any time by running the following command. (The CLI will automatically notify you when a new version is available!)
|
|
59
60
|
|
|
60
61
|
```bash
|
|
61
62
|
npm update -g minovative-mind-cli
|
package/dist/services/agent.js
CHANGED
|
@@ -382,7 +382,7 @@ async function processResponse(chat, result, workspaceRoot, inputHandler, agentS
|
|
|
382
382
|
let response = result.response;
|
|
383
383
|
// Upper limit on autonomous sequential tool executions to prevent out-of-control loops
|
|
384
384
|
let turnCount = 0;
|
|
385
|
-
const MAX_TURNS =
|
|
385
|
+
const MAX_TURNS = 50;
|
|
386
386
|
// Recovery thresholds for handling unexpected empty API payloads
|
|
387
387
|
let emptyRetryCount = 0;
|
|
388
388
|
const MAX_EMPTY_RETRIES = 3;
|
|
@@ -391,7 +391,28 @@ async function processResponse(chat, result, workspaceRoot, inputHandler, agentS
|
|
|
391
391
|
turnCount++;
|
|
392
392
|
if (turnCount > MAX_TURNS) {
|
|
393
393
|
p.log.error(`${pc.red('System Error:')} Agent exceeded maximum autonomous turns (${MAX_TURNS}). Force stopping to prevent infinite loop.`);
|
|
394
|
-
|
|
394
|
+
try {
|
|
395
|
+
p.log.info(pc.cyan(`Requesting final summary from AI based on gathered information...`));
|
|
396
|
+
const originalTools = chat.tools || [];
|
|
397
|
+
const originalInstruction = chat.systemInstruction || '';
|
|
398
|
+
// Temporarily clear tools to force a pure text response
|
|
399
|
+
chat.setAgentConfig(originalInstruction, []);
|
|
400
|
+
const finalFollowUp = await chat.sendMessage(`[SYSTEM INTERRUPTION] You have exceeded the maximum number of allowed tool operations (${MAX_TURNS} turns). You must now provide a final answer to the user based ONLY on the information you have gathered so far. Do NOT attempt to call any more tools, just answer the user directly.`, undefined, abortSignal);
|
|
401
|
+
// Restore tools
|
|
402
|
+
chat.setAgentConfig(originalInstruction, originalTools);
|
|
403
|
+
const finalOutput = finalFollowUp.response.text();
|
|
404
|
+
if (finalOutput && finalOutput.trim()) {
|
|
405
|
+
return finalOutput;
|
|
406
|
+
}
|
|
407
|
+
return '';
|
|
408
|
+
}
|
|
409
|
+
catch (e) {
|
|
410
|
+
if (e.name === 'AbortError' || e.message?.includes('abort')) {
|
|
411
|
+
p.log.warn(pc.yellow('Generation stopped by user.'));
|
|
412
|
+
return '[Generation stopped by user]';
|
|
413
|
+
}
|
|
414
|
+
return '';
|
|
415
|
+
}
|
|
395
416
|
}
|
|
396
417
|
const functionCalls = response.functionCalls();
|
|
397
418
|
if (!functionCalls || functionCalls.length === 0) {
|
package/oclif.manifest.json
CHANGED
package/package.json
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "minovative-mind-cli",
|
|
3
3
|
"description": "An automated AI agent powered by Vertex AI that helps you write software",
|
|
4
|
-
"version": "1.1.
|
|
4
|
+
"version": "1.1.3",
|
|
5
5
|
"author": "Daniel Ward",
|
|
6
|
-
"bin":
|
|
6
|
+
"bin": {
|
|
7
|
+
"minovative-mind-cli": "./bin/run.js"
|
|
8
|
+
},
|
|
7
9
|
"bugs": "https://github.com/quarantiine/minovative-mind-cli/issues",
|
|
8
10
|
"dependencies": {
|
|
9
11
|
"@clack/prompts": "^0.11.0",
|
|
@@ -66,14 +68,17 @@
|
|
|
66
68
|
],
|
|
67
69
|
"topicSeparator": " "
|
|
68
70
|
},
|
|
69
|
-
"repository":
|
|
71
|
+
"repository": {
|
|
72
|
+
"type": "git",
|
|
73
|
+
"url": "git+https://github.com/quarantiine/minovative-mind-cli.git"
|
|
74
|
+
},
|
|
70
75
|
"scripts": {
|
|
71
76
|
"build": "shx rm -rf dist && tsc -b",
|
|
72
77
|
"prepare": "npm run build",
|
|
73
78
|
"lint": "eslint",
|
|
74
79
|
"postpack": "shx rm -f oclif.manifest.json",
|
|
75
80
|
"posttest": "npm run lint",
|
|
76
|
-
"prepack": "oclif manifest && oclif readme --no-source-links",
|
|
81
|
+
"prepack": "npm run build && oclif manifest && oclif readme --no-source-links",
|
|
77
82
|
"test": "mocha --forbid-only \"test/**/*.test.ts\"",
|
|
78
83
|
"version": "oclif readme --no-source-links && git add README.md"
|
|
79
84
|
},
|