Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
83 commits
Select commit Hold shift + click to select a range
5a299a8
feat: initial commit of browser AI extension with background, content…
Sathursan-S Oct 4, 2025
00a4c85
Initial plan
Copilot Oct 4, 2025
c1b6d02
Add WebSocket server and Chrome extension UI with chat interface and …
Copilot Oct 4, 2025
bd9fe2a
Fix TypeScript errors and make API key configuration optional
Copilot Oct 4, 2025
def1d9e
Add test suite, quick start guide, and update documentation for Chrom…
Copilot Oct 4, 2025
be7bf56
Add comprehensive implementation summary and finalize Chrome extension
Copilot Oct 4, 2025
e0b99b3
Add comprehensive documentation: UI guide, main README, and visual re…
Copilot Oct 4, 2025
9c6284b
Add CDP WebSocket Server for Browser.AI Extension
Sathursan-S Oct 4, 2025
4f9efc2
feat: add notification system with loading state and user interaction…
Sathursan-S Oct 4, 2025
5c1826a
feat: Implement log streaming fix and unify protocol definitions
Sathursan-S Oct 5, 2025
60c1c37
feat: Enhance log handling and task management in SidePanel and event…
Sathursan-S Oct 5, 2025
721aaca
Improve UX with settings page, dev mode, user-friendly messages, and …
Copilot Oct 5, 2025
6f6607d
Add comprehensive UX improvements documentation
Copilot Oct 5, 2025
5ce8c94
Fix ControlButtons rendering and pause/resume/stop state management
Copilot Oct 5, 2025
68659f5
Add comprehensive documentation for control buttons state management fix
Copilot Oct 5, 2025
d61ae33
Implement global state persistence and proper control button rendering
Copilot Oct 5, 2025
545ee4e
Add comprehensive state management documentation
Copilot Oct 5, 2025
fc4a3e5
Add final state management summary and complete implementation
Copilot Oct 5, 2025
8bc860d
Enhance SidePanel with task completion and failure notifications; ref…
Sathursan-S Oct 5, 2025
ae1334f
Refactor SidePanel and ControlButtons for improved state management; …
Sathursan-S Oct 6, 2025
2547654
Implement comprehensive state management and UI/UX improvements for B…
Sathursan-S Oct 6, 2025
301c9f7
Merge pull request #11 from Sathursan-S/copilot/fix-0be6bf53-c36d-43b…
Sathursan-S Oct 6, 2025
9c9c2d4
feat: initial commit of browser AI extension with background, content…
Sathursan-S Oct 4, 2025
ee5f81d
Initial plan
Copilot Oct 4, 2025
7e84ea4
Add WebSocket server and Chrome extension UI with chat interface and …
Copilot Oct 4, 2025
9c078c9
Fix TypeScript errors and make API key configuration optional
Copilot Oct 4, 2025
f1b9c3c
Add test suite, quick start guide, and update documentation for Chrom…
Copilot Oct 4, 2025
14d3787
Add comprehensive implementation summary and finalize Chrome extension
Copilot Oct 4, 2025
a2465e5
Add comprehensive documentation: UI guide, main README, and visual re…
Copilot Oct 4, 2025
b166a22
Add CDP WebSocket Server for Browser.AI Extension
Sathursan-S Oct 4, 2025
f228f38
feat: add notification system with loading state and user interaction…
Sathursan-S Oct 4, 2025
9b9d424
feat: Implement log streaming fix and unify protocol definitions
Sathursan-S Oct 5, 2025
024f754
feat: Enhance log handling and task management in SidePanel and event…
Sathursan-S Oct 5, 2025
7286139
Improve UX with settings page, dev mode, user-friendly messages, and …
Copilot Oct 5, 2025
6166b8c
Add comprehensive UX improvements documentation
Copilot Oct 5, 2025
032692e
Fix ControlButtons rendering and pause/resume/stop state management
Copilot Oct 5, 2025
47f69d7
Add comprehensive documentation for control buttons state management fix
Copilot Oct 5, 2025
37e07fa
Implement global state persistence and proper control button rendering
Copilot Oct 5, 2025
a42e3c8
Add comprehensive state management documentation
Copilot Oct 5, 2025
09da013
Add final state management summary and complete implementation
Copilot Oct 5, 2025
b576f40
Enhance SidePanel with task completion and failure notifications; ref…
Sathursan-S Oct 5, 2025
b80419a
Refactor SidePanel and ControlButtons for improved state management; …
Sathursan-S Oct 6, 2025
caab7db
Implement comprehensive state management and UI/UX improvements for B…
Sathursan-S Oct 6, 2025
11795fa
Merge branch 'feat/browser-extention' of https://github.com/Sathursan…
Sathursan-S Oct 6, 2025
48d547c
Refactor WebSocket server and extension protocol for improved type sa…
Sathursan-S Oct 7, 2025
cda8ddc
Enhance SidePanel with task result handling and notifications; refact…
Sathursan-S Oct 8, 2025
7e069bc
Implement Conversation Mode and Chatbot Service for Browser.AI Extension
Dhahlan3890 Oct 8, 2025
0de56fb
Add voice input and speech output features with UI enhancements
Dhahlan3890 Oct 8, 2025
5f28114
Enhance Text-to-Speech Service to prioritize female voices and add me…
Dhahlan3890 Oct 8, 2025
cad4374
Simplify Browser.AI extension for local Playwright setup; remove unne…
Sathursan-S Oct 8, 2025
9abefe7
Clear GEMINI_API_KEY in .env.example for security reasons
Sathursan-S Oct 8, 2025
900dd27
Create CHANGELOG.md and CHANGELOG_SUMMARY.md to document project chan…
Sathursan-S Oct 8, 2025
7e183d4
Add comprehensive event system documentation and integration guides
Sathursan-S Oct 9, 2025
715cc13
Enhance output handling and logging in various components; add GIF ge…
Sathursan-S Oct 9, 2025
8e5ff2f
Merge remote-tracking branch 'origin/feat/browser-extention' into fea…
Sathursan-S Oct 9, 2025
6f4063f
Merge branch 'feat/browser-extention' into feat/extension-with-chatbo…
Sathursan-S Oct 9, 2025
fcf0a15
Add AI-powered search functionality and refine action models
Sathursan-S Oct 9, 2025
f70f53c
Enhance search functionality by adding AI-driven suggestions for rese…
Sathursan-S Oct 9, 2025
46f513e
feat: Implement Stuck Detection System with User Help Integration
Sathursan-S Oct 9, 2025
f1ebe0c
feat: Enhance configuration management for Browser.AI
Sathursan-S Oct 9, 2025
c6b5deb
Refactor ExecutionLog and TaskStatus components for improved UI and f…
Himosh Oct 9, 2025
8404d88
Merge branch 'dev-himosh' into feat/extension-with-chatbot-and-voice
Himosh Oct 9, 2025
31a2011
feat: Implement Voice Conversation Service for hands-free interaction
Sathursan-S Oct 9, 2025
76d39ec
ui changes
Himosh Oct 9, 2025
03b84c9
Merge branch 'feat/extension-with-chatbot-and-voice' of https://githu…
Sathursan-S Oct 9, 2025
bd7b06c
Add Live Voice Mode documentation and implementation files
Sathursan-S Oct 9, 2025
5feb74a
feat: Implement URL and text verification actions for enhanced email …
Dhahlan3890 Oct 9, 2025
b73c088
Merge branch 'feat/extension-with-chatbot-and-voice' of https://githu…
Dhahlan3890 Oct 9, 2025
6488d1d
Merge remote-tracking branch 'origin/dev-himosh' into feat/extension-…
Sathursan-S Oct 9, 2025
ac004d2
Refactor ConversationMode component and styles
Sathursan-S Oct 9, 2025
352f57a
Merge branch 'feat/extension-with-chatbot-and-voice' of https://githu…
Sathursan-S Oct 9, 2025
f7ba639
refactor: Clean up whitespace and improve formatting in SidePanel and…
Sathursan-S Oct 9, 2025
ba5ab75
Add new icon images for browser AI extension
Sathursan-S Oct 10, 2025
f1433ff
Merge branch 'feat/extension-with-chatbot-and-voice' of https://githu…
Sathursan-S Oct 10, 2025
21dcf23
refactor: Update initial conversation mode state and improve code for…
Sathursan-S Oct 11, 2025
53b76db
feat: Add project launcher scripts and examples for Browser.AI setup
Sathursan-S Oct 12, 2025
7771169
feat: Implement complete voice features with detailed documentation a…
Sathursan-S Oct 12, 2025
7e4c547
Refactor extension UI for improved UX and modern aesthetic
google-labs-jules[bot] Nov 23, 2025
882d093
fix: Update dependencies and improve user data directory handling for…
Sathursan-S Nov 25, 2025
a004734
Refactor extension UI for improved UX and modern aesthetic
google-labs-jules[bot] Nov 25, 2025
34d901e
feat: Enhance SidePanel with voice controls and improve task result h…
Sathursan-S Nov 25, 2025
14cc508
feat: Add conversation mode to SidePanel with message handling and mo…
Sathursan-S Nov 27, 2025
362543d
Refactor conversation mode and enhance audio visualization features
Sathursan-S Nov 27, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .env.example
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
OPENAI_API_KEY=
ANTHROPIC_API_KEY=
GEMINI_API_KEY=AIzaSyDyrZzY2jvHWhHmcmttg6JR2ciAvKRpIX4
GEMINI_API_KEY=

