claude-chrome-parallel 2.3.0 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/README.md +296 -180
  2. package/dist/cdp/client.d.ts +27 -3
  3. package/dist/cdp/client.d.ts.map +1 -1
  4. package/dist/cdp/client.js +67 -3
  5. package/dist/cdp/client.js.map +1 -1
  6. package/dist/cdp/connection-pool.d.ts +5 -1
  7. package/dist/cdp/connection-pool.d.ts.map +1 -1
  8. package/dist/cdp/connection-pool.js +7 -1
  9. package/dist/cdp/connection-pool.js.map +1 -1
  10. package/dist/chrome/launcher.d.ts.map +1 -1
  11. package/dist/chrome/launcher.js +6 -0
  12. package/dist/chrome/launcher.js.map +1 -1
  13. package/dist/orchestration/state-manager.d.ts +117 -0
  14. package/dist/orchestration/state-manager.d.ts.map +1 -0
  15. package/dist/orchestration/state-manager.js +435 -0
  16. package/dist/orchestration/state-manager.js.map +1 -0
  17. package/dist/orchestration/workflow-engine.d.ts +96 -0
  18. package/dist/orchestration/workflow-engine.d.ts.map +1 -0
  19. package/dist/orchestration/workflow-engine.js +326 -0
  20. package/dist/orchestration/workflow-engine.js.map +1 -0
  21. package/dist/session-manager.d.ts +62 -18
  22. package/dist/session-manager.d.ts.map +1 -1
  23. package/dist/session-manager.js +274 -100
  24. package/dist/session-manager.js.map +1 -1
  25. package/dist/tools/computer.d.ts.map +1 -1
  26. package/dist/tools/computer.js +49 -3
  27. package/dist/tools/computer.js.map +1 -1
  28. package/dist/tools/index.d.ts.map +1 -1
  29. package/dist/tools/index.js +13 -1
  30. package/dist/tools/index.js.map +1 -1
  31. package/dist/tools/navigate.d.ts.map +1 -1
  32. package/dist/tools/navigate.js +91 -8
  33. package/dist/tools/navigate.js.map +1 -1
  34. package/dist/tools/orchestration.d.ts +6 -0
  35. package/dist/tools/orchestration.d.ts.map +1 -0
  36. package/dist/tools/orchestration.js +436 -0
  37. package/dist/tools/orchestration.js.map +1 -0
  38. package/dist/tools/tabs-context.d.ts.map +1 -1
  39. package/dist/tools/tabs-context.js +42 -23
  40. package/dist/tools/tabs-context.js.map +1 -1
  41. package/dist/tools/tabs-create.d.ts +1 -1
  42. package/dist/tools/tabs-create.d.ts.map +1 -1
  43. package/dist/tools/tabs-create.js +30 -6
  44. package/dist/tools/tabs-create.js.map +1 -1
  45. package/dist/tools/worker-create.d.ts +7 -0
  46. package/dist/tools/worker-create.d.ts.map +1 -0
  47. package/dist/tools/worker-create.js +62 -0
  48. package/dist/tools/worker-create.js.map +1 -0
  49. package/dist/tools/worker-delete.d.ts +6 -0
  50. package/dist/tools/worker-delete.d.ts.map +1 -0
  51. package/dist/tools/worker-delete.js +80 -0
  52. package/dist/tools/worker-delete.js.map +1 -0
  53. package/dist/tools/worker-list.d.ts +6 -0
  54. package/dist/tools/worker-list.d.ts.map +1 -0
  55. package/dist/tools/worker-list.js +67 -0
  56. package/dist/tools/worker-list.js.map +1 -0
  57. package/dist/types/session.d.ts +35 -2
  58. package/dist/types/session.d.ts.map +1 -1
  59. package/package.json +2 -1
package/README.md CHANGED
@@ -1,289 +1,400 @@
1
1
  # Claude Chrome Parallel
2
2
 
3
- > **Run multiple Claude Code browser sessions in parallel - no more "Detached" errors.**
3
+ > **Run 20+ Claude Code browser sessions simultaneously, without conflicts.**
4
4
 
