pebble (Agent Skills)

GitHub

RocksDB/LevelDB inspired key-value database in Go

5,993 stars Go 1 Rule Files Full Docs MCP View JSON API

CLAUDE.md

# CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

## Pebble Development Environment

Pebble is a LevelDB/RocksDB inspired key-value store focused on
performance and internal usage by CockroachDB.

## Testing
```bash
go test -tags invariants .
go test -tags invariants ./...
```

## Regenerating test files
```bash
go test -tags invariants ./<package> --rewrite
```

## Linting
```bash
go test -tags invariants ./internal/lint"
```

## When generating PRs and commit records

- Follow the format:
  - Separate the subject from the body with a blank line.
  - Use the body of the commit record to explain what existed before your change, what you changed, and why.
  - Prefix the subject line with the package in which the bulk of the changes occur.
  - For multi-commit PRs, summarize each commit in the PR record.
  - Do not include a test plan unless explicitly asked by the user.
  - Use markdown format for the body; in particular, enclose any identifiers with backquotes.

## Interaction Style

* Be direct and honest.
* Skip unnecessary acknowledgments.
* Correct me when I'm wrong and explain why.
* Suggest better alternatives if my ideas can be improved.
* Focus on accuracy and efficiency.
* Challenge my assumptions when needed.
* Prioritize quality information and directness.