# LogLevel: Set to debug to enable verbose logging, set to result to get results only. Available: result | debug | info
BROWSER_AI_LOGGING_LEVEL=info
1 change: 1 addition & 0 deletions .github/copilot-instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,7 @@ async def custom_action(params: YourModel):
- `examples/features/` - Real-world usage patterns and advanced features
- `launch.py` - Smart dependency management and launcher patterns
- `browser_ai_gui/main.py` - GUI application entry points and argument parsing
- `docs/` - Documentation and technical specifications (keep all docs and md files here within relevent folders)

## Memory and Performance Notes

Expand Down
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -185,4 +185,6 @@ gcp-login.json
.idea
*.txt
*.pdf
*.csv
*.csv

output
267 changes: 267 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,267 @@
# CHANGELOG - Browser.AI

All notable changes to the Browser.AI project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

---

## [Unreleased] - 2025.10.09

### Added - Extension Local Development Simplification

#### Browser Extension (`browser_ai_extension/`)
- **feat**: Added simplified CDP endpoint detection for local Playwright setup
- Hardcoded `http://localhost:9222` for local development
- Removed complex dynamic CDP endpoint detection
- Files: `src/sidepanel/SidePanel.tsx`, `src/background/index.ts`

- **docs**: Added `LOCAL_SETUP_SIMPLIFICATION.md` documentation
- Explains changes for local Playwright setup
- Provides usage instructions and architecture comparison
- Documents commented-out code for future reference

