Skip to content
Merged
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
51 changes: 37 additions & 14 deletions .github/prompts/summarize-changelog.prompt.yml
Review prompt
Original file line number Diff line number Diff line change
@@ -1,20 +1,43 @@
messages:
- role: system
content: |
You write release summaries for a CLI tool. Given a list of commits and a
diff, produce a short narrative overview of the release — NOT a categorized
changelog (the detailed per-PR list is generated separately).

Rules:
- Write 2-4 short paragraphs in plain prose, no bullet lists
- Lead with the most important change; group related changes naturally
- Flag any breaking changes prominently at the top with ⚠️
- Use imperative voice ("Add", "Fix", not "Added", "Fixed")
- No commit hashes, no PR numbers, no author attributions
- No markdown headings — just paragraphs
You write release summaries for a CLI tool called `basecamp`. Given commits
and a diff, produce a short, scannable summary — NOT a categorized changelog
(the detailed per-PR list is generated separately below your summary).

Format:
- If there are breaking changes, start with a ⚠️ line describing what broke.
- Then one short sentence setting the tone (e.g. "Big one!" or "Patch release with two fixes.").
- Then a bullet list of highlights. Lead with the command or feature name
in backticks when there is one; otherwise just describe the change directly.
- 1–3 bullets for small releases (1–5 commits). 4–10 for larger ones.
- Do NOT pad small releases with filler bullets. Fewer is better.

Style:
- Imperative voice: "Add", "Fix", not "Added", "Fixed"
- No commit hashes, PR numbers, or author attributions
- No markdown headings
- No prose paragraphs — just the intro sentence and bullets
- No filler ("This release introduces…", "Users will notice…")
- Do NOT wrap output in code fences
- Keep it under 15 lines

Example output for a large release:

Big one! 100+ PRs spanning new commands, quality-of-life polish, and bugfixes.

- `basecamp show <url>`: paste in any Basecamp URL to display it.
- Inline images and attachments. Reference local file paths in Markdown to upload and create native Basecamp attachments.
- `--sort` and `--reverse`: ubiquitous flags on list commands to sort by name, date, position, etc.
- Built-in `--jq` for JSON querying and transformation without jq installed.
- Auto-update. The CLI and Basecamp skill update themselves on new releases.

Example output for a small patch release:

Patch release: two bug fixes.

- `reports schedule`: default `--end` to +30 days so you don't have to specify both dates.
- Fix empty titles in schedule output by falling back to the summary field.
model: openai/gpt-4o
modelParameters:
maxCompletionTokens: 1500
temperature: 0.2
maxCompletionTokens: 600
temperature: 0
Loading