mcpField
X
x-writing

x-writing

github.com/richtabor营销与增长7342 次安装29 周前更新
代码仓库

关于 x-writing

将笔记、工作进展和观察整理为 X 帖子的写作 Skill,面向需要把素材转成社交内容的人。它可从 Markdown 文件、macOS Notes 或用户提供的文本取材,并按写作指南生成和保存帖子。

主要功能

  1. 01读取 Markdown 或 macOS Notes 素材
  2. 02按策略筛选可分享观点
  3. 03遵循风格指南与反模式
  4. 04起草单条推文或串文
  5. 05保存获批帖子到草稿文件

适用场景

  1. 01把项目进展改写为 X 帖子
  2. 02从笔记中提炼可分享观点
  3. 03按个人语气起草推文并保存

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/richtabor/agent-skills --skill x-writing

安装后在 Claude Code 中输入/x-writing确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

README.md
references/
anti-patterns.md
x-strategy.md
scripts/
fetch-notes.sh

详细介绍

X 写作技能

概述

将你的笔记、工作动态和观察转化为吸引人的 X(Twitter)内容。此技能会分析你的笔记,找出最值得分享的见解,然后撰写符合你个人风格、能带动互动的真实帖子。

支持两种想法来源——Markdown 文件(X_SOURCE_FILE)和/或 macOS Notes(X_NOTES_APP_SOURCE)。如果两者都已配置,会询问你要使用哪一个。

流程

阶段 1:准备与分析

1.1 加载写作指南(必需——优先加载)

在进行任何其他工作之前,加载以下内容:

  1. 增长原则(references/x-strategy.md)——内容筛选标准、哪些内容适合分享、互动模式,以及笔记中应优先选择的内容。这决定分享什么。

  2. 写作风格指南(来自 WRITING_STYLE_GUIDE_PATH 环境变量)——语气、风格、结构、禁用短语和标志性表达方式。这决定如何分享。若未设置该环境变量,则跳过。

  3. 反模式——运行 echo "$WRITING_ANTI_PATTERNS_PATH" 检查环境变量。若已设置,则加载该文件;若未设置,则使用 references/anti-patterns.md。其中列出了应避免的 AI 写作模式。这对于确保帖子读起来自然、真实,而非 AI 生成,至关重要。避免使用“这不是 X,而是 Y”之类的表达、正式的过渡语、模棱两可的措辞和 AI 特有词汇。

优先级规则:指南之间存在冲突时,以 references/x-strategy.md 为准。内容价值和可分享性优先于风格偏好。写作风格指南与反模式发生冲突时,以反模式为准。

1.2 了解源材料

明确要处理哪些笔记:

  • 询问用户想将哪些笔记、想法或动态转化为帖子
  • 检查想法来源:
    • 运行 echo "$X_SOURCE_FILE"——若已设置,则有可用的 Markdown 想法文件
    • 运行 echo "$X_NOTES_APP_SOURCE"——若已设置,则有可用的 macOS Notes 笔记(使用 scripts/fetch-notes.sh get 获取)
    • 如果两者都已配置,而用户说“看看我的想法”或提出类似要求,却没有指定来源,则询问要使用哪个来源
    • 如果只配置了其中一个,则直接使用
    • 如果两者都未配置,则根据用户提供的内容开展工作(粘贴的内容、Markdown 文件等)
  • 阅读源材料,找出核心见解、经验或动态
  • 记录其中提到的具体工具、项目、数字或细节

处理多个想法/笔记的流程:

  • 用户提供多个不同的想法或笔记时,逐一处理
  • 先为第一个想法创建帖子选项
  • 等待用户批准或反馈后,再处理下一个想法
  • 这样既能避免让用户应接不暇,也便于逐步调整

1.3 应用筛选标准

使用 references/x-strategy.md 中的内容筛选框架评估笔记。优先选择已交付工作及其经验、非显而易见的见解,以及具体的工具推荐。跳过诱导互动的内容、空泛炒作,以及没有解决方案的抱怨。

阶段 2:内容创作

2.1 选择最佳角度

确定一个清晰的观点、能够证明它的具体细节,以及引子(第一行)。

2.2 选择格式

默认使用单条推文。只有当故事需要分步骤说明、包含多个相关见解或需要交代前后背景时,才使用推文串(2-5 条推文)。请参阅 references/x-strategy.md 中的 Thread Strategy。

2.3 起草内容

在起草过程中应用第一阶段加载的全部三份指南,而不只是发布前检查:

  • x-strategy.md — 格式规则、内容策略、高互动模式和标志性模式。格式至关重要:每行一句,行间留白,第一行写引子,180-250 个字符,不使用斜体。
  • 写作风格指南(WRITING_STYLE_GUIDE_PATH)— 语气、风格、禁用短语、简化语言。根据 X_CASE_STYLE 环境变量应用大小写偏好(默认使用标准大小写)。设为 "lowercase" 时,全部使用小写,包括作为代词的 "i";仅将人名、WordPress 和产品名称首字母大写。
  • 反模式 — 起草时主动避免。如果草稿中出现任何反模式,在展示前重写。硬性规则:绝不以任何形式使用 "It's not X, it's Y" 这种重新框定的表达方式。 包括:"isn't X, it's Y"、"not because X, because Y"、"isn't about X, it's about Y"、"less about X, more about Y"。请直接陈述正面主张。同时避免使用破折号、缺乏具体内容的泛泛观察和强化语气的词语。

2.4 优化互动

约 70% 的帖子以互动内容结尾(具体问题、预告或邀请)。其余帖子则以明确有力的句子收尾。请参阅 references/x-strategy.md 中的 "What Makes Content Shareable"。

2.5 质量检查

