OpenQuok Core
Schedule and manage social posts with the openquok CLI — authenticate, upload media, create drafts and scheduled post…
Message OpenClaw from Telegram, WhatsApp, or Slack. Add the openquok-core skill so it schedules Threads posts while you review on the calendar or kanban.
npx skills add https://github.com/Ratimon/openquok-monorepo/tree/main/agent --skill openquok-core -ybot
Queued on your OpenQuok calendar:
Post ref: oq-7f3a · review before publish
10:23 AMYour messaging apps
Send a scheduling request to OpenClaw like any other message. The openquok-core skill runs on your host. It finds connected channels, attaches media, and queues drafts. You approve on the calendar before anything publishes.
Built for Meta Threads with OpenClaw
Stay consistent on Threads without daily manual posting. Ask your agent to schedule, reply, and repost while you focus on building. Message OpenClaw to draft Threads posts from chat — you approve before publish.
Batch a week of Threads. Review drafts before they publish. Track engagement alongside your other channels. OpenClaw queues Threads drafts at volume — your team approves before publish.
Pipe Threads drafts from your backend via the public API, CLI, or MCP. Configure Thread-specific settings such as follow-up replies. Run OpenClaw per client workspace so Threads drafts stay isolated.
Connect Once
Choose a workspace, connect with OAuth2 — approve in your browser, and credentials stay on the host. Message OpenClaw from Telegram, WhatsApp, or Slack to draft and schedule without opening another app.
CLI authentication options
# OAuth2 device flow (interactive — opens browser)
openquok auth:login
openquok auth:statusbot
Sample channels
These chips set format and character limits. They are not your accounts.
Workspace tools. Sign in or sign up to use your library, Photo Editor, and signatures.
71 / 500
Ship the company thread — a personal profile can comment after publish.
Each reply runs after your chosen delay
Post editor
Compose within the 500-character limit. Attach a single image, a carousel, or a video. Queue same-account follow-up replies before the main thread goes live. Preview the full thread from one draft.
CLI command options
# Draft + human checklist (Threads)
openquok posts:create --json ./examples/threads-text-only.json
openquok posts:review-todo <post-id> --note "…"
openquok posts:status <post-id> --status draft
openquok posts:status <post-id> -s scheduleInsights
Track views, likes, replies, reposts, and quotes from connected Threads profiles inside OpenQuok analytics. Then schedule more of what already works.
CLI analytics options
# Threads platform metrics
INTEGRATION_ID=$(openquok integrations:list | jq -r '.[] | select(.identifier=="threads") | .id')
openquok analytics:platform "$INTEGRATION_ID" -d 30
# Per-post insights
openquok analytics:post <post-id> -d 7On it — openquok-core
Created drafts with cover image attached.
✓ Queued for Tue 9:00 AM · ref oq-7f3a
Pulled platform analytics (7d)
Top post: 12.4k impressions, 842 reactions — carousel on product tips.
Facebook Page leads with +24% impressions vs last week.
bot
Queued on your OpenQuok calendar:
Post ref: oq-7f3a · review before publish
10:23 AMScale what works
Spot a winner in analytics, then clone more dedicated workspaces for the next client or brand while OpenClaw queues the next wave in parallel — credentials, channels, and agent context stay isolated as you scale.
Parallel CLI sessions
# Workspace A — launch (client brand)
openquok posts:create -c "…" -s "…" -t draft -i "<uuid>"
openquok posts:status <post-id> -s schedule
# Workspace B — another client (isolated credentials)
openquok posts:list --status draft
# Same workspace — metrics in parallel
openquok analytics:platform <integration-uuid> -d 7
openquok analytics:post <post-id> -d 30Playbooks & Building Blocks Directories
Mix Threads-focused skills, and MCP servers — then tailor them to your OpenClaw workflow.
Schedule and manage social posts with the openquok CLI — authenticate, upload media, create drafts and scheduled post…
Browse every Threads building block.
comparisons
Most social scheduler SaaS keeps you in a browser tab. OpenQuok is built for Threads from OpenClaw
CLI
Threads commands from the openquok-core skill — structured JSON on stdout, human-in-the-loop drafts, and workspace media uploads.
openquok integrations:list | jq -r '.[] | select(.identifier=="threads") | .id' Discover your Threads integration UUID
openquok integrations:settings "$THREADS_ID" Get Threads posting rules and character limits
openquok posts:create --json ./examples/threads-text-only.json Schedule a text-only Threads post
openquok posts:create --json ./examples/threads-follow-up-replies.json Schedule a post and follow-up replies
openquok posts:create --json {
"scheduledAt": "2026-01-01T12:00:00.000Z",
"status": "scheduled",
"body": "Thread 1/2: Why we built this",
"integrationIds": ["<integration-id>"],
"providerSettingsByIntegrationId": {
"<integration-id>": {
"threads": {
"replies": [
{
"id": "reply-1",
"message": "Thread 2/2: Architecture diagram",
"delaySeconds": 60,
"media": [{ "id": "<reply-media-id>", "path": "https://cdn.example.com/reply.jpg" }]
}
]
}
}
}
} Schedule a follow-up reply with image or video on threads.replies
openquok posts:create --json {
"scheduledAt": "2026-01-01T12:00:00.000Z",
"status": "scheduled",
"body": "Main thread from channel A",
"integrationIds": ["<integration-id-1>"],
"providerSettingsByIntegrationId": {
"<integration-id-1>": {
"threads": {
"crossAccountPlugs": [
{
"plugName": "threads-cross-account-comment",
"enabled": true,
"delayMs": 120000,
"integrationIds": ["<integration-id-2>"],
"fields": {
"comment": "Great thread — sharing from our other account."
}
}
]
}
}
}
} Comment from another Threads channel after publish (crossAccountPlugs)
openquok posts:create --json {
"scheduledAt": "2026-01-01T12:00:00.000Z",
"status": "scheduled",
"body": "Big announcement! 🧵",
"integrationIds": ["<integration-id>"],
"providerSettingsByIntegrationId": {
"<integration-id>": {
"threads": {
"internalEngagementPlug": {
"enabled": true,
"message": "Have questions? Reply here and I will get back to you.",
"delaySeconds": 300
}
}
}
}
} Same-account delayed engagement reply (internalEngagementPlug)
openquok plugs:catalog | jq '.plugs[] | select(.identifier=="threads")' List global plug types and field names for this provider
openquok plugs:list "$ID" List saved global plug rules on this channel
openquok plugs:upsert "$ID" --func autoPlugPost --fields '[{"name":"likesAmount","value":"100"},{"name":"post","value":"Thanks for reading!"}]' Auto-reply when a thread reaches a likes threshold (global plug)
openquok analytics:platform "$THREADS_ID" -d 30 Pull 30-day Threads analytics
Chat adapters
OpenClaw supports multiple messaging platforms out of the box:
Web-based via Baileys library
Bot API via grammY
Bot via discord.js
App via Bolt SDK
CLI-based via signal-cli
macOS only, AppleScript bridge
Extension Channels
Enterprise chat and meeting rooms
Workspace messaging for Google accounts
Federated open messaging protocol
Popular chat platform in Vietnam
Start with Threads, then schedule every other network from OpenClaw.
Frequently asked questions
What OpenClaw is, how to install openquok-core, scheduling Threads posts, human approval, and how agents draft from chat.
Posts created through the CLI land in your OpenQuok workspace as drafts or scheduled items. You can review on the calendar or kanban, move posts through draft and review, and approve what should publish.
Step-by-step self-host setup for connecting OpenQuok to OpenClaw — install commands, auth patterns, and configuration snippets.
Connect your agent, review every draft, and schedule posts across channels before anything goes live.