← Back to Skills
Browser

chirp

zizi-cat By zizi-cat 👁 11 views ▲ 0 votes

X/Twitter CLI using OpenClaw browser tool.

GitHub
---
name: chirp
description: "X/Twitter CLI using OpenClaw browser tool. Use when the user wants to interact with X/Twitter: reading timeline, posting tweets, liking, retweeting, replying, or searching. Alternative to bird CLI for environments without Homebrew."
homepage: https://github.com/zizi-cat/chirp
metadata: {"clawdhub":{"emoji":"๐Ÿฆ"}}
---

# chirp

OpenClaw browser ๋„๊ตฌ๋กœ X/Twitter ์กฐ์ž‘ํ•˜๊ธฐ. bird CLI์˜ browser ๊ธฐ๋ฐ˜ ๋Œ€์•ˆ.

## Prerequisites

### ํ™˜๊ฒฝ ์š”๊ตฌ์‚ฌํ•ญ
- OpenClaw with browser tool enabled
- `openclaw` browser profile
- X/Twitter ๊ณ„์ • ๋กœ๊ทธ์ธ ์™„๋ฃŒ

### Headless ์„œ๋ฒ„์ธ ๊ฒฝ์šฐ

Xvfb ๊ฐ€์ƒ ๋””์Šคํ”Œ๋ ˆ์ด ํ•„์š” (spool ์Šคํ‚ฌ์˜ Prerequisites ์ฐธ๊ณ )

### ๋กœ๊ทธ์ธ (์ฒ˜์Œ ํ•œ ๋ฒˆ๋งŒ)

```
browser action=start profile=openclaw
browser action=open profile=openclaw targetUrl="https://x.com/login"
# ์‚ฌ์šฉ์ž์—๊ฒŒ ์ˆ˜๋™ ๋กœ๊ทธ์ธ ์š”์ฒญ
```

---

## ์‚ฌ์šฉ๋ฒ•

### 1. ํƒ€์ž„๋ผ์ธ ์ฝ๊ธฐ

```
browser action=open profile=openclaw targetUrl="https://x.com/home"
browser action=snapshot profile=openclaw compact=true
```

๊ฐ article์—์„œ ์ž‘์„ฑ์ž, ๋‚ด์šฉ, ์ข‹์•„์š”/๋ฆฌํŠธ์œ—/๋‹ต๊ธ€ ์ˆ˜ ํ™•์ธ ๊ฐ€๋Šฅ.

### 2. ํŠธ์œ— ์ž‘์„ฑ

**Step 1: ํ™ˆ์—์„œ ํ…์ŠคํŠธ๋ฐ•์Šค ์ฐพ๊ธฐ**
```
browser action=open profile=openclaw targetUrl="https://x.com/home"
browser action=snapshot profile=openclaw compact=true
```
โ†’ `textbox "Post text"` ref ์ฐพ๊ธฐ

**Step 2: ๋‚ด์šฉ ์ž…๋ ฅ**
```
browser action=act profile=openclaw request={"kind":"click","ref":"<textbox-ref>"}
browser action=act profile=openclaw request={"kind":"type","ref":"<textbox-ref>","text":"ํŠธ์œ— ๋‚ด์šฉ"}
```

**Step 3: Post ๋ฒ„ํŠผ ํด๋ฆญ**
```
browser action=snapshot profile=openclaw compact=true
```
โ†’ `button "Post"` ref ์ฐพ๊ธฐ (disabled ์•„๋‹Œ ๊ฒƒ)
```
browser action=act profile=openclaw request={"kind":"click","ref":"<post-ref>"}
```

### 3. ์ข‹์•„์š” ๋ˆ„๋ฅด๊ธฐ

ํƒ€์ž„๋ผ์ธ์—์„œ article ๋‚ด `button "Like"` ๋˜๋Š” `button "X Likes. Like"` ref ์ฐพ์•„์„œ:
```
browser action=act profile=openclaw request={"kind":"click","ref":"<like-ref>"}
```

### 4. ๋ฆฌํŠธ์œ—

`button "Repost"` ๋˜๋Š” `button "X reposts. Repost"` ref ์ฐพ์•„์„œ:
```
browser action=act profile=openclaw request={"kind":"click","ref":"<repost-ref>"}
browser action=snapshot profile=openclaw compact=true
# "Repost" ์˜ต์…˜ ์„ ํƒ
browser action=act profile=openclaw request={"kind":"click","ref":"<repost-option-ref>"}
```

### 5. ๋‹ต๊ธ€ ๋‹ฌ๊ธฐ

