## Terminal AI Features
- Add Terminal AI panel with command execution support
- Add term_get_scrollback tool for reading terminal output history
- Add terminal tool with command approval workflow
- Add auto-execute mode for trusted commands
- Add duplicate command detection to prevent AI loops
- Improve command response format with clear success markers
## Screenshot Chat (Experimental)
- Add screenshot chat window for quick AI conversations
- Add global shortcut support for screenshot capture
- Add experimental settings page
## Code Quality
- Fix all compiler warnings with proper analysis
- Remove unused imports and dead code
- Add #[allow(dead_code)] for reserved/planned features
- Remove deprecated terminal-plugin from recommendations
## Other Changes
- Update model registry with new capabilities
- Improve config observer system
- Add webview panel position fields (reserved)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Allow binding to 0.0.0.0 or :: to enable LAN access, with security
requirements:
1. Add is_valid_bind_host() and is_non_local_bind() helper functions
2. Allow 0.0.0.0 and :: as valid bind addresses
3. Require non-default API key when binding to all interfaces
4. Update validation in:
- save_config command
- hot_reload validation
- bootstrap validation
Security: When using 0.0.0.0 or ::, users must set a custom API key
(not the default "proxy_cast") to prevent unauthorized access.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Improve AWS Event Stream parsing to fix streaming response interruption:
1. Change JSON start detection to search for specific patterns instead of
simple '{' character. AWS Event Stream contains binary headers that may
have '{' in unexpected positions. Now searches for valid JSON patterns:
- {"content": - text content
- {"name": - tool call start
- {"toolUseId": - tool use event
- {"input": - tool input continuation
- {"stop": - stop event
- {"usage": - usage info
- {"contextUsagePercentage": - context usage
2. Handle standalone {"input":...} events for tool call input continuation.
Kiro may send tool calls in multiple events:
- {"name":"xxx","toolUseId":"xxx"} - start
- {"input":"..."} - input data (may be multiple)
- {"stop":true} - end
3. Handle standalone {"stop":true} events that close active tool calls.
This mirrors the fix from AIClient-2-API project.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add image handling for both Anthropic and OpenAI request translators
when converting to CodeWhisperer format.
Changes:
- Anthropic translator: Parse image blocks from message content and
convert to CWImage format (format + base64 data)
- OpenAI translator: Add get_images() method to ChatMessage to extract
images from data URLs in image_url content parts
- Both translators now pass images through ProcessedMessage to
UserInputMessage for current message and history
- Fix unused imports in frontend files
Image format: { format: "jpeg", source: { bytes: "base64_data" } }
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
The WSLShellProc struct uses parking_lot::Mutex, so we need to use
the same type when creating writer and master instances.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Fixed 20 translation entries with concatenated words and incorrect formatting
- Fixed critical bug in DOM replacer that caused partial translations
- Sort translation patches by length (longest first) to prevent substring replacement issues
- Fixed TypeScript and ESLint errors
- Added comprehensive documentation of fixes
## Backend Changes
- Add `get_provider_alias_config` and `get_all_alias_configs` Tauri commands
- Refactor AntigravityProvider to use fallback constants
- Export ANTIGRAVITY_MODELS_FALLBACK from providers module
- Update provider_pool_model to use shared model constant
- Add ProviderAliasConfig to model_registry
## Frontend Changes
- Modify ProviderModelSelector to handle alias providers independently
- Add aliasConfig state and loading logic
- Convert alias models to EnhancedModelMetadata format for display
- Add ModelAlias and ProviderAliasConfig TypeScript types
- Add getProviderAliasConfig/getAllAliasConfigs API functions
## Refactoring
- Remove routing components and commands (simplified architecture)
- Clean up unused router tests
- Update config observer pattern
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add detailed debug logging to AWS Event Stream parser
- Log bytes received and buffer state
- Log JSON parsing progress
- Log event generation counts
- Fix missing provider_id parameter in native agent
- chat_stream() now passes provider_id
- chat_stream_continue() now passes provider_id
These changes will help diagnose streaming truncation issues.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Remove duplicate Toaster component from App.tsx onboarding view
- Add toast id for deduplication to prevent stacking
- Extend error toast duration to 8 seconds for better readability
- Add console.error logging for debugging
Inspired by PR #71 from @perly6185-lab - thank you for the contribution!
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: perly6185-lab <perly6185-lab@users.noreply.github.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Fix ProviderType::from_str to support 'anthropic' and 'gemini_api_key' mappings
- Fix ChatNavbar provider selection to respect server default provider
- Fix duplicate KeyRound export in plugin-components
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>