Skip to content

ToolsEnabled Data 0.8.5

Choose a tag to compare

@ToolsEnabled-Inc ToolsEnabled-Inc released this 13 Oct 22:11
· 29 commits to main since this release

ToolsEnabled Data 0.8.5

A compliance and privacy patch for 0.8.4. TE Data now refuses AI agents' chat history and settings as data, asks before its one-time setup downloads anything, gives every tool a title annotation, and handles two tool calls that reach a fresh server at once. The privacy notice says what TE Data keeps and how to delete it, and the README has a Try it section with sample data.

What was wrong

  • TE Data connected and read Claude Code chat history: tedata_sources accepted ~/.claude/projects/<project>/<session>.jsonl and ~/.claude/history.jsonl as documents, and evidence_read returned their text. Files in the Claude app's data folders, in the .gemini, .copilot and opencode folders, in the folders that CLAUDE_CONFIG_DIR or CODEX_HOME point to, and in other accounts' .claude-<name> and .codex-<name> folders were accepted too; only .codex was refused.
  • When two tool calls reached a fresh server at the same moment, the second failed with "Cannot read properties of null (reading 'request')".
  • No tool declared annotations.title. tedata_open, tedata_inspect and tedata_validate are marked read-only but write TE Data's profile cache, and did not say so. tedata_setup was marked non-destructive, although installing deletes TE Data's earlier Python environment.
  • The instructions told Claude to tell the user about setup and then run it, instead of asking first, and did not say that uv may download a Python interpreter. Claude could also run the setup command on its own.
  • The README and privacy notice said Cowork tasks run in Anthropic's cloud. The privacy notice did not say how long data is kept or how to delete it. When TE Data's tools were missing, the skill told Claude to stop and not to use other tools, and it forbade an artifact or dashboard when no panel was shown. The plugin's homepage was the site root, and there were no example prompts or sample data.

What changed

  • Claude Code's .claude folder (or the folder CLAUDE_CONFIG_DIR names), the Claude app's data folders (.config/Claude, Library/Application Support/Claude, AppData/Roaming/Claude, or LocalCache/Roaming/Claude for a packaged Windows install), the .codex folder (or CODEX_HOME), other accounts' .claude-<name> and .codex-<name> folders in the home folder, and the .gemini, .copilot and opencode folders are refused as data sources and documents, with a reason that names chat history. Files connected from them by an earlier version are no longer listed or read. Ordinary files connect as before, including .jsonl files elsewhere, projects in Claude Code worktrees (.claude/worktrees), plugin repositories' .claude-plugin folders and other tools' worktrees.
  • The server looks up its workspace once and shares that lookup between calls.
  • Every tool declares annotations.title. The three read-only tools that write TE Data's profile cache say so in their descriptions; the cache only speeds up later calls, so they stay read-only. tedata_setup is marked destructive, and its description says what installing deletes and that uv may download a Python interpreter.
  • Claude asks the user, and calls tedata_setup only after they agree. Only the user can run /toolsenabled-data:setup (disable-model-invocation: true).
  • README: "Made and tested for Claude Code; not tested in Cowork; its tools do not load in claude.ai chat." A Try it section with three prompts on examples/sample.csv and their expected results, a Settings table for the TEDATA_* environment variables, and the platform tested (Linux; native Windows and macOS have not been tested). PRIVACY.md: what TE Data keeps and where, that it stays until you delete it, what uninstalling leaves, how to remove everything (including what setup leaves in pip's and uv's folders), and the download hosts. The skill now tells the user and asks how to proceed instead of stopping or ruling out other tools. The plugin's homepage is https://toolsenabled.ai/data/.

Who should update

Everyone on 0.8.4 or earlier. The chat-history refusal is a privacy fix.

How to install

claude plugin marketplace add ToolsEnabled/toolsenabled-data-claude-plugin
claude plugin install toolsenabled-data@toolsenabled-data

Open Claude Code in your project folder, run /toolsenabled-data:setup once per computer, connect your data, then run /tedata. To try it first, follow the README's Try it section.

How to update

claude plugin marketplace update toolsenabled-data
claude plugin update toolsenabled-data@toolsenabled-data

Restart Claude Code. If you installed from a local copy, update that copy instead.

Download and verify

Download toolsenabled-data-0.8.5.tar.gz and toolsenabled-data-0.8.5.tar.gz.sha256 from this release. Archive SHA-256:

71cb16a4bbbb4cf2bc3eafd4fbd4d1f592e6b817e9792fff3866055340f199f8
sha256sum -c toolsenabled-data-0.8.5.tar.gz.sha256
tar -xzf toolsenabled-data-0.8.5.tar.gz
cd toolsenabled-data
node tools/verify-release.mjs
node --test test/*.test.mjs

Release commit: a19846666cf02676239a66b133eaee611ed4ad7a. Tag: toolsenabled-data--v0.8.5.

How it was tested

  • The public payload suite: 0.8.4 passed 21 of 21 tests. 0.8.5 passes 33 of 33, with 0 failures and 0 skips, on the source and again from the extracted archive. Its 12 new behavioural tests start the real server with a scratch home and project; 9 of them fail on 0.8.4; the other 3 check that ordinary files still connect.
  • Live checks on the extracted archive. Agent history: of 13 synthetic agent history and settings files, 0.8.4 connected 12 and returned their text; 0.8.5 refuses all 13, and lists none of them from a workspace saved earlier. With CLAUDE_CONFIG_DIR and CODEX_HOME pointing at moved folders, 0.8.4 returned the text of a transcript, a memory file and a Codex session; 0.8.5 refuses all 3. Four ordinary files still connect and read back, and so do a plugin repository's .claude-plugin files, data in another tool's worktree and a project in a Claude Code worktree. Simultaneous first calls: with a client that offers no roots, 0.8.4 failed the second call on 5 of 5 fresh servers; 0.8.5 failed none of 40 calls on 20 fresh servers, with and without client roots.
  • Each server fix was reverted on its own (22 reverts). Every revert made its test fail, and restoring it passed.
  • The tool calls behind the three Try it prompts were run through the server with DuckDB 1.5.6 on examples/sample.csv (no Claude session was used): 2 of 30 rows have high_c below low_c, the copy without duplicates has 28 rows, and the chart has one line per city and exports report.html.
  • Two archive builds are byte-identical. All 28 listed files verify on the source and on the extracted archive, and strict plugin validation passes on both.

The internal 0.8.3 source suites are not distributed here and were not rerun for this patch. No browser, Windows or macOS suite was run. The panel and the Python workers are byte-identical to 0.8.3.

Support: support@toolsenabled.ai. Private vulnerability reporting: https://toolsenabled.ai/security/.