Commit Graph

23 Commits

Author SHA1 Message Date
Dani a3c0187e55 feat: component page improvements and SEO-friendly URLs
• Complete component page implementation with cart functionality
• Clean component names (remove .md/.json extensions in display)
• SEO-friendly URLs: /component/type/name format
• Local/production URL detection for development compatibility
• Improved header actions positioning and responsive design
• API keys setup (Anthropic + E2B) for sandbox execution
• Enhanced cart functionality with clean path/name display
• Share dropdown positioning fix (opens upward)
• Compact back navigation styling

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-10 17:07:04 -04:00
Dani 840138efe4 Add real-time streaming output to E2B sandbox execution
- Implement on_stdout/on_stderr callbacks for live output streaming
- Add progress indicators during long operations
- Remove unnecessary warning message for aitmpl.com API
- Create API endpoint for agents list at /docs/api/agents.json
- Update getAvailableAgentsFromGitHub to use aitmpl.com API fallback
- Improve user experience with visual feedback during execution
- Version bump to 1.21.5

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 17:54:49 -04:00
Dani 2b94c4a8f1 Update E2B execution time expectation message
- Change from '30-60 seconds' to 'a few minutes'
- More accurate for complex prompts
- Sets better user expectations

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 17:18:20 -04:00
Dani 22defa982f Simplify E2B loading indicator - remove animation complexity
- Remove time and threading imports that caused errors
- Use simple static spinner icon instead of animation
- Clean and simple loading message
- Avoids 'time not associated with value' error

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 17:13:04 -04:00
Dani 0795392d91 Add animated loading indication for E2B execution
- Import time and threading modules for animations
- Add animated dots (Processing...) before execution
- Show brief animation to indicate activity
- Better visual feedback during synchronous operations

Note: Full spinner not possible during blocking E2B execution

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 17:07:32 -04:00
Dani df8cc60513 Improve E2B execution loading message
- Replace misleading 'Real-time output will appear' message
- Add clear 'Executing... Please wait' message
- Include time expectation (30-60 seconds)
- Add visual progress indicator placeholder
- Better user feedback during synchronous execution

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 16:57:17 -04:00
Dani cda97be9f6 Fix E2B command display to show actual user prompt
- Display the actual user prompt in the command output
- Keep enhanced prompt for internal execution
- Truncate long prompts to 100 characters for display
- Maintains prompt engineering while improving user visibility

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 16:48:05 -04:00
Dani 82ed16aba0 Add prompt engineering to E2B sandbox for better code generation
- Create enhanced prompts with clear instructions for Claude Code
- Include agent context when agents are specified
- Instruct Claude to execute requests immediately and create files
- Parse agent names from components string correctly
- Show agent usage in execution logs

This ensures Claude generates actual code instead of just acknowledging requests

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 16:36:51 -04:00
Dani 98ecceeed3 Add cloud sandbox execution loading message
- Add visual separator and loading message after permissions check
- Show 'Executing Claude Code in secure cloud sandbox' message
- Include status indicators for processing, isolation, and output
- Improve user feedback during execution wait time

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 16:25:32 -04:00
Dani 1caddd7fe6 Fix E2B file download location: use current working directory instead of relative paths
- Use os.getcwd() to get the directory where command was executed
- Download files to sandbox-{id} folder in user's current directory
- Remove hardcoded relative path assumptions (../../)
- Add debugging output to show current working directory
- Ensures files are downloaded where user expects them
2025-09-07 11:10:26 -04:00
Dani e0accf5e7e Fix E2B sandbox file downloads to create project folder in root directory 2025-09-06 19:57:03 -04:00
Dani 49513876fd Fix E2B sandbox to download files directly to project root
Changes:
- E2B launcher now downloads files to ./ (project root) instead of ./e2b-outputs/
- Updated confirmation dialog to show "Files will be downloaded to project root directory"
- Updated modal feature text to "Files downloaded to project root"
- Removed timestamp folder organization for simpler file management

This ensures generated files are immediately available in the project root
where users expect them, without needing to navigate to subfolders.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-06 15:56:38 -04:00
Dani 9510d479b5 Move E2B sandbox outputs to project root with organized folders
Changes:
- E2B outputs now save to ./e2b-outputs/{timestamp}_{prompt}/ in project root
- No longer creates files inside .claude directory
- Added timestamp and sanitized prompt name for unique folder organization
- Improved find command to exclude .claude and node_modules directories
- Enhanced file filtering and organization for better user experience