**๋ฐฉ๋ฒ• 1: ํƒ€์ž„๋ผ์ธ์—์„œ**
```
browser action=act profile=openclaw request={"kind":"click","ref":"<reply-button-ref>"}
browser action=snapshot profile=openclaw compact=true
# ๋‹ต๊ธ€ ์ž…๋ ฅ์ฐฝ์— ํ…์ŠคํŠธ ์ž…๋ ฅ ํ›„ Reply ๋ฒ„ํŠผ ํด๋ฆญ
```

**๋ฐฉ๋ฒ• 2: ํŠธ์œ— ํŽ˜์ด์ง€์—์„œ**
```
browser action=open profile=openclaw targetUrl="https://x.com/username/status/1234567890"
browser action=snapshot profile=openclaw compact=true
# ๋‹ต๊ธ€ ์ž…๋ ฅ์ฐฝ ์ฐพ์•„์„œ ์ž…๋ ฅ
```

### 6. ํ”„๋กœํ•„ ๋ณด๊ธฐ

```
browser action=open profile=openclaw targetUrl="https://x.com/username"
browser action=snapshot profile=openclaw compact=true
```

### 7. ๊ฒ€์ƒ‰

```
browser action=open profile=openclaw targetUrl="https://x.com/search?q=๊ฒ€์ƒ‰์–ด&src=typed_query"
browser action=snapshot profile=openclaw compact=true
```

### 8. ํŒ”๋กœ์šฐ

ํ”„๋กœํ•„ ํŽ˜์ด์ง€์—์„œ `button "Follow"` ref ์ฐพ์•„์„œ:
```
browser action=act profile=openclaw request={"kind":"click","ref":"<follow-ref>"}
```

---

## ํ•ต์‹ฌ ํฌ์ธํŠธ

1. **snapshot ๋จผ์ €** - ๋ชจ๋“  ์ž‘์—… ์ „์— ํ˜„์žฌ ์ƒํƒœ ํ™•์ธ
2. **ref๋Š” ๋งค๋ฒˆ ๋‹ฌ๋ผ์ง** - snapshot์—์„œ ํ•ญ์ƒ ์ƒˆ๋กœ ์ฐพ๊ธฐ
3. **compact=true** - ํ† ํฐ ์ ˆ์•ฝ
4. **article ๊ตฌ์กฐ** - ๊ฐ ํŠธ์œ—์€ article ์š”์†Œ, ๋‚ด๋ถ€์— ์ž‘์„ฑ์ž/๋‚ด์šฉ/๋ฒ„ํŠผ๋“ค
5. **ํŠธ์œ— ์ „ ํ™•์ธ** - ์‚ฌ์šฉ์ž์—๊ฒŒ ๋‚ด์šฉ ํ™•์ธ๋ฐ›๊ธฐ

---

## ํŠธ๋Ÿฌ๋ธ”์ŠˆํŒ…

| ๋ฌธ์ œ | ํ•ด๊ฒฐ |
|------|------|
| browser ์•ˆ ๋จ | Xvfb ํ™•์ธ, DISPLAY=:99, Gateway ์žฌ์‹œ์ž‘ |
| ๋กœ๊ทธ์ธ ์•ˆ ๋จ | `/login`์œผ๋กœ ์ด๋™ ํ›„ ์ˆ˜๋™ ๋กœ๊ทธ์ธ |
| Post ๋ฒ„ํŠผ disabled | ํ…์ŠคํŠธ ์ž…๋ ฅ ํ™•์ธ |
| Rate limit | ์ž ์‹œ ๋Œ€๊ธฐ ํ›„ ์žฌ์‹œ๋„ |

---

## vs bird CLI

| ๊ธฐ๋Šฅ | bird CLI | chirp (browser) |
|------|----------|-----------------|
| ์„ค์น˜ | brew ํ•„์š” | Xvfb๋งŒ ์žˆ์œผ๋ฉด ๋จ |
| ์ธ์ฆ | ์ฟ ํ‚ค ์ถ”์ถœ | ๋ธŒ๋ผ์šฐ์ € ์„ธ์…˜ |
| ์•ˆ์ •์„ฑ | API ๊ธฐ๋ฐ˜ | UI ์˜์กด (๋ณ€๊ฒฝ ๊ฐ€๋Šฅ) |
| ์†๋„ | ๋น ๋ฆ„ | ์•ฝ๊ฐ„ ๋А๋ฆผ |
browser

Comments

Sign in to leave a comment

Loading comments...