agentleFS
StormixStormix/transcripts-mcp/.cursor/rules/090-changesets.mdc

transcripts-mcp / rules

Cursor rule8 starsChanged 2 months agoMITView on GitHub

Changesets: Guidelines for creating changesets for notable features and fixes

The file

Show its rules and text

We split this 090-changesets.mdc into the rules it gives an agent

21 rules. About 0 are common, 19 are distinctive, and 2 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈19

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use the proper YAML frontmatter format with package names and change types

    line 19
  2. Distinctive:

    Write a clear, user-facing summary of the change

    line 20
  3. Distinctive:

    Create a changeset for:

    line 36
  4. Distinctive:

    Test updates without functional changes

    line 53
  5. Distinctive:

    When creating a changeset file, you need to specify:

    line 57
  6. Distinctive:

    Write from the user's perspective

    line 86
  7. Distinctive:

    Start with a verb (Add, Fix, Improve, Remove, etc.)

    line 88
  8. Distinctive:

    Keep it under 80 characters when possible

    line 90
  9. Distinctive:

    Commit both your code changes and the changeset file together

    line 115
  10. Distinctive:

    When ready to release, changesets will automatically:

    line 116
  11. Distinctive:

    If your PR includes multiple notable changes:

    line 123
  12. Distinctive:

    Create separate changeset files for each distinct feature/fix

    line 125
  13. Distinctive:

    Only include packages that are directly affected by your change

    line 136
  14. Distinctive:

    Don't include packages that are only affected as transitive dependencies

    line 137
  15. Very specific:

    Use correct package names from the monorepo (check package.json files)

    line 138
  16. Distinctive:

    Use 2-3 random words separated by hyphens

    line 183
  17. Distinctive:

    Keep it simple and memorable

    line 184
  18. Distinctive:

    After AI agent creates a changeset:

    line 189
  19. Very specific:

    Verify a new file was created in .changeset/

    line 191
  20. Distinctive:

    Check the frontmatter has correct package names and change types

    line 192
  21. Distinctive:

    Ensure the summary is clear and user-facing

    line 193

≈ “Common” is an estimate: at least 1 in 5 of the 6,668 Cursor rule files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
090-changesets.mdc
---
description: Changesets: Guidelines for creating changesets for notable features and fixes
alwaysApply: true
---

# Changeset Guidelines

## Overview

This project uses `@changesets/cli` to manage versioning and changelogs. When you implement features or fixes that are worth mentioning in the changelog, you MUST create a changeset.

## AI Agent Workflow

As an AI agent, you cannot run the interactive `pnpm changeset` command. Instead, you should automatically create changeset files:

1. **After completing a task**, evaluate if a changeset is needed based on the criteria below
2. **Create a changeset file** in `.changeset/` directory:
   - Generate a random kebab-case filename (e.g., `happy-pigs-dance.md`, `brave-lions-jump.md`)
   - Use the proper YAML frontmatter format with package names and change types
   - Write a clear, user-facing summary of the change
3. The changeset file will be committed alongside the code changes

### Changeset File Format

```markdown
---
"@transcripts-mcp/package-name": minor
"@transcripts-mcp/another-package": patch
---

Clear, concise description of the change from the user's perspective.
```

## When to Create a Changeset

Create a changeset for:

- **New features** - Any new functionality that users will interact with
- **Bug fixes** - Fixes that resolve user-facing issues or critical bugs
- **Breaking changes** - Any changes that require user action or break existing functionality
- **Performance improvements** - Significant optimizations that users will notice
- **Security fixes** - Any security-related patches

## When NOT to Create a Changeset

Skip changesets for:

- Refactoring that doesn't change functionality
- Code style changes or formatting
- Documentation updates
- Internal tooling changes
- Development dependencies updates
- Test updates without functional changes

## Creating a Changeset

When creating a changeset file, you need to specify:

1. **Packages** - Which packages are affected by your changes
2. **Change type** - One of:
   - `patch` - Bug fixes and minor changes (0.0.X)
   - `minor` - New features that are backwards compatible (0.X.0)
   - `major` - Breaking changes (X.0.0)
3. **Summary** - A clear description of the change in a user-friendly way

### Writing Good Changeset Summaries

**✅ Good summaries:**

```markdown
Add dark mode toggle to settings page
Fix crash when processing large files
Improve queue processing performance by 50%
```

**❌ Bad summaries:**

```markdown
Updated code
Fixed bug
Refactored component
```

### Guidelines for Summaries

- Write from the user's perspective
- Be specific and concise
- Start with a verb (Add, Fix, Improve, Remove, etc.)
- Focus on what changed, not how it was implemented
- Keep it under 80 characters when possible

## Changeset Files

Changesets are stored in `.changeset/` directory as markdown files. Each file:

- Contains YAML frontmatter with affected packages and change types
- Contains a markdown description of the change
- Is committed to git alongside your code changes

Example changeset file:

```markdown
---
"@transcripts-mcp/core": minor
"@transcripts-mcp/adapters": patch
---

Add support for a new transcript harness adapter
```

## Workflow Integration

1. Make your code changes
2. AI agent automatically creates a changeset file in `.changeset/` directory
3. Commit both your code changes and the changeset file together
4. When ready to release, changesets will automatically:
   - Generate changelog entries
   - Bump version numbers
   - Create release notes

## Multiple Changes in One PR

If your PR includes multiple notable changes:

- Create separate changeset files for each distinct feature/fix
- Each changeset should focus on one specific change

## Monorepo Considerations

This project is a monorepo with multiple packages:

- **Packages**: `core`, `adapters`, `search`, `mcp`

When creating changesets:

- Only include packages that are directly affected by your change
- Don't include packages that are only affected as transitive dependencies
- Use correct package names from the monorepo (check `package.json` files)

## Examples

### Example 1: New Feature

File: `.changeset/happy-elephants-smile.md`

```markdown
---
"@transcripts-mcp/adapters": minor
---

Add Codex session adapter
```

### Example 2: Bug Fix Affecting Multiple Packages

File: `.changeset/brave-lions-jump.md`

```markdown
---
"@transcripts-mcp/search": patch
"@transcripts-mcp/core": patch
---

Fix session id resolution for grep hits
```

### Example 3: Breaking Change

File: `.changeset/serious-tigers-roar.md`

```markdown
---
"@transcripts-mcp/core": major
---

Remove deprecated adapter parse helpers
```

## Filename Generation

Generate random, friendly filenames using the pattern `adjective-animals-verb.md`:

- Use 2-3 random words separated by hyphens
- Keep it simple and memorable
- Examples: `happy-dogs-run.md`, `clever-cats-jump.md`, `swift-birds-fly.md`

## Verification

After AI agent creates a changeset:

1. Verify a new file was created in `.changeset/`
2. Check the frontmatter has correct package names and change types
3. Ensure the summary is clear and user-facing
4. The changeset file will be committed with your code changes

## Additional Resources

- [Changesets Documentation](https://github.com/changesets/changesets)
- Project root `package.json` for changeset configuration

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.