Skip to content

ToolsEnabled Slides 0.1.4 (beta)

Pre-release
Pre-release

Choose a tag to compare

@ToolsEnabled-Inc ToolsEnabled-Inc released this 13 Oct 13:16

ToolsEnabled Slides 0.1.4 (beta)

Published 2026-10-13. Source commit e36f4ae918192c5e8f6073b5d27c5757dd030b24. It adds four commits to 0.1.3 (tag v0.1.3, commit 49ce1ce7d507586a62fc18dee0ee04ff999c67a6): three small fixes found by a fresh-user check of 0.1.3, and the version change.

This release provides Linux presentation editing over MCP, a local live studio, read-only Claude panes and Codex CLI views, slide locks, human dashboard controls, and PPTX/PDF/PNG export. Linux is the supported release scope. Native Windows shutdown, macOS, trusted production signing and native Desktop installation remain unqualified.

The MCP host supplies the agent. Slides does not make model calls or require a built-in online account or API key. The source ZIP contains no wheels, copied runtimes, workspace data, signing keys or packaging evidence. Prepare the Python runtime explicitly; Linux PDF/PNG also require LibreOffice.

Changes since 0.1.3 (see CHANGELOG.md):

  • A lock refusal names the slides to lock. ppt_add_slide with a slide still unlocked now returns, for example, "Lock the affected slides with ppt_lock before editing: s2 (add-slide changes the whole deck, so it needs every current slide locked)" instead of the bare instruction. The HTTP response also lists them as lockSlides. Which edits need which locks is unchanged.
  • A start that finds no presentation.pptx yet logs "creating the initial presentation.pptx" instead of "presentation needs a boot render: ENOENT …". This happened when claude mcp list stopped the first start before its first render. A deck that is out of date for another reason logs "presentation.pptx is out of date, rendering it again: ".
  • node src/cli/doctor.js prints install commands only for what is missing. With everything present it prints none.
  • node tools/mcp-config.mjs names Node.js by the PATH entry that runs it (for example /usr/local/bin/node), not the file a version manager links it to.
  • Install docs: after the documented claude plugin install, Claude Code prints "2 userConfig options not yet set". This is expected. The two are the optional renderer and LibreOffice settings, which keep their defaults (Claude Code counts every option without a saved value). The docs now name Claude Code 2.1.296, the version this release was tested with.

Files in this release

File SHA-256
toolsenabled-slides-0.1.4.zip (662614 bytes, the source distribution) 05a0fcd8e84376ed5212cdf99f87242a9401a49654983bf8b421b1471a68a729
toolsenabled-slides-0.1.4.zip.sha256 the line above, sha256sum -c format

Verify before extracting:

sha256sum -c toolsenabled-slides-0.1.4.zip.sha256

The offline Python wheel bundle that README and docs/CLAUDE-INSTALL.md use is unchanged since 0.1.0 and is not re-attached here. Use the 0.1.0 asset, which works with 0.1.4 (same six pins): toolsenabled-slides-0.1.0-cp312-linux-x86_64-wheels.zip, SHA-256 a29454931420b8d9547eeb8d17c389a005cf0343a927d7a275f15eb3cab25fec.

No Claude Desktop bundle (.mcpb) is distributed with 0.1.4. An MCPB manifest is included in the source for future Desktop qualification; registry metadata and directory publication remain held until production-signed bytes and the required qualification are verified.

Plugin installation: claude plugin marketplace add ToolsEnabled/toolsenabled-slides, then claude plugin install -s local toolsenabled-slides@toolsenabled-slides --config python_executable="/absolute/private/Slides Runtime/bin/python" --config node_executable=/absolute/node --config workspace_directory="/absolute/decks/Project Update" --config port=4599 (Claude Code, with Node.js 22 or newer on its PATH; without the Python and workspace settings the plugin installs but starts no server); codex plugin marketplace add ToolsEnabled/toolsenabled-slides then codex plugin add toolsenabled-slides@toolsenabled-slides (Codex). Both need the external runtime prepared as docs/CLAUDE-INSTALL.md describes.

What was tested

Full Linux suite on the release commit: FILES 107; FAILED 0; DISPLAY=unset, exit 0 (106 direct test files plus fixture generation), with SUITE_PYTHON pointing at a runtime prepared by tools/setup-runtime.py from the 0.1.0 wheel bundle: 144 node:test tests, 127 Python tests (6 Windows-only skips) and 692 scripted checks, all passing. On 0.1.3 the same suite ran 140 node:test tests. The four new ones check the named slides in a lock refusal, the start after an interrupted first start, doctor's install output and the registration helper's Node.js path; each failed on the 0.1.3 code before its fix. The /slides mod's hook tests (claude plugin test): 33/33.

The same suite from the extracted ZIP (unzip, then node test/run.js inside slides/ with the same prepared runtime): FILES 107; FAILED 0; DISPLAY=unset, exit 0, with the same counts.

Strict real-LibreOffice lifecycle on the extracted ZIP: exit 0, ok: true, 9 named checks (initialize, golden tools/list, locks required, 3-slide MCP editing, attach and detach, real exports, import, EOF shutdown, lease released), 37 discovered tools, 3 PPTX slides, 3 PDF pages and 3 PNG images (1600 × 901 each). This is one strict lifecycle run with its retained exports and stderr, not coverage of every tool.

Marketplace: claude plugin validate --strict passes on the release tree, its plugin.json, its marketplace.json and the extracted ZIP (Claude Code 2.1.296). In a scratch CLAUDE_CONFIG_DIR, claude plugin marketplace add from the clone followed by claude plugin install -s local toolsenabled-slides@toolsenabled-slides with the four settings listed the plugin at 0.1.4 and printed the expected "2 userConfig options not yet set". claude mcp list showed its server connected, and a second claude mcp list logged "creating the initial presentation.pptx". The Codex marketplace file follows the published repo-marketplace format; Codex installation from it and the packaged-ZIP Codex host gate (tools/prove-codex-plugin.py) were not run for 0.1.4. No native Windows/macOS/Desktop or production certificate trust is inferred.

Support and security contact: support@toolsenabled.ai (security policy: https://toolsenabled.ai/security/).