Skill Tracer
Skills › Marketing Skills › launch › shipped-changes.md

shipped-changes.md

84 lines · skills/launch/references/shipped-changes.md at 88c79f6

Open on GitHub

Most marks come from matching words in the file, so treat them as pointers.

1# From Shipped Code to Marketing
2
3Most product updates never get marketed because nobody translates them. The engineers wrote the PR description for each other, and by the time marketing hears about it, the moment has passed. An agent with access to the repo can close that gap every week: read what shipped, decide what's worth telling, and draft it in customer language.
4

From Shipped Code to Marketing

Most product updates never get marketed because nobody translates them. The engineers wrote the PR description for each other, and by the time marketing hears about it, the moment has passed. An agent with access to the repo can close that gap every week: read what shipped, decide what's worth telling, and draft it in customer language.

Raw lines 1 to 4
5## Inputs
6
7For the chosen window (usually the last week, or since the last release tag):
8- **Merged PRs** with titles, descriptions, and linked issues. These explain *why* better than commits do.
9- **Commit log** for anything merged without a PR: `git log --since="1 week ago" --no-merges --pretty=format:"%h %s (%an, %ar)"`
10- **Changed files**, read wherever a title doesn't make the user-facing effect clear.
11- **Release notes or tags**, if the team already writes them.
12- **Feature flags**: what's actually live for customers versus merged behind a flag.
14Only market what customers can use today. Anything behind a flag, in internal beta, or not yet deployed waits.

Inputs

For the chosen window (usually the last week, or since the last release tag):

  • Merged PRs with titles, descriptions, and linked issues. These explain why better than commits do.
  • Commit log for anything merged without a PR: git log --since="1 week ago" --no-merges --pretty=format:"%h %s (%an, %ar)"
  • Changed files, read wherever a title doesn't make the user-facing effect clear.
  • Release notes or tags, if the team already writes them.
  • Feature flags: what's actually live for customers versus merged behind a flag.

Only market what customers can use today. Anything behind a flag, in internal beta, or not yet deployed waits.

Raw lines 5 to 15
16## Translate before you write
18Engineering changes are described by what changed in the code. Customers care about what changed for them. For each change, write one line: **"You can now ___"** or **"___ no longer ___."** If you can't fill that in, the change is invisible to customers. Refactors, dependency bumps, CI, and test changes go in no marketing output at all.
20Then group the visible changes with the tiers in the Ongoing Launch Strategy section of `SKILL.md`:
22| Tier | Typical changes | Output |
23|------|-----------------|--------|
24| **Major** | New capability, new plan, big workflow change | Changelog + blog post + email + social + in-app |
25| **Medium** | New integration, notable UX improvement, performance gain customers can feel | Changelog + targeted email or in-app + one social post |
26| **Minor** | Fixes, polish, small additions | Changelog only, batched |
28Several medium changes that share a theme ("five improvements to reporting") can be bundled into one major-tier story.

Translate before you write

Engineering changes are described by what changed in the code. Customers care about what changed for them. For each change, write one line: "You can now ___" or "___ no longer ___." If you can't fill that in, the change is invisible to customers. Refactors, dependency bumps, CI, and test changes go in no marketing output at all.

Then group the visible changes with the tiers in the Ongoing Launch Strategy section of SKILL.md:

TierTypical changesOutput
MajorNew capability, new plan, big workflow changeChangelog + blog post + email + social + in-app
MediumNew integration, notable UX improvement, performance gain customers can feelChangelog + targeted email or in-app + one social post
MinorFixes, polish, small additionsChangelog only, batched

Several medium changes that share a theme ("five improvements to reporting") can be bundled into one major-tier story.

Raw lines 16 to 29
30## Ground every claim in the change
32- State what the change does, not what it might do for someone. "Exports now include custom fields," not "unlock deeper insights."
33- Use numbers only if they come from the change itself (a benchmark in the PR, a measured speedup). Never invent customer results, adoption, or impact.
34- If a PR says the change is partial ("phase 1," "first step toward"), the announcement says so too.
35- Credit the user who asked for it, where the team does that and the user agreed.

Ground every claim in the change

  • State what the change does, not what it might do for someone. "Exports now include custom fields," not "unlock deeper insights."
  • Use numbers only if they come from the change itself (a benchmark in the PR, a measured speedup). Never invent customer results, adoption, or impact.
  • If a PR says the change is partial ("phase 1," "first step toward"), the announcement says so too.
  • Credit the user who asked for it, where the team does that and the user agreed.
