From datum-platform
Covers commit message conventions including format, structure, and content guidelines. Use when writing commits to ensure consistent, meaningful commit history across Datum Cloud repositories.
npx claudepluginhub datum-cloud/claude-code-plugins --plugin datum-platformThis skill uses the workspace's default tool permissions.
This skill covers commit message conventions for all Datum Cloud repositories.
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
This skill covers commit message conventions for all Datum Cloud repositories.
Write commit messages for future maintainers who need context months or years later. A well-crafted commit history enables effective use of git log, blame, revert, and rebase.
Based on How to Write a Git Commit Message:
| Rule | Guidance |
|---|---|
| 1. Separate subject from body with blank line | Required for multi-line commits |
| 2. Limit subject line to 50 characters | 50 is target, 72 is hard limit |
| 3. Capitalize the subject line | Begin with capital letter after type prefix |
| 4. Do not end subject with a period | Conserves space, cleaner appearance |
| 5. Use imperative mood | "Add feature" not "Added feature" |
| 6. Wrap body at 72 characters | Allows Git indentation in diffs |
| 7. Use body to explain what and why | Code shows how; commit explains why |
Use Conventional Commits format:
<type>: <subject>
<body>
<trailers>
| Type | Use When |
|---|---|
feat | Adding new functionality |
fix | Fixing a bug |
docs | Documentation only changes |
refactor | Code change that neither fixes a bug nor adds a feature |
test | Adding or updating tests |
chore | Maintenance tasks, dependencies, tooling |
feat:, fix:, etc.Imperative mood test: "If applied, this commit will [subject]"
feat: Add user authentication endpoint ✓ reads naturally
feat: Added user authentication endpoint ✗ awkward phrasing
feat: Adding user authentication endpoint ✗ awkward phrasing
Single-line commits are acceptable for:
Include a body for:
Focus on why, not what (the diff shows what changed).
Answer these questions:
fix: Correct typo in error message
feat: Add rate limiting to API endpoints
The public API was vulnerable to abuse from automated clients
making excessive requests. This adds a token bucket rate limiter
with configurable limits per endpoint.
Default limits are set conservatively (100 req/min) and can be
adjusted via environment variables.
Resolves: #234
refactor: Extract validation logic into separate package
Validation rules were duplicated across three controllers. Moving
them to a shared package reduces maintenance burden and ensures
consistent behavior.
This is a pure refactor with no behavior changes.
fix: Fix the bug
Why is this bad? Which bug? What was wrong? Future maintainers have no context.
refactor: Move function to different file
Why is this bad? The diff already shows this. Why was it moved?
feat: add new user authentication endpoint that validates credentials and returns JWT tokens
Why is this bad? Exceeds 72 characters. Use body for details.
When generating commit messages:
Claude Code agents include the Co-Authored-By trailer:
feat: Add resource quota enforcement
Implements quota checking at resource creation time to prevent
tenants from exceeding their allocated limits.
Co-Authored-By: Claude <claude@anthropic.com>
<type>: <Subject line under 50 chars>
<Explain the problem this solves. Wrap at 72 characters. Focus on
the motivation and context, not the implementation details.>
<If relevant, explain why this approach was chosen over alternatives.>
<Bullet points are acceptable:>
- Point one
- Point two
Resolves: #<issue-number>
Co-Authored-By: Claude <claude@anthropic.com>