Vienna|

Changelog

What's new in Vienna.

Release notes, improvements, and fixes.

v0.0.16
New
  • restore deep link install buttons for plugins and profiles (#449)
  • update landing page hero and section headings (#444)
  • support HTML images in plugin READMEs and rewrite relative URLs (#443)
  • support root-level single-plugin repos (#442)
  • add widget button, plugin store canvas filters, and remove template browser (#441)
  • expose theme to plugins via useTheme() hook (#437)
  • strict error boundaries for feed canvases and entity drawers (#439)
  • add Home button and section labels (#438)
  • auto-install deps, enriched env, and openExternal hostApi (#436)
  • detect missing deps and offer install dialog (#434)
  • plugin toggle UI, feed optimization, refresh UX (#433)
  • plugin feed canvas, local override UI, and drawer navigation (#432)
  • bundle vcli with desktop app (#430)
  • visual plugin creation via ActionFormBar (#428)
  • add copy button to install command on download page (#429)
  • default website theme to dark mode (#427)
  • landing page overhaul with video showcase and waitlist CTA (#422)
  • add join waitlist page (#421)
  • integrate Resend as email provider (#420)
  • server-derived workstream focus via inFocus field
  • add SDK workstream operations and fix plugin feed lifecycle
  • add usePlaybackMarkers hook for timed video cue points
  • add loading skeleton to YouTubeEmbed
  • detachable feed cards, plugin feed canvases, and YouTube playback tracking
  • add tag icon to chat input with quick-apply dropdown and management drawer (#412)
  • add permission indicator to chat input (#411)
  • inline json-render specs in feed.md + YouTubeCard (#407)
  • consolidate help docs onto docs site (#403)
  • feed onboarding modal with template browser (#404)
  • replace empty state with functional chat input (#402)
  • add plugins video, update bento card copy, and improve grid spacing
  • add suggestion prompt before nonprofit list on pricing page
  • update landing page with Parallel Agents feature and video
  • add CLI reference page (#397)
  • local speech-to-text via Whisper ONNX (#280)
  • home feed system with production fixes, toggle, and parallel generation (#392)
  • enhance feed UI with interactive cards, images, and grid layout (#370)
  • show tag DAG diagram in execution widget (#383)
  • gate logging behind developer mode, remove dead settings
  • add CSS import support to plugin bundler (#375)
  • add plugins directory to website (#371)
  • open plugin nav items as tabs instead of full-view drawers
  • add feedback status field and admin API routes (#365)
  • add dirty indicator and Cmd+S save to paste drawer
  • show GitHub forks count on profile pages (#363)
  • add view and install analytics tracking for profiles (#361)
  • add sync and delete actions to dashboard profile list
  • edit display name on dashboard + delete profile button
  • density-aware form controls + colored section icons
  • profiles directory — publish, discover, and install content profiles
  • add comprehensive drawer UI guideline stories
  • shareable content profiles with fork-via-deep-link viral loop
  • 3-tier layered configuration system with .vienna/ as local registries
  • open workstream creation form from entity drawer with pre-filled data (#356)
  • remove PropertiesSection from workstream settings
Fixed
  • auto-update official registry URL on startup
  • emit onPluginChanged during startup plugin loading
  • remove bold from IDE, update subtitle copy (#446)
  • pass hostApi to plugin feed canvas components
  • missing review fixes + sdk 0.1.7
  • add max height to select step in action form bar (#435)
  • auto-focus input when ActionFormBar appears (#431)
  • update SEO meta description and add OpenGraph/Twitter cards (#426)
  • simplify vercel.json, remove framework/output overrides
  • scope Vercel build to web app only, skip desktop/electron
  • add explicit type annotations to fix strict TS errors in graphql package
  • landing page build fixes and PR review feedback (#423)
  • unpack onnxruntime dylib from asar for speech-to-text (#418)
  • include onnxruntime-common in packaged app
  • add 1s forward offset to YouTube playback restore
  • revert bento videos to placeholders, keep updated copy
  • render SVG icons in type filter tabs (#410)
  • CSP, webview, TDZ, and spacing fixes for feed (#409)
  • improve YouTubeCard title spacing
  • move handleEditFile before handleCreateFeed
  • add frame-src for YouTube to CSP
  • fix "Create from scratch" button doing nothing
  • use webview instead of iframe for YouTubeCard
  • show scope name instead of UUID when chaining from scope creation (#382)
  • scroll to top when navigating between docs (#408)
  • update hero subtitle copy to "local-first, extendable"
  • remove .git from .vercelignore, keep .turbo and .worktrees
  • also exclude .worktrees from Vercel deploys
  • add .vercelignore to exclude .turbo cache from deploys
  • worktree plugin resolution and entity drawer refresh support
  • disable Mixpanel analytics in staging builds
  • bundle mixpanel instead of externalizing it
  • include mixpanel in packaged app module list
  • TypeScript error in whisper transcriber test (#395)
  • base64 stack overflow, auto-download UX, and shortcut tooltip on mic button (#394)
  • resolve esbuild version mismatch and TypeScript errors
  • use humanized entity type as tab label instead of "Loading…"
  • add feed entry point to tsup build config (#390)
  • show "Loading…" instead of entity type slug in drawer tab
  • split underscores and hyphens in intent classifier tokenizer
  • add @json-render/core and @json-render/react to desktop dependencies
  • externalize unprefixed Node built-ins in renderer bundles
  • show scope name instead of UUID when chaining from scope creation (#381)
  • update generated GraphQL files to remove debugMode and reactScanEnabled
  • bundle plugin-owned deps in renderer instead of externalizing
  • prevent search icon from overlapping placeholder in plugins explorer (#377)
  • remove Timeline section from workstream settings drawer (#376)
  • close entity drawer tab on plugin-initiated close (e.g. delete) (#372)
  • truncate long scope names in nav section headers
  • use hyphen separator in worktree branch names (#366)
  • Done button saves and closes the paste drawer
  • transpile rehype-sanitize for ESM compat (#362)
  • rewrite profiles migration to be incremental for production
  • address PR review — security hardening and race condition fixes
  • profile switch now correctly swaps plugins, quick actions, and defaults
  • re-seed quick actions from registry on profile switch
  • resolve profile content from .vienna/ subdirectory + invalidate renderer on switch
  • regenerate GraphQL codegen for content profile operations
  • unset ESBUILD_BINARY_PATH in all make/build scripts
  • align esbuild versions to ^0.27.0 across workspace
  • prevent silent failures when deleting workstreams (#355)
  • show persistent pin indicator for pinned workstreams and scopes
v0.0.20