seo-report

Installation
SKILL.md

OpenSEO Report

Goal

Turn finished research into one self-contained HTML page, saved to the project with save_report, so anyone on the team can open it in the app, read it on a phone, and print it to PDF.

Every OpenSEO skill that produces a recommendation delivers through this skill. Chat gets the link, the verdict, and the top action. The report gets everything else.

Before you write

  1. Call list_reports for the project. If a report already covers the same subject for the same period, you are correcting your own run: pass its reportId to save_report and replace it. A new month, a new competitor, or a different skill is a new report. Never save a near-duplicate.
  2. Titles are unique within a project. Saving a second report under an existing title with no reportId is rejected, so either pass the reportId of the report you are replacing or change the title to name the new subject or period.
  3. To revise an existing report, work from its summary. get_report returns the HTML only with includeHtml: true, and an 80 KB report is roughly 20,000 tokens, which most clients truncate. Fetch the HTML only when you need to edit a specific passage, and if what comes back looks cut off, send the user to the app instead of saving over it.

Following a template

A project can carry report templates: named, reusable briefs saying who a report is for, which sections it has in what order, how it should sound, and how to sign off. They are listed in project context, and list_report_templates returns the full instructions for each one. Templates belong to a project. To reuse one in another project, list it there and save a copy here.

Use a template only when the user names it, or asks for the kind of report a template's name or description names. A plain skill run ("audit this site") uses the skill's default format. If two match, ask in one line. A template's sections, audience and tone replace the skill's Output format list; the HTML constraints and writing rules never change. Project writing_preferences always apply; a template's tone wins only where they conflict. Pass its templateId to save_report.

Installs
67
GitHub Stars
19.4K
First Seen
2 days ago
seo-report — every-app/open-seo