Captures your web app's complete development timeline - server logs, browser events, console messages, network requests, and automatic screenshots - in a unified, timestamped feed for AI debugging.
pnpm install -g dev3000
dev3000
You should connect claude code or any AI tool to the mcp-server to have it issue commands to the browser.
claude mcp add dev3000 http://localhost:3684/api/mcp/mcp
Then issue the following prompt:
Use dev3000 to debug my app
Creates a comprehensive log of your development session that AI assistants can easily understand. When you have a bug or issue, Claude can see your server output, browser console, network requests, and screenshots all in chronological order.
The tool monitors your app in a real browser and captures:
- Server logs and console output
- Browser console messages and errors
- Network requests and responses
- Automatic screenshots on navigation, errors, and key events
- Visual timeline at
http://localhost:3684/logs
Logs are automatically saved with timestamps in /var/log/dev3000/
(or temp directory) and rotated to keep the 10 most recent per project. The current session is always symlinked to /tmp/d3k.log
for easy access.
The MCP server at http://localhost:3684/api/mcp/mcp
supports the HTTP prototcol (not stdio) as well as the following commands for advanced querying:
read_consolidated_logs
- Get recent logs with filteringsearch_logs
- Regex search with contextget_browser_errors
- Extract browser errors by time periodexecute_browser_action
- Control the browser (click, navigate, screenshot, evaluate, scroll, type)
Cursor:
{
"mcpServers": {
"dev3000": {
"type": "http",
"url": "http://localhost:3684/api/mcp/mcp"
}
}
}
dev3000 supports two monitoring modes:
By default, dev3000 launches a Playwright-controlled Chrome instance for comprehensive monitoring.
For a lighter approach, install the dev3000 Chrome extension to monitor your existing browser session.
Since the extension isn't published to the Chrome Web Store, install it locally:
- Open Chrome and navigate to
chrome://extensions/
- Enable "Developer mode" (toggle in top-right corner)
- Click "Load unpacked"
- Navigate to your dev3000 installation directory and select the
chrome-extension
folder - The extension will now monitor localhost tabs automatically
When using the Chrome extension, start dev3000 with the --servers-only
flag to skip Playwright:
dev3000 --servers-only
Feature | Playwright (Default) | Chrome Extension |
---|---|---|
Setup | Automatic | Manual install required |
Performance | Higher resource usage | Lightweight |
Browser Control | Full automation support | Monitoring only |
User Experience | Separate browser window | Your existing browser |
Screenshots | Automatic on events | Manual via extension |
Best For | Automated testing, CI/CD | Development debugging |
dev3000 [options]
-p, --port <port> Your app's port (default: 3000)
--mcp-port <port> MCP server port (default: 3684)
-s, --script <script> Package.json script to run (default: dev)
--servers-only Run servers only, skip browser launch (use with Chrome extension)
--profile-dir <dir> Chrome profile directory (default: /tmp/dev3000-chrome-profile)
Examples:
# Custom port
dev3000 --port 5173
# Use with Chrome extension (no Playwright)
dev3000 --servers-only
# Custom profile directory
dev3000 --profile-dir ./chrome-profile
Made by elsigh
We welcome pull requests (PRs) from the community!
Before submitting a PR:
- Pull the latest changes from
main
. - Run
scripts/canary.sh
to test your feature locally and verify what is already in the canary build. - Tip
dev3000 --version
to verify you're on the canary locally - FYI .husky/pre-commit.sh runs
pnpm format
to apply biome.json rules to all code - Please run and test the canary build locally to avoid duplicating work that may already be done.