Get the AI Browser Research Agent running locally in under 5 minutes using Docker Compose!
- Docker Desktop installed (Download here)
- Browserbase account (Sign up for free)
- Anthropic API key (Get one here)
That's it! Docker handles everything else (Node.js, TypeScript, WebSockets, etc.)
git clone <your-repo-url>
cd render-browser-research-agent- Sign up at browserbase.com
- Go to your dashboard
- Copy your API Key (starts with
bb_) - Copy your Project ID
- Go to console.anthropic.com
- Sign up or log in
- Navigate to API Keys
- Create a new API key (starts with
sk-ant-) - Copy the key (shown only once!)
Create a file named .env in the root directory:
# Copy this template and fill in your actual API keys
cat > .env << 'EOF'
# Browserbase Configuration (REQUIRED)
BROWSERBASE_API_KEY=bb_your_actual_api_key_here
BROWSERBASE_PROJECT_ID=your_project_id_here
# Anthropic Configuration (REQUIRED)
ANTHROPIC_API_KEY=sk-ant-your_actual_key_here
# Optional: Choose AI model (default: claude-3-5-sonnet-20241022)
ANTHROPIC_MODEL=claude-3-5-sonnet-20241022
EOFImportant: Replace the placeholder values with your real API keys!
docker compose up -dThis single command will:
- β Build and start the backend API with WebSocket support
- β Build and start the frontend UI
- β Configure automatic health checks
- β Set up networking between services
- β Enable auto-restart on failure
First-time setup takes 2-3 minutes to build Docker images. Subsequent starts are instant!
Once the containers are running, open your browser to:
You should see the chat interface. Try entering:
render.comhttps://anthropic.comstripe.com
Watch as the agent crawls the website in real-time and provides AI-generated insights!
That's it! You now have a fully functional AI-powered web research agent with:
- Real-time browser automation (Browserbase + Playwright)
- AI-powered analysis (Anthropic Claude)
- Beautiful chat interface with live updates
- WebSocket-based progress tracking
# All services
docker compose logs -f
# Just backend
docker compose logs -f backend
# Just frontend
docker compose logs -f frontenddocker compose downdocker compose restartdocker compose up -d --build| Service | Port | Purpose |
|---|---|---|
| Frontend | http://localhost:3000 | Chat UI |
| Backend API | http://localhost:3001 | WebSocket + REST API |
docker compose psYou should see both services with status "Up" and "healthy" for backend.
curl http://localhost:3001/healthShould return:
{
"status": "ok",
"timestamp": "2025-11-22T12:00:00.000Z",
"websocketConnections": 0
}- Open http://localhost:3000
- Enter a URL like
render.com - Click Analyze or press Enter
- Watch the real-time progress updates
- Receive an AI-generated summary!
If you see errors about ports 3000 or 3001 already being used:
# Find what's using the ports
lsof -i :3000
lsof -i :3001
# Stop those services or edit docker-compose.yml to use different ports- Verify your API keys are correct in
.env - Make sure you didn't include quotes around the API keys
- Check for extra spaces or newlines
- Ensure Browserbase key starts with
bb_ - Ensure Anthropic key starts with
sk-ant-
- Check your Browserbase account is active at browserbase.com
- Verify you have available sessions in your plan
- Confirm both
BROWSERBASE_API_KEYandBROWSERBASE_PROJECT_IDare correct - Check Browserbase status page for any outages
- Verify your API key is active at console.anthropic.com
- Check your account has available credits
- Confirm billing information is set up
- Review backend logs:
docker compose logs backend
# Stop everything and rebuild
docker compose down
docker compose up -d --build
# Check logs for specific errors
docker compose logs -fTo completely reset everything and start from scratch:
# WARNING: This removes all containers and images!
docker compose down
docker system prune -f
docker compose up -d --build- Free tier: 50 sessions/month (perfect for testing!)
- Session duration: Typically 1-2 minutes per analysis
- Paid plans: Start at $50/month for 500 sessions
Tip: Use the free tier for development and testing!
- Per analysis cost:
- Claude 3.5 Haiku: ~$0.001-0.005 (fastest, cheapest)
- Claude 3.5 Sonnet: ~$0.01-0.03 (recommended, best balance)
- Claude 3 Opus: ~$0.05-0.15 (most capable, highest quality)
Tip: Start with Sonnet (default) for the best balance of speed, quality, and cost!
If you want to learn without spending money:
- Use Browserbase free tier (50 sessions/month)
- Anthropic offers $5 in free credits for new accounts
- Analyze smaller websites with fewer pages (set maxPages to 1-2)
Edit .env to change the AI model:
# For faster, cheaper analysis:
ANTHROPIC_MODEL=claude-3-5-haiku-20241022
# For best balance (default):
ANTHROPIC_MODEL=claude-3-5-sonnet-20241022
# For maximum quality and detail:
ANTHROPIC_MODEL=claude-3-opus-20240229Then restart:
docker compose restart backendAfter analyzing a website, you can ask follow-up questions about it! The session lasts 30 minutes:
- "What are their main products?"
- "Who is their target audience?"
- "Tell me about their pricing"
Use the slider in the UI to control how many pages to analyze (1-10 pages):
- 1-2 pages: Quick overview, fastest
- 3-5 pages: Good balance, recommended
- 6-10 pages: Comprehensive analysis, slower
Ready to share your app with the world? Deploy to Render.com for production use!
π Continue to Production Deployment Guide β
Take your local setup to production in just a few clicks!
- β One-click deployment using our included blueprint
- β Automatic HTTPS with SSL certificates
- β Auto-deploy on git push - continuous deployment
- β Built-in monitoring and logs
- β Zero DevOps hassle - Render handles infrastructure
- β Free trial available - Test before you commit
Monthly Cost: ~$14 (Starter plan for both services)
Before deploying to Render:
- β Your code in a GitHub repository (public or private)
- β Your API keys ready (Browserbase + Anthropic)
- β A Render.com account (Sign up for free)
If you haven't already:
# Initialize git (if not already done)
git init
git add .
git commit -m "Initial commit"
# Create a new repository on GitHub, then:
git remote add origin https://github.com/yourusername/your-repo-name.git
git push -u origin main- Go to Render Dashboard
- Click New β Blueprint
- Connect your GitHub account (if not already connected)
- Select your repository
- Render will automatically detect the
render.yamlfile β¨
Render will prompt you for the required environment variables:
| Variable | Description | Example |
|---|---|---|
BROWSERBASE_API_KEY |
Your Browserbase API key | bb_abc123... |
BROWSERBASE_PROJECT_ID |
Your Browserbase project ID | proj_xyz789... |
ANTHROPIC_API_KEY |
Your Anthropic API key | sk-ant-api03... |
Optional Variables:
| Variable | Default | Description |
|---|---|---|
ANTHROPIC_MODEL |
claude-3-5-sonnet-20241022 |
Choose AI model (Haiku/Sonnet/Opus) |
- Review your configuration
- Click Apply
- Watch the magic happen! π
Deployment takes 3-5 minutes:
- β Backend builds and starts
- β Frontend builds and starts
- β Services connect automatically
- β Health checks verify everything works
Once deployment is complete, Render provides you with URLs:
- Frontend:
https://your-app-name.onrender.com - Backend:
https://your-app-name-backend.onrender.com
Open the frontend URL and start analyzing websites! π
Render automatically configures:
- π HTTPS/SSL certificates - Secure by default
- π Auto-deploy - Push to GitHub β automatic deployment
- π Health checks - Backend
/healthendpoint monitoring - π Service networking - Frontend β Backend communication
- π Logs - Real-time application logs
- π Auto-restart - Services restart if they crash
- Go to your service (backend or frontend)
- Click Logs tab
- See real-time application logs
- Check the Events tab for health status
- View deployment history
- Monitor uptime and performance
- Go to your backend service
- Click Environment tab
- Add/edit variables
- Service automatically restarts
- Go to your service
- Click Manual Deploy β Deploy latest commit
- Or use Clear build cache & deploy for a fresh build
Want to use your own domain?
- Go to your frontend service
- Click Settings β Custom Domain
- Add your domain (e.g.,
research.yourcompany.com) - Update your DNS records as instructed
- Render handles SSL automatically!
Cost: Free with any paid plan
- Backend: $7/month
- Frontend: $7/month
- Total: $14/month
- Includes: 512 MB RAM per service, auto-deploy, HTTPS, monitoring
Render offers free tiers with limitations:
- Services spin down after 15 minutes of inactivity
- 750 hours/month of usage
- Slower cold starts
Recommendation: Start with paid Starter plan for best experience ($14/month is great value!)
- Browserbase: Free tier (50 sessions/month) or paid plans from $50/month
- Anthropic API: Pay-per-use based on model and usage
- Haiku: ~$0.001-0.005 per analysis
- Sonnet: ~$0.01-0.03 per analysis
- Opus: ~$0.05-0.15 per analysis
Just push to GitHub:
git add .
git commit -m "Update feature X"
git pushRender automatically:
- Detects the push
- Builds new Docker images
- Deploys with zero downtime
- Rolls back if health checks fail
- Go to Render Dashboard
- Select your service
- Click Manual Deploy
- Choose Deploy latest commit
For production, consider:
- High traffic: Use Haiku for speed and cost
- Balanced: Use Sonnet (default)
- Premium: Use Opus for best quality
- Enable Render notifications for deployment failures
- Monitor your Anthropic API usage at console.anthropic.com
- Check Browserbase session usage at browserbase.com
- β
Never commit
.envfile to git (already in.gitignore) - β Use Render's encrypted environment variables
- β Rotate keys periodically
- β Use separate keys for development and production
When traffic grows:
- Upgrade to Standard plan ($25/month per service)
- Increase memory/CPU allocation
- Consider implementing rate limiting
Check the build logs in Render:
- Go to service β Events tab
- Look for error messages
- Common issues:
- Missing dependencies in
package.json - Docker build errors
- TypeScript compilation errors
- Missing dependencies in
If health checks fail:
- Check backend logs for startup errors
- Verify environment variables are set
- Ensure API keys are valid
- Check Browserbase and Anthropic service status
The render.yaml automatically configures service URLs, but verify:
- Backend service is healthy (green status)
ALLOWED_ORIGINSincludes your frontend URL- Check CORS settings in backend logs
Optimize your usage:
- Switch to Claude Haiku model for cheaper analysis
- Reduce
maxPagesdefault in settings - Monitor Anthropic API usage dashboard
- Consider implementing caching for repeated analyses
- Documentation: render.com/docs
- Community: community.render.com
- Status: status.render.com
- Browserbase: docs.browserbase.com
- Anthropic: docs.anthropic.com
- GitHub Issues: Report bugs or request features
- Local Testing: Test locally first with Docker Compose
Q: Can I use a different cloud provider? A: Yes! The included Dockerfiles work with any Docker-compatible host (AWS, GCP, Azure, DigitalOcean, etc.). Render is just our recommended option for ease of use.
Q: How do I rollback a bad deployment? A: Go to your service β Manual Deploy β Select a previous deployment from the list β Deploy selected commit
Q: Can I use a different AI model? A: Yes! Currently supports all Anthropic Claude models. To add other providers (OpenAI, Cohere, etc.), you'd need to modify the backend code.
Q: Is my data secure? A: Yes! All communication is over HTTPS. API keys are encrypted by Render. No data is stored permanently - each analysis is ephemeral.
Q: How do I see how much I'm spending? A:
- Render: Dashboard β Billing
- Browserbase: Dashboard β Usage
- Anthropic: Console β Usage & Billing
Q: Can I limit the number of pages crawled? A: Yes! The UI has a slider (1-10 pages). You can also modify the backend to enforce stricter limits.
Q: What happens if a service goes down? A: Render automatically restarts failed services. You can also set up notifications for downtime alerts.
π Congratulations! Your AI Browser Research Agent is now live in production!
- Share the frontend URL with your team
- Add it to your portfolio
- Show it off on social media!
- Modify the UI styling in
frontend/ - Adjust AI prompts in
backend/src/services/anthropic.service.ts - Add new features and redeploy automatically
- Keep an eye on API costs
- Monitor Render service health
- Check logs regularly for issues
- Read the full README.md for detailed documentation
- Check API Documentation
- Join the community or reach out for support
That's it! You've successfully deployed your AI Browser Research Agent from local development to production. Start analyzing websites at scale! π
Built with β€οΈ using Docker, Render.com, Browserbase, and Anthropic Claude