mcpField
B
brand-voice-synthesizer

brand-voice-synthesizer

github.com/respira-press营销与增长4988 次安装1 周前更新
代码仓库

关于 brand-voice-synthesizer

此 Respira for WordPress 技能从已发布文章中提炼网站的语气、用词和写作习惯,并将摘要保存到站点记忆,供后续内容工作流参考。它也可用近期内容生成品牌一致性报告,并要求确认后才保存推断结果。

主要功能

  1. 01分析已发布文章的写作风格
  2. 02提炼语气、句式及偏好用词
  3. 03将摘要保存到站点记忆
  4. 04检查近期内容的品牌一致性
  5. 05更新前展示已有语气差异

适用场景

  1. 01为内容生成工作流建立品牌语气基准
  2. 02品牌改版后重新分析文风
  3. 03检查近期文章是否符合品牌语气

MCP 相关

需要 Respira MCP 服务。技能使用 Respira 工具读取文章、访问站点记忆并在获得确认后保存语气摘要。

安装

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

$npx skills add https://github.com/respira-press/agent-skills-wordpress --skill brand-voice-synthesizer

安装后在 Claude Code 中输入/brand-voice-synthesizer确认已加载。

详细介绍

品牌语气合成器

版本: 1.2.0 更新日期: 2026-09-13 最新更新: v1.2.0 会通过 respira_remember 将语气保存到 Site Memory 中,因此后续每次会话都会通过 respira_get_site_context 读取该语气,且无需额外调用,任何 AI 客户端都适用。完整档案由用户保存;网站会保留精简版,以适应记忆中 500 个字符的条目限制。低于 8.3 的插件仍使用 respira_brand_voice 选项。v1.1.0 将语气档案接入了品牌系统的其余部分。提取的档案现在会通过 respira_get_option(先比较差异)和 respira_update_option 持久保存到站点级记忆中;还会与 Page Template Library 和 Design System Synthesizer 技能显式互链,让文案和布局共享同一套品牌基础;此外,还会基于 respira_generate_activity_report 生成品牌一致性报告,帮助你了解近期内容在多大程度上符合品牌语气。 类别: 智能 状态: 稳定 要求: 用于 Site Memory 的 Respira for WordPress 插件 8.3+(旧版插件会回退到选项)+ MCP 服务


描述

阅读 WordPress 网站上 5–10 篇已发布的文章,提取品牌语气——包括语调、词汇、句式、使用的人称、正式程度、标志性表达以及网站从不使用的表达。将其保存到网站中,让今后每项内容创作技能生成的文案都能体现品牌风格,而不是听起来像通用 AI。

这是 Design System Synthesizer 在语言表达方面的对应技能。两者共同构成完整的品牌基础,供今后每项内容生成技能参考。


生成内容

存储在站点级别的结构化 brand_voice 产物。架构:

{
  "version": "1.1.0",
  "synthesized_at": "2026-05-24T14:30:00Z",
  "synthesized_from": ["/blog/post-a/", "/blog/post-b/", "..."],
  "n_samples": 8,
  "total_words_sampled": 12450,
  "person": "we",
  "formality": "approachable_professional",
  "sentence_length_avg_words": 14,
  "sentence_length_median_words": 12,
  "sentence_length_p90_words": 28,
  "paragraph_length_avg_sentences": 3.2,
  "reading_grade_avg": 8.4,
  "tone_descriptors": ["confident", "direct", "lightly playful", "evidence-driven"],
  "signature_phrases": [
    "the short version is",
    "here's what we learned",
    "let's break that down"
  ],
  "common_openers": ["here's", "the", "we"],
  "common_closers": ["that's the lesson", "more soon", "questions welcome"],
  "lexicon_preferred": ["ship", "wire", "land", "tighten", "lean into"],
  "lexicon_avoided": ["leverage", "synergy", "best-in-class", "world-class", "innovative", "cutting-edge", "revolutionary"],
  "punctuation_patterns": {
    "em_dash_usage": "frequent",
    "exclamation_marks": "never",
    "oxford_comma": true,
    "ellipsis_usage": "rare",
    "parenthetical_asides": "frequent"
  },
  "structural_patterns": {
    "opens_with_question": "sometimes",
    "uses_headings": "every_post",
    "uses_bullet_lists": "often",
    "uses_code_blocks": "for_technical_posts",
    "uses_blockquotes": "rare",
    "ends_with_call_to_action": "never"
  },
  "examples": {
    "good_paragraph": "We shipped the redesign last week. The short version is: fewer pages, more density, one CTA per screen. Conversion is up 18% on the new pricing page so far. We'll know more by end of month.",
    "bad_paragraph": "We are thrilled to announce the launch of our revolutionary new design! This best-in-class experience leverages cutting-edge UX innovations to deliver unparalleled value!"
  }
}