起草后,根据反模式指南重新检查每条帖子,并在展示前修正所有违规之处。然后确认:

  • 我是否在第一行就切入重点?
  • 内容是否具体?(名称、数字、示例)
  • 我会在现实中这样说吗?
  • 听起来像我自己,而不是 ChatGPT 吗?
  • 我是否使用了写作风格指南中的任何禁用短语?
  • 我是否避免了所有反模式?(重新框定、破折号、强化语气的词语、泛泛的观察)
  • 如果这是回应,我是否加入了自己的角度?
阶段 3:输出

3.1 展示内容

针对创建的每条帖子:

  1. 帖子 - 展示可直接复制粘贴的实际推文
  2. 格式 - 标明是单条推文还是推文串
  3. 字符数 - 显示长度(目标:180-250 个字符)
  4. 使用的模式 - 说明应用了 x-strategy.md 中的哪种模式
  5. 关键要素 - 指出重点突出的具体内容、工具或项目

3.2 提供选项

适当时,提供 2-3 个变体:

  • 针对同一见解采用不同角度
  • 单条推文与推文串格式
  • 使用不同的互动式结尾

3.3 说明选择理由

简要说明优先考虑了什么以及原因:

  • 从笔记中选取了哪些见解
  • 为什么突出某些细节
  • 有意省略了哪些内容

3.4 保存获准的帖子

用户批准帖子后,将其保存到草稿文件(如果文件不存在则创建)。

文件位置(保存前确定):

  1. 运行 echo "$X_DRAFTS_FILE" 检查环境变量
  2. 如果已设置,则追加到该文件路径
  3. 如果未设置,则默认使用 .x/posts.md(顶层目录中;如果文件不存在则创建)

Markdown 格式:

---

**Category:** Learning
**Date:** 2026-01-01

WordPress.com AI adds conversation alongside block editing.


People who couldn't navigate the UI before are shipping sites now. Others still use blocks for fine-tuning.

Both work. The conversation path just removes the skill barrier.

---

推文串请使用 [Tweet N] 标记:

---

**Category:** Learning
**Date:** 2026-01-01

[Tweet 1]
WordPress.com AI changes how people build sites.


[Tweet 2]
People who couldn't navigate block editing are shipping now.

[Tweet 3]
The UI is still there for fine-tuning. But conversation removes the skill barrier.

[Tweet 4]
Ask or click. Both paths work.

---

类别:

  • 学习 - 见解、包含经验总结的已交付更新
  • 更新 - 项目进展
  • 工具 - 推荐
  • 观察 - 行业观点

工作流:

  1. 向用户展示帖子
  2. 用户批准后,将其追加到 X_DRAFTS_FILE 或 .x/posts.md
  3. 用户可以直接复制粘贴到 X(文本已包含正确的换行)
  4. 用户发布后自行删除该部分,或让你删除

输出格式

创建社交内容后,请提供:

📱 Post 1 (Single Tweet, 210 chars)
─────────────────────────────────
[Actual tweet text ready to copy/paste]

Pattern: "Shipped X, learned Y"
Specifics: agents.foo, conversational context matching
Engagement: Specific question

─────────────────────────────────

From your notes, I prioritized:
✓ The discovery insight (most shareable)
✓ Why traditional search failed (specific learning)
✗ Timeline details (not core value)

Alternative angles:
• Focus on the technical implementation
• Thread breaking down the 3 attempts

交互示例

用户:"帮我根据这些关于构建内容筛选功能的笔记创作一条帖子"

回复:

Let me analyze your notes and create X content.

[Phase 1: Loads references/x-strategy.md and writing style guide]
[Reads the notes, identifies key insights and specific details]

─────────────────────────────────
📱 Post (Single Tweet, 218 chars)
─────────────────────────────────

Shipped curation v1 for agents.foo today.

Discovery is way harder than app stores. Agents are conversations, not static features.

Had to rebuild around context matching instead of keyword search.

Pattern: "Shipped X, learned Y"
Key specifics: agents.foo, context matching vs keyword search
Engagement: Implicit (landing the insight)

─────────────────────────────────

From your notes, I selected:
✓ Core insight: agent discovery is different
✓ Specific solution: context matching
✓ Concrete detail: agents.foo
✗ Number of rebuild attempts (not essential to the insight)

Would you like me to:
• Save this approved post for tracking
• Create a thread version breaking down why search patterns failed
• Add a question ending for more engagement
• Draft additional posts from other insights in your notes

获得最佳效果的提示

  1. 提供上下文:例如“关于构建内容策展功能的笔记”,而不是直接粘贴笔记
  2. 提及具体部分:例如“重点关注有关上下文匹配的经验”,有助于确定优先级
  3. 说明数量:例如“根据这些笔记创作 3 条帖子”,而不是“创作一些帖子”
  4. 指定格式偏好:例如“只要单条推文”,或“也可以接受推文串”
  5. 要求提供不同版本:例如“给我几个不同的切入角度”,方便选择
  6. 反复调整:初稿完成后,提出调整要求,例如“写得更具体些”或“在结尾加个问题”

环境变量

变量必填描述
WRITING_STYLE_GUIDE_PATH否共享写作风格指南的路径。在 Phase 1.1 中加载
WRITING_ANTI_PATTERNS_PATH否共享反面模式的路径。优先于 references/anti-patterns.md
X_DRAFTS_FILE否保存已批准帖子的文件路径。默认值:.x/posts.md
X_SOURCE_FILE否包含帖子创意的 Markdown 文件路径。用户要求查看创意时读取。
X_NOTES_APP_SOURCE否要从中获取创意的 macOS Notes 笔记名称(例如 "Tweets")。使用 scripts/fetch-notes.sh。
X_CASE_STYLE否"standard"(默认值)或 "lowercase"

评论

支持 Markdown