@tianshu-ai/tianshu 0.133.0 → 0.134.0

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": "@tianshu-ai/tianshu",
3
- "version": "0.133.0",
3
+ "version": "0.134.0",
4
4
  "description": "An open AI agent platform with a sidecar browser. Built in public.",
5
5
  "license": "Apache-2.0",
6
6
  "homepage": "https://github.com/tianshu-ai/tianshu",
@@ -1 +1 @@
1
- {"version":3,"file":"agent-tool-adapter.d.ts","sourceRoot":"","sources":["../../src/chat/agent-tool-adapter.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EACV,SAAS,IAAI,WAAW,EAEzB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAKjD,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb;;;gEAG4D;IAC5D,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACvD;AAsBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,aAAa,CA+B/D;AAED,MAAM,WAAW,cAAc;IAC7B,kEAAkE;IAClE,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB;mEAC+D;IAC/D,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;CACjC;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,cAAc,CA6J7D;AAED;;qEAEqE;AACrE,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAIvD"}
1
+ {"version":3,"file":"agent-tool-adapter.d.ts","sourceRoot":"","sources":["../../src/chat/agent-tool-adapter.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EACV,SAAS,IAAI,WAAW,EAEzB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAKjD,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb;;;gEAG4D;IAC5D,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACvD;AAsBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,aAAa,CA+B/D;AAED,MAAM,WAAW,cAAc;IAC7B,kEAAkE;IAClE,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB;mEAC+D;IAC/D,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;CACjC;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,cAAc,CAiI7D;AAED;;qEAEqE;AACrE,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAIvD"}
@@ -100,35 +100,6 @@ export function adaptToolset(toolset) {
100
100
  // permissive message, repeat. Persisting across turns lets us
101
101
  // catch "second time the same tool ate truncation" reliably.
102
102
  const truncationCount = new Map();
103
- // ── Repetitive tool call detection ────────────────────────────
104
- // Track recent tool calls by fingerprint (name + JSON-stable args).
105
- // If the exact same call appears MAX_REPEAT times consecutively,
106
- // return an error instead of executing — breaks infinite loops
107
- // (e.g. ds_query calling the same SQL over and over).
108
- const MAX_REPEAT = 3;
109
- const recentFingerprints = [];
110
- function checkRepetition(name, args) {
111
- let argsStr;
112
- try {
113
- argsStr = JSON.stringify(args, Object.keys(args ?? {}).sort());
114
- }
115
- catch {
116
- argsStr = String(args);
117
- }
118
- const fp = `${name}::${argsStr}`;
119
- recentFingerprints.push(fp);
120
- // Only keep the last MAX_REPEAT entries
121
- if (recentFingerprints.length > MAX_REPEAT * 2)
122
- recentFingerprints.splice(0, recentFingerprints.length - MAX_REPEAT * 2);
123
- // Check if the last MAX_REPEAT calls are identical
124
- if (recentFingerprints.length >= MAX_REPEAT) {
125
- const tail = recentFingerprints.slice(-MAX_REPEAT);
126
- if (tail.every(f => f === fp)) {
127
- return `Note: You have called ${name} with the same arguments ${MAX_REPEAT} times in a row and got the same result each time. Consider whether you need to continue, or try a different approach.`;
128
- }
129
- }
130
- return null;
131
- }
132
103
  const tools = toolset.schemas.map((schema) => {
133
104
  const exec = toolset.executors[schema.name];
134
105
  const piTool = {
@@ -180,13 +151,6 @@ export function adaptToolset(toolset) {
180
151
  ? params
181
152
  : {};
182
153
  // ── Repetitive call circuit breaker ──
183
- const loopMsg = checkRepetition(schema.name, args);
184
- if (loopMsg) {
185
- return {
186
- content: [{ type: "text", text: loopMsg }],
187
- details: undefined,
188
- };
189
- }
190
154
  if (!exec) {
191
155
  // Should be unreachable — schema came from the same map.
192
156
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"agent-tool-adapter.js","sourceRoot":"","sources":["../../src/chat/agent-tool-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-tool-adapter.js","sourceRoot":"","sources":["../../src/chat/agent-tool-adapter.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../src/chat/handler.ts"],"names":[],"mappings":"AAwDA,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,qBAAqB,EAGrB,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC9B,MAAM,uBAAuB,CAAC;AAI/B,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,qBAAqB,EACrB,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,GAC9B,CAAC;AAGF,OAAO,EACL,mBAAmB,EACnB,0BAA0B,EAC1B,8BAA8B,EAC9B,wBAAwB,EACxB,2BAA2B,EAC3B,wBAAwB,EACxB,2BAA2B,EAC3B,yBAAyB,EACzB,6BAA6B,EAC7B,2BAA2B,EAC3B,4BAA4B,EAC5B,KAAK,oBAAoB,GAC1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,EAQL,KAAK,aAAa,EACnB,MAAM,kBAAkB,CAAC;AAuC1B,OAAO,EAGL,KAAK,WAAW,EACjB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EAWL,KAAK,WAAW,EAGjB,MAAM,eAAe,CAAC;AAgBvB,OAAO,EAGL,KAAK,SAAS,EAEd,KAAK,cAAc,EAEpB,MAAM,kBAAkB,CAAC;AA8B1B,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,aAAa,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,SAAS,CAAC;IAClB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,OAAO,6BAA6B,EAAE,cAAc,CAAC;IACtE,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAYD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,CAmrB7D;AAED,UAAU,aAAa;IACrB,GAAG,EAAE,aAAa,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,IAAI,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,MAAM,EAAE,WAAW,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,6BAA6B,EAAE,cAAc,CAAC;IACtE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;4BAGwB;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,OAAO,eAAe,EAAE,WAAW,CAAC;IAC9C;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;kCAE8B;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAyoDlE;AAyYD,wBAAgB,uBAAuB,CACrC,oBAAoB,EAAE,WAAW,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EAC3D,2BAA2B,CAAC,EAAE,MAAM,GACnC,MAAM,CAuCR;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,oBAAoB,EAAE,MAAM,GAAG,MAAM,EAAE,CAgB3E;AA0ED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,aAAa,EAClB,SAAS,EAAE,MAAM,GAChB,MAAM,GAAG,IAAI,CA0Ef;AAolBD,wBAAgB,cAAc,IAAI,WAAW,EAAE,CAkC9C;AAGD,YAAY,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../src/chat/handler.ts"],"names":[],"mappings":"AAwDA,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,qBAAqB,EAGrB,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC9B,MAAM,uBAAuB,CAAC;AAI/B,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,qBAAqB,EACrB,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,GAC9B,CAAC;AAGF,OAAO,EACL,mBAAmB,EACnB,0BAA0B,EAC1B,8BAA8B,EAC9B,wBAAwB,EACxB,2BAA2B,EAC3B,wBAAwB,EACxB,2BAA2B,EAC3B,yBAAyB,EACzB,6BAA6B,EAC7B,2BAA2B,EAC3B,4BAA4B,EAC5B,KAAK,oBAAoB,GAC1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,EAQL,KAAK,aAAa,EACnB,MAAM,kBAAkB,CAAC;AAuC1B,OAAO,EAGL,KAAK,WAAW,EACjB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EAWL,KAAK,WAAW,EAGjB,MAAM,eAAe,CAAC;AAgBvB,OAAO,EAGL,KAAK,SAAS,EAEd,KAAK,cAAc,EAEpB,MAAM,kBAAkB,CAAC;AA8B1B,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,aAAa,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,SAAS,CAAC;IAClB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,OAAO,6BAA6B,EAAE,cAAc,CAAC;IACtE,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAYD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,CAmrB7D;AAED,UAAU,aAAa;IACrB,GAAG,EAAE,aAAa,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,IAAI,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,MAAM,EAAE,WAAW,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,6BAA6B,EAAE,cAAc,CAAC;IACtE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;4BAGwB;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,OAAO,eAAe,EAAE,WAAW,CAAC;IAC9C;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;kCAE8B;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA0tDlE;AAyYD,wBAAgB,uBAAuB,CACrC,oBAAoB,EAAE,WAAW,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EAC3D,2BAA2B,CAAC,EAAE,MAAM,GACnC,MAAM,CAuCR;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,oBAAoB,EAAE,MAAM,GAAG,MAAM,EAAE,CAgB3E;AA0ED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,aAAa,EAClB,SAAS,EAAE,MAAM,GAChB,MAAM,GAAG,IAAI,CA0Ef;AAolBD,wBAAgB,cAAc,IAAI,WAAW,EAAE,CAkC9C;AAGD,YAAY,EAAE,WAAW,EAAE,CAAC"}
@@ -1297,6 +1297,65 @@ export async function runPrompt(args) {
1297
1297
  // the next LLM request. When context exceeds the threshold it runs
1298
1298
  // an in-place compact so the agent continues with a smaller window.
1299
1299
  const midTurnCompactRef = {};
1300
+ // ── Repetitive tool call loop detection ──────────────────────
1301
+ // Two detection modes:
1302
+ // A) Exact match — same tool + identical JSON-stable args
1303
+ // B) Name match — same tool name called consecutively (any args)
1304
+ //
1305
+ // Strategy: afterToolCall tracks calls. When threshold is hit,
1306
+ // set a flag → finishTurn returns { action: "end" } to stop the
1307
+ // current run → enqueueInbox sends a system notice so the next
1308
+ // run's LLM sees the warning and changes behavior.
1309
+ //
1310
+ // Thresholds (exact / name-only):
1311
+ // hint: 3 / 5 warn: 5 / 8 stop: 10 / 15
1312
+ const EXACT_HINT = 3, EXACT_WARN = 5, EXACT_STOP = 10;
1313
+ const NAME_HINT = 5, NAME_WARN = 8, NAME_STOP = 15;
1314
+ const loopCalls = [];
1315
+ let loopEndReason = null; // set by afterToolCall, read by finishTurn
1316
+ // Detect if this run was triggered by a loop notice — if so, don't
1317
+ // send another one (prevents meta-loop).
1318
+ const isLoopNoticeRun = args.content.includes('[System] ') && args.content.includes('tool call loop');
1319
+ function checkToolLoop(name, args) {
1320
+ let argsStr;
1321
+ try {
1322
+ argsStr = JSON.stringify(args, Object.keys(args ?? {}).sort());
1323
+ }
1324
+ catch {
1325
+ argsStr = String(args);
1326
+ }
1327
+ const fp = `${name}::${argsStr}`;
1328
+ loopCalls.push({ name, fp });
1329
+ if (loopCalls.length > NAME_STOP + 2)
1330
+ loopCalls.splice(0, loopCalls.length - NAME_STOP - 2);
1331
+ let exactStreak = 0;
1332
+ for (let i = loopCalls.length - 1; i >= 0; i--) {
1333
+ if (loopCalls[i].fp === fp)
1334
+ exactStreak++;
1335
+ else
1336
+ break;
1337
+ }
1338
+ let nameStreak = 0;
1339
+ for (let i = loopCalls.length - 1; i >= 0; i--) {
1340
+ if (loopCalls[i].name === name)
1341
+ nameStreak++;
1342
+ else
1343
+ break;
1344
+ }
1345
+ if (exactStreak >= EXACT_STOP)
1346
+ return { action: "stop", message: `Repetitive tool call loop detected: ${name} was called ${exactStreak} times with identical arguments. The result is the same every time. Do NOT call this tool again. Respond to the user or try a completely different approach.` };
1347
+ if (nameStreak >= NAME_STOP)
1348
+ return { action: "stop", message: `Repetitive tool call loop detected: ${name} was called ${nameStreak} times consecutively. You are stuck in a loop. Do NOT call ${name} again. Respond to the user or try a completely different approach.` };
1349
+ if (exactStreak >= EXACT_WARN)
1350
+ return { action: "warn", message: `Warning: ${name} was called ${exactStreak} times with identical arguments. The result is the same every time. Stop repeating this call and try a different approach.` };
1351
+ if (nameStreak >= NAME_WARN)
1352
+ return { action: "warn", message: `Warning: ${name} was called ${nameStreak} times consecutively. You appear to be in a loop. Stop and work with the data you already have.` };
1353
+ if (exactStreak >= EXACT_HINT)
1354
+ return { action: "hint", message: `Note: ${name} was called ${exactStreak} times with identical arguments. Consider whether continuing is productive, or try a different approach.` };
1355
+ if (nameStreak >= NAME_HINT)
1356
+ return { action: "hint", message: `Note: ${name} was called ${nameStreak} times consecutively. Make sure you are making progress and not stuck in a loop.` };
1357
+ return { action: "ok" };
1358
+ }
1300
1359
  turnLog.info(`AgentHarness.create starting session=${session.id}`);
1301
1360
  const { harness } = await AgentHarness.create({
1302
1361
  session: piSession,
@@ -1317,9 +1376,11 @@ export async function runPrompt(args) {
1317
1376
  model: piModel,
1318
1377
  toProviderMessages,
1319
1378
  prepareRequest: async (_request, signal) => {
1320
- console.log('[DEBUG] prepareRequest fired, hasFn:', !!midTurnCompactRef.fn);
1321
- if (midTurnCompactRef.fn)
1322
- await midTurnCompactRef.fn(signal);
1379
+ // Mid-turn compaction DISABLED (2026-11-04) — suspected cause
1380
+ // of LLM repeat loops. Compaction between tool calls may erase
1381
+ // recent tool results, making the LLM "forget" what it just did
1382
+ // and repeat the same action. Re-enable after confirming.
1383
+ // if (midTurnCompactRef.fn) await midTurnCompactRef.fn(signal);
1323
1384
  return undefined;
1324
1385
  },
1325
1386
  models: buildModels(piModel, apiKey, {
@@ -1351,6 +1412,38 @@ export async function runPrompt(args) {
1351
1412
  });
1352
1413
  },
1353
1414
  }),
1415
+ // ── Loop detection: afterToolCall tracks, finishTurn ends ──
1416
+ afterToolCall: async (ctx) => {
1417
+ const check = checkToolLoop(ctx.toolCall.name, ctx.args);
1418
+ if (check.action === "ok")
1419
+ return undefined;
1420
+ turnLog.warn(`[loop_detect] action=${check.action} tool=${ctx.toolCall.name} streak=${loopCalls.length} msg=${check.message}`);
1421
+ // Set flag for finishTurn to end the run
1422
+ loopEndReason = check.message;
1423
+ return undefined;
1424
+ },
1425
+ finishTurn: async () => {
1426
+ if (!loopEndReason)
1427
+ return undefined;
1428
+ const reason = loopEndReason;
1429
+ loopEndReason = null;
1430
+ turnLog.warn(`[loop_detect] ending run, sending system notice`);
1431
+ // Send a system notice so the agent starts a new run with
1432
+ // awareness of the loop. Skip if this run was itself triggered
1433
+ // by a loop notice (prevents meta-loop).
1434
+ if (!isLoopNoticeRun) {
1435
+ setTimeout(() => {
1436
+ void enqueueInbox(ctx, session.id, {
1437
+ kind: "system_note",
1438
+ text: `[System] ${reason} Do not repeat the same tool calls. If the user's task is not yet complete, continue with a different approach. If you have enough information, respond to the user with your results.`,
1439
+ });
1440
+ }, 500);
1441
+ }
1442
+ else {
1443
+ turnLog.warn(`[loop_detect] skipping system notice — this run was already triggered by a loop notice`);
1444
+ }
1445
+ return { action: "end" };
1446
+ },
1354
1447
  }, piContext).catch((err) => {
1355
1448
  turnLog.error(`AgentHarness.create FAILED session=${session.id}`, err);
1356
1449
  throw err;