Raw lines 30 to 36
37## Watch for marketing that just became wrong
39Every shipped change can also make an existing claim false: a new limit, a renamed plan, a removed integration, a price change. Check the site, docs, comparison pages, and ads for statements the change contradicts. On a schedule, this is the claim-drift loop in `marketing-loops`.
41New capabilities also open new search demand. A new integration can deserve its own page ("[Product] + [Tool] integration"), and a new feature can answer queries or comparisons the product couldn't win before. Add those to the content backlog (see `content-strategy` and `competitors`).

Watch for marketing that just became wrong

Every shipped change can also make an existing claim false: a new limit, a renamed plan, a removed integration, a price change. Check the site, docs, comparison pages, and ads for statements the change contradicts. On a schedule, this is the claim-drift loop in marketing-loops.

New capabilities also open new search demand. A new integration can deserve its own page ("[Product] + [Tool] integration"), and a new feature can answer queries or comparisons the product couldn't win before. Add those to the content backlog (see content-strategy and competitors).

Raw lines 37 to 42
Names a skill marketing-loops :39
Names a skill content-strategy :41
Names a skill competitors :41
43## Weekly digest format
45```markdown
46## Shipped: [date range]
48### For customers
49- **[Major]** [You can now ...] (PR #123)
50- **[Medium]** [You can now ...] (PR #130)
51- **[Minor]** [Fixed ...] (PR #131, #134)
53### Changelog entry
54## [version or date]
55### Added
56- [Customer-facing description]
57### Changed
58- [...]
59### Fixed
60- [...]
62### Drafts
63- Blog post: [working title], [angle], [who it's for]
64- Email: [subject line options] → [segment]
65- Social: [one post per major or medium change, built on its single most useful detail]
66- In-app: [message + where it appears]
68### Pages to update
69- [Page]: [statement that's now wrong or incomplete]
71### New content opportunities
72- [Query or comparison the change makes winnable]
73```
75Use Keep a Changelog headings (Added, Changed, Deprecated, Removed, Fixed, Security) so the changelog stays scannable over time.

Weekly digest format

## Shipped: [date range]

### For customers
- **[Major]** [You can now ...] (PR #123)
- **[Medium]** [You can now ...] (PR #130)
- **[Minor]** [Fixed ...] (PR #131, #134)

### Changelog entry
## [version or date]
### Added
- [Customer-facing description]
### Changed
- [...]
### Fixed
- [...]

### Drafts
- Blog post: [working title], [angle], [who it's for]
- Email: [subject line options] → [segment]
- Social: [one post per major or medium change, built on its single most useful detail]
- In-app: [message + where it appears]

### Pages to update
- [Page]: [statement that's now wrong or incomplete]

### New content opportunities
- [Query or comparison the change makes winnable]

Use Keep a Changelog headings (Added, Changed, Deprecated, Removed, Fixed, Security) so the changelog stays scannable over time.

Raw lines 43 to 76
77## Writing the drafts
79- **Changelog:** one line per change, written for a customer and in past or present tense. Link docs for anything non-obvious.
80- **Blog post (major only):** the problem the customer had, what changed, how to use it (with screenshots), and who it's for. The `copywriting` skill covers structure; its AI-tell rules apply.
81- **Email:** lead with the change for that segment; one call to action that takes them to the feature. See `emails`.
82- **Social:** one concrete detail per post, with a screenshot or 10-second clip of the feature doing it. See `social`.
84Drafts are staged for a human to review and send. Nothing in this workflow publishes on its own.

Writing the drafts

  • Changelog: one line per change, written for a customer and in past or present tense. Link docs for anything non-obvious.
  • Blog post (major only): the problem the customer had, what changed, how to use it (with screenshots), and who it's for. The copywriting skill covers structure; its AI-tell rules apply.
  • Email: lead with the change for that segment; one call to action that takes them to the feature. See emails.
  • Social: one concrete detail per post, with a screenshot or 10-second clip of the feature doing it. See social.

Drafts are staged for a human to review and send. Nothing in this workflow publishes on its own.

Raw lines 77 to 84
Names a skill copywriting :80
Names a skill emails :81
Names a skill social :82