Resources
14Install
npx skillscat add ataraxy-labs/sem Install via the SkillsCat registry.
SKILL.md
sem
Semantic version control CLI. Entity-level diffs for Git (functions, classes, methods instead of lines).
Structure
Cargo workspace at crates/:
sem-core— entity extraction engine, tree-sitter parsers, dependency graphsem-cli— CLI binary (sem diff,sem graph,sem impact,sem blame)
Build & Test
cargo build --release -p sem-cli # binary at target/release/sem
cargo test --workspace # 134 testsAll cargo commands run from repo root. CI builds from crates/ directory.
Key Paths
- Parsers:
crates/sem-core/src/parser/plugins/(23 language plugins + shebang detection) - Commands:
crates/sem-cli/src/commands/ - Entity model:
crates/sem-core/src/model/ - Git integration:
crates/sem-core/src/git/
Adding a Language
- Add tree-sitter grammar to
sem-core/Cargo.toml - Create parser plugin in
sem-core/src/parser/plugins/ - Register in
sem-core/src/parser/mod.rs - Add tests
- See
CONTRIBUTING.mdfor the full 7-step guide
Conventions
- Entity granularity: functions, classes, methods, structs, traits, interfaces
- Methods have a
parentIdlinking to their class structural_hashfor matching entities across versions- Release on tag push (
v*) - License: MIT OR Apache-2.0