Community라이팅 & 에디팅github.com

Hermes Bird - X/Twitter 라우터

Hermes 에이전트를 위한 SocialData 기반 X/Twitter 라우터입니다. 기본 읽기 경로는 SocialData를 사용하고, 인증된 계정 컨텍스트나 X 네이티브 객체가 필요한 작업에만 xurl CLI를 사용합니다.

Twitter 라우터란 무엇인가요?

이 스킬은 X/Twitter 관련 모든 작업을 단일 진입점(`/bird`)으로 라우팅하는 Hermes 에이전트의 핵심 X/Twitter 라우터입니다. 기본 읽기 계층으로 SocialData를 사용하여 비용 효율적인 읽기 작업을 수행하고, 인증된 계정 컨텍스트, X 네이티브 객체, 또는 명시적으로 승인된 계정 변경 작업이 필요한 경우에만 공식 'xurl' CLI를 사용합니다. 결정적 라우팅 테이블을 통해 트윗 읽기, 스레드 추출, 프로필 조회, 검색, 미디어 다운로드, 게시, 삭제 등 다양한 작업을 작업 유형에 따라 적절한 프로바이더로 안전하게 분배합니다. 비밀 키 노출, 무분별한 유료 API 호출 전환, 승인되지 않은 쓰기 작업을 방지하는 엄격한 보안 및 실행 계약을 준수합니다. 주요 호환 플랫폼으로는 Claude Code, Cursor, Codex 등 Hermes 에이전트를 지원하는 모든 환경에서 사용할 수 있습니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add evgyur/hermes-bird-xurl-skill

Installed? Explore more 라이팅 & 에디팅 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

Bird

Bird는 단일 X/Twitter 라우터입니다. 기본 저비용 읽기 계층으로 SocialData를 사용하세요. 태스크에 인증된 계정 컨텍스트, X 네이티브 객체, 또는 명시적으로 승인된 계정 변경이 필요한 경우에만 공식 xurl CLI를 사용하세요. 동일한 루틴 읽기에 두 프로바이더를 모두 사용하지 마세요.

트리거 및 호환성

X/Twitter URL, 트윗/스레드/글 추출, 검색, 프로필, 답글/인용/컨텍스트, 미디어 검색, X 계정 작업에 사용하세요.

다음 진입점을 유지하세요:

  • /bird <request> — 표준 라우터.
  • 레거시 bird.py <URL-or-ID> — 여전히 SocialData를 통해 읽습니다.
  • /xurl ... — 명시적으로 xurl을 요청하는 사용자를 위한 호환성 진입점. Bird의 라우팅 및 쓰기 게이트를 따라야 합니다.

결정적 라우팅

의도기본대체경계
URL/ID로 트윗 읽기SocialData웹/브라우저만 공개 가시 증거용존재한다는 이유만으로 xurl로 에스컬레이션 금지
스레드/대화/답글 읽기SocialDataxurl 읽기는 X 네이티브 컨텍스트가 고유하게 필요하고 지원되는 경우에만URL 형태가 아닌 가져온 데이터에서 스레드 결정
게시물 검색SocialData 제한 검색기존 SocialData/웹 연구 경로현재 xurl 최근 검색 접근은 가정하지 않음
공개 프로필 읽기SocialData계정별/현재 X 뷰가 필요한 경우 xurl 사용자 조회대량 그래프 수집 금지
X 글먼저 SocialData 트윗 페이로드; 중첩 글 파싱'article' 필드가 있는 xurl 원시 트윗 엔드포인트글 텍스트가 없는 경우 연결된 자사 페이지 팔로우
첨부 미디어 다운로드SocialData 메타데이터 + 제한된 HTTPS 다운로드브라우저만 공개 가시 미디어용URL/로그에 쿠키 금지; 호스트/크기/타입 검증
내是谁 / 인증된 신원xurl없음읽기 전용 계정 컨텍스트
이후 참여에 필요한 정확한 X 네이티브 객체xurlSocialData는 발견/컨텍스트용정확한 객체/엔드포인트에만 xurl 사용
게시, 답글, 인용, 삭제, 좋아요, 리포스트, 북마크, 팔로우, 차단, 뮤트, DM, 업로드xurl없음정확한 대상, 내용, 효과에 대한 명시적 승인 필요

엔드포인트 레시피, 오류 및 대체 규칙은 프로바이더 라우팅을 로드하세요. xurl 관련 작업에만 xurl 작업을 로드하세요.

프로바이더 및 비용 계약

  • SocialData는 모든 일반 읽기의 기본값입니다. 현재 런타임에서 구성된 직접 SOCIALDATA_API_KEY를 먼저 사용하세요. 직접 키가 없고 H20 고객 키에 socialdata 기능이 있는 경우 승인된 Human20 Keys SocialData 프록시를 사용하세요. 일반 H20 모델 키는 존재할 수 있지만 provider not allowed: socialdata를 반환할 수 있습니다. 이것이 xurl로 전환하는 정당한 이유가 아닙니다.
  • 라이브 Human20 Keys의 social-request 기본 가격 클래스는 0 credits/request로 확인되었습니다. 이를 변경 가능한 런타임 상태로 취급하고 비용을 주장하기 전에 다시 확인하세요.
  • 일반적으로 하나의 사용자 요청은 한 번의 조회/검색과 스레드 또는 요청된 컨텍스트에 필요한 제한된 종속 읽기만 소비해야 합니다. 팬아웃, 팔로워/팔로잉 스크래핑, 내보내기, 스트리밍, 폴링 또는 대량 가져오기를 수행하지 마세요.
  • SocialData에서 유료 X API 호출로 자동으로 대체하지 마세요. xurl은 프로바이더 실패가 아닌 기능 필요에 따라 선택됩니다.