完整产物供用户保存:可以粘贴到风格指南中,也可以另存为文件。网站会在 Site Memory(第 6 步)中保留精简版,因为 Site Memory 会通过 respira_get_site_context 注入今后的每次会话,而选项只有明确知道要读取它的技能才能访问。早期版本曾计划使用独立的产物存储;后来 Site Memory 取代了这一方案。


适用场景

  • 首次为内容密集型网站设置 AI 工作流时
  • 运行任何会生成文案的内容生成技能之前
  • 品牌语气更新后(例如发布新版风格指南、更换首席内容官或品牌重塑)
  • 每季度刷新一次——语气会逐渐偏移,重新合成有助于及时发现变化

触发语

  • “提取我的品牌语气”
  • “我的写作风格是什么”
  • “分析我的语调”
  • “编写语气指南”
  • “合成我的语气”
  • “记录我的写作风格”
  • “这个网站的语气是什么”

执行工作流

第 1 步——确认网站

调用 respira_get_active_site + respira_get_site_context。

第 2 步——挑选有代表性的文章

调用 respira_list_posts,设置 status=publish、limit=20。从列表中挑选 5–10 篇能够代表品牌语气的文章:

  • 优先选择最近 6 个月内的文章,而非较早的文章——语气会逐渐偏移
  • 优先选择网站所有者发布的文章,而非客座文章(查看 author)
  • 混合不同篇幅:同时纳入短文和长篇文章
  • 跳过自动生成的内容(例如使用模板的发行说明、自动生成的变更日志)
  • 跳过翻译内容(译者的语气会干扰分析)

如果文章不足 5 篇,就使用现有文章,但要如实填写 n_samples。

第 3 步——提取每篇文章的内容

根据当前使用的构建器,对选中的每篇文章调用 respira_read_post(post_id) 或 respira_extract_builder_content(post_id)。删除以下内容:

  • 代码块(保留描述信息,但不将代码纳入语气分析)
  • 嵌入式短代码
  • 图片说明文字(其语气通常与正文不同)
  • 自动生成的页脚(反向链接、“订阅”号召性用语等)
第 4 步 — 分析

对于清理后的文本语料,计算:

  1. 人称: 使用最多的人称代词(I / we / you / 无人称代词)。如果混用,请注明。
  2. 正式程度: 随机阅读 5–10 个段落。按以下尺度归类:随意 / 平易近人的专业风格 / 正式 / 学术。
  3. 句子长度: 平均值、中位数、p90。
  4. 段落长度: 每段的平均句子数。
  5. 阅读年级: Flesch-Kincaid 或类似指标。
  6. 语气描述词: 根据语料选出 3–5 个形容词。自信?谨慎?活泼?直接?以证据为依据?讲述故事?
  7. 标志性短语: 在多篇文章中反复出现的多词短语。这些是作者的习惯用语。
  8. 常见开头/结尾: 段落通常如何起笔和收尾?
  9. 偏好的词汇: 作者常用的动词和名词。(“ship”而非“release”;“wire”而非“integrate”;“land”而非“launch”)
  10. 避免使用的词汇: 语料中明显缺失、但竞争对手或通用 AI 常用的词。(“leverage”、“synergy”、“best-in-class”、“innovative”、“revolutionary”。)缺失本身就是信号。
  11. 标点习惯: 使用破折号吗?感叹号呢?牛津逗号呢?括号补充说明呢?
  12. 结构模式: 文章是否以问题开头?是否使用标题?是否使用项目符号列表?结尾是否有 CTA?
