Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add respira-press/agent-skills-wordpress --skill brand-voice-synthesizergit clone --depth 1 https://github.com/respira-press/agent-skills-wordpressWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/respira-press/agent-skills-wordpress/brand-voice-synthesizer)<a href="https://agentmods.dev/skills/respira-press/agent-skills-wordpress/brand-voice-synthesizer"><img src="https://agentmods.dev/badge/skills/respira-press/agent-skills-wordpress/brand-voice-synthesizer/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/respira-press/agent-skills-wordpress/brand-voice-synthesizer"><img src="https://agentmods.dev/badge/skills/respira-press/agent-skills-wordpress/brand-voice-synthesizer.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Rogue Agent · line 211 Skill modifies its own code, configuration, or behavior at runtime. Self-modification enables an agent to escalate privileges, disable safety constraints, or install persistent backdoors.Fix: Prevent the skill from modifying its own code, SKILL.md, or configuration files. Treat skill files as read-only at runtime.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00074 | $0.03209 |
| Opus 5 | $0.00037 | $0.01605 |
| Sonnet 5 | $0.00015 | $0.00642 |
| Haiku 4.5 | $0.00007 | $0.00321 |
Grade A, and why
brand-voice-synthesizer scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 272 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Brand Voice Synthesizer
Version: 1.1.0
Updated: 2026-06-30
Freshly updated: v1.1.0 wires the voice profile into the rest of the brand system. The extracted profile now persists to per-site memory via respira_get_option (diff first) + respira_update_option, cross-links explicitly with the Page Template Library and Design System Synthesizer skills so copy and layout share one brand foundation, and adds a brand-consistency report built from respira_generate_activity_report so you can see how on-voice recent content actually is.
Category: intelligence
Status: stable
Requires: Respira for WordPress plugin 7.1+ + MCP server
Description
Read 5–10 published posts on a WordPress site and extract the brand voice — tone, lexicon, sentence patterns, person used, formality, signature phrases, phrases the site never uses. Persist it to the site so every future content-writing skill produces copy that sounds like the brand, not like generic AI.
This is the verbal counterpart to the Design System Synthesizer. The two together form a complete brand foundation that every future content-generation skill references.
What it produces
A structured brand_voice artifact stored at the site level. Schema:
{
"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!"
}
}
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 12d ago First seen · 272 lines · 74 tokens per session scan A f21b3f1cc398
brand-voice-synthesizer is a skill published in the GitHub repository respira-press/agent-skills-wordpress (43 stars, last pushed 3d ago), licensed MIT. It adds 74 tokens to every session and 3,209 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
chatdoc-studio-api
ChatDOC Studio API usage guide - complete documentation and examples for PDF parsing, chat applications, agent applications, content retrieval, and data extraction APIs.
ChatDOC Studio--KnowledgeMate
Create and operate ChatDOC Studio knowledge bases through pdrouter using a Bearer API key and JavaScript helpers. Use when Codex needs to upload one or more PDF/DOC/DOCX files, skip failed files without aborting the whole job, create a knowledge base from successful uploads, or call the ChatDOC Studio knowledge-base…
PDFlux-PDF2Markdown
Convert unstructured documents into LLM-ready structured data. Supports PDF, Word, PPT, and images; extracts paragraphs, formulas, tables, charts, and other elements in one step; generates up to 8 levels of headings; and outputs Markdown organized in reading order. Useful for field extraction, comparison and…
Calliper-Compare2Markdown
Compare two local documents and convert differences into LLM-ready Markdown in one synchronous call. Supports PDF, Word, PPT, and image documents accepted by Calliper, and returns a structured markdown diff table suitable for change review, clause comparison, downstream extraction, and rule-based validation.
open-codex-ui
Install, update, secure, daemonize, expose through Cloudflare Tunnel, and enable speech input for the open-source Open Codex UI application. Use when a user asks to install or enable Open Codex UI, configure its login daemon, set its access password, install or manage the sherpa-onnx bilingual speech model…
query-loki-project-logs
Query Grafana Loki logs that are organized by labels such as projectname or project, env, and filename, where filename distinguishes nginx, web, worker, stdout, and stderr streams. Use when Codex needs to inspect logs with logcli, discover available projects or environments, list a project's log files, narrow to a…