typefully
SKILL.md
Typefully Skill
Schedule and publish content to X, LinkedIn, Mastodon, Threads, and Bluesky through the Typefully API.
Setup
- Create a Typefully account at https://typefully.com
- Connect social media accounts in Typefully
- Generate an API key in Typefully settings
- Set the environment variable
export TYPEFULLY_API_KEY="your-typefully-api-key"
Environment Variables
| Variable | Required | Description |
|---|---|---|
| TYPEFULLY_API_KEY | Yes | Your Typefully API key |
Commands
User and Accounts
typefully me # Get current user info
typefully social-sets # List connected social accounts
typefully social-set <id> # Get details for a specific account
Drafts
typefully drafts # List all drafts for an account
typefully draft <id> # Get a specific draft
typefully create-draft "content" # Create a new draft
typefully update-draft <id> "text" # Update a draft
typefully delete-draft <id> # Delete a draft
Draft Options
| Option | Description |
|---|---|
| --social-set-id | Account ID required for drafts |
| --schedule | ISO 8601 datetime |
| --now | Publish immediately after creating |
| --next-free-slot | Schedule for optimal posting time |
| --title | Internal draft title |
| --share | Generate public share URL |
| --thread | Treat content as multi-line thread |
| --reply-to | Reply to an existing post URL |
| --community | Post to a community |
Filtering Drafts
typefully drafts # Default 10 drafts sorted by updated
typefully drafts --status draft # Only draft status
typefully drafts --status scheduled # Only scheduled
typefully drafts --status published # Only published
typefully drafts --limit 25 # More results per page
typefully drafts --offset 10 # Skip first 10 results
typefully drafts --order-by created_at # Sort by date
Tags
typefully tags # List tags for an account
typefully create-tag "name" # Create a new tag
typefully delete-tag "slug" # Delete a tag
Media
typefully upload-media <filename> # Get upload URL for media
typefully media-status <id> # Check media processing status
Examples
Create a Simple Post
# Get your account ID
typefully social-sets
# Create a draft
typefully create-draft "Hello world! This is my first post." \
--social-set-id 12345
# Create and publish immediately
typefully create-draft "Breaking news!" \
--social-set-id 12345 --now
Create a Thread
typefully create-draft "1/ I am excited to share some updates...
2/ We have been working hard on new features...
3/ Here is what we have been building...
4/ Stay tuned for more!" \
--social-set-id 12345 --thread
Schedule for Later
# Schedule for specific time
typefully create-draft "Mark your calendars! Launching next week." \
--social-set-id 12345 \
--schedule "2025-01-25T09:00:00Z"
# Schedule for optimal posting time
typefully create-draft "Best time to post..." \
--social-set-id 12345 \
--next-free-slot
Reply to a Post
typefully create-draft "Great thread! I completely agree." \
--social-set-id 12345 \
--reply-to "https://x.com/username/status/1234567890"
Post to a Community
typefully create-draft "Sharing with the community..." \
--social-set-id 12345 \
--community 1493446837214187523
Work with Tags
# List available tags
typefully tags --social-set-id 12345
# Create a tag
typefully create-tag "announcements" --social-set-id 12345
# Create draft with tag
typefully create-draft "Big announcement!" \
--social-set-id 12345 \
--tags announcements
Upload Media
# Get upload URL
typefully upload-media screenshot.png --social-set-id 12345
# Check status
typefully media-status <media-id> --social-set-id 12345
API Endpoints
| Method | Endpoint | Description |
|---|---|---|
| GET | /v2/me | Get current user |
| GET | /v2/social-sets | List social sets |
| GET | /v2/social-sets/{id} | Get social set details |
| GET | /v2/social-sets/{id}/drafts | List drafts |
| POST | /v2/social-sets/{id}/drafts | Create draft |
| GET | /v2/social-sets/{id}/drafts/{id} | Get draft |
| PATCH | /v2/social-sets/{id}/drafts/{id} | Update draft |
| DELETE | /v2/social-sets/{id}/drafts/{id} | Delete draft |
| GET | /v2/social-sets/{id}/tags | List tags |
| POST | /v2/social-sets/{id}/tags | Create tag |
| DELETE | /v2/social-sets/{id}/tags/{slug} | Delete tag |
| POST | /v2/social-sets/{id}/media/upload | Get upload URL |
| GET | /v2/social-sets/{id}/media/{id} | Check media status |
Supported Platforms
- X
- Mastodon
- Threads
- Bluesky
X Automation Compliance
Adhere to the X Automation Rules when using this skill with X:
- Do not post similar content across multiple accounts.
- Do not use automation to manipulate trending topics.
- Send automated replies only to users who have opted in.
- Send only one automated response per user interaction.
- Automated likes and bulk following are prohibited.
- Automated bulk adding to lists is prohibited.
- Follow the X media policy for all automated content.
- Mark accounts as sensitive if posting graphic media.
- Do not use automation to impersonate others.
- Do not post misleading links.
Notes
- All requests require the TYPEFULLY_API_KEY environment variable.
- Drafts are private by default.
- Use --share for a public URL.
- The --now flag publishes immediately without saving a draft.
- Drafts are saved for review when you do not use --now.
- Rate limits apply per user and per social set.
- Do not attempt to bypass rate limits.
Resources
- Typefully at https://typefully.com
- Typefully API Docs at https://docs.typefully.com
- X Automation Rules at https://help.x.com/en/rules-and-policies/x-automation
Weekly Installs
3
Repository
clawdbot/skillsInstalled on
windsurf2
codex2
trae1
opencode1
cursor1
claude-code1