@tractorscorch/clank 1.5.4 → 1.5.5

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.5] — 2026-03-23
10
+
11
+ ### Fixed
12
+ - **Local models refuse to use tools** — models claimed "I can't access your files" despite having `read_file`, `write_file`, etc. available. Strengthened the system prompt to explicitly tell the model it runs locally on the user's machine with direct file system access and must never refuse file operations
13
+
14
+ ---
15
+
9
16
  ## [1.5.4] — 2026-03-23
10
17
 
11
18
  ### Fixed
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.4-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.5-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.4_macos](https://github.com/ItsTrag1c/Clank/releases/latest/download/Clank_1.5.4_macos) |
78
+ | **macOS** (Apple Silicon) | [Clank_1.5.5_macos](https://github.com/ItsTrag1c/Clank/releases/latest/download/Clank_1.5.5_macos) |
79
79
 
80
80
  ## Features
81
81
 
package/dist/index.js CHANGED
@@ -1161,10 +1161,11 @@ async function buildSystemPrompt(opts) {
1161
1161
  }
1162
1162
  parts.push("");
1163
1163
  if (compact) {
1164
- parts.push("You are a helpful AI assistant with tools. Be concise. Use tools proactively. Read files before editing.");
1164
+ parts.push("You are a local AI agent running on the user's machine with DIRECT file system access via tools. Be concise. Use tools proactively. Read files before editing. NEVER say you cannot access files \u2014 you CAN and MUST use your tools.");
1165
1165
  } else {
1166
1166
  parts.push("## Instructions");
1167
- parts.push("You are a helpful AI assistant with access to tools for reading/writing files, running commands, and more.");
1167
+ parts.push("You are a local AI agent running directly on the user's machine. You have DIRECT access to the local file system, shell, and web.");
1168
+ parts.push("You MUST use your tools (read_file, write_file, edit_file, list_directory, bash, etc.) to accomplish tasks. NEVER claim you cannot access, read, or modify files \u2014 you absolutely can through your tools.");
1168
1169
  parts.push("Be concise and direct. Use tools proactively to accomplish tasks.");
1169
1170
  parts.push("When you need to make changes, read the relevant files first to understand the context.");
1170
1171
  parts.push("You can configure yourself \u2014 use the config, channel, agent, and model management tools to modify your own setup.");
@@ -6227,7 +6228,7 @@ var init_server = __esm({
6227
6228
  res.writeHead(200, { "Content-Type": "application/json" });
6228
6229
  res.end(JSON.stringify({
6229
6230
  status: "ok",
6230
- version: "1.5.4",
6231
+ version: "1.5.5",
6231
6232
  uptime: process.uptime(),
6232
6233
  clients: this.clients.size,
6233
6234
  agents: this.engines.size
@@ -6339,7 +6340,7 @@ var init_server = __esm({
6339
6340
  const hello = {
6340
6341
  type: "hello",
6341
6342
  protocol: PROTOCOL_VERSION,
6342
- version: "1.5.4",
6343
+ version: "1.5.5",
6343
6344
  agents: this.config.agents.list.map((a) => ({
6344
6345
  id: a.id,
6345
6346
  name: a.name || a.id,
@@ -7734,7 +7735,7 @@ async function runTui(opts) {
7734
7735
  ws.on("open", () => {
7735
7736
  ws.send(JSON.stringify({
7736
7737
  type: "connect",
7737
- params: { auth: { token }, mode: "tui", version: "1.5.4" }
7738
+ params: { auth: { token }, mode: "tui", version: "1.5.5" }
7738
7739
  }));
7739
7740
  });
7740
7741
  ws.on("message", (data) => {
@@ -8163,7 +8164,7 @@ import { fileURLToPath as fileURLToPath5 } from "url";
8163
8164
  import { dirname as dirname5, join as join19 } from "path";
8164
8165
  var __filename3 = fileURLToPath5(import.meta.url);
8165
8166
  var __dirname3 = dirname5(__filename3);
8166
- var version = "1.5.4";
8167
+ var version = "1.5.5";
8167
8168
  try {
8168
8169
  const pkg = JSON.parse(readFileSync(join19(__dirname3, "..", "package.json"), "utf-8"));
8169
8170
  version = pkg.version;