5
5
  [![npm version](https://badge.fury.io/js/claude-chrome-parallel.svg)](https://www.npmjs.com/package/claude-chrome-parallel)
6
6
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
7
7
 
8
- ## Why This Exists
8
+ ```
9
+ ┌─────────────────────────────────────────────────────────────────────────────┐
10
+ │ │
11
+ │ Claude Code 1 ─► Worker A ─► [Tab1] [Tab2] ─┐ │
12
+ │ (Google account) │ │
13
+ │ │ │
14
+ │ Claude Code 2 ─► Worker B ─► [Tab3] [Tab4] ─┼─► Chrome (single instance) │
15
+ │ (Naver account) │ Port 9222 │
16
+ │ │ │
17
+ │ Claude Code 3 ─► Worker C ─► [Tab5] [Tab6] ─┘ │
18
+ │ (Amazon account) │
19
+ │ │
20
+ │ ✓ Each Worker has isolated cookies/session/storage │
21
+ │ ✓ No more "Detached" errors with concurrent sessions │
22
+ │ ✓ Multiple account logins on same site simultaneously │
23
+ │ │
24
+ └─────────────────────────────────────────────────────────────────────────────┘
25
+ ```
26
+
27
+ ---
28
+
29
+ ## Core Features
30
+
31
+ <table>
32
+ <tr>
33
+ <td width="33%" valign="top">
34
+
35
+ ### 🔀 Worker Isolation
9
36
 
10
- [Claude Chrome](https://claude.ai/chrome) is a powerful tool that lets you debug **production environments while logged in** - no need to replicate auth states or mock sessions. But when you try to run multiple Claude Code sessions with browser automation simultaneously, you get:
37
+ Each Worker has a **completely isolated browser context**.
38
+
39
+ - Separate cookies/sessions
40
+ - Separate localStorage
41
+ - Separate login states
42
+
43
+ **Log into multiple accounts on the same site simultaneously!**
44
+
45
+ </td>
46
+ <td width="33%" valign="top">
47
+
48
+ ### ⚡ Parallel Execution
49
+
50
+ Run tasks across multiple tabs/Workers **at the same time**.
11
51
 
12
52
  ```
13
- Error: Detached while handling command
53
+ Sequential: 1500ms
54
+ Tab1 ████░░░░ 500ms
55
+ Tab2 ████░░░░ 500ms
56
+ Tab3 ████░░░░ 500ms
57
+
58
+ Parallel: 500ms
59
+ Tab1 ████░░░░
60
+ Tab2 ████░░░░
61
+ Tab3 ████░░░░
14
62
  ```
15
63
 
16
- This happens because the Chrome extension uses **shared internal state**. When Session A takes a screenshot, Session B's connection gets "detached."
64
+ </td>
65
+ <td width="33%" valign="top">
66
+
67
+ ### 🔄 Workflow Orchestration
17
68
 
18
- **Claude Chrome Parallel** solves this by creating **independent CDP connections** for each session:
69
+ **Automatically distribute** complex multi-site tasks.
19
70
 
20
71
  ```
21
- Claude Code 1 ──► Process 1 ──► CDP Connection 1 ──┐
22
- ├──► Chrome (port 9222)
23
- Claude Code 2 ──► Process 2 ──► CDP Connection 2 ──┘
72
+ workflow_init({
73
+ workers: [
74
+ {name: "amazon", ...},
75
+ {name: "ebay", ...},
76
+ {name: "walmart", ...}
77
+ ]
78
+ })
79
+ → 3 sites run in parallel
80
+ → Results auto-collected
24
81
  ```
25
82
 
26
- Each session gets isolated browser control. No shared state = No conflicts.
83
+ </td>
84
+ </tr>
85
+ </table>
27
86
 
28
87
  ---
29
88
 
30
- ## Use Cases
89
+ ## Comparison
90
+
91
+ | | Chrome Extension | Claude Chrome Parallel |
92
+ |---|:---:|:---:|
93
+ | **Concurrent Sessions** | ❌ 1 (Detached error) | ✅ **20+** |
94
+ | **Worker Isolation** | ❌ | ✅ Isolated cookies/sessions |
95
+ | **Multi-account Login** | ❌ | ✅ |
96
+ | **Parallel Execution** | ❌ | ✅ |
97
+ | **Network Simulation** | ❌ | ✅ 3G/4G/offline |
98
+ | **Workflow Orchestration** | ❌ | ✅ |
99
+ | **Auto Chrome Launch** | ❌ | ✅ |
31
100
 
32
- ### Multi-Session QA Testing
101
+ ---
33
102
 
34
- Run parallel test scenarios against your production or staging environment:
103
+ ## Why It Matters
35
104
 
36
- ```bash
37
- # Terminal 1: Test user login flow
38
- claude -p "Test the login flow on https://myapp.com/login"
105
+ ### The Problem
39
106
 
40
- # Terminal 2: Test checkout process (simultaneously!)
41
- claude -p "Test the checkout flow on https://myapp.com/cart"
107
+ The official Chrome extension has a fatal flaw: **shared internal state**.
42
108
 
43
- # Terminal 3: Monitor admin dashboard
44
- claude -p "Take screenshots of https://myapp.com/admin every 30 seconds"
109
+ ```
110
+ Claude Code 1 ─┐
111
+ ├─► Chrome Extension (shared state) ─► "Detached" error!
112
+ Claude Code 2 ─┘
45
113
  ```
46
114
 
47
- ### Parallel Debugging
115
+ When Session A takes a screenshot, Session B's connection breaks. You can only run **one session at a time**.
48
116
 
49
- Debug multiple pages or user journeys at the same time:
117
+ ### The Solution
118
+
119
+ Claude Chrome Parallel creates **independent CDP connections** per session:
50
120
 
51
- ```bash
52
- # Debug as different users
53
- Terminal 1: "Log in as admin and check permissions on /settings"
54
- Terminal 2: "Log in as regular user and verify they can't access /settings"
55
121
  ```
122
+ Claude Code 1 ─► CDP Connection 1 ─┐
123
+ ├─► Chrome (port 9222)
124
+ Claude Code 2 ─► CDP Connection 2 ─┘
56
125
 
57
- ### Automated Regression Testing
126
+ No shared state = No conflicts = 20+ concurrent sessions
127
+ ```
58
128
 
59
- Run comprehensive browser tests across multiple sessions:
129
+ ### The Real Power: Authenticated Sessions
60
130
 
61
- ```bash
62
- # Run 5 parallel test sessions
63
- for i in {1..5}; do
64
- claude -p "Run test suite $i on https://staging.myapp.com" &
65
- done
66
- ```
131
+ Unlike headless automation, this runs in **your actual browser** with all your logins active:
67
132
 
68
- ### Tested Concurrency
133
+ - Access Gmail, Salesforce, LinkedIn while logged in
134
+ - ✅ No credential management or auth flows needed
135
+ - ✅ Bypass bot detection (real browser profile)
136
+ - ✅ Multiple accounts simultaneously (Worker isolation)
69
137
 
70
- | Sessions | Success Rate |
71
- |----------|-------------|
72
- | 5 | 100% |
73
- | 10 | 100% |
74
- | 15 | 100% |
75
- | 20 | 100% |
138
+ **This isn't just for developers.** Any web task requiring authentication—previously impossible to automate—is now possible with natural language.
76
139
 
77
140
  ---
78
141
 
79
- ## Installation
142
+ ## Quick Start (2 minutes)
143
+
144
+ ### 1. Install
80
145
 
81
146
  ```bash
82
- # From npm
83
147
  npm install -g claude-chrome-parallel
84
-
85
- # Or from GitHub
86
- npm install -g github:shaun0927/claude-chrome-parallel
87
148
  ```
88
149
 
89
- ### Configure Claude Code
150
+ ### 2. Configure Claude Code
90
151
 
91
- Add to your Claude Code MCP settings (`~/.claude.json`):
152
+ Add to `~/.claude.json`:
92
153
 
93
154
  ```json
94
155
  {
95
156
  "mcpServers": {
96
157
  "chrome-parallel": {
97
- "command": "claude-chrome-parallel",
158
+ "command": "ccp",
98
159
  "args": ["serve"]
99
160
  }
100
161
  }
101
162
  }
102
163
  ```
103
164
 
104
- Restart Claude Code for changes to take effect.
165
+ ### 3. Restart Claude Code and use
166
+
167
+ ```
168
+ You: Take a screenshot of https://github.com
169
+
170
+ Claude: [Auto-launches browser, captures screenshot]
171
+ ```
172
+
173
+ > **Tip:** `ccp` is a shorthand for `claude-chrome-parallel`.
105
174
 
106
175
  ---
107
176
 
108
- ## Usage
177
+ ## Usage Examples
109
178
 
110
- ### Basic Usage
179
+ ### Multiple Accounts Simultaneously
111
180
 
112
- Once configured, browser automation works in any Claude Code session:
181
+ ```
182
+ You: Create "google-personal" and "google-work" Workers,
183
+ then check the inbox of each Gmail account
113
184
 
185
+ Claude: [Creates 2 Workers → Each accesses Gmail with isolated sessions]
186
+ google-personal: Personal account - 3 new emails
187
+ google-work: Work account - 7 new emails
114
188
  ```
115
- You: Take a screenshot of https://github.com
116
189
 
117
- Claude: [Uses chrome-parallel tools automatically]
190
+ ### Price Comparison (Parallel)
191
+
118
192
  ```
193
+ You: Search for "iPhone 15" lowest price on Amazon, eBay, and Walmart simultaneously
119
194
 
120
- ### Multiple Parallel Sessions
195
+ Claude: [3 sites run in parallel]
196
+ Amazon: $999 (1.2s)
197
+ eBay: $945 (1.1s)
198
+ Walmart: $979 (1.3s)
199
+ Total time: 1.3s (vs 3.6s sequential)
200
+ ```
121
201
 
122
- Run multiple Claude Code terminals simultaneously:
202
+ ### Parallel QA Testing
123
203
 
124
204
  ```bash
125
205
  # Terminal 1
126
- claude
127
- > Navigate to myapp.com/dashboard and take a screenshot
206
+ claude -p "Test myapp.com/login"
128
207
 
129
208
  # Terminal 2 (at the same time!)
130
- claude
131
- > Fill out the form on myapp.com/contact and submit
209
+ claude -p "Test myapp.com/checkout"
132
210
 
133
- # Terminal 3 (also at the same time!)
134
- claude
135
- > Monitor network requests on myapp.com/api
211
+ # Terminal 3 (at the same time!)
212
+ claude -p "Monitor myapp.com/admin"
136
213
  ```
137
214
 
138
- All sessions work without conflicts!
215
+ ---
139
216
 
140
- ### Available Browser Tools
217
+ ## Chrome-Sisyphus: Orchestration Skill
141
218
 
142
- | Tool | Description |
143
- |------|-------------|
144
- | `navigate` | Navigate to URL or use history |
145
- | `computer` | Screenshots, mouse clicks, keyboard input, scrolling |
146
- | `read_page` | Read page content via accessibility tree |
147
- | `find` | Find elements by description |
148
- | `form_input` | Fill form fields |
149
- | `javascript_tool` | Execute JavaScript |
150
- | `tabs_context_mcp` | Get available tabs |
151
- | `tabs_create_mcp` | Create new tab |
152
- | `network` | Simulate network conditions (3G, 4G, offline, custom) |
219
+ For complex multi-site workflows, use the built-in **Chrome-Sisyphus** skill system.
153
220
 
154
- ### Network Simulation
221
+ ```
222
+ ┌─────────────────────────────────────────────────────────────────┐
223
+ │ /chrome-sisyphus "Compare iPhone prices on Amazon, eBay, Walmart"
224
+ │ ↓
225
+ │ ┌──────────────────────────────────────────────────────────┐
226
+ │ │ ORCHESTRATOR (Main Session) │
227
+ │ │ • Decompose task → 3 workers │
228
+ │ │ • Allocate sites → Amazon, eBay, Walmart │
229
+ │ │ • Context usage: ~500 tokens (lightweight!) │
230
+ │ └──────────────────────────────────────────────────────────┘
231
+ │ ↓
232
+ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
233
+ │ │ Worker 1 │ │ Worker 2 │ │ Worker 3 │
234
+ │ │ (Amazon) │ │ (eBay) │ │ (Walmart) │
235
+ │ │ Background │ │ Background │ │ Background │
236
+ │ │ Task │ │ Task │ │ Task │
237
+ │ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘
238
+ │ ↓ ↓ ↓
239
+ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
240
+ │ │ Scratchpad │ │ Scratchpad │ │ Scratchpad │
241
+ │ │ worker-1.md │ │ worker-2.md │ │ worker-3.md │
242
+ │ └─────────────┘ └─────────────┘ └─────────────┘
243
+ │ ↓
244
+ │ Results collected → Unified report to user
245
+ └─────────────────────────────────────────────────────────────────┘
246
+ ```
155
247
 
156
- Test how your app behaves under different network conditions:
248
+ ### Why This Matters: Context Isolation
157
249
 
250
+ **Without isolation** (traditional approach):
158
251
  ```
159
- You: Simulate 3G network and navigate to myapp.com
160
-
161
- Claude: [Applies 3G throttling: 1.5Mbps down, 750Kbps up, 100ms latency]
252
+ Main Session Context:
253
+ ├── Worker 1 screenshot (500KB) ─┐
254
+ ├── Worker 1 DOM tree (large) │
255
+ ├── Worker 2 screenshot (500KB) ├─► Context explosion!
256
+ ├── Worker 2 DOM tree (large) │
257
+ └── Worker 3 ... (keeps growing) ─┘
162
258
  ```
163
259
 
164
- Available presets: `offline`, `slow-2g`, `2g`, `3g`, `4g`, `fast-wifi`, `custom`, `clear`
260
+ **With Chrome-Sisyphus**:
261
+ ```
262
+ Main Session: ~500 tokens (stays light)
263
+ ├── Task plan
264
+ ├── Worker IDs
265
+ └── Status summary only
266
+
267
+ Background Tasks: (isolated, don't pollute main)
268
+ ├── Worker 1: own context, own screenshots
269
+ ├── Worker 2: own context, own screenshots
270
+ └── Worker 3: own context, own screenshots
271
+
272
+ Scratchpad Files: (persistent state)
273
+ └── .agent/chrome-sisyphus/*.md
274
+ ```
165
275
 
166
- ---
276
+ ### Usage
167
277
 
168
- ## How It Works
278
+ Copy the `.claude/` folder to your project:
169
279
 
170
- ### The Problem: Shared Extension State
280
+ ```bash
281
+ cp -r node_modules/claude-chrome-parallel/.claude ~/.claude/
282
+ # Or copy to your project root
283
+ ```
171
284
 
172
- The official Chrome extension maintains a single shared state:
285
+ Then use in Claude Code:
173
286
 
174
287
  ```
175
- Claude Code 1 ─┐
176
- ├─► Chrome Extension (shared state) ─► Chrome
177
- Claude Code 2 ─┘
178
-
179
- State conflicts here!
288
+ /chrome-sisyphus Compare laptop prices on Amazon, BestBuy, and Newegg
180
289
  ```
181
290
 
182
- ### The Solution: Independent CDP Connections
183
-
184
- Chrome's DevTools Protocol natively supports multiple simultaneous connections:
291
+ ### Skill Files
185
292
 
186
293
  ```
187
- Claude Code 1 ─► Process 1 ─► CDP Connection 1 ─┐
188
- ├─► Chrome (port 9222)
189
- Claude Code 2 ─► Process 2 ─► CDP Connection 2 ─┘
190
-
191
- Independent connections, no shared state!
294
+ .claude/
295
+ ├── commands/
296
+ │ └── chrome-sisyphus.md # /chrome-sisyphus command
297
+ └── skills/
298
+ └── chrome-sisyphus/
299
+ ├── SKILL.md # Skill overview
300
+ ├── AGENTS.md # Agent specifications
301
+ └── agents/
302
+ ├── decomposer.md # Task decomposition
303
+ ├── worker-agent.md # Worker execution (Ralph Loop)
304
+ └── coordinator.md # Result integration
192
305
  ```
193
306
 
194
- Each Claude Code session spawns its own MCP server process with a dedicated CDP connection.
195
-
196
307
  ---
197
308
 
198
- ## CLI Commands
199
-
200
- ```bash
201
- # Start MCP server (used by Claude Code automatically)
202
- claude-chrome-parallel serve
309
+ ## MCP Tools
203
310
 
204
- # Check Chrome connection status
205
- claude-chrome-parallel check
311
+ ### Browser Automation
206
312
 
207
- # Use custom Chrome debugging port
208
- claude-chrome-parallel serve --port 9223
313
+ | Tool | Description |
314
+ |------|-------------|
315
+ | `navigate` | Go to URL, back/forward |
316
+ | `computer` | Screenshot, click, keyboard, scroll |
317
+ | `read_page` | Parse page structure (accessibility tree) |
318
+ | `find` | Find elements by natural language |
319
+ | `form_input` | Set form values directly |
320
+ | `javascript_tool` | Execute JavaScript |
321
+ | `network` | Simulate network conditions |
209
322
 
210
- # Check installation health
211
- claude-chrome-parallel doctor
323
+ ### Worker & Tab Management
212
324
 
213
- # View session status and statistics
214
- claude-chrome-parallel status
325
+ | Tool | Description |
326
+ |------|-------------|
327
+ | `worker_create` | Create isolated browser context |
328
+ | `worker_list` | List Workers and their tabs |
329
+ | `worker_delete` | Delete Worker |
330
+ | `tabs_create_mcp` | Create new tab |
331
+ | `tabs_context_mcp` | Get tab info |
215
332
 
216
- # View status as JSON (for automation)
217
- claude-chrome-parallel status --json
333
+ ### Workflow Orchestration
218
334
 
219
- # Clean up stale sessions and old backups
220
- claude-chrome-parallel cleanup --max-age 24 --keep-backups 10
221
- ```
335
+ | Tool | Description |
336
+ |------|-------------|
337
+ | `workflow_init` | Initialize parallel workflow |
338
+ | `workflow_status` | Check progress |
339
+ | `workflow_collect` | Collect results |
340
+ | `workflow_cleanup` | Clean up resources |
222
341
 
223
342
  ---
224
343
 
225
- ## Chrome Configuration
226
-
227
- By default, connects to Chrome on port 9222.
228
-
229
- **Auto-launch**: If Chrome isn't running with debugging enabled, the package will start it automatically.
230
-
231
- **Manual start** (if needed):
344
+ ## CLI Commands
232
345
 
233
346
  ```bash
234
- # Windows
235
- chrome.exe --remote-debugging-port=9222
347
+ ccp serve # Start MCP server (auto-run by Claude Code)
348
+ ccp check # Check Chrome connection
349
+ ccp status # View session status
350
+ ccp status --json # JSON output
351
+ ccp doctor # Diagnose installation
352
+ ccp cleanup # Clean up old sessions
353
+ ccp serve --port 9223 # Use custom port
354
+ ```
236
355
 
237
- # macOS
238
- /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222
356
+ ---
239
357
 
240
- # Linux
241
- google-chrome --remote-debugging-port=9222
242
- ```
358
+ ## Performance
359
+
360
+ | Concurrent Sessions | Success Rate |
361
+ |:---:|:---:|
362
+ | 5 | 100% |
363
+ | 10 | 100% |
364
+ | 15 | 100% |
365
+ | 20 | 100% |
243
366
 
244
367
  ---
245
368
 
246
369
  ## Additional Features
247
370
 
248
- ### Session Isolation (Bonus)
249
-
250
- When running multiple Claude Code instances, they can corrupt `~/.claude.json` due to race conditions. Use the `launch` command to run Claude with isolated config:
371
+ ### Network Simulation
251
372
 
252
- ```bash
253
- # Run Claude Code with isolated config directory
254
- claude-chrome-parallel launch
373
+ ```
374
+ You: Test myapp.com loading time on 3G network
255
375
 
256
- # Pass any claude flags
257
- claude-chrome-parallel launch --dangerously-skip-permissions
258
- claude-chrome-parallel launch -p "Your prompt"
376
+ Claude: [Applies 3G throttling: 1.5Mbps, 100ms latency]
259
377
  ```
260
378
 
261
- ### Config Recovery
379
+ Presets: `offline`, `slow-2g`, `2g`, `3g`, `4g`, `fast-wifi`, `custom`
262
380
 
263
- If your `.claude.json` gets corrupted:
381
+ ### Config Recovery
264
382
 
265
383
  ```bash
266
- # Auto-recover corrupted config
267
- claude-chrome-parallel recover
384
+ # Auto-recover corrupted .claude.json
385
+ ccp recover
268
386
 
269
- # List available backups
270
- claude-chrome-parallel recover --list-backups
387
+ # List backups
388
+ ccp recover --list-backups
271
389
  ```
272
390
 
273
- ---
274
-
275
- ## Comparison
391
+ ### Session Isolation
276
392
 
277
- | Feature | Claude in Chrome (Extension) | Claude Chrome Parallel |
278
- |---------|------------------------------|----------------------|
279
- | Multiple sessions | ❌ Detached errors | ✅ Works perfectly |
280
- | Parallel QA testing | ❌ | ✅ |
281
- | Connection type | Shared extension state | Independent CDP |
282
- | Max concurrent sessions | 1 | 20+ tested |
283
- | Auto Chrome launch | ❌ | ✅ |
284
- | Network simulation | ❌ | ✅ 3G/4G/offline presets |
285
- | Session auto-cleanup | ❌ | ✅ TTL-based |
286
- | Connection pooling | ❌ | ✅ Pre-warmed pages |
393
+ ```bash
394
+ # Run Claude with isolated config (prevents race conditions)
395
+ ccp launch
396
+ ccp launch -p "Your prompt"
397
+ ```
287
398
 
288
399
  ---
289
400
 
@@ -292,51 +403,56 @@ claude-chrome-parallel recover --list-backups
292
403
  ### Chrome not connecting
293
404
 
294
405
  ```bash
295
- # Check status
296
- claude-chrome-parallel check
297
-
298
- # Manually start Chrome with debugging
406
+ ccp check
407
+ # Or manually start Chrome
299
408
  chrome --remote-debugging-port=9222
300
409
  ```
301
410
 
302
411
  ### Tools not appearing in Claude Code
303
412
 
304
- 1. Check MCP config in `~/.claude.json`
413
+ 1. Check `~/.claude.json` configuration
305
414
  2. Restart Claude Code
306
415
  3. Run `/mcp` to verify `chrome-parallel` is listed
307
416
 
308
417
  ---
309
418
 
419
+ ## Use Cases
420
+
421
+ - **Business**: ERP/SaaS data extraction, invoice downloads, repetitive task automation
422
+ - **Research**: Login-required platform data collection, academic DB searches
423
+ - **Social Media**: Multi-account posting, message management, analytics
424
+ - **E-commerce**: Member price monitoring, inventory management, review responses
425
+ - **QA Testing**: Parallel scenario testing, network condition testing
426
+ - **Productivity**: Email organization, calendar management, bookmark management
427
+
428
+ ---
429
+
310
430
  ## Development
311
431
 
312
432
  ```bash
313
433
  git clone https://github.com/shaun0927/claude-chrome-parallel.git
314
434
  cd claude-chrome-parallel
315
-
316
435
  npm install
317
436
  npm run build
318
-
319
- # Test locally
320
- npm install -g .
437
+ npm test
321
438
  ```
322
439
 
323
440
  ---
324
441
 
325
442
  ## License
326
443
 
327
- MIT License - see [LICENSE](LICENSE) for details.
444
+ MIT License - [LICENSE](LICENSE)
445
+
446
+ ---
328
447
 
329
448
  ## Disclaimer
330
449
 
331
- > **This is an unofficial, community-maintained project.**
332
- > Not affiliated with or endorsed by Anthropic.
450
+ > **This is an unofficial community project.**
451
+ > Not affiliated with Anthropic.
333
452
  >
334
- > "Claude" is a trademark of Anthropic. This project provides
335
- > tooling to enhance the Claude Code experience but is not
336
- > an official Anthropic product.
453
+ > "Claude" is a trademark of Anthropic.
337
454
 
338
455
  ## Acknowledgments
339
456
 
340
- - [Anthropic](https://anthropic.com) for Claude and the MCP protocol
341
- - [Claude Code](https://github.com/anthropics/claude-code) for the CLI
342
- - [Puppeteer](https://pptr.dev/) for browser automation
457
+ - [Anthropic](https://anthropic.com) - Claude and MCP protocol
458
+ - [Puppeteer](https://pptr.dev/) - Browser automation