Structure:
./e2b-outputs/
  └── 20250106_143025_Create-React-app/
      ├── index.html
      ├── app.js
      └── styles.css

This keeps E2B sandbox outputs separate from Claude Code configuration
and makes it easier for users to find and manage their generated files.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-06 13:33:23 -04:00
Dani 44063b036f Fix E2B sandbox timeout issues with extended timeouts
- Extended Node.js spawn timeout from default to 15 minutes (900 seconds)
- Increased Python E2B launcher timeout from 5 to 10 minutes (600 seconds)
- Updated monitor script to use same extended timeout
- Added timeout handling with user-friendly error messages
- Added timeout notification to inform users of extended wait times

Resolves timeout issues with complex Claude Code operations in E2B sandboxes.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-04 20:38:38 -04:00
Dani 198c36288f Complete E2B Sandbox System - Production Ready v1.20.3
🎉 Major Features Added:
✅ Automatic file download from sandbox to local ./e2b-output/
✅ Extended timeouts (15 minutes) with intelligent timeout management
✅ Comprehensive logging with step-by-step execution monitoring
✅ Environment verification (Claude Code installation, permissions)
✅ Advanced debugging tools and comprehensive error handling

📁 New Files:
- e2b-monitor.py: Real-time sandbox monitoring with system resources tracking
- SANDBOX_DEBUGGING.md: Complete troubleshooting and debugging guide

🔧 Enhanced Features:
- E2B SDK v2.0.2 compatibility with Sandbox.create() API
- Automatic download of HTML, CSS, JS, TS, Python, JSON, Markdown files
- Detailed logging of command execution with exit codes and output lengths
- Retry logic for WebSocket/connection issues
- Environment checks (PATH, permissions, Claude Code installation)

🎯 Production Ready:
- Fully functional E2B cloud sandbox integration
- Comprehensive error handling and user guidance
- Advanced debugging capabilities for troubleshooting
- Automatic cleanup and resource management

This completes the E2B sandbox integration as a fully production-ready system
for executing Claude Code in secure isolated cloud environments.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-04 17:27:36 -04:00
Dani 983c774b71 Fix E2B launcher to use Sandbox.create() API for v2.0.2
- Replace deprecated Sandbox() constructor with Sandbox.create() method
- Use correct v2.0.2 API signature with named parameters
- Based on official E2B v2.0.2 API documentation

Resolves API compatibility issues with E2B SDK v2.0.2.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-04 14:20:38 -04:00
Dani 9833640d2e Update E2B launcher for SDK v2.0.2 API compatibility
- Fix template parameter to be positional argument instead of keyword
- Change env_vars to envs parameter (v2.0.2 API change)
- Update requirements.txt to use E2B SDK v2.0.2
- Based on official e2b-cookbook example for Anthropic Claude Code

Fixes WebSocket connection issues by using latest E2B SDK that no longer relies on WebSockets.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-04 14:15:39 -04:00
Dani 8ec8fb819e Fix WebSocket connection issues in E2B sandbox launcher
- Add retry logic with up to 3 attempts for WebSocket failures
- Implement shorter connection timeouts to fail fast
- Add detailed troubleshooting messages for common issues
- Handle network/firewall restriction errors gracefully

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-04 13:50:53 -04:00
Dani de73b1eb4f Fix E2B Sandbox constructor parameters
- Change 'envs' to 'env_vars' parameter
- Add explicit 'template' and 'api_key' parameters
- Use correct E2B API v2 syntax
- System now successfully creates sandbox (tested with fake keys)

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-04 12:20:29 -04:00
Dani 1e9debfb83 Add debugging info to E2B launcher script
- Print Python executable and path information
- Auto-install E2B if import fails
- Better error messages for troubleshooting

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-04 12:17:38 -04:00
Dani 587ae2e66e Add E2B Claude Code Sandbox integration with CLI API key support
- Add E2B sandbox component with Python launcher script
- Support CLI parameters for E2B and Anthropic API keys (--e2b-api-key, --anthropic-api-key)
- Add comprehensive error handling for file downloads
- Make dotenv import optional in launcher script
- Add complete blog post with sandbox usage guide
- Update component generation system to support sandbox category

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-04 11:37:33 -04:00
Dani d7cc99e945 add .env.example 2025-09-04 11:31:20 -04:00
Dani 3f5400acc7 add e2b sandbox 2025-09-04 11:13:42 -04:00