fluxflow-cli 3.9.0 → 3.9.1

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.
Files changed (2) hide show
  1. package/dist/fluxflow.js +26 -6
  2. package/package.json +1 -1
package/dist/fluxflow.js CHANGED
@@ -11989,7 +11989,7 @@ var init_ai = __esm({
11989
11989
  const AGENT_CONTEXT_LENGTH = 4 * (1024 * 8);
11990
11990
  const { onStatus, onMemoryUpdated, onBackgroundIncrement } = callbacks;
11991
11991
  const { profile, thinkingLevel, mode, janitorModel, chatId, systemSettings, sessionStats, aiProvider = "Google", apiKey } = settings;
11992
- const isMemoryEnabled = systemSettings?.memory !== false;
11992
+ const isMemoryEnabled = process.env.NVIDIA_BASE_URL ? false : systemSettings?.memory !== false;
11993
11993
  const persistentStorage = readEncryptedJson(MEMORIES_FILE, []);
11994
11994
  const janitorUserMemories = persistentStorage.map((m) => `- [${m.id}]: ${m.memory}`).join("\n");
11995
11995
  const janitorContents = history.slice(0, -1).filter((msg) => msg.text && !msg.text.includes("[TOOL RESULT]") && !msg.text.includes("OBSERVATION:") && !msg.text.startsWith("[TERMINAL_RECORD]") && !msg.isTerminalRecord && !msg.isMeta && !msg.isLogo && !String(msg.id).startsWith("welcome") && !String(msg.id).startsWith("logo")).slice(-14).map((msg) => {
@@ -15579,7 +15579,7 @@ Error Log can be found in ${path24.join(LOGS_DIR, "agent", "error.log")}`);
15579
15579
  "patchfile": '- [tool:functions.PatchFile(path="...", replaceContent1="...", newContent1="...")]. Surgical block replacement for editing files',
15580
15580
  "writefile": '- [tool:functions.WriteFile(path="...", content="...")]. Creates or overwrites a file',
15581
15581
  "searchkeyword": `- [tool:functions.SearchKeyword(keyword="...", file="optional", subString="true/false optional", regex="optional, false for keyword")]. Global project search. If 'file' is provided, searches only that file. Finds definitions/logic without reading every file. Usage: Can search for relevent lines/logic area to read specifically for edit. defaults subString: false, regex: auto-detect`,
15582
- "websearch": '- [tool:functions.WebSearch(query="...", limit=number)]. Web Search',
15582
+ "websearch": `- [tool:functions.WebSearch(query="...", aiMode="true optional", limit=number)]. Limit 3-10 (not needed with aiMode). Proactive use for unknown info/docs. DON'T hallucinate. aiMode for LLM based search results and richer data, default: false`,
15583
15583
  "webscrape": '- [tool:functions.WebScrape(url="...")]. Web Scrape',
15584
15584
  "ask": `- [tool:functions.Ask(question="...", optionA="option::description", ...MAX 4)]. Ambiguity Resolution. Mandatory Triggers: Path Divergence, Security, Risk Mitigation. ask >> finish/guess. Suggest best options; don't ask for preferences. 'option' SHOULD be short`
15585
15585
  };
@@ -17812,6 +17812,17 @@ function App({ args = [] }) {
17812
17812
  } else if (parsedArgs.memory === "off") {
17813
17813
  freshSettings.memory = false;
17814
17814
  }
17815
+ if (startupProvider === "NVIDIA" && process.env.NVIDIA_BASE_URL) {
17816
+ freshSettings.memory = false;
17817
+ setMessages((prev) => [
17818
+ ...prev,
17819
+ {
17820
+ role: "system",
17821
+ text: "[SYSTEM] Memory is not available with Custom Endpoints",
17822
+ isMeta: true
17823
+ }
17824
+ ]);
17825
+ }
17815
17826
  if (parsedArgs.package) {
17816
17827
  freshSettings.updateManager = parsedArgs.package;
17817
17828
  }
@@ -18559,7 +18570,7 @@ ${cleanText}`, color: "magenta" }];
18559
18570
  if (val === "xhigh") {
18560
18571
  formattedLevel = "xHigh";
18561
18572
  }
18562
- if (!isBypass && mode === "Flow" && (formattedLevel === "High" || formattedLevel === "xHigh")) {
18573
+ if (!isBypass && mode === "Flow" && formattedLevel === "xHigh") {
18563
18574
  setMessages((prev) => {
18564
18575
  setCompletedIndex(prev.length + 1);
18565
18576
  return [...prev, { id: Date.now(), role: "system", text: `[RESTRICTED] "${formattedLevel}" is restricted in Flow mode. Switch to Flux to enable Higher Thinking Levels.`, isMeta: true }];
@@ -19952,12 +19963,17 @@ Selection: ${val}`,
19952
19963
  const defaultModel = getDefaultModel(selectedProvider, targetTier);
19953
19964
  setActiveModel(defaultModel);
19954
19965
  setApiTier(targetTier);
19955
- saveSettings({ aiProvider: selectedProvider, activeModel: defaultModel, apiTier: targetTier, quotas });
19966
+ if (selectedProvider === "NVIDIA" && process.env.NVIDIA_BASE_URL) {
19967
+ setSystemSettings((s) => ({ ...s, memory: false }));
19968
+ saveSettings({ aiProvider: selectedProvider, activeModel: defaultModel, apiTier: targetTier, quotas, systemSettings: { ...systemSettings, memory: false } });
19969
+ } else {
19970
+ saveSettings({ aiProvider: selectedProvider, activeModel: defaultModel, apiTier: targetTier, quotas });
19971
+ }
19956
19972
  setMessages((prev) => [
19957
19973
  ...prev,
19958
19974
  {
19959
19975
  role: "system",
19960
- text: `[SYSTEM] Switched to ${selectedProvider}! Key loaded from Cache. Model set to ${defaultModel}.`,
19976
+ text: `[SYSTEM] Switched to ${selectedProvider}! Key loaded from Cache. Model set to ${defaultModel}.${selectedProvider === "NVIDIA" && process.env.NVIDIA_BASE_URL ? "\n[SYSTEM] Memory is not available with Custom Endpoints" : ""}`,
19961
19977
  isMeta: true
19962
19978
  }
19963
19979
  ]);
@@ -20276,9 +20292,13 @@ Selection: ${val}`,
20276
20292
  newSettings.aiProvider = prov;
20277
20293
  newSettings.activeModel = defaultModel;
20278
20294
  newSettings.apiTier = targetTier;
20295
+ if (prov === "NVIDIA" && process.env.NVIDIA_BASE_URL) {
20296
+ setSystemSettings((s) => ({ ...s, memory: false }));
20297
+ newSettings.systemSettings = { ...systemSettings, memory: false };
20298
+ }
20279
20299
  setMessages((prev) => {
20280
20300
  setCompletedIndex(prev.length + 1);
20281
- return [...prev, { id: Date.now(), role: "system", text: `\u2705 ${prov} API Key saved successfully! Model set to ${defaultModel}.`, isMeta: true }];
20301
+ return [...prev, { id: Date.now(), role: "system", text: `\u2705 ${prov} API Key saved successfully! Model set to ${defaultModel}.${prov === "NVIDIA" && process.env.NVIDIA_BASE_URL ? "\n[SYSTEM] Memory is not available with Custom Endpoints" : ""}`, isMeta: true }];
20282
20302
  });
20283
20303
  }
20284
20304
  if (next) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fluxflow-cli",
3
- "version": "3.9.0",
3
+ "version": "3.9.1",
4
4
  "date": "2026-07-23",
5
5
  "description": "A High-Fidelity Agentic CLI with Sub-Agents for the Flux Era.",
6
6
  "keywords": [