Content calendar
Each calendar entry points at a post folder (made by a platform posting skill or by socialkit-content-repurpose) and a publish time. The calendar never approves anything: every post still needs the user's own approval through the socialkit-social-core post script.
Steps
- Create
calendar.jsonfrom the example with entries{ "dir": "<post folder>", "publishAt": "<ISO 8601 with offset>" }. - Check:
node scripts/calendar.mjs --status --file calendar.json. Report entries that are invalid or need approval, and ask the user to approve those they want. - Preview what is due:
node scripts/calendar.mjs --publish-due --dry-run --file calendar.json - Publish due posts:
node scripts/calendar.mjs --publish-due --file calendar.json. For hands-off publishing the user can run this command from cron every 15 minutes.
Output contract
A status table per entry (platform, kind, publish time, status, problems) and, after publishing, the result or error per entry.
Failure handling
needs-approval: list the problems (changed files or no approval) and ask the user.- One entry failing does not stop the others; report each failure with its hint.
- Instagram and Threads have no API scheduling: they publish when
--publish-dueruns after their time, so the command must actually be run.
