@tractorscorch/clank 1.5.9 → 1.5.10

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 CHANGED
@@ -6,6 +6,13 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/).
6
6
 
7
7
  ---
8
8
 
9
+ ## [1.5.10] — 2026-03-23
10
+
11
+ ### Fixed
12
+ - **Telegram/Discord hangs forever when agent uses tools** — medium/high safety tools (bash, write_file, edit_file) require user confirmation, but the adapter streaming path had no confirmation handler. The engine would emit `confirm-needed`, nobody would respond, and the agent hung indefinitely with Telegram stuck on "typing". Now auto-approves all tool confirmations for non-interactive channels
13
+
14
+ ---
15
+
9
16
  ## [1.5.9] — 2026-03-23
10
17
 
11
18
  ### Changed
package/README.md CHANGED
@@ -9,7 +9,7 @@
9
9
  </p>
10
10
 
11
11
  <p align="center">
12
- <a href="https://github.com/ItsTrag1c/Clank/releases/latest"><img src="https://img.shields.io/badge/version-1.5.9-blue.svg" alt="Version" /></a>
12
+ <a href="https://github.com/ItsTrag1c/Clank/releases/latest"><img src="https://img.shields.io/badge/version-1.5.10-blue.svg" alt="Version" /></a>
13
13
  <a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/License-MIT-blue.svg" alt="License" /></a>
14
14
  <a href="https://www.npmjs.com/package/@tractorscorch/clank"><img src="https://img.shields.io/npm/v/@tractorscorch/clank.svg" alt="npm" /></a>
15
15
  <a href="https://github.com/ItsTrag1c/Clank/stargazers"><img src="https://img.shields.io/github/stars/ItsTrag1c/Clank.svg" alt="Stars" /></a>
@@ -75,7 +75,7 @@ That's it. Setup auto-detects your local models, configures the gateway, and get
75
75
  | Platform | Download |
76
76
  |----------|----------|
77
77
  | **npm** (all platforms) | `npm install -g @tractorscorch/clank` |
78
- | **macOS** (Apple Silicon) | [Clank_1.5.9_macos](https://github.com/ItsTrag1c/Clank/releases/latest/download/Clank_1.5.9_macos) |
78
+ | **macOS** (Apple Silicon) | [Clank_1.5.10_macos](https://github.com/ItsTrag1c/Clank/releases/latest/download/Clank_1.5.10_macos) |
79
79
 
80
80
  ## Security Notice
81
81
 
package/dist/index.js CHANGED
@@ -6219,6 +6219,12 @@ var init_server = __esm({
6219
6219
  engine.on("error", fn);
6220
6220
  listeners.push(["error", fn]);
6221
6221
  }
6222
+ const confirmFn = (data) => {
6223
+ const { resolve: resolve4 } = data;
6224
+ resolve4("always");
6225
+ };
6226
+ engine.on("confirm-needed", confirmFn);
6227
+ listeners.push(["confirm-needed", confirmFn]);
6222
6228
  try {
6223
6229
  console.log(` Streaming: sending message to engine (session: ${sessionKey})`);
6224
6230
  const result = await engine.sendMessage(text);
@@ -6266,7 +6272,7 @@ var init_server = __esm({
6266
6272
  res.writeHead(200, { "Content-Type": "application/json" });
6267
6273
  res.end(JSON.stringify({
6268
6274
  status: "ok",
6269
- version: "1.5.9",
6275
+ version: "1.5.10",
6270
6276
  uptime: process.uptime(),
6271
6277
  clients: this.clients.size,
6272
6278
  agents: this.engines.size
@@ -6378,7 +6384,7 @@ var init_server = __esm({
6378
6384
  const hello = {
6379
6385
  type: "hello",
6380
6386
  protocol: PROTOCOL_VERSION,
6381
- version: "1.5.9",
6387
+ version: "1.5.10",
6382
6388
  agents: this.config.agents.list.map((a) => ({
6383
6389
  id: a.id,
6384
6390
  name: a.name || a.id,
@@ -7774,7 +7780,7 @@ async function runTui(opts) {
7774
7780
  ws.on("open", () => {
7775
7781
  ws.send(JSON.stringify({
7776
7782
  type: "connect",
7777
- params: { auth: { token }, mode: "tui", version: "1.5.9" }
7783
+ params: { auth: { token }, mode: "tui", version: "1.5.10" }
7778
7784
  }));
7779
7785
  });
7780
7786
  ws.on("message", (data) => {
@@ -8203,7 +8209,7 @@ import { fileURLToPath as fileURLToPath5 } from "url";
8203
8209
  import { dirname as dirname5, join as join19 } from "path";
8204
8210
  var __filename3 = fileURLToPath5(import.meta.url);
8205
8211
  var __dirname3 = dirname5(__filename3);
8206
- var version = "1.5.9";
8212
+ var version = "1.5.10";
8207
8213
  try {
8208
8214
  const pkg = JSON.parse(readFileSync(join19(__dirname3, "..", "package.json"), "utf-8"));
8209
8215
  version = pkg.version;