第 5 步 — 向用户展示综合后的语气风格

输出一份易读的摘要:

## Brand voice synthesized for {site_url}

Based on {n_samples} published posts ({total_words_sampled:,} words sampled, mostly from the last 6 months).

**Person:** {person} ("we" / "I" / "you" / mixed)
**Formality:** {formality}
**Sentence length:** ~{sentence_length_avg_words} words avg ({sentence_length_p90_words}-word p90)
**Reading grade:** {reading_grade_avg}
**Tone:** {tone_descriptors joined}

**Signature phrases this site uses repeatedly:**
{signature_phrases as bulleted list}

**Words this site reaches for:**
{lexicon_preferred as inline list}

**Words this site conspicuously avoids:**
{lexicon_avoided as inline list}

**Punctuation quirks:**
- em dashes: {em_dash_usage}
- exclamation marks: {exclamation_marks}
- oxford comma: {oxford_comma}

**Structural patterns:**
- Opens with a question? {opens_with_question}
- Uses headings? {uses_headings}
- Ends with a CTA? {ends_with_call_to_action}

**A paragraph that sounds like you:**
> {examples.good_paragraph from the corpus}

**A paragraph that does NOT sound like you (generic AI):**
> {examples.bad_paragraph as a constructed counter-example}

询问用户:"这符合你对自己语气风格的描述吗?有什么需要补充或更正的吗?"

第 6 步:将语气风格保存到 Site Memory

Site Memory 是网站自己的记忆。每条记录都会在之后的每个会话中,通过 site_memory 出现在 respira_get_site_context 中,并且所有 AI 客户端都能读取,无需额外调用。每条记录最多 500 个字符,因此请保存提炼后的语气风格,而非 JSON。

  1. 读取现有内容。 调用 respira_list_memory,查找 brand-voice 和 brand-voice-avoid 键。如果它们存在,在替换任何内容之前,向用户展示拟更改的内容(人称、语气、新增或移除的词语)。绝不要悄悄替换已保存的语气风格。
  2. 提炼为两条记录,每条少于 500 个字符:
    • brand-voice,类型为 preference:用两三句话说明人称、正式程度、句子长度、语气和标志性短语。例如:“使用第一人称复数,风格平易、直接。句子平均 14 个词;每段不超过四句话。常用 ship、wire、land、tighten。标志性开头:‘the short version is’。”
    • brand-voice-avoid,类型为 preference:列出需要避免的词语和标点习惯。例如:“绝不使用:leverage、synergy、best-in-class、world-class、innovative、cutting-edge、revolutionary。不用感叹号。使用牛津逗号。”
  3. 先询问,再保存。 这种语气风格是推断得出的,并非用户亲口描述,因此请展示这两条记录,并且只有用户同意后才使用 respira_remember 保存。使用类型 preference,绝不要使用 rule:规则会在每次写入时强制执行,且只有所有者才能移除,因此不适合用于风格设置。
  4. 验证。 respira_list_memory 会显示这两个键及今天的日期。

如果插件版本低于 8.3,则没有记忆工具。改为使用以下方式:通过 respira_get_option('respira_brand_voice') 比较差异;用户同意后,使用 respira_update_option('respira_brand_voice', <json>) 写入;然后读回确认。

输出:"品牌语气风格已作为两条记录保存到此网站的记忆中:brand-voice 和 brand-voice-avoid。之后的每个会话都会自动读取它们,无论是哪个 AI 客户端打开了此网站。避免使用的词语是最强信号:即使提示词建议使用这些词,Agent 也不会使用它们。"

第 7 步 — 品牌一致性报告(可选)

语气档案也是一把标尺:它可以告诉你网站上已有的内容是否符合品牌调性。使用 respira_generate_activity_report 获取近期工作日志(它会返回发布或编辑的内容及时间),然后抽样查看这些页面或文章,并根据已保存的档案进行评分:

  • **符合语气:**符合人称和句长,并采用偏好的词汇。
  • **偏离语气:**使用了应避免的词语、人称不对,或出现营销用语夸大其词的倾向。

如实报告:*"最近发布的 12 篇文章中,有 9 篇符合品牌语气。3 篇偏向使用应避免的词汇(‘革命性’‘同类最佳’)——很可能是套用模板的发布文章。要我重写它们,使其符合品牌语气吗?"*这样一来,语气档案就从被动的资料变成了主动的一致性检查,并能与改写技能自然配合。


其他技能如何使用品牌语气

保存后,语气信息会出现在 respira_get_site_context 的 site_memory 区块中,因此每个内容编写技能(页面生成器、博客文章起草器、社交媒体帖子撰写器)都能在工作流开始时获取它,无需额外调用。respira_list_memory 会按键显示这两条记录。对于低于 8.3 的插件,请改为读取 respira_brand_voice 选项。技能使用语气信息来:

  • 选择与网站人称一致的人称代词
  • 匹配句子长度和阅读年级
  • 采用偏好的词汇
  • 避免使用应避免的词汇
  • 匹配标点模式
  • 匹配结构模式(以问题开头?以 CTA 结尾?)

应避免的词汇是最强烈的信号。当 Agent 准备写下“革命性”或“同类最佳”时,语气档案会提示它:*“本网站从不使用这个词。”*于是 Agent 会选择一个更诚恳的动词。

配套技能

品牌语气是品牌基础的一部分。与另外两项配套技能一起使用效果最佳:

  • 设计系统合成器 — 品牌基础中的视觉部分(颜色、排版、间距、组件,存储为 respira_design_system)。语气涵盖文字读起来是什么感觉;设计系统涵盖页面看起来是什么样子。同时运行两者,确保生成的内容从头到尾都符合品牌调性。设计系统合成器的风格指南页面还会链接回此处,供你查看完整的语气信息。
  • 页面模板库 — 从已保存的模板组装页面时,应使用 brand-voice 记忆条目,让填入的占位文案听起来像网站本身,而不是 lorem-ipsum 或泛泛的 AI 文案。语气提供文字;模板提供布局。

如果两种资料中只有一种存在,内容技能仍应使用已有资料,但要提醒用户:运行缺少的合成器可以让结果更加完善。


硬性规则

  • 语气应通过观察得出,而非人为设计。不要凭空编造。每个描述都必须能追溯到语料库中的证据。
  • 应避免的词汇是反向信号——也就是明显缺失的词语。不要包含常见的停用词(“the”“and”“is”)。应包含竞争对手网站会大量使用、但本网站不会使用的词语。
  • “好段落”示例必须是语料库中的真实段落,并逐字引用。“坏段落”示例则是使用应避免词汇构造的反例。
  • 绝不要悄无声息地覆盖已有的品牌语气。保存前先展示差异。
  • 将语气保存为 preference,而非 rule,且只有在用户表示同意后才能保存。
  • 如果语料库中的作者不止一位(存在多种写作风格),请如实说明:“抽样文章中体现了 3 种不同的写作风格。请选择一位作者进行合成,或将这 3 种风格分别记录。”

工具

读取语料库(信息源)

  • respira_get_active_site
  • respira_get_site_context
  • respira_list_posts
  • respira_read_post
  • respira_extract_builder_content

保存与报告

  • respira_list_memory:替换前查找现有的 brand-voice 条目
  • respira_remember:保存两条提炼出的条目,类型为 preference
  • respira_forget:移除用户指出有误的旧语气条目
  • respira_get_option 和 respira_update_option:适用于低于 8.3 版本插件的备用方案
  • respira_generate_activity_report:获取近期为品牌一致性检查而发布和编辑的内容(9.0 及更高版本的插件会将其列为工具;较旧版本的插件则调用 respira_invoke_ability,使用 ability: "respira/generate-activity-report",并在 args 下传入相同参数)

与 Design System Synthesizer(通过 respira_get_option 使用 respira_design_system)和 Page Template Library 配合使用。只能使用 respira-wordpress MCP 工具;切勿编造工具名称。


遥测

记录:站点 URL 哈希、采样的文章数量、分析的总词数、检测到的人称、检测到的正式程度、成功或失败。不发送实际短语、避免使用的词语或示例段落。

端点:POST https://www.respira.press/api/skills/track-usage

评论

支持 Markdown