caracal
brew install caracal
v0.2.3
AGPL-3.0-only
Static analyzer for Starknet smart contracts
6
30-day installs · #10228
19
90-day · #9809
139
365-day · #8315
149
★ GitHub stars · updated 2y ago
Build dependencies
Links
- https://github.com/crytic/caracal
- GitHub: crytic/caracal
- Brew formula source: Formula/c/caracal.rb
Raw metadata
{
"aliases": [],
"alternatives": [],
"build_dependencies": [
"rust"
],
"categories": [],
"caveats": null,
"conflicts_with": [],
"dependencies": [],
"deprecated": 0,
"deprecation_reason": null,
"desc": "Static analyzer for Starknet smart contracts",
"disable_reason": null,
"disabled": 0,
"enrichment_fetched_at": "2026-06-20T23:36:07+00:00",
"first_seen": "2026-06-20T23:34:18+00:00",
"full_name": "caracal",
"github_default_branch": "master",
"github_last_commit_at": "2024-01-25T13:43:20Z",
"github_readme_excerpt": "# Caracal\n\nCaracal is a static analyzer tool over the SIERRA representation for Starknet smart contracts.\n\n## Features\n- Detectors to detect vulnerable Cairo code\n- Printers to report information\n- Taint analysis\n- Data flow analysis framework\n- Easy to run in Scarb projects\n\n## Installation\n\n### Precompiled binaries\nPrecompiled binaries are available on our [releases page](https://github.com/crytic/caracal/releases). If you are using Cairo compiler 1.x.x uses the binary v0.1.x otherwise if you are using the Cairo compiler 2.x.x uses v0.2.x.\n\n### Building from source\nYou need the Rust compiler and Cargo.\nBuilding from git:\n```bash\ncargo install --git https://github.com/crytic/caracal --profile release --force\n```\nBuilding from a local copy:\n```bash\ngit clone https://github.com/crytic/caracal\ncd caracal\ncargo install --path . --profile release --force\n```\n\n## Usage\nList detectors:\n```bash\ncaracal detectors\n```\nList printers:\n```bash\ncaracal printers\n```\n### Standalone\nTo use with a standalone cairo file and you have a local cairo compiler binary it\u0027s enough to point it to the file. Otherwise otherwise a bundled compiler is used and you need to pass the path to the [corelib](https://github.com/starkware-libs/cairo/tree/main/corelib) library either with the `--corelib` cli option or by setting the `CORELIB_PATH` environment variable. \nRun detectors:\n```bash\ncaracal detect path/file/to/analyze\n```\n```bash\ncaracal detect path/file/to/analyze --corelib path/to/corelib/src\n```\nRun printers:\n```bash\ncaracal print path/file/to/analyze --printer printer_to_use --corelib path/to/corelib/src\n```\n### Cairo project\nIf you have a cairo project with multiple files and contracts you may need to specify which contracts with `--contract-path`. The local cairo compiler binary is used if available otherwise a bundled compiler is used. In the latter case you also need to specify the corelib as explained above for the standalone case. The path is the directory where `cairo_project.toml` ",
"github_repo": "crytic/caracal",
"github_stars": 149,
"github_topics": [],
"homepage": "https://github.com/crytic/caracal",
"homepage_og_description": null,
"homepage_og_image": null,
"homepage_title": null,
"installs_30d": 6,
"installs_365d": 139,
"installs_90d": 19,
"keg_only": 0,
"keg_only_reason": null,
"last_seen": "2026-06-20T23:34:18+00:00",
"license": "AGPL-3.0-only",
"llm_generated_at": null,
"llm_model": null,
"name": "caracal",
"oldnames": [],
"one_liner": null,
"optional_dependencies": [],
"rank_30d": 10228,
"rank_365d": 8315,
"rank_90d": 9809,
"raw_hash": "e76c957627943937",
"recommended_dependencies": [],
"revision": 0,
"ruby_source_path": "Formula/c/caracal.rb",
"tap": "homebrew/core",
"test_dependencies": [],
"uses_from_macos": [],
"version_head": "HEAD",
"version_stable": "0.2.3",
"versioned_formulae": [],
"why_use_this": null
}