Skip to content

feat: add highlights skill - #20

Draft
tutntut wants to merge 7 commits into
mainfrom
add-highlights-skill
Draft

feat: add highlights skill#20
tutntut wants to merge 7 commits into
mainfrom
add-highlights-skill

Conversation

@tutntut

@tutntut tutntut commented Jul 30, 2026

Copy link
Copy Markdown

Problem

Drafting a product's quarterly CHANGELOG entry means manually digging through Slack, GitHub and Notion, then deciding what's actually worth publishing — easy to miss corroborating context or invent a plausible-sounding number.

Solution

A skill that preps the quarter/format, confirms sources, fans out retrieval across Slack/GitHub/Notion in parallel, then curates and drafts the entry for review before it ever touches CHANGELOG.md.

Runs alongside /reportcard/highlights writes the story, /reportcard fills in the numbers. They're separate because the jobs differ: broad retrieval and judgment vs. a mechanical, offline-capable append.

Breaking changes: none, all additions.

Reviewing this PR

# Commit What to check
1 feat: add highlights skill The substanceSKILL.md for the shape, CURATING.md for how ranking/cutting works, scripts/prep.py for the quarter/format prep.
2 docs: register highlights in the skill listings Mechanical — README.md entries, plugin.json, skills.sh.json.

prep.py is stdlib-only, same as reportcard's audit.py, and can't be smoke-tested in this repo since there's no _products/ directory here — it's designed to run inside a product repo.

tutntut and others added 7 commits July 30, 2026 06:32
The bucket was documented in skills/CLAUDE.md but never created on disk. It
was defined as "daily non-code workflow tools", which excludes anything on a
slower cadence. Naming buckets by domain, as engineering/ already does, keeps
cadence out of the taxonomy.

No skill moves — nothing was in productivity/.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
A lone "f" sat at the end of the file with no trailing newline. Unrelated to
any skill, separated out so it does not muddy the reportcard diff.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Appends a quarter's team, cost and metric values to an OGP product report card
at _products/<product>/reportcard.yml.

scripts/audit.py parses the narrow YAML subset the report-card repo uses,
stdlib only so it runs before npm i. It infers the target quarter and sorts
every metric into NEED, auto or DORMANT, so nothing is carried forward or
interpolated by eye.

ASK-FORMAT.md fixes the ask as four tables plus a reply block keyed by metric
id, since a PM gathers these numbers from finance, Datadog and a survey and
will answer in pieces. Its examples use invented names and figures — the
report-card repo is private and this one is public.

WRITING.md keeps edits append-only and creates the branch at the first write
rather than at launch. Cost entries gate whether a quarter renders at all, so
a missing one is written as placeholder zeros, stated plainly, and flagged on
a draft PR rather than left silent.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Adds the product/ bucket README and the entries skills/CLAUDE.md requires: the
plugin.json path, a Product grouping in skills.sh.json, and a row in the
skills README table.

The plugin.json path is added for consistency with the convention, but every
path in that file is currently unresolvable — see #18. It does not affect this
skill, since the documented install discovers skills by scanning for SKILL.md.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Remove references to the not-yet-existing /highlights skill, fix the
plugin.json path in skills/CLAUDE.md, and fix audit.py's usage string
to match how it's actually invoked from SKILL.md.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new “Product skills” bucket to the skills system, introducing /highlights (quarterly changelog drafting workflow) alongside /reportcard (quarterly reportcard.yml append workflow), and registers both skills in the plugin/catalog metadata.

Changes:

  • Add /highlights skill docs plus a stdlib-only prep.py helper for quarter bounds + changelog format mirroring.
  • Add /reportcard skill docs plus a stdlib-only audit.py helper to audit reportcard.yml and guide the PM ask/write flow.
  • Register the new Product bucket and both skills in skill listings and plugin metadata (skills/README.md, skills.sh.json, skills/.claude-plugin/plugin.json, skills/product/README.md).

Reviewed changes

Copilot reviewed 12 out of 12 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
skills/README.md Adds “Product skills” section and links to /highlights and /reportcard.
skills/product/README.md Introduces product bucket README and recommended /highlights/reportcard order.
skills/product/highlights/SKILL.md Documents the /highlights workflow, sources, fan-out, curation, and drafting steps.
skills/product/highlights/CURATING.md Defines cross-source ranking/cutting heuristics for highlights curation.
skills/product/highlights/scripts/prep.py Adds a CLI helper to infer/format target quarter and print the last changelog entry verbatim as a template.
skills/product/reportcard/SKILL.md Documents the /reportcard workflow, including audit/ask/write/verify steps.
skills/product/reportcard/ASK-FORMAT.md Specifies the exact PM ask format (tables, notes, reply block) for reportcard collection.
skills/product/reportcard/WRITING.md Specifies append-only writing rules, branching timing, and handling placeholder cost entries.
skills/product/reportcard/scripts/audit.py Adds a CLI helper to parse reportcard.yml, infer the next quarter, and print what’s needed.
skills/CLAUDE.md Updates bucket taxonomy/registration guidance to include product/ and correct plugin.json path.
skills/.claude-plugin/plugin.json Registers the new product skill directories with the plugin.
skills.sh.json Adds a “Product” grouping containing highlights and reportcard.
Comments suppressed due to low confidence (1)

skills/product/highlights/scripts/prep.py:89

  • groups only detects list items that start at column 0 (^-\s+...). Since you later call l.strip(), this looks like it’s intended to tolerate indentation; as written, indented top-level bullets won’t be detected and the "top-level groups" output can be empty/incorrect. Consider deriving the minimum bullet indentation and treating those as the top-level group lines.
    groups = [l.strip()[2:] for l in block if re.match(r"^-\s+\S", l)]

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +6 to +8
Usage:
python3 prep.py formsg # infers the quarter after the latest logged
python3 prep.py formsg --quarter q2-2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants