create-release-note
SkillDocs & knowledgeLets your agent create a reno release note file for a code change in the Datadog Agent repo.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the create-release-note skill
About this capability
Create a reno release note for a PR or change
What this skill tells your AI
The instructions your AI receives, as published by datadog/datadog-agent in .agents/skills/create-release-note/SKILL.md and read by ahel’s review.
Create a release note file using the reno format. Release notes are mandatory for all PRs unless labeled changelog/no-changelog.
Instructions
Step 1: Gather information from the user
Use AskUserQuestion to collect the following. If $ARGUMENTS provides the topic, skip that question.
-
Topic: A short kebab-case identifier for the change (e.g.
fix-ntp-timeout,add-gpu-metrics). Used in the filename. -
Section: Which section does this change belong to?
features— New functionality (e.g. "Add support for GPU metrics collection")enhancements— Small improvements to existing features (e.g. "Improve log rotation performance")fixes— Bug fixes (e.g. "Fix memory leak in forwarder")deprecations— Deprecation notices (e.g. "Deprecatelog_enabledin favor oflogs_enabled")upgrade— Breaking changes requiring user action (must include steps for users to identify if affected)security— Security fixes or improvementsissues— Known issues or limitationsother— Miscellaneous (rarely used)
-
Content: A user-facing description of the change. This is read by customers, not developers. Ask the user to describe what changed and why.
-
Target: Which release notes directory?
releasenotes/notes/— Main agent (default, most common)releasenotes-dca/notes/— Cluster Agent (DCA)
-
APM-related?: If the change affects
cmd/trace-agentorpkg/trace, the content must be prefixed withAPM :and the topic should be prefixed withapm-.
Step 2: Create the release note file
Generate the file using reno:
reno new <topic> --no-edit
Or for non-default directories:
reno --rel-notes-dir <directory> new <topic> --no-edit
This creates a file at <directory>/notes/<topic>-<hash>.yaml with a template.
Always create the file with
reno. The<hash>suffix is reno's unique note ID — it must be a real, unique 16-character hex string thatrenogenerates for you. Never hand-write a placeholder likea1b2c3d4e5f6a7b8or any sequential/guessed value: reno treats the suffix as the note's UID and failsrelease-note-checkwith a "UID collision" when two notes share one (this placeholder has brokenmainmore than once).If
renois not installed, install it rather than creating the file by hand:pip install reno(see the contributing guide). Only if you genuinely cannot install it, generate a real random suffix withopenssl rand -hex 8and name the file<topic>-<hash>.yaml— never a placeholder.
Then replace the template content with only the relevant section. Remove all unused sections (don't leave them commented out — reno template comments are noisy).
Final file format:
---
<section>:
- |
Description of the change written for end users.
Can span multiple lines.
Step 3: Content formatting rules
Release note content must follow these rules:
-
ReStructuredText (RST) format, NOT Markdown:
- Links:
`link text <https://example.com>`_(NOT[text](url)) - Bold:
**text** - Inline code:
``code``(double backticks, NOT single) - Code blocks: use
.. code-block:: <lang>directive
- Links:
-
User-facing language: Write for Datadog customers, not developers. Describe the impact, not the implementation.
-
Self-contained: Each note must be readable independently. Don't reference other release notes.
-
For APM changes: Prefix with
APM :(e.g.APM : Fix trace sampling rate calculation). -
Multiple items: Use separate list items in the same section:
fixes: - | Fix memory leak when collecting Docker container metrics. - | Fix panic in log agent when file is rotated during read.
Step 4: Verify
Run the release note linter to validate:
dda inv linter.releasenote
This checks:
- Valid YAML structure
- Only known sections are used
- No empty items
- Valid RST formatting (no Markdown patterns)
- No Markdown links
[text](url), headers#, or single-backtick code
If linting fails, fix the issues and re-run.
Section Guidelines
| Section | When to use | Example |
|---|---|---|
features | Wholly new capabilities | "Add Windows support for the Process Agent" |
enhancements | Improvements too small to be features | "Add PDH data to Windows flare" |
fixes | Bug fixes | "Fix EC2 tags collection with multiple marketplaces" |
deprecations | Deprecation notices | "The log_enabled config option is deprecated, use logs_enabled" |
upgrade | Breaking changes needing user action | "The --config flag format has changed. Users must update..." |
security | Security fixes | "Enforce bearer token authentication for API endpoints" |
issues | Known issues | "Kubernetes 1.3 is not fully supported in this release" |
other | Misc (rarely used) | "Update internal CI tooling" |
When to skip (use changelog/no-changelog label)
- Documentation-only changes
- Test-only changes
- CI/CD configuration changes
- Code comment changes
- Developer tooling changes that don't affect the agent binary
Usage
/create-release-note— Interactive: prompts for all details/create-release-note fix-ntp-timeout— Pre-fills the topic
Signals
- GitHub stars
- 4k
- Forks
- 1k
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
create-release-note- Source
- github.com/datadog/datadog-agent