From text-generation
Generates branded text-based output files. Triggered when the user asks to "create a Markdown report", "generate an HTML page", "export as HTML", "write a summary", "create a text file", "generate a one-pager", "export as Markdown", or requests any Markdown, HTML, or plain-text output.
npx claudepluginhub equiforte/reporting-services-plugins --plugin text-generationThis skill is limited to using the following tools:
Generate branded Markdown, HTML, and plain-text output files.
Conducts multi-round deep research on GitHub repos via API and web searches, generating markdown reports with executive summaries, timelines, metrics, and Mermaid diagrams.
Share bugs, ideas, or general feedback.
Generate branded Markdown, HTML, and plain-text output files.
Before generating output, check that {WORKING_DIR}/.reporting-resolved/brand-config.json exists. If it does not, tell the user: "The branding plugin is required but has not run. Please install the branding plugin and run /reporting-plugins:brand first." Do not produce unbranded output.
If a JSON data file was generated earlier in this session (in output/text/), read it as the canonical data source to ensure cross-format parity. If no prior JSON exists, use data from the conversation context directly.
Read .reporting-resolved/brand-config.json for all brand values. Use the design-system references for component patterns and language guidelines.
output/text/{slug}-{YYYY-MM-DD}-{HHmm}-{xxx}.{ext}meta.sources where format supports it.File extension: .md
Every Markdown file must begin with YAML frontmatter:
---
title: "Report Title"
date: "April 4, 2026"
confidential: true
author: "Acme Inc"
sources:
- "source-name"
---
author.content.date_format for the date.confidential: true unless the user explicitly says otherwise.## for section headings, ### for subsections.:---:, ---:).number_formats.* tokens (e.g., $12.4M, 8.2%).content.confidentiality_notice at the top of the document, below the frontmatter, as an italic line.File extension: .html
The HTML file must be completely self-contained — a single .html file that opens in any browser without a server:
<style> block in <head>. No external stylesheets..reporting-resolved/logo.png, convert to base64, embed as <img src="data:image/png;base64,...">. If logo was suppressed (no file exists), omit the logo element.<script> tags — HTML output is static, no JavaScript.Map brand tokens to CSS:
:root {
--primary: {colors.primary};
--accent: {colors.accent};
--text: {colors.text};
--text-secondary: {colors.text_secondary};
--surface: {colors.surface};
--heading: {semantic.heading_color};
--border: {semantic.border_color};
}
color: var(--heading), font-family: {typography.font_family_heading}color: var(--text), font-family: {typography.font_family}background: var(--primary), color: white; alternating rows with var(--surface)border-left: {components.callout_border_width} solid var(--accent), background: var(--surface)<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{document title} — {firm.name}</title>
<style>/* all CSS here */</style>
</head>
<body>
<header><!-- logo (base64) + firm name --></header>
<main><!-- content --></main>
<footer><!-- confidentiality notice + date --></footer>
</body>
</html>
File extension: .txt
===== or ----- for section separators.