open-agents-ai 0.185.63 → 0.185.65
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/dist/index.js
CHANGED
|
@@ -43751,10 +43751,24 @@ async function ensureVisionDeps(onInfo, getSudoPassword) {
|
|
|
43751
43751
|
if (missing.length === 0) {
|
|
43752
43752
|
} else if (!pm2) {
|
|
43753
43753
|
for (const d of missing)
|
|
43754
|
-
log(`No supported package manager \u2014 ${d.label} unavailable
|
|
43754
|
+
log(`No supported package manager (choco/winget/apt/brew) \u2014 ${d.label} unavailable. Install manually or install Chocolatey: https://chocolatey.org/install`);
|
|
43755
43755
|
} else {
|
|
43756
43756
|
const labels = missing.map((d) => d.label).join(", ");
|
|
43757
|
-
|
|
43757
|
+
if (process.platform === "win32") {
|
|
43758
|
+
let isAdmin = false;
|
|
43759
|
+
try {
|
|
43760
|
+
execSync29("net session", { stdio: "pipe", timeout: 3e3 });
|
|
43761
|
+
isAdmin = true;
|
|
43762
|
+
} catch {
|
|
43763
|
+
}
|
|
43764
|
+
if (!isAdmin) {
|
|
43765
|
+
log(`Installing ${labels} via ${pm2} (non-admin \u2014 some installs may need "Run as Administrator")...`);
|
|
43766
|
+
} else {
|
|
43767
|
+
log(`Installing ${labels} via ${pm2}...`);
|
|
43768
|
+
}
|
|
43769
|
+
} else {
|
|
43770
|
+
log(`Installing ${labels} via ${pm2}...`);
|
|
43771
|
+
}
|
|
43758
43772
|
const needsSudo = pm2 !== "brew" && pm2 !== "choco" && pm2 !== "winget";
|
|
43759
43773
|
for (const d of missing) {
|
|
43760
43774
|
const pkgName = d.pkgs[pm2];
|
|
@@ -43763,6 +43777,7 @@ async function ensureVisionDeps(onInfo, getSudoPassword) {
|
|
|
43763
43777
|
log(`${d.label} not available for ${pm2}.`);
|
|
43764
43778
|
continue;
|
|
43765
43779
|
}
|
|
43780
|
+
let lastError = "";
|
|
43766
43781
|
if (pkgName) {
|
|
43767
43782
|
let installCmd;
|
|
43768
43783
|
switch (pm2) {
|
|
@@ -43794,20 +43809,33 @@ async function ensureVisionDeps(onInfo, getSudoPassword) {
|
|
|
43794
43809
|
} else {
|
|
43795
43810
|
execSync29(installCmd, { stdio: "pipe", timeout: 18e4 });
|
|
43796
43811
|
}
|
|
43797
|
-
} catch {
|
|
43812
|
+
} catch (e) {
|
|
43813
|
+
const stderr = e.stderr?.toString?.()?.trim?.() ?? "";
|
|
43814
|
+
const stdout = e.stdout?.toString?.()?.trim?.() ?? "";
|
|
43815
|
+
const msg = e.message ?? "";
|
|
43816
|
+
lastError = stderr || stdout || msg;
|
|
43817
|
+
if (lastError.length > 200)
|
|
43818
|
+
lastError = lastError.slice(0, 200) + "...";
|
|
43798
43819
|
}
|
|
43799
43820
|
}
|
|
43800
43821
|
if (!hasCmd(d.binary) && pipPkg) {
|
|
43801
43822
|
try {
|
|
43802
43823
|
const pipCmd = process.platform === "win32" ? `pip install ${pipPkg}` : `pip3 install ${pipPkg}`;
|
|
43803
43824
|
execSync29(pipCmd, { stdio: "pipe", timeout: 12e4 });
|
|
43804
|
-
|
|
43825
|
+
lastError = "";
|
|
43826
|
+
} catch (e) {
|
|
43827
|
+
const stderr = e.stderr?.toString?.()?.trim?.() ?? "";
|
|
43828
|
+
const stdout = e.stdout?.toString?.()?.trim?.() ?? "";
|
|
43829
|
+
const msg = e.message ?? "";
|
|
43830
|
+
const pipError = stderr || stdout || msg;
|
|
43831
|
+
lastError += lastError ? ` | pip: ${pipError.slice(0, 150)}` : pipError.slice(0, 200);
|
|
43805
43832
|
}
|
|
43806
43833
|
}
|
|
43807
43834
|
if (hasCmd(d.binary)) {
|
|
43808
43835
|
log(`${d.label} installed.`);
|
|
43809
43836
|
} else {
|
|
43810
|
-
|
|
43837
|
+
const reason = lastError ? ` Reason: ${lastError}` : " (no error output captured \u2014 may need admin/UAC elevation)";
|
|
43838
|
+
log(`${d.label} could not be installed \u2014 features will be limited.${reason}`);
|
|
43811
43839
|
}
|
|
43812
43840
|
}
|
|
43813
43841
|
}
|
package/package.json
CHANGED
|
@@ -104,6 +104,10 @@ Answer: $119.63
|
|
|
104
104
|
|
|
105
105
|
This applies to: currency conversion, percentages, statistics, financial calculations, unit conversions, date math. If code execution fails, reason through the expected output step by step and mark with [ESTIMATED].
|
|
106
106
|
|
|
107
|
+
## Knowledge Gaps — Search, Don't Hallucinate
|
|
108
|
+
|
|
109
|
+
When a task involves specific regulations (BSA/AML, GDPR, HIPAA), industry standards, legal requirements, or domain facts you're uncertain about — use `web_search` to look them up. A wrong answer is worse than a searched answer. This is especially important for compliance, legal, and regulatory questions where precision matters.
|
|
110
|
+
|
|
107
111
|
## Debugging — Observe Before Reasoning
|
|
108
112
|
|
|
109
113
|
When uncertain about runtime behavior (types, return values, edge cases), run a quick test instead of guessing:
|
|
@@ -32,6 +32,9 @@ Calculations — EXECUTE, never guess:
|
|
|
32
32
|
- For ANY math with 2+ operations: use `repl_exec(code="print(847.50 * 0.15)")` or `shell`. Python is exact. In-head arithmetic is not.
|
|
33
33
|
- Currency, percentages, statistics, dates — ALWAYS execute code. If execution fails, reason step-by-step and mark [ESTIMATED].
|
|
34
34
|
|
|
35
|
+
Knowledge gaps — SEARCH, don't hallucinate:
|
|
36
|
+
- If a question involves specific regulations, standards, laws, or domain facts you're unsure about, use `web_search` to look them up rather than guessing. A wrong answer is worse than a searched answer.
|
|
37
|
+
|
|
35
38
|
Debugging — OBSERVE before reasoning:
|
|
36
39
|
- When unsure how code behaves at runtime, DO NOT guess. Write a short test script and RUN it:
|
|
37
40
|
shell(command="node -e \"console.log(JSON.parse(JSON.stringify({d: new Date()})))\"")
|