u-foo 2.3.28 → 2.3.30

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "u-foo",
3
- "version": "2.3.28",
3
+ "version": "2.3.30",
4
4
  "description": "Multi-Agent Workspace Protocol. Just add u. claude → uclaude, codex → ucodex.",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "homepage": "https://ufoo.dev",
package/src/code/agent.js CHANGED
@@ -435,7 +435,7 @@ async function runNaturalLanguageTask(task = "", state = {}, options = {}) {
435
435
  state.provider || process.env.UFOO_UCODE_PROVIDER || ""
436
436
  );
437
437
  const model = String(state.model || process.env.UFOO_UCODE_MODEL || "").trim();
438
- const timeoutMs = Number.isFinite(state.timeoutMs) ? state.timeoutMs : 300000;
438
+ const timeoutMs = Number.isFinite(state.timeoutMs) ? state.timeoutMs : 600000;
439
439
  let streamed = false;
440
440
  let streamLastChar = "";
441
441
  const onDelta = typeof options.onDelta === "function"
@@ -1443,7 +1443,7 @@ async function runUcodeCoreAgent({
1443
1443
  appendSystemPrompt = "",
1444
1444
  systemPrompt = "",
1445
1445
  sessionId = "",
1446
- timeoutMs = 300000,
1446
+ timeoutMs = 600000,
1447
1447
  jsonOutput = false,
1448
1448
  forceTui = false,
1449
1449
  disableTui = false,
@@ -1747,7 +1747,7 @@ function parseAgentArgs(argv = []) {
1747
1747
  appendSystemPrompt: "",
1748
1748
  systemPrompt: "",
1749
1749
  sessionId: "",
1750
- timeoutMs: 300000,
1750
+ timeoutMs: 600000,
1751
1751
  jsonOutput: false,
1752
1752
  forceTui: false,
1753
1753
  disableTui: false,
@@ -9,8 +9,11 @@ const { getBashToolDescription } = require("./prompts/toolDescriptions/bash");
9
9
  const CORE_TOOL_NAMES = new Set(["read", "write", "edit", "bash"]);
10
10
  const DEFAULT_OPENAI_BASE_URL = "https://api.openai.com/v1";
11
11
  const DEFAULT_ANTHROPIC_BASE_URL = "https://api.anthropic.com/v1";
12
- const DEFAULT_MAX_NATIVE_TOOL_CALLS = 12;
13
- const DEFAULT_MAX_NATIVE_TOOL_ERRORS = 1;
12
+ // Claude Code SDK defaults to no turn limit; built-in agents cap at 30 (DreamTask)
13
+ // to 200 (fork). We count individual tool calls (not turns), so 100 leaves headroom
14
+ // for non-trivial tasks while still catching runaway loops. Override via env.
15
+ const DEFAULT_MAX_NATIVE_TOOL_CALLS = 100;
16
+ const DEFAULT_MAX_NATIVE_TOOL_ERRORS = 5;
14
17
 
15
18
  function nowMs() {
16
19
  return Date.now();