Draft a post batch for a client
Generate a set of on-brand social media post drafts and create them directly in Planable.
How this skill works
- Gather inputs (client/workspace, platform, topic, number of posts, tone/angle)
- Identify the right workspace and page(s) in Planable
- Generate the post copy
- Create each draft directly in Planable via the connector
Step 1: Gather inputs
Before writing anything, confirm:
- Workspace / client name — which Planable workspace to post into
- Platform(s) — LinkedIn, Instagram, Facebook, X/Twitter, TikTok, etc.
- Topic or brief — what the posts should be about
- Number of posts — how many drafts to create (default: 5 if not specified)
- Tone or angle — optional; if not provided, use the platform's natural register
- Proposed schedule — optional; if provided, space posts evenly across the range
- Labels — optional; ask only if the user mentions them
- Team-only / internal note — optional; default is false (visible to all workspace members)
If the workspace name is ambiguous or not provided, call list_workspaces and show the options. Do not guess.
Step 2: Navigate to the right workspace and page
list_workspaces → find matching workspace → get workspaceId
list_pages(workspaceId) → find matching page(s) for the requested platform(s)
- Match workspace by name (case-insensitive)
- Match page by platform type (
facebook, instagram, linkedin, twitter, tiktok, youtube, pinterest, threads, universal)
- If multiple pages exist for the same platform, ask the user which one to use
- If labels are requested, call
list_labels(workspaceId) to get UUIDs
Step 3: Write the posts
Generate all drafts before creating any of them in Planable.
Platform character/format guidelines:
| Platform |
Max length |
Notes |
| LinkedIn |
~3,000 chars |
Professional tone, can be longer-form, use line breaks |
| Instagram |
~2,200 chars |
Visual-first captions, hashtags at end or first comment |
| Facebook |
~63,206 chars |
Conversational, shorter tends to perform better |
| X/Twitter |
280 chars |
Punchy, no filler |
| TikTok |
~2,200 chars |
Casual, trend-aware |
| YouTube |
~5,000 chars (description) |
Informational, include keywords naturally |
Writing guidelines:
- Match the client's industry and voice if context is available
- Vary the hook and format across the batch — don't repeat the same structure
- No banned words: seamless, streamline, effortlessly, optimize, enhance, all-in-one, unleash, eliminate, etc.
- Active voice, contractions, short sentences
- If posts are for Planable's own channels, apply Planable brand voice (see brand guidelines in project)
Show the user all drafts in a clear preview before creating them in Planable, unless they've explicitly said "just create them."
Step 4: Create the drafts in Planable
After showing the preview and getting confirmation (or if the user said to go ahead directly):
Single platform:
create_post(
workspaceId,
pageId,
text,
scheduledAt (if provided),
labels (if provided),
teamOnly (default: false)
)
Multiple platforms with same content:
create_grouped_post(
workspaceId,
pageIds[],
text,
scheduledAt (if provided),
labels (if provided)
)
Multiple platforms with adapted content:
Call create_post once per platform with the platform-specific version of the copy.
Step 5: Confirm and summarize
After all posts are created, report back:
- How many drafts were created
- Which workspace and page(s) they're in
- Proposed schedule times (if any)
- Any
validationErrors returned (e.g., Instagram requires media — flag this clearly)
- A direct note that posts are drafts only and will not publish until approved/scheduled in Planable
Edge cases
- Media: This skill creates text-only drafts by default. If the user provides a public image URL, pass it as
mediaUrl. If they reference a file from their computer, explain that Planable requires a public URL and suggest uploading to Google Drive or similar first.
- Update coming: Post editing is not yet available via the connector. If the user asks to revise an existing post, note this and suggest editing directly in Planable.
- Stories / Reels: Supported via
classification parameter. Ask the user if they want post, story, or reels format if the platform supports multiple (Instagram, TikTok, YouTube).
- Rate: Create posts one at a time (not in bulk API calls) to surface any per-post validation errors clearly.
1---2name: draft-post-batch3description: Draft and publish a batch of social media posts directly into Planable as drafts. Use this skill whenever the user wants to generate multiple posts for a client, create content for a workspace, write a week's worth of posts, batch-create drafts, or says things like "draft posts for [client]", "create 5 posts about [topic]", "fill the calendar for [client]", or "write posts and add them to Planable". Always activate this skill when post creation + Planable is involved.4---56# Draft a post batch for a client78Generate a set of on-brand social media post drafts and create them directly in Planable.910## How this skill works11121. Gather inputs (client/workspace, platform, topic, number of posts, tone/angle)132. Identify the right workspace and page(s) in Planable143. Generate the post copy154. Create each draft directly in Planable via the connector1617---1819## Step 1: Gather inputs2021Before writing anything, confirm:2223- **Workspace / client name** — which Planable workspace to post into24- **Platform(s)** — LinkedIn, Instagram, Facebook, X/Twitter, TikTok, etc.25- **Topic or brief** — what the posts should be about26- **Number of posts** — how many drafts to create (default: 5 if not specified)27- **Tone or angle** — optional; if not provided, use the platform's natural register28- **Proposed schedule** — optional; if provided, space posts evenly across the range29- **Labels** — optional; ask only if the user mentions them30- **Team-only / internal note** — optional; default is false (visible to all workspace members)3132If the workspace name is ambiguous or not provided, call `list_workspaces` and show the options. Do not guess.3334---3536## Step 2: Navigate to the right workspace and page3738```39list_workspaces → find matching workspace → get workspaceId40list_pages(workspaceId) → find matching page(s) for the requested platform(s)41```4243- Match workspace by name (case-insensitive)44- Match page by platform type (`facebook`, `instagram`, `linkedin`, `twitter`, `tiktok`, `youtube`, `pinterest`, `threads`, `universal`)45- If multiple pages exist for the same platform, ask the user which one to use46- If labels are requested, call `list_labels(workspaceId)` to get UUIDs4748---4950## Step 3: Write the posts5152Generate all drafts before creating any of them in Planable.5354**Platform character/format guidelines:**55| Platform | Max length | Notes |56|---|---|---|57| LinkedIn | ~3,000 chars | Professional tone, can be longer-form, use line breaks |58| Instagram | ~2,200 chars | Visual-first captions, hashtags at end or first comment |59| Facebook | ~63,206 chars | Conversational, shorter tends to perform better |60| X/Twitter | 280 chars | Punchy, no filler |61| TikTok | ~2,200 chars | Casual, trend-aware |62| YouTube | ~5,000 chars (description) | Informational, include keywords naturally |6364**Writing guidelines:**65- Match the client's industry and voice if context is available66- Vary the hook and format across the batch — don't repeat the same structure67- No banned words: seamless, streamline, effortlessly, optimize, enhance, all-in-one, unleash, eliminate, etc.68- Active voice, contractions, short sentences69- If posts are for Planable's own channels, apply Planable brand voice (see brand guidelines in project)7071Show the user all drafts in a clear preview **before** creating them in Planable, unless they've explicitly said "just create them."7273---7475## Step 4: Create the drafts in Planable7677After showing the preview and getting confirmation (or if the user said to go ahead directly):7879**Single platform:**80```81create_post(82 workspaceId,83 pageId,84 text,85 scheduledAt (if provided),86 labels (if provided),87 teamOnly (default: false)88)89```9091**Multiple platforms with same content:**92```93create_grouped_post(94 workspaceId,95 pageIds[],96 text,97 scheduledAt (if provided),98 labels (if provided)99)100```101102**Multiple platforms with adapted content:**103Call `create_post` once per platform with the platform-specific version of the copy.104105---106107## Step 5: Confirm and summarize108109After all posts are created, report back:110- How many drafts were created111- Which workspace and page(s) they're in112- Proposed schedule times (if any)113- Any `validationErrors` returned (e.g., Instagram requires media — flag this clearly)114- A direct note that posts are drafts only and will not publish until approved/scheduled in Planable115116---117118## Edge cases119120- **Media**: This skill creates text-only drafts by default. If the user provides a public image URL, pass it as `mediaUrl`. If they reference a file from their computer, explain that Planable requires a public URL and suggest uploading to Google Drive or similar first.121- **Update coming**: Post editing is not yet available via the connector. If the user asks to revise an existing post, note this and suggest editing directly in Planable.122- **Stories / Reels**: Supported via `classification` parameter. Ask the user if they want post, story, or reels format if the platform supports multiple (Instagram, TikTok, YouTube).123- **Rate**: Create posts one at a time (not in bulk API calls) to surface any per-post validation errors clearly.