Export2AI v1.2.6
Export2AI v1.2.6
Released 2026-05-31.
Export2AI turns any workspace folder into a clean, AI-ready .zip — it skips junk like node_modules, optionally strips comments and compresses code, and shows an offline token estimate for your target model (exact for OpenAI, approximate for others).
What's in this release
Added
- Single-file copy command — right-click a file in Explorer and choose Export2AI: Copy Content to Clipboard to copy exact UTF-8 text without creating a zip. The command rejects folders, multi-selects, binary files, invalid UTF-8, read failures, and clipboard failures with visible Export2AI messages instead of quiet no-ops.
- Packaged extension artwork — the VSIX manifest now points at
icons/icon-1254x1254.pngfor Cursor, VS Code Marketplace, and Open VSX, and the README starts with the packagedicons/gh_banner.pngbanner at its native aspect ratio.
Changed
- Marketplace README spacing — moved the README heading and summary above the banner image and removed fixed banner dimensions so Open VSX / Cursor render the Overview tab without large blank vertical gaps.
- VSIX output folder —
npm run packagenow writes release packages tobuild/export2ai-{version}.vsixinstead of the repository root. Release automation, docs, and release notes now use the same path. - Marketplace asset validation — release automation packages the VSIX before upload/publish and runs
test:marketplace-assetsagainst the embedded manifest icon path and PNG dimensions. - Copy structure default format —
export2ai.outputFormatnow defaults toplaintextinstead ofmarkdown. - Instant Explorer folder badges (single-pass aggregation) — token badges for every folder are now computed from one workspace walk instead of a separate subtree scan per folder.
TokenCounter.countFilesPerPath()tokenizes each file once andaggregateDirectoryEstimates()sums those counts up each file's ancestor directories, caching the root and every folder in a single pass before firing one decoration-refresh event.provideFileDecorationis now a synchronous cache read (the same approach VS Code's built-in Git decoration provider uses). - Full-extension debug logging —
export2ai.debugnow covers activation, command registration, settings navigation, zip creation, copy-structure, single-file copy, token-estimate refreshes, ignore setup, and file collection. Output lines use the Export2AI channel and a compact local-PC timestamp instead of UTC ISO strings. - Visible debug startup — Export2AI now activates after workbench startup, so when
export2ai.debugis already enabled the Export2AI Output channel is revealed with the activation log; when debug is turned on while the extension is running, the channel is revealed and a visibledebug: enabledmarker is written. - Debug scope handling — checking
export2ai.debugat User scope now enables diagnostics even if a workspace setting still containsexport2ai.debug: false; configuration reads no longer emit resource-scope warnings for window-scoped settings. - Lazy debug channel creation — the Export2AI Output channel is not created while
export2ai.debugis off. Debug defaults tofalseand logging starts only after the User or Workspace setting is checked. - Published extension identity — marketplace builds now use publisher
avnsx, nameexport2ai, and extension IDavnsx.export2ai.
Fixed
- Redundant token scanning — the old design re-read and re-tokenized each file once per ancestor folder (
O(depth × files)), so badges appeared one folder at a time and large repos paid repeated I/O. Files are now read and tokenized exactly once per refresh; per-folder on-demand scans remain only as a fallback during the initial ~5 s deferred-scan window (and for non-primary roots in multi-root workspaces). - Stale estimates after edits — a workspace refresh now performs a fresh walk and rebuilds the folder cache, so saving, creating, deleting, or renaming files updates the status bar and badges (previously the cached root short-circuited the refresh).
- Debug setting respected — routine settings-navigation diagnostics no longer write to Output when
export2ai.debugis off, including delayed cooldown messages. - Zip completion hardening — token-estimate refresh failures no longer abort zip creation or hide the created zip notification, and zip-path clipboard failures now show a visible Export2AI error.
Install
From the VSIX (this release):
- Download
export2ai-1.2.6.vsixfrom the assets below. - In Cursor / VS Code: Extensions → ⋯ → Install from VSIX… and pick the file.
Or from a terminal:code --install-extension export2ai-1.2.6.vsix
From source:
npm install
npm run package # builds build/export2ai-1.2.6.vsixLicensed under the GNU General Public License v3.0.