rebrand: agent-browser-stealth → chrome-use, de-fork, reset to v1.0.0
Release binaries / Build macOS ARM64 (push) Has been cancelled
Release binaries / Build macOS x64 (push) Has been cancelled
Release binaries / Build Linux ARM64 (push) Has been cancelled
Release binaries / Build Linux musl ARM64 (push) Has been cancelled
Release binaries / Build Linux musl x64 (push) Has been cancelled
Release binaries / Build Linux x64 (push) Has been cancelled
Release binaries / Build Windows x64 (push) Has been cancelled
Release binaries / Attach binaries to GitHub Release (push) Has been cancelled

Standalone product rename across the whole repo (issue: project identity):

- Binary/package/repo/skill/docs: agent-browser[-stealth] → chrome-use
  (single binary name `chrome-use`; old aliases agent-browser/abs dropped).
- Version: 0.27.0-fork.51 → 1.0.0 (drop the upstream-fork counter).
- Native-messaging host: com.agent_browser.connect → com.leeguoo.chrome_use
  (CLI + ab-connect extension in lockstep — this is a breaking handshake change,
  extension bumped 0.4.2 → 0.5.0, needs a Web Store republish).
- Config dir: ~/.agent-browser → ~/.chrome-use.
- README/zh: reframed from "stealth fork of agent-browser" to a standalone
  product with a small `originally based on vercel-labs/agent-browser` credit.
- Kept AGENT_BROWSER_* env vars working (63 vars across the codebase; renaming
  them would break every existing script/skill for no user-facing gain).

