{
  "markdown": "# gobreaker\n\nA command-line tool that detects breaking changes in Go APIs by comparing different versions of your code.\n\n## Overview\n\ngobreaker analyzes your Go packages and reports incompatible API changes between versions, helping you maintain backward compatibility and follow semantic versioning principles. It uses `golang.org/x/exp/apidiff` under the hood to perform accurate API comparisons.\n\n## Installation\n\n```bash\ngo install github.com/flaticols/gobreaker/cmd/gobreaker@latest\n```\n\nOr build from source:\n\n```bash\ngit clone https://github.com/flaticols/gobreaker.git\ncd gobreaker\ngo build -o gobreaker ./cmd/gobreaker\n```\n\n## Usage\n\n```bash\ngobreaker [OPTIONS] <base-ref> [repo-path]\n```\n\n### Arguments\n\n- `base-ref` (required): The base reference to compare against (branch, tag, or commit SHA)\n- `repo-path` (optional): Path to the git repository (defaults to current directory)\n\n### Options\n\n- `-o, --output <format>`: Output format - `text` (default), `json`, or `markdown`\n- `-v, --version`: Print version information and exit\n- `-h, --help`: Show help message\n\n### Examples\n\n```bash\n# Compare current branch against main in current directory\ngobreaker main\n\n# Compare against a specific tag in a different repository\ngobreaker v1.0.0 /path/to/repo\n\n# Output results as JSON\ngobreaker -o json main\n\n# Output results as Markdown (useful for PR comments)\ngobreaker --output markdown main\n\n# Check version\ngobreaker --version\n```\n\n## Output Formats\n\n### Text (default)\nShows a human-readable report of breaking changes with proper indentation.\n\n### JSON\nOutputs structured JSON data for programmatic consumption.\n\n### Markdown\nGenerates a Markdown-formatted report suitable for documentation or pull request comments.\n\n## What It Detects\n\ngobreaker identifies various types of breaking changes including:\n\n- Removed or renamed exported functions, types, methods, or variables\n- Changed function signatures\n- Removed or changed struct fields\n- Interface method changes\n- Type definition changes\n\n## Development\n\n### Building\n\n```bash\ngo build -o gobreaker ./cmd/gobreaker\n```\n\n### Running Tests\n\n```bash\ngo test ./...\n```\n\n## Claude Code Plugin\n\ngobreaker is also available as a [Claude Code](https://claude.ai/code) plugin, bringing breaking-change detection directly into your AI-assisted workflow.\n\n### Install from marketplace\n\n```\n/plugin marketplace add flaticols/gobreaker\n/plugin install gobreaker\n```\n\n### Usage\n\n```\n# Compare default branch vs working directory\n/gobreaker:check\n\n# Compare a specific tag against working directory\n/gobreaker:check v0.0.1\n\n# Compare two git refs\n/gobreaker:check v0.0.1 v0.0.2\n\n# Compare filesystem paths\n/gobreaker:check -p /old/pkg /new/pkg\n```\n\nThe skill runs `gobreaker` on your Go project and returns a structured summary: compatible/breaking status, list of changes, semver bump recommendation, and migration hints.\n\n> **Note**: The `gobreaker` binary must be in your `PATH`. Install it with `go install github.com/flaticols/gobreaker/cmd/gobreaker@latest`.\n\n## License\n\nSee [LICENSE](LICENSE) file for details.\n",
  "bytes": 3072,
  "sha": "5d46c8780e52af9d256eb6fbedb6f159d6cc7fdf4e6256b636380272fe8d1ecd",
  "repo_slug": "flaticols/gobreaker",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/plg_flaticols_gobreaker_gobreaker_55d76295/readme"
}