Jess
Jess is short for Joern extended by Semantic Slicing. This tool allows you to import C code into a Code Property Graph, and then compute a Semantic Slice (a subset of your program implementing a selected functionality).
Install / Use
/learn @LPhD/JessREADME
Jess
Extended version of Joern's (https://github.com/octopus-platform/joern) dev branch.
Source code analysis is full of graphs: abstract syntax trees, control flow graphs, call graphs, program dependency graphs and directory structures, to name a few. Joern analyzes a code base using a robust parser for C and represents the entire code base by one large property graph stored in a Titan graph database. This allows code to be mined using complex queries formulated in the graph traversal languages Gremlin and Cypher.
The extended version named Jess contains some bugfixes and adations for the use as a "Semantic Unit Identifier". A Semantic Unit (or Semantic Slice) contains semantically related lines of code, that share the same purpose. Joern's property graph is extended by parsing preprocessor-statements to make the graph variability-aware. The graph is used to identify Semantic Units with the help of program slicing. The slices can contain C and C preprocessor code.
The current status of the dev branch is work-in-progress, that means sometimes the tool will just not work. For a more stable version, check out the stable branch or the dedicated releases.
The documentation can be found here
Related Skills
node-connect
339.3kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
83.9kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
339.3kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
83.9kCommit, push, and open a PR