Build green, 802 unit tests pass, fmt + clippy clean. Upstream attribution to
vercel-labs/agent-browser preserved.
This commit is contained in:
leeguooooo
2026-06-12 12:56:21 +09:00
parent b4c1707a01
commit 61060486f4
89 changed files with 1897 additions and 1926 deletions
+62 -62
View File
@@ -1,7 +1,7 @@
---
name: slack
description: Interact with Slack workspaces using browser automation. Use when the user needs to check unread channels, navigate Slack, send messages, extract data, find information, search conversations, or automate any Slack task. Triggers include "check my Slack", "what channels have unreads", "send a message to", "search Slack for", "extract from Slack", "find who said", or any task requiring programmatic Slack interaction.
allowed-tools: Bash(agent-browser:*), Bash(agent-browser-stealth:*), Bash(abs:*), Bash(npx agent-browser:*), Bash(npx agent-browser-stealth:*)
allowed-tools: Bash(chrome-use:*), Bash(chrome-use:*), Bash(abs:*), Bash(npx chrome-use:*), Bash(npx chrome-use:*)
---
# Slack Automation
@@ -14,16 +14,16 @@ Connect to an existing Slack browser session or open Slack:
```bash
# Connect to existing session on port 9222 (typical for already-open Slack)
agent-browser connect 9222
chrome-use connect 9222
# Or open Slack if not already running
agent-browser open https://app.slack.com
chrome-use open https://app.slack.com
```
Then take a snapshot to see what's available:
```bash
agent-browser snapshot -i
chrome-use snapshot -i
```
## Core Workflow
@@ -36,11 +36,11 @@ agent-browser snapshot -i
```bash
# Example: Check unread channels
agent-browser connect 9222
agent-browser snapshot -i
chrome-use connect 9222
chrome-use snapshot -i
# Look for "More unreads" button
agent-browser click @e21 # Ref for "More unreads" button
agent-browser screenshot slack-unreads.png
chrome-use click @e21 # Ref for "More unreads" button
chrome-use screenshot slack-unreads.png
```
## Common Tasks
@@ -49,10 +49,10 @@ agent-browser screenshot slack-unreads.png
```bash
# Connect to Slack
agent-browser connect 9222
chrome-use connect 9222
# Take snapshot to locate unreads button
agent-browser snapshot -i
chrome-use snapshot -i
# Look for:
# - "More unreads" button (usually near top of sidebar)
@@ -60,50 +60,50 @@ agent-browser snapshot -i
# - Channel names with badges/bold text indicating unreads
# Navigate to Activity tab to see all unreads in one view
agent-browser click @e14 # Activity tab (ref may vary)
agent-browser wait 1000
agent-browser screenshot activity-unreads.png
chrome-use click @e14 # Activity tab (ref may vary)
chrome-use wait 1000
chrome-use screenshot activity-unreads.png
# Or check DMs tab
agent-browser click @e13 # DMs tab
agent-browser screenshot dms.png
chrome-use click @e13 # DMs tab
chrome-use screenshot dms.png
# Or expand "More unreads" in sidebar
agent-browser click @e21 # More unreads button
agent-browser wait 500
agent-browser screenshot expanded-unreads.png
chrome-use click @e21 # More unreads button
chrome-use wait 500
chrome-use screenshot expanded-unreads.png
```
### Navigating to a Channel
```bash
# Search for channel in sidebar or by name
agent-browser snapshot -i
chrome-use snapshot -i
# Look for channel name in the list (e.g., "engineering", "product-design")
# Click on the channel treeitem ref
agent-browser click @e94 # Example: engineering channel ref
agent-browser wait --load networkidle
agent-browser screenshot channel.png
chrome-use click @e94 # Example: engineering channel ref
chrome-use wait --load networkidle
chrome-use screenshot channel.png
```
### Finding Messages/Threads
```bash
# Use Slack search
agent-browser snapshot -i
agent-browser click @e5 # Search button (typical ref)
agent-browser fill @e_search "keyword"
agent-browser press Enter
agent-browser wait --load networkidle
agent-browser screenshot search-results.png
chrome-use snapshot -i
chrome-use click @e5 # Search button (typical ref)
chrome-use fill @e_search "keyword"
chrome-use press Enter
chrome-use wait --load networkidle
chrome-use screenshot search-results.png
```
### Extracting Channel Information
```bash
# Get list of all visible channels
agent-browser snapshot --json > slack-snapshot.json
chrome-use snapshot --json > slack-snapshot.json
# Parse for channel names and metadata
# Look for treeitem elements with level=2 (sub-channels under sections)
@@ -113,16 +113,16 @@ agent-browser snapshot --json > slack-snapshot.json
```bash
# Open a channel
agent-browser click @e_channel_ref
agent-browser wait 1000
chrome-use click @e_channel_ref
chrome-use wait 1000
# Get channel info (members, description, etc.)
agent-browser snapshot -i
agent-browser screenshot channel-details.png
chrome-use snapshot -i
chrome-use screenshot channel-details.png
# Scroll through messages
agent-browser scroll down 500
agent-browser screenshot channel-messages.png
chrome-use scroll down 500
chrome-use screenshot channel-messages.png
```
### Taking Notes/Capturing State
@@ -131,16 +131,16 @@ When you need to document findings from Slack:
```bash
# Take annotated screenshot (shows element numbers)
agent-browser screenshot --annotate slack-state.png
chrome-use screenshot --annotate slack-state.png
# Take full-page screenshot
agent-browser screenshot --full slack-full.png
chrome-use screenshot --full slack-full.png
# Get current URL for reference
agent-browser get url
chrome-use get url
# Get page title
agent-browser get title
chrome-use get title
```
## Sidebar Structure
@@ -185,14 +185,14 @@ Click tab refs to switch views and get different information.
```bash
# Get a message or element's text
agent-browser get text @e_message_ref
chrome-use get text @e_message_ref
```
### Parse Accessibility Tree
```bash
# Full snapshot as JSON for programmatic parsing
agent-browser snapshot --json > output.json
chrome-use snapshot --json > output.json
# Look for:
# - Channel names (name field in treeitem)
@@ -205,19 +205,19 @@ agent-browser snapshot --json > output.json
```bash
# After expanding unreads section:
agent-browser snapshot -i | grep -c "treeitem"
chrome-use snapshot -i | grep -c "treeitem"
# Each treeitem with a channel name in the unreads section is one unread
```
## Best Practices
- **Connect to existing sessions**: Use `agent-browser connect 9222` if Slack is already open. This is faster than opening a new browser.
- **Connect to existing sessions**: Use `chrome-use connect 9222` if Slack is already open. This is faster than opening a new browser.
- **Take snapshots before clicking**: Always `snapshot -i` to identify refs before clicking buttons.
- **Re-snapshot after navigation**: After navigating to a new channel or section, take a fresh snapshot to find new refs.
- **Use JSON snapshots for parsing**: When you need to extract structured data, use `snapshot --json` for machine-readable output.
- **Pace interactions**: Add `sleep 1` between rapid interactions to let the UI update.
- **Check accessibility tree**: The accessibility tree shows what screen readers (and your automation) can see. If an element isn't in the snapshot, it may be hidden or require scrolling.
- **Scroll in sidebar**: Use `agent-browser scroll down 300 --selector ".p-sidebar"` to scroll within the Slack sidebar if channel list is long.
- **Scroll in sidebar**: Use `chrome-use scroll down 300 --selector ".p-sidebar"` to scroll within the Slack sidebar if channel list is long.
## Limitations
@@ -234,16 +234,16 @@ Console/error capture is off by default in this stealth fork — launch the sess
`AGENT_BROWSER_CAPTURE_CONSOLE=1` first, or these return empty.
```bash
agent-browser console
agent-browser errors
chrome-use console
chrome-use errors
```
### Get current page state
```bash
agent-browser get url
agent-browser get title
agent-browser screenshot page-state.png
chrome-use get url
chrome-use get title
chrome-use screenshot page-state.png
```
## Example: Full Unread Check
@@ -252,29 +252,29 @@ agent-browser screenshot page-state.png
#!/bin/bash
# Connect to Slack
agent-browser connect 9222
chrome-use connect 9222
# Take initial snapshot
echo "=== Checking Slack unreads ==="
agent-browser snapshot -i > snapshot.txt
chrome-use snapshot -i > snapshot.txt
# Check Activity tab for unreads
agent-browser click @e14 # Activity tab
agent-browser wait 1000
agent-browser screenshot activity.png
ACTIVITY_RESULT=$(agent-browser get text @e_main_area)
chrome-use click @e14 # Activity tab
chrome-use wait 1000
chrome-use screenshot activity.png
ACTIVITY_RESULT=$(chrome-use get text @e_main_area)
echo "Activity: $ACTIVITY_RESULT"
# Check DMs
agent-browser click @e13 # DMs tab
agent-browser wait 1000
agent-browser screenshot dms.png
chrome-use click @e13 # DMs tab
chrome-use wait 1000
chrome-use screenshot dms.png
# Check unread channels in sidebar
agent-browser click @e21 # More unreads button
agent-browser wait 500
agent-browser snapshot -i > unreads-expanded.txt
agent-browser screenshot unreads.png
chrome-use click @e21 # More unreads button
chrome-use wait 500
chrome-use snapshot -i > unreads-expanded.txt
chrome-use screenshot unreads.png
# Summary
echo "=== Summary ==="
+54 -54
View File
@@ -11,16 +11,16 @@ Determine which channels and DMs have unread messages.
1. **Connect to Slack**
```bash
agent-browser connect 9222
chrome-use connect 9222
```
2. **Check Activity Tab**
- Take snapshot: `agent-browser snapshot -i`
- Take snapshot: `chrome-use snapshot -i`
- Look for Activity tab ref (usually `@e14`)
- Click: `agent-browser click @e14`
- Wait: `agent-browser wait 1000`
- Click: `chrome-use click @e14`
- Wait: `chrome-use wait 1000`
- If you see "You've read all the unreads", you have no unread messages
- Screenshot: `agent-browser screenshot activity.png`
- Screenshot: `chrome-use screenshot activity.png`
3. **Check DMs**
- Click DMs tab ref (usually `@e13`)
@@ -52,25 +52,25 @@ Get a complete list of all channels you have access to.
1. **Navigate to Channels section**
```bash
agent-browser connect 9222
agent-browser snapshot -i
chrome-use connect 9222
chrome-use snapshot -i
```
2. **Look for "Channels" treeitem**
- This is usually a collapsed section header
- Click to expand if collapsed
- Screenshot: `agent-browser screenshot all-channels.png`
- Screenshot: `chrome-use screenshot all-channels.png`
3. **Scroll through sidebar**
```bash
# If the list is long, scroll within the sidebar
agent-browser scroll down 500 --selector ".p-sidebar"
agent-browser screenshot channels-page-2.png
chrome-use scroll down 500 --selector ".p-sidebar"
chrome-use screenshot channels-page-2.png
```
4. **Parse snapshot for channel list**
```bash
agent-browser snapshot --json > channels.json
chrome-use snapshot --json > channels.json
# Search JSON for treeitem elements with level=2 under "Channels" section
```
@@ -90,24 +90,24 @@ Find all messages/threads mentioning specific terms.
1. **Open search**
```bash
agent-browser snapshot -i
chrome-use snapshot -i
# Find Search button ref (usually @e5)
agent-browser click @e5
agent-browser wait 500
chrome-use click @e5
chrome-use wait 500
```
2. **Enter search term**
```bash
# Identify search input ref from snapshot
agent-browser fill @e_search_input "your keyword"
agent-browser press Enter
agent-browser wait --load networkidle
chrome-use fill @e_search_input "your keyword"
chrome-use press Enter
chrome-use wait --load networkidle
```
3. **Capture results**
```bash
agent-browser screenshot search-results.png
agent-browser snapshot -i > search-snapshot.txt
chrome-use screenshot search-results.png
chrome-use snapshot -i > search-snapshot.txt
```
4. **Parse results**
@@ -137,35 +137,35 @@ Watch a channel and capture new messages/engagement.
1. **Navigate to channel**
```bash
agent-browser connect 9222
agent-browser snapshot -i
chrome-use connect 9222
chrome-use snapshot -i
# Find channel ref from sidebar
agent-browser click @e_channel_ref
agent-browser wait --load networkidle
chrome-use click @e_channel_ref
chrome-use wait --load networkidle
```
2. **Check channel info**
- Screenshot channel details: `agent-browser screenshot channel-header.png`
- Screenshot channel details: `chrome-use screenshot channel-header.png`
- Look for member count, description, topic
3. **View messages**
```bash
# Jump to recent/unread
agent-browser press j # Jump to unread in Slack
agent-browser wait 500
agent-browser screenshot recent-messages.png
chrome-use press j # Jump to unread in Slack
chrome-use wait 500
chrome-use screenshot recent-messages.png
```
4. **Scroll to see more**
```bash
agent-browser scroll down 500
agent-browser screenshot more-messages.png
chrome-use scroll down 500
chrome-use screenshot more-messages.png
```
5. **Check threads**
- Click on messages with thread indicators
- View replies in thread view
- Screenshot: `agent-browser screenshot thread.png`
- Screenshot: `chrome-use screenshot thread.png`
### Evidence
- Channel info screenshot
@@ -183,13 +183,13 @@ Find who said what, when, and in what context.
1. **Navigate to relevant channel or DM**
```bash
agent-browser click @e_conversation_ref
agent-browser wait 1000
chrome-use click @e_conversation_ref
chrome-use wait 1000
```
2. **Take snapshot with context**
```bash
agent-browser snapshot --json > conversation.json
chrome-use snapshot --json > conversation.json
```
3. **Find message blocks**
@@ -204,8 +204,8 @@ Find who said what, when, and in what context.
5. **Screenshot key messages**
```bash
agent-browser screenshot important-message.png
agent-browser screenshot --annotate annotated-message.png
chrome-use screenshot important-message.png
chrome-use screenshot --annotate annotated-message.png
```
---
@@ -219,19 +219,19 @@ See who reacted to a message and with what emoji.
1. **Find message with reactions**
```bash
agent-browser snapshot -i
chrome-use snapshot -i
# Look for "N reaction(s)" buttons in messages
```
2. **Click reaction button to expand**
```bash
agent-browser click @e_reaction_button
agent-browser wait 500
chrome-use click @e_reaction_button
chrome-use wait 500
```
3. **Capture reaction details**
```bash
agent-browser screenshot reactions.png
chrome-use screenshot reactions.png
# You'll see emoji, count, and list of users who reacted
```
@@ -251,26 +251,26 @@ See messages that have been pinned in a channel.
1. **Open a channel**
```bash
agent-browser click @e_channel_ref
agent-browser wait 1000
agent-browser snapshot -i
chrome-use click @e_channel_ref
chrome-use wait 1000
chrome-use snapshot -i
```
2. **Click Pins tab**
- In channel view, look for "Pins" tab ref (usually near Messages, Files tabs)
- Click it: `agent-browser click @e_pins_tab`
- Wait: `agent-browser wait 500`
- Click it: `chrome-use click @e_pins_tab`
- Wait: `chrome-use wait 500`
3. **View pinned messages**
```bash
agent-browser screenshot pins.png
agent-browser snapshot -i > pins-snapshot.txt
chrome-use screenshot pins.png
chrome-use snapshot -i > pins-snapshot.txt
```
4. **Review each pin**
- Click pin to see context
- Note who pinned it, when, and why
- Screenshot: `agent-browser screenshot pin-detail.png`
- Screenshot: `chrome-use screenshot pin-detail.png`
---
@@ -323,26 +323,26 @@ If you can't find an element:
1. **Check it's visible**
```bash
# Is the element on screen or off-screen?
agent-browser screenshot current-state.png
chrome-use screenshot current-state.png
# Compare screenshot to what you expected
```
2. **Try expanding/scrolling**
```bash
# Sidebar might need scrolling
agent-browser scroll down 300 --selector ".p-sidebar"
agent-browser snapshot -i
chrome-use scroll down 300 --selector ".p-sidebar"
chrome-use snapshot -i
```
3. **Check current URL**
```bash
agent-browser get url
chrome-use get url
# Verify you're in the right section
```
4. **Wait for page to load**
```bash
agent-browser wait --load networkidle
agent-browser wait 1000
agent-browser snapshot -i
chrome-use wait --load networkidle
chrome-use wait 1000
chrome-use snapshot -i
```