0.3.0 (2026-08-14)
- address open issues — TOML metadata, custom URLs, port clashes, hangs, notebook adoption (#42) (f856e03), closes #28 #32 #41 #35 #38 #40 #39 #34 #39 #38 #40
- component hardening pass — commands, tree view, status bar, serializer, CI (#43) (9235840), closes #42
- harden concurrency across PlutoManager, @plutojl/cli, and the extension (#41) (abd13be)
- add @plutojl/cli command-line tool for Pluto notebooks (#37) (d4db006)
- depend on auth extension (fe10ccb)
- night-shift roadmap — streamable HTTP, cell sync, terminal interrupt, review fixes (6fa9b9b)
0.3.0 (2026-08-15)
- mcp: streamable HTTP (modern MCP transport) served natively alongside legacy SSE;
installand the extension config commands writetype: "http";/healthreports per-transport session counts - notebook: cell-order sync — cells added, deleted, or reordered via MCP tools or Pluto's browser UI now appear in the VSCode notebook view
- notebook: Pluto-side code edits (browser UI, MCP
update_cell) sync into VSCode cell text - terminal: Ctrl+C interrupts the running Julia computation (
worker.interrupt()), not just the prompt - mcp:
PLUTO_GUIDE.mdrewritten aroundwait_for_notebook_idle, session adoption, and HTML export; newpluto-cliskill for Claude Code sessions - cli:
@plutojl/cli0.6.0 with the same transport and server improvements (npm publish is manual)
- executions end when the cell settles (
running: false), not on the first output patch — no more premature "success" while nbpkg installs, stale errors clear after a fixing re-run, and displayed durations are no longer reset to 0s by duplicate patches - Pluto's autosave of an open notebook no longer duplicates cells through document-revert echoes; pasted cells get their own identity instead of aliasing the original; drag-reorders propagate to Pluto instead of snapping back
- reopening a notebook whose worker stayed alive renders existing outputs instead of staying blank
- unknown streamable MCP sessions return spec-mandated 404 so restarted clients re-initialize; idle sessions are swept after 2h
- terminal Ctrl+C while queued no longer interrupts the whole notebook
- the Integration Test CI job compiled with
noEmitand had been passing while executing zero tests; it now runs the suite - reactive dependency tracking: bulk
cells_updatedevents (no patches) reconcile all changed cell outputs and refresh the notebook tree
- all dependencies at latest (MCP SDK 1.30, zod 4, uuid 14, ws 8.21.3, esbuild 0.28, vsce 3.9); npm audit 45 → 11
- Julia pinned at 1.12.6 (juliaup default, CI, docs)
0.2.7 (2025-11-16)
- use full homepath (1dd7b85)
0.2.6 (2025-11-14)
- LOAD_PATH on windows (f0fa9c0)
0.2.5 (2025-11-10)
- deps: bump rainbow to fix toml parsing/deparsing (2b8c7aa)
0.2.4 (2025-11-07)
- apply image filter in carets in dark mode (3cb283c)
- notebook serialization (ef87360)
- remove infinite loop from renderer when view errors (740744c)
- stability issue with actions (85dd298)
0.2.3 (2025-11-03)
- never set load_path to '' (c904383)
0.2.2 (2025-10-30)
- adjust execution to fix some macs (d19befe)
0.2.1 (2025-10-28)
- use ProcessExecution to avoid shell quote issues (d30bcac)
0.2.0 (2025-10-26)
- windows installation working (after juliaup) (03bc90f)
0.1.2 (2025-10-25)
- do our own setup on julia 1.11.7 (ecf1da2)
- make pluto-notebook's default julia version a setting (3f972e4)
- remove usage of node's fs, in favor of VSCode apis (6248445)
- reorganize to sanitize and limit polyfill usage, include new rainbow (4b027a0)
0.1.1 (2025-10-24)
- relax vscode version (9bfbdf8)
0.1.0 (2025-10-24)
- add notebook introspect and get_docs tool (ee7b8f4)
0.0.7 (2025-10-17)
0.0.6 (2025-10-14)
- release 0.0.6 (dd1c89a)
All notable changes to the Pluto Notebook VSCode extension will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Create New Notebook command to generate new Pluto notebooks with a single empty cell (3bcaf2d)
- CI workflow now uses PAT with bypass permissions for protected branch (46e57a7)
- Manage reset state patch for improved state handling (a7240eb)
- Re-enabled semantic release version bumping with proper configuration (e0a2a72)
Initial alpha release of the Pluto Notebook VSCode extension.
- Pluto Notebook support for
.pluto.jland.dyad.jlfiles (9467309) - Integrated Pluto server with automatic lifecycle management
- VSCode task integration for Pluto server (terminal-based) (0ce78b4)
- Interactive terminal for Julia code execution with command history (2c93203)
- Rich output rendering (HTML, images, plots) in webviews
- HTTP-based MCP server for AI assistant integration
- 11 VS Code commands for server, configuration, and notebook management
- 12 MCP tools for AI assistants
- Real-time and ephemeral code execution
- Interactive config generation for Claude Desktop and GitHub Copilot
- Open notebook in browser command
- Health check endpoint
- Configuration settings for ports and auto-start
- Shared state between extension and MCP clients
- Code snippets for Pluto and Dyad Interface components
- Automatic port selection to avoid conflicts
- Toggle view command to switch between code and notebook view
- Pluto Notebooks tree view in explorer with hierarchy information and definitions (5c0313d)
- Reconnect notebook functionality
- Status bar integration (5341d45)
- MathJax support for mathematical notation (73ead4a)
- Synchronous logs, stdout, and progress display (a606e59)
- Native support for images and bonds (96c166d)
- Optional connection to local URL instead of spawning server (5ef432b)
- Multiple open editors handling (da1f7b9)
- Output display on notebook reopen (ad6e488)
- Value display after error state (b8cd536)
- Tree view error handling (2ba1da8)
- UUID validation compatibility with Julia (333531d)
- Linting issues with isDefined/isNotDefined usage (fff6b6f)
- Conditional checks and markdown serialization (8cd0d2e)
- Task start functionality (299f8c6)
- Tests and markdown handling (0160cf5)
- Jest environment configuration (37f5bfc)
- Pluto terminal error handling (f474fd0)
- Worker shutdown using process termination instead of connection close (5aa73d6)
- Image serialization issues (9240509)
- ArrayBuffer to string conversion moved to controller (4cc3b3f)
- Pluto-tree styles refinements (426f0a6, ebe31c0)
- TypeScript type definitions (9937fb3)
- Reset error state automatically (2d251dc)
- Hide Pluto AI interface in embedded views (8388eaa)
- Remove icons from tree view (de43faa)
- Improved styling for webviews (ec94551)
- Code formatting with Prettier (95b5f29, fe7211b, b1d09a7)
- ESLint configuration and cleanup (14b2b44, a92c8af)
- Better notebook management (875f317)
- Tree view refactoring (a2e52e1)
- Enhanced styling for
preandpluto-treeelements (2c9a7d5) - General style updates and refinements (2c1f723, 5ffef03)
- Comprehensive MCP server guide (docs/MCP.md)
- Interactive terminal guide (docs/TERMINAL.md)
- Pluto server task integration guide (docs/PLUTO-SERVER-TASK.md)
- Development guide (CLAUDE.md)
- Contributing guidelines (docs/CONTRIBUTING.md)
- Semantic release workflow (docs/SEMANTIC_RELEASE.md)
- Pluto.jl guide for AI tools with PlutoUI components reference
- Updated README with extension overview and complete feature list (e69c775, 8596f60)
- Improved code comments (9129c44)
- Complete CI/CD pipeline with GitHub Actions (8736c3d)
- Automated releases with semantic-release (a2c2855)
- Commitlint for conventional commits
- ESLint and Prettier checks in CI (a92c8af)
- Unit tests in CI pipeline (c5f61bf)
- TypeScript type checking and linting fixes (4493719)
- VSIX artifact generation and attachment to releases