sebastian1747

kolibri

Free Twitter/X skill for OpenClaw. Full read + write access via Composio. Zero dependencies. $0/month.

sebastian1747 0 Updated 11h ago

Resources

4
GitHub

Install

npx skillscat add sebastian1747/letairun-fama/kolibri

Install via the SkillsCat registry.

SKILL.md

๐Ÿฆ Kolibri

Free Twitter/X integration for OpenClaw. Full read + write access via Composio v3 REST API.

Zero dependencies. Zero SDK. One file. $0/month for reads.

Write operations (tweet, reply, like, retweet) use Twitter API credits (~$0.06/tweet).
Read operations (search, mentions, timeline) are free via Composio (20K calls/month).

Setup

1. Composio Account (Free)

  1. Sign up at composio.dev
  2. Copy your API key from the dashboard
  3. Go to Toolkits โ†’ Twitter โ†’ + Connect Account
  4. Authorize with your Twitter/X account
  5. Note the Entity ID you used (e.g. "default" or a custom name)

2. Twitter Developer Account

  1. Go to developer.x.com
  2. Create a project and app
  3. Under User authentication settings, enable OAuth 2.0
  4. Add callback URL: https://backend.composio.dev/api/v1/auth-apps/twitter/callback
  5. Add website URL: your website or https://example.com
  6. Go to Dashboard โ†’ Billing and add credits for write operations

3. Environment Variables

export COMPOSIO_API_KEY="your-composio-api-key"
export COMPOSIO_ENTITY_ID="default"    # or your custom entity ID
# or pin one connected account (Composio โ†’ Connected Accounts โ†’ id "ca_โ€ฆ"):
export COMPOSIO_CONNECTED_ACCOUNT_ID="ca_..."

4. Verify

node kolibri.mjs me

Commands

node kolibri.mjs <command> [args]

Write (uses Twitter API credits)

Command Description
tweet [--media ID,ID] <text> Post a tweet (max 280 chars), optionally with up to 4 uploaded media ids
reply <tweet_id> [--media ID] <text> Reply to a tweet
upload <image-file> Upload an image (png/jpg/webp/gif, < 5 MB) and print its media id (valid 24 h)
like <tweet_id> Like a tweet
retweet <tweet_id> Retweet
delete <tweet_id> Delete your tweet
follow <user_id> Follow a user

Read (free via Composio)

Command Description
search "query" [count] Search recent tweets (default: 10)
mentions [count] Your mentions (default: 10)
timeline [count] Your tweets (default: 10)
lookup <tweet_id> Get a specific tweet
user <username> Lookup a user profile
user-id <id> Lookup a user profile by numeric id
followers [user_id] [n] Who follows an account (default: you), one line each: id, handle, name, counts, created
following [user_id] [n] Whom an account follows (default: you), same format
upload-video <file> Upload a GIF (โ‰ค 15 MB) or video (mp4/mov/webm, โ‰ค 140 s), wait for X's processing, print the media id

Info

Command Description
me Your profile
help Show all commands

Examples

# Post a tweet
node kolibri.mjs tweet "Hello from Kolibri! ๐Ÿฆ"

# Search for tweets
node kolibri.mjs search "AI agents" 20

# Reply to a tweet
node kolibri.mjs reply 1893847261039 "Great post!"

# Check mentions
node kolibri.mjs mentions

# Like a tweet
node kolibri.mjs like 1893847261039

# Look up a user
node kolibri.mjs user elonmusk

Environment Variables

Variable Required Description
COMPOSIO_API_KEY Yes Your Composio API key
COMPOSIO_ENTITY_ID No Entity ID for your Twitter connection (default: "default")
KOLIBRI_DEBUG No Set to "1" for verbose output

Architecture

                                              โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”   Composio v3 REST API        โ”‚  Composio    โ”‚     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚   Kolibri   โ”‚ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ถ โ”‚  Free Tier   โ”‚ โ”€โ”€โ–ถ โ”‚ Twitter โ”‚
โ”‚  (Node.js)  โ”‚   fetch() โ€” no SDK needed     โ”‚  20K/month   โ”‚     โ”‚   API   โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜                               โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Costs

Operation Cost Limit
Reads (search, mentions, timeline) Free 20K calls/month (Composio)
Writes (tweet, reply, like, retweet) ~$0.06/action Twitter API credits
Search time range โ€” Last 7 days

Troubleshooting

"Missing COMPOSIO_API_KEY" โ€” Set your Composio API key: export COMPOSIO_API_KEY="..."

"Twitter API credits depleted" โ€” Add credits at developer.x.com โ†’ Dashboard โ†’ Billing

"Could not get user ID" โ€” Reconnect your Twitter account in Composio dashboard

No results from search โ€” Twitter search only covers the last 7 days

Debug mode โ€” Run with KOLIBRI_DEBUG=1 for full API response output