sealmap 0.1.0

Deterministic, dense codebase-to-Mermaid generation for LLM agents: sequence, class, ER and dependency diagrams in a contract-enforced 1:1 corpus
Documentation

sealmap

crates.io docs.rs

Deterministic code maps for LLM development harnesses: the facade and command-line tool of sealmap.

sealmap reads source without compiling it, builds a language-neutral model (symbols, relations, the ordered call flow of every function) and projects it into Mermaid diagrams with one document per source file. The same sources always give byte-identical output. The 0.2 line adds stable symbol ids, signature and body hashes, and sealed diagram contracts checked in CI (planned; see the design).

Crate Role
sealmap-model language-neutral code model
sealmap-mermaid typed Mermaid writers, no dependencies
sealmap-frontend logic shared by every language frontend
sealmap-rust Rust frontend (syn)
sealmap-corpus projections, index, write and verify

Command line

cargo install sealmap

sealmap generate .                  # write the corpus, model and index to .sealmap/
sealmap verify   .                  # exit 1 if .sealmap/ no longer matches the sources
sealmap model    .  > model.json    # just the model
sealmap generate --repo api=../api --repo core=../core -o .sealmap   # several repositories as one

Library

use std::path::Path;

let corpus = sealmap::generate_dir(Path::new("."), &sealmap::Options::default())?;
let report = sealmap::corpus::write(Path::new(".sealmap"), &corpus)?;
println!("{} files updated", report.entries.len());
# Ok::<(), std::io::Error>(())

Licence

Licensed under either of Apache License, Version 2.0 or MIT licence, at your option. Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 licence, shall be dual licensed as above, without any additional terms or conditions.