#### Code Optimization
- **chore**: Commented out unnecessary CDP proxy code for local setup
- Removed `chrome.debugger` API dependency for local development
- Commented out extension-proxy mode handlers
- Simplified message handling in background script
- Files affected:
- `browser_ai_extension/browse_ai/src/background/index.ts`
- `browser_ai_extension/browse_ai/src/sidepanel/SidePanel.tsx`

- **perf**: Reduced complexity for local development workflow
- No tab querying needed
- No runtime CDP endpoint detection
- Direct connection to `localhost:9222`

### Changed

#### Extension Architecture
- **update**: Modified CDP connection strategy
- From: Extension-proxy mode with dynamic tab detection
- To: Direct CDP mode with hardcoded local endpoint
- Maintains compatibility for production deployment (code preserved in comments)

#### Background Script
- **update**: Simplified message handler
- Removed: `GET_CDP_ENDPOINT`, `ATTACH_DEBUGGER`, `DETACH_DEBUGGER`, `SEND_CDP_COMMAND` handlers
- Kept: `SHOW_NOTIFICATION` handler for task completion popups
- Maintained: Extension icon click handler for side panel

#### Side Panel
- **update**: Simplified `getCdpEndpoint()` function
- Removed async tab query logic
- Removed background script messaging for CDP
- Added informative log message for local endpoint usage

### Documentation

- **docs**: Enhanced inline code comments
- Added clear markers for commented-out code sections
- Explained reasons for code removal/commenting
- Preserved original functionality documentation

- **docs**: Updated extension documentation structure
- `LOCAL_SETUP_SIMPLIFICATION.md` - Local development guide
- `CDP_WEBSOCKET_README.md` - CDP WebSocket architecture
- `PROTOCOL.md` - WebSocket protocol specification

### Developer Experience

- **feat**: Simplified local development setup
- One-step CDP endpoint configuration
- Reduced boilerplate for Playwright integration
- Clearer separation between local and production modes

- **chore**: Improved code maintainability
- Commented code preserved for future production use
- Clear migration path back to full extension mode
- Comprehensive explanatory comments

---

## [0.2.0] - 2025.10.08

### Added - Chrome Extension Support

#### Browser Extension (`browser_ai_extension/`)
- **feat**: Initial Chrome extension implementation
- Side panel UI with React + TypeScript
- WebSocket integration with Browser.AI server
- Real-time task execution and log streaming
- Notification system for task completion
- Settings management with persistence

#### Extension Features
- **feat**: Task management interface
- Start/stop/pause/resume task controls
- Real-time status updates
- Task result display
- Connection status indicators

- **feat**: CDP (Chrome DevTools Protocol) integration
- Extension-proxy mode for CDP command routing
- Tab-specific browser context management
- Debugger attachment/detachment lifecycle
- CDP command proxy through background script

- **feat**: WebSocket Protocol implementation
- `/extension` namespace for extension communication
- Bidirectional event streaming
- Type-safe message passing (TypeScript/Python)
- Auto-reconnection support

#### GUI Components
- **feat**: Web-based GUI (`browser_ai_gui/`)
- Flask + SocketIO server
- WebSocket server for extension communication
- CDP WebSocket server for browser control
- Event adapter for log streaming

### Documentation

- **docs**: Extension documentation suite
- `EXTENSION_README.md` - Getting started guide
- `CDP_WEBSOCKET_README.md` - CDP architecture
- `PROTOCOL.md` - WebSocket protocol specification
- `PROTOCOL_IMPLEMENTATION_SUMMARY.md` - Implementation details
- `LOG_STREAMING_FIX.md` - Log streaming implementation
- `STATE_MANAGEMENT.md` - State persistence guide
- `UI_FEATURES.md` - UI components documentation
- `QUICK_START.md` - Quick start guide

---

## [0.1.0] - 2025.10.04

### Added - Initial Release

#### Core Framework (`browser_ai/`)
- **feat**: Agent service implementation
- LLM-powered browser automation
- Multi-model support (OpenAI, Anthropic, etc.)
- Vision capabilities for screenshot analysis
- Message management with token awareness

- **feat**: Controller with action registry
- Modular action system
- Custom action registration
- Parameter validation with Pydantic
- Action exclusion capabilities

- **feat**: Browser service
- Enhanced Playwright wrapper
- Browser configuration management
- Automatic browser lifecycle handling
- CDP connection support

- **feat**: DOM processing service
- JavaScript injection for element detection
- Visual element highlighting
- Coordinate mapping system
- Viewport management

#### Examples (`examples/`)
- **feat**: Comprehensive example collection
- Simple usage examples
- Browser configuration examples
- Custom function examples
- Feature demonstrations
- Integration examples
- Use case scenarios

#### Documentation (`docs/`)
- **docs**: Technical specification suite
- `architecture-overview.md` - System architecture
- `agent-implementation.md` - Agent details
- `controller-actions.md` - Action system
- `browser-management.md` - Browser control
- `dom-processing.md` - DOM handling
- `workflows-integration.md` - Integration guide

### Infrastructure

- **chore**: Project setup
- Python package configuration (`pyproject.toml`)
- UV package manager integration
- Development dependencies
- Testing framework setup

- **chore**: Development tools
- Launch script for GUI dependencies
- Test utilities
- Configuration management

---

## Version History Summary

- **[Unreleased]** - Local Playwright setup simplification (2025.10.09)
- **[0.2.0]** - Chrome extension support (2025.10.08)
- **[0.1.0]** - Initial release (2025.10.04)

---

## Migration Guide

### From Extension-Proxy to Local CDP (v0.2.0 → Unreleased)

If you're using the extension with local Playwright setup:

1. **Update to latest code**
```bash
git pull origin feat/browser-extention
```

2. **Rebuild extension**
```bash
cd browser_ai_extension/browse_ai
npm run build
```

3. **Start Chrome with CDP**
```bash
chrome.exe --remote-debugging-port=9222 --user-data-dir=./chrome-debug
```

4. **No configuration needed** - Extension automatically uses `localhost:9222`

### Reverting to Extension-Proxy Mode

If you need full extension-proxy functionality:

1. Uncomment CDP proxy code in:
- `browser_ai_extension/browse_ai/src/background/index.ts`
- `browser_ai_extension/browse_ai/src/sidepanel/SidePanel.tsx`

2. Rebuild extension

3. Reload in Chrome

---

## Contributing

When adding entries to this changelog:

1. **Group changes** by category: Added, Changed, Removed, Fixed, Deprecated, Security
2. **Use semantic versioning** for version numbers
3. **Include dates** in yyyy.MM.dd format
4. **Reference files** that were changed
5. **Explain impact** on users/developers
6. **Link to issues/PRs** when applicable

---

## Maintainers

- **Project**: Browser.AI
- **Repository**: Browser.AI by Sathursan-S
- **Branch**: feat/browser-extention (development)
- **License**: See LICENSE file

---

*For extension-specific changes, see `browser_ai_extension/browse_ai/CHANGELOG.md`*
Loading