/install youmind-article-dispatch
Content Dispatch Hub — One Topic, Every Platform
Distribute your content to multiple platforms from a single topic. Each platform skill independently adapts content for its target audience — developers on Dev.to, newsletter readers on Ghost, and more.
Onboarding
⚠️ MANDATORY: When the user has just installed this skill, run the onboarding flow IMMEDIATELY. Translate to the user's language.
The onboarding flow sets up TWO things in ONE conversation: platform roster (where to publish) and author DNA (how to write). These are NOT separate steps — they happen together during the first dispatch.
Phase 1: Platform roster (30 seconds)
✅ Content Dispatch Hub installed!
Quick setup — which platforms do you use?
- Dev.to 2. Hashnode 3. WordPress 4. Tumblr 5. Ghost
- Beehiiv 7. Kit 8. X/Twitter 9. WeChat (公众号) 10. Qiita
(list numbers, e.g. "1, 5, 8")
After user selects:
- Save to
~/.youmind/dispatch-roster.yaml→active_platforms - For each selected, check skill installed + YouMind connection via
validate - Report status table (✅ connected / ❌ → setup link)
Phase 2: Author DNA bootstrap (integrated into first dispatch)
Do NOT ask the user to fill a profile form. Instead, bootstrap the author profile from one of two paths:
Path A — User has articles in YouMind KB (preferred):
- Call YouMind search API to fetch the user's recent 10–15 articles
- Analyze across articles: avg paragraph length, code density, language distribution, opening patterns, depth level, typical word count, tone markers
- Propose a profile:
📝 I analyzed your recent articles. Here's what I see:
- Voice: Conversational-technical, first-person practitioner
- Audience: Mid-level developers (you assume REST/Git knowledge)
- Code density: High (avg 4 code blocks per article)
- Depth: Practitioner-level (how-to with real gotchas, not beginner intros)
- Languages: English primary, Chinese secondary
- Signature moves: You always lead with the problem, include a gotchas section, and end with working code
Sound right? I'll use this as your baseline across all platforms. You can adjust anytime.
- User confirms/adjusts → save to
~/.youmind/author-profile.yaml - Immediately proceed to first dispatch with the profile active
Path B — New user, no articles (cold start): Embed 3 targeted questions INTO the first dispatch request, not as a separate quiz:
You said: "帮我写一篇关于 AI agents 的文章发到 Dev.to 和 X"
Great! Since this is your first dispatch, 3 quick questions so I write in YOUR voice:
1. 这篇文章的风格? (a) 代码先行,先看效果再讲原理 (b) 故事驱动,用经历带出技术点 (c) 数据说话,benchmark 和对比为主 (d) 手把手教学,假设读者是入门者
2. 你的读者是谁? (a) 做产品的开发者 (b) 正在学习的学生/新人 (c) 做技术决策的 TL/架构师 (d) 泛科技读者
3. 你的内容里绝对不要出现什么? (自由回答 — 例如"不要营销话术"、"不要 AI 味"、"不要太长")
After user answers:
- Map answers to
author-profile.yamlfields - Save profile
- Immediately continue the dispatch — no second round-trip. The first article is generated WITH the profile already active.
- After publishing, confirm: "Saved as your writing profile. Next time just say '帮我分发', I know your style."
Why this matters
| Approach | First article quality | User friction |
|---|---|---|
| ❌ No profiling | Generic, platform-default | Zero (but bad output) |
| ❌ Separate 5-question form | Better, but profile ≠ real usage | High (feels like homework) |
| ✅ Path A: KB bootstrap | Excellent — based on real writing | Near-zero (confirm/adjust) |
| ✅ Path B: 3 inline questions | Good — targeted baseline | Low (embedded in first dispatch) |
Roster + Profile updates after onboarding
"Add Ghost to my platforms" → update
~/.youmind/dispatch-roster.yaml"Remove X/Twitter" → update roster "I want to write more beginner content" → update~/.youmind/author-profile.yaml"Analyze my recent articles again" → re-run Path A bootstrap
Usage Modes
Mode 1: Single Platform Routing
User specifies one platform → dispatch directly invokes the corresponding platform skill.
"Write about AI agents for Dev.to" → invoke youmind-devto-article
"Write a weekly issue for Beehiiv" → invoke youmind-beehiiv-article
"Write a Tumblr post about indie hacking" → invoke youmind-tumblr-article
"Draft a public creator post for Kit" → invoke youmind-kit-article
"Post a thread about startup culture on X" → invoke youmind-x-article
"发布一篇技术文章到 WordPress" → invoke youmind-wordpress-article
Mode 2: Multi-Platform Dispatch
User specifies multiple platforms → dispatch invokes each platform skill sequentially with the same topic.
"Write about AI agents and publish to Dev.to, Beehiiv, and Kit"
"把这个话题发布到 Dev.to 和 Hashnode"
Mode 3: All-Platform Broadcast
User wants maximum reach → dispatch to all installed platform skills.
"Publish everywhere about the future of AI coding"
"全平台发布:AI 编程的未来"
Platform Skills Are Independent
Each youmind-{platform}-article skill is independently installed, independently published, and fully self-contained. They work without this dispatch hub. Dispatch is an optional orchestration layer — not a dependency, not a framework that platform skills must fit into.
How dispatch connects to platform skills (when both are installed)
- Discovery, not coupling. Dispatch scans for installed
youmind-*-articleskills at runtime. It optionally reads a smalldispatch-capabilities.yamlat each skill's root to learn what operations that skill supports (generate, adapt, condense, translate, etc.) and its hard limits. If a platform skill does not ship this file, dispatch falls back to sensible defaults and still invokes it normally. - Brief is an optional extra, not a requirement. When dispatch invokes a platform skill, it passes a content brief (topic, angle, keywords, optional
resolved_authorblock). Platform skills that understand these fields use them as richer context; skills that don't simply ignore the extras and work as usual. - Author profile lives in the user's home directory, not in this skill. Both this hub and platform skills read
~/.youmind/author-profile.yaml— the canonical shared location defined inshared/YOUMIND_HOME.md. Uninstalling dispatch does not remove the profile; platform skills continue to work standalone with full DNA support. - Results flow back as a standardized shape (status, URL,
result_links, title, conformance_report) so dispatch can aggregate multi-platform runs. Each platform skill publishes this same result shape regardless of whether dispatch is present — it's a clean output API, not a contract with dispatch.
Zero coupling obligations for platform skills
- Platform skills do NOT import from dispatch.
- Platform skills do NOT require dispatch to be installed.
- Platform skills do NOT break if dispatch is uninstalled.
- Platform skills do NOT need to be updated when dispatch changes.
dispatch-capabilities.yamlis opt-in metadata that lets dispatch route more intelligently. Removing it reverts to defaults; it never breaks the platform skill.
The optional integration protocol is documented at shared/DISPATCH_CONTRACT.md (v1.0). Platform skills that want richer dispatch integration may follow it; those that don't, don't.
Platform Registry
| Platform | Skill | Audience | Best For |
|---|---|---|---|
| Dev.to | youmind-devto-article |
Developers, OSS contributors | Technical tutorials, tool reviews, dev experience |
| Hashnode | youmind-hashnode-article |
Dev bloggers, tech writers | In-depth technical blogs, series, developer stories |
| WordPress | youmind-wordpress-article |
General audiences | Long-form articles, SEO-optimized content |
| Tumblr | youmind-tumblr-article |
Blog followers, creator audiences | Voice-driven essays, build logs, creator notes |
| Ghost | youmind-ghost-article |
Publishers, newsletter writers | Editorial content, premium publications |
| Beehiiv | youmind-beehiiv-article |
Newsletter operators, creator teams | Growth updates, newsletter essays, operator notes |
| Kit | youmind-kit-article |
Creators, audience builders | Broadcasts, creator updates, public newsletter feed posts |
| X/Twitter | youmind-x-article |
General, viral audiences | Hot takes, threads, breaking news commentary |
youmind-wechat-article |
Chinese audiences | Styled long-form articles, official account content | |
| Qiita | youmind-qiita-article |
Japanese developers | Technical articles, tutorials, knowledge sharing |
Auth: All platforms use YouMind OpenAPI. You need only a
youmind.api_key— platform credentials are stored encrypted in YouMind Connector Settings. No local platform keys.Note: Each platform skill must be installed separately. Dispatch checks your roster (
dispatch-roster.yaml) on each run.
Quick Skill Hints
Use these as lightweight routing clues before you open the full platform skill:
youmind-devto-article: code-first Markdown posts, TL;DR, practical developer tutorial voiceyoumind-hashnode-article: deeper developer-blog storytelling, series-friendly, canonical-aware cross-postingyoumind-wordpress-article: HTML CMS publishing, taxonomy/excerpt aware, company-blog friendlyyoumind-tumblr-article: voice-driven creator posting, one title plus one clean rich-text bodyyoumind-ghost-article: editorial publication tone, excerpt/tag aware, newsletter-style HTMLyoumind-beehiiv-article: newsletter-first writing, subject/preview/web-email surfaces matteryoumind-kit-article: creator broadcast format, inbox/feed readability, compact CTA structureyoumind-x-article: concise hooks, thread splitting, sparse hashtags, native social adaptationyoumind-wechat-article: WeChat-native rich formatting, draft-box publishing, built-in direct-send for ready articlesyoumind-qiita-article: Japanese developer Markdown, environment/setup context, note-box friendly
Dispatch Pipeline
Step 1: Parse Request + Load Roster
- Extract topic/brief from user input
- Load
~/.youmind/dispatch-roster.yamlfor the user's active platform list - Resolve target platforms:
- User says "帮我分发" / "publish everywhere" → use
active_platformsfrom roster - User specifies platforms explicitly → use those (even if not in roster)
- No roster exists → ask user which platforms (triggers onboarding)
- User says "帮我分发" / "publish everywhere" → use
- For each target platform: verify skill installed + connection status from roster
- Skip platforms that are not installed or not connected (with clear message + setup link)
Step 2: Load Author Profile + Generate Content Brief
2a — Load author profile (if exists):
Read ~/.youmind/author-profile.yaml (canonical shared location — see shared/YOUMIND_HOME.md). This file captures the user's cross-platform writing DNA — voice, audience, content preferences, and per-platform overrides. See references/author-profile-spec.md for format. Fallback: if the ~/.youmind/ path is missing but skills/youmind-article-dispatch/author-profile.yaml exists (legacy), offer to migrate.
If no profile exists → skip this step; dispatch works without it (just less personalized). After the first successful dispatch, offer to help the user build one.
2b — Generate content brief (see references/content-brief-format.md):
topic: "The core topic sentence"
angle: "The specific angle or atomic insight"
keywords: ["keyword1", "keyword2", "keyword3"]
language: "en" # or zh, ja, etc.
source_material: [] # from YouMind knowledge mining (if available)
resolved_author: {} # per-platform resolved profile (computed in Step 3)
constraints: {} # any user-specified constraints
YouMind knowledge mining: If the user has a YouMind API key configured in any platform skill's config, run mine-topics ONCE and include the results in the brief. This avoids redundant YouMind calls across platform skills.
2c — Resolve author profile per platform:
For EACH target platform, merge the author profile with that platform's DNA using the rules in references/content-adaptation-matrix.md. This produces a resolved per-platform profile — NOT the raw author file. Each platform skill receives only the resolved, relevant fields for its platform. This prevents raw-profile leakage and irrelevant context bleed.
If a depth mismatch is detected (e.g., author targets "expert" but platform audience is "general"), the merge triggers a mandatory outline adaptation step — not just a warning. See matrix Priority 5.
Step 3: Dispatch to Platform Skills
For each target platform, invoke the platform skill with the content brief as context.
Sequential mode (default): Run each platform skill one at a time. The agent reads each skill's SKILL.md and follows its pipeline, passing the content brief as the initial topic/context.
Parallel mode (if subagents available): Spawn one subagent per platform. Each subagent independently runs its platform skill's full pipeline. Use this when the agent platform supports parallel subagents.
MANDATORY: Pass the content brief to each platform skill. When invoking a platform skill, include:
- The topic and angle from the brief
- Any YouMind knowledge context already mined
- The instruction to adapt content for that specific platform's audience
Step 4: Collect Results
Gather results from all platform dispatches:
| Field | Description |
|---|---|
| platform | Platform name |
| status | published / draft / failed / skipped |
| url | URL of published content (if available) |
| result_links | Best clickable links for post page / dashboard / stats entry |
| title | Final title used |
| error | Error message (if failed) |
Step 5: Summary Report
Present a summary table to the user:
## Dispatch Results
| Platform | Status | Title | URL |
|----------|--------|-------|-----|
| Dev.to | ✅ Published | "AI Agents: A Practical Guide" | https://dev.to/... |
| Ghost | ✅ Published | "Why AI Agents Matter for..." | https://newsletter.example.com/... |
| X/Twitter | ✅ Thread posted | "🧵 AI Agents are changing..." | https://x.com/... |
After the table, add a compact Result links section for each platform so the user can click straight into the post page, dashboard, or stats entry point. If a platform has no direct analytics URL, include the best platform entry URL instead.
Resilience Rules
| Rule | Description |
|---|---|
| Isolate failures | One platform failing MUST NOT stop other platforms. Report partial results. |
| Progress updates | After each platform completes, show a brief status update to the user. |
| Missing skills | If a requested platform skill is not installed, skip it with a clear message. |
| Config missing | If a platform skill's config is not set up, skip it and suggest setup instructions. |
| Fallback to draft | When in doubt, create as draft rather than publishing directly. |
References
| File | Purpose |
|---|---|
references/platform-registry.md |
Detailed platform capabilities, audience profiles, and constraints |
references/dispatch-protocol.md |
Step-by-step dispatch workflow with examples |
references/content-brief-format.md |
Standardized content brief format specification (v2: includes resolved author profile) |
references/author-profile-spec.md |
Author profile format, cold-start guide, evolution strategy |
references/content-adaptation-matrix.md |
How author DNA × platform DNA merge (priority rules, merge algorithm) |
references/profile-learning.md |
How author DNA accumulates from usage (5 learning sources, diff analysis, cadence) |
shared/YOUMIND_HOME.md |
User-home directory convention (~/.youmind/ — shared across ALL YouMind skills) |
shared/DISPATCH_CONTRACT.md |
Optional interop protocol between this hub and platform skills (v1.0) |
skills/youmind-{platform}-article/dispatch-capabilities.yaml |
Per-platform capability manifest (dispatch reads dynamically) |
author-profile.example.yaml |
Example author profile — copy to ~/.youmind/author-profile.yaml and customize |
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install youmind-article-dispatch - 安装完成后,直接呼叫该 Skill 的名称或使用
/youmind-article-dispatch触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
youmind-article-dispatch 是什么?
Dispatch content to multiple platforms from a single topic — Dev.to, Hashnode, WordPress, Tumblr, Ghost, Beehiiv, Kit, X/Twitter, WeChat, Qiita. Each platfor... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 27 次。
如何安装 youmind-article-dispatch?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install youmind-article-dispatch」即可一键安装,无需额外配置。
youmind-article-dispatch 是免费的吗?
是的,youmind-article-dispatch 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
youmind-article-dispatch 支持哪些平台?
youmind-article-dispatch 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 youmind-article-dispatch?
由 YouMind(@mindy-youmind)开发并维护,当前版本 v1.0.0。