비밀 및 실행 안전

  • 비밀 저장소, ~/.xurl, 쿠키, 인증 헤더, API 키, 베어러 토큰, 요청 서명 또는 환경 값을 읽거나, 출력하거나, 구문 분석하거나, 요약하거나 노출하지 마세요.
  • 안전한 상태/프로브 명령을 통해서만 자격 증명을 확인하세요. xurl --verbose/-v 또는 인라인 자격 증명 플래그를 사용하지 마세요.
  • SocialData 호출은 읽기 전용이며 제한적입니다. 401/403은 자격 증명/정책, 402는 크레딧/청구, 404는 부재/비공개/삭제됨, 429는 속도 제한, 5xx는 프로바이더 실패로 처리하세요. 한 클래스를 다른 클래스로 잘못 레이블링하지 마세요.
  • 브라우저/릴레이는 최후의 수단이며 절대 쿠키 추출 메커니즘이 아닙니다.
  • 쓰기는 보호된 효과입니다. xurl 변경 전에 정확한 대상과 페이로드를 다시 읽고, 해당 정확한 효과에 대한 명시적 사용자 승인을 요구하고, 한 번 실행하고, 원시 xurl/X 응답에서 확인하세요. 연구 승인은 참여 또는 게시 승인이 아닙니다.
  • DM, 삭제, 차단, 계정 변경, 미디어 업로드 및 공개 게시는 절대 암시적으로 발생하지 않습니다.

워크플로

  1. 요청 분류: read, search, profile, thread, article, media, account-read 또는 write.
  2. 식별자를 변경하지 않고 X URL/ID를 정규화합니다. 트윗 대 스레드를 결정하기 전에 가져옵니다.
  3. 테이블에서 라우팅합니다. 일반 읽기의 경우 정확히 한 번 SocialData를 호출합니다.
  4. 방어적으로 구문 분석합니다. 글 페이로드는 article.title, article.preview_text 및 article.content_state.blocks[] 아래에 있을 수 있습니다. 미디어는 인용 또는 리트윗된 객체에 중첩될 수 있습니다.
  5. 사용자가 항목이 중요한지 묻는 경우 연결된 자사 저장소/문서/글을 열고 첨부 미디어를 검사합니다. X 게시물을 주장/출처로 유지하고 자동 증거로 사용하지 마세요.
  6. 선택한 프로바이더가 실패하면 정확한 실패를 보고합니다. 비용, 개인 정보 보호 또는 효과를 확장하지 않고 동일한 요청에 여전히 응답할 수 있는 경우에만 명시된 대체 수단을 사용하세요.
  7. 출처에 충실한 출력과 간결한 프로바이더 영수증을 반환합니다.

출력 계약

반환:

Result: <전체 요청 콘텐츠 또는 간결하고 정확한 답변>
Type: tweet | thread | article | profile | search | account-action
Author/source: <안전한 공개 신원 + 표준 URL>
Provider: SocialData | xurl | web/browser fallback
Evidence: <ID, 타임스탬프, 가능한 경우 메트릭/컨텍스트>
Action receipt: <승인된 xurl 변경에만 해당; 정확한 상태/객체 ID>
Limitation: <누락/비공개/삭제/속도/요금제/프로바이더 격차 또는 없음>

사용자에게 표시되는 영수증에 내부 키, 인증 모드, 비밀 위치 또는 개인 런타임 세부 정보를 노출하지 마세요.

빠른 테스트 체크리스트

  • /bird <tweet URL>은 xurl이 아닌 SocialData를 선택합니다.
  • /bird search from:handle은 제한된 SocialData 검색을 선택합니다.
  • /bird whoami는 읽기 전용 xurl 신원을 선택합니다.
  • /bird reply <URL> <text>는 xurl 전에 정확한 승인을 위해 중단됩니다.
  • SocialData 402가 누락된 자격 증명으로 보고되지 않습니다. xurl 최근 검색 실패가 신원/프로필 읽기를 비활성화하지 않습니다.
  • 스레드 및 글 파싱은 URL 추측이 아닌 가져온 구조를 사용합니다.
  • SocialData 기본값 또는 쓰기 승인 계약을 제거하면 유효성 검사가 실패합니다.

완료 기준

  • 요청된 X 콘텐츠/작업이 완료되거나 정확히 하나의 차단 요소가 보고되었습니다.
  • 일반 읽기는 SocialData를 먼저 사용했고 중복 프로바이더 지출을 방지했습니다.
  • xurl은 기능별 이유로만 사용되었습니다.
  • 모든 쓰기 작업은 정확한 승인과 원시 API 읽기 확인이 있었습니다.
  • 비밀/쿠키/개인 자격 증명 자료가 출력, 아티팩트 또는 로그에 입력되지 않았습니다.

관련 스킬