dsh-agy-link 0.2.8 โ 0.2.9
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/index.js +28 -25
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.2.9 (2026-08-19)
|
|
4
|
+
|
|
5
|
+
- **Tool activity moved out of the thinking panel into the reply body.**
|
|
6
|
+
User feedback on 0.2.8: tool annotations hidden inside the DSH thinking
|
|
7
|
+
fold were invisible and felt wrong. agy tools now render as visible
|
|
8
|
+
`๐ง [agy tool: name] args -> output` lines in the message body (they
|
|
9
|
+
cannot become native DSH tool cards: a finish:tool-calls would make the
|
|
10
|
+
DSH agent try to execute tools it does not own โ agy runs its own closed
|
|
11
|
+
tool loop). The thinking panel keeps only what is genuinely thinking
|
|
12
|
+
signal: `[agy thinking turn ยท N thinking tokens]` turn annotations
|
|
13
|
+
(agy print mode never streams thinking text) and terminal error notes.
|
|
14
|
+
|
|
3
15
|
## 0.2.8 (2026-08-19)
|
|
4
16
|
|
|
5
17
|
- **Fix: real agy 1.1.15 stream-json parsing.** The parser only understood
|
package/dist/index.js
CHANGED
|
@@ -433,42 +433,45 @@ var EventMapper = class {
|
|
|
433
433
|
if (d) yield d;
|
|
434
434
|
return;
|
|
435
435
|
}
|
|
436
|
-
if (ev.stepKind === "thinking" || ev.stepKind === "
|
|
436
|
+
if (ev.stepKind === "thinking" || ev.stepKind === "subagent") {
|
|
437
437
|
yield* this.ensureBlock("reasoning");
|
|
438
438
|
if (ev.stepKind === "thinking") {
|
|
439
439
|
const delta = suffixDelta(this.emittedByKey.get(ev.stepKey) ?? "", ev.text);
|
|
440
440
|
this.emittedByKey.set(ev.stepKey, ev.text);
|
|
441
441
|
const d = this.appendDelta(delta);
|
|
442
442
|
if (d) yield d;
|
|
443
|
-
} else
|
|
444
|
-
const announceKey = ev.stepKey + ":a";
|
|
445
|
-
if (!this.toolPhaseSeen.has(announceKey)) {
|
|
446
|
-
this.toolPhaseSeen.add(announceKey);
|
|
447
|
-
const line = (this.opts.announce ?? defaultAnnounce)(ev.tool.name, ev.tool.args);
|
|
448
|
-
const d = this.appendDelta(line);
|
|
449
|
-
if (d) yield d;
|
|
450
|
-
}
|
|
451
|
-
const outKey = ev.stepKey + ":o";
|
|
452
|
-
const errKey = ev.stepKey + ":e";
|
|
453
|
-
if (ev.tool.error !== void 0 && !this.toolPhaseSeen.has(errKey)) {
|
|
454
|
-
this.toolPhaseSeen.add(errKey);
|
|
455
|
-
const d = this.appendDelta("[agy tool error: " + ev.tool.name + "] " + ev.tool.error + "\n");
|
|
456
|
-
if (d) yield d;
|
|
457
|
-
}
|
|
458
|
-
if (ev.tool.output !== void 0 && !this.toolPhaseSeen.has(outKey)) {
|
|
459
|
-
this.toolPhaseSeen.add(outKey);
|
|
460
|
-
const rendered = this.opts.toolOutput ? this.opts.toolOutput(ev.tool.name, ev.tool.args, ev.tool.output) : defaultOutput(ev.tool.output);
|
|
461
|
-
if (rendered !== null) {
|
|
462
|
-
const d = this.appendDelta(rendered);
|
|
463
|
-
if (d) yield d;
|
|
464
|
-
}
|
|
465
|
-
}
|
|
466
|
-
} else if (ev.stepKind === "subagent") {
|
|
443
|
+
} else {
|
|
467
444
|
const d = this.appendDelta("[agy subagent] " + ev.text + "\n");
|
|
468
445
|
if (d) yield d;
|
|
469
446
|
}
|
|
470
447
|
return;
|
|
471
448
|
}
|
|
449
|
+
if (ev.stepKind === "tool" && ev.tool) {
|
|
450
|
+
yield* this.ensureBlock("text");
|
|
451
|
+
const announceKey = ev.stepKey + ":a";
|
|
452
|
+
if (!this.toolPhaseSeen.has(announceKey)) {
|
|
453
|
+
this.toolPhaseSeen.add(announceKey);
|
|
454
|
+
const line = (this.opts.announce ?? defaultAnnounce)(ev.tool.name, ev.tool.args);
|
|
455
|
+
const d = this.appendDelta("๐ง " + line);
|
|
456
|
+
if (d) yield d;
|
|
457
|
+
}
|
|
458
|
+
const outKey = ev.stepKey + ":o";
|
|
459
|
+
const errKey = ev.stepKey + ":e";
|
|
460
|
+
if (ev.tool.error !== void 0 && !this.toolPhaseSeen.has(errKey)) {
|
|
461
|
+
this.toolPhaseSeen.add(errKey);
|
|
462
|
+
const d = this.appendDelta("โ [agy tool error: " + ev.tool.name + "] " + ev.tool.error + "\n");
|
|
463
|
+
if (d) yield d;
|
|
464
|
+
}
|
|
465
|
+
if (ev.tool.output !== void 0 && !this.toolPhaseSeen.has(outKey)) {
|
|
466
|
+
this.toolPhaseSeen.add(outKey);
|
|
467
|
+
const rendered = this.opts.toolOutput ? this.opts.toolOutput(ev.tool.name, ev.tool.args, ev.tool.output) : defaultOutput(ev.tool.output);
|
|
468
|
+
if (rendered !== null) {
|
|
469
|
+
const d = this.appendDelta(rendered);
|
|
470
|
+
if (d) yield d;
|
|
471
|
+
}
|
|
472
|
+
}
|
|
473
|
+
return;
|
|
474
|
+
}
|
|
472
475
|
return;
|
|
473
476
|
}
|
|
474
477
|
if (!ev.ok) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dsh-agy-link",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.9",
|
|
4
4
|
"description": "Google Antigravity (agy CLI) models for DeepSeek Harness โ stream Gemini/Claude/GPT-OSS subscriptions into DSH with thinking, tool activity, token usage and in-GUI Google OAuth login.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|