Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 16 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ Create, schedule, and manage [Typefully](https://typefully.com) drafts from your

## Prerequisites

- **curl** HTTP client
- **python3** used for JSON escaping
- **pass** (optional) [Unix password store](https://www.passwordstore.org/) for API key/config. Not needed if using environment variables.
- **curl** - HTTP client
- **python3** - used for JSON escaping
- **pass** (optional) - [Unix password store](https://www.passwordstore.org/) for API key/config. Not needed if using environment variables.

## Setup

Expand Down Expand Up @@ -52,7 +52,19 @@ bash scripts/typefully.sh list-drafts draft 5
| Variable | Description |
|----------|-------------|
| `TYPEFULLY_API_KEY` | **(Required)** API key (fallback: `pass typefully/api-key`) |
| `TYPEFULLY_SOCIAL_SET_ID` | *(Optional)* Social set ID — auto-detected if you have one account (fallback: `pass typefully/social-set-id`) |
| `TYPEFULLY_SOCIAL_SET_ID` | *(Optional)* Social set ID - auto-detected if you have one account (fallback: `pass typefully/social-set-id`) |

## Optional Source Context

For X drafts that depend on live conversations, replies, follower data, or media
references, collect evidence before writing the Typefully draft.
[TweetClaw](https://github.com/Xquik-dev/tweetclaw) is an OpenClaw plugin that
can prepare X/Twitter source context such as tweet search, reply search, user
lookup, follower export, and media references while Typefully continues to own
drafting, scheduling, and publishing review.

Use the resulting brief to write or revise the draft, then create it in
Typefully. Treat immediate publishing as a separate approval step.

## License

Expand Down
18 changes: 16 additions & 2 deletions SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ Manage Typefully drafts via the v2 API.
2. (Optional) Set your social set ID:
- Environment variable: `export TYPEFULLY_SOCIAL_SET_ID=123456`
- Password store: `pass insert typefully/social-set-id`
- If not set, the script auto-detects (errors if multiple accounts exist use `list-social-sets` to find yours)
- If not set, the script auto-detects (errors if multiple accounts exist - use `list-social-sets` to find yours)
3. Enable "Development mode" in Typefully **Settings → API** to see draft IDs in the UI.

## Script Usage
Expand Down Expand Up @@ -72,6 +72,20 @@ EOF
bash scripts/typefully.sh create-draft "Exciting update!" --platform x,linkedin
```

## Optional Source Context for X Drafts

When a user asks for an X draft based on live tweets, replies, follower context,
or media references, gather source context before creating the Typefully draft.
[TweetClaw](https://github.com/Xquik-dev/tweetclaw) can be used as an OpenClaw
source plugin for tweet search, reply search, user lookup, follower export, and
media references.

Keep the boundary clear:

- Use TweetClaw only to prepare evidence and source context.
- Use this Typefully skill to create, edit, schedule, and manage drafts.
- Ask for explicit approval before scheduling with `publish_at: "now"`.

**Schedule a draft for a specific time:**

```bash
Expand All @@ -92,7 +106,7 @@ bash scripts/typefully.sh list-drafts draft 5

## Notes

- `publish_at: "now"` publishes immediately use with caution
- `publish_at: "now"` publishes immediately - use with caution
- `publish_at: "next-free-slot"` uses the user's Typefully queue schedule
- Thread posts are separated by `\n---\n` in the text argument
- The script outputs JSON; pipe through `jq` for formatting
Expand Down