docs: Update README and add CHANGELOG for v1.2.0

Added v1.2.0 release notes documenting CLI session-based Full Stack mode
and all bug fixes included in this release.

- Updated version badge to 1.2.0
- Added comprehensive v1.2.0 release notes with:
  - New CLI session-based terminal mode
  - Shell command API endpoint
  - Smart command detection
  - Bug fixes (terminal creation, XSS, memory leaks, etc.)
  - Technical details and security notes
- Created CHANGELOG.md following Keep a Changelog format

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
uroma
2026-01-20 16:09:55 +00:00
Unverified
parent 9b9ff5456d
commit db711d5bdf
2 changed files with 144 additions and 1 deletions

View File

@@ -6,12 +6,81 @@
[![Express](https://img.shields.io/badge/Express-4.22-blue)](https://expressjs.com/)
[![SQLite](https://img.shields.io/badge/SQLite-3.0-orange)](https://www.sqlite.org/)
[![License](https://img.shields.io/badge/License-ISC-blue)](LICENSE)
[![Version](https://img.shields.io/badge/Version-1.1.0-brightgreen)](https://github.rommark.dev/admin/ClaudeCLI-Web)
[![Version](https://img.shields.io/badge/Version-1.2.0-brightgreen)](https://github.rommark.dev/admin/ClaudeCLI-Web)
---
## Version History
### v1.2.0 (2026-01-20)
**🚀 Major Feature: CLI Session-Based Full Stack Mode**
This release introduces a simplified Full Stack mode using Claude Code CLI sessions instead of WebContainers, eliminating complex COOP/COEP header requirements and reducing bundle size by ~350KB.
#### Changes
**✨ New Features**
- **CLI Session-Based Terminal Mode** - Execute shell commands directly in Claude Code CLI sessions
- Spawns bash process for command execution
- Captures stdout, stderr, and exit codes
- Real-time output streaming via events
- No SharedArrayBuffer or special headers required
- **Shell Command API** - `POST /claude/api/shell-command` endpoint for executing commands
- **Smart Command Detection** - Automatically detects shell commands vs conversational messages
- Warns when conversational messages are sent in Terminal mode
- Auto-switches to Chat mode for non-shell commands
**🔧 Improvements**
- **Simplified Architecture** - Removes WebContainer dependency
- Faster startup (no 350KB bundle download)
- Better error handling
- Uses existing Claude Code infrastructure
- **Terminal Mode Reliability** - Fixed terminal creation failures
- Removed terminalManager reference errors
- Added fallback to native command execution
- **Project-Based Session Filtering** - Improved session filtering logic
- Path-based matching for accurate project assignment
- Better handling of nested directories
**🐛 Bug Fixes**
- Fixed terminal creation failure in Full Stack mode ("Failed to create terminal" error)
- Fixed WebContainer SharedArrayBuffer serialization errors
- Fixed session filtering showing unrelated sessions
- Fixed memory leaks from setInterval() calls
- Fixed XSS vulnerability in autocomplete (file names now escaped)
- Fixed sendMessage() undefined errors
**📝 Technical Details**
- `services/claude-service.js`:
- Added `executeShellCommand()` method for spawning bash processes
- Captures stdout/stderr with real-time event emission
- Returns Promise with exitCode, stdout, stderr
- `server.js`:
- Added `POST /claude/api/shell-command` endpoint
- Requires authentication via `requireAuth` middleware
- Validates sessionId and command parameters
- `public/claude-ide/chat-functions.js`:
- Rewrote `handleWebContainerCommand()` to use CLI sessions
- Added `sendShellCommand()` helper for API calls
- Smart command detection for shell vs conversational
- Auto-mode switching suggestions
**🔒 Security**
- All shell command endpoints require authentication
- Command injection protection via bash shell spawning
- Proper error handling for failed commands
**⚙️ Compatibility**
- Requires Claude Code CLI to be installed and accessible
- No special HTTP headers needed (removes COOP/COEP requirement)
- Maintains backward compatibility with Chat mode
---
### v1.1.0 (2026-01-19)
**🚀 Major Feature: HTTP Polling for Terminal Output**