Releases: brainplusplus/9ed
Releases · brainplusplus/9ed
v0.2.5
What's Changed
Features
- Atomic file writes with ETag / If-Match / optimistic concurrency
- Isolated adapter installs with per-adapter locking and state tracking
- MCP tool proxy configuration support in agent lifecycle
Reliability
- Stderr capture on ACP adapter startup for better error diagnostics
- Nil-pointer guard on closed channel in ACP client read loop
- WriteFileAtomic with rename-based writes prevents partial file content
- Optimistic concurrency control via HTTP ETag and 412 Precondition Failed
New Modules
- binary.go, npx.go, paths.go, registry.go, state.go in acpinstall
Tests
- Atomic writes, concurrent writes, platform detection, binary resolution, MCP agent config
Full Changelog: v0.2.4...v0.2.5
v0.2.4
Release v0.2.4
v0.2.3
Full Changelog: v0.2.2...v0.2.3
v0.2.2
v0.2.2
Highlights:
- 9ed is now a single full Web IDE mode with terminal-only mode removed.
- Browser is always enabled and Settings is now a global panel.
- Added global Tunnelings management with persisted configs, live status, restart control, and public URL display.
- Added About panel in Settings.
- Browser inspect can now switch between detailed element context and element screenshot mode for chat.
- Home branding, per-project lifecycle fixes, mobile/tablet picker improvements, and per-project chat/session cleanup from the current rebrand work are included.
v0.2.1
v0.2.1 - Responsive UI polish and embedded binary release
Highlights
- Added a polished 9ed logo and refreshed README positioning with a clearer slogan, quick links, and release-binary guidance.
- Improved mobile/tablet viewport handling so the app uses the real visual viewport more consistently.
- Refined the in-app browser auto mode to fit the available container width on tablet and mobile.
- Compacted chat and terminal controls for smaller screens, including VS Code-style terminal profile actions and icon-only clear/new controls.
- Added embedded frontend asset support for single-binary releases using the embedassets build tag.
Release Assets
- Linux: amd64, arm64
- Windows: amd64, arm64
- macOS: amd64, arm64
- SHA256 checksums are included in checksums.txt.
Verification
- npm run check
- npm run test
- npm run go:test
- npm run build
- npm run build:embedded
v0.2.0
v0.2.0 — Browser Inspect, Terminal↔Chat, Responsive State, Tunnel Fixes
Features
- Browser Element Inspector — 4-layer box model overlay (margin/border/padding/content), smart hit-test, rich tooltip, keyboard navigation (Tab/Shift+Tab/Esc), AI context injection, mini inspect panel (Styles/Events/A11y)
- Terminal ↔ Chat Integration — AI receives live terminal scrollback as context; agent routes terminal commands to active terminal; \Run in terminal\ button on shell code blocks in chat
- Terminal Tabs Per Project — terminal state persisted in workspace store, survives navigation
- Voice Input — dictate chat messages via Web Speech API with microphone access handling
- Consistent Responsive State — desktop, tablet, mobile share the same Zustand state; layout mode changes preserve panel state without remounting
- Browser Proxy Hardening — MutationObserver dynamic rewriting, JS property descriptor interception (HTMLScriptElement.src, HTMLLinkElement.href), CSS url() in inline styles, generic JS URL pattern rewriting
Bugfixes
- Tunnel auto-restart watchdog and graceful shutdown with timeout
- Tunnel output recording for diagnostics
- Responsive layout: eliminated duplicate tablet overlay state, unified via workspace store
New Environment Variables
- \TERMINAL_AI_MAX_LINES\ — max terminal lines sent to AI (default 100)
- \DEBUG_WATCHER\ — watcher-specific debug logs (requires DEBUG=true)
Docs
- Updated README, AGENTS.md, .env.example
Verification
- \go vet ./...\ ✓
- \go test ./...\ ✓
- \ sc --noEmit\ ✓
- \�ite build\ ✓
v0.1.4
Browser proxy hotfix: isolate proxied tab requests under /browser//, prevent stale iframe cache, and normalize same-origin root requests so sites like Google and tldraw do not fall back into 9ed app routes.
v0.1.3
v0.1.3
This release focuses on IDE refresh and session reliability.
Highlights:
- stabilizes chat session restore and transcript replay across refreshes
- improves assistant reply persistence so messages survive reloads more reliably
- hardens websocket reconnect behavior for chat, watcher, and terminal flows
- reduces bootstrap race conditions around workspace and chat state restoration
- adds broader regression coverage across frontend and backend restore/reconnect paths
v0.1.2
Rebrand go-webttyd to 9ed. Module renamed to github.com/brainplusplus/9ed. Data dir changed to ~/.9ed/. All branding updated. Tunnel docs improved. Version bumped to 0.1.2.
v0.1.1
Bug Fixes
File Explorer Auto-Refresh
- Fix new files not appearing in file explorer — files created by agents (or external tools) that arrive as
modifyevents instead ofcreateevents (common on Windows) now correctly trigger a tree refresh - Filter
.git,node_modules,dist, and other skipped directory events from the file watcher — eliminates noise that caused unnecessary tree refreshes
Git Panel Hardening
- Add
IsRepo()guard to all 17 git API handlers — prevents500 Internal Server Errorandfatal: not a git repositorywhen opening a non-git directory - Show "Not a Git repository" empty state in the Git panel when the project has no
.gitdirectory, with a hint to rungit init - Skip git status polling for non-git projects — saves unnecessary API calls every 5 seconds