codeanalyzer-java
Point codeanalyzer-java at a Java project and get back analysis.json — a single document describing every class, method, field, and import in the codebase, plus an interprocedural call graph computed by WALA. The schema is the same shape the CLDK Python SDK deserializes into typed models, so whatever consumes it — an agent, a script, or the SDK — works against structured analysis instead of raw source.
The same symbol table and call graph can also be projected, losslessly, into a Neo4j property graph with --emit neo4j — a re-runnable graph.cypher snapshot, or a live, incremental push over Bolt. One database can hold many applications side by side, each anchored at its own :JApplication node, so cross-service questions become a Cypher traversal instead of a memory problem. The SDK can then read straight from the graph — no JDK, native binary, or project source on the consumer.