Postiz Agent Skill
A CLI skill that lets AI agents schedule and publish posts to 28+ platforms — X, LinkedIn, TikTok, Instagram and more — from the command line.
Docs transparently disclose auth (OAuth2/key), credential storage (~/.postiz/credentials.), API key via env vars, and data flow (upload to Postiz CDN then publish); no concealment or malicious behavior. Deducted: broad Bash(postiz:*) grant; publishing/deleting posts are irreversible external effects with no built-in user-confirmation gate in SKILL.md; draft mode mentioned but not enforced; publisher unverified.
SKILL.md is highly self-consistent with four hard rules, gotchas, error-handling and retry scripts, and clear failure feedback (e.g., TikTok silent setting discard). Deducted: static review cannot reproduce key paths; no committed test evidence covering the skill; SKILL.md is truncated mid-list at the end; delay-unit inconsistency (-d 2000 seconds vs -d 5 minutes) invites misreading.
Audience (developers/marketers scheduling posts via AI agents) and trigger scenarios are clear, 28+ platforms enumerated, parameters and outputs exemplified. Deducted: core function depends entirely on postiz.com, npm, and overseas social platforms with unknown mainland-China reachability; no Chinese-language support; limited disclosure of recovery boundaries after upload failures.
Well-layered docs (SKILL.md→deep dives→examples), Keep a Changelog format with version numbers, complete install notes. Deducted: license metadata NOASSERTION; version inconsistency across docs (PROJECT_STRUCTURE says 1.0.0, CHANGELOG at 2.0.17); truncated SKILL.md tail; publisher maintenance responsibility/update path not explicitly stated.
Core task (scheduling social posts via CLI) is fully described and output would be directly usable, with clear marginal value over manual posting; draft/retry modes control cost. Deducted: static review cannot verify real output usability; no executed representative outputs; value claim partly leans on promotional recommendations of third-party CLIs like agent-media.
Substantial auditable primary material (command syntax, API endpoints, JSON schemas, response examples) enabling cross-checking. Deducted: all author-authored; no independent reproduction, third-party execution evidence, or test results; marketing-style summaries (✅ fully supported) mixed with factual claims.
- Publishing/deleting posts are irreversible external effects; verify with draft mode first and add your own confirmation step
- Skill grants broad Bash(postiz:*) permission — review the authorization scope carefully
- Core function depends on postiz.com, npm, and overseas social platforms; mainland-China reachability unverified; no Chinese support
- License metadata is NOASSERTION and publisher unverified — confirm licensing yourself
- Docs show version inconsistency and a truncated SKILL.md tail; delay units (seconds vs minutes) are inconsistent across examples
- Static review executed nothing — actual usability and silent-failure risks (TikTok etc.) need your own testing
What does this skill do, and when should you use it?
The postiz skill exposes the Postiz CLI to AI agents for scheduling and managing posts across 28+ social platforms. It covers the full workflow: authentication, integration discovery, media upload, publishing, draft management, platform-specific settings, and analytics. All commands emit JSON, making them easy for agents to parse and chain. The repo also ships as a Claude Code plugin, a Cursor plugin, and a Grok plugin marketplace entry, installed via npx skills.
Runs the postiz CLI: auth:login/auth:status (OAuth2 device flow or POSTIZ_API_KEY) for authentication; integrations:list and integrations:settings to discover connected accounts and their settings schemas; postiz upload to push media and get Postiz-verified URLs (required by TikTok, Instagram, YouTube and others); posts:create to publish scheduled multi-platform posts with media, comments/threads, and per-provider settings; posts:list/status/delete/settings for post management; analytics:platform and analytics:post for metrics, with posts:missing + posts:connect to resolve {"missing": true} responses when platforms don't return a post ID.
- A social media manager delegating a weekly multi-platform campaign with identical content to X, LinkedIn, and Facebook.
- A video creator publishing to TikTok with DIRECT_POST after uploading the video via postiz upload.
- A community admin posting to a specific subreddit with the correct flair fetched dynamically.
- A marketing team batch-scheduling a week of content and truncating copy to each platform's character limit.
- An agent user monitoring followers, impressions, and engagement, and fixing missing release IDs when analytics return {"missing": true}.
What are this skill's strengths and limitations?
- Covers 28+ platforms including X, LinkedIn, Reddit, YouTube, TikTok, Instagram, and Facebook
- All commands output JSON, easy for agents to parse programmatically
- OAuth2 device-flow authentication with no manual client-secret handling
- Integration tools workflow dynamically fetches Reddit flairs, YouTube playlists, and similar data
- SKILL.md documents common pitfalls explicitly (mandatory media upload, TikTok silently discarding invalid settings)
- Hard dependency on the Postiz service and Postiz API (default api.postiz.com) — not a purely local tool
- The GitHub repo's License field is NOASSERTION while the main Postiz project is AGPL-3.0; verify before commercial use
- Media not passed through postiz upload is rejected by most platforms, adding a mandatory step
- Some platforms (e.g. TikTok) don't return a post ID after publishing, requiring manual posts:connect before analytics work
- No independent test suite or per-platform verification beyond the repo's own examples
How do you install this skill?
1) Install the CLI: npm install -g postiz (or pnpm install -g postiz). 2) Install the skill: npx skills add gitroomhq/postiz-agent. Or as a Claude Code plugin: /plugin marketplace add gitroomhq/postiz-agent then /plugin install postiz@postiz-agent. Cursor users can install from the Customize panel; Grok Build users can install from the xAI plugin marketplace (the Grok plugin also bundles the hosted MCP server at mcp.postiz.com). Manual local installs are described via the repo's .cursor-plugin/plugin. manifest.
How do you use this skill?
Authenticate first: postiz auth:login (device flow) or export POSTIZ_API_KEY=your_api_key; optionally export POSTIZ_API_URL for a self-hosted API. Then follow the workflow: postiz auth:status → postiz integrations:list for integration IDs → postiz integrations:settings <id> for rules and schemas → postiz upload <file> and extract .path with jq → postiz posts:create -c "Content" -s "2024-12-31T12:00:00Z" -i "integration-id" -m "uploaded-url". Caveats: values passed to -m must be the .path from postiz upload, never raw files or external URLs; TikTok requires content_posting_method set to DIRECT_POST; the schedule date is a required ISO 8601 timestamp.