zames_pro 2.94.4 → 2.94.6
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/CHANGELOG.md +12 -0
- package/dist/agent-loop.js +7 -0
- package/dist/browser.js +6 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [2.94.6] - 2026-11-03
|
|
11
|
+
|
|
12
|
+
### Fixed
|
|
13
|
+
|
|
14
|
+
- **ui:** clear the generating badge as soon as an answer comes back
|
|
15
|
+
|
|
16
|
+
## [2.94.5] - 2026-11-03
|
|
17
|
+
|
|
18
|
+
### Changed
|
|
19
|
+
|
|
20
|
+
- **deepseek:** cut the send-start deadline from 50s to 22s
|
|
21
|
+
|
|
10
22
|
## [2.94.4] - 2026-11-03
|
|
11
23
|
|
|
12
24
|
### Fixed
|
package/dist/agent-loop.js
CHANGED
|
@@ -49,6 +49,7 @@ export async function runAgentLoop({ browser, tools, task, workdir, maxIteration
|
|
|
49
49
|
// Coarse lifecycle of the send (generating/paused/settled) for the status
|
|
50
50
|
// line. Same best-effort wiring as the other hooks.
|
|
51
51
|
browser.onSendState = safe(onSendState);
|
|
52
|
+
const safeSendState = safe(onSendState);
|
|
52
53
|
// Service notices (rate limit, server busy, resend) must reach the OPERATOR.
|
|
53
54
|
// While a LineEditor is active a raw console.error is overwritten by the
|
|
54
55
|
// editor's repaint, so the operator only saw the spinner. `onNotice` prints
|
|
@@ -425,6 +426,12 @@ export async function runAgentLoop({ browser, tools, task, workdir, maxIteration
|
|
|
425
426
|
}
|
|
426
427
|
await reportChat();
|
|
427
428
|
transcript?.log('assistant_raw', { response: rawResponse });
|
|
429
|
+
// A returned answer is a FINISHED generation: clear the "generating" badge
|
|
430
|
+
// NOW, not when the next ask() happens to start. The operator used to see
|
|
431
|
+
// "▶ генерация" for minutes after the answer had already been printed
|
|
432
|
+
// (the tool-call parsing, a long Bash run) - it looked like the agent was
|
|
433
|
+
// still generating with nothing in flight.
|
|
434
|
+
safeSendState('settled');
|
|
428
435
|
// The user aborted generation (Esc/Ctrl+C).
|
|
429
436
|
if (/^\s*\(прервано пользователем\)\s*$/.test(rawResponse)) {
|
|
430
437
|
transcript?.log('user_aborted');
|
package/dist/browser.js
CHANGED
|
@@ -2278,7 +2278,11 @@ export class DeepSeekBrowser {
|
|
|
2278
2278
|
// Wait for the start: either Stop appeared, or the answer text changed,
|
|
2279
2279
|
// or the page grew (a new answer node / longer last answer). In parallel we
|
|
2280
2280
|
// catch the rate-limit toast (only toasts, not the whole body).
|
|
2281
|
-
|
|
2281
|
+
// MEASURED live: an answer either starts within a few seconds or the send
|
|
2282
|
+
// did not go out at all. The old 30s + 20s windows meant FIFTY seconds of
|
|
2283
|
+
// a frozen "generating" status on every missed start; 12s + 10s is
|
|
2284
|
+
// plenty for DeepSeek to show the Stop button or start streaming.
|
|
2285
|
+
const startDeadline = Date.now() + 12_000;
|
|
2282
2286
|
// A CHEAP growth signal (message-node count + last-answer length)
|
|
2283
2287
|
// instead of document.body.innerText.length, which walked the whole page.
|
|
2284
2288
|
const startSignal = await this._chatSignal();
|
|
@@ -2512,7 +2516,7 @@ export class DeepSeekBrowser {
|
|
|
2512
2516
|
this._askDebug('START-failed, resending');
|
|
2513
2517
|
await this.page.keyboard.press('Enter');
|
|
2514
2518
|
this._lastSentAt = Date.now();
|
|
2515
|
-
const retryDeadline = Date.now() +
|
|
2519
|
+
const retryDeadline = Date.now() + 10_000;
|
|
2516
2520
|
while (Date.now() < retryDeadline) {
|
|
2517
2521
|
if (this._abort || this._askCancelled)
|
|
2518
2522
|
return '(прервано пользователем)';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zames_pro",
|
|
3
|
-
"version": "2.94.
|
|
3
|
+
"version": "2.94.6",
|
|
4
4
|
"description": "Terminal coding agent that drives a real browser to chat with DeepSeek, Qwen or GLM — no API key required. Reads and edits files, runs commands, commits to git, like Claude Code / Codex CLI.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|