Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 0 additions & 10 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 1 addition & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ anyhow = "1.0"
ahash = { version = "0.8", features = ["serde"] }
clap = { version = "4.5", features = ["derive"] }
ignore = "0.4"
memmap2 = "0.9"
tempfile = "3.10"
rayon = "1.10"
regex = { version = "1.11", default-features = false, features = ["std", "unicode-perl"] }
serde = { version = "1.0", features = ["derive"] }
Expand Down Expand Up @@ -64,7 +64,6 @@ lang-typescript = ["tree-sitter-typescript"]

[dev-dependencies]
assert_cmd = "2.0"
tempfile = "3.10"
criterion = "0.8"

[[bench]]
Expand Down
9 changes: 8 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,9 +30,16 @@
c. **Anchoring**: The scanner looks for "library anchors" (e.g., `import` or `#include` statements) that match known cryptographic libraries defined in `patterns.toml`.
d. **Algorithm Detection**: If an anchor is found, the scanner performs a deeper search within that file for specific algorithm usage patterns, such as function calls and constants.

All results are streamed as JSONL to the output, allowing for real-time monitoring and processing.
Findings are streamed as JSONL to stdout for monitoring and processing.
For a deeper architecture overview, see `DESIGN.md`.

The CLI exits unsuccessfully if discovery, reading, parsing, or writing fails;
diagnostics go to stderr. Stdout may contain partial findings on failure. With
`--output`, results are staged beside the destination and replace it only after a
successful scan, preserving any previous inventory on failure. Output must be a
regular file, and existing source files or the custom patterns file cannot be
used as the destination. The destination directory must be writable.

## Installation

Ensure you have the Rust toolchain installed. You can install it from [rustup.rs](https://rustup.rs/).
Expand Down
Loading
Loading