schedule-posts
Skill5 starsChanged 4 months agoApache-2.0View on GitHub
Create, upload media to, and schedule social media posts through the Marky API. Use this when you have post content ready (your own captions and images/videos, or a topic for Marky to write) and you want to get it onto your connected social accounts on a schedule. Covers uploading media, creating posts, generating on-brand drafts, scheduling, and checking publish results. Reads auth and endpoint details from the marky-api skill. Also triggers on "schedule this", "post this tomorrow at 9", "queue these up", "publish this now". For a whole week planned from scratch, see plan-social-content.
- Sends data out
1 other project uses a version of this.
Adopted by
Most recently taken up by
- Perufitlife/postwire-skillstheir own version, first seen Oct 15, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- Perufitlife/postwire-skills★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository15 other files it gives its agents.
- build-brand-kitSkill
- create-post-carouselSkill
- create-post-clipsSkill
- create-post-countdownSkill
- create-post-from-imageSkill
- create-post-graphicSkill
- create-post-variationsSkill
- create-post-videoSkill
- get-startedSkill
- humanizeSkill
- manage-librarySkill
- marky-apiSkill
- plan-social-contentSkill
- review-performanceSkill
- suggest-topicsSkill
The file
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 0 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 20
Marky wants your feedback: If anything breaks or is confusing while you run this skill — and again once you finish — send Marky a quick …
- Very specific: line 120
Read publish_results — one entry per platform.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Schedule Posts
Get posts onto your connected social accounts through the Marky API. This is the hands-on "publish" chunk: upload media, create the post, schedule it, confirm it went out.
Read the marky-api skill first for the base URL, your mk_live_ key, and the full
endpoint list. Everything below uses https://api.mymarky.ai/api and the header
Authorization: Bearer mk_live_YOUR_KEY.
Marky wants your feedback. If anything breaks or is confusing while you run this skill — and again once you finish — send Marky a quick note with the submit_feedback MCP tool. See the "Marky wants your feedback" section in the marky-api skill for when and how.
Step 0 — find your workspace and platforms
# Your workspaces. Copy the id you want.
curl https://api.mymarky.ai/api/workspaces \
-H "Authorization: Bearer mk_live_YOUR_KEY"
# Which social accounts that workspace has connected.
curl https://api.mymarky.ai/api/businesses/BIZ_ID/integrations \
-H "Authorization: Bearer mk_live_YOUR_KEY"Note the platform value and status of each integration. Only target platforms whose
status is valid. You connect new accounts in the dashboard, not the API.
Two ways to make a post
A. You already wrote it
Upload media (if any) first: media already on the web goes through
upload_media_from_url; a photo or video on disk goes through create_media_upload
(returns a 1-hour URL + a curl command — PUT the raw bytes, get the media asset
back). Then create the post with create_post:
{
"caption": "Your caption here.",
"media_urls": ["URL_FROM_THE_UPLOAD"],
"restrict_publish_to": ["instagram", "facebook", "linkedIn", "twitter"],
"platform_overrides": [
{ "platform": "twitter", "caption": "The one-idea 280-char version." },
{ "platform": "linkedIn", "first_comment": "#hashtags #live #here" }
]
}Tailor per platform by default. Whenever a post targets 2+ platforms, add a
platform_overrides entry per platform that needs it (caption, media, title, link,
first_comment — unset fields fall back to the post's own). Read the workspace's
platform_writing_instructions (get_workspace) and references/platform-rules.md
in the marky-api skill for how each platform differs; the user's instructions win.
Text-only post (no media): drop media_urls and target only facebook and linkedIn
(the other platforms require media).
B. Let Marky write it (on-brand)
Marky pulls brand voice, colors, and logo from the workspace.
# 1. Kick off generation -> returns job_id
curl -X POST https://api.mymarky.ai/api/businesses/BIZ_ID/posts/generate \
-H "Authorization: Bearer mk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{ "content": "our spring product line", "count": 5 }'
# 2. Poll until completed
curl https://api.mymarky.ai/api/businesses/BIZ_ID/jobs/JOB_ID \
-H "Authorization: Bearer mk_live_YOUR_KEY"
# 3. Review the new drafts
curl "https://api.mymarky.ai/api/businesses/BIZ_ID/posts?status=NEW" \
-H "Authorization: Bearer mk_live_YOUR_KEY"Schedule it
Pick a future time (ISO 8601, UTC). Schedule each post id:
curl -X POST https://api.mymarky.ai/api/businesses/BIZ_ID/posts/POST_ID/schedule \
-H "Authorization: Bearer mk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"scheduled_publish_time": "2026-07-15T14:00:00Z",
"restrict_publish_to": ["instagram", "facebook", "linkedIn"]
}'Shortcut: you can also schedule at create time by setting "status": "SCHEDULED" and
"scheduled_publish_time" in the POST /businesses/{id}/posts body, instead of a separate
schedule call. Or call POST /businesses/{id}/posts/POST_ID/queue to drop it into the next
open slot of your posting schedule.
Publish immediately instead of scheduling:
curl -X POST https://api.mymarky.ai/api/businesses/BIZ_ID/posts/POST_ID/publish \
-H "Authorization: Bearer mk_live_YOUR_KEY"Confirm it went out
curl https://api.mymarky.ai/api/businesses/BIZ_ID/posts/POST_ID \
-H "Authorization: Bearer mk_live_YOUR_KEY"Read publish_results — one entry per platform. Poll until each is success or failed.
A failed entry includes an error type telling you why (e.g. an expired token you need to
reconnect in the dashboard).
Tips
- Maximize reach. Target every platform the media supports rather than just one. Video can go everywhere; image goes everywhere except TikTok; text-only goes to Facebook and LinkedIn.
restrict_publish_tois case-insensitive (linkedinandlinkedInboth work). When in doubt, copy theplatformvalue straight from the integrations call.- One change at a time. To move a scheduled post to different platforms later,
PATCH /businesses/{id}/posts/{post_id}with a newrestrict_publish_to. - Posts created via the API also appear in your dashboard queue, so you can eyeball them there before they publish.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

