Claude-skill-registry chirp
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.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/chirp" ~/.claude/skills/majiayu000-claude-skill-registry-chirp && rm -rf "$T"
manifest:
skills/data/chirp/SKILL.mdsource content
chirp
OpenClaw browser 도구로 X/Twitter 조작하기. bird CLI의 browser 기반 대안.
Prerequisites
환경 요구사항
- OpenClaw with browser tool enabled
browser profileopenclaw- 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>"}
핵심 포인트
- snapshot 먼저 - 모든 작업 전에 현재 상태 확인
- ref는 매번 달라짐 - snapshot에서 항상 새로 찾기
- compact=true - 토큰 절약
- article 구조 - 각 트윗은 article 요소, 내부에 작성자/내용/버튼들
- 트윗 전 확인 - 사용자에게 내용 확인받기
트러블슈팅
| 문제 | 해결 |
|---|---|
| browser 안 됨 | Xvfb 확인, DISPLAY=:99, Gateway 재시작 |
| 로그인 안 됨 | 으로 이동 후 수동 로그인 |
| Post 버튼 disabled | 텍스트 입력 확인 |
| Rate limit | 잠시 대기 후 재시도 |
vs bird CLI
| 기능 | bird CLI | chirp (browser) |
|---|---|---|
| 설치 | brew 필요 | Xvfb만 있으면 됨 |
| 인증 | 쿠키 추출 | 브라우저 세션 |
| 안정성 | API 기반 | UI 의존 (변경 가능) |
| 속도 | 빠름 | 약간 느림 |