Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion plugins/copywriter/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"name": "copywriter",
"version": "0.1.1",
"version": "0.2.0",
"description": "Transform source material into grounded product copy, articles, and illustrated pitch decks."
}
2 changes: 1 addition & 1 deletion plugins/copywriter/.codex-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "copywriter",
"version": "0.1.1",
"version": "0.2.0",
"description": "Transform source material into grounded product copy, articles, and illustrated pitch decks.",
"skills": "./skills/",
"author": {
Expand Down
4 changes: 3 additions & 1 deletion plugins/copywriter/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# Changelog

## Unreleased
## 0.2.0

Prioritize writing quality and text formatting, with a warm general-public voice and moderate marketing language. Discover relevant installed writing and design skills, use matching helpers for web and deck presentation, and retain built-in illustration, diagram, chart, and deck capabilities when no helper fits.

Replaced LibreOffice and pdftoppm integration with bundled Node.js SVG slide previews. Removed PDF and PNG export. Editable PowerPoint, notes, source, and assets remain available; preview failures preserve the deck and report partial output. SVG font measurements are approximate, and visual and accessibility checks remain explicit.

Expand Down
6 changes: 5 additions & 1 deletion plugins/copywriter/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# Copywriter

Transform verified product material into taglines, READMEs, landing pages, editable pitch decks, and illustrated articles. Articles require your draft, outline, or substantive notes; a topic alone is insufficient.
Turn verified product material into clear, well-structured taglines, READMEs, landing pages, editable pitch decks, and articles. Copywriter prioritizes the argument, wording, voice, and text formatting, with illustrations, diagrams, charts, and deck graphics to support the message. Articles require your draft, outline, or substantive notes; a topic alone is insufficient.

The default voice is warm, engaging, and accessible to the general public, with marketing language used in moderation. Copywriter explains why the subject matters, keeps promises grounded, and adapts to specialist audiences when the task calls for it.

Ask your agent: “Use Copywriter to create a README for this package.” Other examples:

Expand All @@ -13,6 +15,8 @@ The six skills are `write` (router, brief, research), `tagline`, `readme`, `land

## Installation and capabilities

Copywriter checks the active host's available skills and plugins for relevant help. It searches descriptions for capabilities such as frontend design, typography, visual hierarchy, responsive layout, accessibility, and presentation design, then uses a matching skill to improve visual presentation after revising the copy. It preserves source-backed claims, citations, and the requested output format. Optional design plugins are not required: the bundled generators remain available, and Copywriter does not install or enable other plugins. Text-only work stays focused on writing and formatting.

The source uses one shared skill tree with portable, Codex, and Claude manifests. Release directories contain exactly one target manifest. See [compatibility and release checks](packaging/compatibility.md) before treating any host as supported.

Text tasks use the agent's file tools without a runtime dependency. Local HTML and PowerPoint generation require Node.js 24 or later; the PowerPoint dependency is bundled. Browsing, image generation, and image inspection use capabilities supplied by the host. Copywriter does not install or configure integrations. The deck generator produces editable PowerPoint, source, notes, assets, and SVG slide previews using only Node.js. The pinned @office-kit/pptx and @office-kit/pptx-preview JavaScript libraries are bundled; no browser, native renderer, or font files are required. PDF and PNG export are not supported. Preview font measurements are approximate; inspect the SVGs before claiming reviewed layout, and do not treat them as proof of PowerPoint compatibility.
Expand Down
4 changes: 2 additions & 2 deletions plugins/copywriter/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion plugins/copywriter/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "copywriter",
"version": "0.1.0",
"version": "0.2.0",
"private": true,
"engines": {
"node": ">=24"
Expand Down
2 changes: 1 addition & 1 deletion plugins/copywriter/plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "copywriter",
"version": "0.1.1",
"version": "0.2.0",
"description": "Transform source material into grounded product copy, articles, and illustrated pitch decks.",
"keywords": [
"copywriting",
Expand Down
4 changes: 2 additions & 2 deletions plugins/copywriter/skills/landing-page/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@ description: Use when transforming product source into persuasive landing-page c

# Landing page

Read the shared [workflow and source gate](../write/references/workflow.md), [editorial guidance](../write/references/editorial.md), and [visuals](../write/references/visuals.md) when assets are useful.
Read the shared [workflow and source gate](../write/references/workflow.md) and [editorial guidance](../write/references/editorial.md). Read [visuals](../write/references/visuals.md) when assets are useful. For HTML presentation, apply [available design help](../write/references/hosts.md#installed-skills-and-design-help) after revising the copy, including pages without images.

Accept `--format copy|html|both` (default both), `--cta TEXT`, and `--cta-url URL` plus shared options. Infer an action only when product context supports it; ask for essential missing offer/audience facts after inspection.

Build the argument from reader and action: a hero identifying category/useful outcome/audience; mechanism; actual example/screenshot/result or approved customer proof; prerequisites/limitations/fit/objections; suitable closing action. This is a starting structure, not a required funnel. Do not manufacture anxiety, urgency, guarantees, logos, testimonials, or numbers.

Deliver `landing-page.md` and `preview/index.html` by default, selected actual assets, and private review records. For HTML, prefer authorized existing project styles or the packaged plain static renderer at [render-page.js](../../scripts/render-page.js). Resolve that script relative to this installed skill; invoke Node with argument arrays using `page.json` and a new authorized output directory whose parent exists. Inputs and relative assets stay under the source directory, including resolved symlink targets. The renderer writes both copy and HTML; for a single-format request deliver only the selected finished format. Its input is:
Deliver `landing-page.md` and `preview/index.html` by default, selected actual assets, and private review records. Preserve authorized existing project styles; use a matching installed design skill to improve the local presentation. Without one, use the packaged plain static renderer at [render-page.js](../../scripts/render-page.js). Design assistance may refine the generated HTML; keep its final copy synchronized with `landing-page.md` and preserve the static-preview and accessibility requirements below. Resolve the script relative to this installed skill; invoke Node with argument arrays using `page.json` and a new authorized output directory whose parent exists. Inputs and relative assets stay under the source directory, including resolved symlink targets. The renderer writes both copy and HTML; for a single-format request deliver only the selected finished format. Its input is:

```json
{
Expand Down
2 changes: 1 addition & 1 deletion plugins/copywriter/skills/pitch-deck/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ description: Use when transforming repository evidence or supplied pitch notes i

# Pitch deck

Read the shared [workflow and source gate](../write/references/workflow.md), [editorial guidance](../write/references/editorial.md), [deck guide](references/decks.md), and [visuals](../write/references/visuals.md) when assets are used.
Read the shared [workflow and source gate](../write/references/workflow.md), [editorial guidance](../write/references/editorial.md), and [deck guide](references/decks.md). Read [visuals](../write/references/visuals.md) when assets are used. Revise the narrative, slide text, and notes before applying [available presentation design help](../write/references/hosts.md#installed-skills-and-design-help); preserve editable output and the verification contract below.

Accept `--purpose adopter|investor|sales|sponsor`, `--delivery live|send-ahead`, `--slides N`, and `--minutes N` plus shared options. Default to adopter and send-ahead unless context indicates otherwise; state assumptions. Target roughly 8–12 substantive slides, but let source substance determine count. A slide target never authorizes fabricated commercial facts or padding.

Expand Down
19 changes: 18 additions & 1 deletion plugins/copywriter/skills/write/references/editorial.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,32 @@

These are design heuristics, not proven conversion or funding formulas. Explicit author, brand, audience, locale, and medium requirements take precedence.

Writing is the primary deliverable. Establish the argument, source fidelity, voice, and readable text structure before polishing presentation. Illustrations, diagrams, and deck graphics support that work; they do not compensate for unclear copy. A requested visual remains part of the deliverable.

Default to writing for the general public: curious readers who may not know the product or its technical vocabulary. Use a warm, engaging, confident voice. Explain what something does and why it matters before describing its implementation; introduce unfamiliar terms when needed. A technical source does not automatically imply a specialist audience. Adapt when the user specifies an audience or the requested task requires specialist detail, keeping commands and technical facts precise.

Use marketing language in moderation. Benefit-led headlines, memorable phrasing, enthusiasm, and inviting calls to action are welcome when they fit the source and medium. Make the reader care without exaggerating the promise. Evidence requirements constrain factual claims, not personality: avoid turning lively copy into a dry technical report or stripping out every persuasive phrase.

- Identify the reader and task. Put the product's principal meaning, benefit mechanism, or author's thesis early.
- Use concrete verbs and familiar terms; preserve exact technical vocabulary. Flag empty claims such as “revolutionary,” “seamless,” and “industry-leading” for contextual review, not a blind word ban.
- Use concrete verbs and familiar terms; retain exact technical terms where precision matters and explain them in context. Review phrases such as “revolutionary,” “seamless,” and “industry-leading” for what they promise and whether the source supports it, not against a blanket ban on marketing language.
- Make the heading outline informative without its body. Remove repetition while preserving needed depth; scanning research does not establish a universal article/page length.
- Pair each benefit with a supported capability or proof. Customer language helps choose emphasis but does not prove outcomes. Never manufacture urgency, scarcity, superiority, security, popularity, or readiness.
- Preserve voice while adapting tone and technical detail. Distinguish README orientation, first-use instructions, and deeper reference.
- Keep each live slide legible and focused. An article's contribution must come from the author's substance or explicitly accepted additions.
- Give informative visuals equivalent explanations. Never use generated images as product, customer, or quantitative evidence.
- Do not invent anecdotes, generic “fast-paced digital landscape” openings, interviews, emotional reactions, or ranking guarantees. Do not enforce a reading grade, sentence quota, keyword density, or six-bullets-per-slide rule.

## Text structure and formatting

- Use connected prose for explanations, bullets for parallel points, numbered steps for ordered actions, and tables for comparisons with shared fields. Do not turn an argument into a list of fragments or put long paragraphs in table cells.
- Give each paragraph a clear job. Connect claims to their evidence and consequences; keep qualifications beside the claims they limit. Cut repeated summaries, throat-clearing, and unsupported superlatives while preserving the author's voice.
- Use descriptive, sentence-case headings in a logical hierarchy. Add a section when the reader needs a new topic or task, not for every paragraph. Preserve established headings and anchors in scoped edits.
- Use emphasis sparingly for a decision, term, or action; avoid bolding every lead sentence. Reserve inline code for literal commands, paths, identifiers, and values. Use fenced blocks with a language label for runnable examples, and distinguish commands from output.
- Make link text identify its destination or purpose. Keep citations near supported claims, captions beside their visuals, and editorial notes outside reusable copy. Follow the destination's Markdown or rich-text conventions, including blank lines around blocks; inspect the rendered result when available.
- For slides, use a title that states the point, concise supporting text, and notes for spoken detail. Keep send-ahead decks understandable without narration. For web copy, make labels and calls to action say what happens next; do not use layout or font size to hide prerequisites or qualifications.

Revise the text before visual refinement: read the heading outline for coherence, then the prose for flow, specificity, and voice. After layout, read it again in context for awkward breaks, lost emphasis, and displaced qualifications. Fix crowding by editing or restructuring without dropping material facts, not by shrinking type indefinitely.

Before delivery compare source and output for fidelity, grounding, reader/medium fit, clarity, specificity, voice, visual usefulness, and accessibility. Name concrete mismatches. For release evaluation score applicable dimensions 0–4 (unusable through ready); target at least 3 throughout and 4 for fidelity and grounding. A high average cannot excuse invented evidence, reversed meaning, leaked secrets, unauthorized publication, unusable required files, or false completion. Model review can assist; it is not human validation of persuasive effectiveness. Ask intended readers what they understood and would do next rather than claiming conversion lift from preference.

For attribution and evidence limits read [sources](sources.md) only when needed. Style references cannot substantiate product claims.
14 changes: 14 additions & 0 deletions plugins/copywriter/skills/write/references/hosts.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,17 @@ The shared skills do not assume browsing, filesystem access, or image generation
Natural-language invocation is portable: “Use Copywriter to create a README for this package.” Logical requests such as `copywriter article` are semantic prompts, not installed shell commands. Claude Code's plugin namespace uses `/copywriter:readme`, `/copywriter:article`, and `/copywriter:write brief`. Portable v1 defines no slash syntax. For Codex use the entry actually displayed by the installed skill picker; do not promise an unobserved slash command.

See the release [compatibility record](../../../packaging/compatibility.md) for tested host versions, installation/invocation evidence, and limits. Schema validation is not host discovery or behavioral testing. Do not infer support for other Claude products, every portable client, or every office editor. Keep installed package files read-only; all artifacts belong in an authorized user destination.

## Installed skills and design help

Use the active session's skill/plugin catalog first. If it is incomplete and the host exposes a read-only installed-plugin listing or skill search, use that to find relevant helpers. Marketplace listings and files in a cache do not prove a plugin is enabled or callable. If discovery is unavailable, record that limit privately and continue with Copywriter's own guidance; do not scan unrelated user files, install plugins, or change configuration.

Search available skill descriptions by the capabilities needed for the current deliverable, rather than a particular plugin name. Use relevant terms and close variants from the categories below; they are discovery cues, not an exact-match checklist. Confirm the helper's actual scope and output support before selecting it. Honor an explicitly requested helper. Read only the selected skill's instructions through its advertised location or host mechanism, and follow its applicable workflow within the user's scope. Apply an available matching helper when it improves the requested presentation; merely listing it is not using it.

- Text-only work: use relevant available writing guidance for voice and formatting. A tagline or Markdown-only edit does not need a visual-design workflow.
- Web presentation: look for frontend design, UI/UX design, visual hierarchy, typography or typesetting, layout and spacing, responsive design, accessibility, design systems, visual critique, or polish. Use a matching skill to improve the local HTML preview, even when no images are selected.
- Decks: look for presentation design, slide layout, PowerPoint or PPTX, editable slides, and speaker notes; confirm support for the requested editable output and previews. Do not assume a frontend-only skill can create PowerPoint files. For specific assets, look for illustration or image generation, diagrams, charts, or data visualization.

Give the helper the reader, purpose, revised copy, approved brand/assets, target format, and authorized output location. Keep factual claims, source qualifications, citations, and editable-output requirements intact. Copywriter remains responsible for final wording and verification; review substantive text changes against the source. Helpers do not expand permission to install dependencies, send private material, publish, or redesign unrelated surfaces.

Use the helper through available skill/tool mechanisms; apply its instructions locally when no separate execution mechanism exists. Record the helper actually used, its contribution, and checks in `review.md`. If none fits or it cannot run, use the existing renderer/guidance. Absence of an optional helper alone does not make the result partial; an unmet requested artifact or required check does.
Loading
Loading